[mythtv-users] External Player Demise Clarification (WAS: easiest way to go from storage groups internal player to mplayer)

Chris Pinkham cpinkham at bc2va.org
Wed May 19 12:47:21 UTC 2010


* On Tue May 18, 2010 at 09:00:46PM -0400, Raymond Wagner wrote:
> On 5/18/2010 19:52, Nick Rout wrote:
> >A universal application or api to access storage groups would be good
> >too... Something to access the file over myth protocol and output to
> >stdout. I know this is not the best solution if you want to skip
> >through a file.
> >   
> 
> Such a thing would take all of half a dozen lines using the python bindings.

Yeah, and only barely more in native C++.  I already have a patch that can be
used to copy a file from one myth:// location to another.  I used it when
testing the myth:// write capability.

The biggest issue with this is buffering.  The python/C++ code is going to
download as fast as it can unless you artificially rate limit it at some
arbitrary rate.  This rate could be too fast for SD video and/or too slow
for HD video.  If you don't rate-limit, then the whole file (which could be
10+ GB for a 2 hour HD video) will get downloaded and buffered in the pipe
between your helper app and the video player.  That could easily send the
client machine into a swapping nightmare.

A better solution which would require a bit more code would be to add a HTTP
server to mythbackend which would allow streaming of Storage Group files
via the HTTP protocol.  This might be easily done as part of the mythtv-setup
migration into mythbackend as a webpage.  A lot of external player apps
already support http:// playback, so they'd be supported out of the box.
MythWeb would be able to directly proxy these files to client browsers as
well or give them the direct http:// URI if the client was local.

--
Chris


More information about the mythtv-users mailing list