From: James Zern <jzern-at-google.com@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH 2/8] lavc/libvpxenc: drop frame_number
Date: Tue, 28 Feb 2023 12:50:08 -0800
Message-ID: <CABWgkXLV7At4b8YNrKGDPYVtqifauRzwc7f3CpxVw79r7q7vew@mail.gmail.com> (raw)
In-Reply-To: <20230228120104.2347-2-anton@khirnov.net>
On Tue, Feb 28, 2023 at 4:02 AM Anton Khirnov <anton@khirnov.net> wrote:
>
> It is not used, except to check whether the packet is valid before
> writing HDR metadata to the packet in storeframe(). However, that check
> serves no purpose, as the encoded packet is already treated as valid
> higher up in this function.
lgtm. I agree, since the HDR path is VP9 only, there's no possibility
of having a separate alt-ref packet. The libaom wrapper could probably
use a similar update.
> ---
> libavcodec/libvpxenc.c | 9 +--------
> 1 file changed, 1 insertion(+), 8 deletions(-)
>
> diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
> index 339d4d8146..eaa4ad8f25 100644
> --- a/libavcodec/libvpxenc.c
> +++ b/libavcodec/libvpxenc.c
> @@ -63,7 +63,6 @@ struct FrameListData {
> uint32_t flags; /**< flags for this frame */
> uint64_t sse[4];
> int have_sse; /**< true if we have pending sse[] */
> - uint64_t frame_number;
> struct FrameListData *next;
> };
>
> @@ -84,7 +83,6 @@ typedef struct VPxEncoderContext {
> int deadline; //i.e., RT/GOOD/BEST
> uint64_t sse[4];
> int have_sse; /**< true if we have pending sse[] */
> - uint64_t frame_number;
> struct FrameListData *coded_frame_list;
> struct FrameListData *alpha_coded_frame_list;
>
> @@ -1220,9 +1218,8 @@ static inline void cx_pktcpy(struct FrameListData *dst,
> dst->sz = src->data.frame.sz;
> dst->buf = src->data.frame.buf;
> dst->have_sse = 0;
> - /* For alt-ref frame, don't store PSNR or increment frame_number */
> + /* For alt-ref frame, don't store PSNR */
> if (!(dst->flags & VPX_FRAME_IS_INVISIBLE)) {
> - dst->frame_number = ++ctx->frame_number;
> dst->have_sse = ctx->have_sse;
> if (ctx->have_sse) {
> /* associate last-seen SSE to the frame. */
> @@ -1232,8 +1229,6 @@ static inline void cx_pktcpy(struct FrameListData *dst,
> memcpy(dst->sse, ctx->sse, sizeof(dst->sse));
> ctx->have_sse = 0;
> }
> - } else {
> - dst->frame_number = -1; /* sanity marker */
> }
> }
>
> @@ -1289,13 +1284,11 @@ static int storeframe(AVCodecContext *avctx, struct FrameListData *cx_frame,
> AV_WB64(side_data, 1);
> memcpy(side_data + 8, alpha_cx_frame->buf, alpha_cx_frame->sz);
> }
> - if (cx_frame->frame_number != -1) {
> if (ctx->hdr10_plus_fifo) {
> int err = copy_hdr10_plus_to_pkt(ctx->hdr10_plus_fifo, pkt);
> if (err < 0)
> return err;
> }
> - }
>
> return pkt->size;
> }
> --
> 2.39.1
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2023-02-28 20:50 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-28 12:00 [FFmpeg-devel] [PATCH 1/8] lavu/frame: improve AVFrame.opaque[_ref] documentation Anton Khirnov
2023-02-28 12:00 ` [FFmpeg-devel] [PATCH 2/8] lavc/libvpxenc: drop frame_number Anton Khirnov
2023-02-28 20:50 ` James Zern [this message]
2023-02-28 12:00 ` [FFmpeg-devel] [PATCH 3/8] lavc/libvpxenc: reindent Anton Khirnov
2023-02-28 20:50 ` James Zern
2023-02-28 12:01 ` [FFmpeg-devel] [PATCH 4/8] lavc/libvpxenc: rename hdr10_plus_fifo and related objects Anton Khirnov
2023-02-28 20:55 ` James Zern
2023-02-28 12:01 ` [FFmpeg-devel] [PATCH 5/8] lavc/libvpxenc: handle frame durations and AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE Anton Khirnov
2023-02-28 21:11 ` James Zern
2023-03-01 12:01 ` Anton Khirnov
2023-02-28 23:30 ` James Almer
2023-03-01 12:04 ` Anton Khirnov
2023-02-28 12:01 ` [FFmpeg-devel] [PATCH 6/8] lavc/libvpxenc: drop a useless condition Anton Khirnov
2023-02-28 21:12 ` James Zern
2023-02-28 12:01 ` [FFmpeg-devel] [PATCH 7/8] lavc/libvpxenc: handle queue desync more gracefully Anton Khirnov
2023-02-28 12:01 ` [FFmpeg-devel] [PATCH 8/8] lavc/libvpxenc: drop FrameListData.duration Anton Khirnov
2023-02-28 21:16 ` James Zern
2023-03-01 12:07 ` Anton Khirnov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CABWgkXLV7At4b8YNrKGDPYVtqifauRzwc7f3CpxVw79r7q7vew@mail.gmail.com \
--to=jzern-at-google.com@ffmpeg.org \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git