diff options
| author | Robin Alexander <robin.alexander@netplus.ch> | 2025-06-01 17:00:59 +0200 |
|---|---|---|
| committer | Robin Alexander <robin.alexander@netplus.ch> | 2025-06-01 17:00:59 +0200 |
| commit | 6175555de8fc3551d8758b7d51e25699716283b1 (patch) | |
| tree | c3072d1be00a4a2749fa97ed8108e581ab78b0d9 | |
| parent | b081281b24dc57ea5a79677cde0a07286bbc9277 (diff) | |
| download | ODR-PadEnc-6175555de8fc3551d8758b7d51e25699716283b1.tar.gz ODR-PadEnc-6175555de8fc3551d8758b7d51e25699716283b1.tar.bz2 ODR-PadEnc-6175555de8fc3551d8758b7d51e25699716283b1.zip | |
Fix issues identified by markdownlint
| -rw-r--r-- | README.md | 69 |
1 files changed, 47 insertions, 22 deletions
@@ -1,4 +1,5 @@ # ODR-PadEnc + ODR-PadEnc is an encoder for Programme Associated Data (PAD) and includes support for: @@ -14,27 +15,33 @@ For detailed usage, see the usage screen of the tool with the `-h` option. More information is available on the [Opendigitalradio wiki](http://wiki.opendigitalradio.org/ODR-PadEnc) -# Installation +## Installation + You have 3 ways to install odr-padenc on your host: -## Using your linux distribution packaging system -`odr-padenc` is available on the official repositories of several debian-based distributions, such as Debian +### Using your linux distribution packaging system + +`odr-padenc` is available on the official repositories of several debian-based distributions, such as Debian (from Debian 12), Ubuntu (from 24.10), Opensuse and Arch. -If you are using Debian 12 (Bookworm), you will need to +If you are using Debian 12 (Bookworm), you will need to [add the backports repository](https://backports.debian.org/Instructions/) -## Using installation scripts +### Using installation scripts + If your linux distribution is debian-based, you can install odr-padenc -as well as the other main components of the mmbTools set with the +as well as the other main components of the mmbTools set with the [Opendigitalradio dab-scripts](https://github.com/opendigitalradio/dab-scripts.git) -## Compiling manually +### Compiling manually + Unlike the 2 previous options, this one allows you to compile odr-padenc with the features you really need. -### Requirements +#### Requirements + For Debian Bullseye-based OS, run the following commands: -``` + +```sh # Required packages ## C++11 compiler sudo apt-get install --yes build-essential automake libtool @@ -44,39 +51,49 @@ sudo apt-get install --yes build-essential automake libtool sudo apt-get install libmagickwand-dev ``` -### Compilation +#### Compilation + 1. Clone this repository: - ``` + + ```sh # stable version: git clone https://github.com/Opendigitalradio/ODR-PadEnc.git # or development version (at your own risk): git clone https://github.com/Opendigitalradio/ODR-PadEnc.git -b next ``` + 1. Configure the project - ``` + + ```sh cd ODR-PadEnc ./bootstrap ./configure ``` + 1. Compile and install: - ``` + + ```sh make sudo make install ``` ### ImageMagick and Debian Jessie/Ubuntu 16.04 + Please note that Debian Jessie and Ubuntu 16.04 shipped a version of ImageMagick that was affected by two memory leaks (see #2, and also Ubuntu's [#1671630](https://bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1671630) and [#1680543](https://bugs.launchpad.net/debian/+source/imagemagick/+bug/1680543)). Hence ODR-PadEnc increasingly consumed memory until it crashed. This has been fixed with the following package versions: + - Debian Jessie: 8:6.8.9.9-5+deb8u9 - Ubuntu 16.04: 8:6.8.9.9-7ubuntu5.7 -# Usage of MOT Slideshow and DLS -## Basic example +## Usage of MOT Slideshow and DLS + +### Basic example + `odr-padenc` reads images from the specified folder, and generates the PAD data for the encoder. This is communicated through a socket to the encoder. It also reads DLS from a file, and includes this information in the PAD. @@ -87,19 +104,23 @@ Basic example with both DLS taken from the file *dls.txt* and MOT Slideshow caro This assumes the common identifier between audio encoder and ODR-PadEnc is defined in the *IDENTIFIER* environment variable. - odr-padenc -o $IDENTIFIER -t dls.txt -d ./slides +```sh +odr-padenc -o $IDENTIFIER -t dls.txt -d ./slides +``` If you generate slides on-the-fly (e.g. content-related slides with album covers), set the `--erase` flag to ensure a slide is only transmitted once, and set `--sleep=0` to start slide transmission as soon as the file is created. -## If ImageMagick is available +### If ImageMagick is available + It can read all file formats supported by ImageMagick, and by default resizes them to 320x240 pixels, and compresses them as JPEG. If the input file is already a JPEG file of the correct size, and smaller than 50kB, it is sent without further compression. If the input file is a PNG that satisfies the same criteria, it is transmitted as PNG without any recompression. -## RAW Format +### RAW Format + If ImageMagick is not compiled in, or when enabled with the `-R` option, the images are not modified, and are transmitted as-is. Use this if you can guarantee that the generated files are smaller than 50kB and not larger than 320x240 pixels. @@ -107,7 +128,8 @@ Files whose name end in `_PadEncRawMode.png` or `_PadEncRawMode.jpg` will always be transmitted in RAW mode. It may be useful to apply [`optipng`](http://optipng.sourceforge.net) to any PNG file prior to transmission. -## Supported Encoders +### Supported Encoders + `odr-audioenc` and `odr-sourcecompanion` can insert the PAD data from `odr-padenc` into the bitstream. This is an ongoing development. Only some PAD lengths are supported, please see `odr-padenc`'s help. @@ -117,7 +139,8 @@ the tools. ODR-PadEnc v3 replaced the fifo with a socket and is compatible with ODR-AudioEnc v3 and ODR-SourceCompanion v1. -## Character Sets +### Character Sets + When `odr-padenc` is launched with the default character set options, it assumes that the DLS text in the file is encoded in UTF-8, and will convert it according to the DAB standard to the *Complete EBU Latin based repertoire* character set encoding. @@ -132,10 +155,12 @@ case, it is your responsibility to ensure the encoding is valid. For instance, if your data is already encoded in *Complete EBU Latin based repertoire*, you must specify both `--charset=0` and `--raw-dls`. -# Known Limitations +## Known Limitations + Some receivers are unable to decode slides larger than some size, even within the allowed size limit given in the specification. -# Thanks +## Thanks + This encoder was initially called `mot-encoder` and has been contributed by [CSP](http://rd.csp.it). |
