Feature #294

Support for ASX ver. 3

Added by Martin Steiger over 4 years ago. Updated over 4 years ago.

Status:Closed Start date:May 19, 2013
Priority:Minor Due date:
Assignee:- % Done:

100%

Category:-
Target version:3.5
Affects version:3.3.4

Description

I noticed that audacious supports asx1 and asx2 which basically seem to be INI-files.
Would it be possible to add support for asx3 which is XML?
It looks like it was rather easy to parse with a standard XML parser.

I can copy the mms:// link from the following asx file into the "Open URL" field and it works.

<ASX version="3.0">
<ABSTRACT>http://www.bbc.co.uk/</ABSTRACT>
<TITLE>BBC</TITLE>
<AUTHOR>BBC</AUTHOR>
<COPYRIGHT>(c) British Broadcasting Corporation</COPYRIGHT>
<MoreInfo href="http://www.bbc.co.uk/"/>
<Entry>
<ref href="mms://wm.bbc.co.uk/wms/radio1coyopa/radio_1_-_saturday_0100.wma"/>
<ref href="mms://wm.bbc.co.uk/wms2/radio1coyopa/radio_1_-_saturday_0100.wma"/>
<MoreInfo href="http://www.bbc.co.uk/"/>
<Abstract>BBC </Abstract>
</Entry>
</ASX>

It works in Totem, but I don't really understand why. The parsing code in totem-pl-parser-wm.c seems to work for INI-files only, but I'm not an expert.

https://git.gnome.org/browse/totem-pl-parser/tree/plparse/

Associated revisions

Revision 9ee98182
Added by John Lindgren over 4 years ago

Add asx3 parser based on work by Martin Steiger. Closes: #294.

History

#1 Updated by Martin Steiger over 4 years ago

Which xml parser do you use in audacious? Maybe I can write a snippet that parses the interesting bits ..

#2 Updated by John Lindgren over 4 years ago

  • Category deleted (plugins/asx)
  • Status changed from New to Closed
  • Target version changed from 3.4 to 3.5
  • % Done changed from 0 to 100

Since the "asx" extension is used for both legacy ASX and ASXv3, I had to make some changes in core

I added a new "asx3" plugin [1] based on your pull request [2]. Additionally, I made some changes in core [3] and the old ASX plugin [4] to correctly handle loading and saving ASXv3. It's too late in the release cycle to bring these changes into 3.4 but they will be in 3.5.

[1] https://github.com/audacious-media-player/audacious-plugins/blob/master/src/asx3/asx3.c
[2] https://github.com/audacious-media-player/audacious-plugins/pull/14
[3] https://github.com/audacious-media-player/audacious/commit/574af960af0013c16c54300a559e7ccb48df8e63
[4] https://github.com/audacious-media-player/audacious-plugins/commit/656be1704ac8e8a50ac9e778dd8b33aa9342c173

Also available in: Atom PDF