首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FFmpeg NaCl模块avformat_open_input (在rtsp流上)返回-5: I/O错误

FFmpeg NaCl模块avformat_open_input (在rtsp流上)返回-5: I/O错误
EN

Stack Overflow用户
提问于 2016-01-05 11:06:11
回答 1查看 1.5K关注 0票数 2

我想在Chrome PNaCl中创建一个RTSP播放器。

我已经成功地构建了ffmpeg naclport,包括build.sh文件中用于ffmpeg NaCl端口的下列网络标志。

启用网络-启用协议-启用-demuxer=rtsp-启用-demux=rtp-启用-demuxer=sdp-启用-解码器=h 264

此外,我已经在我自己的PNaCl模块中成功地编码和链接了ffmpeg PNaCl端口。我在manifest.json文件中包含了以下网络权限:

代码语言:javascript
复制
"permissions": [
{
    "socket": [
        "tcp-listen:*:*", 
        "tcp-connect:*:*", 
        "resolve-host:*:*", 
        "udp-bind:*:*", 
        "udp-send-to:*:*"
    ],
}

现在,在PNaCl中运行以下代码后,avformat_open_input(.)返回-5或I/O错误

代码语言:javascript
复制
    AVFormatContext* formatContext = avformat_alloc_context();

    av_register_all();

    avformat_network_init();

    const char * stream_path = "rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov";

    int result = avformat_open_input(&formatContext, stream_path ,NULL,NULL);

    if(result< 0){

        PostMessage("input not opened, result: ");

        PostMessage(result);

    }else{

      PostMessage(std::string("input successfully opened"));

    }

我可能做错了什么,为什么PNaCl模块不能访问RTSP流?

PS。https://stackoverflow.com/questions/17854270/avformat-open-input-return-value-error-code-on-nacl-module是一个类似的问题,但它没有给出明确的答案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-08 13:52:09

您是从主线程调用avformat_open_input吗?看来套接字操作被阻止在主线程中工作。

尝试将代码移动到后台线程,或者更好地使用ppapi_simple,因为它会在后台线程中自动执行代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34610191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档