I'm currently working on support for shoutcast streams in
MythMusic. It's in a fairly good state already and I use it daily at
work and at home for tunes.
Features:
- Supports Shoutcast streams
- Metadata editor for adding new stations
- Can remove stations from UI
- Parses stream metadata, format configurable
- Displays station logo as Album Art
If you want to take it for a testdrive, apply the patch. It'll
create a music_radios table with all the SomaFM and Digitally Imported stations and add a
RadioMusicDBSchemaVer to your settings table. This SchemaVer is
independent of the MusicDBSchemaVer, but hopefully one day will be
folded into it.
And a patch for MythTV 0.21 big
patch The diff was done again SVN revision 16678.
Get everything in one big
patch The diff was done again SVN revision 16380.
|

Screenshot of MythTV playing SomaFM's 'Secret Agent'.

Screenshot editing a channel.
|
|
iPod support |
I've started working on iPod support in MythMusic. Using the KDE
ipodslave library as a base, I plan on a solution, where plugging in
the iPod will make it appear on the toplevel tree right after "All My
Music". There will be context sensitive menus to allow transferring
albums or entire artist collections to/from the iPod.
While initially targeting the iPod, I do plan to make the mechanism
generic enough that it'll be easy to add support for other mp3
players, of course, not having anything but the iPod, it'll be hard to
predict what "generic enough" means...
Currently the main obstacle is the rigidness of MythMusic's tree
(both the playbackbox and databasebox ones), and especially how hard
it is to add new collections to it (something that I ran into while
doing the shoutcast player). Untill I've worked out how to solve this
(ie. redo the tree building code...) I won't get much done on the iPod
support.
|
|
Patches |
|
musictheme.tar.gz |
Change the layout of mythmusic to have more screenarea allocated
for the browser, and also adds some small icons for
shuffle/repeat. This patch is very much a personal preference thing. |
Screenshot of modified mythmusic look.
|
|
|
id3tag.patch |
Fixes some id3 tag issues ;
- id3v1 tags aren't removed
- if no id3v2 tag exists, changed metadata isn't saved
|
|
Status: Filed ticket with patch
|
albumart.patch |
Display album art in the info banner, also adds code to read the
APIC frame from mp3s.
|
Screenshot of squares while banner is shown.
|
Status: Filed ticket with patch
|
mbanner.patch |
When the track changes, display a banner at the bottom of
fullscreen visualisers with the song info.
New visualiser ; Squares. Two rows of sixteen squares that change
colours ala the Spectrum visualiser.
|
Screenshot of squares while banner is shown.
|
Status: In SVN pr. 2006-09-05
|
treebuilding.patch |
Big patch that revamps how mythmusic builds tree. Greatly speeds up
the building (see here
for measurements).
Consists of many small initial tweaks and then a redo of the
treebuilding code :
Status: In SVN pr. 2006-02-16
|
cdrip.patch |
- Smoother overall progress bar in the cdripper (pr. sector rather
than pr. track)
- The "Import CD" button is the one to have focus.
Status: In SVN pr. 2005-05-03
|
lcd.patch |
- Support for CVS version of lcdproc.
- Optionally show "Artist - Album - Title" when playing music.
- Reintroduced the 'music' screen instead of using 'generic' screen
when playing music.
- Cleanup of how mythmusic calls LCD.
- Fixes to work on larger LCDs. Various fixes to the handling of
screen priorities.
- Removes need to restart frontend when changing LCD settings.
Status: In SVN pr. 2005-05-03, except fixes to mythdialogs.cpp (rejected), see
lcd2.patch.
|
lcd2.patch |
Updated fix to make MythProgressDialog properly update LCD progress
bar (update to lcd.patch).
Status: In SVN pr. 2005-07-12
|
lcd-busy-520.patch
busy.patch
decoder-refactor.patch
dbupdate-short2.patch
|
- Reread ID3 tags for files, if nessecary, when updating mythmusic
database.
- Some refactoring in the Decoder object hierachy (move up method
from subclasses into superclass, use template method to implement difference).
- Also introduces a MythBusyDialog to show a busy-spinner style
progress.
- Fixes a missing "flush" call in lcddevice.cpp (when sending to the
mythlcdserver).
- Fixes to the LCD code so the LCD can also display a busy-spinner.
busy depends on lcd-busy-520
dbupdate-short2 depends on lcd-busy-520, busy and decoder-refactor
Status: In SVN pr. 2005-10-27
|
musicsplit.patch |
Introduce "splitartist1" as path keyword for mythmusic, split
artists into groups of (A)(B)(C)(D) instead of splitartists (ABCD).
Status: In SVN pr. 2005-05-03
|
observable.patch |
Refactor. There were three different classes that implemented a
add/removeListener & dispatch interface, and for the shoutcast code
I needed a fourth, so this patch refactors that interface out to a
MythObservable superclass that can be inherited to get the
add/removeListener interface.
Status: In SVN pr. 2005-12-08
|
decoderlocking.patch |
Refactoring of how to lock/unlock the mutex for Decoders. I needed
this for the shoutcast decoder.
Status: In SVN pr. 2005-12-08
|
metaformat.patch |
Patch that adds the 'format' field from the db to the object. Also
something I needed for the shoutcast decoder. This
is a workaround to be able to identify if a Metatata object is a
stream. The cleaner alternative is to use inheritance, but I'll defer
that.
Status: In SVN pr. 2005-12-08
|
visualisers.patch |
Not sure if this is a bug or a problem with shoutcast streams. But
they tended to only use 14/th of some visualiser
(ie. StereoScope). Turned out that they only send 128 samples instead
of 512 pr. VisualNode. This patch makes MonoScope, StereoScope and
Goom handle <512 (like BumpScope).
Status: Filed ticket with patch
|
Patch for ;
|
Updated March 21st 2008 for MythTV 0.21 and SVN head
- Adds ShoutCast streaming support
- Allround lots of patches and touches to support the shoutcast code
- Metadata editor for streams
- Show station logo in AlbumArt visualiser
- Incorporated patches from Bill Cizek for support of premium DI streams.
- Incorporated patches from Cameron Watt for more generic UI theme support.
- Updated the default radios (SomaFM, di.fm and SKY.fm)
- Managing radios (adding/removing) still buggy.
If you try this out, and you want to report issues, run with "-v
network,playback" for debug info. Bugs/comments etc. can be mailed
to me at myth atsign eskil dot org.
Status: Useable.
|
tree-sorting.patch |
Change MythMusic's tree builder to use QPtrList::sort instead of a
very duplicated copy of bubblesort. See here for profiling and
timing measurements.
Status: In SVN pr. 2005-10-25
|