https://github.com/acoustid/chromaprint/commit/aa67c95b.patch From 82781d02cd3063d071a501218297a90bde9a314f Mon Sep 17 00:00:00 2001 From: Marshal Walker Date: Thu, 8 Dec 2022 11:53:58 -0500 Subject: [PATCH] ffmpeg5 fix for issue #122 tested on Arch Linux, needs testing on win/mac/etc (should be fine tho) --- src/audio/ffmpeg_audio_processor_swresample.h | 4 ++-- src/audio/ffmpeg_audio_reader.h | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/audio/ffmpeg_audio_processor_swresample.h b/src/audio/ffmpeg_audio_processor_swresample.h index b1d4bea..e8fcb3f 100644 --- a/src/audio/ffmpeg_audio_processor_swresample.h +++ b/src/audio/ffmpeg_audio_processor_swresample.h @@ -29,7 +29,7 @@ class FFmpegAudioProcessor { } void SetInputChannelLayout(AVChannelLayout *channel_layout) { - av_opt_set_int(m_swr_ctx, "in_channel_layout", channel_layout->u.mask, 0); + av_opt_set_chlayout(m_swr_ctx, "in_chlayout", channel_layout, 0); } void SetInputSampleFormat(AVSampleFormat sample_format) { @@ -41,7 +41,7 @@ class FFmpegAudioProcessor { } void SetOutputChannelLayout(AVChannelLayout *channel_layout) { - av_opt_set_int(m_swr_ctx, "out_channel_layout", channel_layout->u.mask, 0); + av_opt_set_chlayout(m_swr_ctx, "out_chlayout", channel_layout, 0); } void SetOutputSampleFormat(AVSampleFormat sample_format) { diff --git a/src/audio/ffmpeg_audio_reader.h b/src/audio/ffmpeg_audio_reader.h index 1c6b346..35b2934 100644 --- a/src/audio/ffmpeg_audio_reader.h +++ b/src/audio/ffmpeg_audio_reader.h @@ -301,9 +301,10 @@ inline bool FFmpegAudioReader::Read(const int16_t **data, size_t *size) { } else { m_has_more_frames = false; } + } else { + SetError("Error decoding the audio source", ret); + return false; } - SetError("Error decoding the audio source", ret); - return false; } if (m_frame->nb_samples > 0) {