2016-03-01 182 views
1

我将mp4视频转码为5FPS,10FPS .. 30FPS等多种帧速率,并使用MP4Box将它们分段以在DASH IF播放器中播放。是否可以使用MPEG-DASH流式传输多个帧速率视频?

FFMPEG命令生成具有相同的分辨率多帧速率视频:

的ffmpeg -i fball.mp4 -f MP4 -vcodec libx264形轮廓:V高-vf规模= 1280:-1 -b:v 2000K -minrate 2000k -maxrate 2000k -bufsize 2000k -nal-hrd cbr -g 120 -keyint_min 120 -r 60.0 -flags + cgop -sc_threshold 0 -pix_fmt yuv420p -threads 0 -x264opts keyint = 120:min-keyint = 120:sps- ID = 1 -an -y fball_720p_60fps.mp4

的ffmpeg -i fball.mp4 -f MP4 -vcodec libx264 -profile:v高-vf标度= 1280:-1 -b:v 1000K 1000K -minrate - maxrate 1000k -bufsize 1000k -nal-hrd cbr -g 60 -keyint_min 60 - ř30.0 -flags + cgop -sc_threshold 0 -pix_fmt YUV420P -threads 0 -x264opts在keyint = 60:分钟-在keyint = 60:SPS-ID = 1 -an -y fball_720p_30fps.mp4

FFMPEG命令以提取音频:

的ffmpeg -i fball.mp4 -acodec AAC -b:用于分割一128K -vn -strict -2 -y fball_audio.mp4

MP4Box命令:

MP4Box -frag 2000 - dash 2000 -rap -base-url ./segments/ -profile main -segment-name/segments /%s_ -out dash/fball_das h.mpd fball_720p_24fps.mp4 fball_720p_30fps.mp4 fball_720p_60fps.mp4 fball_audio.mp4

  1. 片段持续时间:2秒

  2. GOP长度:视频的片段持续时间X FPS

  3. 分辨率:720p的对于所有视频

结果是VIDEO DECODE错误或在切换帧率时停顿。

我在转码时出错吗? 是否可以使用MPEG DASH流式传输多帧频视频?

回答

0

在MPEG-DASH中,可以使用不同帧率的表示法。我认为这不是解码错误的原因。 DASH.js和其他基于HTML5/JS的播放器正在使用底层浏览器的MSE进行解码。因此,您的编码片段很可能不符合浏览器解码引擎的要求或者已损坏。

例如,如何生成MPEG-DASH内容,使用MP4Box和x264可以找到here。在这方面还有几种可用的在线服务,如BitmovinWowza

+0

谢谢先生。我添加了用于使用MP4Box分割多个帧速率视频的命令,您是否可以向我提供避免VIDEO DECODE错误的命令 –

相关问题