使用EAC將 CD轉 CUE+多個WAVE檔 經驗分享 + 問題

討論MP3、WAV、MIDI、WMA甚至其他數位音訊的播放、製作、轉換等。

版主: DearHoney

回覆文章
LouisZZZ
初學者
文章: 4
註冊時間: 2006-09-20 16:46

使用EAC將 CD轉 CUE+多個WAVE檔 經驗分享 + 問題

文章 LouisZZZ »

最近有空整理了約百張CD,轉成CUE+多個WAVE檔備分
其中數十張因為軟體設定錯誤重轉,浪費不少時間,因此決
定將流程紀錄下來,避免下次因為遺忘操作順序而再發生相
同錯誤,順便做個經驗分享,最後還有問題求解。

**************************************************************************

首先要準備以下軟體

1. Unicode補完計畫
(讓CUE能用big5+日文,有些人不喜歡unicode補完計畫,
但我目前只想到用檢體中文系統的WinXP可以解決,但是
做出來的檔案也只有檢體中文能用)

2. Exact Audio Copy (EAC)
(為了最精確的備分CD,這裡的各位應該很熟悉)

3. EAC (AppLocale 以日文開啟)
(解決日文tag的小技巧,流程中會說明)

4. Accurate Rip
(網路上的參考資料不多見,和EAC配合,可以透過過網路
上的資料庫比對Rip結果)

5. Microsoft AppLocale
(我用的是piaip修改過的版本,改掉一些官方版Bug)

6. Notepad
(編輯CUE需要,有考慮過其他編輯器,但是簡單好用)

7. Notepad (AppLocale 以日文開啟)
(處理Shift_JIS編碼的日文CUE會用到)

8. Daemon Tool (mount test structure)
(因為只吃標準ANSI格式CUE,用來測試CUE+WAVE,和
Rip結構是否正確,以及iTunes轉檔時會用到)

9. Foobar
(幫CUE加上replaygain,聆聽主力)

10. Nero 及 Nero Drivespeed
(因為可以吃超過標準CUE限制的WAVE檔名,做測試用
,Drivespeed用來調整光碟機倍速)

11. CD check
(建立以MD5格式unicode的 .CRC hash檔,用來定期檢查
CD備份的狀況)


************************************************************

接下個人將CD備份成CUE+多個WAVE檔的流程,做一個
說明 (以有日文檔名的CD為例)

1. EAC 用AppLocale 以日文開啟。

2. 用Free DB抓取Tag,再針對自己的需求修正。(因為日文
的CD在Free DB中多是Shift_JIS格式,這樣做日文檔名
就不會是亂碼)

3. 因為我選用的是CUE +多個WAVE檔
(multiple WAVE Files with Leftout Gaps) 所以EAC內的
Gaps結構必須選擇 [leave out Gaps] 否則WAVE檔的起
點和終點會不正確。

4. 接下來就是偵測Gaps,這是正確CD結構的關鍵。(
假如光碟機可以降速,記得先用Nero Drivespeed之類的
工具降速,我手上一些CD和光碟機在高倍速下,不管
Gap Detection如何設定,都會抓到錯誤的Gap,所以要降速)

5. 完成偵測Gaps之後抓音軌選擇
[test & copy selected tracks] => [Uncompressed]開始抓音軌。
(要配合AccurateRip使用就必須使用這個方式,同一軌
抓兩次並比對檔案,也是我個人喜好,越精確越好)

6. 抓音軌完成後檢查兩次CRC是否一致,以及AccurateRip
結果有無和資料庫一致,不正確可要降速,改EAC Drive
設定,甚至換光碟機,再重抓。

7. 接著就是建立 CUE檔配合, [left out Gaps]必須選擇
[Creat CUE sheet] => [multiple WAVE Files with Leftout Gaps]
,假如選其他的項目,可能會得到錯誤的Gap。

8. 因為剛剛產生的CUE檔是Shift_JIS格式,所以要用
notepad(用AppLocale 以日文開啟) 存成utf8格式。

9. 再把utf8格式的CUE檔用notepad 再開一次。(這次不用
AppLocale)存成 ansi,我們會得到Big5+日文的CUE檔。

10. 用 deamon掛上CUE+WAVE,假如big5+日文的CUE檔
有錯,這裡就會發現。

