[MPlayer-dev-eng] [PATCH] http streaming issues

Alexander Kanavin alexander.kanavin at nokia.com
Wed Jun 25 13:30:40 CEST 2008


ext Dominik 'Rathann' Mierzejewski wrote:
>> 1) Some web servers don't provide a way to seek within a file (example:
>> Nokia N-series phones),
> 
> Nokia phone is a web server?

Yes - if you instruct the phone to share music, images and videos that it 
has over WLAN, they become available via http. It has a simple web server 
built in.

>> 2) ASF streaming code relies on having first few bytes of the stream body
>> available when it parses the http headers, however it only ensures that the
>> entire http header is available when reading from a socket, and doesn't
>> ensure that the beginning of the body is available as well. Some web
>> servers, such as Windows Media Player in Windows Vista,
> 
> Windows Media _Player_ is a web server??

Yes :) If you allow collection sharing through Library->Media Sharing, it 
becomes available over http as well.

The full story is that the actual URLs to play from are available over a 
separate protocol called UPnP AV Media Server in both cases, but mplayer 
isn't involved here: the URLs are retrieved by an external helper 
application, or just supplied on the command line by hand.

>> send the headers
>> and the body in separate TCP packets, so the body isn't read at all and
>> this breaks ASF playback.
> 
> Breaks how? Could you provide MPlayer output before and after your patch?
> I've rarely had problems with playing ASF streams.

Sure. Before the patch, mplayer does not have the stream body to inspect, 
mistakenly thinks it's a playlist, tries to parse it and exits with a 
failure. After the patch, the file is identified and played correctly. I've 
attached both outputs, have a look.

Also note that this problem didn't exist before this patch:
http://svn.mplayerhq.hu/mplayer/trunk/stream/asf_streaming.c?r1=25239&r2=25415
because before that all URLs were treated as playable streams, even if the 
parser (mistakenly or not) decided it was a playlist. So fixing one bug 
uncovered another :)

Alex
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: before-patch.txt
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20080625/803c06f6/attachment.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: after-patch.txt
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20080625/803c06f6/attachment-0001.txt>


More information about the MPlayer-dev-eng mailing list