[mythtv] Architectural suggestions (was: Re: [mythtv-users] Feature
Request)
Joseph A. Caputo
jcaputo1 at comcast.net
Fri Jun 25 09:43:19 EDT 2004
On Friday 25 June 2004 06:41, Stephen Tait wrote:
> >Anyways if any developers are reading - I would really really like
> > the ability in MythMusic to be able to have it support Music Videos
> > as well as mp3s / oggs / etc.
>
> You thieving baskstard! I was just writing a similar thing myself. At
> the moment, all my music vids are mirrored under my movies/TV dir
> (for MythVideo) and under my music directory, so I can play them back
> in MythVideo, btu I agere it'd be wicked if you could just play them
> through music (maybe it just calls on mPlayer/Xine a la MythVideo?
> That wouldn't do very well for transcoded ones recorded from the TV
> though...)
Moving over from the -users list...
Actually, what I'd like to see is for the core Myth module handle almost
all media playback. The embedded ffmpeg/avformat/avcodec code can
already handle most formats & codecs (does it handle Ogg & Vorbis?).
All a plugin should really have to do is send control messages (or make
API calls) to the Myth 'media engine'. This way playback could
continue across all plugins until someone requested a 'stop' or a
playback of a different media source. To do this, Myth would simply
need to expose a media control API. A plugin should be able to start/
stop, seek, control volume & other attributes, and move/resize any
current video stream. This way, every screen would be able to tell the
media engine the location & size of a 'hole' in which to place the
currently playing video (like the EPG does). If a screen for some
reason didn't have a 'hole', then the video frames would simply not be
displayed, but you'd still hear the audio. The API could also provide
a way to 'intercept' the raw decoded audio (or video?) so that a plugin
could provide things like visualizations a la MythMusic.
Any media that can't be handled by the internal engine (like a DVD w/
menus or an unsupported codec) could be handled by an external program,
with the drawback that you wouldn't be able to navigate around Myth
until the external app exits.
I know I've mentioned this or a similar idea before... this is not a
"feature request"; rather, just some ideas to consider if anyone ever
attempts this sort of major architectural change. I wish I had the
time to dedicate to this level of enhancement myself; alas, with my
schedule I'm pretty much limited to simple UI tweaks.
-JAC
More information about the mythtv-dev
mailing list