Hello,
I've created an application that allows me to interact with VideoLan at home (I'm working abroad) and to change the TV channel while streaming.
Situation:
* working abroad, I have access to my home PC that is always on.
* foreign country - I don't speak the language and TV channels are in foreign language.
* home PC has tuner and antenna in it!
I was able to easily setup VideoLan streaming (x264 @ 800, mono @ 96), and gave up on WMP as player and decided to stream using HTTP as VideoLan (the player on the laptop) is able to resume dropped HTTP connections.
The bad thing was that I needed to be connected with VNC, stop Videolan, modify startup script with a new channel that I wanted to watch, restart, disconnect from VNC.
I've written an application that sends the change channel command to the VLC server via VLM (shuts down the stream, issues set option for dshow-tuner-channel, and issues play again). As the connection is over HTTP, VideoLan (the player), is able to resume without the need to press Play in VLC.
Application is easy to modify to support different types of commands (written in Java) works on Ubuntu and Windows 7. Creating a new command is as simple as extending an existing class that handles connecting and authentication, you just need to send text commands and read response.
I've also put in the getCurrentChannel (I've noticed that 'show media' displays a list of dshow-tuner-channel, and the last one in the listing is the current channel - thus application, if the remote server is working, will display the current channel and also select it in the list).
Licence is GPLv2, home page: http://code.google.com/p/remotecadm/ [screenshots, downloads, how to set the themes, how to build it, how to configure - please check wiki there].
I love VLC!