2017-02-03 401 views
0

我使用ffmpeg將mp4轉換爲m3u8。但首先我需要讓mp4更小。我用這個代碼,使其更小:Ffmpeg從mp4創建m3u8,視頻文件大小

ffmpeg -i big.mp4 -b 1000000 small.mp4 

然後,我用這個代碼把它轉換爲M3U8

ffmpeg -i small.mp4 -g 60 -hls_time 2 -hls_list_size 0 -hls_segment_size 500000 output.m3u8 

有沒有辦法一次做到這一點的?

回答

2

只是將它們組合起來:

ffmpeg -i big.mp4 -b:v 1M -g 60 -hls_time 2 -hls_list_size 0 -hls_segment_size 500000 output.m3u8 

注意,你在你當前的工作流程轉碼視頻兩次。由於第二個命令沒有設置視頻編解碼器選項進行復制,因此會再次進行轉碼 - 在CRF模式下,值爲23.

+0

對不起,但這是什麼意思?我怎麼能不這樣做?如果我使用你的1行代碼,它會解決問題嗎?我有mp4大約2GB的大小。並希望有200-250MB m3u8(總計)。你能推薦一個更好的組合,那麼我的? – cvdogan

+1

只需使用我的命令並調整'-b:v'的值即可。 – Mulvya