11. 用EAC 檢查實體CD和虛擬光碟的 Gaps 結構有無不同。
(這裡小地方要注意,通常gap正確時,由CD切到虛擬
光碟,不用再跑一次gap偵測,只要gap資訊會不見,CUE
一定有錯,或是WAVE長度不對)

12. 前面的檢查都沒問題我就會用Foobar 加上 replay gain
方便聆聽。

13. 爲了資訊的完整性,我會再針對被 CUE縮短的WAVE
檔名作修正,有些WAVE檔名,EAC會配合CUE的限
制,加以縮短。

14. 非標準格式的CUE檔可以用nero開起來檢查nero會指
出錯誤的位置 ,或用foobar檢查,但是有些錯誤Foobar
會跳過,可能會漏掉。

15. 我個人針對需要非標準格式的CUE檔時會用下列的方式
處理,用notepad存成utf8格式並且副檔名為 .utf8.CUE
(有兩個副檔名以和標準的big5格式CUE檔做分別)

16. 接著用 CDcheck 建立CUE+多個WAVE檔的
MD5格式 .CRC hash檔
(記得CDcheck的設定裡面要勾選使用unicode格式)

17. 爲了避免手賤改到檔案,所有將檔案設成唯讀。(聊勝於無)

**************************************************************************

整理完大概像這樣
---------------------------------------------------------------------------

01 - Gold Fish.wav
02 - エンカ.wav
03 - まわるスポーク.wav
04 - Butter Sea.wav
05 - Veggie.wav
06 - 静かな生活.wav
07 - Didn't it Rain.wav
08 - サンクチュアリ.wav
09 - Girl with Power.wav
10 - アスラ実体化.wav
11 - テレサ.wav
12 - One.wav
13 - さいごのマメシバ.wav
14 - あっぱれ元気のテーマ(Bonus Track).wav
##[以上是多個各軌獨立的WAVE檔]

アルジュナ2 オンナの港.CRC
##[unicode hash檔,定期檢查用]

アルジュナ2 オンナの港.CUE
##[用來掛上虛擬光碟,或用來燒錄]

アルジュナ2 オンナの港.utf8.CUE
##[用utf8格式儲存的完整CUE檔,Foobar聆聽使用]

---------------------------------------------------------------------------

**************************************************************************

**有幾個東西要注意**

1. 以上流程中關於Gaps及CUE的設定項目,都是針對
CUE+多個WAVE檔 ,經過我個人測試後,最適用的設
定,也可能有更好的設定存在但還沒試出來。

2. 當不使用CUE+多個WAVE檔時,使用CUE+單一WAVE
檔時,Gaps及CUE的設定就影響不大,只要Gaps偵測正
確,音軌抓取正確,大都沒問題,因為個人喜好問題,這
CUE+單一WAVE檔格式我並不使用 ,也未做進一步測試。

3. Gaps偵測是指按下F4的 [Action] => [Detect Gaps]

4. Gaps偵測設定位在 [EAC] => [Drive Option]
=> Tab [Gap detection] 內的設定

5. Gaps結構[leave out Gaps] 設定位在 [Action]
=> [leave out Gaps]

6. 抓音軌選擇位在 [Action] => [test & copy selected tracks]
=> [Uncompressed]

7. 通常[test & copy selected tracks]的結果CRC一致,
AccurateRip就會過

8. 建立CUE的選項位在[Action] => [Creat CUE sheet]
=> [multiple WAVE Files with Leftout Gaps]

9. WAVE檔名和CUE內紀錄的檔名有衝突時,先把WAVE
檔名修正成你認為正確的,再把WAVE檔名複製進CUE
內,因為檔案系統是以unicode儲存,以檔案系統為準,
字元對應的部分,讓Windows和unicode補完計畫來處理。

10. 整理CUE時看個人需求,只用在Foobar之類軟體,可以
無視CUE的標準和限制,要用到虛擬光碟和燒錄時,就必
須遵守CUE的標準和限制。

11. CUE的語法可以參考 CDRWIN的說明檔,或是以
**編寫 CUE SHEET** 作為關鍵字搜尋,可以找到由
Scorpion (蠍) 翻譯整理自 CDWRIN 3.8c 的 HELP 檔。

12. CDcheck要記得勾選unicode支援,不然沒辦法處理一部
分特殊檔名,另外CDcheck個人使用註冊是免費的。

13. 用**EAC**當關鍵字搜尋,就可以找到不少教學文章。


****************************************************

最後是我個人的使用問題,來問問看有沒有解決方法 ?

