[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [emms-help] EMMS - mpd, browse and random album play
From: |
Yoni Rabkin Katzenell |
Subject: |
Re: [emms-help] EMMS - mpd, browse and random album play |
Date: |
Fri, 21 Apr 2006 20:19:34 +0300 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
address@hidden (Adam Sjøgren) writes:
> * How do I browse Artists/Albums/Songs?
>
> What would be a good place to start to implement such a browser?
Emms is rather track-centric. But nothing is stopping you from reading
the track information for each track and constructing any additional /
different view of the track information.
> Can I steal something that exists and adapt it?
emms-playlist-mode.el and emms-streams.el both implement a graphical
interface to a list of tracks.
> Perhaps I just need to write some sort of "back end" to an existing
> browsing-system?
I don't understand exactly what a "browsing system" is, but I think that
it would be great if you write an emms-browse-mode.el or something to
"scratch your itch".
> * When I haven't chosen something to play myself, I would like
> "random album play". That is, when the playlist becomes empty, I
> would like EMMS to select an album by random and play it.
>
> Pseudo-something like this:
>
> (defun asjo-play-random-album ()
> "Select a random album and play it"
> (let ((album (select-random-from-list (emms-list-all-albums))))
> (emms-playlist-add-album album)
> (emms-start)))
>
> (add-hook 'emms-when-playlist-runs-empty 'asjo-play-random-album)
>
> Does this sound possible/easy?
Emms does not partition tracks along the "album" axis. As I mentioned
above, it is rather track-centric. But supposing that you implement your
idea for a "browse-mode" which is more album and artist aware you should
not have a problem writing the above as an extention of it.
I personally store different albums in different directories, but that
is an artifical seperation and it would be wrong to assume that every
seperate directory is a different album everywhere. So it seems that
creating "album-objects" is the the Right Thing (TM). Good thing that
Lisp is so malleable!
> My elisp is slowly getting better :-)
Awesome. Good luck, looking forward to trying out neat stuff from you!