Fraunhofer-IIS / mpeghdec

The Fraunhofer MPEG-H decoder (mpeghdec) is a C/C++ implementation of the MPEG-H Audio standard as defined in ISO/IEC 23008-3:2022

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

help

Joviverde opened this issue · comments

is there a way to make the decoder get the channels automatically? for example i try to decode 24 channels but it always gives me 14 channels and i know it could give more. i would also like if its possible to keep the same channel volumes as the original automatically (idk it seems like the decoder decreases them a bit)

There is no automatism but to get 24 channels (22.2) you can set the target layout to CICP index 13 (command line option "-tl 13"). See also https://github.com/Fraunhofer-IIS/mpeghdec/wiki/DecoderTargetLayouts.

It is a core feature of MPEG-H and in particular MPEG-D DRC to provide consistent loudness of the decoded output. The loudness is adapted by the decoder depending on the loudness metadata present in the stream and the target loudness (command line option "-rl ") set by the decoder. See also https://github.com/Fraunhofer-IIS/mpeghdec/wiki/MPEG-H-decoder-parameters#loudness-control. This is to avoid undesired loudness jumps when playing bitstreams from different sources.

commented

There is no automatism but to get 24 channels (22.2) you can set the target layout to CICP index 13 (command line option "-tl 13"). See also https://github.com/Fraunhofer-IIS/mpeghdec/wiki/DecoderTargetLayouts.

It is a core feature of MPEG-H and in particular MPEG-D DRC to provide consistent loudness of the decoded output. The loudness is adapted by the decoder depending on the loudness metadata present in the stream and the target loudness (command line option "-rl ") set by the decoder. See also https://github.com/Fraunhofer-IIS/mpeghdec/wiki/MPEG-H-decoder-parameters#loudness-control. This is to avoid undesired loudness jumps when playing bitstreams from different sources.

if the file doesn't have loudness metadata, is there a way to change the -rl option?
because no matter what number I put on the -rl, it will always decode with -1 loudness...

No, the presence of (correct) loudness metadata is a prerequisite for loudness management working in the decoder.