我尝试使用函数av_format_open_input()读取https视频链接,但该函数返回负值。 这是我的代码:
av_register_all();
avcodec_register_all();
avformat_network_init();
const char * url = "https://r1---sn ...";
AVFormatContext * pFormatCtx = avformat_alloc_context();
int ret = avformat_open_input(&pFormatCtx, url, NULL, NULL);
此代码使用本地文件作为网址,但只要我提供https网址就不再有效了。
感谢
的 [编辑]
我发现只有这个:ffserver.c
但它使用.ffm文件作为输入。任何关于如何实现HttpContext的例子或帮助(如果这里需要HttpContext)都会很棒。
的 [更新]
我结束使用libvlc似乎更容易,但使用ffmpeg这样做的方式仍然很有趣。如果感兴趣,请参阅我的其他帖子:Get frame from video with libvlc smem and convert it to opencv Mat. (c++)