簡體   English   中英

ffmpeg concat丟棄音頻幀

[英]ffmpeg concat drops audio frames

我有一個mp4文件,我想把視頻的兩個連續部分輸出並將它們渲染為單獨的文件,然后將它們重新組合回原始視頻。 例如,通過我的視頻video.mp4 ,我可以運行

ffmpeg -i video.mp4 -ss 56 -t 4 out1.mp4
ffmpeg -i video.mp4 -ss 60 -t 4 out2.mp4

創建out1.mp4其中包含0點00分56秒至00:01:00的video.mp4out2.mp4包含00:01:00至0時01分04秒。 但是,后來我希望能夠快速重新組合它們(即沒有重新編碼),所以我使用了concat demuxer

ffmpeg -f concat -safe 0 -i files.txt -c copy concat.mp4

其中files.txt包含

file out1.mp4
file out2.mp4

理論上應該給我回0點零零分56秒到0時01分04秒video.mp4 ,但總有一些下降,其中級聯發生音頻幀,創造一個非常不愉快音質神器,音頻暫時現象 ,如果你願意。

丟失音頻幀

我嘗試在最初創建視頻的兩個部分時使用async-af apad ,但我仍面臨同樣的問題,並且在其他地方找不到解決方案。 我在多個不同的用例中遇到過這個問題,所以希望這個簡單的例子可以解釋真正的問題。

我建議您使用PCM音頻將片段導出到MOV,然后將這些片段連接到重新編碼音頻。

ffmpeg -i video.mp4 -c:a pcm_s16le -ss 56 -t 4 out1.mov
...

接着

ffmpeg -f concat -safe 0 -i files.txt -c:v copy concat.mp4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM