我目前正在尝试阅读从服务器发送的小型视频文件
为了使用libavformat读取文件,您应该调用
av_open_input_file(&avFormatContext, "C:\\path\\to\\video.avi", 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)
问题是在这种情况下,文件不在磁盘上,而是在内存中.
我现在正在做的是下载文件,使用临时名称将其写入磁盘,然后av_open_input_file使用临时文件名调用,这不是一个非常干净的解决方案.
事实上我想要的是一个功能,av_open_custom(&avFormatContext, &myReadFunction, &mySeekFunction);但我没有在文档中找到任何.我想这在技术上是可行的,因为文件的名称不能帮助库确定它使用的格式.
那么有这样的函数,还是av_open_input_file的替代品?