[FFmpeg-devel] [PATCH v2] avformat/vpcc: fix VP9 metadata in FLV and RTMP

aler9 aler9.dev at gmail.com
Sun Sep 3 19:45:45 EEST 2023


I looked again at your previous comment and you suggested to explicitly
mention that this patch will affect FLV too, which i did in the title.

I didn't see any request to change the code. Do you have any suggestion
regarding the code?



Il giorno dom 3 set 2023 alle ore 18:17 James Almer <jamrial at gmail.com> ha
scritto:

> On 9/3/2023 1:15 PM, aler9 wrote:
> > sorry, to git add what?
>
> You say you integrated my comment, but the contents of the patch are
> exactly the same.
>
> >
> > Il giorno dom 3 set 2023 alle ore 18:02 James Almer <jamrial at gmail.com>
> ha
> > scritto:
> >
> >> On 9/3/2023 1:00 PM, Alessandro Ros wrote:
> >>> I integrated James A. comment and fixed patch format.
> >>
> >> I think you forgot to git add.
> >>
> >>>
> >>> In order to send VP9 tracks with FLV or RTMP, the enhanced RTMP
> >>> specification tells that VPCodecConfigurationRecord, a.k.a. vpcC
> >>> ISO-BMFF box, must be inserted into a metadata message. However, the
> >>> function responsible for generating vpcCs currently returns invalid
> >>> boxes, that are lacking the Version and Flag fields, inherited from
> >>> FullBox. For some reason, both flags were being added manually in
> >>> movenc. This patch fixes the issue.
> >>>
> >>> Signed-off-by: Alessandro Ros <aler9.dev at gmail.com>
> >>> ---
> >>>    libavformat/movenc.c | 3 ---
> >>>    libavformat/vpcc.c   | 2 ++
> >>>    2 files changed, 2 insertions(+), 3 deletions(-)
> >>>
> >>> diff --git a/libavformat/movenc.c b/libavformat/movenc.c
> >>> index 7ef6cef46a..696ae5a6c9 100644
> >>> --- a/libavformat/movenc.c
> >>> +++ b/libavformat/movenc.c
> >>> @@ -1441,10 +1441,7 @@ static int mov_write_vpcc_tag(AVFormatContext
> *s,
> >> AVIOContext *pb, MOVTrack *tra
> >>>
> >>>        avio_wb32(pb, 0);
> >>>        ffio_wfourcc(pb, "vpcC");
> >>> -    avio_w8(pb, 1); /* version */
> >>> -    avio_wb24(pb, 0); /* flags */
> >>>        ff_isom_write_vpcc(s, pb, track->vos_data, track->vos_len,
> >> track->par);
> >>> -
> >>>        return update_size(pb, pos);
> >>>    }
> >>>
> >>> diff --git a/libavformat/vpcc.c b/libavformat/vpcc.c
> >>> index ea66959abf..256407dd6d 100644
> >>> --- a/libavformat/vpcc.c
> >>> +++ b/libavformat/vpcc.c
> >>> @@ -208,6 +208,8 @@ int ff_isom_write_vpcc(AVFormatContext *s,
> >> AVIOContext *pb,
> >>>        if (ret < 0)
> >>>            return ret;
> >>>
> >>> +    avio_w8(pb, 1); /* version */
> >>> +    avio_wb24(pb, 0); /* flags */
> >>>        avio_w8(pb, vpcc.profile);
> >>>        avio_w8(pb, vpcc.level);
> >>>        avio_w8(pb, (vpcc.bitdepth << 4) | (vpcc.chroma_subsampling <<
> 1)
> >> | vpcc.full_range_flag);
> >> _______________________________________________
> >> ffmpeg-devel mailing list
> >> ffmpeg-devel at ffmpeg.org
> >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >>
> >> To unsubscribe, visit link above, or email
> >> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> >>
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel at ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-devel mailing list