MediaMVP and VDR


The Hauppauge MediaMVP player is a small thin client designed to enable the display of computer based media files on a standard TV set.

The Projects

The software supplied by Hauppauge only runs on Windows, and only a few specific versions of windows at that. Since I don't have a dedicated windows machine and the supplied server doesn't support streaming media from a DVB card it was time to crack out ethereal and do some experimentation. The servers linked from these pages are the result my investigations.

All servers are thick and run on a host computer, I have some reasons for doing this.

MediaMVP Plugin

The plugin server tightly integrates with VDR by sitting inside the VDR process, unfortunately this does make development a tad tricky since I've only got my main VDR and no development one.

I've not updated this server in quite a while, if you're using it and don't have an adversion to running the streamdev plugin then you might like to try one of the other servers.


MVPServer was born out of desire to make a prettier UI than that provided by the plugin server. After a lot of faffing around, the idea of writing the UI in python was hit upon. Python provides a lot of 3rd party libraries that in theory should cut development time.

It's a fairly fully featured server, but it's not overly portable, I've only managed to run it on Linux. I think there may also be issues running on NTSC systems.

MVPserver is now obsoleted in favour of....


A 3rd server! I was bored one rainy evening and started playing around with a few ideas of separating content from presentation and presentation from fonts and colours, as a result, mvpvdr came to existence.

It's gone back to the idea of using a compiled language and has regained the portability lost by MVPServer, but hopefully not the eye-candy factor.


libmvp is the library driving these projects, implementing the Hauppauge protocols and media retrieval methods.

MediaMVP protocols

The MediaMVP uses an extended version of the RFB (VNC) protocol for display of the menu system and the Picture component of MVP. A proprietry protocol is used for the requesting the media files. Thankfully, no obfuscation is used and the protocol can be revealed using a tool such as ethereal.


If you don't like the idea of a thin client and a thick server, then perhaps VOMP or mvpmc might be more to your liking.



I'm still working on libmvp and mvpvdr from time to time adding new features when I get an itch, even if some of the features are of dubious usefulness at times...
16-Dec-2007 Contact dom /at/ suborbital /dot/ org /dot/ uk