-
Notifications
You must be signed in to change notification settings - Fork 65
Description
你好,我在使用 RedPlayer 鸿蒙版本demo时遇到一个 FFmpeg 的使用错误,详细情况如下:
- 运行时错误日志(尝试加载:rtsp://172.17.16.43:5555/rtsp/fba1b081-f271-4965-a1f1-4aee7dc0ec2e 视频直播流)
11-17 13:34:32.272 42749-42749 A03D00/com.xxx.redplayer/JSAPP
com.xxx.redplayer E RedPlayer 42749 47271 [redsource]:
[id @ 0001] avformat_open_input failed! ret=-1330794744
可以看到 FFmpeg 返回错误码:-1330794744。
- 错误码参考
相关错误码的解释来自华为云论坛:
(参考链接: https://bbs.huaweicloud.com/blogs/418658 )
- 检查 FFmpeg.so 是否启用 RTSP
我通过 strings 命令检查 libffmpeg.so 中是否包含 RTSP 相关标识:
strings "d:\Develop\Harmony\REDPlayer01\source\redplayercore\extra\ffmpeg\harmony\arm64-v8a\libffmpeg.so" `
| Select-String -Pattern "rtsp|RTSP|--enable-protocol=rtsp|rtsp_protocol"
返回为空,未找到任何 RTSP 相关符号。
- 为排除命令误判,我检查了 H.264/HEVC 配置
strings "d:\Develop\Harmony\REDPlayer01\source\redplayercore\extra\ffmpeg\harmony\arm64-v8a\libffmpeg.so" `
| Select-String -Pattern "h264|H264|hevc|HEVC|--enable-decoder=h264|--enable-decoder=hevc"
输出正常,确实包含解码器:
ff_h264_decoder
ff_hevc_decoder
ff_h264_metadata_bsf
ff_h264_mp4toannexb_bsf
ff_h264_redundant_pps_bsf
- 初步结论
综合以上信息,我猜测目前内置的 libffmpeg.so 在编译时可能 未启用 RTSP 支持,导致 avformat_open_input 无法正常打开 RTSP 流。
目前我不清楚你们的 FFmpeg 编译配置(是否修改过源码、启用了哪些协议、具体版本号等),所以不敢直接自行修改或重新编译。
希望你们能协助确认:
当前 FFmpeg 的编译配置是否包含 RTSP?
若未启用,是否有计划提供包含 RTSP 支持的版本?
是否可以公开 FFmpeg 的编译参数或脚本?
感谢你们的支持!