filter/ffmpeg: fix FFmpeg 5.1 deprecation warnings
This commit is contained in:
		@@ -40,10 +40,15 @@ FfmpegFilter::FfmpegFilter(const AudioFormat &in_audio_format,
 | 
				
			|||||||
	 buffer_sink(_buffer_sink),
 | 
						 buffer_sink(_buffer_sink),
 | 
				
			||||||
	 in_format(Ffmpeg::ToFfmpegSampleFormat(in_audio_format.format)),
 | 
						 in_format(Ffmpeg::ToFfmpegSampleFormat(in_audio_format.format)),
 | 
				
			||||||
	 in_sample_rate(in_audio_format.sample_rate),
 | 
						 in_sample_rate(in_audio_format.sample_rate),
 | 
				
			||||||
 | 
					#if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(57, 25, 100)
 | 
				
			||||||
	 in_channels(in_audio_format.channels),
 | 
						 in_channels(in_audio_format.channels),
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
	 in_audio_frame_size(in_audio_format.GetFrameSize()),
 | 
						 in_audio_frame_size(in_audio_format.GetFrameSize()),
 | 
				
			||||||
	 out_audio_frame_size(_out_audio_format.GetFrameSize())
 | 
						 out_audio_frame_size(_out_audio_format.GetFrameSize())
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 25, 100)
 | 
				
			||||||
 | 
						av_channel_layout_default(&in_ch_layout, in_audio_format.channels);
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ConstBuffer<void>
 | 
					ConstBuffer<void>
 | 
				
			||||||
@@ -54,7 +59,11 @@ FfmpegFilter::FilterPCM(ConstBuffer<void> src)
 | 
				
			|||||||
	frame.Unref();
 | 
						frame.Unref();
 | 
				
			||||||
	frame->format = in_format;
 | 
						frame->format = in_format;
 | 
				
			||||||
	frame->sample_rate = in_sample_rate;
 | 
						frame->sample_rate = in_sample_rate;
 | 
				
			||||||
 | 
					#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 25, 100)
 | 
				
			||||||
 | 
						frame->ch_layout = in_ch_layout;
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
	frame->channels = in_channels;
 | 
						frame->channels = in_channels;
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
	frame->nb_samples = src.size / in_audio_frame_size;
 | 
						frame->nb_samples = src.size / in_audio_frame_size;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	frame.GetBuffer();
 | 
						frame.GetBuffer();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -35,7 +35,13 @@ class FfmpegFilter final : public Filter {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	FfmpegBuffer interleave_buffer;
 | 
						FfmpegBuffer interleave_buffer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const int in_format, in_sample_rate, in_channels;
 | 
						const int in_format, in_sample_rate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 25, 100)
 | 
				
			||||||
 | 
						AVChannelLayout in_ch_layout;
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
						const int in_channels;
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const size_t in_audio_frame_size;
 | 
						const size_t in_audio_frame_size;
 | 
				
			||||||
	const size_t out_audio_frame_size;
 | 
						const size_t out_audio_frame_size;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -48,7 +48,11 @@ DetectFilterOutputFormat(const AudioFormat &in_audio_format,
 | 
				
			|||||||
	Frame frame;
 | 
						Frame frame;
 | 
				
			||||||
	frame->format = ToFfmpegSampleFormat(in_audio_format.format);
 | 
						frame->format = ToFfmpegSampleFormat(in_audio_format.format);
 | 
				
			||||||
	frame->sample_rate = in_audio_format.sample_rate;
 | 
						frame->sample_rate = in_audio_format.sample_rate;
 | 
				
			||||||
 | 
					#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 25, 100)
 | 
				
			||||||
 | 
						av_channel_layout_default(&frame->ch_layout, in_audio_format.channels);
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
	frame->channels = in_audio_format.channels;
 | 
						frame->channels = in_audio_format.channels;
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
	frame->nb_samples = 1;
 | 
						frame->nb_samples = 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	frame.GetBuffer();
 | 
						frame.GetBuffer();
 | 
				
			||||||
@@ -75,8 +79,14 @@ DetectFilterOutputFormat(const AudioFormat &in_audio_format,
 | 
				
			|||||||
	if (sample_format == SampleFormat::UNDEFINED)
 | 
						if (sample_format == SampleFormat::UNDEFINED)
 | 
				
			||||||
		throw std::runtime_error("Unsupported FFmpeg sample format");
 | 
							throw std::runtime_error("Unsupported FFmpeg sample format");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 25, 100)
 | 
				
			||||||
 | 
						const unsigned out_channels = frame->ch_layout.nb_channels;
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
						const unsigned out_channels = frame->channels;
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return CheckAudioFormat(frame->sample_rate, sample_format,
 | 
						return CheckAudioFormat(frame->sample_rate, sample_format,
 | 
				
			||||||
				frame->channels);
 | 
									out_channels);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
} // namespace Ffmpeg
 | 
					} // namespace Ffmpeg
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user