FFMPEG是一款非常棒的工具。我知道它可以編輯ID3標籤,甚至刪除行中的所有標籤:如何使用ffmpeg從mp3中刪除ID3音頻標籤圖像(或元數據)
ffmpeg -i tagged.mp3 -map_metadata -1 untagged.mp3
但即使在那之後,仍然有封面圖片。
我不知道如何使用ffmpeg將其刪除。我知道還有其他軟件可以完成這項工作 - 比如eyed3 - 但是如果ffmpeg可以在編碼音頻的同時在一行中完成,那麼安裝它有什麼意義呢?
FFMPEG是一款非常棒的工具。我知道它可以編輯ID3標籤,甚至刪除行中的所有標籤:如何使用ffmpeg從mp3中刪除ID3音頻標籤圖像(或元數據)
ffmpeg -i tagged.mp3 -map_metadata -1 untagged.mp3
但即使在那之後,仍然有封面圖片。
我不知道如何使用ffmpeg將其刪除。我知道還有其他軟件可以完成這項工作 - 比如eyed3 - 但是如果ffmpeg可以在編碼音頻的同時在一行中完成,那麼安裝它有什麼意義呢?
封面圖片/專輯封面被ffmpeg視爲視頻流。要省略它,您可以使用-vn
或-map
選項。
在這個例子中音頻被stream copied(再多路複用的),而不是被重新編碼。這是更快,不會降低質量:
ffmpeg -i tagged.mp3 -vn -codec:a copy -map_metadata -1 out.mp3
-map
代替-vn
或者你可以使用-map
選項來明確選擇的流。使用-map 0:a
告訴FFmpeg只能選擇從輸入0
音頻流(S)(第一輸入和你的情況僅輸入):
ffmpeg -i tagged.mp3 -map 0:a -codec:a copy -map_metadata -1 out.mp3
我喜歡-map
,因爲它是非常靈活的。
我試過使用LordNeckbeard提供的代碼,他們都沒有爲我的案件工作。但是這個工作:
ffmpeg -i tagged.mp3 -acodec copy -map 0 -map_metadata 0:s:0 notags.mp3
它現在只顯示了一個標籤'TSSE'(意思是編碼器)。另外,非常推薦這篇文章,如果你想使用ffmpeg的操縱ID3標籤:
我嘗試類似:
ffmpeg -i file.mp3 -ab 128k -ac 2 -ar 44100 -map 0:a -map_metadata -1 -sn -vn -y output.mp3
,並一直在輸出覆蓋。
謝謝,那有效!順便說一下,我不想重新編碼它,除了去除元數據之外,還需要對它進行重新編碼以獲得更高的壓縮比。 – Buzut
@ user1717735我明白了。我用一個重新編碼的例子更新了答案。 – LordNeckbeard
再次感謝:) – Buzut