1. 我的AccurateRip用一陣子不定時就會失效,抓完音軌不
會比對結果,也不會回覆資料庫有無資料,有時必須連
EAC一起重裝 ?

2. 在EAC內的Gaps結構設定,原本應該只是顯示方式的差
異,應該與結果無關,但是要配合CUE+多個WAVE卻是
有影響的,我一直找不到相關資料,EAC的討論區也沒找
到,有人能指引方向嗎 ?

3. 現在用CDcheck建立的MD5 unicode .CRC 檔並似乎並非
標準格式,有其他支援unicode的標準解決方案嗎 ?

4. 現在我用nero檢查CUE的方法笨了一點,有更好的工具嗎 ?

5. 有可以無視CUE limit 掛上非標準格式unicode CUE的虛
擬光碟軟體嗎 ?

6. 除了unicode補完計畫及檢體中文外,有比較正歸的解決方
案嗎 ?

7. 針對Enhanced CD、Mixed Mode CD還可以用CDRWIN
等工具把第一軌抓出來,在自己修改CUE檔加進去,對於
CD-Extra受限於CUE不支援Multi session格式,只能用
CloneCD之類的複製,或是用EAC指抓音軌的部分,放
棄完整的CD結構,有任何檔案格式,可以提供CD-Extra
之類CD的支援,又可以讓Foobar來撥放嗎,甚至接近
EAC的精確程度 ?


**************************************************************************


現在網路上流行的無失真格式大多是 CUE+ ape, flac, tta之類。
兩年前開始我會選用CUE+多個WAVE檔大概有幾個理由。

1. 使用CUE+多個WAVE檔幾乎是到處通用的標準。
(CUE似乎是CDRWIN的格式,但是現在燒錄軟體,虛
擬光碟幾乎都可以吃)

2. 使用WAVE本身幾乎等於CD格式,沒有通用性的問題。
(也不用傷腦筋壓縮撥放之類的問題)

3. 可以隨時掛上虛擬光碟,未來進行格式轉換較方便。
(其實我現在也只有要轉入iTunes時會用到)

4. 曲目Tag及其他額外標籤資料,可以存在CUE內 。
(可以用注解放其他非標準資訊)

5. 撥放需求資源低,當初考量要準備一台舊電腦撥放。
(不過其實電腦不要太差,現在大部分格式都不是問題)

6. 配合EAC Offset 校正, 可以盡可能保留CD原始結構。
(不過只限於一般標準CD,遇到CD-Extra,Enhanced CD
、Mixed Mode CD就有問題)

7. 省去整理時壓縮時間。
(現在電腦很快所以其實沒差)

8. 賞心悅目。
(我這人很怪,聽隨身聽時最喜歡隨手翻tag資訊,硬碟裡
的CUE+多個WAVE檔最好是完整檔名,看到image.WAVE
之類的檔名就不自在 . . . . .)


**************************************************************************

缺點其實也是不少

1. 未壓縮,所以空間需求大。
(不過考慮自己所購買的CD數量和速度,問題不大,現
在硬碟夠便宜)

2. 標準的CUE其實限制相當大,檔名曲目都有長度限制。
(另外標準CUE為ANSI非unicode格式,當使用unicode
存CUE也只有少數軟體可接受)

3. 用的WAVE格式本身並沒有包含容錯資訊,硬碟實體出些
小問題內容就不對了,也無法還原。
(ape, flac, tta之類我記得有包含容錯資訊,實際運作就不
了解了)

4. 針對Enhanced CD、Mixed Mode CD 和 multi session CD (CD-Extra)
又沒辦法保留完整CD結構。
(舊的mix mode CD配合其他工具還有辦法,multi session
是CUE格式無法支援的,這部分CUE+ape, flac, tta問題一樣)

5. 保存Tag資料的方便程度,不及ape, flac, tta等格式。
(WAVE本身不包含tag,CUE的限制又很多)

**************************************************************************

假如考量我現在的使用習慣

iTunes
(轉成MP3,供隨身聽使用,隨身聽以放最多音樂為主,我不
太在意音質)

Foobar
(平時聆聽CUE+多個WAVE檔的主力,可以接受非標準加
unicode的utf8.CUE檔)

現在其實好像沒有堅持CUE+多個WAVE檔的必要,但是已
經習慣了,就繼續用。

