Control: tags -1 patch Sorry, I swear I got a successful local build with this patch, but it's incomplete and the package still fails to build. Investigating further.
On Wed, Jul 20, 2022 at 05:42:12AM -0700, Steve Langasek wrote: > Package: aiscm > Version: 0.23.1-1 > Followup-For: Bug #1004784 > User: ubuntu-de...@lists.ubuntu.com > Usertags: origin-ubuntu kinetic ubuntu-patch > Control: tags -1 patch > > Please see attached a patch that fixes this build failure. It has been > uploaded to Ubuntu for the ffmpeg 5.0 transition. > > Thanks, > -- > Steve Langasek Give me a lever long enough and a Free OS > Debian Developer to set it on, and I can move the world. > Ubuntu Developer https://www.debian.org/ > slanga...@ubuntu.com vor...@debian.org > diff -Nru aiscm-0.23.1/debian/patches/ffmpeg-5.0.patch > aiscm-0.23.1/debian/patches/ffmpeg-5.0.patch > --- aiscm-0.23.1/debian/patches/ffmpeg-5.0.patch 1969-12-31 > 16:00:00.000000000 -0800 > +++ aiscm-0.23.1/debian/patches/ffmpeg-5.0.patch 2022-07-20 > 05:38:19.000000000 -0700 > @@ -0,0 +1,152 @@ > +Description: compatibility with FFMpeg 5.0 > + AVCodecContext is now available only as a struct, not a raw type. > +Author: Steve Langasek <steve.langa...@ubuntu.com> > +Bug-Debian: https://bugs.debian.org/1004784 > +Last-Update: 2022-07-20 > +Forwarded: no > + > +Index: aiscm-0.23.1/aiscm/ffmpeg.c > +=================================================================== > +--- aiscm-0.23.1.orig/aiscm/ffmpeg.c > ++++ aiscm-0.23.1/aiscm/ffmpeg.c > +@@ -60,8 +60,8 @@ > + > + struct ffmpeg_t { > + AVFormatContext *fmt_ctx; > +- AVCodecContext *video_codec_ctx; > +- AVCodecContext *audio_codec_ctx; > ++ struct AVCodecContext *video_codec_ctx; > ++ struct AVCodecContext *audio_codec_ctx; > + int video_stream_idx; > + int audio_stream_idx; > + long output_video_pts; > +@@ -94,14 +94,14 @@ > + return get_self_no_check(scm_self); > + } > + > +-static AVCodecContext *video_codec_ctx(struct ffmpeg_t *self) > ++static struct AVCodecContext *video_codec_ctx(struct ffmpeg_t *self) > + { > + if (!self->video_codec_ctx) > + scm_misc_error("video-codec-ctx", "File format does not have a video > stream", SCM_EOL); > + return self->video_codec_ctx; > + } > + > +-static AVCodecContext *audio_codec_ctx(struct ffmpeg_t *self) > ++static struct AVCodecContext *audio_codec_ctx(struct ffmpeg_t *self) > + { > + if (!self->audio_codec_ctx) > + scm_misc_error("audio-codec-ctx", "File format does not have an audio > stream", SCM_EOL); > +@@ -127,7 +127,7 @@ > + return self->fmt_ctx->iformat != NULL; > + } > + > +-static void write_frame(struct ffmpeg_t *self, AVPacket *packet, > AVCodecContext *codec, AVStream *stream, int stream_idx) > ++static void write_frame(struct ffmpeg_t *self, AVPacket *packet, struct > AVCodecContext *codec, AVStream *stream, int stream_idx) > + { > + #ifdef HAVE_AV_PACKET_RESCALE_TS > + av_packet_rescale_ts(packet, codec->time_base, stream->time_base); > +@@ -144,7 +144,7 @@ > + > + static int encode_video(struct ffmpeg_t *self, AVFrame *video_frame) > + { > +- AVCodecContext *codec = video_codec_ctx(self); > ++ struct AVCodecContext *codec = video_codec_ctx(self); > + > + // Initialise data packet > + AVPacket pkt = { 0 }; > +@@ -166,7 +166,7 @@ > + > + static int encode_audio(struct ffmpeg_t *self, AVFrame *audio_frame) > + { > +- AVCodecContext *codec = audio_codec_ctx(self); > ++ struct AVCodecContext *codec = audio_codec_ctx(self); > + > + // Initialise data packet > + AVPacket pkt = { 0 }; > +@@ -267,7 +267,7 @@ > + return 0; > + } > + > +-static AVCodecContext *open_codec(SCM scm_self, AVCodecContext *codec_ctx, > AVCodec *codec, > ++static struct AVCodecContext *open_codec(SCM scm_self, struct > AVCodecContext *codec_ctx, AVCodec *codec, > + const char *media_type, SCM scm_file_name) > + { > + int err = avcodec_open2(codec_ctx, codec, NULL); > +@@ -279,10 +279,10 @@ > + return codec_ctx; > + } > + > +-static AVCodecContext *open_decoder(SCM scm_self, SCM scm_file_name, > ++static struct AVCodecContext *open_decoder(SCM scm_self, SCM scm_file_name, > + AVStream *stream, const char > *media_type) > + { > +- AVCodecContext *dec_ctx = stream->codec; > ++ struct AVCodecContext *dec_ctx = stream->codec; > + AVCodec *decoder = avcodec_find_decoder(dec_ctx->codec_id); > + if (!decoder) { > + ffmpeg_destroy(scm_self); > +@@ -387,11 +387,11 @@ > + return retval; > + } > + > +-static AVCodecContext *configure_output_video_codec(AVStream *video_stream, > enum AVCodecID video_codec_id, > ++static struct AVCodecContext *configure_output_video_codec(AVStream > *video_stream, enum AVCodecID video_codec_id, > + SCM scm_video_bit_rate, SCM scm_shape, SCM scm_frame_rate, SCM > scm_aspect_ratio) > + { > + // Get codec context > +- AVCodecContext *retval = video_stream->codec; > ++ struct AVCodecContext *retval = video_stream->codec; > + > + // Set codec id > + retval->codec_id = video_codec_id; > +@@ -427,11 +427,11 @@ > + return retval; > + } > + > +-static AVCodecContext *configure_output_audio_codec(SCM scm_self, AVStream > *audio_stream, enum AVCodecID audio_codec_id, > ++static struct AVCodecContext *configure_output_audio_codec(SCM scm_self, > AVStream *audio_stream, enum AVCodecID audio_codec_id, > + SCM scm_select_rate, SCM scm_channels, SCM scm_audio_bit_rate, SCM > scm_select_format) > + { > + // Get codec context > +- AVCodecContext *retval = audio_stream->codec; > ++ struct AVCodecContext *retval = audio_stream->codec; > + const AVCodec *codec = retval->codec; > + > + // Select sample format > +@@ -471,7 +471,7 @@ > + return retval; > + } > + > +-static AVFrame *allocate_output_video_frame(SCM scm_self, AVCodecContext > *video_context) > ++static AVFrame *allocate_output_video_frame(SCM scm_self, struct > AVCodecContext *video_context) > + { > + AVFrame *retval = allocate_frame(scm_self); > + int width = video_context->width; > +@@ -498,7 +498,7 @@ > + return retval; > + } > + > +-static AVFrame *allocate_output_audio_frame(SCM scm_self, AVCodecContext > *audio_codec, enum AVSampleFormat sample_fmt) > ++static AVFrame *allocate_output_audio_frame(SCM scm_self, struct > AVCodecContext *audio_codec, enum AVSampleFormat sample_fmt) > + { > + AVFrame *retval = allocate_frame(scm_self); > + retval->format = sample_fmt; > +@@ -683,7 +683,7 @@ > + > + SCM ffmpeg_shape(SCM scm_self) > + { > +- AVCodecContext *ctx = video_codec_ctx(get_self(scm_self)); > ++ struct AVCodecContext *ctx = video_codec_ctx(get_self(scm_self)); > + return scm_list_2(scm_from_int(ctx->height), scm_from_int(ctx->width)); > + } > + > +@@ -975,7 +975,7 @@ > + SCM ffmpeg_encode_audio(SCM scm_self) > + { > + struct ffmpeg_t *self = get_self(scm_self); > +- AVCodecContext *codec = audio_codec_ctx(self); > ++ struct AVCodecContext *codec = audio_codec_ctx(self); > + AVFrame *audio_frame = self->audio_target_frame; > + audio_frame->pts = av_rescale_q(self->samples_count, (AVRational){1, > codec->sample_rate}, codec->time_base); > + self->samples_count += audio_frame->nb_samples; > diff -Nru aiscm-0.23.1/debian/patches/series > aiscm-0.23.1/debian/patches/series > --- aiscm-0.23.1/debian/patches/series 1969-12-31 16:00:00.000000000 > -0800 > +++ aiscm-0.23.1/debian/patches/series 2022-07-20 05:34:18.000000000 > -0700 > @@ -0,0 +1 @@ > +ffmpeg-5.0.patch -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer https://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
signature.asc
Description: PGP signature