Man page - odr-audioenc(1)

Manual

ODR-AUDIOENC

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
alsa input:
file input:
JACK input:
VLC input:
GStreamer input:
Encoder parameters:
DAB specific options:
DAB+ specific options:
Output and PAD parameters:
AUTHOR
SEE ALSO

NAME

odr-audioenc - DAB and DAB+ audio encoder

SYNOPSIS

odr-audioenc [OPTION...]

DESCRIPTION

ODR-AudioEnc is an audio encoder for both DAB and DAB+ that integrates into the ODR-mmbTools. The encoder can read from JACK, ALSA, a file source, libvlc or GStreamer and encode to an EDI and ZeroMQ output compatible with ODR-DabMux. Several usage scenarios are outlined in the README located in /usr/share/doc/odr-audioenc.

The -D option enables sound card clock drift compensation. A consumer sound card has a clock that is always a bit imprecise, and would drift off slowly. Drift compensation can make sure that the encoding rate is correct by inserting or deleting audio samples. It can be used for both ALSA and VLC inputs and requires a system clock synchronised using NTP. When this option is enabled, you will see U and O printed in the console. These correspond to audio underruns and overruns caused by sound card clock drift. When sparse, they should not create audible artifacts.

This encoder is able to insert PAD (DLS and MOT Slideshow) generated by ODR-PadEnc, and communicates using a UNIX socket.

OPTIONS

-h , --help

Print this help text and exit

--version

Print program version and exit

-D , --drift-comp

Enable ALSA/VLC sound card drift compensation.

alsa input:

-d , --device = ALSA_DEVICE

Set ALSA input device.

file input:

-i , --input = FILENAME

Input filename (use -i - for stdin).

-f , --format= { wav, raw }

Set input file format (default: wav).

--fifo-silence

Input file is fifo and encoder generates silence when fifo is empty. Ignore EOF.

JACK input:

-j , --jack = NAME

Enable JACK input, and define our name

VLC input:

-v , --vlc-uri = URI

Enable VLC input and use the URI given as source

-C , --vlc-cache = MS

Specify VLC network cache length.

-g , --audio-gain = DB

Apply audio gain correction in dB to source, negative values allowed. Use this as a workaround to correct the gain for streams that are much too loud.

-V

Increase the VLC verbosity by one (can be given multiple times)

-L OPTION

Give an additional options to VLC (can be given multiple times)

GStreamer input:

-G , --gst-uri = URI

Enable GStreamer input and use the URI given as source

Encoder parameters:

-b , --bitrate= { 8, 16, ..., 192 }

Output bitrate in kbps. Must be a multiple of 8.

-c , --channels= { 1, 2 }

Nb of input channels (default: 2).

-r , --rate= { 24000, 32000, 48000 }

Input sample rate (default: 48000).

DAB specific options:

-a , --dab

Encode in DAB and not in DAB+.

--dabmode = MODE

Channel mode: s/d/j/m (default: j if stereo, m if mono).

--dabpsy = PSY

Psychoacoustic model 0/1/2/3 (default: 1).

DAB+ specific options:

-A , --no-afterburner

Disable AAC encoder quality increaser.

--aaclc

Force the usage of AAC-LC (no SBR, no PS)

--sbr

Force the usage of SBR (HE-AAC)

--ps

Force the usage of SBR and PS (HE-AACv2)

-B , --bandwidth = VALUE

Set the AAC encoder bandwidth to VALUE [Hz].

--decode = FILE

Decode the AAC back to a wav file (loopback test).

Output and PAD parameters:

-o , --output = URI

Output ZMQ uri. (e.g. ’tcp://localhost:9000’) -or- Output file uri. (e.g. ’file.dabp’) -or- a single dash ’-’ to denote stdout. If more than one ZMQ output is given, the socket will be connected to all listed endpoints.

-k , --secret-key = FILE

Enable ZMQ encryption with the given secret key.

-e , --edi = URI

EDI output uri, (e.g. ’tcp://localhost:7000’)

--fec = FEC

Set EDI output FEC

-T , --timestamp-delay = DELAY_MS

Enabled timestamps in EDI (requires TAI clock bulletin download) and add a delay (in milliseconds) to the timestamps carried in EDI

-w , --write-icy-text = FILENAME

Write the ICY Text into the file, so that ODR-PadEnc can read it.

-W , --write-icy-text-dl-plus

When writing the ICY Text into the file, add DL Plus information.

--identifier = ID

An identifier string that is sent in the ODRv EDI TAG. Max 32 characters length.

--startup-check = SCRIPT_PATH

Before starting, run the given script, and only start if it returns 0.

-p , --pad = BYTES

Enable PAD insertion and set PAD size in bytes.

-P , --pad-socket = IDENTIFIER

Use the given identifier to communicate with ODR-PadEnc.

-l , --level

Show peak audio level indication.

-S , --stats = SOCKET_NAME

Connect to the specified UNIX Datagram socket and send statistics. This allows external tools to collect audio and drift compensation stats.

-s , --silence = TIMEOUT

Abort encoding after TIMEOUT seconds of silence.

AUTHOR

Originally written by Robin Alexander <robin.alexander@netplus.ch>.

SEE ALSO

odr-padenc(1), odr-dabmux(1)