我期待在HLS和MPEG Dash之间进行转换.我不访问原始完全连接的视频文件,只访问单个HLS段.
在对MPEG Dash进行此转换时,我需要为Dash清单.mpd文件提供初始化段.
我的问题是:
Dash视频初始化段的结构是什么?
如何在不需要原始完整文件的情况下生成/创建一个?
也许一个解决方案MP4Box
是将'.ts'的HLS段转换为自动初始化的Dash'.m4s'段,但我不确定如何解决这个问题?
任何想法都非常感谢.
非常感谢.
更新:使用原始hls段流式传输的片段.视频一直播放,但只是黑色.
Svetlin Mlad.. 7
Dash视频初始化段的结构是什么?
初始化段包含初始化视频解码器所需的信息.初始化段是可选的(参见ISO/IEC 23009-1).
对于ISO BMFF(通常称为mp4),这包括moov
盒子(在ISO/IEC 14496-12中规定).对于MPEG-TS,通常没有初始化段.当它存在时,它包含几个在PES中携带初始化数据的数据包.
如何在不需要原始完整文件的情况下生成/创建一个?
转换HLS
到MPEG-DASH
是平凡的,如果你的目标播放器支持所需的功能.首先,您需要一个支持MPEG-TS的播放器.那么您实际上并不需要初始化段,因为初始化数据包含在每个HLS段中.要将HLS播放列表转换为MPEG-DASH mpd,您必须创建一个segment list
或一个segment template
.这是一个例子:
HLS:
#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXTINF:10.0, stream0.ts #EXTINF:10.0, stream1.ts #EXTINF:10.0, stream2.ts
MPD:
......
如果您的目标播放器不支持MPEG-TS,或者SegmentList
您必须通过使用某些外部工具将HLS流转换为MPEG-DASH MP4Box
.
Dash视频初始化段的结构是什么?
初始化段包含初始化视频解码器所需的信息.初始化段是可选的(参见ISO/IEC 23009-1).
对于ISO BMFF(通常称为mp4),这包括moov
盒子(在ISO/IEC 14496-12中规定).对于MPEG-TS,通常没有初始化段.当它存在时,它包含几个在PES中携带初始化数据的数据包.
如何在不需要原始完整文件的情况下生成/创建一个?
转换HLS
到MPEG-DASH
是平凡的,如果你的目标播放器支持所需的功能.首先,您需要一个支持MPEG-TS的播放器.那么您实际上并不需要初始化段,因为初始化数据包含在每个HLS段中.要将HLS播放列表转换为MPEG-DASH mpd,您必须创建一个segment list
或一个segment template
.这是一个例子:
HLS:
#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXTINF:10.0, stream0.ts #EXTINF:10.0, stream1.ts #EXTINF:10.0, stream2.ts
MPD:
......
如果您的目标播放器不支持MPEG-TS,或者SegmentList
您必须通过使用某些外部工具将HLS流转换为MPEG-DASH MP4Box
.