diff options
Diffstat (limited to 'libavformat/protocols.c')
-rw-r--r-- | libavformat/protocols.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libavformat/protocols.c b/libavformat/protocols.c index a97aa1008d..c1e9989a0a 100644 --- a/libavformat/protocols.c +++ b/libavformat/protocols.c @@ -162,3 +162,18 @@ const URLProtocol *ff_url_protocols[] = { #endif NULL, }; + +const char *avio_enum_protocols(void **opaque, int output) +{ + const URLProtocol **p = *opaque; + + p = p ? p + 1 : ff_url_protocols; + *opaque = p; + if (!*p) { + *opaque = NULL; + return NULL; + } + if ((output && (*p)->url_write) || (!output && (*p)->url_read)) + return (*p)->name; + return avio_enum_protocols(opaque, output); +} |