剛好有做一個視頻處理類的程序,於是瞭解到了有ffmpeg這樣強大的工具。
本篇主要是說明一些相關 ffmpeg 命令行語句的使用。
音頻操作
如果不轉換,直接輸出aac
ffmpeg -i input.mp4 -vn -acodec copy out.m4a
將音頻輸出爲wav
ffmpeg -i input.mp4 -vn -y -ar 16000 -acodec pcm_s16le output.wav
將 aac 轉換爲 wav
ffmpeg -i input.m4a -acodec pcm_s16le -ar 16000 output.wav
-acodec 編碼解碼庫
-ar 調整音頻採樣率
-vn 不處理視頻
-y 覆蓋輸出
https://blog.csdn.net/hy119/article/details/81632662
字幕操作
字幕轉換
srt轉換爲ass
ffmpeg -i input.srt output.ass
ass轉換爲srt
ffmpeg -i input.srt output.ass
給視頻嵌入字幕
1.直接嵌入到字幕流中
ffmpeg -i input.mp4 -i subtitles.srt -c copy output.mp4
作者直接使用這個方法沒有成功顯示
2.使用subtitles filter ,將直接將字幕燒寫入視頻流
ffmpeg -i input.mp4 -vf subtitles="input.srt" output.mp4
3.使用 ass filter ,將直接將字幕燒寫入視頻流
ffmpeg -i input.mp4 -vf ass="subtitles.ass" output.mp4
注意使用subtitles,ass 填寫文件字幕文件路徑時需要加轉以符號:
如:C:\Users\xdh\Desktop\test\Introduction.ass,應爲
ffmpeg -i input.mp4 -vf ass="C\\:\\\\Users\\\\xdh\\\\Desktop\\\\test\\\\Introduction\\\.ass" outass.mp4