From: "Cédric Le Barz" <clebarz@ektacom.com> To: ffmpeg-devel@ffmpeg.org Subject: Re: [FFmpeg-devel] [PATCH] MXF - Declare unused JPEG2000 tags in MXF file - Sponsored by INA Date: Mon, 3 Apr 2023 10:40:54 +0200 Message-ID: <98f713bd-d8ba-72f2-1fc3-5fd13f7f396e@ektacom.com> (raw) In-Reply-To: <7a2b39bf-9036-7bfa-3448-335c11f51cac@ektacom.com> [-- Attachment #1: Type: text/plain, Size: 2911 bytes --] Hi, I've attached the patch to this mail, in order to solve newlines insertion issue. Regards, Cédric Le 29/03/2023 à 23:31, Cédric Le Barz a écrit : > > Declare unused JPEG2000 tags in MXF file. > > Signed-off-by: Cedric Le Barz <clebarz@ektacom.com> > --- > ffmpeg/libavformat/mxfenc.c | 22 +++++++++++++++++++--- > 1 file changed, 19 insertions(+), 3 deletions(-) > > diff --git a/ffmpeg/libavformat/mxfenc.c b/ffmpeg/libavformat/mxfenc.c > index bfbd5a6..67d8f67 100644 > --- a/ffmpeg/libavformat/mxfenc.c > +++ b/ffmpeg/libavformat/mxfenc.c > @@ -542,7 +542,7 @@ static void mxf_write_primer_pack(AVFormatContext *s) > MXFContext *mxf = s->priv_data; > AVIOContext *pb = s->pb; > int local_tag_number = MXF_NUM_TAGS, i; > - int will_have_avc_tags = 0, will_have_mastering_tags = 0; > + int will_have_avc_tags = 0, will_have_mastering_tags = 0, > will_have_jpeg2000_tags = 0; > for (i = 0; i < s->nb_streams; i++) { > MXFStreamContext *sc = s->streams[i]->priv_data; > @@ -552,6 +552,9 @@ static void mxf_write_primer_pack(AVFormatContext *s) > if (av_stream_get_side_data(s->streams[i], > AV_PKT_DATA_MASTERING_DISPLAY_METADATA, NULL)) { > will_have_mastering_tags = 1; > } > + if (s->streams[i]->codecpar->codec_id == AV_CODEC_ID_JPEG2000){ > + will_have_jpeg2000_tags = 1; > + } > } > if (!mxf->store_user_comments) { > @@ -574,6 +577,21 @@ static void mxf_write_primer_pack(AVFormatContext > *s) > mxf_mark_tag_unused(mxf, 0x8304); > } > + if (!will_have_jpeg2000_tags) { > + mxf_mark_tag_unused(mxf, 0x8401); > + mxf_mark_tag_unused(mxf, 0x8402); > + mxf_mark_tag_unused(mxf, 0x8403); > + mxf_mark_tag_unused(mxf, 0x8404); > + mxf_mark_tag_unused(mxf, 0x8405); > + mxf_mark_tag_unused(mxf, 0x8406); > + mxf_mark_tag_unused(mxf, 0x8407); > + mxf_mark_tag_unused(mxf, 0x8408); > + mxf_mark_tag_unused(mxf, 0x8409); > + mxf_mark_tag_unused(mxf, 0x840A); > + mxf_mark_tag_unused(mxf, 0x840B); > + mxf_mark_tag_unused(mxf, 0x840C); > + } > + > for (i = 0; i < MXF_NUM_TAGS; i++) { > if (mxf->unused_tags[i]) { > local_tag_number--; > @@ -1297,7 +1315,6 @@ static int64_t > mxf_write_cdci_common(AVFormatContext *s, AVStream *st, const UID > f1 *= 2; > } > - > mxf_write_local_tag(s, 16, 0x320D); > avio_wb32(pb, 2); > avio_wb32(pb, 4); > @@ -3406,4 +3423,3 @@ const FFOutputFormat ff_mxf_opatom_muxer = { > .p.priv_class = &mxf_opatom_muxer_class, > }; > - [-- Attachment #2: 0001-Declare-unused-JPEG2000-tags-in-MXF-file.eml --] [-- Type: message/rfc822, Size: 2517 bytes --] From: Cedric Le Barz <clebarz@ektacom.com> To: ffmpeg-devel@ffmpeg.org Subject: [PATCH] Declare unused JPEG2000 tags in MXF file. Date: Wed, 29 Mar 2023 23:28:56 +0200 Signed-off-by: Cedric Le Barz <clebarz@ektacom.com> --- ffmpeg/libavformat/mxfenc.c | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/ffmpeg/libavformat/mxfenc.c b/ffmpeg/libavformat/mxfenc.c index bfbd5a6..67d8f67 100644 --- a/ffmpeg/libavformat/mxfenc.c +++ b/ffmpeg/libavformat/mxfenc.c @@ -542,7 +542,7 @@ static void mxf_write_primer_pack(AVFormatContext *s) MXFContext *mxf = s->priv_data; AVIOContext *pb = s->pb; int local_tag_number = MXF_NUM_TAGS, i; - int will_have_avc_tags = 0, will_have_mastering_tags = 0; + int will_have_avc_tags = 0, will_have_mastering_tags = 0, will_have_jpeg2000_tags = 0; for (i = 0; i < s->nb_streams; i++) { MXFStreamContext *sc = s->streams[i]->priv_data; @@ -552,6 +552,9 @@ static void mxf_write_primer_pack(AVFormatContext *s) if (av_stream_get_side_data(s->streams[i], AV_PKT_DATA_MASTERING_DISPLAY_METADATA, NULL)) { will_have_mastering_tags = 1; } + if (s->streams[i]->codecpar->codec_id == AV_CODEC_ID_JPEG2000){ + will_have_jpeg2000_tags = 1; + } } if (!mxf->store_user_comments) { @@ -574,6 +577,21 @@ static void mxf_write_primer_pack(AVFormatContext *s) mxf_mark_tag_unused(mxf, 0x8304); } + if (!will_have_jpeg2000_tags) { + mxf_mark_tag_unused(mxf, 0x8401); + mxf_mark_tag_unused(mxf, 0x8402); + mxf_mark_tag_unused(mxf, 0x8403); + mxf_mark_tag_unused(mxf, 0x8404); + mxf_mark_tag_unused(mxf, 0x8405); + mxf_mark_tag_unused(mxf, 0x8406); + mxf_mark_tag_unused(mxf, 0x8407); + mxf_mark_tag_unused(mxf, 0x8408); + mxf_mark_tag_unused(mxf, 0x8409); + mxf_mark_tag_unused(mxf, 0x840A); + mxf_mark_tag_unused(mxf, 0x840B); + mxf_mark_tag_unused(mxf, 0x840C); + } + for (i = 0; i < MXF_NUM_TAGS; i++) { if (mxf->unused_tags[i]) { local_tag_number--; @@ -1297,7 +1315,6 @@ static int64_t mxf_write_cdci_common(AVFormatContext *s, AVStream *st, const UID f1 *= 2; } - mxf_write_local_tag(s, 16, 0x320D); avio_wb32(pb, 2); avio_wb32(pb, 4); @@ -3406,4 +3423,3 @@ const FFOutputFormat ff_mxf_opatom_muxer = { .p.priv_class = &mxf_opatom_muxer_class, }; - -- 2.34.1 [-- Attachment #3: Type: text/plain, Size: 251 bytes --] _______________________________________________ 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-04-03 8:41 UTC|newest] Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-03-29 21:31 Cédric Le Barz 2023-04-03 8:40 ` Cédric Le Barz [this message] 2023-04-05 12:48 ` Tomas Härdin
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=98f713bd-d8ba-72f2-1fc3-5fd13f7f396e@ektacom.com \ --to=clebarz@ektacom.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