如果將有刮痕的 CD 翻錄為 MP3 會怎麼樣?

如果將有刮痕的 CD 翻錄為 MP3 會怎麼樣?

如果 CD 損壞(例如,如果放入 CD 播放器中,它會卡頓等),如果您在電腦上將其翻錄以建立 MP3,則損壞的資料聽起來會如何?

難道只是賽道中間的一個「空白」嗎?或是您會聽到亂碼音訊/靜電等嗎?

為了清楚起見,這個問題涉及從 CD 讀取音訊並編碼為 MP3,而不是讀取帶有 MP3 的資料 CD。

答案1

好的 CD 抓取軟體會盡力cdparanoia修正 CD 的錯誤讀取,並會多次檢查受影響的部分;有時需要幾分鐘,直到資料恢復。這是可能的,因為 CD 包含用於糾正錯誤的校驗和,並且應該立即檢測到誤讀。

由於這種策略,CD 抓取軟體比設計為即時播放的典型 CD 播放設備恢復正確資料的機會要高得多。

在極少數情況下,部分資料(在您的範例中為音訊)仍然無法讀取,開膛手通常會跳過該段落。因此,對於編碼的 MP3 文件,它將跳過不良部分(可以在生成的音訊檔案中進行插值或可聽地跳過)。

答案2

MP3 檔案格式由幀組成。每個幀以十一個“1”位元開始,還有幾個位元組的元資料控制位元率並定義一些其他屬性。每個幀都是獨立的,這樣設計是為了支援串流。

幀可以有 CRC - 錯誤檢查。這是可選的。

如果作業系統在 CD 上遇到壞磁區,則可能會重試讀取(在 MP3 編碼器發現任何內容之前,CD 硬體有自己的錯誤檢查機制)。假設解碼器沒有在緩衝區中工作,則解碼器在此過程中不會接收新數據,並且必須停止。如果作業系統無法讀取數據,它可能會向作業系統報告錯誤,該錯誤最終會報告給託管 MP3 編碼器的進程。取決於軟體,這裡到底發生了什麼事。

如果 CD 中的資料讀取不正確但仍到達解碼器,則可能會發生以下幾種情況(這種情況在 PC 上可能不會發生,但在汽車音響或其他非 PC 裝置中可能會發生):

  • MP3 解碼器會尋找這 11 個 1 位元來找到幀的開始 - 如果找不到它們,它可能會停止解碼,直到下一幀。

  • 如果標頭資料損壞,則可能會以錯誤的位元率播放該幀,因為指示哪個位​​元速率的位元組可能是錯誤的。

  • 如果設定了標頭 CRC 位元並且 CRC 不匹配,則解碼器可能會丟棄該幀並且不播放它。大多數 MP3 檔案沒有設定 CRC 位元。

  • 如果有效負載(標頭之後的資料)錯誤,MP3 解碼器將嘗試播放它。

解碼器的工作是獲取壓縮資料並產生未壓縮資料以移交給“上”層。該上層實際上使用未壓縮的數據來驅動音訊設備。我敢猜測大多數編碼器/音訊驅動程式設定都有一個緩衝區 - 具有可配置的大小 - MP3 解碼器可以在其中為音訊驅動程式建立一些資料並允許重試讀取。

因此,無論如何,如果解碼器因未獲取資料而停止,則實際驅動音訊的上層可能會執行下列任一操作:

  • 上層輸出靜音。您會聽到音訊中斷。
  • 解碼器停止將資料填入音訊緩衝區中,但上層繼續播放其中的內容。音訊緩衝區通常是「循環」的,這意味著它們不會被清除,而是不斷被新資料覆蓋。您將聽到跳躍聲,這是之前播放的音訊的一部分。
  • 上層很聰明,並嘗試插入「應該」存在的內容。我認為這種情況並不常見。

如果解碼器輸出不良數據,您將在音訊中聽到靜電聲或爆音。

參考

答案3

在最好的情況下,開膛手能夠檢索到足夠的數據,使曲目能夠正常播放。在第二種最佳情況下,它會放棄並且不產生音軌,因為它不能。在最壞的情況下,您得到的音訊檔案聽起來就像您嘗試在普通 CD 播放器中播放曲目時一樣,甚至更糟(暫停、重複、口吃、尖峰等)。

我對基於 cdparanoia 的開膛手的體驗通常主要是最好的情況,但我遇到了所有三種情況。

答案4

我從來沒有遇到過靜電。也不完全是“亂碼” - 但它可能會多次播放相同的半秒。這通常是在它提前跳過幾分鐘重複循環之前,或者向前跳過並且聽起來像是您按住 FF 按鈕一會兒。任何「空白」都可能是在播放曲目的開頭,因為它會再次跳過或循環播放。

相關內容