[FFmpeg-devel] [PATCH v2] Option to prevent probing for HTTP seekability

Reimar Döffinger Reimar.Doeffinger at gmx.de
Wed Sep 26 22:18:23 CEST 2012

On Wed, Sep 26, 2012 at 09:09:34PM +0100, Duncan Salerno wrote:
> On Wed, Sep 26, 2012 at 8:25 PM, Reimar Döffinger
> <Reimar.Doeffinger at gmx.de> wrote:
> > On Wed, Sep 26, 2012 at 07:56:19PM +0100, Duncan Salerno wrote:
> >> Some HLS servers return 403 when the Range header is present. Add an option to HTTP to control sending the range header (default on). HLS sets this option to disabled.
> >>
> >> Updated with feedback from Clément Bœsch. I'd prefer not to overload the meaning of is_streamed as I think its less clear whats going on.
> >
> > IMHO your approach has two disadvantages
> > 1) It only works with HTTP
> > 2) It doesn't work to do the opposite thing (forcing seeking enabled
> > without probing).
> >
> > If API is/was not an issue, my suggestion would be to make
> > the default of AVIOContext.seekablea new AVIO_SEEKABLE_PROBE by not
> > setting probe you could force it to a specific value.
> > I suspect this would be possible with keeping API compatibility by
> > setting it like that in the avio_alloc_context function.
> > I guess there's still going to be a few more open questions like how
> > to get it on into the URLContext after that though.
> What other protocols does this problem apply to? Should the code be
> adapted if/when it turns out to be a problem for others too? IHMO this
> is just a caller working round some quirks in HTTP.

Well, the problem definitely exists the other way (us not detection
that some HTTP in fact does support seeking).
I suspect that several other protocols where seeking is optional like
FTP or MMS could make use of it, too.

More information about the ffmpeg-devel mailing list