我有一个带有杜比视觉的mp4,我试图用它创建一个HLS流。为了做到这一点,我将这个mp4传递给shaka打包器,如下所示:
packager in=dolby-vision-amaze.mp4,stream=video,segment_template=video1/$Number$.ts,iframe_playlist_name=h265_1920p/iframe1.m3u8我可以在这里使用以下命令提取音频:
packager in=dolby-vision-amaze.mp4,stream=audio,segment_template=audio1/$Number$.ts,iframe_playlist_name=h265_360p/iframe1.m3u8但是通过视频命令,我得到了一个错误:
[0516/220127:INFO:demuxer.cc(89)] Demuxer::Run() on file 'dolby-vision-amaze.mp4'.
[0516/220127:INFO:demuxer.cc(155)] Initialize Demuxer for file 'dolby-vision-amaze.mp4'.
[0516/220127:ERROR:pes_packet_generator.cc(47)] NOT IMPLEMENTEDVideo codec 103 is not supported.
[0516/220127:ERROR:mp4_media_parser.cc(889)] Failed to process the sample.
[0516/220127:ERROR:packager_main.cc(554)] Packaging Error: 11 (MUXER_FAILURE): Failed to initialize PesPacketGenerator.我试图找到指定编解码器的方法(顺便说一句,它是h265 ),但没有效果。我正在使用最新的shaka packager版本(2.6.1),它指定在文档中支持杜比视觉( Dolby )。
发布于 2022-05-17 16:20:21
故障来自Shaka Packager 'PesPacketGenerator::Initialize‘函数。
它检查视频编解码器是否为h.264,如果不是,则返回false,这将触发您正在看到的错误日志。
此时,不支持TS输出格式的h265 -参见下面的支持GutHub主页():

如果您查看回调,您可以看到在Shaka试图生成输出流时正在生成错误。“MuxerFactory”正在查看所需的输出格式,并选择'mp2t::TsMuxer',这反过来初始化了“TSSegmenter”,该'TSSegmenter‘调用了您在上面看到的错误生成的'pes_packet_generator’。
我认为,这不被支持的原因是对于h265来说,通常推荐的HLS格式是fmp4而不是TS。在一些沙卡问题中也讨论了这一点:https://github.com/shaka-project/shaka-packager/issues/588
您可以在这里看到一些用fmp4生成HLS文件的示例:https://shaka-project.github.io/shaka-packager/html/tutorials/dash.html#examples
https://stackoverflow.com/questions/72267770
复制相似问题