Commit 6becba8c by Devin Tuchsen

Only use ALAC workaround if sample rate is 0

This prevents the workaround from occuring once FFmpeg has the bug
patched.
parent f7b2452d
......@@ -88,14 +88,13 @@ import java.util.List;
}
if (!hasOutputFormat) {
channelCount = ffmpegGetChannelCount(nativeContext);
if ("alac".equals(codecName)) {
sampleRate = ffmpegGetSampleRate(nativeContext);
if (sampleRate == 0 && "alac".equals(codecName)) {
// ALAC decoder did not set the sample rate in earlier versions of FFMPEG.
// See https://trac.ffmpeg.org/ticket/6096
ParsableByteArray parsableExtraData = new ParsableByteArray(extraData);
parsableExtraData.setPosition(extraData.length - 4);
sampleRate = parsableExtraData.readUnsignedIntToInt();
} else {
sampleRate = ffmpegGetSampleRate(nativeContext);
}
hasOutputFormat = true;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment