From: Mark Thompson <sw@jkqxz.net>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH] cbs_av1: Make fake OBU size length field a write option
Date: Tue, 26 Sep 2023 21:05:58 +0100
Message-ID: <45ad6779-6ff8-d6eb-4541-ac8d0f9a1d21@jkqxz.net> (raw)
In-Reply-To: <AS8P250MB0744C978C8A81C11E563922F8FC3A@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM>
On 26/09/2023 10:19, Andreas Rheinhardt wrote:
> Mark Thompson:
>> This is an option to modify the behaviour of the writer, not a syntax
>> field.
>> ---
>> Tested by hacking av1_metadata. For example, adding:
>>
>> av_opt_set_int(ctx->common.output->priv_data, "fixed_obu_size_length",
>> 7, 0);
>>
>> gets you OBU headers that look like:
>>
>> [trace_headers @ 0x55706fcb2880] OBU header
>> [trace_headers @ 0x55706fcb2880] 0
>> obu_forbidden_bit 0 = 0
>> [trace_headers @ 0x55706fcb2880] 1
>> obu_type 0100 = 4
>> [trace_headers @ 0x55706fcb2880] 5
>> obu_extension_flag 0 = 0
>> [trace_headers @ 0x55706fcb2880] 6
>> obu_has_size_field 1 = 1
>> [trace_headers @ 0x55706fcb2880] 7
>> obu_reserved_1bit 0 = 0
>> [trace_headers @ 0x55706fcb2880] 8 obu_size
>> 10101110100010101000000010000000100000001000000000000000 = 1326
>>
>> It's not obvious that there is any value in exposing this option more
>> generally, though? It could made a visible option of av1_metadata or
>> others if there is any use-case for it.
>>
>> Thanks,
>>
>> - Mark
>>
>>
>> libavcodec/cbs_av1.c | 31 +++++++++++++++++++++----------
>> libavcodec/cbs_av1.h | 5 ++++-
>> libavcodec/vaapi_encode_av1.c | 4 +++-
>> 3 files changed, 28 insertions(+), 12 deletions(-)
>
> What is the advantage of this? Why would people want to waste space?
Because they want to be able to write a different size into the field later without realigning all the following bytes.
VAAPI seems to require this, hence the previous code which added a fake syntax element field to the OBU structure containing the size to be written with, which this patch is replacing with an external option.
Thanks,
- Mark
_______________________________________________
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".
prev parent reply other threads:[~2023-09-26 20:06 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-25 13:53 Mark Thompson
2023-09-26 2:34 ` Wang, Fei W
2023-09-26 20:30 ` [FFmpeg-devel] [PATCH v2] " Mark Thompson
2023-09-27 2:16 ` Wang, Fei W
2023-10-02 19:42 ` Mark Thompson
2023-09-26 9:19 ` [FFmpeg-devel] [PATCH] " Andreas Rheinhardt
2023-09-26 20:05 ` Mark Thompson [this message]
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=45ad6779-6ff8-d6eb-4541-ac8d0f9a1d21@jkqxz.net \
--to=sw@jkqxz.net \
--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