diff --git a/doc/examples/decoding_encoding.c b/doc/examples/decoding_encoding.c index 4ce3b26795..06a98a630e 100644 --- a/doc/examples/decoding_encoding.c +++ b/doc/examples/decoding_encoding.c @@ -211,7 +211,7 @@ static void audio_encode_example(const char *filename) } if (got_output) { fwrite(pkt.data, 1, pkt.size, f); - av_free_packet(&pkt); + av_packet_unref(&pkt); } } diff --git a/doc/examples/demuxing_decoding.c b/doc/examples/demuxing_decoding.c index e6624076cf..59e0ccc986 100644 --- a/doc/examples/demuxing_decoding.c +++ b/doc/examples/demuxing_decoding.c @@ -326,7 +326,7 @@ int main (int argc, char **argv) pkt.data += ret; pkt.size -= ret; } while (pkt.size > 0); - av_free_packet(&orig_pkt); + av_packet_unref(&orig_pkt); } /* flush cached frames */ diff --git a/doc/examples/extract_mvs.c b/doc/examples/extract_mvs.c index d6fd61335e..975189c77d 100644 --- a/doc/examples/extract_mvs.c +++ b/doc/examples/extract_mvs.c @@ -167,7 +167,7 @@ int main(int argc, char **argv) pkt.data += ret; pkt.size -= ret; } while (pkt.size > 0); - av_free_packet(&orig_pkt); + av_packet_unref(&orig_pkt); } /* flush cached frames */ diff --git a/doc/examples/filtering_audio.c b/doc/examples/filtering_audio.c index 6c74ec326d..89c80cfd55 100644 --- a/doc/examples/filtering_audio.c +++ b/doc/examples/filtering_audio.c @@ -273,10 +273,10 @@ int main(int argc, char **argv) } if (packet.size <= 0) - av_free_packet(&packet0); + av_packet_unref(&packet0); } else { /* discard non-wanted packets */ - av_free_packet(&packet0); + av_packet_unref(&packet0); } } end: diff --git a/doc/examples/filtering_video.c b/doc/examples/filtering_video.c index 5600572dec..3dabf13b10 100644 --- a/doc/examples/filtering_video.c +++ b/doc/examples/filtering_video.c @@ -262,7 +262,7 @@ int main(int argc, char **argv) av_frame_unref(frame); } } - av_free_packet(&packet); + av_packet_unref(&packet); } end: avfilter_graph_free(&filter_graph); diff --git a/doc/examples/remuxing.c b/doc/examples/remuxing.c index 33037f77ad..65437d9abd 100644 --- a/doc/examples/remuxing.c +++ b/doc/examples/remuxing.c @@ -143,7 +143,7 @@ int main(int argc, char **argv) fprintf(stderr, "Error muxing packet\n"); break; } - av_free_packet(&pkt); + av_packet_unref(&pkt); } av_write_trailer(ofmt_ctx); diff --git a/doc/examples/transcoding.c b/doc/examples/transcoding.c index 20c9e272ca..d5d410b168 100644 --- a/doc/examples/transcoding.c +++ b/doc/examples/transcoding.c @@ -536,7 +536,7 @@ int main(int argc, char **argv) if (ret < 0) goto end; } - av_free_packet(&packet); + av_packet_unref(&packet); } /* flush filters and encoders */ @@ -560,7 +560,7 @@ int main(int argc, char **argv) av_write_trailer(ofmt_ctx); end: - av_free_packet(&packet); + av_packet_unref(&packet); av_frame_free(&frame); for (i = 0; i < ifmt_ctx->nb_streams; i++) { avcodec_close(ifmt_ctx->streams[i]->codec); diff --git a/ffmpeg.c b/ffmpeg.c index d4c6ec8420..f91fb7b7d4 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -653,7 +653,7 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost) */ if (!(avctx->codec_type == AVMEDIA_TYPE_VIDEO && avctx->codec)) { if (ost->frame_number >= ost->max_frames) { - av_free_packet(pkt); + av_packet_unref(pkt); return; } ost->frame_number++; @@ -700,7 +700,7 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost) if (a > 0) { pkt->side_data = NULL; pkt->side_data_elems = 0; - av_free_packet(pkt); + av_packet_unref(pkt); new_pkt.buf = av_buffer_create(new_pkt.data, new_pkt.size, av_buffer_default_free, NULL, 0); if (!new_pkt.buf) @@ -777,7 +777,7 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost) main_return_code = 1; close_all_output_streams(ost, MUXER_FINISHED | ENCODER_FINISHED, ENCODER_FINISHED); } - av_free_packet(pkt); + av_packet_unref(pkt); } static void close_output_stream(OutputStream *ost) @@ -1754,7 +1754,7 @@ static void flush_encoders(void) break; } if (ost->finished & MUXER_FINISHED) { - av_free_packet(&pkt); + av_packet_unref(&pkt); continue; } av_packet_rescale_ts(&pkt, enc->time_base, ost->st->time_base); @@ -3521,7 +3521,7 @@ static void *input_thread(void *arg) av_log(f->ctx, AV_LOG_ERROR, "Unable to send packet to main thread: %s\n", av_err2str(ret)); - av_free_packet(&pkt); + av_packet_unref(&pkt); av_thread_message_queue_set_err_recv(f->in_thread_queue, ret); break; } @@ -3542,7 +3542,7 @@ static void free_input_threads(void) continue; av_thread_message_queue_set_err_send(f->in_thread_queue, AVERROR_EOF); while (av_thread_message_queue_recv(f->in_thread_queue, &pkt, 0) >= 0) - av_free_packet(&pkt); + av_packet_unref(&pkt); pthread_join(f->thread, NULL); f->joined = 1; @@ -3945,7 +3945,7 @@ static int process_input(int file_index) process_input_packet(ist, &pkt, 0); discard_packet: - av_free_packet(&pkt); + av_packet_unref(&pkt); return 0; } diff --git a/ffplay.c b/ffplay.c index e0bcc7c392..2c1817ef0b 100644 --- a/ffplay.c +++ b/ffplay.c @@ -432,7 +432,7 @@ static int packet_queue_put(PacketQueue *q, AVPacket *pkt) SDL_UnlockMutex(q->mutex); if (pkt != &flush_pkt && ret < 0) - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } @@ -472,7 +472,7 @@ static void packet_queue_flush(PacketQueue *q) SDL_LockMutex(q->mutex); for (pkt = q->first_pkt; pkt; pkt = pkt1) { pkt1 = pkt->next; - av_free_packet(&pkt->pkt); + av_packet_unref(&pkt->pkt); av_freep(&pkt); } q->last_pkt = NULL; @@ -577,7 +577,7 @@ static int decoder_decode_frame(Decoder *d, AVFrame *frame, AVSubtitle *sub) { d->next_pts_tb = d->start_pts_tb; } } while (pkt.data == flush_pkt.data || d->queue->serial != d->pkt_serial); - av_free_packet(&d->pkt); + av_packet_unref(&d->pkt); d->pkt_temp = d->pkt = pkt; d->packet_pending = 1; } @@ -641,7 +641,7 @@ static int decoder_decode_frame(Decoder *d, AVFrame *frame, AVSubtitle *sub) { } static void decoder_destroy(Decoder *d) { - av_free_packet(&d->pkt); + av_packet_unref(&d->pkt); } static void frame_queue_unref_item(Frame *vp) @@ -3119,7 +3119,7 @@ static int read_thread(void *arg) } else if (pkt->stream_index == is->subtitle_stream && pkt_in_play_range) { packet_queue_put(&is->subtitleq, pkt); } else { - av_free_packet(pkt); + av_packet_unref(pkt); } } diff --git a/ffserver.c b/ffserver.c index 1d4c8dc5b9..526cbfcae3 100644 --- a/ffserver.c +++ b/ffserver.c @@ -2318,7 +2318,7 @@ static int http_prepare_data(HTTPContext *c) c->packet_stream_index = pkt.stream_index; ctx = c->rtp_ctx[c->packet_stream_index]; if(!ctx) { - av_free_packet(&pkt); + av_packet_unref(&pkt); break; } codec = ctx->streams[0]->codec; @@ -2370,11 +2370,11 @@ static int http_prepare_data(HTTPContext *c) codec->frame_number++; if (len == 0) { - av_free_packet(&pkt); + av_packet_unref(&pkt); goto redo; } } - av_free_packet(&pkt); + av_packet_unref(&pkt); } } break; @@ -3548,7 +3548,7 @@ static void extract_mpeg4_header(AVFormatContext *infile) } mpeg4_count--; } - av_free_packet(&pkt); + av_packet_unref(&pkt); } } diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index 648dc10076..a87150ed82 100644 --- a/libavcodec/avpacket.c +++ b/libavcodec/avpacket.c @@ -179,7 +179,7 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) return 0; failed_alloc: - av_free_packet(pkt); + av_packet_unref(pkt); return AVERROR(ENOMEM); } @@ -342,7 +342,7 @@ int av_packet_merge_side_data(AVPacket *pkt){ bytestream_put_be64(&p, FF_MERGE_MARKER); av_assert0(p-pkt->data == pkt->size); memset(p, 0, AV_INPUT_BUFFER_PADDING_SIZE); - av_free_packet(&old); + av_packet_unref(&old); pkt->side_data_elems = 0; pkt->side_data = NULL; return 1; diff --git a/libavcodec/libopusenc.c b/libavcodec/libopusenc.c index 8ac02f9520..3f3e80d4a0 100644 --- a/libavcodec/libopusenc.c +++ b/libavcodec/libopusenc.c @@ -361,7 +361,7 @@ static int libopus_encode(AVCodecContext *avctx, AVPacket *avpkt, discard_padding = opus->opts.packet_size - avpkt->duration; // Check if subtraction resulted in an overflow if ((discard_padding < opus->opts.packet_size) != (avpkt->duration > 0)) { - av_free_packet(avpkt); + av_packet_unref(avpkt); av_free(avpkt); return AVERROR(EINVAL); } @@ -370,7 +370,7 @@ static int libopus_encode(AVCodecContext *avctx, AVPacket *avpkt, AV_PKT_DATA_SKIP_SAMPLES, 10); if(!side_data) { - av_free_packet(avpkt); + av_packet_unref(avpkt); av_free(avpkt); return AVERROR(ENOMEM); } diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c index 992122c982..887cc33c20 100644 --- a/libavcodec/libvpxenc.c +++ b/libavcodec/libvpxenc.c @@ -733,7 +733,7 @@ FF_ENABLE_DEPRECATION_WARNINGS AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, cx_frame->sz_alpha + 8); if(!side_data) { - av_free_packet(pkt); + av_packet_unref(pkt); av_free(pkt); return AVERROR(ENOMEM); } diff --git a/libavcodec/utils.c b/libavcodec/utils.c index b4709cb3cb..dca0c9a32c 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -2353,7 +2353,7 @@ static int recode_subtitle(AVCodecContext *avctx, ret = FFMIN(AVERROR(errno), -1); av_log(avctx, AV_LOG_ERROR, "Unable to recode subtitle event \"%s\" " "from %s to UTF-8\n", inpkt->data, avctx->sub_charenc); - av_free_packet(&tmp); + av_packet_unref(&tmp); goto end; } outpkt->size -= outl; @@ -2460,7 +2460,7 @@ int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, pkt_recoded.side_data = NULL; pkt_recoded.side_data_elems = 0; - av_free_packet(&pkt_recoded); + av_packet_unref(&pkt_recoded); } if (avctx->codec_descriptor->props & AV_CODEC_PROP_BITMAP_SUB) sub->format = 0; diff --git a/libavdevice/decklink_dec.cpp b/libavdevice/decklink_dec.cpp index 747f47e582..89f93de453 100644 --- a/libavdevice/decklink_dec.cpp +++ b/libavdevice/decklink_dec.cpp @@ -48,7 +48,7 @@ static void avpacket_queue_flush(AVPacketQueue *q) pthread_mutex_lock(&q->mutex); for (pkt = q->first_pkt; pkt != NULL; pkt = pkt1) { pkt1 = pkt->next; - av_free_packet(&pkt->pkt); + av_packet_unref(&pkt->pkt); av_freep(&pkt); } q->last_pkt = NULL; diff --git a/libavdevice/dshow.c b/libavdevice/dshow.c index 31764a9637..b280bc314d 100644 --- a/libavdevice/dshow.c +++ b/libavdevice/dshow.c @@ -119,7 +119,7 @@ dshow_read_close(AVFormatContext *s) pktl = ctx->pktl; while (pktl) { AVPacketList *next = pktl->next; - av_free_packet(&pktl->pkt); + av_packet_unref(&pktl->pkt); av_free(pktl); pktl = next; } diff --git a/libavdevice/openal-dec.c b/libavdevice/openal-dec.c index cab1eb6915..e4daf53250 100644 --- a/libavdevice/openal-dec.c +++ b/libavdevice/openal-dec.c @@ -204,7 +204,7 @@ static int read_packet(AVFormatContext* ctx, AVPacket *pkt) fail: /* Handle failure */ if (pkt->data) - av_free_packet(pkt); + av_packet_unref(pkt); if (error_msg) av_log(ctx, AV_LOG_ERROR, "Error: %s\n", error_msg); return error; diff --git a/libavfilter/lavfutils.c b/libavfilter/lavfutils.c index 9952e6eab6..706badf63d 100644 --- a/libavfilter/lavfutils.c +++ b/libavfilter/lavfutils.c @@ -95,7 +95,7 @@ int ff_load_image(uint8_t *data[4], int linesize[4], av_image_copy(data, linesize, (const uint8_t **)frame->data, frame->linesize, *pix_fmt, *w, *h); end: - av_free_packet(&pkt); + av_packet_unref(&pkt); avcodec_close(codec_ctx); avformat_close_input(&format_ctx); av_frame_free(&frame); diff --git a/libavfilter/src_movie.c b/libavfilter/src_movie.c index 0c2ceed316..82d2bcda10 100644 --- a/libavfilter/src_movie.c +++ b/libavfilter/src_movie.c @@ -490,7 +490,7 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) pkt_out_id = pkt->stream_index > movie->max_stream_index ? -1 : movie->out_index[pkt->stream_index]; if (pkt_out_id < 0) { - av_free_packet(&movie->pkt0); + av_packet_unref(&movie->pkt0); pkt->size = 0; /* ready for next run */ pkt->data = NULL; return 0; @@ -517,7 +517,7 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) if (ret < 0) { av_log(ctx, AV_LOG_WARNING, "Decode error: %s\n", av_err2str(ret)); av_frame_free(&frame); - av_free_packet(&movie->pkt0); + av_packet_unref(&movie->pkt0); movie->pkt.size = 0; movie->pkt.data = NULL; return 0; @@ -528,7 +528,7 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) pkt->data += ret; pkt->size -= ret; if (pkt->size <= 0) { - av_free_packet(&movie->pkt0); + av_packet_unref(&movie->pkt0); pkt->size = 0; /* ready for next run */ pkt->data = NULL; } diff --git a/libavfilter/vf_mcdeint.c b/libavfilter/vf_mcdeint.c index 38a299ea4c..e1c865a30a 100644 --- a/libavfilter/vf_mcdeint.c +++ b/libavfilter/vf_mcdeint.c @@ -277,7 +277,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *inpic) mcdeint->parity ^= 1; end: - av_free_packet(&pkt); + av_packet_unref(&pkt); av_frame_free(&inpic); if (ret < 0) { av_frame_free(&outpic); diff --git a/libavfilter/vf_subtitles.c b/libavfilter/vf_subtitles.c index b0d016c0e5..63b22c3721 100644 --- a/libavfilter/vf_subtitles.c +++ b/libavfilter/vf_subtitles.c @@ -444,7 +444,7 @@ static av_cold int init_subtitles(AVFilterContext *ctx) } } } - av_free_packet(&pkt); + av_packet_unref(&pkt); avsubtitle_free(&sub); } diff --git a/libavformat/adp.c b/libavformat/adp.c index 8a3661ae15..f53375aea0 100644 --- a/libavformat/adp.c +++ b/libavformat/adp.c @@ -78,7 +78,7 @@ static int adp_read_packet(AVFormatContext *s, AVPacket *pkt) if (ret != size) { if (ret < 0) { - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } av_shrink_packet(pkt, ret); diff --git a/libavformat/aiffenc.c b/libavformat/aiffenc.c index 3abd2840f2..09d91a7e4d 100644 --- a/libavformat/aiffenc.c +++ b/libavformat/aiffenc.c @@ -293,7 +293,7 @@ static int aiff_write_trailer(AVFormatContext *s) while (pict_list) { AVPacketList *next = pict_list->next; - av_free_packet(&pict_list->pkt); + av_packet_unref(&pict_list->pkt); av_freep(&pict_list); pict_list = next; } diff --git a/libavformat/ape.c b/libavformat/ape.c index 69b001a578..352ddc6d77 100644 --- a/libavformat/ape.c +++ b/libavformat/ape.c @@ -418,7 +418,7 @@ static int ape_read_packet(AVFormatContext * s, AVPacket * pkt) AV_WL32(pkt->data + 4, ape->frames[ape->currentframe].skip); ret = avio_read(s->pb, pkt->data + extra_size, ape->frames[ape->currentframe].size); if (ret < 0) { - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } diff --git a/libavformat/apngenc.c b/libavformat/apngenc.c index 9b2c634b95..4326a7cd3b 100644 --- a/libavformat/apngenc.c +++ b/libavformat/apngenc.c @@ -192,7 +192,7 @@ static void flush_packet(AVFormatContext *format_context, AVPacket *packet) } ++apng->frame_number; - av_free_packet(apng->prev_packet); + av_packet_unref(apng->prev_packet); if (packet) av_copy_packet(apng->prev_packet, packet); } diff --git a/libavformat/asfdec_f.c b/libavformat/asfdec_f.c index 7c31cfaee4..3865b0ed17 100644 --- a/libavformat/asfdec_f.c +++ b/libavformat/asfdec_f.c @@ -298,7 +298,7 @@ static int asf_read_picture(AVFormatContext *s, int len) fail: av_freep(&desc); - av_free_packet(&pkt); + av_packet_unref(&pkt); return ret; } @@ -852,7 +852,7 @@ static int asf_read_header(AVFormatContext *s) if ((ret = av_get_packet(pb, &pkt, len)) < 0) return ret; av_hex_dump_log(s, AV_LOG_DEBUG, pkt.data, pkt.size); - av_free_packet(&pkt); + av_packet_unref(&pkt); len= avio_rl32(pb); get_tag(s, "ASF_Protection_Type", -1, len, 32); len= avio_rl32(pb); @@ -1288,7 +1288,7 @@ static int asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pkt) "freeing incomplete packet size %d, new %d\n", asf_st->pkt.size, asf_st->packet_obj_size); asf_st->frag_offset = 0; - av_free_packet(&asf_st->pkt); + av_packet_unref(&asf_st->pkt); } /* new packet */ if ((ret = av_new_packet(&asf_st->pkt, asf_st->packet_obj_size)) < 0) @@ -1379,7 +1379,7 @@ static int asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pkt) if (i == asf_st->pkt.size) { av_log(s, AV_LOG_DEBUG, "discarding ms fart\n"); asf_st->frag_offset = 0; - av_free_packet(&asf_st->pkt); + av_packet_unref(&asf_st->pkt); continue; } } @@ -1476,7 +1476,7 @@ static void asf_reset_header(AVFormatContext *s) for (i = 0; i < 128; i++) { asf_st = &asf->streams[i]; - av_free_packet(&asf_st->pkt); + av_packet_unref(&asf_st->pkt); asf_st->packet_obj_size = 0; asf_st->frag_offset = 0; asf_st->seq = 0; @@ -1538,7 +1538,7 @@ static int64_t asf_read_pts(AVFormatContext *s, int stream_index, pts = pkt->dts; - av_free_packet(pkt); + av_packet_unref(pkt); if (pkt->flags & AV_PKT_FLAG_KEY) { i = pkt->stream_index; diff --git a/libavformat/avidec.c b/libavformat/avidec.c index d240fa68bd..b7bd54dedf 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -1496,7 +1496,7 @@ resync: } if (!avi->non_interleaved && pkt->pos >= 0 && ast->seek_pos > pkt->pos) { - av_free_packet(pkt); + av_packet_unref(pkt); goto resync; } ast->seek_pos= 0; diff --git a/libavformat/brstm.c b/libavformat/brstm.c index a781163f95..4ac9881c99 100644 --- a/libavformat/brstm.c +++ b/libavformat/brstm.c @@ -412,7 +412,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) dst += size; avio_skip(s->pb, skip); if (ret != size) { - av_free_packet(pkt); + av_packet_unref(pkt); break; } } diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c index 7686f28c62..0180a7e50f 100644 --- a/libavformat/concatdec.c +++ b/libavformat/concatdec.c @@ -511,7 +511,7 @@ static int filter_packet(AVFormatContext *avf, ConcatStream *cs, AVPacket *pkt) ret = 1; } if (ret > 0) { - av_free_packet(pkt); + av_packet_unref(pkt); pkt2.buf = av_buffer_create(pkt2.data, pkt2.size, av_buffer_default_free, NULL, 0); if (!pkt2.buf) { diff --git a/libavformat/electronicarts.c b/libavformat/electronicarts.c index ae180f6de3..8601782afa 100644 --- a/libavformat/electronicarts.c +++ b/libavformat/electronicarts.c @@ -612,7 +612,7 @@ static int ea_read_packet(AVFormatContext *s, AVPacket *pkt) if (partial_packet) { avpriv_request_sample(s, "video header followed by audio packet"); - av_free_packet(pkt); + av_packet_unref(pkt); partial_packet = 0; } @@ -736,7 +736,7 @@ get_video_packet: } if (ret < 0 && partial_packet) - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } diff --git a/libavformat/ffmdec.c b/libavformat/ffmdec.c index b743c872c0..59443b6985 100644 --- a/libavformat/ffmdec.c +++ b/libavformat/ffmdec.c @@ -632,7 +632,7 @@ static int ffm_read_packet(AVFormatContext *s, AVPacket *pkt) pkt->stream_index = ffm->header[0]; if ((unsigned)pkt->stream_index >= s->nb_streams) { av_log(s, AV_LOG_ERROR, "invalid stream index %d\n", pkt->stream_index); - av_free_packet(pkt); + av_packet_unref(pkt); ffm->read_state = READ_HEADER; return -1; } @@ -643,7 +643,7 @@ static int ffm_read_packet(AVFormatContext *s, AVPacket *pkt) ffm->read_state = READ_HEADER; if (ffm_read_data(s, pkt->data, size, 0) != size) { /* bad case: desynchronized packet. we cancel all the packet loading */ - av_free_packet(pkt); + av_packet_unref(pkt); return -1; } pkt->pts = AV_RB64(ffm->header+8); diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c index 4c7ee59ec5..cc3ed830a9 100644 --- a/libavformat/flacdec.c +++ b/libavformat/flacdec.c @@ -267,7 +267,7 @@ static av_unused int64_t flac_read_timestamp(AVFormatContext *s, int stream_inde &out_pkt.data, &out_pkt.size, pkt.data, pkt.size, pkt.pts, pkt.dts, *ppos); - av_free_packet(&pkt); + av_packet_unref(&pkt); if (out_pkt.size){ int size = out_pkt.size; if (parser->pts != AV_NOPTS_VALUE){ diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index 7b434498ea..ca73969315 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -1143,7 +1143,7 @@ leave: av_log(s, AV_LOG_ERROR, "Packet mismatch %d %d\n", last, orig_size + 11); avio_seek(s->pb, pos + 1, SEEK_SET); ret = resync(s); - av_free_packet(pkt); + av_packet_unref(pkt); if (ret >= 0) { goto retry; } diff --git a/libavformat/gif.c b/libavformat/gif.c index e5d558df07..6537e557d6 100644 --- a/libavformat/gif.c +++ b/libavformat/gif.c @@ -173,7 +173,7 @@ static int flush_packet(AVFormatContext *s, AVPacket *new) avio_write(pb, pkt->data, pkt->size); - av_free_packet(gif->prev_pkt); + av_packet_unref(gif->prev_pkt); if (new) av_copy_packet(gif->prev_pkt, new); diff --git a/libavformat/iff.c b/libavformat/iff.c index 5973cde8fe..2889083151 100644 --- a/libavformat/iff.c +++ b/libavformat/iff.c @@ -738,7 +738,7 @@ static int iff_read_packet(AVFormatContext *s, bytestream_put_be16(&buf, 2); ret = avio_read(pb, buf, iff->body_size); if (ret<0) { - av_free_packet(pkt); + av_packet_unref(pkt); } else if (ret < iff->body_size) av_shrink_packet(pkt, ret + 2); } else { diff --git a/libavformat/img2enc.c b/libavformat/img2enc.c index efc9304fe0..7f0ff19ba3 100644 --- a/libavformat/img2enc.c +++ b/libavformat/img2enc.c @@ -157,11 +157,11 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt) (ret = avformat_write_header(fmt, NULL)) < 0 || (ret = av_interleaved_write_frame(fmt, &pkt2)) < 0 || (ret = av_write_trailer(fmt)) < 0) { - av_free_packet(&pkt2); + av_packet_unref(&pkt2); avformat_free_context(fmt); return ret; } - av_free_packet(&pkt2); + av_packet_unref(&pkt2); avformat_free_context(fmt); } else { avio_write(pb[0], pkt->data, pkt->size); diff --git a/libavformat/libmodplug.c b/libavformat/libmodplug.c index 158a63039f..75699e89b4 100644 --- a/libavformat/libmodplug.c +++ b/libavformat/libmodplug.c @@ -325,7 +325,7 @@ static int modplug_read_packet(AVFormatContext *s, AVPacket *pkt) pkt->size = ModPlug_Read(modplug->f, pkt->data, AUDIO_PKT_SIZE); if (pkt->size <= 0) { - av_free_packet(pkt); + av_packet_unref(pkt); return pkt->size == 0 ? AVERROR_EOF : AVERROR(EIO); } return 0; diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 78ab28742e..8d7db90e1b 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -2750,7 +2750,7 @@ static int matroska_parse_frame(MatroskaDemuxContext *matroska, AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, additional_size + 8); if (!side_data) { - av_free_packet(pkt); + av_packet_unref(pkt); av_free(pkt); return AVERROR(ENOMEM); } @@ -2763,7 +2763,7 @@ static int matroska_parse_frame(MatroskaDemuxContext *matroska, AV_PKT_DATA_SKIP_SAMPLES, 10); if (!side_data) { - av_free_packet(pkt); + av_packet_unref(pkt); av_free(pkt); return AVERROR(ENOMEM); } diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 61dcf4c875..3646994c43 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -440,10 +440,10 @@ concatenate: return ret; if (info->num_blocks != 6) return 0; - av_free_packet(pkt); + av_packet_unref(pkt); if ((ret = av_copy_packet(pkt, &info->pkt)) < 0) return ret; - av_free_packet(&info->pkt); + av_packet_unref(&info->pkt); info->num_blocks = 0; } @@ -498,7 +498,7 @@ static int mov_write_eac3_tag(AVIOContext *pb, MOVTrack *track) av_free(buf); end: - av_free_packet(&info->pkt); + av_packet_unref(&info->pkt); av_freep(&track->eac3_priv); return size; @@ -4606,7 +4606,7 @@ static int mov_write_subtitle_end_packet(AVFormatContext *s, end.stream_index = stream_index; ret = mov_write_single_packet(s, &end); - av_free_packet(&end); + av_packet_unref(&end); return ret; } diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c index 55f2b3fb68..fb77d892d5 100644 --- a/libavformat/mpeg.c +++ b/libavformat/mpeg.c @@ -956,12 +956,12 @@ static int vobsub_read_packet(AVFormatContext *s, AVPacket *pkt) pkt->pos = idx_pkt.pos; pkt->stream_index = idx_pkt.stream_index; - av_free_packet(&idx_pkt); + av_packet_unref(&idx_pkt); return 0; fail: - av_free_packet(pkt); - av_free_packet(&idx_pkt); + av_packet_unref(pkt); + av_packet_unref(&idx_pkt); return ret; } diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 28ec43ee98..0f0f5036ca 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -2654,7 +2654,7 @@ static int mpegts_read_packet(AVFormatContext *s, AVPacket *pkt) ts->pkt = pkt; ret = handle_packets(ts, 0); if (ret < 0) { - av_free_packet(ts->pkt); + av_packet_unref(ts->pkt); /* flush pes data left */ for (i = 0; i < NB_PID_MAX; i++) if (ts->pids[i] && ts->pids[i]->type == MPEGTS_PES) { @@ -2743,7 +2743,7 @@ static int64_t mpegts_get_dts(AVFormatContext *s, int stream_index, ret = av_read_frame(s, &pkt); if (ret < 0) return AV_NOPTS_VALUE; - av_free_packet(&pkt); + av_packet_unref(&pkt); if (pkt.dts != AV_NOPTS_VALUE && pkt.pos >= 0) { ff_reduce_index(s, pkt.stream_index); av_add_index_entry(s->streams[pkt.stream_index], pkt.pos, pkt.dts, 0, 0, AVINDEX_KEYFRAME /* FIXME keyframe? */); diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c index deceb032e5..62427fc092 100644 --- a/libavformat/nutdec.c +++ b/libavformat/nutdec.c @@ -1157,7 +1157,7 @@ static int decode_frame(NUTContext *nut, AVPacket *pkt, int frame_code) return 0; fail: - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } diff --git a/libavformat/oggdec.c b/libavformat/oggdec.c index 9682ee9fca..2d99b4af25 100644 --- a/libavformat/oggdec.c +++ b/libavformat/oggdec.c @@ -844,7 +844,7 @@ retry: return psize; fail: - av_free_packet(pkt); + av_packet_unref(pkt); return AVERROR(ENOMEM); } diff --git a/libavformat/redspark.c b/libavformat/redspark.c index 66c2dc5aae..5cea6e96b9 100644 --- a/libavformat/redspark.c +++ b/libavformat/redspark.c @@ -148,7 +148,7 @@ static int redspark_read_packet(AVFormatContext *s, AVPacket *pkt) ret = av_get_packet(s->pb, pkt, size); if (ret != size) { - av_free_packet(pkt); + av_packet_unref(pkt); return AVERROR(EIO); } diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index 13702f25fc..4ec78efe69 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -783,7 +783,7 @@ static int rm_assemble_video_frame(AVFormatContext *s, AVIOContext *pb, AV_WL32(pkt->data + 1, 1); AV_WL32(pkt->data + 5, 0); if ((ret = avio_read(pb, pkt->data + 9, len)) != len) { - av_free_packet(pkt); + av_packet_unref(pkt); av_log(s, AV_LOG_ERROR, "Failed to read %d bytes\n", len); return ret < 0 ? ret : AVERROR(EIO); } diff --git a/libavformat/sdr2.c b/libavformat/sdr2.c index 82405f69d1..edb454caec 100644 --- a/libavformat/sdr2.c +++ b/libavformat/sdr2.c @@ -95,7 +95,7 @@ static int sdr2_read_packet(AVFormatContext *s, AVPacket *pkt) memcpy(pkt->data, header, 24); ret = avio_read(s->pb, pkt->data + 24, next - 52); if (ret < 0) { - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } av_shrink_packet(pkt, ret + 24); diff --git a/libavformat/siff.c b/libavformat/siff.c index b6ea390598..028f18be16 100644 --- a/libavformat/siff.c +++ b/libavformat/siff.c @@ -219,7 +219,7 @@ static int siff_read_packet(AVFormatContext *s, AVPacket *pkt) if (c->gmcsize) memcpy(pkt->data + 2, c->gmc, c->gmcsize); if (avio_read(s->pb, pkt->data + 2 + c->gmcsize, size) != size) { - av_free_packet(pkt); + av_packet_unref(pkt); return AVERROR_INVALIDDATA; } pkt->stream_index = 0; diff --git a/libavformat/subtitles.c b/libavformat/subtitles.c index bb8976682d..471d600c10 100644 --- a/libavformat/subtitles.c +++ b/libavformat/subtitles.c @@ -179,7 +179,7 @@ static void drop_dups(void *log_ctx, FFDemuxSubtitlesQueue *q) q->subs[i].stream_index == last->stream_index && !strcmp(q->subs[i].data, last->data)) { - av_free_packet(&q->subs[i]); + av_packet_unref(&q->subs[i]); drop++; } else if (drop) { q->subs[last_id + 1] = q->subs[i]; @@ -302,7 +302,7 @@ void ff_subtitles_queue_clean(FFDemuxSubtitlesQueue *q) int i; for (i = 0; i < q->nb_subs; i++) - av_free_packet(&q->subs[i]); + av_packet_unref(&q->subs[i]); av_freep(&q->subs); q->nb_subs = q->allocated_size = q->current_sub_idx = 0; } diff --git a/libavformat/swfdec.c b/libavformat/swfdec.c index 68cd8561fb..e596ffaa92 100644 --- a/libavformat/swfdec.c +++ b/libavformat/swfdec.c @@ -479,7 +479,7 @@ bitmap_end_skip: if ((res = av_new_packet(pkt, len)) < 0) return res; if (avio_read(pb, pkt->data, 4) != 4) { - av_free_packet(pkt); + av_packet_unref(pkt); return AVERROR_INVALIDDATA; } if (AV_RB32(pkt->data) == 0xffd8ffd9 || @@ -496,7 +496,7 @@ bitmap_end_skip: } if (res != pkt->size) { if (res < 0) { - av_free_packet(pkt); + av_packet_unref(pkt); return res; } av_shrink_packet(pkt, res); diff --git a/libavformat/tee.c b/libavformat/tee.c index e9fccc17d6..af52a490c6 100644 --- a/libavformat/tee.c +++ b/libavformat/tee.c @@ -424,7 +424,7 @@ static int filter_packet(void *log_ctx, AVPacket *pkt, } if (ret > 0) { - av_free_packet(pkt); + av_packet_unref(pkt); new_pkt.buf = av_buffer_create(new_pkt.data, new_pkt.size, av_buffer_default_free, NULL, 0); if (!new_pkt.buf) diff --git a/libavformat/utils.c b/libavformat/utils.c index 4044db32ea..3dc64da56f 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -1403,7 +1403,7 @@ static int read_frame_internal(AVFormatContext *s, AVPacket *pkt) if (pkt->flags & AV_PKT_FLAG_KEY) st->skip_to_keyframe = 0; if (st->skip_to_keyframe) { - av_free_packet(&cur_pkt); + av_packet_unref(&cur_pkt); if (got_packet) { *pkt = cur_pkt; } diff --git a/libavformat/vivo.c b/libavformat/vivo.c index 7287379801..10d81b9142 100644 --- a/libavformat/vivo.c +++ b/libavformat/vivo.c @@ -298,7 +298,7 @@ restart: fail: if (ret < 0) - av_free_packet(pkt); + av_packet_unref(pkt); return ret; } diff --git a/libavformat/webpenc.c b/libavformat/webpenc.c index 69270c63c4..2a21730f1b 100644 --- a/libavformat/webpenc.c +++ b/libavformat/webpenc.c @@ -140,7 +140,7 @@ static int flush(AVFormatContext *s, int trailer, int64_t pts) avio_w8(s->pb, 0); } avio_write(s->pb, w->last_pkt.data + skip, w->last_pkt.size - skip); - av_free_packet(&w->last_pkt); + av_packet_unref(&w->last_pkt); } return 0; diff --git a/libavformat/wtvenc.c b/libavformat/wtvenc.c index 8aebdddf03..0894b7fe60 100644 --- a/libavformat/wtvenc.c +++ b/libavformat/wtvenc.c @@ -826,7 +826,7 @@ static int write_trailer(AVFormatContext *s) av_free(wctx->sp_pairs); av_free(wctx->st_pairs); - av_free_packet(&wctx->thumbnail); + av_packet_unref(&wctx->thumbnail); return 0; } diff --git a/tests/api/api-band-test.c b/tests/api/api-band-test.c index d0dee64ef8..8644e7df9e 100644 --- a/tests/api/api-band-test.c +++ b/tests/api/api-band-test.c @@ -190,12 +190,12 @@ static int video_decode(const char *input_filename) return -1; } } - av_free_packet(&pkt); + av_packet_unref(&pkt); av_init_packet(&pkt); } } while (!end_of_stream || got_frame); - av_free_packet(&pkt); + av_packet_unref(&pkt); av_frame_free(&fr); avcodec_close(ctx); avformat_close_input(&fmt_ctx); diff --git a/tests/api/api-flac-test.c b/tests/api/api-flac-test.c index 07030d6dda..7b480594b7 100644 --- a/tests/api/api-flac-test.c +++ b/tests/api/api-flac-test.c @@ -206,7 +206,7 @@ static int run_test(AVCodec *enc, AVCodec *dec, AVCodecContext *enc_ctx, out_offset += out_frame_bytes; } } - av_free_packet(&enc_pkt); + av_packet_unref(&enc_pkt); } if (memcmp(raw_in, raw_out, out_frame_bytes * NUMBER_OF_FRAMES) != 0) { diff --git a/tests/api/api-h264-test.c b/tests/api/api-h264-test.c index e4bc0b816b..acf1636b39 100644 --- a/tests/api/api-h264-test.c +++ b/tests/api/api-h264-test.c @@ -134,13 +134,13 @@ static int video_decode_example(const char *input_filename) fr->pkt_pts, fr->pkt_dts, av_frame_get_pkt_duration(fr), number_of_written_bytes, av_adler32_update(0, (const uint8_t*)byte_buffer, number_of_written_bytes)); } - av_free_packet(&pkt); + av_packet_unref(&pkt); av_init_packet(&pkt); } i++; } while (!end_of_stream || got_frame); - av_free_packet(&pkt); + av_packet_unref(&pkt); av_frame_free(&fr); avcodec_close(ctx); avformat_close_input(&fmt_ctx); diff --git a/tests/api/api-seek-test.c b/tests/api/api-seek-test.c index 99fe90c242..135b972440 100644 --- a/tests/api/api-seek-test.c +++ b/tests/api/api-seek-test.c @@ -143,11 +143,11 @@ static int compute_crc_of_packets(AVFormatContext *fmt_ctx, int video_stream, } } } - av_free_packet(&pkt); + av_packet_unref(&pkt); av_init_packet(&pkt); } while ((!end_of_stream || got_frame) && (no_seeking || (fr->pkt_pts + av_frame_get_pkt_duration(fr) <= ts_end))); - av_free_packet(&pkt); + av_packet_unref(&pkt); av_freep(&byte_buffer); return 0; diff --git a/tools/seek_print.c b/tools/seek_print.c index c42b28dd44..de876b487c 100644 --- a/tools/seek_print.c +++ b/tools/seek_print.c @@ -87,7 +87,7 @@ int main(int argc, char **argv) ret, packet.size, packet.stream_index, av_ts2str(packet.dts), av_ts2timestr(packet.dts, tb), av_ts2str(packet.pts), av_ts2timestr(packet.pts, tb)); - av_free_packet(&packet); + av_packet_unref(&packet); } } else if (sscanf(*argv, "seek:%i:%"SCNi64":%"SCNi64":%"SCNi64":%i", &stream, &min_ts, &ts, &max_ts, &flags) == 5) {