--- ffmpeg.c | 8 +++++++- libavdevice/iec61883.c | 4 ++++ libavformat/mux.c | 4 ++++ libavformat/tee.c | 8 +++++++- 4 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/ffmpeg.c b/ffmpeg.c index 434abd4..6937a00 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -692,7 +692,13 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost) &new_pkt.data, &new_pkt.size, pkt->data, pkt->size, pkt->flags & AV_PKT_FLAG_KEY); - if(a == 0 && new_pkt.data != pkt->data && new_pkt.destruct) { +FF_DISABLE_DEPRECATION_WARNINGS + if(a == 0 && new_pkt.data != pkt->data +#if FF_API_DESTRUCT_PACKET + && new_pkt.destruct +#endif + ) { +FF_ENABLE_DEPRECATION_WARNINGS uint8_t *t = av_malloc(new_pkt.size + AV_INPUT_BUFFER_PADDING_SIZE); //the new should be a subset of the old so cannot overflow if(t) { memcpy(t, new_pkt.data, new_pkt.size); diff --git a/libavdevice/iec61883.c b/libavdevice/iec61883.c index 5c74cc7..8ee834e 100644 --- a/libavdevice/iec61883.c +++ b/libavdevice/iec61883.c @@ -198,7 +198,11 @@ static int iec61883_parse_queue_dv(struct iec61883_data *dv, AVPacket *pkt) size = avpriv_dv_produce_packet(dv->dv_demux, pkt, packet->buf, packet->len, -1); +#if FF_API_DESTRUCT_PACKET +FF_DISABLE_DEPRECATION_WARNINGS pkt->destruct = av_destruct_packet; +FF_ENABLE_DEPRECATION_WARNINGS +#endif dv->queue_first = packet->next; av_free(packet); dv->packets--; diff --git a/libavformat/mux.c b/libavformat/mux.c index 909617f..7aa3064 100644 --- a/libavformat/mux.c +++ b/libavformat/mux.c @@ -1043,7 +1043,11 @@ int ff_write_chained(AVFormatContext *dst, int dst_stream, AVPacket *pkt, if (interleave) ret = av_interleaved_write_frame(dst, &local_pkt); else ret = av_write_frame(dst, &local_pkt); pkt->buf = local_pkt.buf; +#if FF_API_DESTRUCT_PACKET +FF_DISABLE_DEPRECATION_WARNINGS pkt->destruct = local_pkt.destruct; +FF_ENABLE_DEPRECATION_WARNINGS +#endif return ret; } diff --git a/libavformat/tee.c b/libavformat/tee.c index e3d466a..bc2e522 100644 --- a/libavformat/tee.c +++ b/libavformat/tee.c @@ -396,7 +396,13 @@ static int filter_packet(void *log_ctx, AVPacket *pkt, &new_pkt.data, &new_pkt.size, pkt->data, pkt->size, pkt->flags & AV_PKT_FLAG_KEY); - if (ret == 0 && new_pkt.data != pkt->data && new_pkt.destruct) { +FF_DISABLE_DEPRECATION_WARNINGS + if (ret == 0 && new_pkt.data != pkt->data +#if FF_API_DESTRUCT_PACKET + && new_pkt.destruct +#endif + ) { +FF_ENABLE_DEPRECATION_WARNINGS if ((ret = av_copy_packet(&new_pkt, pkt)) < 0) break; ret = 1; -- 2.4.6 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel