From 11c606c43b46cd86616da2f889d7f97c8eb297eb Mon Sep 17 00:00:00 2001 From: Robin ALEXANDER Date: Thu, 3 Mar 2022 19:15:55 +0100 Subject: New version --- config/encodermanager.json | 165 ++++++++++++++++++++++ config/mod.ini | 244 --------------------------------- config/mot/P01/INFO.dls | 0 config/mot/P01/INFO.txt | 1 + config/mot/P01/slide/P01-logo.jpg | Bin 0 -> 11813 bytes config/mot/P02/INFO.dls | 0 config/mot/P02/INFO.txt | 2 + config/mot/P02/slide/P02-logo.jpg | Bin 0 -> 18392 bytes config/mot/bbc1.txt | 0 config/mot/f3.txt | 0 config/mot/fip.txt | 0 config/mot/maxxima.txt | 0 config/mux.conf | 207 ---------------------------- config/odr-dabmod.ini | 41 ++++++ config/odr-dabmux.info | 99 +++++++++++++ config/supervisor/ODR-encoders.conf | 79 +++++++++++ config/supervisor/ODR-misc.conf | 38 +++++ config/supervisor/encoder-bbc1.conf | 20 --- config/supervisor/encoder-f3.conf | 15 -- config/supervisor/encoder-fip.conf | 15 -- config/supervisor/encoder-maxxima.conf | 15 -- config/supervisor/mod.conf | 7 - config/supervisor/mux.conf | 7 - 23 files changed, 425 insertions(+), 530 deletions(-) create mode 100644 config/encodermanager.json delete mode 100644 config/mod.ini create mode 100755 config/mot/P01/INFO.dls create mode 100755 config/mot/P01/INFO.txt create mode 100644 config/mot/P01/slide/P01-logo.jpg create mode 100755 config/mot/P02/INFO.dls create mode 100755 config/mot/P02/INFO.txt create mode 100644 config/mot/P02/slide/P02-logo.jpg delete mode 100644 config/mot/bbc1.txt delete mode 100644 config/mot/f3.txt delete mode 100644 config/mot/fip.txt delete mode 100644 config/mot/maxxima.txt delete mode 100644 config/mux.conf create mode 100644 config/odr-dabmod.ini create mode 100644 config/odr-dabmux.info create mode 100644 config/supervisor/ODR-encoders.conf create mode 100644 config/supervisor/ODR-misc.conf delete mode 100644 config/supervisor/encoder-bbc1.conf delete mode 100644 config/supervisor/encoder-f3.conf delete mode 100644 config/supervisor/encoder-fip.conf delete mode 100644 config/supervisor/encoder-maxxima.conf delete mode 100644 config/supervisor/mod.conf delete mode 100644 config/supervisor/mux.conf (limited to 'config') diff --git a/config/encodermanager.json b/config/encodermanager.json new file mode 100644 index 0000000..6c8a04f --- /dev/null +++ b/config/encodermanager.json @@ -0,0 +1,165 @@ +{ + "global": { + "daemon": false, + "max_encoder_instance": 3, + "logs_directory": "/home/pi/ODR-mmbTools/ODR-EncoderManager/logs/", + "supervisor_xmlrpc": "http://odr:odr@127.0.0.1:8001/RPC2", + "static_directory": "/home/pi/ODR-mmbTools/ODR-EncoderManager/static/", + "host": "0.0.0.0", + "supervisor_file": "/home/pi/config/supervisor/ODR-encoders.conf", + "port": 8003 + }, + "auth": { + "users": [ + { + "username": "odr", + "password": "odr" + } + ] + }, + "odr": [ + { + "uniq_id": "defee58a-f768-4ca9-a0f7-88f08b2e8748", + "autostart": "false", + "path": { + "encoder_path": "/usr/local/bin/odr-audioenc", + "padenc_path": "/usr/local/bin/odr-padenc", + "sourcecompanion_path": "/usr/local/bin/odr-sourcecompanion", + "zmq_key_tmp_file": "/var/tmp/zmq-P01.key" + }, + "source": { + "type": "stream", + "stats_socket": "/var/tmp/P01.stats", + "stream_url": "http://radiomonaco.ice.infomaniak.ch/radiomonaco-128.mp3", + "stream_writeicytext": "true", + "stream_lib": "vlc", + "alsa_device": "plughw:1,0", + "driftcomp": "true", + "silence_detect": "true", + "silence_duration": "60", + "avt_input_uri": "udp://:32010", + "avt_control_uri": "udp://192.168.128.111:9325", + "avt_pad_port": "9405", + "avt_jitter_size": "80", + "avt_timeout": "4000", + "aes67_sdp_file": "/var/tmp/defee58a-f768-4ca9-a0f7-88f08b2e8748.sdp", + "aes67_sdp": "" + }, + "output": { + "type": "dabp", + "output": [ + { + "name": "", + "type": "editcp", + "host": "127.0.0.1", + "port": "9001", + "enable": "true" + } + ], + "zmq_key": "", + "bitrate": "128", + "samplerate": "48000", + "channels": "2", + "dabp_sbr": "true", + "dabp_ps": "false", + "dabp_afterburner": "true", + "dab_dabmode": "j", + "dab_dabpsy": "1", + "edi_identifier": "", + "edi_timestamps_delay": "" + }, + "padenc": { + "enable": "true", + "pad": "34", + "dls_file": "/home/pi/config/mot/P01/INFO.dls", + "slide_directory": "/home/pi/config/mot/P01/slide/", + "slide_sleeping": "0", + "slide_once": "false", + "raw_dls": "false", + "raw_slides": "false", + "uniform_label": "12", + "uniform_label_ins": "1200", + "slide_carousel_interval": "", + "slide_live_interval": "", + "slide_live_lifetime": "" + }, + "name": "P01", + "description": "Radio Monaco", + "supervisor_additional_options": { + "user": "pi", + "group": "pi", + "autorestart": "false" + } + }, + { + "uniq_id": "7158c498-1ef1-4580-b385-23a3c06ba985", + "autostart": "false", + "path": { + "encoder_path": "/usr/local/bin/odr-audioenc", + "padenc_path": "/usr/local/bin/odr-padenc", + "sourcecompanion_path": "/usr/local/bin/odr-sourcecompanion", + "zmq_key_tmp_file": "/var/tmp/zmq-P02.key" + }, + "source": { + "type": "stream", + "stats_socket": "/var/tmp/P02.stats", + "stream_url": "http://media-ice.musicradio.com/CapitalMP3", + "stream_writeicytext": "true", + "stream_lib": "vlc", + "alsa_device": "plughw:1,0", + "driftcomp": "true", + "silence_detect": "true", + "silence_duration": "60", + "avt_input_uri": "udp://:32010", + "avt_control_uri": "udp://192.168.128.111:9325", + "avt_pad_port": "9405", + "avt_jitter_size": "80", + "avt_timeout": "4000", + "aes67_sdp_file": "/var/tmp/7158c498-1ef1-4580-b385-23a3c06ba985.sdp", + "aes67_sdp": "" + }, + "output": { + "type": "dabp", + "output": [ + { + "name": "", + "type": "editcp", + "host": "127.0.0.1", + "port": "9002", + "enable": "true" + } + ], + "zmq_key": "", + "bitrate": "128", + "samplerate": "48000", + "channels": "2", + "dabp_sbr": "true", + "dabp_ps": "false", + "dabp_afterburner": "true", + "dab_dabmode": "j", + "dab_dabpsy": "1", + "edi_identifier": "", + "edi_timestamps_delay": "" + }, + "padenc": { + "enable": "true", + "pad": "34", + "dls_file": "/home/pi/config/mot/P02/INFO.dls", + "slide_directory": "/home/pi/config/mot/P02/slide", + "slide_sleeping": "0", + "slide_once": "false", + "raw_dls": "false", + "raw_slides": "false", + "uniform_label": "12", + "uniform_label_ins": "1200" + }, + "name": "P02", + "description": "Capital FM London", + "supervisor_additional_options": { + "user": "pi", + "group": "pi", + "autorestart": "false" + } + } + ] +} \ No newline at end of file diff --git a/config/mod.ini b/config/mod.ini deleted file mode 100644 index 9c5cf07..0000000 --- a/config/mod.ini +++ /dev/null @@ -1,244 +0,0 @@ -; Sample configuration file for ODR-DabMod - -[remotecontrol] -; enable the telnet remote control on localhost:2121 -; Since this is totally unsecure telnet, the software -; will only listen on the local loopback interface. -; To get secure remote access, use SSH port forwarding -telnet=1 -telnetport=2121 - -; Enable zmq remote control. -; The zmq remote control is intended for machine-to-machine -; integration and requires that ODR-DabMod is built with zmq support. -; The zmq remote control may run in parallel with Telnet. -; -; Protocol: -; ODR-DabMod binds a zmq rep socket so clients must connect -; using either req or dealer socket. -; [] denotes message part as zmq multi-part message are used for delimitation. -; All message parts are utf-8 encoded strings and match the Telnet command set. -; Explicit codes are denoted with "". -; The following commands are supported: -; REQ: ["ping"] -; REP: ["ok"] -; -; REQ: ["get"][module name][parameter] -; REP: [value] _OR_ ["fail"][error description] -; -; REQ: ["set"][module name][parameter][value] -; REP: ["ok"] _OR_ ["fail"][error description] -zmqctrl=0 -zmqctrlendpoint=tcp://127.0.0.1:9400 - -[log] -; Write to a logfile or to syslog. -; Setting filename to stderr is very useful during tests and development -syslog=0 -filelog=1 -filename=/dev/stderr - -[input] -; A file or fifo input is using transport=file -;transport=file -;source=/dev/stdin - -; When the end of file is reached, it is possible to rewind it -;loop=0 - -; When recieving data using ZeroMQ, the source is the URI to be used -transport=zeromq -source=tcp://localhost:9050 -; The option max_frames_queued defines the maximum number of ETI frames -; that can be in the input queue -max_frames_queued=100 - -[modulator] -; Gain mode: 0=FIX, 1=MAX, 2=VAR -; -; Mode 0 (FIX) uses a fixed factor and is really not recommended. It is more -; useful on an academic perspective for people trying to understand the DAB -; modulation. -; -; Mode 1 (MAX) is the normalization of every OFDM symbol. No overshoot, no -; truncating, but varying output power (around 3dB) which might not be the best -; for some power amplifier. The output samples are limited to a magnitude -; of 32768. -; -; Mode 2 (VAR) uses the method specified in ETSI 300 798. This method -; normalizes to 4 times the standard deviation for an approximation of the RMS -; power. So around 6/100000 samples will be truncated and will introduce some -; really minor distortion. But this mode also maximizes the output power. This -; is the gain mode recommended for real world operation as it is based on a DAB -; standard; the only difference is that ODR-DabMod uses a better resolution -; with 16 bits instead of 8 bits. -gainmode=2 - -; Transmission mode -; If not defined, take the mode from ETI -mode=1 - -; The digital gain is a value that is multiplied to each sample. It is used -; to tune the chain to make sure that no non-linearities appear up to the -; USRP daughterboard programmable gain amplifier (PGA). -; If there is clipping, the spectral quality of the signal will quickly deteriorate, -; and wide-band noise will be generated. -; -; Be aware that there is a dependency with resampling. -digital_gain=0.8 - -; Output sample rate. Values other than 2048000 enable -; resampling. -; Warning! digital_gain settings are different if resampling -; is enabled or not ! -rate=2048000 - -; CIC equaliser for USRP1 and USRP2 -; Set to 0 to disable CicEqualiser -; when set to 400000000, an additional USRP2 check is enabled. -; See DabModulator.cpp line 186 -dac_clk_rate=0 - -; The USRP1 does not have flexible clocking, you will need -;rate=3200000 -; and -;dac_clk_rate=128000000 - -[firfilter] -; The FIR Filter can be used to create a better spectral quality. -; The filter taps can be calculated with the python script -; doc/fir-filter/generate-filter.py -enabled=0 -filtertapsfile=simple_taps.txt - -[output] -; choose output: possible values: uhd, file, zmq -output=uhd - -[fileoutput] -; Two output formats are supported: In the default mode, -; the file output writes I/Q float values (i.e. complex float) -; to the file. The I and Q samples can take values up to -; 100000 in absolute magnitude with gainmode FIX. -; With gainmode VAR, they should never exceed 50000. -; With gainmode MAX, thet are limited to 32767. -;format=complexf -; -; When the format is set to s8, the output writes I/Q 8-bit -; signed integers, where the magnitude is multiplied by 128/50000 -; effectively mapping the gainmode VAR range of -50000 -- 50000 -; to -128 -- 128. For other gainmodes, use the digital_gain setting -; to make sure you don't create clipping. -;format=s8 - -; The output file: -;filename=/dev/stdout - -[uhdoutput] -; The UHD output can be directly used with the Ettus USRP devices -; -; You have to set master_clock_rate to a multiple of the -; sample_rate. Ideally, it should be -; master_clock_rate = 4 * sample_rate -; or even a higher factor. -; -; Settings for a USRP B100: -;device= -; you can put additional UHD device settings here -;master_clock_rate=32768000 -;type=b100 -;txgain=2.0 -; Try first with small gain values -; Also set rate to 2048000 - -; For the B200 -; More information and measurements available on: -; http://wiki.opendigitalradio.org/index.php/USRP_B200_Measurements -; -; Settings: -device= -master_clock_rate=32768000 -type=b200 -txgain=40 -; The B200 needs larger gains (up to 89dB) but, -; "Gain settings are application specific, but it is recommended that users -; consider using at least half of the available gain to get reasonable dynamic -; range." -; From the B200 User Manual -; http://files.ettus.com/uhd_docs/manual/html/usrp_b200.html - - -; For the USRP1 -;device= -;type=usrp1 -; the usrp1 can have two daughterboards, the subdevice parameter allows you -; to choose which one to use -;subdevice=A:0 -; The USRP1 doesn't support master_clock_rate, you need to enable resamping - - -; You must specify either frequency or channel, but not both. -;frequency=234208000 -channel=13C - -; The reference clock to use. The gpsdo is the ODR LEA-M8F board, the -; official Ettus GPSDO is selected with gpsdo-ettus -; possible values : internal, external, MIMO, gpsdo, gpsdo-ettus -refclk_source=internal - -; The reference one pulse-per second to use -; possible values : none, external, MIMO, gpsdo -pps_source=none - -; Behaviour when external clock reference lock lost -; possible values: ignore, crash -behaviour_refclk_lock_lost=ignore - -; The maximum accepted holdover time for the gpsdo. -; Valid only if the refclk and pps_source are set to gpsdo. -; This value is also used for the initial lock check, and must -; be at least a minute so that the GPSOD has enough time to lock -; and to start disciplining its oscillator. -; Units: seconds -; Set to 0 to disable holdover check -; default value: 0 -max_gps_holdover_time=600 - -; section defining ZeroMQ output properties -[zmqoutput] - -; on which port to listen for connections -; please see the Transports section in man zmq -; for more informat io the syntax -listen=tcp://*:54001 - -; what ZMQ socket type to use. Valid values: PUB, REP -; Please see man zmq_socket for documentation -socket_type=pub - -; Used for SFN with the UHD output -[delaymanagement] - -; Enable handling of timestamps for SFN -synchronous=0 - -; Whether to mute the TX when incoming frames have no timestamp -mutenotimestamps=0 - -; This offset is added to the TIST, and the sum defines the -; TX time of the transmission frame. It can by changed at runtime -; through the remote control. -offset=0.002 - -; The previous static vs dynamic offset distinction, and reading the -; modulatoroffset from a file has been removed. - -[tii] -; (experimental) -; If these options are set, TII transmission is enabled. -; DAB modes I and II are supported, and must be set explicitly in -; this file. Reading DAB mode from ETI is not supported. -enable=0 -comb=16 -pattern=3 - diff --git a/config/mot/P01/INFO.dls b/config/mot/P01/INFO.dls new file mode 100755 index 0000000..e69de29 diff --git a/config/mot/P01/INFO.txt b/config/mot/P01/INFO.txt new file mode 100755 index 0000000..c76ade3 --- /dev/null +++ b/config/mot/P01/INFO.txt @@ -0,0 +1 @@ +RADIO MONACO - MADE IN MONTECARLO diff --git a/config/mot/P01/slide/P01-logo.jpg b/config/mot/P01/slide/P01-logo.jpg new file mode 100644 index 0000000..50bb69f Binary files /dev/null and b/config/mot/P01/slide/P01-logo.jpg differ diff --git a/config/mot/P02/INFO.dls b/config/mot/P02/INFO.dls new file mode 100755 index 0000000..e69de29 diff --git a/config/mot/P02/INFO.txt b/config/mot/P02/INFO.txt new file mode 100755 index 0000000..a00aa4b --- /dev/null +++ b/config/mot/P02/INFO.txt @@ -0,0 +1,2 @@ +LONDON'S NO.1 HIT MUSIC STATION + diff --git a/config/mot/P02/slide/P02-logo.jpg b/config/mot/P02/slide/P02-logo.jpg new file mode 100644 index 0000000..cb40994 Binary files /dev/null and b/config/mot/P02/slide/P02-logo.jpg differ diff --git a/config/mot/bbc1.txt b/config/mot/bbc1.txt deleted file mode 100644 index e69de29..0000000 diff --git a/config/mot/f3.txt b/config/mot/f3.txt deleted file mode 100644 index e69de29..0000000 diff --git a/config/mot/fip.txt b/config/mot/fip.txt deleted file mode 100644 index e69de29..0000000 diff --git a/config/mot/maxxima.txt b/config/mot/maxxima.txt deleted file mode 100644 index e69de29..0000000 diff --git a/config/mux.conf b/config/mux.conf deleted file mode 100644 index 45896c0..0000000 --- a/config/mux.conf +++ /dev/null @@ -1,207 +0,0 @@ -; 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. -; -; It consists of six mandatory sections, whose relative order in this -; file are of no importance. - -; The general section defines global multiplex parameters. -general { - ; the DAB Transmission mode (values 1-4 accepted) - dabmode 1 - - ; the number of ETI frames to generate (set to 0 to get an unlimited number) - nbframes 0 - - ; boolean fields can accept either false or true as values: - - ; Set to true to enable logging to syslog - syslog false - - ; Enable timestamp definition necessary for SFN - ; This also enables time encoding using the MNSC. - tist false - - ; The management server is a simple TCP server that can present - ; statistics data (buffers, overruns, underruns, etc) - ; which can then be graphed a tool like Munin - ; The doc/stats_dabmux_multi.py tool is a suitable - ; plugin for that. - ; If the port is zero, or the line commented, the server - ; is not started. - managementport 12720 -} - -remotecontrol { - ; enable the telnet remote control server on the given port - ; This server allows you to read and define parameters that - ; some features export. It is only accessible from localhost. - ; Set the port to 0 to disable the server - telnetport 12721 - - ; the remote control server makes use of the unique identifiers - ; for the subchannels, services and components. Make sure you - ; chose them so that you can identify them. -} - -; Some ensemble parameters -ensemble { - id 0x4fff ; you can also use decimal if you want - ecc 0xec ; Extended Country Code - - local-time-offset auto ; autmatically calculate from system local time - ; or - ;local-time-offset 1 ; in hours, supports half-hour offsets - - ; all labels are maximum 16 characters in length - 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 "ODR" -} - -; Definition of DAB services -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" - } - srv-maxxima { - id 0x8dab - label "Maxxima" - } - srv-fip { - id 0x8dac - label "FIP" - } - srv-bbc1 { - id 0x8dad - label "BBC1" - } -} - -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 - - ; 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 3 - - zmq-buffer 40 - zmq-prebuffering 20 - } - sub-fip { - type dabplus - inputfile "tcp://*:9003" - bitrate 96 - id 3 - protection 3 - - zmq-buffer 40 - zmq-prebuffering 20 - } - - sub-bbc1 { - type audio - inputfile "tcp://*:9004" - bitrate 128 - id 4 - protection 1 - - zmq-buffer 40 - zmq-prebuffering 20 - } -} - -; In our simple example, each component links one service to one subchannel -components { - ; the component unique identifiers are used for the RC. - comp-f3 { - ; 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. - - service srv-f3 - subchannel sub-f3 - - figtype 0x2 - ; 0x2 : MOT Slideshow - } - - comp-maxxima { - service srv-maxxima - subchannel sub-maxxima - - figtype 0x2 - } - - comp-fip { - service srv-fip - subchannel sub-fip - - figtype 0x2 - } - - comp-bbc1 { - service srv-bbc1 - subchannel sub-bbc1 - - figtype 0x2 - } -} - -outputs { - ; The unique-id can be used by the remote control or the statistics server - ; to identify the output - - ; Output RAW ETI NI to standard output - ;stdout "fifo:///dev/stdout?type=raw" - - ; ZeroMQ output example - ; Listen on all interfaces, on port 9050 - zmq "zmq+tcp://*:9050" - - ; Throttle output to real-time (one ETI frame every 24ms) - throttle "simul://" - - ; 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! -} - diff --git a/config/odr-dabmod.ini b/config/odr-dabmod.ini new file mode 100644 index 0000000..cd9bd5e --- /dev/null +++ b/config/odr-dabmod.ini @@ -0,0 +1,41 @@ +[remotecontrol] +telnet=0 +telnetport=2121 +zmqctrl=0 +zmqctrlendpoint=tcp://127.0.0.1:9400 + +[log] +syslog=0 +filelog=0 +filename=odr-dabmod.log + +[input] +transport=edi +source=tcp://127.0.0.1:9201 + +[modulator] +gainmode=var +digital_gain=0.8 +rate=4096000 + +[cfr] +enable=0 +clip=50.0 +error_clip=0.1 + +[firfilter] +enabled=1 + +[poly] +enabled=0 +polycoeffile=polyCoefs + +[output] +output=soapysdr + +[soapyoutput] +device=driver=hackrf +master_clock_rate=32768000 +txgain=23 +channel=5A +bandwidth=1750000 diff --git a/config/odr-dabmux.info b/config/odr-dabmux.info new file mode 100644 index 0000000..91eb04f --- /dev/null +++ b/config/odr-dabmux.info @@ -0,0 +1,99 @@ +general { + dabmode 1 + nbframes 0 + syslog false + tist false + managementport 12720 +} + +remotecontrol { + telnetport 12721 + zmqendpoint tcp://lo:12722 +} + +ensemble { + id 0x4fff + ecc 0xe1 + local-time-offset auto + international-table 1 + reconfig-counter hash + label "Micro DAB" + shortlabel "M DAB" +} + +services { + srv-01 { + id 0xb1c7 + ecc 0xe2 + label "RADIO MONACO" + shortlabel "MONACO" + pty 10 + pty-sd static + language 0x0f + } + srv-02 { + id 0xc479 + ecc 0xe1 + label "CAPITAL LONDON" + shortlabel "CAPITAL" + pty 10 + pty-sd static + language 0x09 + } +} + +subchannels { + sub-01 { + type dabplus + bitrate 128 + id 1 + protection 3 + inputproto edi + inputuri "tcp://127.0.0.1:9001" + buffer-management prebuffering + buffer 40 + prebuffering 20 + } + sub-02 { + type dabplus + bitrate 128 + id 2 + protection 3 + inputproto edi + inputuri "tcp://127.0.0.1:9002" + buffer-management prebuffering + buffer 40 + prebuffering 20 + } +} + +components { + comp-01 { + service srv-01 + subchannel sub-01 + user-applications { + userapp "slideshow" + } + } + comp-02 { + service srv-02 + subchannel sub-02 + user-applications { + userapp "slideshow" + } + } +} + +outputs { + edi { + destinations { + edi_tcp { + protocol tcp + listenport 9201 + } + } + } + + ; Throttle output to real-time (one ETI frame every 24ms) + throttle "simul://" +} diff --git a/config/supervisor/ODR-encoders.conf b/config/supervisor/ODR-encoders.conf new file mode 100644 index 0000000..362a41b --- /dev/null +++ b/config/supervisor/ODR-encoders.conf @@ -0,0 +1,79 @@ +# P01 +[program:odr-padencoder-defee58a-f768-4ca9-a0f7-88f08b2e8748] +command=/usr/local/bin/odr-padenc + --dir=/home/pi/config/mot/P01/slide + --sleep=0 + --dls=/home/pi/config/mot/P01/INFO.dls + --output=defee58a-f768-4ca9-a0f7-88f08b2e8748 + --label=12 + --label-ins=1200 +autostart=false +autorestart=false +priority=10 +user=pi +group=pi +redirect_stderr=true +stdout_logfile=/var/log/supervisor/odr-padencoder-defee58a-f768-4ca9-a0f7-88f08b2e8748.log + +# P01 +[program:odr-audioencoder-defee58a-f768-4ca9-a0f7-88f08b2e8748] +command=/usr/local/bin/odr-audioenc + --vlc-uri=http://radiomonaco.ice.infomaniak.ch/radiomonaco-128.mp3 + --drift-comp + --silence=60 + --bitrate=128 + --rate=48000 + --channels=2 + --sbr + --pad=34 + --pad-socket=defee58a-f768-4ca9-a0f7-88f08b2e8748 + --write-icy-text=/home/pi/config/mot/P01/INFO.dls + -e tcp://127.0.0.1:9001 + --stats=/var/tmp/P01.stats +autostart=false +autorestart=false +priority=10 +user=pi +group=pi +redirect_stderr=true +stdout_logfile=/var/log/supervisor/odr-audioencoder-defee58a-f768-4ca9-a0f7-88f08b2e8748.log + +# P02 +[program:odr-padencoder-7158c498-1ef1-4580-b385-23a3c06ba985] +command=/usr/local/bin/odr-padenc + --dir=/home/pi/config/mot/P02/slide + --sleep=0 + --dls=/home/pi/config/mot/P02/INFO.dls + --output=7158c498-1ef1-4580-b385-23a3c06ba985 + --label=12 + --label-ins=1200 +autostart=false +autorestart=false +priority=10 +user=pi +group=pi +redirect_stderr=true +stdout_logfile=/var/log/supervisor/odr-padencoder-7158c498-1ef1-4580-b385-23a3c06ba985.log + +# P02 +[program:odr-audioencoder-7158c498-1ef1-4580-b385-23a3c06ba985] +command=/usr/local/bin/odr-audioenc + --vlc-uri=http://media-ice.musicradio.com/CapitalMP3 + --drift-comp + --silence=60 + --bitrate=128 + --rate=48000 + --channels=2 + --sbr + --pad=34 + --pad-socket=7158c498-1ef1-4580-b385-23a3c06ba985 + --write-icy-text=/home/pi/config/mot/P02/INFO.dls + -e tcp://127.0.0.1:9002 + --stats=/var/tmp/P02.stats +autostart=false +autorestart=false +priority=10 +user=pi +group=pi +redirect_stderr=true +stdout_logfile=/var/log/supervisor/odr-audioencoder-7158c498-1ef1-4580-b385-23a3c06ba985.log diff --git a/config/supervisor/ODR-misc.conf b/config/supervisor/ODR-misc.conf new file mode 100644 index 0000000..8e4279f --- /dev/null +++ b/config/supervisor/ODR-misc.conf @@ -0,0 +1,38 @@ +[program:10-EncoderManager] +command=python3 run.py -c /home/pi/config/encodermanager.json +directory=/home/pi/ODR-mmbTools/ODR-EncoderManager +autostart=false +autorestart=false +priority=10 +user=pi +group=pi +stderr_logfile=/var/log/supervisor/encoderManager.log +stdout_logfile=/var/log/supervisor/encoderManager.log + +[program:20-Multiplex] +command=odr-dabmux odr-dabmux.info +directory=/home/pi/config/ +autostart=false +autorestart=false +user=pi +group=pi +stderr_logfile=/var/log/supervisor/mux.log +stdout_logfile=/var/log/supervisor/mux.log + +[program:21-Multiplex-Manager] +command=python3 odr-dabmux-gui.py --port=8002 --host=raspberrypi.local +directory=/home/pi/ODR-mmbTools/ODR-DabMux/gui +autostart=false +autorestart=false +user=pi +group=pi +stderr_logfile=/var/log/supervisor/mux-manager.log +stdout_logfile=/var/log/supervisor/mux-manager.log + +[program:30-Modulator] +command=odr-dabmod odr-dabmod.ini +directory=/home/pi/config/ +autostart=false +autorestart=false +stderr_logfile=/var/log/supervisor/mod.log +stdout_logfile=/var/log/supervisor/mod.log diff --git a/config/supervisor/encoder-bbc1.conf b/config/supervisor/encoder-bbc1.conf deleted file mode 100644 index c53068a..0000000 --- a/config/supervisor/encoder-bbc1.conf +++ /dev/null @@ -1,20 +0,0 @@ -[program:encoder-bbc1] -# DAB encoding using odr-audioenc -command=/usr/local/bin/odr-audioenc --dab --vlc-uri=http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio1_mf_p -b 128 -r 48000 -o tcp://127.0.0.1:9004 --pad=58 --pad-fifo=/home/odr/config/mot/bbc1.pad --write-icy-text=/home/odr/config/mot/bbc1.txt - -# DAB encoding using toolame -#command=/usr/local/bin/toolame-dab -s 48 -V http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio1_mf_p -b 128 -W /home/odr/config/mot/bbc1.txt -p 58 -P /home/odr/config/mot/bbc1.pad tcp://127.0.0.1:9004 - -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/encoder-bbc1.log -stdout_logfile=/var/log/supervisor/encoder-bbc1.log - -[program:mot-bbc1] -command=/usr/local/bin/odr-padenc -t /home/odr/config/mot/bbc1.txt -o /home/odr/config/mot/bbc1.pad --pad=58 --charset=15 --dir=/home/odr/config/mot/bbc1/ --sleep=30 -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/mot-bbc1.log -stdout_logfile=/var/log/supervisor/mot-bbc1.log diff --git a/config/supervisor/encoder-f3.conf b/config/supervisor/encoder-f3.conf deleted file mode 100644 index 715bf1a..0000000 --- a/config/supervisor/encoder-f3.conf +++ /dev/null @@ -1,15 +0,0 @@ -[program:encoder-f3] -command=/usr/local/bin/odr-audioenc --vlc-uri=http://ice.stream.frequence3.net/frequence3-128.mp3 -b 96 -r 48000 -o tcp://127.0.0.1:9001 --pad=58 --pad-fifo=/home/odr/config/mot/f3.pad --write-icy-text=/home/odr/config/mot/f3.txt -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/encoder-f3.log -stdout_logfile=/var/log/supervisor/encoder-f3.log - -[program:mot-f3] -command=/usr/local/bin/odr-padenc -t /home/odr/config/mot/f3.txt -o /home/odr/config/mot/f3.pad --pad=58 --dir=/home/odr/config/mot/f3/ --sleep=30 -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/mot-f3.log -stdout_logfile=/var/log/supervisor/mot-f3.log diff --git a/config/supervisor/encoder-fip.conf b/config/supervisor/encoder-fip.conf deleted file mode 100644 index a35b96b..0000000 --- a/config/supervisor/encoder-fip.conf +++ /dev/null @@ -1,15 +0,0 @@ -[program:encoder-fip] -command=/usr/local/bin/odr-audioenc --vlc-uri=http://audio.scdn.arkena.com/11016/fip-midfi128.mp3 -b 96 -r 48000 -o tcp://127.0.0.1:9003 --pad=58 --pad-fifo=/home/odr/config/mot/fip.pad --write-icy-text=/home/odr/config/mot/fip.txt -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/encoder-fip.log -stdout_logfile=/var/log/supervisor/encoder-fip.log - -[program:mot-fip] -command=/usr/local/bin/odr-padenc -t /home/odr/config/mot/fip.txt -o /home/odr/config/mot/fip.pad --pad=58 --dir=/home/odr/config/mot/fip/ --sleep=30 -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/mot-fip.log -stdout_logfile=/var/log/supervisor/mot-fip.log diff --git a/config/supervisor/encoder-maxxima.conf b/config/supervisor/encoder-maxxima.conf deleted file mode 100644 index 550eb91..0000000 --- a/config/supervisor/encoder-maxxima.conf +++ /dev/null @@ -1,15 +0,0 @@ -[program:encoder-maxxima] -command=/usr/local/bin/odr-audioenc --vlc-uri=http://maxxima.mine.nu:8000/ -b 96 -r 32000 -o tcp://127.0.0.1:9002 --pad=58 --pad-fifo=/home/odr/config/mot/maxxima.pad --write-icy-text=/home/odr/config/mot/maxxima.txt -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/encoder-maxxima.log -stdout_logfile=/var/log/supervisor/encoder-maxxima.log - -[program:mot-maxxima] -command=/usr/local/bin/odr-padenc -t /home/odr/config/mot/maxxima.txt -o /home/odr/config/mot/maxxima.pad --pad=58 --dir=/home/odr/config/mot/maxxima/ --sleep=30 -autostart=false -autorestart=true -priority=10 -stderr_logfile=/var/log/supervisor/mot-maxxima.log -stdout_logfile=/var/log/supervisor/mot-maxxima.log diff --git a/config/supervisor/mod.conf b/config/supervisor/mod.conf deleted file mode 100644 index f4941e6..0000000 --- a/config/supervisor/mod.conf +++ /dev/null @@ -1,7 +0,0 @@ -[program:mod] -command=/usr/local/bin/odr-dabmod /home/odr/config/mod.ini -autostart=false -autorestart=true -priority=1 -stderr_logfile=/var/log/supervisor/mod.log -stdout_logfile=/var/log/supervisor/mod.log diff --git a/config/supervisor/mux.conf b/config/supervisor/mux.conf deleted file mode 100644 index 5539ea3..0000000 --- a/config/supervisor/mux.conf +++ /dev/null @@ -1,7 +0,0 @@ -[program:mux] -command=/usr/local/bin/odr-dabmux /home/odr/config/mux.conf -autostart=false -autorestart=true -priority=1 -stderr_logfile=/var/log/supervisor/mux.log -stdout_logfile=/var/log/supervisor/mux.log -- cgit v1.2.3