From: James Almer <jamrial@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH 2/3] avformat/av1: Add a parameter to av1c to omit seq header
Date: Wed, 2 Mar 2022 20:27:19 -0300
Message-ID: <431afea2-ce1e-4c94-8ed2-2ee8ff33cd50@gmail.com> (raw)
In-Reply-To: <CAOJaEPKeevCOMwOT+yCWGXOC+KtYQTuQmotTTPS-qrruTPO+yw@mail.gmail.com>
On 3/2/2022 8:23 PM, Vignesh Venkatasubramanian wrote:
> On Wed, Mar 2, 2022 at 2:57 PM James Almer <jamrial@gmail.com> wrote:
>>
>> On 2/17/2022 2:51 AM, Vignesh Venkatasubramanian wrote:
>>> Add a parameter to omit seq header when generating the av1C atom.
>>>
>>> For now, this does not change any behavior. This will be used by a
>>> follow-up patch to add AVIF support.
>>>
>>> Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
>>> ---
>>> libavformat/av1.c | 7 +++++--
>>> libavformat/av1.h | 4 +++-
>>> libavformat/matroskaenc.c | 4 ++--
>>> libavformat/movenc.c | 2 +-
>>> 4 files changed, 11 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/libavformat/av1.c b/libavformat/av1.c
>>> index 1fcfac2356..95ca7cc47f 100644
>>> --- a/libavformat/av1.c
>>> +++ b/libavformat/av1.c
>>> @@ -361,7 +361,8 @@ int ff_av1_parse_seq_header(AV1SequenceParameters *seq, const uint8_t *buf, int
>>> return AVERROR_INVALIDDATA;
>>> }
>>>
>>> -int ff_isom_write_av1c(AVIOContext *pb, const uint8_t *buf, int size)
>>> +int ff_isom_write_av1c(AVIOContext *pb, const uint8_t *buf, int size,
>>> + int write_seq_header)
>>> {
>>> AVIOContext *meta_pb;
>>> AV1SequenceParameters seq_params;
>>> @@ -451,7 +452,9 @@ int ff_isom_write_av1c(AVIOContext *pb, const uint8_t *buf, int size)
>>> flush_put_bits(&pbc);
>>>
>>> avio_write(pb, header, sizeof(header));
>>> - avio_write(pb, seq, seq_size);
>>> + if (write_seq_header) {
>>> + avio_write(pb, seq, seq_size);
>>> + }
>>>
>>> meta_size = avio_get_dyn_buf(meta_pb, &meta);
>>> if (meta_size)
>>> diff --git a/libavformat/av1.h b/libavformat/av1.h
>>> index f57dabe986..a393fbb78f 100644
>>> --- a/libavformat/av1.h
>>> +++ b/libavformat/av1.h
>>> @@ -96,9 +96,11 @@ int ff_av1_parse_seq_header(AV1SequenceParameters *seq, const uint8_t *buf, int
>>> * @param pb pointer to the AVIOContext where the av1C box shall be written
>>> * @param buf input data buffer
>>> * @param size size in bytes of the input data buffer
>>> + * @param write_seq_header If 1, Sequence Header OBU will be written inside the
>>> + * av1C box. Otherwise, Sequence Header OBU will be omitted.
>>> *
>>> * @return >= 0 in case of success, a negative AVERROR code in case of failure
>>> */
>>> -int ff_isom_write_av1c(AVIOContext *pb, const uint8_t *buf, int size);
>>> +int ff_isom_write_av1c(AVIOContext *pb, const uint8_t *buf, int size, int write_seq_header);
>>>
>>> #endif /* AVFORMAT_AV1_H */
>>> diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
>>> index 38d9485288..5061961283 100644
>>> --- a/libavformat/matroskaenc.c
>>> +++ b/libavformat/matroskaenc.c
>>> @@ -1087,7 +1087,7 @@ static int mkv_write_native_codecprivate(AVFormatContext *s, AVIOContext *pb,
>>> case AV_CODEC_ID_AV1:
>>> if (par->extradata_size)
>>> return ff_isom_write_av1c(dyn_cp, par->extradata,
>>> - par->extradata_size);
>>> + par->extradata_size, 1);
>>> else
>>> put_ebml_void(pb, 4 + 3);
>>> break;
>>> @@ -2663,7 +2663,7 @@ static int mkv_check_new_extra_data(AVFormatContext *s, const AVPacket *pkt)
>>> ret = avio_open_dyn_buf(&dyn_cp);
>>> if (ret < 0)
>>> return ret;
>>> - ff_isom_write_av1c(dyn_cp, side_data, side_data_size);
>>> + ff_isom_write_av1c(dyn_cp, side_data, side_data_size, 1);
>>> codecpriv_size = avio_get_dyn_buf(dyn_cp, &codecpriv);
>>> if ((ret = dyn_cp->error) < 0 ||
>>> !codecpriv_size && (ret = AVERROR_INVALIDDATA)) {
>>> diff --git a/libavformat/movenc.c b/libavformat/movenc.c
>>> index 4c868919ae..1a746a67fd 100644
>>> --- a/libavformat/movenc.c
>>> +++ b/libavformat/movenc.c
>>> @@ -1303,7 +1303,7 @@ static int mov_write_av1c_tag(AVIOContext *pb, MOVTrack *track)
>>>
>>> avio_wb32(pb, 0);
>>> ffio_wfourcc(pb, "av1C");
>>> - ff_isom_write_av1c(pb, track->vos_data, track->vos_len);
>>> + ff_isom_write_av1c(pb, track->vos_data, track->vos_len, 1);
>>> return update_size(pb, pos);
>>> }
>>>
>>
>> This patch no longer applies.
>
> I have generated a new patch after sync'ing to the latest master. I
> did not notice any conflicts. Can you please check if the updated
> patch applies?
The new one does, yes. Thanks.
>
>> _______________________________________________
>> 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:[~2022-03-02 23:27 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-17 5:51 [FFmpeg-devel] [PATCH 1/3] avcodec/libaomenc: Add parameter for avif single image encoding Vignesh Venkatasubramanian
2022-02-17 5:51 ` [FFmpeg-devel] [PATCH 2/3] avformat/av1: Add a parameter to av1c to omit seq header Vignesh Venkatasubramanian
2022-03-02 22:57 ` James Almer
2022-03-02 23:22 ` Vignesh Venkatasubramanian
2022-03-02 23:23 ` Vignesh Venkatasubramanian
2022-03-02 23:27 ` James Almer [this message]
2022-03-28 20:48 ` Vignesh Venkatasubramanian
2022-04-13 20:40 ` Vignesh Venkatasubramanian
2022-05-02 21:36 ` Vignesh Venkatasubramanian
2022-02-17 5:51 ` [FFmpeg-devel] [PATCH 3/3] avformat/movenc: Add support for AVIF muxing Vignesh Venkatasubramanian
2022-02-22 18:40 ` Vignesh Venkatasubramanian
2022-02-22 20:03 ` James Almer
2022-02-22 21:37 ` Vignesh Venkatasubramanian
2022-02-22 21:38 ` Vignesh Venkatasubramanian
2022-02-22 21:43 ` Vignesh Venkatasubramanian
2022-02-24 17:34 ` Vignesh Venkatasubramanian
2022-03-01 16:49 ` Vignesh Venkatasubramanian
2022-03-03 15:36 ` James Almer
2022-03-03 19:16 ` Vignesh Venkatasubramanian
2022-03-04 11:24 ` James Almer
2022-03-04 17:52 ` Vignesh Venkatasubramanian
2022-03-04 17:54 ` Vignesh Venkatasubramanian
2022-03-09 19:34 ` Vignesh Venkatasubramanian
2022-03-10 16:01 ` Andreas Rheinhardt
2022-03-10 18:12 ` Vignesh Venkatasubramanian
2022-03-21 20:46 ` Andreas Rheinhardt
2022-03-22 16:45 ` Vignesh Venkatasubramanian
2022-03-22 16:46 ` Vignesh Venkatasubramanian
2022-03-28 17:06 ` Vignesh Venkatasubramanian
2022-03-28 20:49 ` Vignesh Venkatasubramanian
2022-04-07 18:25 ` Vignesh Venkatasubramanian
2022-04-13 17:21 ` James Zern
2022-04-13 20:40 ` Vignesh Venkatasubramanian
2022-04-13 21:01 ` Andreas Rheinhardt
2022-04-13 21:33 ` Vignesh Venkatasubramanian
2022-05-02 17:28 ` James Zern
2022-05-02 21:34 ` Vignesh Venkatasubramanian
2022-05-02 21:35 ` Vignesh Venkatasubramanian
2022-05-03 23:39 ` James Zern
2022-05-04 2:46 ` "zhilizhao(赵志立)"
2022-05-04 16:45 ` Vignesh Venkatasubramanian
2022-05-04 16:48 ` Vignesh Venkatasubramanian
2022-05-04 17:10 ` "zhilizhao(赵志立)"
2022-05-04 17:14 ` Vignesh Venkatasubramanian
2022-05-04 17:15 ` Vignesh Venkatasubramanian
2022-05-11 16:54 ` Vignesh Venkatasubramanian
2022-05-11 17:25 ` Gyan Doshi
2022-05-12 10:26 ` Gyan Doshi
2022-05-12 16:23 ` Vignesh Venkatasubramanian
2022-05-12 16:23 ` Vignesh Venkatasubramanian
2022-05-13 7:22 ` Gyan Doshi
2022-04-13 20:41 ` Vignesh Venkatasubramanian
2022-04-13 21:04 ` Andreas Rheinhardt
2022-04-13 21:35 ` Vignesh Venkatasubramanian
2022-04-21 16:38 ` Vignesh Venkatasubramanian
2022-04-29 16:03 ` Vignesh Venkatasubramanian
2022-03-10 18:14 ` Vignesh Venkatasubramanian
2022-03-15 15:59 ` Vignesh Venkatasubramanian
2022-03-21 17:07 ` Vignesh Venkatasubramanian
2022-03-03 19:20 ` Vignesh Venkatasubramanian
2022-03-03 19:46 ` James Almer
2022-03-03 19:57 ` Vignesh Venkatasubramanian
2022-02-17 18:09 ` [FFmpeg-devel] [PATCH 1/3] avcodec/libaomenc: Add parameter for avif single image encoding James Zern
2022-02-17 19:33 ` Vignesh Venkatasubramanian
2022-02-17 20:59 ` James Almer
2022-02-17 21:18 ` [FFmpeg-devel] [PATCH] " Vignesh Venkatasubramanian
2022-02-17 21:20 ` [FFmpeg-devel] [PATCH 1/3] " Vignesh Venkatasubramanian
2022-02-22 21:36 ` Vignesh Venkatasubramanian
2022-03-28 20:47 ` Vignesh Venkatasubramanian
2022-04-13 20:39 ` Vignesh Venkatasubramanian
2022-05-02 21:37 ` Vignesh Venkatasubramanian
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=431afea2-ce1e-4c94-8ed2-2ee8ff33cd50@gmail.com \
--to=jamrial@gmail.com \
--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