[FFmpeg-devel] [PATCH] Private options for url protocols
Michael Niedermayer
michaelni at gmx.at
Sat Nov 19 23:09:32 CET 2011
On Sat, Nov 19, 2011 at 10:44:18PM +0100, Stefano Sabatini wrote:
> On date Saturday 2011-11-19 21:36:48 +0100, Michael Niedermayer encoded:
> > On Tue, Nov 15, 2011 at 02:43:24PM +0100, Michael Niedermayer wrote:
> > > On Tue, Nov 15, 2011 at 01:42:46AM +0100, Stefano Sabatini wrote:
> > > > On date Thursday 2011-11-10 17:56:11 +0100, Michael Niedermayer encoded:
> > > > > Hi
> > > > >
> > > > > Attached patchset implemets subj
> > > > > Comments welcome, ill probably push it tomorrow if there are no
> > > > > objections
> > > > >
> > > > > An example of how useage would look is:
> > > > > ffplay http,user-agent=JustTesting://samples.multimedia.cx/MPEG2/test422.m2v
> > > > >
> > > > > the syntax would also work for nested protocols ...
> > > > >
> > > > > --
> > > > > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> > > > >
> > > > > No human being will ever know the Truth, for even if they happen to say it
> > > > > by chance, they would not even known they had done so. -- Xenophanes
> > > >
> > > > > From d300a9c6a787827dbe2d86a1b330b8aba830bcc7 Mon Sep 17 00:00:00 2001
> > > > > From: Michael Niedermayer <michaelni at gmx.at>
> > > > > Date: Thu, 10 Nov 2011 17:02:02 +0100
> > > > > Subject: [PATCH 1/2] avio: allow any chars in protocols
> > > > >
> > > > > Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> > > > > ---
> > > > > libavformat/avio.c | 6 +++---
> > > > > 1 files changed, 3 insertions(+), 3 deletions(-)
> > > > >
> > > > > diff --git a/libavformat/avio.c b/libavformat/avio.c
> > > > > index 47b2d51..f08cbab 100644
> > > > > --- a/libavformat/avio.c
> > > > > +++ b/libavformat/avio.c
> > > > > @@ -221,17 +221,17 @@ int ffurl_alloc(URLContext **puc, const char *filename, int flags)
> > > > > {
> > > > > URLProtocol *up;
> > > > > char proto_str[128], proto_nested[128], *ptr;
> > > > > - size_t proto_len = strspn(filename, URL_SCHEME_CHARS);
> > > > > + const char *proto_end = strchr(filename, ':');
> > > >
> > > > uhmm... what if you have ":" in the options? e.g.:
> > > > ffplay http,user-agent=::the_bloody_user_agent::://samples.multimedia.cx/MPEG2/test422.m2v
> > > >
> > > > I still find the lack of defined namespaces for the options a big
> > > > issue, but I can't say what would be a good way of setting this,
> > > > maybe:
> > > > -proto_opts=user_agent=... http://...
> > > >
> > > > yes that would be inconsistent...
> > >
> > > also theres the problem that protocols can be nested like
> > > applehttp+http:...
> > > we should be able to transfer options specifically to one
>
> > are you ok if i commit the code with the unchanged syntax ?
> > This way of passing options is mostly just relevant until the next
> > ABI bump anyway. And i dont see a easy way to pass arbitrary strings
> > nor do i see much need for it ...
>
> Not being able of specifying arbitrary strings containing escaping
> characters looks like a serious limitation to me, but if you say this
> is just temporary I won't object in case you commit this.
If you want to write a implementation that can pass arbitrary strings
that surely is welcome. ?
> BTW do you
> have an idea *where* we should document it?
each protocol could be documented and with them this method of
passing options could be
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
I know you won't believe me, but the highest form of Human Excellence is
to question oneself and others. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20111119/2584966f/attachment.asc>
More information about the ffmpeg-devel
mailing list