Hi,
I'm developing an experimental directshow streaming source filter for TV Server. It's basically a wrapper for LibVLC and it can use it's powerful capture, muxing and transcoding capabilities to deliver almost any content to MediaPortal TV Server.
This is an early proof-of-concept version that needs debugging and optimization, but I already have some good results with it.
Usage is similar to the original MPTVSource filter. When adding channels, enter any URL supported by VLC, followed by transcoding or muxing options, similar to VLC command line.
When adding channels manually, set Network ID = 0, Transport ID = 0, Service ID = 1, PMT PID = 66.
Some examples:
- "standard" udp/rtp IPTV (similar to the original filter):
rtp://@239.1.1.1:5004
- wmv/asf stream capture with transcoding to MPEG2:
mms://some-server.tv:8000/file.asf :mms-caching=500 :sout=#transcode{vcodec=mp2v,fps=25,vb=5000,scale=1,acodec=mpga,ab=192,channels=2,samplerate=44100}
- streaming a local H.264 or MPEG2 video file:
"C:\My Videos\some_video.mkv" :sout-mux=ts
- streaming a wmv file (transcoding required):
"C:\My Videos\some_video.wmv" :sout=#transcode{vcodec=mp2v,fps=30,vb=5000,scale=1,acodec=mpga,ab=192,channels=2,samplerate=44100}
- usb webcam or another directshow capture device:
dshow:// :dshow-vdev="Integrated Webcam #2" :dshow-adev= :dshow-caching=200 :sout=#transcode{vcodec=mp2v,fps=30,vb=2000,scale=1,acodec=mpga,ab=128,channels=2,samplerate=44100}
- capture MPEG2 TS stream via firewire from Motorola DCT-XXXX/QIP-XXXX digital cable box:
dshow:// :dshow-vdev="Motorola AV/C Tuner Device" :dshow-adev= :dshow-caching=200
- executing external program for channel switching:
dshow:// :dshow-vdev="Motorola AV/C Tuner Device" :dshow-adev= :dshow-caching=200 :exec="C:\Program Files\Timmmoore\MCE 2005 STB Controller\channelw.exe" :exec-opt="-f 2 0620"
Installation:
Option 1:
Replace original MPIPTVSource filter.
- install a recent version of VLC Media Player
- extract 'mpvlcsource_rp.zip' to VLC install directory (\Program Files\VideoLAN\VLC)
- run 'reg.bat', or manually unregister MPIPTVSource.ax, register MPVLCSource.ax and restart TVServer.
Option 2:
Install as a second virtual DVB IP card and keep the original filter. Requires patched SetupTv.exe and TvLibrary.dll (version 1.2.1 only!)
- install a recent version of VLC Media Player
- stop TV Server
- backup SetupTv.exe and TVLibrary.dll files it the TV Server directory (\Program Files\Team MediaPortal\MediaPortal TV Server)
- extract 'tvserver_patch.zip' to TV Server directory, replacing existing files
- extract 'mpvlcsource.zip' to VLC install directory (\Program Files\VideoLAN\VLC)
- run 'reg.bat', or manually register MPVLCSource.ax and restart TVServer.
Update history:
2011-11-25:
- improved stability
- added .ini file
- added :no-remux option (enabled by default)
- two installation options
Source:
Filter: https://github.com/yura80/mpvlcsource
TV Server patch: https://github.com/yura80/MediaPortal-1/commit/c6bec3b787355035b671fa89b3d481725fa7580c
Any feedback is appreciated.
Please don't forget to attach your logs from TVServer log directory (particularly MPVLCSource-*.Log)
I'm developing an experimental directshow streaming source filter for TV Server. It's basically a wrapper for LibVLC and it can use it's powerful capture, muxing and transcoding capabilities to deliver almost any content to MediaPortal TV Server.
This is an early proof-of-concept version that needs debugging and optimization, but I already have some good results with it.
Usage is similar to the original MPTVSource filter. When adding channels, enter any URL supported by VLC, followed by transcoding or muxing options, similar to VLC command line.
When adding channels manually, set Network ID = 0, Transport ID = 0, Service ID = 1, PMT PID = 66.
Some examples:
- "standard" udp/rtp IPTV (similar to the original filter):
rtp://@239.1.1.1:5004
- wmv/asf stream capture with transcoding to MPEG2:
mms://some-server.tv:8000/file.asf :mms-caching=500 :sout=#transcode{vcodec=mp2v,fps=25,vb=5000,scale=1,acodec=mpga,ab=192,channels=2,samplerate=44100}
- streaming a local H.264 or MPEG2 video file:
"C:\My Videos\some_video.mkv" :sout-mux=ts
- streaming a wmv file (transcoding required):
"C:\My Videos\some_video.wmv" :sout=#transcode{vcodec=mp2v,fps=30,vb=5000,scale=1,acodec=mpga,ab=192,channels=2,samplerate=44100}
- usb webcam or another directshow capture device:
dshow:// :dshow-vdev="Integrated Webcam #2" :dshow-adev= :dshow-caching=200 :sout=#transcode{vcodec=mp2v,fps=30,vb=2000,scale=1,acodec=mpga,ab=128,channels=2,samplerate=44100}
- capture MPEG2 TS stream via firewire from Motorola DCT-XXXX/QIP-XXXX digital cable box:
dshow:// :dshow-vdev="Motorola AV/C Tuner Device" :dshow-adev= :dshow-caching=200
- executing external program for channel switching:
dshow:// :dshow-vdev="Motorola AV/C Tuner Device" :dshow-adev= :dshow-caching=200 :exec="C:\Program Files\Timmmoore\MCE 2005 STB Controller\channelw.exe" :exec-opt="-f 2 0620"
Installation:
Option 1:
Replace original MPIPTVSource filter.
- install a recent version of VLC Media Player
- extract 'mpvlcsource_rp.zip' to VLC install directory (\Program Files\VideoLAN\VLC)
- run 'reg.bat', or manually unregister MPIPTVSource.ax, register MPVLCSource.ax and restart TVServer.
Option 2:
Install as a second virtual DVB IP card and keep the original filter. Requires patched SetupTv.exe and TvLibrary.dll (version 1.2.1 only!)
- install a recent version of VLC Media Player
- stop TV Server
- backup SetupTv.exe and TVLibrary.dll files it the TV Server directory (\Program Files\Team MediaPortal\MediaPortal TV Server)
- extract 'tvserver_patch.zip' to TV Server directory, replacing existing files
- extract 'mpvlcsource.zip' to VLC install directory (\Program Files\VideoLAN\VLC)
- run 'reg.bat', or manually register MPVLCSource.ax and restart TVServer.
Update history:
2011-11-25:
- improved stability
- added .ini file
- added :no-remux option (enabled by default)
- two installation options
Source:
Filter: https://github.com/yura80/mpvlcsource
TV Server patch: https://github.com/yura80/MediaPortal-1/commit/c6bec3b787355035b671fa89b3d481725fa7580c
Any feedback is appreciated.
Please don't forget to attach your logs from TVServer log directory (particularly MPVLCSource-*.Log)