[vlc-devel] ASX ads behaviour - patch proposal 2

Pierre Souchay pierre at souchay.net
Wed Dec 30 14:47:34 CET 2009


Hello,

I recently tried to read this playlist using VLC :

http://viphttp.yacast.net/nrj/PUBWEBRADIOS/NRJ/encodernrj.asx

This playlist has a unique entry with CLIENTSKIP="NO".
<ASX VERSION="3.0">
<Title>Simulcast NRJ</Title>
<Entry CLIENTSKIP="NO">
	<ref href="mms://vipnrj.yacast.net/encodernrj" />
   <ref href="mms://vipnrj.yacast.net/encodernrj_sat" />
</Entry>
</ASX>

With such playlist, VLC currently plays nothing because here is a skip  
ads feature in the ASX parser code. Basically, it considers that the  
clientskip attribute is intended for ads. While it makes sense in most  
cases, when a single entry is found, it should be played even there is  
a clientskip attribute.

I made a patch for VLC and seems to work well.

When the first entry is read and has a clientskip attribute, It keeps  
a backup of the playlist entry for later use. If another entry exists  
without clientskip attribute, the backup will be discarded.

When finished parsing, we search for a backup, if found, we add it (it  
means we did not find any entry).

You will find a unified diff patch as attachment.

Cheers

Pierre Souchay

-------------- next part --------------
A non-text attachment was scrubbed...
Name: asx.patch
Type: application/octet-stream
Size: 2550 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20091230/432cfb78/attachment.obj>
-------------- next part --------------



More information about the vlc-devel mailing list