Skip to content

This is a tool for streaming DVB TS packets via udp multicasts on demand from the netceiver.

License

Notifications You must be signed in to change notification settings

vdr-projects/netcv2dvbip

Repository files navigation

netcv2dvbip

This is a tool for streaming DVB TS packets via udp multicasts on demand from the netceiver. It listens for IGMP(v1/v2/v3) join/leave multicast group messages on the network and starts/stops the corresponding streams accordingly. It uses a channels.conf file for channel information. Each channel is mapped to one multicast group starting with 239.255.0.1 and so on.

Written by: Christian Cier-Zniewski [email protected] Project homepage: http://nanodev.nfshost.com/netcv2dvbip/ SVN source code repository: https://svn.baycom.de/repos/vdr-mcli-plugin/mcast/

The software is based on source code from the following projects:

IGMP component of vdr-streamdev-plugin Frank Schmirler [email protected]

VDR Klaus Schmidinger [email protected]

Netceiver mcli-lib Baycom GmbH [email protected]


Quick Compile Howto (Linux):

  1. Compile and install libnetceiver
    https://github.com/vdr-projects/libnetceiver

  2. Checkout netcv2dvbip
    git clone https://github.com/vdr-projects/netcv2dvbip.git

  3. cd netcv2dvbip
    make

  4. ./netcv2dvbip


Notes:

  • Each UDP packet contains 7*188=1316 bytes ( 7 TS packets)
  • channels.conf: only frontend paramters are needed. PIDs are extracted from the PAT/PMT on demand.

Known Issues:

  • Linux: netcv2dvbip make use of the multicast routing API to be able to receive all IGMP (v1,v2) messages on the subnet without joining all groups. If you have configured 200 channels, then at least those 200 groups would have to be joined to receive the group specific queries. IGMPv3 does not suffer this "problem", since all reports are sent to the group 224.0.0.22. So, if you are already using software that make use of this API, netcv2dvbip will fail to start, because only one program can make use of this API.

Possible clients:

  • VLC [Linux, Windows]
  • vdr-iptv-plugin [Linux]
  • DVBLink for IPTV (http://www.dvblogic.com/) [Windows]
  • Mediaportal with IPTV source filter (with EPG) [Windows]
  • [...]

Command line Options:

-b <interface on which to listen for IGMP mesages and to send streams to>
   Default: first found running interface

-p <port to send streams to>
   Default: 12345

-i <interface with netceiver network>
   Default: first found IPv6 interface

-c <channels.conf file>

-e include EIT packets in streams (EPG)

-h help

ChangeLog:

2009-??-?? version 1.0.0
           - initial release

2010-06-03 version 1.1.0
           - bugfixes:     * number of channels > 255 is now handled correctly
                           * PMT PIDs > 255 had a wrong entry in the PAT
           - new features: * DVB-C and DVB-T support
                           * support for VDR-1.7.x channels.conf format
                             (older formats and ReelVDR format are still supported)
                           * playlist file generation (M3U)
                           * EPG support: new command line option "-e" activates
                             sending of EIT packets (PID 0x12) in the stream.
2010-06-17 version 1.1.1   * bugfix: port number was not set correctly in M3U file
                           * bugfix: high CPU load (select() timeout was not
                                     set correctly)
                           * changed: streams now also use non-blocking sockets
                           * Windows only: activate built-in MLDv2 reporter only for
                                           Windows XP

About

This is a tool for streaming DVB TS packets via udp multicasts on demand from the netceiver.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors 4

  •  
  •  
  •  
  •