MKV 的 Flac 音軌抽離方法

※ 此問題來自:LM電腦版

  注意!!!這篇文章只對舊版的「mkvextract.exe」有效!因為新版的程式沒有「−−no−ogg」指令!新版解決對策,請參考內文註明「新版」的部份!

症狀:MKV 的 Flac 音軌無法抽離

  • 無法直接使用 MKVextractGUI 抽取 MKV/MKA 封裝內的 Flac 音軌。


起因

−−no−ogg

Only valid for FLAC tracks.
Normally FLAC tracks are embedded in an Ogg transport stream.
With this switch they are extracted to raw FLAC files instead.


據目前了解,應該是 Flac 封裝 MKV/MKA 時,會自動把 Flac 音軌先封裝成 Ogg,再封成 MKV/MKA。猜測就是這種疑似雙重的封裝,導致無法直接抽離音軌。


解決方法

指令

  • 直接用「mkvextract.exe」在指令模式下,進行抽離。
tracks 來源檔案名稱.mkv --no-ogg 1:抽離音軌檔名.flac
  • 註:
    1. 來源與目的檔案最好都使用「完整路徑」執行命令。
    2. 「--no-ogg 1:」的「1」,必要時請自行替換成「音軌所在的軌數」。(指 mkv/mka 裡面的檔案封裝所在的軌數)
      • 「新版」命令只刪除「--no-ogg」的部份,代表「軌數」的「1」或其他代換數字,仍不可少!


「新版」解法(實際測試 mkvtoolnix-unicode-4.3.0 內的「mkvextract.exe」不含「--no-ogg」指令)
tracks 來源檔案名稱.mkv 1:抽離音軌檔名.flac


實際操作

  1. 由「開始 / 執行」輸入「cmd」,進入 MS-DOS。
  2. 輸入以下指令(其中的「僅為參考值,應該隨著你安裝的地方更改」)
C:\Program Files\MKVtoolnix>"C:\Program Files\MKVtoolnix\mkvextract.exe" tracks "C:\123.mka" --no-ogg 1:"C:\123.flac"
  • 註:「--no-ogg 1:」的「1」,必要時請自行替換成「音軌所在的軌數」。

實驗測試後,抽取成功!


  • 測試檔案資料:FLAC 封裝至 MKA 後的 5 MB 音訊分割檔。
  • 測試結果:完整音源,沒有任何拉長音、加減速等異常狀況。


「新版」解法(實際測試 mkvtoolnix-unicode-4.3.0 內的「mkvextract.exe」不含「--no-ogg」指令)
  • 「新版」實際操作僅命令不同。
C:\Program Files\MKVtoolnix>"C:\Program Files\MKVtoolnix\mkvextract.exe" tracks "C:\123.mka"  1:"C:\123.flac"


其他

  • 如果真的沒辦法,也可以透過千千靜聽等播放軟體,使用轉檔的方法提出音樂。
    但會有轉檔失真、損害音質的疑慮。


參考資料

最終更新:2010年10月09日 05:19