Website Title: Bluevirus

my blog

Videostreaming for Windows Mobile

Please note that this guide is optimized to produce a stream for a decive with a HVGA display (480x320). You may have to change some values according to your needs.



Broadcast a video stream

Using VLC: Streaming a DVD

Using VLC might be a very simple solution and it's plattform independet. One big advantage is the possibility to change position in movie and changing audio or subtitles while streaming (in some cases).

If you know the chapter number and the language index you can use command line directly. Read here to find the correct chapter
In this single-line-example I select chapter 2 and the first language (number 0):

vlc -vvv --color dvdsimple:///dev/sr0@2 --ttl 1 --sout '#transcode{vcodec=h264,vb=200,fps=12,scale=1,width=480, acodec=mp3,ab=128,channels=2,samplerate=44100} :std{access=http,mux=asf,dst=}' --audio-track 0 --start-time 3400

With the command above the source is re-encoded to a asf-Stream containing ...

  • a Stereo-MP3 stream at 128 kb/s and
  • a H264-stream at 200 kb/s with 24 FPS (not 12: don't know why but in the end the rate will be doubled).
    Width will be 480 while the height is automaticaly selected.

Note: If the server is not in the same network as the phone you may have to increase the TTL value.

All this can be done with the GUI as well when

  1. selecting 'Media'->'Streaming...' OR CTRL+S
  2. choose 'Volume' tab
  3. Only if you know the right chapter: set it and disable the DVD-menu
  4. Only if you know it: Select the right audio stream
  5. Confirm selection with 'Stream' button
  6. On next dialog click 'next' once
  7. Above: Add 'HTTP' stream
  8. Bellow: You have to add a new profile once:
  9. Give it a name
  10. Container: select ASF
  11. Videocodec: Use video, Codec = H-264, Bitrate = 200kb/s, Framerate = 12fps, Resolution=480x320
  12. Audiocodec: Use audio, Codec = MP3, Bitrate = 128kb/s, Channels = 2 (if not using earphones: bitrate = 64kb/s, Channels = 1)
  13. Save it
  14. Bellow: Select the correct profile
  15. Click on 'Stream' to stream it

Find the correct chapter

Very often it's easy to find out the correct chapter number. Simply check the DVD's VIDEO_TS directory for tha largest filests of VTS__.VOB. In the following example the correct chapter containing the movie would be number 1.

ls -G1hs|grep VTS_|grep .VOB
16M VTS_01_0.VOB
1.0G VTS_01_1.VOB
1.0G VTS_01_2.VOB
666M VTS_01_3.VOB
1.0G VTS_01_4.VOB
1.0G VTS_01_5.VOB
467M VTS_01_6.VOB
10K VTS_02_0.VOB
10K VTS_02_1.VOB
10K VTS_03_0.VOB
7.2M VTS_03_1.VOB

Other stream-servers

Especially on a windows machines I'd recommend to use the freely available Windows Media Encoder.
On other plattforms ffmpeg toghetor with ffserver is worth a check but far more complicated to set up.

Receive video stream

With the example above the video stream would be accessible using the address http://<Server-IP-or-Address>:8080.
To display a video streamed by VLC I'd recommend using TCPMP. Unfortunately you can't just simply open up this address within the player. Instead you have to create a *.m3u file (i.E.: myVideo.m3u) on your device containing:


Now that file can be opened with TCPMP.

For Streams produced with Windows Media Encoder you can simply use the build in Media Player. Just select 'Open URL' in the menu.

Good job mkanig it appear easy.
Wheoevr wrote this, you know how to make a good article.
It's spooky how cevelr some ppl are. Thanks!