From 5eb9a7075cab7535d27996a37bf8434f8fe606a2 Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Fri, 17 Jun 2016 16:11:06 +0200 Subject: Update mux.conf from official example Remove announcements, add ids, missing zmq settings, set output to zmq, and update the structure, taking the official doc/example.mux as base --- config/mux.conf | 181 ++++++++++++++------------------------------------------ 1 file changed, 44 insertions(+), 137 deletions(-) (limited to 'config') diff --git a/config/mux.conf b/config/mux.conf index d4c23bb..45896c0 100644 --- a/config/mux.conf +++ b/config/mux.conf @@ -1,14 +1,14 @@ -; This is the official configuration file example that -; serves as documentation for the config file reader. +; This is an example configuration file that illustrates +; the structure of the configuration. +; It doesn't show all possible options. A more detailed example +; is available in doc/advanced.mux +; ; More information about the usage of the tools is available ; in the guide, which can be found on the ; www.opendigitalradio.org website. ; ; As you can see, comments are defined by semicolons. ; -; The format is called INFO format, and defined by boost property_tree: -; http://www.boost.org/doc/libs/1_41_0/doc/html/boost_propertytree/parsers.html#boost_propertytree.parsers.info_parser - ; It consists of six mandatory sections, whose relative order in this ; file are of no importance. @@ -20,14 +20,11 @@ general { ; the number of ETI frames to generate (set to 0 to get an unlimited number) nbframes 0 - ; boolean fileds can accept either false or true as values: + ; boolean fields can accept either false or true as values: - ; Enable logging to syslog + ; Set to true to enable logging to syslog syslog false - ; Write the SCCA field useful for the Factum ETI analyser - writescca false - ; Enable timestamp definition necessary for SFN ; This also enables time encoding using the MNSC. tist false @@ -40,11 +37,6 @@ general { ; If the port is zero, or the line commented, the server ; is not started. managementport 12720 - - ; FIG Carousel - ; Set this to true to use the new FIG carousel implementation, - ; which makes better usage of the FIB space. - new_fig_carousel false } remotecontrol { @@ -68,28 +60,12 @@ ensemble { ; or ;local-time-offset 1 ; in hours, supports half-hour offsets - international-table 1 ; See TS 101 756 clause 5.7 - ; 1 corresponds to the PTy used in RDS - ; 2 corresponds to program types used in north america - ; all labels are maximum 16 characters in length - label "TuxMux" + label "OpenDigitalRadio" ; The short label is built from the label by erasing letters, and cannot ; be longer than 8 characters. If omitted, it will be truncated from the ; label - shortlabel "TxMux" - - ; Announcement settings for FIG0/19 - announcements { - test_announcement { - cluster 1 - flags { - Traffic true - } - - subchannel sub-f3 - } - } + shortlabel "ODR" } ; Definition of DAB services @@ -97,155 +73,90 @@ services { ; Each service has it's own unique identifier, that is ; used throughout the configuration file and for the RC. srv-f3 { + id 0x8daa label "Frequence3" shortlabel "F3" - pty 0 - language 0 - ; also supports id - - ; List of announcement switching flags signalled in FIG 0/18 - ; This lists all possible announcements. If one is left out, it is disabled. - announcements { - Alarm false - Traffic true - Travel false - Warning false - News false - Weather false - Event false - Special false - ProgrammeInfo false - Sports false - Finance false - - ; a comma separated list of clusters in which the service belongs to - clusters "1,2" - } } srv-maxxima { + id 0x8dab label "Maxxima" } srv-fip { + id 0x8dac label "FIP" } srv-bbc1 { + id 0x8dad label "BBC1" } - } -; The subchannels are defined in the corresponding section. -; supported types are : audio, bridge, data, enhancedpacket, -; dabplus, dmb, packet, test subchannels { sub-f3 { type dabplus inputfile "tcp://*:9001" bitrate 96 id 1 + protection 3 + ; ZMQ specific options, mandatory: + + ; Maximum size of input buffer, in AAC frames (24ms) + ; when this buffer size is reached, some frames will be + ; discarded to get the size again below this value. + ; As the present implementation discards entire AAC superframes, + ; (5 frames = 120ms) the effect will clearly be audible. + zmq-buffer 40 - ; type audio subchannels automatically use - ; UEP, unless the bitrate is 8, 16, 24, 40 or 144kbit/s - ; (EN 300 401 Clause 6.2.1) - ; this can be overridden with the option protection-profile - protection-profile EEP_A - ; supported options: UEP (use only for type audio!) - ; EEP_A (for all bitrates) - ; EEP_B (bitrates multiple of 32kbit/s) - - ; Set the protection level, possible values depend - ; on the protection profile: - ; UEP profile: 1 to 5; EEP profiles: 1 to 4 - protection 2 + ; At startup or after an underrun, the buffer is filled to this + ; amount of AAC frames before streaming starts. + zmq-prebuffering 20 } sub-maxxima { type dabplus inputfile "tcp://*:9002" bitrate 96 id 2 - protection-profile EEP_A - protection 2 + protection 3 + + zmq-buffer 40 + zmq-prebuffering 20 } sub-fip { type dabplus inputfile "tcp://*:9003" bitrate 96 id 3 - protection-profile EEP_A protection 3 - ; ZMQ specific options, mandatory: - - ; Maximum size of input buffer, in AAC frames (24ms) - ; when this buffer size is reached, some frames will be - ; discarded to get the size again below this value. - ; As the present implementation discards entire AAC superframes, - ; (5 frames = 120ms) the effect will clearly be audible. zmq-buffer 40 - - ; At startup or after an underrun, the buffer is filled to this - ; amount of AAC frames before streaming starts. zmq-prebuffering 20 } sub-bbc1 { type audio - ; for audio types, you can use the ZeroMQ input (if compiled in) - ; with the following configuration in combination with - ; toolame-dab - ; - ; Support for toolame-dab is not as good as with fdk-aac-dabplus inputfile "tcp://*:9004" bitrate 128 id 4 protection 1 - ; The options are the same as for dabplus zmq-buffer 40 zmq-prebuffering 20 } } -; For now, each component links one service to one subchannel +; In our simple example, each component links one service to one subchannel components { ; the component unique identifiers are used for the RC. comp-f3 { - ; specifies audio -or- packet type, defaults to zero when not given - ; audio: foreground=0, background=1, multi-channel=2 - ; data: unspecified=0, TMC=1, EWS=2, ITTS=3, paging=4, TDC=5, IP=59, MOT=60, proprietary=61 - type 0 - ; According to specification, you should not define component labels if ; the service is only used in one component. The service label is sufficient ; in that case. - ;label "Frequence3" - ;shortlabel "F3" + service srv-f3 subchannel sub-f3 - ; for audio components, the field figtype 0x2 - ; defines the User Application Type according to TS 101 756 Table 16: ; 0x2 : MOT Slideshow - ; 0x3 : MOT Broadcast Web Site - ; 0x4 : TPEG - ; 0x5 : DGPS - ; 0x6 : TMC - ; 0x7 : EPG - ; 0x8 : DAB Java - ; 0x44a : Journaline - ; If not defined, the FIG 0/13 is not transmitted for this component - - ; for packet components, the fields - ; "user application type in FIG 0/13 for packet mode" - ;figtype - ; and the packet address (mandatory) - ;address - ; are supported, with the same syntax as in the manpage. - ; FIG 0/13 is only transmitted when figtype is defined. - ; The -d option on the command line is: - ;datagroup (true|false) - ; and defaults to false. } comp-maxxima { @@ -264,23 +175,17 @@ components { comp-bbc1 { service srv-bbc1 - subchannel sub-bcc1 + subchannel sub-bbc1 figtype 0x2 } } -; A list of outputs, in the format -; unique-id "uri" outputs { - ; The unique-id has no signification. It can be used by the - ; remote control or the statistics server to identify the - ; output + ; The unique-id can be used by the remote control or the statistics server + ; to identify the output - ;supported output types for file and fifo outputs are - ; raw, framed and streamed - ; - ; Please see doc/dab_output_formats.txt + ; Output RAW ETI NI to standard output ;stdout "fifo:///dev/stdout?type=raw" ; ZeroMQ output example @@ -290,11 +195,13 @@ outputs { ; Throttle output to real-time (one ETI frame every 24ms) throttle "simul://" - ; Other outputs: - ; TCP listen on port - ;net "tcp://host:port" - ; UDP send to host:port - ;net "ucp://host:port" - ; RAW (for farsync ETI card) - ;farsync "raw://device" + ; Important! For real-time operation, you need to have exactly one + ; output that applies back-pressure to ODR-DabMux, otherwise it will run + ; at the highest possible rate on your system! + ; + ; For an output to a pipe, the data consumer at the other end of the pipe + ; will dictate the multiplexing rate to ODR-DabMux. + ; + ; If you use the zmq output, you must also enable a simul:// output! } + -- cgit v1.2.3