[mythtv] improvement to MythMusic RIP location

Ian Campbell ijc at hellion.org.uk
Fri Dec 10 10:00:24 UTC 2004


On Fri, 2004-12-10 at 00:03 +0000, Colin Guthrie wrote:

> Yeah the MythMusic GUI isn't all that fantastic and could definatly improve.
> 
> As Joseph said, Thor has some fairly big changes in a separate audio 
> module for myth. A lot of stuff is still in sync with MythMusic tho', so 
> can still be ported across. I'm fairly sure Thor hasn't done a great 
> deal of work on the GUI yet either, so perhaps it's worth discussing 
> with him if new GUI development could fit in (and to confirm I'm not 
> talking mince!!)?

In that case I'll outline my ideas here and solicit feedback (I assume
Thor reads here).

Basically: I've been very impressed with the principles behind the muine
music player and I think much of them could be transposed into an
interface very suitable for use on a TV set via a remote.

For those who are interested muine's website is
http://muine.gooeylinux.org/index.shtml

The basic interface (I mean the method of interaction, rather than the
UI as such) is rather cut back and concentrates on simple playing of
complete albums and individual tracks. There is a single track queue
with the following options

      * "Play Album" brings up a dialog to select and add a complete
        album to the queue;
      * "Play Song" brings up a dialog to select and add a track to the
        queue;
      * "Clear Queue";
      * "Remove Song" removes the selected Track from the queue;
      * "Remove Played Songs" removes all the tracks that have been
        played from the queue.

That's it, nice and simple.

The interface could also be quite nicely exposed via the mytbweb
interface as well, which I think would be cool...

The current queue can also be saved as a playlist and playlists can be
loaded into the queue.

Support for ratings/shuffling and all that sort of good stuff comes from
a feature to support "playlist filling". muine have a proposal for how
they see it working for them here
http://huizen.dds.nl/~jbaayen/proposal.html, again I think there are
elements of the ideas etc here that could map rather nicely onto a myth
interface.

The basic idea is that you can instruct the player to keep the queue
full by selecting tracks from some predefined list (perhaps selected the
same way you select stuff with the tree view now in current mythmusic,
or just from the complete music collection). The selection from within
the list could be restricted by genre, rating or any other criteria you
fancy and the ordering could be random or intelligent (like the shuffle
options we have today).

That's the basic premise anyway, I'm sure there are tweaks and
extensions that would make it much more usable. I'll have to start
digging into this mfe/mfd thing to see how realistic it is...

An unrelated cool thing about muine is that it looks up album art on
amazon (or something) if there isn't some already present, which is
really handy!

> For what it's worth, I'm working on better Multi artist support for Mix 
> CDs/Soundtracks and Compilations. It's pretty much done, just not found 
> time to test it (although I use it all the time for playback, I've not 
> tested the ripping side very thoroughly yet!).

sounds neat, I currently use a grotty little homemade python script for
my ripping needs but I'd much prefer a nice myth interface.

> > With that was in place I'd then like to be able to filter the list using
> > the numeric keypad on my remote in a way something like the way
> > predictive text entry works on mobile phones.
> 
> I had this exact thought for a media player that I wrote for my living 
> room before I found Myth. Originally I only wrote a music player, but 
> when I did more searching on the web, I found Myth did sooooo much more ;)
> 
> Anyways, I wrote a class/library ages ago that did phone style 
> predictive text stuff with a fixed dictionary (actually my mate wrote it 
> as he was looking for a reason to bursh up his C++ skills and I 
> suggested this). IIRC, the memory usage wasn't great on large 
> dictionaries, but I'm sure I can dust it off and spruce it up and get it 
> into myth. If anyone is interested, should I try and put this in the 
> core libmyth and then use if from the modules? It sounds like the kind 
> of thing that would benefit a few of the modules (not to mention the TV 
> core bit).

I hadn't thought of using a dictionary -- that would allow for general
text entry in lots of different contexts, which I can certainly see
would be dead useful!

What I was thinking was of simply matching the artist + title of each
album in the list against a regex. The regex would start empty (I guess
then you'd either get every album listed). When you press a key a range
of characters is added to the regex. For example pressing 1 would add
"[abc1]", 2 = "[def2]" etc. I guess 0 would match "[^a-z1-9]" to catch
all the other characters, punctuation etc. Pressing 'back' would delete
a range or exit if the regex is empty.

Anyway, you then limit the display to those artists/albums that matched.
The matching part of the string would be hi-lighted (bold for example)
so you can see where you are in the match. 

By sorting the entries alphabetically and being a little clever about
how the interaction with the currently selected item is handled when the
regex changes (i.e. the current item no longer matches) I reckon we
would have a pretty easy to use method for selecting for a very long
list.

Ian.
-- 
Ian Campbell

A can of ASPARAGUS, 73 pigeons, some LIVE ammo, and a FROZEN DAQUIRI!!



More information about the mythtv-dev mailing list