0

我有一些需要ffurl_register_protocol()导出的遗留代码。我找到了这个补丁:

diff --git a/libavformat/Makefile b/libavformat/Makefile
index 0d6cb91..802edd7 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -1,7 +1,7 @@
 NAME = avformat
 FFLIBS = avcodec avutil
-HEADERS = avformat.h avio.h version.h
+HEADERS = avformat.h avio.h url.h version.h
 OBJS = allformats.o         \
        cutils.o             \
diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
index 6f11d60..e605135 100644
--- a/libavformat/libavformat.v
+++ b/libavformat/libavformat.v
@@ -1,4 +1,5 @@
 LIBAVFORMAT_$MAJOR {
                 global: av*;
+                ffurl_register_protocol;
           local: *;
 };

但是,它没有帮助。知道怎么做吗?

4

2 回答 2

0

我想我明白了。我添加int av_ffurl_register_protocol(URLProtocol *protocol, int size);到 libavformat/avformat.h。

我添加了实现:

int av_ffurl_register_protocol(URLProtocol *protocol, int size)
{
    return ffurl_register_protocol( protocol, size );
}

到 libavformat/allformats.c

我仍然需要测试它。

于 2013-07-05T17:30:57.650 回答
0

修改libavformat/libavformat.v,添加要导出的API,重新编译ffmpeg源码。

于 2015-06-18T03:48:38.970 回答