SkillAgentSearch skills...

MuMuDVB

A DVB IPTV streaming software

Install / Use

/learn @braice/MuMuDVB
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

MuMuDVB - README

Brice Dubost mumudvb@braice.net Version 2.1.0

image::http://mumudvb.net/logo.png[caption="logo MuMuDVB"]

Presentation

Description


MuMuDVB (Multi Multicast DVB) is a program that redistributes streams from DVB or ATSC (Digital Television) on a network (also called IPTV) using
multicasting or HTTP unicast.It supports satellite, terrestrial and cable TV, in clear or scrambled channels and run on PC as well as several embedded platforms.
It is intended to multicast (the stream is sent once and the network equipments split the data for the different clients) a whole DVB transponder (set of channels sent on the same carrier frequency) by assigning
each channel a different multicast group. It detects the different services present as well as their important parameters for streaming, rewrite the main DVB tables to show clients only the right stream in each group. 

History : MuMuDVB is originally a modification of dvbstream that http://www.crans.org[cr@ns] made to stream TV in a few hundred rooms.


Website
~~~~~~~

http://mumudvb.net/[MuMuDVB main site]


Authors and contacts
--------------------

.Upstream author
- mailto:mumudvb@braice.net[Brice Dubost]

.Contributions
- mailto:manu@REMOVEMEcrans.ens-cachan.fr[Manuel Sabban] (getopt)
- mailto:glondu@REMOVEMEcrans.ens-cachan.fr[Stéphane Glondu] (man page, debian package)
- Special thanks to Dave Chapman (dvbstream author and contributor)
- Pierre Gronlier, Sébastien Raillard, Ludovic Boué, Romolo Manfredini, Matthias Šubik, Krzysztof Ostrowski, Frederik Kriewitz
- Others, please see git logs


.Mailing list:
- mailto:mumudvb-dev@REMOVEMElists.crans.org[MuMuDVB mailing list]
- https://lists.crans.org/listinfo/mumudvb-dev[MuMuDVB mailing list information and subscription]

[NOTE]
When contacting about an issue, please join the output of MuMuDVB in verbose mode ("-vvv" on the command line) and any other information that could be useful.


Contents and features
---------------------

Features overview
  • Stream channels from a transponder on different multicast IPs
  • Support for scrambled channels (if you don't have a CAM you can use sasc-ng, but check if it's allowed in you country/by your broadcaster)
  • Support for automatic configuration i.e channels discovery and follow changes, see <<autoconfiguration,Autoconfiguration>> section
  • Generation of SAP announces, see <<sap,SAP>> section
  • Support of DVB-S2, DVB-S, DVB-C, DVB-T and ATSC
  • Possibility to partially rewrite the stream for better compatibility with set-top boxes and some clients. See <<pat_rewrite,PAT Rewrite>>, <<sdt_rewrite,SDT Rewrite>> and <<pmt_rewrite,PMT rewrite>> sections.
  • Support for HTTP unicast see <<unicast,http unicast>> section
  • Support for RTP headers (only for multicast)
  • Support for HLS file output
  • CAM menu access while streaming (using a web/AJAX interface - see WEBSERVICES.asciidoc and CAM_menu_interface.png for screenshot)
  • Software descrambling through oscam dvbapi and libdvbcsa
  • Flexible configuration mechanism using templates
  • Support for embedded platforms based on UCLIBC and ANDROID
  • Support for UDP unicast/multicast input in the absense of a DVB card

Installation

From sources


From a snapshot
^^^^^^^^^^^^^^^

If you downloaded a snapshot, you will have to generate the auto(conf make etc ...) files. In order to do this you will need the autotools, automake, gettext and libtool and, type in the folder of MuMuDVB

----------------
autoreconf -i -f
----------------

Then you have a source which can be installed as a release package.

From a release package
^^^^^^^^^^^^^^^^^^^^^^

[NOTE]
If you want to compile for OpenWRT, please follow http://ocsovszki-dorian.blogspot.co.uk/2014/01/tl-wdr4900-openwrt-dvb-t-with-ite9135.html[OpenWRT tutorial]

In order to install MuMuDVB type:

---------------------------------
$ ./configure [configure options]
$ make
# make install
---------------------------------

The `[configure options]` specific to MuMuDVB are:

---------------------------------------------------------------------
  --enable-cam-support    CAM support (default enabled)
  --enable-scam-support   SCAM support (default enabled) (see note below)
  --enable-arib-support   Build support for ARIB STD-B24 character decoding (specific to ISDB-T in Japan)
  --enable-coverage       build for test coverage (default disabled)
  --enable-duma           Debbuging DUMA library (default disabled)
  --enable-android        Support for Android (default disabled)
  --disable-dvb-support   Build without Linux DVB-API support, even on systems where the headers are present
