[FFmpeg-devel] No header for avformat/hlsenc

wm4 nfxjfg at googlemail.com
Fri Jan 13 11:51:34 EET 2017

On Fri, 13 Jan 2017 14:35:09 +0530
Kamaldeep Tumkur <kamaldeep.tumkur at gmail.com> wrote:

> Hi All,
> I am trying to use the HLSContext struct inside ffmpeg.c, in order to
> have access to the context's send_buffer_size value. However, the
> context struct is only defined inside hlsenc.c.
> Is there a specific reason for hlsenc not to have a header file? Are
> there any other options I may be missing? Please suggest.

It's not public API, so it doesn't have a public header. ffmpeg.c is
supposed to use public APIs only.

I don't think there's a precedent of a muxer providing "extra" API via
additional public structs/functions outside of avcodec.h. But there are
cases where AVOptions are used to communicate data back and forth an
implementation. E.g. the HTTP protocol uses an AVOption named
"metadata" to return certain HTTP headers back to the API user.

Not sure what's the best thing here to do. Either way, it's probably
going to be slightly unclean. But I'm fairly sure exposing the entire
HLSContext struct is not a reasonable option.

More information about the ffmpeg-devel mailing list