Skip to content

FFmpeg avformat_open_input 返回错误码 -1330794744,疑似未启用 RTSP 支持 #68

@jjjjjjava

Description

@jjjjjjava

你好,我在使用 RedPlayer 鸿蒙版本demo时遇到一个 FFmpeg 的使用错误,详细情况如下:

  1. 运行时错误日志(尝试加载: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。

  1. 错误码参考

相关错误码的解释来自华为云论坛:
(参考链接: https://bbs.huaweicloud.com/blogs/418658

  1. 检查 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 相关符号。

  1. 为排除命令误判,我检查了 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

  1. 初步结论

综合以上信息,我猜测目前内置的 libffmpeg.so 在编译时可能 未启用 RTSP 支持,导致 avformat_open_input 无法正常打开 RTSP 流。

目前我不清楚你们的 FFmpeg 编译配置(是否修改过源码、启用了哪些协议、具体版本号等),所以不敢直接自行修改或重新编译。

希望你们能协助确认:

当前 FFmpeg 的编译配置是否包含 RTSP?

若未启用,是否有计划提供包含 RTSP 支持的版本?

是否可以公开 FFmpeg 的编译参数或脚本?

感谢你们的支持!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions