[mythtv-commits] mythtv commit: r25473 by paulh

mythtv at cvs.mythtv.org mythtv at cvs.mythtv.org
Thu Jul 29 13:15:52 UTC 2010


      Author: paulh
        Date: 2010-07-29 13:15:52 +0000 (Thu, 29 Jul 2010)
New Revision: 25473
   Changeset: http://svn.mythtv.org/trac/changeset/25473

Added:

   trunk/mythplugins/mythmusic/mythmusic/decoderhandler.cpp
   trunk/mythplugins/mythmusic/mythmusic/decoderhandler.h
   trunk/mythplugins/mythmusic/mythmusic/pls.cpp
   trunk/mythplugins/mythmusic/mythmusic/pls.h

Modified:

   trunk/mythplugins/mythmusic/mythmusic/musicplayer.cpp
   trunk/mythplugins/mythmusic/mythmusic/musicplayer.h
   trunk/mythplugins/mythmusic/mythmusic/mythmusic.pro
   trunk/mythplugins/mythmusic/mythmusic/playbackbox.cpp

Log:

MythMusic: Add the infrastructure that allows the music player to play from
sources other than local files.

The idea is to eventually allow the music player to play files in storage
groups via a remote backend or from the internet via http or from Ice/Shoutcast
streams etc.

The DecoderHandler is responsible for starting the decoder via DecoderIOFactorys.
It operates on a playlist, either created with a single file, by loading a .pls
or downloading it, and for each entry creates an appropriate DecoderIOFactory.
The creator is simply an intermediate class that translates the next URL in the
playlist to a QIODevice. Ie. the DecoderIOFactoryFile just returns a QFile. It
would be possible to add a DecoderIOFactoryShoutcast which would return a
QTcpSocket subclass where reads do the necessary translation of the shoutcast
stream.

Most of this is taken from an old patch by Eskil Heyn Olsen to add Shoutcast
support to MythMusic. I've updated it for QT4, programming style as well as
making the necessary changes so it works with current trunk.  



 


 




More information about the mythtv-commits mailing list