From patchwork Wed Nov 18 16:52:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 23718 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 913F244B653 for ; Wed, 18 Nov 2020 19:21:30 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 64B7B68B5B2; Wed, 18 Nov 2020 19:21:30 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qv1-f66.google.com (mail-qv1-f66.google.com [209.85.219.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AF64F6800D2 for ; Wed, 18 Nov 2020 19:21:23 +0200 (EET) Received: by mail-qv1-f66.google.com with SMTP id z17so1375537qvy.11 for ; Wed, 18 Nov 2020 09:21:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=gkBYuX4WdPbRRIe5jq19EwKDD9omoLCAki1FP3Ppuwk=; b=XhiEryLooqabNSXrnLh5FmWLPvwERkkAsxfN3EluV0unslOq5Gw4V0jW5jtFhLhQC8 mnAyHuwWKEhrAijBrlfUx48NDQ7mhoofbf9i49X+jtGv01ouhs4W4CS6ia/7CPu1JnjQ 3AQDsuv9LmX1S3nqWnvWyOO9J7YLaqlV/LnI6uALX4XFm23E1mYW951NwM3tqVHQ8HAj nya9KAqlA9EG7LbgoxaHedUJDxC1XVrqTNJDb59GqDLj5VilvF6blylIDZ9BGLGB6ITK LGssYI1ovV5o/Y7dfv9oTLOd3VPGqD+zIFTSarjOLEwFw7n+8uNDJp7+laGz8BJS3xt3 rLlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gkBYuX4WdPbRRIe5jq19EwKDD9omoLCAki1FP3Ppuwk=; b=knKDg9MIBtSxDXToV9RljMYEzXMNDAtONAQl1ecgEscC8SxuPFvcwyXTK275WvZbX7 6OSsDanJC4e+Grgc5lPjCEE6oGJS/pLZvZ7+d5tBE2fy4D6cZq4hOd9Xk3P486Q29lOl OxPnm/sayqMkikGNphuXWX83vAfCEE549u41199OCrNVkix7iy8Zp+Fc6Zv6A8NwiC+y 1anxW2KhtSnONAEkjh2trzNCoBp+vg6wIQmZJTWUqfCblXQkS1bddNyUlQzZlIDQRYry FytJPMTG+bjzFL1jaZTF7PBbBdiBN+wHcdpFnQi+Jz5UZ7lDyF30iUtsBW8y9bQwf8cx OJOg== X-Gm-Message-State: AOAM5331OgIXjgAbT1sHMbRw0LMVCro05xLuRW/LjSh3fip0ylNR+pIA foTEg5z6AVVpAIfx5Pjccudq0ePVQqj7sw== X-Google-Smtp-Source: ABdhPJz6EPDP+P+S8shKCW0Vyv99fp7W2OIy4KzYzi8V6435Ki32z2H1QIXfJhcEEQkQPVwiizEezg== X-Received: by 2002:a0c:ab8f:: with SMTP id j15mr5586731qvb.54.1605718411650; Wed, 18 Nov 2020 08:53:31 -0800 (PST) Received: from localhost.localdomain ([181.23.91.217]) by smtp.gmail.com with ESMTPSA id f14sm4863788qkk.89.2020.11.18.08.53.30 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Nov 2020 08:53:30 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Wed, 18 Nov 2020 13:52:43 -0300 Message-Id: <20201118165247.4130-15-jamrial@gmail.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20201118165247.4130-1-jamrial@gmail.com> References: <20201118165247.4130-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 14/18] avformat/flacenc: port to the new packet list API X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: James Almer --- libavformat/flacenc.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/libavformat/flacenc.c b/libavformat/flacenc.c index a24d3be85d..6fb5e59be0 100644 --- a/libavformat/flacenc.c +++ b/libavformat/flacenc.c @@ -39,7 +39,7 @@ typedef struct FlacMuxerContext { int audio_stream_idx; int waiting_pics; /* audio packets are queued here until we get all the attached pictures */ - PacketListEntry *queue, *queue_end; + AVPacketList *queue; /* updated streaminfo sent by the encoder at the end */ uint8_t streaminfo[FLAC_STREAMINFO_SIZE]; @@ -253,6 +253,10 @@ static int flac_init(struct AVFormatContext *s) } } + c->queue = av_packet_list_alloc(); + if (!c->queue) + return AVERROR(ENOMEM); + return 0; } @@ -305,8 +309,7 @@ static int flac_queue_flush(AVFormatContext *s) if (ret < 0) write = 0; - while (c->queue) { - avpriv_packet_list_get(&c->queue, &c->queue_end, &pkt); + while (av_packet_list_get(c->queue, &pkt, 0)) { if (write && (ret = flac_write_audio_packet(s, &pkt)) < 0) write = 0; av_packet_unref(&pkt); @@ -346,7 +349,7 @@ static void flac_deinit(struct AVFormatContext *s) { FlacMuxerContext *c = s->priv_data; - avpriv_packet_list_free(&c->queue, &c->queue_end); + av_packet_list_free(&c->queue); } static int flac_write_packet(struct AVFormatContext *s, AVPacket *pkt) @@ -357,7 +360,7 @@ static int flac_write_packet(struct AVFormatContext *s, AVPacket *pkt) if (pkt->stream_index == c->audio_stream_idx) { if (c->waiting_pics) { /* buffer audio packets until we get all the pictures */ - ret = avpriv_packet_list_put(&c->queue, &c->queue_end, pkt, av_packet_ref, 0); + ret = av_packet_list_put(c->queue, pkt, av_packet_ref, 0); if (ret < 0) { av_log(s, AV_LOG_ERROR, "Out of memory in packet queue; skipping attached pictures\n"); c->waiting_pics = 0;