2017-05-25 538 views
1

所以我想设置自适应流媒体,我有我认为是80-90%的问题完成。现在我摄取我的源视频,将其转码为5种分辨率,每种分辨率都有3种比特率(低,中,高),然后我将所有这些视频分成5秒的块,以便用户始终可以获得最佳观看效果。现在我处于需要生成/创建MPD清单文件的地步,而且我很难弄清楚如何。几乎每个人都只是说使用MP4Box,但他们的许可证对我的项目来说太严格了。使用FFMPEG为MPEG-DASH自适应流媒体生成MPD文件。

有没有办法在我分割视频时使用FFMPEG生成MPD文件?或者可能生成一个HLS,然后我可以将其转换为MPD清单?任何信息都很棒,这是我当前的FFMPEG命令(工作)

-note $变量是输入到bash脚本中的输入,它设置输入文件,比特率和比例。 /usr/bin/ffmpeg -re -i $1 -an -c:v libx264 -b:v $7 -b:a 196k -strict -2 -movflags faststart -pix_fmt yuv420p -vf "scale='$4:trunc(ow/a/2)*2'" -flags -global_header -map 0 -f segment -segment_time 5 -segment_list test.m3u8 -segment_format mpegts $2%05d.mp4

回答

0

ffmpeg \ 
 
    -f webm_dash_manifest -live 1 \ 
 
    -i /var/www/webm_live/glass_360.hdr \ 
 
    -f webm_dash_manifest -live 1 \ 
 
    -i /var/www/webm_live/glass_171.hdr \ 
 
    -c copy \ 
 
    -map 0 -map 1 \ 
 
    -f webm_dash_manifest -live 1 \ 
 
    -adaptation_sets "id=0,streams=0 id=1,streams=1" \ 
 
    -chunk_start_index 1 \ 
 
    -chunk_duration_ms 2000 \ 
 
    -time_shift_buffer_depth 7200 \ 
 
    -minimum_update_period 7200 \ 
 
    /var/www/webm_live/glass_live_manifest.mpd