| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- fix pedantic warnings (binary literals)
- remove orphaned path from compiler call
- add C++11 standard and `-Wpedantic` to compiler call
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The uniform PAD encoder encodes every PAD on demand and is kind of
synchronized to the audio encoder by means of the frame duration.
Insertion intervals for slides and labels can be set indepentent from
each other. It is also possible to specify how often the label is
inserted.
If the slides interval "0" is used, the next slide is inserted just
after the previous one has been transmitted. This is useful e.g. for
stations that transmit just a logo slide.
An initial burst count can be set to ensure that an audio encoder has
enough PADs available e.g. in case the audio encoder encodes DAB+
Superframes at once and hence needs all related PADs.
If a slide/label is still in transmission when the transmission of the
next one is scheduled, the new transmission is skipped and a warning is
shown. In this case it makes sense to increase the PAD length or to
instead decrease the slide size or label insertion interval (`-L`).
This new PAD encoder does not require any changes on the audio encoder
side. Only in case of MP2, a recent revision of ODR-AudioEnc has to be
used (commit ce25f2c or later), as it fixes a problem with PADs that
solely consist of the F-PAD.
|
| |
|
|
|
|
|
|
| |
- move two vars to base class
- handle thread sleep in base class
- add missing lock guard for exit var
|
| |
|
|
|
|
|
| |
The function allows to check e.g. if the previous slide is still in
transmission, in order to postpone the transmission of the current one.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This allows to replace the current PAD encoding algorithm by alternative
methods in the future.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- move main process into new PAD encoder object
- hand over options by new separate options object
- unify default value retrieval in usage
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also update website URL to HTTPS
|
| |
|
|
|
|
|
|
|
|
|
| |
Version 7 introduced slight API changes which are handled accordingly.
Legacy version 6 has equivalent support in ODR-PadEnc and there are no
plans to remove support for the next years.
See also #3.
|
|
|
|
|
| |
Move them right before the loop, as before a break (e.g. while waiting
for the audio decoder opening the pipe) didn't lead to termination.
|
| |
|
|
|
|
|
|
|
|
|
| |
When the opposite side of the PAD FIFO disconnects (e.g. due to crash of
the audio encoder), ODR-PadEnc crashed as well due to SIGPIPE.
This commit changes the behaviour. From now on instead error messages
are displayed and it is possible for a new instance of the audio encoder
to reconnect to the still running ODR-PadEnc instance.
|
|
|
|
|
|
| |
- fix compile warning w/o MagickWand
- limit variable scope
- fix variable types
|
|
|
|
|
|
|
| |
The variable survived a refactoring and is orphaned since. Only
compilation without MagickWand was affected.
Fixes #4.
|
|
|
|
| |
Affects #3.
|
|
|
|
|
| |
Using the C++ versions does not guarantee the availability of the
global namespace functions.
|
|
|
|
|
| |
Add signal handler for SIGINT and SIGTERM that closes the output socket
and deinits ImageMagick (if used).
|
| |
|
| |
|
|
|
|
|
|
|
| |
Ubuntu 16.04 currently ships an ImageMagick version that was affected by
a memleak and is fixed since v6.9.2-2: http://git.imagemagick.org/repos/ImageMagick/commit/6790815c75bdea0357df5564345847856e995d6b
Closes #2.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
A memleak occured when non-raw mode was used and a slide complied to the
following conditions:
- PNG/JPG file
- 320x240 resolution or less
- size above max slide size (~50 KB)
Closes #2.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Up to now the delay between two loop runs was slightly higher than the specified
sleep delay as the sleeping process did not consider the time the PAD encoding
needs but rather sleeped for the set sleep delay.
This is now fixed by using a steady clock.
|
| |
|