• JamesYjr
  • C/C++
  • 731KB
  • zip
  • 0
  • 10 积分
  • 9
  • 2015-06-26 10:35
串流DVB到网络, 并且实现了控制设备的功能, 能够实现媒体服务器功能
MuMuDVB - README ================ Brice Dubost <mumudvb@braice.net> Version 1.7.3 [NOTE] An HTML version of this file is availaible on http://mumudvb.braice.net[MuMuDVB's website]. image::http://mumudvb.braice.net/mumudvb/logo_mumu_wiki.png[caption="logo MuMuDVB"] Presentation ------------ Description ~~~~~~~~~~~ MuMuDVB (Multi Multicast DVB) is originally a modification of dvbstream that http://www.crans.org[cr@ns] made. We have decided to redistribute it. Now, it's a standalone project. MuMuDVB is a program that redistributes streams from DVB (Digital Television) on a network (also called IPTV) using multicasting or HTTP unicast. It can multicast a whole DVB transponder by assigning each channel a different multicast IP. It detects the different services present, rewrite the main DVB tables to show clients only the right stream in each group. Website ~~~~~~~ http://mumudvb.braice.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 - Others, please see git logs .Mailing list: - mailto:mumudvb-dev@REMOVEMElists.crans.org[MuMuDVB dev] - https://lists.crans.org/listinfo/mumudvb-dev[MuMuDVB dev list information and subscription] [NOTE] When contacting about an issue, please join the config file used and 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, see <<autoconfiguration,Autoconfiguration rel='nofollow' onclick='return false;'>> 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>> and <<sdt_rewrite,SDT Rewrite>> sections. - Support for HTTP unicast see <<unicast,http unicast>> section - Support for RTP headers (only for multicast) - CAM menu access while streaming (using a web/AJAX interface - see WEBSERVICES.txt and CAM_menu_interface.png for screenshot) - Software descrambling through oscam dvbapi and libdvbcsa - Support for embedded platforms based on UCLIBC and ANDROID Detailled feature list ~~~~~~~~~~~~~~~~~~~~~~ - Can show reception level when streaming - Show if channels are successfully descrambled by the CAM - Makes a list of streamed and down channels in real time - Can deamonize and write his own process id in a file - Supports standard and universals LNBs - Can stop himself if it receives no data from the card after a defined timeout - Stops trying tuning after a configurable timeout - The mandatory pids are always sent with all channels : * PAT (0): Program Association Table * CAT (1): Conditionnal Access Table * NIT (16): Network Information Table: intended to provide information about the physical network. * SDT (17): Service Description Table: data describing the services in the system e.g. names of services, the service provider, etc. * EIT (18): Event Information Table: data concerning events or programmes such as event name, start time, duration, etc. * TDT (20): Time and Date Table: information related to the present time and date.This information is given in a separate table due to the frequent updating of this information. - Can suscribe to all multicast groups (IGMP membership request) in order to avoid some switches to broadcast all channels see <<problems_hp,problems with HP switches>>. - Supports autoconfiguration, see <<autoconfiguration,Autoconfiguration rel='nofollow' onclick='return false;'>> section * In autoconfiguration mode, MuMuDVB follow the changes in the PIDs and update itself while running. - Debian flavor initialisation scripts - The buffer size can be tuned to reduce CPU usage, see <<reduce_cpu,reduce MuMuDVB CPU usage>> section. - Can avoid the sending of scrambled packets - Automatically detect the scrambling status of a channel - Can reset the CAM module in case of a bad initialisation - Can sort the EIT PID to send only the ones corresponding to the current channel - Data reading can be done using a thread, see <<threaded_read, thread reading>> section. - Playlist generation, see <<playlist, playlist>> - Templates support - Simple webservice exposing detailed streaming status (see WEBSERVICES.txt) 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-coverage build for test coverage (default disabled) --enable-duma Debbuging DUMA library (default disabled) --enable-android Support for Android (default disabled) --------------------------------------------------------------------- [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 follwing the instructions here : http://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps [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 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/debia
    • libdvbpsi_3-0.1.4.tar.gz
      MPEG TS解复用 and DVB PSI tables library解析和发生) 源代码SourceCode 
    • dvb-mpegtools.tar.gz
    • libdvbpsi3-0.1.4.rar
    • libdvbpsi5-0.1.6.rar
      libdvbpsi是一个被设计来进行TS流解复用并能产生dvb PSI表格的简单的库
    • libdvb-
      LIBDVB - DVB library for SI parsing, OSD, tuning,
    • libdvbpsi-0.1.2.tar.gz
      libdvbpsi是一个简单有效的decode和生成MPEG TS和DVB PST 表的开源库。
    • dvblast-1.0.rar
      DVBlast is a simple and powerful streaming application based on the linux-dvb API. It opens a DVB device, tunes it, places PID filters, configures a CAM module, and demultiplexes the packets to ...
    • MediaMVP media server-开源
      Hauppauge MediaMVP的服务器选择,允许查看媒体文件以及与VDR的可选集成。
    • Me TV-开源
      Me TV是GNOME的数字电视(DVB)查看器。 Me TV Project网站:https://launchpad.net/me-tv
    • rtl2832-entropyd:使用rtl2832 USB软件狗为Linux内核生成随机数据-开源
      rtl2832_entropyd是一个旨在将熵输入到Linux... 创建文件/etc/modprobe.d/blacklist-dvb_usb_rtl28xxu.conf,其中包含黑名单行dvb_usb_rtl28xxu。 该项目的网站是手册页的html版本,因此您可以在此处找到更完整的信息。