ti copio incollo un file di configurazione compilato a mano.
general {
dabmode 1
nbframes 0
syslog false
tist true
managementport 12720 ; 12720 per avere la gui che si interfaccia al mux
}
remotecontrol {
telnetport 12721 ; la 12722 server a zeromq RC per avere le statistiche dalla GUI
zmqendpoint "tcp://lo:12722"
}
ensemble {
id 0x4fff ; you can also use decimal if you want
ecc 0xe0 ;this is for italy by etsi papers .....
local-time-offset auto ; automatically calculate from system local time
; or
label "ODR_toscana-test"
shortlabel "ODR_tosc"
}
services {
srv-antennaradioesse { label "ANTENNA.R.ESSE" ;era ANTENNARADIOESSE, ma incompatibile con A.R.ESSE
shortlabel "A.R.ESSE"
id 0xa000
}
srv-controradio { label ".CONTRORADIO." ; era CONTRORADIO , ma incompatibile con CONTROR.
shortlabel "CONTROR."
id 0x5a73
}
srv-novaradio { label "NOVARADIO ARCI"
shortlabel "NOVARDIO"
id 0x5063
}
srv-radio3network { label "Radio 3 Network"
shortlabel "Radio 3" ; in realta' non hanno deciso lo short? rds?
id 0xfffe
}
srv-radioalleluia { label "RADIO ALLELUIA" ; in realta' non si sa esattamente
shortlabel "ALLELUIA" ; ANCHE QUESTO NON SI SA ESATTAMENTE
}
srv-radiodiffusionepistoia { label "R.DIFFUSIONE.PT"
shortlabel "R.DIF.PT"
id 0x50c8
}
srv-radiofirenze { label "RADIO FIRENZE"
shortlabel "RFIRENZE"
id 0x50a8
}
srv-radioincontrivaldichiana { label "RadioIncontriBlu"
shortlabel "Incontri"
id 0x548f
}
srv-radiorosa { label "WWW.RADIOROSA.IT" ; era www.radiorosa.it , ma incompatibile con *ROSA*.
shortlabel ".ROSA."
id 0x5428
}
srv-radiosiena { label "RADIO.SIENA" ; era Radio Siena ma incompatibile con R:SIENA
shortlabel "R.SIENA" ; ipotizzato
id 0x5ac0
}
srv-radiosiena2 { label "Radio Siena 2"
shortlabel "Siena 2"
id 0xffaa
}
srv-radiotoscana { label "RADIO TOSCANA"
shortlabel "RTOSCANA"
id 0x5aa7
}
}
subchannels {
sub-antennaradioesse {
type dabplus
inputfile "tcp://*:9000"
bitrate 64
protection 2
id 1
zmq-buffer 40
zmq-prebuffering 20
}
sub-controradio {
type dabplus
inputfile "tcp://*:9001"
bitrate 64
protection 2
id 2
zmq-buffer 40
zmq-prebuffering 20
}
sub-novaradio {
type dabplus
inputfile "tcp://*:9002"
bitrate 64
protection 2
id 3
zmq-buffer 40
zmq-prebuffering 20
}
sub-radio3network {
type dabplus
inputfile "tcp://*:9003"
bitrate 64
protection 2
id 4
zmq-buffer 40
zmq-prebuffering 20
}
sub-radioalleluia {
type dabplus
inputfile "tcp://*:9004"
bitrate 64
protection 2
id 5
zmq-buffer 40
zmq-prebuffering 20
}
sub-radiodiffusionepistoia {
type dabplus
inputfile "tcp://*:9005"
bitrate 64
protection 2
id 6
zmq-buffer 40
zmq-prebuffering 20
}
sub-radiofirenze {
type dabplus
inputfile "tcp://*:9006"
bitrate 64
protection 2
id 7
zmq-buffer 40
zmq-prebuffering 20
}
sub-radioincontrivaldichiana {
type dabplus
inputfile "tcp://*:9007"
bitrate 64
protection 2
id 8
zmq-buffer 40
zmq-prebuffering 20
}
sub-radiorosa {
type dabplus
inputfile "tcp://*:9008"
bitrate 64
protection 2
id 9
zmq-buffer 40
zmq-prebuffering 20
}
sub-radiosiena {
type dabplus
inputfile "tcp://*:9009"
bitrate 64
protection 2
id 10
zmq-buffer 40
zmq-prebuffering 20
}
sub-radiosiena2 {
type dabplus
inputfile "tcp://*:9010"
bitrate 64
protection 2
id 11
zmq-buffer 40
zmq-prebuffering 20
}
sub-radiotoscana {
type dabplus
inputfile "tcp://*:9011"
bitrate 64
protection 2
id 12
zmq-buffer 40
zmq-prebuffering 20
}
}
components {
comp-antennaradioesse {
type 0
service srv-antennaradioesse
subchannel sub-antennaradioesse
;figtype 0x2 ;questo per lo stream dello slideshow ?
}
comp-controradio {
service srv-controradio
subchannel sub-controradio
;figtype 0x2 ;questo per lo slideshow ?
}
comp-novaradio {
service srv-novaradio
subchannel sub-novaradio
;figtype 0x2 ;questo per lo stream dello slideshow ?
}
comp-radio3network {
service srv-radio3network
subchannel sub-radio3network
;figtype 0x2 ;questo per lo slideshow ?
}
comp-radioalleluia {
service srv-radioalleluia
subchannel sub-radioalleluia
;figtype 0x2 ;questo per lo stream dello slideshow ?
}
comp-radiodiffusionepistoia {
service srv-radiodiffusionepistoia
subchannel sub-radiodiffusionepistoia
;figtype 0x2 ;questo per lo slideshow ?
}
comp-radiofirenze {
service srv-radiofirenze
subchannel sub-radiofirenze
;figtype 0x2 ;questo per lo stream dello slideshow ?
}
comp-radioincontrivaldichiana {
service srv-radioincontrivaldichiana
subchannel sub-radioincontrivaldichiana
;figtype 0x2 ;questo per lo slideshow ?
}
comp-radiorosa {
service srv-radiorosa
subchannel sub-radiorosa
;figtype 0x2 ;questo per lo stream dello slideshow ?
}
comp-radiosiena {
service srv-radiosiena
subchannel sub-radiosiena
;figtype 0x2 ;questo per lo slideshow ?
}
comp-radiosiena2 {
service srv-radiosiena2
subchannel sub-radiosiena2
;figtype 0x2 ;questo per lo stream dello slideshow ?
}
comp-radiotoscana {
service srv-radiotoscana
subchannel sub-radiotoscana
;figtype 0x2 ;questo per lo slideshow ?
}
}
outputs {
; Output RAW ETI NI to standard output
;stdout "fifo:///dev/stdout?type=raw"
; ZeroMQ output example
; Listen on all interfaces, on port 9100
;zmq "zmq+tcp://*:9100"
; to send output to farsite cards Raw
; farsync "raw://sync0"
;to output to ETI file (abilita il throttle per non avere un file corrotto)
;file "file:///var/odrmux_out/testout.eti?type=raw"
;file "file:///var/odrmux_out/testout.eti?type=framed" ;NOT standard
;file "file:///var/odrmux_out/testout.eti?type=streamed" ;NOT standard
; Throttle output to real-time (one ETI frame every 24ms)
;throttle "simul://"
edi {
destinations {
; multicast {
; destination "224.20.10.1"
; source "192.168.0.107"
; ttl 1
; sourceport 14000
; }
unicast {
;destination "192.168.0.151"
destination "127.0.0.1"
sourceport 14000
ttl 1
}
}
chunk_len 207
port 4100
;ttl 1
enable_pft true
tagpacket_alignment 8
dump false
verbose false
fec 2
}
;net_udp "udp://192.168.1.4:1234"
;zmq "zmq+tcp://*:9100"
throttle "simul://"
}
Come vedete, ci sono dei "blocchi" ben definiti, e dei valori associati a specifici "campi", che sono diversi da emittente ad emittente.
Dovrei rifarne uno a partire da valori che possono cambiare, memorizzati in un DB.
Alla piu' brutta mi faccio tiga per riga, ma sono sicuro che c'e' qualche strumento informatico piu' agevole (..... che poi e' lo stesso blocco mentale che ho con l'html :-( )