From b9c66c16bce5d56e7077bf8f15a70f09787ee93b Mon Sep 17 00:00:00 2001
From: Andrew Randrianasulu <randrianasulu@gmail.com>
Date: Thu, 7 Apr 2022 21:32:17 +0300
Subject: [PATCH 64/66] ffmpeg.git conditional fixes

---
 cinelerra-5.1/cinelerra/fileac3.h       | 4 ++++
 cinelerra-5.1/cinelerra/pluginfclient.C | 8 ++++++++
 2 files changed, 12 insertions(+)

diff --git a/cinelerra-5.1/cinelerra/fileac3.h b/cinelerra-5.1/cinelerra/fileac3.h
index 8ae62c76..9355f312 100644
--- a/cinelerra-5.1/cinelerra/fileac3.h
+++ b/cinelerra-5.1/cinelerra/fileac3.h
@@ -60,7 +60,11 @@ public:
 
 private:
 	AVPacket avpkt;
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59,16,100)
+	const AVCodec *codec;
+#else
 	AVCodec *codec;
+#endif
 	AVCodecContext *codec_context;
 	SwrContext *resample_context;
 
diff --git a/cinelerra-5.1/cinelerra/pluginfclient.C b/cinelerra-5.1/cinelerra/pluginfclient.C
index f4d9ba3a..32c3f4aa 100644
--- a/cinelerra-5.1/cinelerra/pluginfclient.C
+++ b/cinelerra-5.1/cinelerra/pluginfclient.C
@@ -913,14 +913,22 @@ int PluginFAClient::get_inchannels()
 {
 	AVFilterContext *fctx = ffilt->fctx;
 	AVFilterLink **links = !fctx->nb_inputs ? 0 : fctx->inputs;
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59,24,100)
+	return !links ? 0 : links[0]->ch_layout.nb_channels;
+#else
 	return !links ? 0 : links[0]->channels;
+#endif
 }
 
 int PluginFAClient::get_outchannels()
 {
 	AVFilterContext *fctx = ffilt->fctx;
 	AVFilterLink **links = !fctx->nb_outputs ? 0 : fctx->outputs;
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59,24,100)
+	return !links ? 0 : links[0]->ch_layout.nb_channels;
+#else
 	return !links ? 0 : links[0]->channels;
+#endif
 }
 
 int PluginFAClient::process_buffer(int64_t size, Samples **buffer, int64_t start_position, int sample_rate)
-- 
2.35.1