(等ape, flac, tta之類有一個統一天下再來轉換格式 XD)
最後由 LouisZZZ 於 2009-09-05 13:23 編輯,總共編輯了 1 次。
bennetng
神人
文章: 665
註冊時間: 2001-05-07 08:00
來自: 香港
聯繫:

文章 bennetng »

ape 的話 foobar 能在轉檔和播放時自動偵錯, 有問題時會顯示錯誤訊息, 但應該只能做到提示, 不能做到修復, 至於 wav 檔就連提示都沒有

我自己是慣用 foobar 旳 freedb masstagger 啦, windows 是英文版的, 在控制台裡把 non-unicode program, location, standard and formats 都設成日文, 沒有用 unicode 補完計畫 (自從發現用了後有些人會看不到我在打什麼字之後), cue 檔有需要時會存成 unicode (例如是繁/簡中文), 日文則沿用 ansi

nero drivespeed 有一個很討厭問題就是它的限速功能用一會就會自動失效, 原本限成 cd 12x, dvd 4x 的, 用 windows explorer 查看一下資料夾內容, 或者用 media player classic 播放一下光碟上的檔案後, 它會無故回復成 cd 48x, dvd 16x... 我用過不同版本的 drivespeed 和不同的光碟機都會出現這種情形, 很費解...... 不知如何解決或者有沒有其他限速程式可以取代 drivespeed?

=============================
你的做法很講究, 解說也很詳細, 個人覺得是近年來本討區內難得一見的好文章, 比起那些伸手拿答案和那些未經詳細和合理驗證就貼上來的所謂心得好太多了, 感謝分享!
AZeL
大師
文章: 127
註冊時間: 2001-03-26 08:00
聯繫:

文章 AZeL »

確實非常講究,我個人是比較懶一點
全部 rip 成 CUE+單一 WAVE 再壓成 FLAC

tag 的部份跟 benneng 一樣是用英文版 windows
非 unicode 字元處理預設為日文
用 fb2k 的 freedb masstaggr 抓專輯資訊
最後,用 fb2k 寫 apl 出來,雖然 apl 是為 ape 設計的連結檔
不過在 fb2k 中一樣可以用在 FLAC 上面
我個人是沒有什麼流通性的疑慮,不合標準也沒差

要轉檔的話,也是直接掛在 fb2k 下面,要怎麼轉都可以 :)
LouisZZZ
初學者
文章: 4
註冊時間: 2006-09-20 16:46

[心得]CD轉 CUE+多個WAVE檔 經驗分享 [部分修正]

文章 LouisZZZ »

才說到未經合理驗證啊,我馬上就出包了 :-.-:

[在把問題確認一下如何描述的過程中,重新做了實驗
(用三種Gap顯示設定Rip,再分別用五種CUE建立選項,總共15種排列組合)
,結果發現自己耍白痴了 . . . . . ]

[現在把比較正確的結果解釋如下]


我自己判斷CUE+多個WAVE有無和CD結構一致的標準是

** EAC顯示的Start,Length及Gap都要完全一致 **


進入正題

先把EAC的Gap顯示設定和建立CUE的選項分成兩個部分

========================================================================

** Part 1 **

[Action]項目底下
影響Gap顯示方式的有下列三項
=> [Leave Out Gaps]
=> [Append Gaps To Previous Track (default)]
=> [Append Gaps To Next Track]

這三個選項在我的測試裡,只要放進去的是同一張CD
Gap部分的數值在相同的Gap偵測方式下不管選項為何
,Gap項目的數值都不會變動,同時代表前後Track之
間的Gap長度,但是Start及Length的部分,就如同這
三個選項字面上的意義一樣,
(要注意Gap1在大部分CD是固定為2秒,這是CD規格)
(少部分CD會在這兩秒外,加上額外的PREGAP)

**實際抓下來的WAVE檔就是Length的部分**

(A) => [Leave Out Gaps]
省去Gaps,所以length的部分不包含gap

