0
我有一系列的png圖像,我需要轉換爲以60幀/秒播放的視頻。上述ffmpeg添加不必要的幀來輸出視頻
ffmpeg -y -i frames/%4d.png -vcodec libx264 -r 60 video.avi
代碼使得視頻有每秒60幀,但它使用相同的幀中的兩個或三次,有效地與兩倍長25肥胖型fps視頻結束了。我究竟做錯了什麼?
我有一系列的png圖像,我需要轉換爲以60幀/秒播放的視頻。上述ffmpeg添加不必要的幀來輸出視頻
ffmpeg -y -i frames/%4d.png -vcodec libx264 -r 60 video.avi
代碼使得視頻有每秒60幀,但它使用相同的幀中的兩個或三次,有效地與兩倍長25肥胖型fps視頻結束了。我究竟做錯了什麼?
一些ffmpeg參數是位置依賴。 ffmpeg的指點你通過它的幫助:
# ffmpeg -h
...
Global options (affect whole program instead of just one file:
-loglevel loglevel set logging level
...
Per-file main options:
-f fmt force format
...
#
-r
是在其上按文件規定這些PARAMATERS的。
爲了一個參數適應輸入文件必須相應-i
參數之前寫的-r
參數。
所以下面應該爲你(爲我工作用的MPEG4編碼器)工作:
ffmpeg -y -r 60 -i frames/%4d.png -vcodec libx264 video.avi
你也試試,因爲libx264編碼器可能無法適應幀速率:
ffmpeg -y -r 60 -i frames/%4d.png -vcodec libx264 -r 60 video.avi
感謝。我讀過'-r'是位置依賴的,但從來沒有嘗試過使用它兩次......我現在得到奇怪的結果,從輸入文件從'rgba'切換到'rgba64be'時丟失了162幀,丟棄的仍然是'rgba64be',它們完全沒問題... – Mirac7