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
Other
61 stars 7 forks source link

help #5

Closed Joviverde closed 10 months ago

Joviverde commented 12 months ago

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)

mhildenbrand-iis commented 12 months ago

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.

m41c0n commented 11 months ago

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...

mhildenbrand-iis commented 11 months ago

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