It seems that ADM_edAudioTrackFromVideo::getPCMPacket should either return |false| or set |odts|. However, if it returns from line 126 |true| will be returned and |odts| will not be set (it is only set at line 180). The effect of this appears to be that AUDMAudioFilter_Bridge::fillIncomingBuffer will expect that |dts| was assigned a value, when it was not (line 150+). It then proceeds to do semi-random things.
valgrind says
Conditional jump or move depends on uninitialised value(s)
at 0x44063B: AUDMAudioFilter_Bridge::fillIncomingBuffer(AUD_Status*) (in /usr/bin/avidemux3_qt4)
by 0x440826: AUDMAudioFilter_Bridge::fill(unsigned int, float*, AUD_Status*) (in /usr/bin/avidemux3_qt4)
by 0x329B600D35: AUDMAudioFilter::fillIncomingBuffer(AUD_Status*) (in /usr/lib64/libADM_coreAudioFilterAPI6.so)
by 0x442300: AUDMAudioFilterMixer::fill(unsigned int, float*, AUD_Status*) (in /usr/bin/avidemux3_qt4)
by 0x43879F: GUIPlayback::initializeAudio() (in /usr/bin/avidemux3_qt4)
by 0x4389B9: GUIPlayback::initialize() (in /usr/bin/avidemux3_qt4)
should be ok