Hello,
do you know an solution to make VDR (maybe with the use of the sreamdev-plugin) to stream using multicast?
I have an IPTV Settop Box, which I would like to use for wathing TV, but it only works with IP-Multicast...
Thanks, Artem
On Mon, 20 Oct 2008 20:04:43 +0200, Artem Makhutov wrote
do you know an solution to make VDR (maybe with the use of the sreamdev-plugin) to stream using multicast?
There's no multicast support in streamdev yet (any volunteers?). However I've heard of some guys who got it working by using VLC as mediator. They connected VLC to streamdev-server and then used the VLC streaming wizard to multicast the transmission.
Cheers, Frank
What is exactly involved in changing it from streaming to multi-casting, isn't it just changing the IP destination? Or does it require repacking it from mpeg2-ts to something else? Sorry if this is a stupid question.
Theunis
On 21/10/2008, Frank Schmirler vdr@schmirler.de wrote:
On Tue, 21 Oct 2008 09:13:15 +0200, Theunis Potgieter wrote
We are not limited to TS here - any of the formats streamdev can remux to should do.
I'd say the following things are required: - Use UDP instead of TCP for streaming (is it just switching from SOCK_STREAM to SOCK_DGRAM or do we need to do something more, e.g. fixed/max. packet sizes?) - Provide some way to select the channel for multicast transmission and stop it when it's no longer needed (probably via streamdev http server menu. Or do these kinds of settop boxes support some sort of control protocol to enable/disable the stream?)
Frank
Hi,
On Tue, Oct 21, 2008 at 11:48:45AM +0200, Frank Schmirler wrote:
The ADB-Boxes use Multicast-TS. I have captured a transmission from my IPTV provider. So you can take a look on it:
http://www.makhutov.org/downloads/adb/
The boxes send IGMP Join / Leave Group messages, if you switch or turn on a channel.
Streamdev could listen for such messages an enable/disable the streams.
The IGMP Join Group messages are send in an interval (1 messege/minute). If an IGMP Leave Group message is recieved, or if no Join Message was received during 2 minutes then the stream sould be stopped.
The boxes also support HTML, so then can post data to a webpage, if the channel was switched. I am not sure if all boxes support this. At least the ADB boxes can do this.
The best would be implementing the stream stop/start by using IGMP as this is part of the IP-Multicast standard, so in theory all multicast clients should support it.
Regards, Artem
you can have a look on getstream DVB Streaming http://silicon-verl.de/home/flo/projects/streaming/
On Tue, 21 Oct 2008 14:46:52 +0200, Artem Makhutov wrote
The .pcap file is not accessible. Would it contain the IGMP traffic, too?
Makes sense - that's the way how it's supposed to work when subscribing to an Internet multicast stream, i.e. accross router boundaries. With streamdev, each channel would become a multicast group of its own. Multicast IPs are not an issue here. The IPv4 Local Scope for multicast addresses is large enough. But how do you configure them in the box? Or does it listen to some sort of announcements (getstream2 sends SAP/SDP packets)?
Some sort of user interface would be fine anyway.
Frank
Hi,
On Tue, Oct 21, 2008 at 04:44:20PM +0200, Frank Schmirler wrote:
Ah, sorry, I fixed the permissions. Yes, you can the the IGMP traffic there.
Packet #4 is the IGMG Join Group packet. After this one the stream starts. Packet 1,2 and 3 not relevant, they are used for other multicast stuff.
Packet #23114 is the IGMP Leave, after this packet the ISP stops the multicast transmission.
Yes, sure, this would be great.
Regards, Artem
2008/10/21 Artem Makhutov artem@makhutov.org
So we can safely assume that this is at least IGMPv2 packets. Since IGMPv1 doesn't have a "Leave Group message".
source : http://www.linux.org/docs/ldp/howto/Multicast-HOWTO-7.html
Artem Makhutov wrote:
The xineliboutput plugin connects its remote clients by generic RTSP multicast streaming, and can be used by other stream receivers too. Configured correctly, this would mean that the client takes over the VDR primary device on demand. However I don't think that the OSD will be displayed on generic devices.
If you want an independent stream frontend, you can start an invisible second VDR with streamdev client and remote xineliboutput.
Cheers,
Udo