gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 22:50:50 29 4
gpt4 key购买 nike

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

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

--enable 网络 --enable-protocols --enable-demuxer=rtsp --enable-demuxer=rtp --enable-demuxer=sdp --enable-decoder=h264

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

"permissions": [
{
"socket": [
"tcp-listen:*:*",
"tcp-connect:*:*",
"resolve-host:*:*",
"udp-bind:*:*",
"udp-send-to:*:*"
],
}

现在,一旦我在 PNaCl 中运行以下代码, avformat_open_input(...) 返回 -5 或 I/O 错误 :
    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。 This是一个类似的问题,但它没有给出明确的答案。

最佳答案

你在打电话吗avformat_open_input从你的主线程?似乎套接字操作被阻止在主线程中工作。

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

关于FFmpeg NaCl 模块 avformat_open_input(在 rtsp 流上)返回 -5 : I/O error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34610191/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com