Skip to content

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

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions