如何使用命令列工具檢測視訊檔案中哪些通道包含壓縮音訊?

如何使用命令列工具檢測視訊檔案中哪些通道包含壓縮音訊?

我有一個包含 16 個音軌的 MXF 檔案。我知道前兩個軌道(立體聲)包含 Dolby E 壓縮影片。使用 MediaInfo (gui),它列出了 16 個混合了 Dolby E 和 PCM 的音訊串流,如以下連結所示:

媒體資訊圖形使用者介面

我需要一種從命令列獲取此資訊的方法。我嘗試了“ffmpeg -i channel_mapping_1080i2997_5.1_2_comp.mxf -f null -”,但它顯示了 16 個 PCM 軌道:

  Stream #0:1: Audio: pcm_s24be, 48000 Hz, hexadecagonal, s32 (24 bit), 18432 kb/s
...
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> wrapped_avframe (native))
  Stream #0:1 -> #0:1 (pcm_s24be (native) -> pcm_s16le (native))

可以使用 ffmpeg 或其他命令列程式來取得此資訊嗎?我特別需要知道哪些音軌包含壓縮數據,哪些是 PCM。

答案1

MediaInfo 有一個命令列版本(當我發布問題時我並不知道)。看起來這提供了我需要的所有資訊。

$ mediainfo --Inform="Audio;%ID%  %Format%\n" channel_mapping_1080i2997_5.1_2_comp.mxf 
3-1 / 2-1  Dolby E
3-1 / 2-2  Dolby E
3-3  PCM
3-4  PCM
3-5  PCM
3-6  PCM
3-7  PCM
3-8  PCM
3-9  PCM
3-10  PCM
3-11  PCM
3-12  PCM
3-13  PCM
3-14  PCM
3-15  PCM
3-16  PCM

相關內容