Files
2026-10-04 04:07:15 +00:00

26 lines
755 B
C

--- a52/pcm_a52.c.orig 2024-06-10 09:18:39 UTC
+++ a52/pcm_a52.c
@@ -1202,7 +1202,22 @@ SND_PCM_PLUGIN_DEFINE_FUNC(a52)
rec->io.flags = SND_PCM_IOPLUG_FLAG_BOUNDARY_WA;
#endif
#ifdef USE_AVCODEC_FRAME
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(61, 13, 100)
+ {
+ const enum AVSampleFormat *sample_fmts = NULL;
+ err = avcodec_get_supported_config(NULL, rec->codec,
+ AV_CODEC_CONFIG_SAMPLE_FORMAT,
+ 0, (const void **)&sample_fmts,
+ NULL);
+ if (err < 0 || !sample_fmts) {
+ err = -EINVAL;
+ goto error;
+ }
+ rec->av_format = sample_fmts[0];
+ }
+#else
rec->av_format = rec->codec->sample_fmts[0];
+#endif
rec->is_planar = av_sample_fmt_is_planar(rec->av_format);
#else
rec->av_format = AV_SAMPLE_FMT_S16;