
关键问题出在复制音频流的条件上面。要成功复制音频流至少具备下面几个条件
1、目标格式支持这种音频流,如果不支持,则无法通过复制方式封装
选择的FLV目标格式,常见就支持 AAC类型的或者MP3类型的音频,如果是其他音频格式,就不支持的(你那个片源MOV格式,你要查看一下,是否片源中的音频编码是 AAC 或者MP3 这类的,如果不是,则需要也要进行音频数据流的转码)
2、选择合适的封装模块,同时要根据工具的特点来操作(Mediacoder 有很多BUG,你如果知道参数含义,能自己强制指定最好都指定一下,这样能减少自动模式程序自带错误对你转码的影响)。你要封装的FLV格式,MC中一般用FFMPEG格式封装,但是不能一次性输出FLV格式,如果先输出H.264视频编码,AAC音频编码,封装格式为MP4的话,则后续可以通过复制视频流复制音频流的方式,用FFMPEG封装输出成FLV,完成你的FLV格式输出
还有一点要提醒的是,要编码就要先能解码,你提到“复制音频流去掉就没法开始压制” 估计问题出在音频解码模块没有选择好,导致无法正常解码音频数据,结果就无法转码音频,导致无法开始压制,你可以将 “音频”标签下的“来源”改成FFMPEG再试试
1、目标格式支持这种音频流,如果不支持,则无法通过复制方式封装
选择的FLV目标格式,常见就支持 AAC类型的或者MP3类型的音频,如果是其他音频格式,就不支持的(你那个片源MOV格式,你要查看一下,是否片源中的音频编码是 AAC 或者MP3 这类的,如果不是,则需要也要进行音频数据流的转码)
2、选择合适的封装模块,同时要根据工具的特点来操作(Mediacoder 有很多BUG,你如果知道参数含义,能自己强制指定最好都指定一下,这样能减少自动模式程序自带错误对你转码的影响)。你要封装的FLV格式,MC中一般用FFMPEG格式封装,但是不能一次性输出FLV格式,如果先输出H.264视频编码,AAC音频编码,封装格式为MP4的话,则后续可以通过复制视频流复制音频流的方式,用FFMPEG封装输出成FLV,完成你的FLV格式输出
还有一点要提醒的是,要编码就要先能解码,你提到“复制音频流去掉就没法开始压制” 估计问题出在音频解码模块没有选择好,导致无法正常解码音频数据,结果就无法转码音频,导致无法开始压制,你可以将 “音频”标签下的“来源”改成FFMPEG再试试