[Libav-user] libavformat/protocol_list.c ?

Hendrik Leppkes h.leppkes at gmail.com
Wed Nov 1 10:39:13 EET 2017

On Wed, Nov 1, 2017 at 9:33 AM, Mahboud Zabetian <mzabetian at tunein.com> wrote:
> Ah, thank you.  I was hoping this would show me how I could register my own
> protocols.  Our software used to ffurl_register_protocol 5 protocols.  Now
> that we are upgrading to a later version of ffmpeg, I have to figure out how
> to register those protocols in a different way.
> I've been told the correct way is to do a avio_alloc_context, but that
> doesn't take all the function pointers I need to pass in such as open and
> close.
> Any thoughts?  Thanks!

Registering custom protocols is not supported, and functions prefixed
with ff* are in a private namespace, so using such functions was
always "wrong".

On that note, you don't really need open and close callbacks, because
it is assumed that when you call avio_alloc_context the resource was
already opened (so you just call open before), and once you close the
AVFormatContext, you should close the resource afterwards yourself.
It gives you full control over resource management this way.

- Hendrik

More information about the Libav-user mailing list