[Banshee-List] A 10-foot interface for Banshee



I have three machines for media: one plugged into the big television
in my lounge, which we'll call "big", one plugged into the little
television in my bedroom, which we'll call "little", and my laptop on
which I work during the day, which we'll call "laptop". I've been
inventing how, in a perfect world, I'd like this setup to work, and
here I plan to ask a few questions and lay out a few ideas to see if
they make sense before I start hacking.

In this mail, I'm going to talk about controlling Banshee with a remote control.

Big and little are both machines plugged into a television, and I use
them like televisions, by which I mean I don't use a keyboard and
mouse with them. Instead, I have a simple remote control for each,
with 6 buttons (think of them as up, down, left, right, enter, menu).
I'd like a simple (Front-Row, MythTV, htpc-ish) media interface for
those screens. However, I'd like to use Banshee; Banshee knows about
my playlists, it knows about my smart playlists, it knows about
ratings and album art, my media's imported into it, and it's nice. I
don't want to run a separate media player program (Elisa, say),
because I'll need to tell *it* about all the metadata, and I've
already done that for Banshee.

What I imagined is that I'd write a Banshee plugin which ties into
Banshee's fullscreen mode, and does two things.

The first, which is simple, is that the up and down arrows should
increase and decrease the volume when playing in fullscreen. As far as
I can tell, up and down don't currently do anything in fullscreen, so
this wouldn't affect anything.

The second is to implement a fullscreen media browser: something like
Elisa, but which takes advantage of how it's part of Banshee and can
therefore use all the Banshee imported media and the Banshee metadata
for everything (ratings, smart playlists, album art). I think that
pressing, say, "M" in fullscreen mode would start this media browser;
I'd then bind the "menu" button on my remote control to M. Since this
key isn't currently being used, it wouldn't override any existing
keypress in fullscreen mode; in particular, it wouldn't override
Escape to exit fullscreen, which means that anyone who doesn't know
that the media browser is there will never encounter it (meaning that
if it ended up being good enough it could be distributed with Banshee
itself).

The big thing I don't know here is: is it possible to do this sort of
thing from a Banshee plugin? I'm not sure about it.

A second alternative is to have the M keypress launch a separate
program which presents a fullscreen interface, and then when you
choose a video to play, enqueues that video, tells Banshee to play it
fullscreen, and then itself exits. This has a few advantages, like not
needing to all live inside Banshee (and for me means that it can be
written in Python, which I'm better at), but has the disadvantage that
the media browser needs to get at Banshee metadata somehow. It could
do that by reading the database directly or by using the D-Bus API; I
can't quite work out whether the D-Bus API supports everything you'd
need for this (for instance, exporting the location of album art jpgs,
and exporting the content of smart playlists, so I'd appreciate
pointers on this.)

Does what I'm describing sound plausible? I rather like the idea of
having the separate program which works by displaying data retrieved
from the Banshee D-Bus API, if that's possible.

sil


-- 
New Year's Day --
everything is in blossom!
I feel about average.
   -- Kobayashi Issa


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]