[PATCH] Recursively Nested ASX Playlists
Hello, I'm sending a patch to make mplayer capable of playing recursively nested asx playlists. A nested asx playlist is one whose refs point to further asx list files instead of real media files such as wmv. (This patch is not to be confused with processing of entryrefs which seems to be already implemented at asxparser.c.) Both asx playlists and wmv files are of mime type x-ms-asf. This patches modifies stream/asf_streaming.c so that it looks for a file ending with '.asx' which, if found, returns a demux_type_playlist to mplayer.c instead of the expected demuxer_type_asf. This triggers mplayer.c to synchronously follow the recursive nested playlists. A new streaming type ASF_ASXPlaylist_e is added to asf.h to control the new code branch. The function play_tree_parser_get_line() also receives a new code branch to deal with buffered streams which is necessary in order to parse the playlist, buffered when the asf stream was opened. I felt the necessity to develop this patch because there are sites which use nested asx playlists, such as video.globo.com (see discussions at http://sourceforge.net/forum/forum.php?thread_id=1668761&forum_id=242727 and http://sourceforge.net/mailarchive/forum.php?thread_id=31642270&forum_id=21800), and nested playlists are part of the microsoft specification for asx ( http://msdn2.microsoft.com/en-us/library/bb262812.aspx). I also tested the patch against www.bbc.co.uk, www.cnn.com, http://wptv.wp.pl/news.html (mplayer -playlist http://i.wp.pl/a/f/asx/11771/wptvnews.asx) and all worked fine. Extra care was taken to modify the minimum amount of code and to minimize potential regressions. In case this patch is approved for inclusion in mplayer, I would be grateful if my name was cited in the list of contributors. All comments welcome. Thanks, Marcus C. Granado mrc [d-o-t] gran [a-t] gmail [d-o-t] com --
Hello, I've updated the patch making mplayer capable of playing recursively nested asx playlists, removing a few unused lines and letting it cleaner (see attachment). I have been using it for days without detecting any problem with any site. Has any developer had a look at it? I have not received any feedback. []s, Marcus Granado Hello,
I'm sending a patch to make mplayer capable of playing recursively nested asx playlists. A nested asx playlist is one whose refs point to further asx list files instead of real media files such as wmv. (This patch is not to be confused with processing of entryrefs which seems to be already implemented at asxparser.c.)
Both asx playlists and wmv files are of mime type x-ms-asf. This patches modifies stream/asf_streaming.c so that it looks for a file ending with '.asx' which, if found, returns a demux_type_playlist to mplayer.c instead of the expected demuxer_type_asf. This triggers mplayer.c to synchronously follow the recursive nested playlists. A new streaming type ASF_ASXPlaylist_e is added to asf.h to control the new code branch. The function play_tree_parser_get_line() also receives a new code branch to deal with buffered streams which is necessary in order to parse the playlist, buffered when the asf stream was opened.
I felt the necessity to develop this patch because there are sites which use nested asx playlists, such as video.globo.com (see discussions at http://sourceforge.net/forum/forum.php?thread_id=1668761&forum_id=242727 <http://sourceforge.net/forum/forum.php?thread_id=1668761&forum_id=242727>and
http://sourceforge.net/mailarchive/forum.php?thread_id=31642270&forum_id=21800), and nested playlists are part of the microsoft specification for asx ( http://msdn2.microsoft.com/en-us/library/bb262812.aspx). I also tested the patch against www.bbc.co.uk, www.cnn.com, http://wptv.wp.pl/news.html (mplayer -playlist http://i.wp.pl/a/f/asx/11771/wptvnews.asx) and all worked fine. Extra care was taken to modify the minimum amount of code and to minimize potential regressions.
In case this patch is approved for inclusion in mplayer, I would be grateful if my name was cited in the list of contributors. All comments welcome.
Thanks, Marcus C. Granado mrc [d-o-t] gran [a-t] gmail [d-o-t] com --
Hi, 2007/3/11, Mrc Gran <mrc.gran@gmail.com>:
Hello, I've updated the patch making mplayer capable of playing recursively nested asx playlists, removing a few unused lines and letting it cleaner (see attachment). I have been using it for days without detecting any problem with any site.
Has any developer had a look at it? I have not received any feedback.
[]s, Marcus Granado
Anybody has ever noticed this? -- Zuxy Beauty is truth, While truth is beauty. PGP KeyID: E8555ED6
On Mon, 18 Feb 2008 01:16:18 +0800 "Zuxy Meng" <zuxy.meng@gmail.com> wrote:
Hi,
2007/3/11, Mrc Gran <mrc.gran@gmail.com>:
Hello, I've updated the patch making mplayer capable of playing recursively nested asx playlists, removing a few unused lines and letting it cleaner (see attachment). I have been using it for days without detecting any problem with any site.
Has any developer had a look at it? I have not received any feedback.
[]s, Marcus Granado
Anybody has ever noticed this?
From a quick glance, all the changes to playtreeparser.c are just plain unacceptable. There is no reason why it should be completly different to read from those stream.
Albeu
participants (3)
-
Alban Bedel -
Mrc Gran -
Zuxy Meng