[libav-tools] Looking for HTTP authentication solution for fragmented streaming (HTTP)

Joshua Rubingh joshua at jet-stream.nl
Mon Aug 19 14:49:20 CEST 2013


Hi all,

I looked for two days for a solution for the following problem.

We have a system setup that uses avconv tool that pushes a live stream 
to a streaming server that supports HTTP fragmented streaming 
(Unified-Streaming.com). It is using the ismv muxer.

We need to secure the streaming server so that only authenticated users 
/ encoders can push the server. We thought that basic HTTP 
authentication should be sufficient enough. And that is supported by 
Microsoft Expression Encoder :( but not by avconv software.
Expression encoder does do a HTTP basic authentication and is allowed to 
stream.

With avconv we tried to put the username and password in the publishing 
url, hoping that this works like a browser can authenticate.
So we tried the following url:

http://username:password@streaming.server.com/test/publisingpoint.isml

That did not work. We also found an option to send extra header 
information:
http AVOptions:
-chunked_post      <int>   E.... use chunked transfer-encoding for posts
-headers           <string> ED... custom HTTP headers, can override 
built in default headers

But that does not work at all. Avconv complains. We did:

-headers 'Authorization: Basic aHR0cHdhdGNoOmY='

But that it only uses the first word, all other words are interpreted as 
a encoding parameters :(

So is it possible to request a feature for supporting Basic HTTP 
authentication? I think it should not be that hard to make, but here we 
don't had yet time to make it our selfs in the code.
So what is possible at this moment?

Any other solutions to make the PUSH stream secure. That means that 
POST, PUT and DELETE actions should be authenticated.

Kind regards,
Joshua


More information about the libav-tools mailing list