代碼: 選擇全部

 example :
  Title           Track   Start       Length      Gap
 QUICKENING -胎動-  01    0:00:00:00  0:00:39:80  0:00:02:00
 RUIN -破滅-        02    0:00:40:22  0:01:27:32  0:00:00:42
 RETURN -帰還-      03    0:02:10:29  0:03:09:06  0:00:02:74
 DEBRIS -瓦礫-      04    0:05:20:13  0:03:11:49  0:00:00:77

 ===================================>時間軸================================>
             [<= Start1              [<= Start2              [<= Start3
 --------------------------------------------------------------------------
 [   Gap1   ][  Track1  ][   Gap2   ][  Track2  ][   Gap3   ][  Track3  ]
 --------------------------------------------------------------------------
             [-Length1- ]            [-Length2- ]            [-Length3- ]

(B) => [Append Gaps To Previous Track (default)]
把Gaps加入前一Track,所以length的部分會加上下一Track的Gap

代碼: 選擇全部

 example :
  Title           Track   Start       Length      Gap
 QUICKENING -胎動-  01    0:00:00:00  0:00:42:22  0:00:02:00
 RUIN -破滅-        02    0:00:40:22  0:01:30:06  0:00:00:42
 RETURN -帰還-      03    0:02:10:29  0:03:09:84  0:00:02:74
 DEBRIS -瓦礫-      04    0:05:20:13  0:03:12:22  0:00:00:77

 ===================================>時間軸=================================>
         [<= Start1              [<= Start2              [<= Start3
 ----------------------------------------------------------------------------
 [ Gap1 ][  Track1  ][   Gap2   ][  Track2  ][   Gap3   ][  Track3  ][ Gap4 ]
 ----------------------------------------------------------------------------
         [ -------Length1------ ][ -------Length2------ ][ ----Length3----- ]

(C) => [Append Gaps To Next Track]
把Gaps加入下一Track開頭,所以Start的部分會往前移Gap的長度
但Gap會不斷累加,所以Start及Length會一起變動

代碼: 選擇全部

 example :
 Title            Track   Start       Length      Gap
 QUICKENING -胎動-  01    0:00:00:00  0:00:39:80  0:00:02:00
 RUIN -破滅-        02    0:00:39:80  0:01:27:74  0:00:00:42
 RETURN -帰還-      03    0:02:07:54  0:03:11:81  0:00:02:74
 DEBRIS -瓦礫-      04    0:05:19:36  0:03:12:26  0:00:00:77

 ===================================>時間軸==================================>
         [<= Start1  [<= Start2            [<= Start3            [<= Start4
 -----------------------------------------------------------------------------
 [ Gap1 ][  Track1  ][  Gap2  ][  Track2  ][  Gap3  ][  Track3  ][  Gap4  ][
 -----------------------------------------------------------------------------
         [-Length1- ][ ------Length2----- ][ ------Length3----- ][---Length4--

========================================================================

** Part 2 **

[Action] => [Creat CUE Sheet]項目底下
有以下五種CUE建立選項

(1) => [Current Gaps Settings...]
建立CUE時會依據 ** Part 1 ** 選擇的Gap設定建立CUE檔
依不同Gap設定結果同下列(3)(4)(5)

(2) => [Single WAV File...]
因為是多個WAVE檔所以用不到

(3) => [Multiple WAV Files With Gaps... (Noncompliant)]
測試結果對應[Append Gaps To Previous Track (default)]
實測EAC建立的CUE時 Daemon及Alcohol 會指出
[no starting index was defined for previus track]
用CDRWIN測試也會出現相同訊息(判斷此CUE不合標準)
只有EAC自己的CD write功能會吃這種CUE

代碼: 選擇全部

  Example :
  FILE "01 - QUICKENING -胎動-.wav" WAVE
   TRACK 01 AUDIO
     TITLE "QUICKENING -胎動-"
     PERFORMER "崎元仁"
     INDEX 01 00:00:00
   TRACK 02 AUDIO
     TITLE "RUIN -破滅-"
     PERFORMER "崎元仁"
     INDEX 00 00:39:42
  FILE "02 - RUIN -破滅-.wav" WAVE
     INDEX 01 00:00:00
(根據INDEX 00 00:39:42指定結尾位置,與WAVE檔長度相同,
而且去掉下一Track的Gap長度)


(4) => [Multiple WAV Files With Leftout Gaps...]
測試結果對應[Leave Out Gaps]
實測CUE+多個WAVE檔結構和CD一致

代碼: 選擇全部

  Example :
  FILE "02 - RUIN -破滅-.wav" WAVE
   TRACK 02 AUDIO
     TITLE "RUIN -破滅-"
     PERFORMER "崎元仁"
     PREGAP 00:00:50
     INDEX 01 00:00:00
(根據PREGAP 00:00:50,WAVE檔長度為Track不含Gap)
理論實測一致

(5) => [Multiple WAV Files With Corrected Gaps...]
測試結果對應[Append Gaps To Next Track]
實測CUE+多個WAVE檔結構和CD一致

代碼: 選擇全部

  Example :
  FILE "02 - RUIN -破滅-.wav" WAVE
   TRACK 02 AUDIO
     TITLE "RUIN -破滅-"
     PERFORMER "崎元仁"
     INDEX 00 00:00:00
     INDEX 01 00:00:50
(根據INDEX 00 00:00:00及INDEX 01 00:00:50,
Gap長度同PREGAP 00:00:50,WAVE檔長度為Track去掉開頭Gap長度)
理論實測一致


========================================================================

代碼: 選擇全部

 結論整理如下

 [1] Gap顯示設定確實只影響EAC顯示的時間資料

 [2] Length的部分就是實際抓下來的WAVE檔

 [3] Track的內容,不論Gap顯示設定為何,都一定會包含在WAVE檔內

 [4] 只要建立CUE時選擇[Current Gaps Settings...]
     就可以產生正確對應目前Gap顯示設定的CUE

 [5] 抓Track時,所使用的Gap顯示設定也要和CUE建立選項一致

 [6] 錯誤的Gap及CUE組合,可能會造成錯誤的備份CD結構外
     也會出現聆聽時Track被截去前頭或後尾的可能性

 [7] 實際上可正確使用的Gap及CUE組合為
     (a) Gap顯示設定 [Append Gaps To Next Track] +
         CUE建立選項 [Multiple WAV Files With Corrected Gaps...]
     (b) Gap顯示設定 [Leave Out Gaps] +
         CUE建立選項 [Multiple WAV Files With Leftout Gaps...]

 [8] Gap顯示設定 [Append Gaps To Previous Track (default)] +
     CUE建立選項 [Multiple WAV Files With Gaps... (Noncompliant)]
     雖然是EAC預設選項,但只有EAC能用,CUE的標準來源CDRWIN反而不接受

 [9] 單一WAVE檔時,CUE內部只能用INDEX指定Gap,這些問題反而不存在
     其實是比較直接有效的處理法 . . . . . . .
========================================================================

代碼: 選擇全部

 在查了一部份資料後,下面是我自己修正後的做法

 {1} CUE內使用pregap時資料是由 CDRWIN 內部自行產生,不會由當
     前的檔案資料中取用,由內部產生的 pregaps 均為 "數位靜音"

 {2} CUE內部使用
     INDEX 00 00:00:00
     INDEX 01 00:00:50
     時音軌之間有 "暫停區 (Pause areas)"就是Gap
     資料是由當前的檔案資料中取用
     (**{1}和{2}的Gap在物理上的差異我還沒找到**)

 {3} 考慮{1}和{2}資料,加上EAC=>[Test Gaps on Silence]胡亂測試的經驗
     確實有CD在Gap內不是數位靜音,這部分待驗證

 {4} 當使用[Append Gaps To Previous Track (default)]
     或[Append Gaps To Next Track]時WAVE檔會包含Gap內數位資料

 {5} 爲了要連同Gap內的資料都保留下來
     (a) Gap顯示設定 [Append Gaps To Next Track] +
         CUE建立選項 [Multiple WAV Files With Corrected Gaps...]
     將是我未來的使用格式和方式

 {6} 已經用
     (b) Gap顯示設定 [Leave Out Gaps] +
         CUE建立選項 [Multiple WAV Files With Leftout Gaps...]
     整理好的CD,因為只少了Gap內的資料,Track內容沒影響
     數量也太多,不重新整理了 . . . . .

 {7} Gap顯示設定 [Append Gaps To Previous Track (default)] +
     CUE建立選項 [Multiple WAV Files With Gaps... (Noncompliant)]
     有問題無法在EAC以外使用,但不曉得是不是EAC故意的
LouisZZZ
初學者
文章: 4
註冊時間: 2006-09-20 16:46

來自fielia, 關於Offset及Overread Lead-in/out的說明

文章 LouisZZZ »

fielia 點出了我沒有注意到

代碼: 選擇全部

Offset及Overread into Lead-in / Lead-out的關聯
以及不是所有的機器都能正確的Overread into Lead-in / Lead-out
另外

代碼: 選擇全部

Read Offset (讀取偏移)
不等於
Read Offset correction (讀取偏移補正值)
這兩樣數值剛好正負相反

在EAC的Drive設定內
是Read Offset correction (讀取偏移補正值)
[舊版EAC寫Read Offset是錯誤的,
最新版已更正為 Read Offset correction]
和write Offset (寫入偏移) [寫入的部分名稱一直是正確的]
經過fielia同意,直接引用他的文章並稍加排版
作者: fielia (フィーリア) 看板: GameMusic
標題: Re: [心得]CD轉 CUE+多個WAVE檔 經驗分享 + 問題
時間: Mon Oct 9 05:00:59 2006

※ 引述《louis000 (Fear Hate Fear)》之銘言:
<過長恕刪>

首先大家要注意的是
目前的光碟機讀取CD中的Sample時都有一個現象
叫做Offset:
A negative offset means that the drive starts reading or writing
too early and a positive offset that it starts too late.

這是因為光碟機讀取機制設計方式的緣故
會導致光碟機提早讀取Sample或是延後讀取Sample

代碼: 選擇全部

所以
負Offset的光碟機就需要指定正的Offset Correction值來修正Sample位置
正Offset的光碟機就需要指定負的Offset Correction值來修正Sample位置
然而光碟機在讀取資料時會有個固定的合法區間
所以負Read Offset造成最後面(或是正Read Offset造成最前面)的SampleData遺失
通常音樂在這小段理論上來說應該是靜音的才對,所以不會有影響
不過也有不少CD的最後一首音樂最後面是Fade out結束
或是第一首音樂最前面沒有留足夠長度的空白
所以Offset後,會遺失掉一些SampleData:

代碼: 選擇全部

   ABCDEFGHIJKLMNOPQRSTUVWXYZ      <------原始資料的進入位置
|------reading-area------|         <------光碟機讀取Sample的起始與結束位置
...ABCDEFGHIJKLMNOPQRSTUVW         <------讀到的資料
ABCDEFGHIJKLMNOPQRSTUVW...         <------利用正Offset修正值修過後
若光碟機支援且程式有開啟Overread,則:

代碼: 選擇全部

   ABCDEFGHIJKLMNOPQRSTUVWXYZ      <------原始資料的進入位置
|------reading-area------|---      <------光碟機讀取Sample的起始與結束位置
...ABCDEFGHIJKLMNOPQRSTUVWXYZ      <------讀到的資料
ABCDEFGHIJKLMNOPQRSTUVWXYZ         <------利用正Offset修正值修過後
由上圖可以知道

代碼: 選擇全部

負Offset光碟機:需設定正的Offset Correction值,並具備Overread Lead-out功能
正Offset光碟機:需設定負的Offset Correction值,並具備Overread Lead-in功能
這樣才能完整的抓到CD的聲音資料

雖然說只要光碟機具備Overread Lead-in/out功能
就可以正確地抓到超出讀取範圍的資料
不過因為能Overread的機器實在是太少
通常沒有這種特異功能的機器,只好認命把EAC Options中,Extract頁的
"Fill up missing offset samples with silence"打勾
當然,如果很幸運的
你的光碟機是
Plextor的CD/DVD燒錄機(大部分機型具備Lead-in/out的讀取能力)
YAMAHA的CD燒錄機(具備Lead-in/out的讀取能力)
或是Pioneer DVR-A05以後的燒錄機(具備Lead-out的讀取能力,Lead-in不可讀取)
就有資格啟動Overread的功能了
因為這幾台都能夠Overread到因為Offset而跑出去的SampleData
只要到Drive Options,Offset/Speed頁
把"Overread into Lead-in and Lead-out"打勾
並取消EAC Options中,Extract頁的
"Fill up missing offset samples with silence"
這樣就可以啟動這功能了

Pioneer DVR系列只能讀Lead-out,不過DVR剛好是負Offset機,所以能達成100% Rip
但是Toshiba這一類的正Offset機大多數都不能讀取Lead-in,就只好自求多福了XD

代碼: 選擇全部

如果要查自己的機器是否能Overread,請看:
http://homepage2.nifty.com/yss/eac/eac.htm
至於Overread成不成功
只要看看Overread啟動後,會不會讓Rip結果報告顯示"There were error"
如果能出現"No error occured"
那就恭喜你,你的機器能Overread到跑出去的Sample
如果一直出現"There were error"
那..........請保重
結果我自己用的Benq Dw1620有問題 (爆) . .

相關資料可以參考
http://home.tiscali-business.be/~tpm54044/index.htm
http://users.pandora.be/satcp/eacoffsets00.htm
回覆文章