Pilou42 Posted December 22, 2016 Share Posted December 22, 2016 Hello, DVBViewer has support for IPTV. For now, RTSP are handled by LAV splitter. Unfortunately, this splitter is not adapted to streaming, and nevcairiel has no plans on working on it (he said his splitter architecture does not suit streaming content). RTSP streams + Lav filters = need several attemps before having a working connection to the stream. Our providers in France recommends using VLC for this. In fact, VLC uses Live555 library which is better suited for streaming. https://wiki.videolan.org/Live555/ So here is my request: support Live555 splitter. Quote Link to comment
Tjod Posted December 22, 2016 Share Posted December 22, 2016 If there is a Windows DirectSow Filter version of this spliter, you should be able to generate a GraphPresets (configuration folder\GraphPresets\FilterPreset.txt) to use it. Bot there will be a bigger change in the steaming part in the next you can try ist in DVBViewer GE > TS Stream Device. And there at least for RTSP/TS streams (from the RS as source) DVB Source is used as splitter. Quote Link to comment
Pilou42 Posted January 8, 2017 Author Share Posted January 8, 2017 Thanks for the answer. It has been hard for me to find time to do tests. 1) I did not manage to find a working directshow filter with Live555 library. There's a link to a project with a direct show filter, but I don't manage to make it work with Windows (it does not appear in directshow filterlist). If you have a working Windows DS filter with Live555 library, tell me. 2) I've tried DVBViewer GE, but RTSP streams still use LAV Filters, which results in lots of errors. I don't know if there's a way to force DVB source filter, but I suppose if DVB source filter doesn't use Live555 library, it won't work either. So for now, my request is still valid I think (integrate Live555 library for RTSP/TS streaming). Quote Link to comment
Griga Posted January 8, 2017 Share Posted January 8, 2017 I've tried DVBViewer GE, but RTSP streams still use LAV Filters DVBViewer GE is able to handle RTSP without the LAV Splitter, but only if the server is Sat>IP compliant. The URL must conform to the Sat>IP URL syntax and the delivered content must be a transport stream (TS). The way to go is TV/Radio -> Channel List -> right-click (shows context menu) -> Add Root -> TS Stream (creates a TS Stream root folder) Within the new TS stream root select the Video folder. Open the channel properties by clicking the tool button at the bottom left. Enter the RTSP URL in the Address input line of the properties page. Optionally enter a channel name and category name. Click Add. Double-click the new channel entry to start playback. It could be extended to general (non Sat>IP) RTSP handling. With some experimental "proof of concept" code (far from being well elaborated) I already managed to receive an RTSP stream created by the VLC as server However, a transport stream as content would still be mandatory. Otherwise DVBViewer can't handle it natively. Quote Link to comment
Pilou42 Posted January 8, 2017 Author Share Posted January 8, 2017 Thanks for this info. Unfortunately, if I put "TS stream", channel doesn't launch: when I double-click, I have nothing. http://i.imgur.com/093a5Nx.png I manage to have image if I put "stream" instead of "TS stream", but then LAV filters is used (with his flaws). Quote Link to comment
Griga Posted January 8, 2017 Share Posted January 8, 2017 The URL doesn't conform to the Sat>IP syntax - see above. Do you know which media format is inside? Quote Link to comment
Pilou42 Posted January 8, 2017 Author Share Posted January 8, 2017 It's H.264 and AC3. LAV filters handles them without problem. But just to be sure we talk about the same thing: datas don't come from a SAT>IP server. It's not satellite. It's IPTV. My Internet provider send datas to my router box, and my pc uses rtsp streams from my box. It's pretty common in France. Quote Link to comment
Griga Posted January 8, 2017 Share Posted January 8, 2017 It's H.264 and AC3. I did not refer to the video and audio format, but to the container format (if there is any). RTSP is a network protocol. MPEG2 TS is a container format for video and audio (like MKV). As DVB application DVBViewer is able to handle video and audio packaged as transport stream. Other container formats are delegated to third party components like the LAV splitter. As an extension to its DVB capabilities DVBViewer GE is able to handle streaming sources that deliver a transport stream or a pure MP2/MP3/ AAC audio stream (particularly internet radio, also quite close to DVB). Internally it is handled as if originating from DVB hardware. The same applies to the next DVBViewer Pro and DVBViewer Media Server (former Recording Service) release. DVBViewer GE natively supports some network protocols like HTTP, UDP, RTP, RTSP (Sat>IP only up to now) if and only if they carry a DVB-like transport stream or MP2/MP3/AAC audio stream. If something different is inside, it's out of scope for DVBViewer and must be delegated. So if I knew that there are many RTSP streams carrying a MPEG2 transport stream (without being Sat>IP) , I would try to handle it in DVBViewer. I didn't implement it up to now because I don't know what's usually inside RTSP streams that are not Sat>IP. Any other content - sorry, no go here. I would try VLC as client. Quote Link to comment
Pilou42 Posted January 9, 2017 Author Share Posted January 9, 2017 Unfortunately I can't test until next week. I'll try to give more info about the container used. I though RTSP was used as a container specialized for streaming, that's why I though RTSP could be concerned by DVBViewer being "able to handle video and audio packaged as transport stream". I suppose the hardest task would be that you don't have access to these streams, since they are generated from router box to PC. I had hopes I could avoid VLC and the poor quality, especially compared to GPU deinterlacing (+madVR). Next time, I'll try to put screenshot of what LAV Filters detects when he is used as the decoding container. Thanks for your detailed answer. Quote Link to comment
Griga Posted January 9, 2017 Share Posted January 9, 2017 since they are generated from router box to PC What is the original source? Where does the router box get the content from? Quote Link to comment
Pilou42 Posted January 9, 2017 Author Share Posted January 9, 2017 It comes from my Internet provider servers (I suppose at the origine it was a DVB signal captured by a computer) So DVB Signal captured by computers -> Copied on several servers -> Datas sent to subscriber router box if subscriber launches his TV box or uses an application "TV to PC" -> datas send from router box to PC by rtsp streams. I hope it answers the question. Quote Link to comment
DanK Posted January 10, 2017 Share Posted January 10, 2017 What about MPEG4 (H.264)? Quote Link to comment
Griga Posted January 10, 2017 Share Posted January 10, 2017 So DVB Signal captured by computers -> Copied on several servers -> Datas sent to subscriber router box If it comes from a DVB source chances are that the content is a TS. Quote Link to comment
Pilou42 Posted January 22, 2017 Author Share Posted January 22, 2017 I've tried to see what LAV Filters show. I think it's not useful, but I'll copy here: [OUT] Video Filter : LAV Splitter Source - CLSID : {B98D13E7-55DB-4385-A33D-09FD1BA26338} - Connected to: CLSID: {EE30215D-164F-4A92-A4EB-9D4C13390F9F} Filter: LAV Video Decoder Pin: Input - Connection media type: Video: MPEG4 Video (H264) 720x576 (20:11) 25fps AM_MEDIA_TYPE: majortype: MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71} subtype: MEDIASUBTYPE_H264 {34363248-0000-0010-8000-00AA00389B71} formattype: FORMAT_MPEG2_VIDEO {E06D80E3-DB46-11CF-B4D1-00805F6CBBEA} bFixedSizeSamples: 0 bTemporalCompression: 1 lSampleSize: 1 cbFormat: 176 VIDEOINFOHEADER: rcSource: (0,0)-(720,576) rcTarget: (0,0)-(720,576) dwBitRate: 0 dwBitErrorRate: 0 AvgTimePerFrame: 400000 VIDEOINFOHEADER2: dwInterlaceFlags: 0x00000000 dwCopyProtectFlags: 0x00000000 dwPictAspectRatioX: 20 dwPictAspectRatioY: 11 dwControlFlags: 0x00000000 dwReserved2: 0x00000000 MPEG2VIDEOINFO: dwStartTimeCode: 0 cbSequenceHeader: 44 dwProfile: 0x0000004d dwLevel: 0x0000001e dwFlags: 0x00000000 BITMAPINFOHEADER: biSize: 40 biWidth: 720 biHeight: 576 biPlanes: 1 biBitCount: 12 biCompression: H264 biSizeImage: 622080 biXPelsPerMeter: 0 biYPelsPerMeter: 0 biClrUsed: 0 biClrImportant: 0 pbFormat: 0000: 00 00 00 00 00 00 00 00 d0 02 00 00 40 02 00 00 ........Ð...@... 0010: 00 00 00 00 00 00 00 00 d0 02 00 00 40 02 00 00 ........Ð...@... 0020: 00 00 00 00 00 00 00 00 80 1a 06 00 00 00 00 00 ............... 0030: 00 00 00 00 00 00 00 00 14 00 00 00 0b 00 00 00 ................ 0040: 00 00 00 00 00 00 00 00 28 00 00 00 d0 02 00 00 ........(...Ð... 0050: 40 02 00 00 01 00 0c 00 48 32 36 34 00 7e 09 00 @.......H264.~.. 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0070: 00 00 00 00 2c 00 00 00 4d 00 00 00 1e 00 00 00 ....,...M....... 0080: 00 00 00 00|00 00 00 01 09 10 00 00 00 01 27 4d ..............'M 0090: 40 1e 9a 62 81 68 48 b0 44 20 a0 a0 a8 00 00 03 @.bhH°D ¨... 00a0: 00 08 00 00 03 01 94 a0 00 00 00 01 28 ee 3c 80 ...... ....(î< - Enumerated media type 0: Set as the current media type [OUT] Audio Filter : LAV Splitter Source - CLSID : {B98D13E7-55DB-4385-A33D-09FD1BA26338} - Connected to: CLSID: {E8E73B6B-4CB3-44A4-BE99-4F7BCB96E491} Filter: LAV Audio Decoder Pin: Input - Connection media type: Audio: MPEG Audio 48000Hz stereo 192kbps AM_MEDIA_TYPE: majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71} subtype: MEDIASUBTYPE_MPEG2_AUDIO {E06D802B-DB46-11CF-B4D1-00805F6CBBEA} formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A} bFixedSizeSamples: 1 bTemporalCompression: 0 lSampleSize: 256000 cbFormat: 18 WAVEFORMATEX: wFormatTag: 0x0050 nChannels: 2 nSamplesPerSec: 48000 nAvgBytesPerSec: 24000 nBlockAlign: 4 wBitsPerSample: 16 cbSize: 0 (extra bytes) pbFormat: 0000: 50 00 02 00 80 bb 00 00 c0 5d 00 00 04 00 10 00 P...»..À]...... 0010: 00 00 .. - Enumerated media type 0: Set as the current media type - Enumerated media type 1: Audio AM_MEDIA_TYPE: majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71} subtype: Unknown GUID Name {AFBC2343-3DCB-4047-9655-E1E62A61B1C5} formattype: Unknown GUID Name {35189950-CAC9-4C8D-819D-B6FAEE15DD9D} bFixedSizeSamples: 1 bTemporalCompression: 0 lSampleSize: 256000 cbFormat: 24 WAVEFORMATEXFFMPEG: nCodecId: 0x15000 WAVEFORMATEX: wFormatTag: 0x0050 nChannels: 2 nSamplesPerSec: 48000 nAvgBytesPerSec: 24000 nBlockAlign: 4 wBitsPerSample: 16 cbSize: 0 (extra bytes) pbFormat: 0000: 00 50 01 00 50 00 02 00 80 bb 00 00 c0 5d 00 00 .P..P...»..À].. 0010: 04 00 10 00 00 00 00 00 ........ Link used: rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=302&flavour=sd PS: mafreebox.freebox.fr is a local address. For now the only real working solution is to use Live555 libraries (with VLC for example). Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.