---------------------------------------------------------------------

[NOTE]
If you want to compile MuMuDVB with clang/llvm, you have to install llvm-gcc and add  `CC=llvm-gcc LD=llvm-ld` or `CC=clang LD=llvm-ld` to your `[configure options]`.

You can have a list of all the configure options by typing

--------------------
$ ./configure --help
--------------------

[NOTE]
The CAM support depends on libdvben50221, libucsi (from linuxtv's dvb-apps). The configure script will detect automatically the presence of these libraries and deactivate the CAM support if one of them is not present.
In the case of fedora, the dvb-apps package does not contains the headers, you have to install it manually following the instructions here : http://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps[LinuxTv DVB-apps page] 

[NOTE]
The SCAM support depends on libdvbcsa from videolan. The configure script will detect automatically the presence of these libraries and deactivate the SCAM support if one of them is not present. It needs also trunk version of oscam to get control words. Oscam configuration is described below in section concerning software descrambling v2 inside mumudvb. 

[NOTE]
The ARIB STD-B24 support depends on libaribb24. The configure script will automatically detect it's presence and enable `--japan` runtime option to enable character set translation.

[NOTE]
The decoding of long channel names for autoconfiguration in ATSC depends on libucsi (from linuxtv's dvb-apps). The configure script will detect automatically the presence of this library and deactivate the long channel name support if it is not present. The full autoconfiguration will still work with ATSC but the channel names will be the short channels names (7 characters maximum)

[NOTE]
If you want to compile the doc i.e. generate HTML files using asciidoc, type `make doc`. The rendering for the tables will work with asciidoc 8.4.4 (can work with lower version but not tested).

In order to install starting scripts (debian flavor) type:

------------------------------------------------------------
# cp scripts/debian/etc/default/mumudvb /etc/default/mumudvb
# cp scripts/debian/etc/init.d/mumudvb /etc/init.d/mumudvb
------------------------------------------------------------

[NOTE]
It is advised to create a system user for MuMuDVB, e.g. : `_mumudvb`, you have to add this user to the video group and make the directory `/var/run/mumudvb` RW by this user. By doing this, you'll be able to get all the features of MuMuDVB.


From Debian package

If you want to install a version which is not in your repositories, you can install it by hand by typing:


dpkg -i mumudvb*.deb


Otherwise you can use aptitude/synaptic as usual

Usage

The documentation for configuration file syntax is in doc/README_CONF.asciidoc.

Usage:


mumudvb [options] -c config_file mumudvb [options] --config config_file

Possible options are:


-d, --debug Don't daemonize and print messages on the standard output.

-s, --signal Print signal strength every 5 seconds

-t, --traffic Print the traffic of the channels every 10 seconds

-l, --list-cards List the DVB cards and exit

--card The DVB card to use (overrided by the configuration file)

--server_id The server id (for autoconfiguration, overrided by the configuration file)

-j, --japan Enable support for decoding ARIB STD-B24 character encoding in SI/EPG (only if built with libaribb24 support)

-h, --help Show help

-v More verbose (add for more)

-q More quiet (add for less)

--dumpfile Debug option : Dump the stream into the specified file

Signal: (see kill(1))

SIGUSR1: switch the signal strength printing
SIGUSR2: switch the traffic printing
SIGHUP: flush the log files

[[autoconfiguration]] Autoconfiguration

MuMuDVB is able to find the channels in the transponder, their PIDs (Program IDentifiers), names, and Logical channel numbers.

Without autoconfiguration, you have to set the transponder parameters, and for each channel, the multicast ip, the name and the PIDs (PMT, audio, video, teletext etc...)

If the channel list or the PIDs are changed, MuMuDVB will automatically update the channels.

In autoconfiguration MuMuDVB will try to detect everything and keep the user set parameters fixed. So you can tune manually only things which are relevant for your usage like the multicast IP. You can also use templates to generate multicast IP or other parameters.

We will review autoconfiguration starting without personalization then the cases when you want to change specific parameters for a (several) channel(s).

Pure autoconfiguration


This is the easiest way to use MuMuDVB.

Use this when you want to stream a full transponder or a subset of a transponder (using autoconf_sid_list).

[NOTE]
You don't have to specify any channel in autoconfiguration except if you need to s
View on GitHub
GitHub Stars233
CategoryDevelopment
Updated21d ago
Forks135

Languages

C

Security Score

95/100

Audited on Mar 16, 2026

No findings