void show_protocols(void)
{
- URLProtocol *up=NULL;
+ void *opaque = NULL;
+ const char *name;
printf("Supported file protocols:\n"
- "I.. = Input supported\n"
- ".O. = Output supported\n"
- "..S = Seek supported\n"
- "FLAGS NAME\n"
- "----- \n");
- while((up = av_protocol_next(up)))
- printf("%c%c%c %s\n",
- up->url_read ? 'I' : '.',
- up->url_write ? 'O' : '.',
- up->url_seek ? 'S' : '.',
- up->name);
+ "Input:\n");
+ while ((name = avio_enum_protocols(&opaque, 0)))
+ printf("%s\n", name);
+ printf("Output:\n");
+ while ((name = avio_enum_protocols(&opaque, 1)))
+ printf("%s\n", name);
}
void show_filters(void)
URLProtocol *first_protocol = NULL;
int (*url_interrupt_cb)(void) = default_interrupt_cb;
+#if FF_API_OLD_AVIO
URLProtocol *av_protocol_next(URLProtocol *p)
{
if(p) return p->next;
else return first_protocol;
}
+#endif
const char *avio_enum_protocols(void **opaque, int output)
{
extern URLInterruptCB *url_interrupt_cb;
#endif
+#if FF_API_OLD_AVIO
/**
* If protocol is NULL, returns the first registered protocol,
* if protocol is non-NULL, returns the next registered protocol after protocol,
* or NULL if protocol is the last one.
*/
-URLProtocol *av_protocol_next(URLProtocol *p);
+attribute_deprecated URLProtocol *av_protocol_next(URLProtocol *p);
+#endif
#if FF_API_REGISTER_PROTOCOL
/**