diff mbox series

[FFmpeg-devel,v4,3/9] avcodec: add SEI enum for vvc

Message ID 20210125141507.11012-4-nuomi2021@gmail.com
State Superseded
Headers show
Series add vvc raw demuxer, muxer, parser, metadata bsf
Related show

Checks

Context Check Description
andriy/x86_make success Make finished
andriy/x86_make_fate success Make fate finished
andriy/PPC64_make success Make finished
andriy/PPC64_make_fate success Make fate finished

Commit Message

Nuo Mi Jan. 25, 2021, 2:15 p.m. UTC
---
 libavcodec/vvc_sei.h | 47 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 libavcodec/vvc_sei.h

Comments

James Almer Jan. 26, 2021, 2:36 p.m. UTC | #1
On 1/25/2021 11:15 AM, Nuo Mi wrote:
> ---
>   libavcodec/vvc_sei.h | 47 ++++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 47 insertions(+)
>   create mode 100644 libavcodec/vvc_sei.h
> 
> diff --git a/libavcodec/vvc_sei.h b/libavcodec/vvc_sei.h
> new file mode 100644
> index 0000000000..90724669de
> --- /dev/null
> +++ b/libavcodec/vvc_sei.h
> @@ -0,0 +1,47 @@
> +/*
> + * H.266/VVC Supplementary Enhancement Information messages
> + *
> + * This file is part of FFmpeg.
> + *
> + * FFmpeg is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU Lesser General Public
> + * License as published by the Free Software Foundation; either
> + * version 2.1 of the License, or (at your option) any later version.
> + *
> + * FFmpeg is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * Lesser General Public License for more details.
> + *
> + * You should have received a copy of the GNU Lesser General Public
> + * License along with FFmpeg; if not, write to the Free Software
> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
> + */
> +
> +#ifndef AVCODEC_VVC_SEI_H
> +#define AVCODEC_VVC_SEI_H
> +
> +/**
> + * SEI message types
> + */
> +typedef enum {
> +    VVC_SEI_TYPE_BUFFERING_PERIOD                     = 0,
> +    VVC_SEI_TYPE_PICTURE_TIMING                       = 1,
> +    VVC_SEI_TYPE_PAN_SCAN_RECT                        = 2,
> +    VVC_SEI_TYPE_FILLER_PAYLOAD                       = 3,
> +    VVC_SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35       = 4,
> +    VVC_SEI_TYPE_USER_DATA_UNREGISTERED               = 5,
> +    VVC_SEI_TYPE_FILM_GRAIN_CHARACTERISTICS           = 19,
> +    VVC_SEI_TYPE_FRAME_PACKING                        = 45,
> +    VVC_SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION  = 129,
> +    VVC_SEI_TYPE_DECODING_UNIT_INFO                   = 130,
> +    VVC_SEI_TYPE_DECODED_PICTURE_HASH                 = 132,
> +    VVC_SEI_TYPE_SCALABLE_NESTING                     = 133,
> +    VVC_SEI_TYPE_REGION_REFRESH_INFO                  = 134,
> +    VVC_SEI_TYPE_TIME_CODE                            = 136,
> +    VVC_SEI_TYPE_MASTERING_DISPLAY_INFO               = 137,
> +    VVC_SEI_TYPE_CONTENT_LIGHT_LEVEL_INFO             = 144,
> +    VVC_SEI_TYPE_ALTERNATIVE_TRANSFER_CHARACTERISTICS = 147,
> +} VVC_SEI_Type;
> +
> +#endif /* AVCODEC_VVC_SEI_H */

This enum is no longer needed, since all the sei type enums have all 
been merged into sei.h
Nuo Mi Jan. 26, 2021, 3:09 p.m. UTC | #2
On Tue, Jan 26, 2021 at 10:36 PM James Almer <jamrial@gmail.com> wrote:

> On 1/25/2021 11:15 AM, Nuo Mi wrote:
> > ---
> >   libavcodec/vvc_sei.h | 47 ++++++++++++++++++++++++++++++++++++++++++++
> >   1 file changed, 47 insertions(+)
> >   create mode 100644 libavcodec/vvc_sei.h
> >
> > diff --git a/libavcodec/vvc_sei.h b/libavcodec/vvc_sei.h
> > new file mode 100644
> > index 0000000000..90724669de
> > --- /dev/null
> > +++ b/libavcodec/vvc_sei.h
> > @@ -0,0 +1,47 @@
> > +/*
> > + * H.266/VVC Supplementary Enhancement Information messages
> > + *
> > + * This file is part of FFmpeg.
> > + *
> > + * FFmpeg is free software; you can redistribute it and/or
> > + * modify it under the terms of the GNU Lesser General Public
> > + * License as published by the Free Software Foundation; either
> > + * version 2.1 of the License, or (at your option) any later version.
> > + *
> > + * FFmpeg is distributed in the hope that it will be useful,
> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> > + * Lesser General Public License for more details.
> > + *
> > + * You should have received a copy of the GNU Lesser General Public
> > + * License along with FFmpeg; if not, write to the Free Software
> > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
> > + */
> > +
> > +#ifndef AVCODEC_VVC_SEI_H
> > +#define AVCODEC_VVC_SEI_H
> > +
> > +/**
> > + * SEI message types
> > + */
> > +typedef enum {
> > +    VVC_SEI_TYPE_BUFFERING_PERIOD                     = 0,
> > +    VVC_SEI_TYPE_PICTURE_TIMING                       = 1,
> > +    VVC_SEI_TYPE_PAN_SCAN_RECT                        = 2,
> > +    VVC_SEI_TYPE_FILLER_PAYLOAD                       = 3,
> > +    VVC_SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35       = 4,
> > +    VVC_SEI_TYPE_USER_DATA_UNREGISTERED               = 5,
> > +    VVC_SEI_TYPE_FILM_GRAIN_CHARACTERISTICS           = 19,
> > +    VVC_SEI_TYPE_FRAME_PACKING                        = 45,
> > +    VVC_SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION  = 129,
> > +    VVC_SEI_TYPE_DECODING_UNIT_INFO                   = 130,
> > +    VVC_SEI_TYPE_DECODED_PICTURE_HASH                 = 132,
> > +    VVC_SEI_TYPE_SCALABLE_NESTING                     = 133,
> > +    VVC_SEI_TYPE_REGION_REFRESH_INFO                  = 134,
> > +    VVC_SEI_TYPE_TIME_CODE                            = 136,
> > +    VVC_SEI_TYPE_MASTERING_DISPLAY_INFO               = 137,
> > +    VVC_SEI_TYPE_CONTENT_LIGHT_LEVEL_INFO             = 144,
> > +    VVC_SEI_TYPE_ALTERNATIVE_TRANSFER_CHARACTERISTICS = 147,
> > +} VVC_SEI_Type;
> > +
> > +#endif /* AVCODEC_VVC_SEI_H */
>
> This enum is no longer needed, since all the sei type enums have all
> been merged into sei.h
>
Yeah, but for vvc, 129 is not SEI_TYPE_ACTIVE_PARAMETER_SETS.
It's SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION.
Maybe we can define it later.
James Almer Jan. 26, 2021, 3:11 p.m. UTC | #3
On 1/26/2021 12:09 PM, Nuo Mi wrote:
> On Tue, Jan 26, 2021 at 10:36 PM James Almer <jamrial@gmail.com> wrote:
> 
>> On 1/25/2021 11:15 AM, Nuo Mi wrote:
>>> ---
>>>    libavcodec/vvc_sei.h | 47 ++++++++++++++++++++++++++++++++++++++++++++
>>>    1 file changed, 47 insertions(+)
>>>    create mode 100644 libavcodec/vvc_sei.h
>>>
>>> diff --git a/libavcodec/vvc_sei.h b/libavcodec/vvc_sei.h
>>> new file mode 100644
>>> index 0000000000..90724669de
>>> --- /dev/null
>>> +++ b/libavcodec/vvc_sei.h
>>> @@ -0,0 +1,47 @@
>>> +/*
>>> + * H.266/VVC Supplementary Enhancement Information messages
>>> + *
>>> + * This file is part of FFmpeg.
>>> + *
>>> + * FFmpeg is free software; you can redistribute it and/or
>>> + * modify it under the terms of the GNU Lesser General Public
>>> + * License as published by the Free Software Foundation; either
>>> + * version 2.1 of the License, or (at your option) any later version.
>>> + *
>>> + * FFmpeg is distributed in the hope that it will be useful,
>>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
>>> + * Lesser General Public License for more details.
>>> + *
>>> + * You should have received a copy of the GNU Lesser General Public
>>> + * License along with FFmpeg; if not, write to the Free Software
>>> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
>> 02110-1301 USA
>>> + */
>>> +
>>> +#ifndef AVCODEC_VVC_SEI_H
>>> +#define AVCODEC_VVC_SEI_H
>>> +
>>> +/**
>>> + * SEI message types
>>> + */
>>> +typedef enum {
>>> +    VVC_SEI_TYPE_BUFFERING_PERIOD                     = 0,
>>> +    VVC_SEI_TYPE_PICTURE_TIMING                       = 1,
>>> +    VVC_SEI_TYPE_PAN_SCAN_RECT                        = 2,
>>> +    VVC_SEI_TYPE_FILLER_PAYLOAD                       = 3,
>>> +    VVC_SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35       = 4,
>>> +    VVC_SEI_TYPE_USER_DATA_UNREGISTERED               = 5,
>>> +    VVC_SEI_TYPE_FILM_GRAIN_CHARACTERISTICS           = 19,
>>> +    VVC_SEI_TYPE_FRAME_PACKING                        = 45,
>>> +    VVC_SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION  = 129,
>>> +    VVC_SEI_TYPE_DECODING_UNIT_INFO                   = 130,
>>> +    VVC_SEI_TYPE_DECODED_PICTURE_HASH                 = 132,
>>> +    VVC_SEI_TYPE_SCALABLE_NESTING                     = 133,
>>> +    VVC_SEI_TYPE_REGION_REFRESH_INFO                  = 134,
>>> +    VVC_SEI_TYPE_TIME_CODE                            = 136,
>>> +    VVC_SEI_TYPE_MASTERING_DISPLAY_INFO               = 137,
>>> +    VVC_SEI_TYPE_CONTENT_LIGHT_LEVEL_INFO             = 144,
>>> +    VVC_SEI_TYPE_ALTERNATIVE_TRANSFER_CHARACTERISTICS = 147,
>>> +} VVC_SEI_Type;
>>> +
>>> +#endif /* AVCODEC_VVC_SEI_H */
>>
>> This enum is no longer needed, since all the sei type enums have all
>> been merged into sei.h
>>
> Yeah, but for vvc, 129 is not SEI_TYPE_ACTIVE_PARAMETER_SETS.
> It's SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION.
> Maybe we can define it later.

Yes, I sent a patch to add SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION 
as an alias for SEI_TYPE_ACTIVE_PARAMETER_SETS last friday.
diff mbox series

Patch

diff --git a/libavcodec/vvc_sei.h b/libavcodec/vvc_sei.h
new file mode 100644
index 0000000000..90724669de
--- /dev/null
+++ b/libavcodec/vvc_sei.h
@@ -0,0 +1,47 @@ 
+/*
+ * H.266/VVC Supplementary Enhancement Information messages
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef AVCODEC_VVC_SEI_H
+#define AVCODEC_VVC_SEI_H
+
+/**
+ * SEI message types
+ */
+typedef enum {
+    VVC_SEI_TYPE_BUFFERING_PERIOD                     = 0,
+    VVC_SEI_TYPE_PICTURE_TIMING                       = 1,
+    VVC_SEI_TYPE_PAN_SCAN_RECT                        = 2,
+    VVC_SEI_TYPE_FILLER_PAYLOAD                       = 3,
+    VVC_SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35       = 4,
+    VVC_SEI_TYPE_USER_DATA_UNREGISTERED               = 5,
+    VVC_SEI_TYPE_FILM_GRAIN_CHARACTERISTICS           = 19,
+    VVC_SEI_TYPE_FRAME_PACKING                        = 45,
+    VVC_SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION  = 129,
+    VVC_SEI_TYPE_DECODING_UNIT_INFO                   = 130,
+    VVC_SEI_TYPE_DECODED_PICTURE_HASH                 = 132,
+    VVC_SEI_TYPE_SCALABLE_NESTING                     = 133,
+    VVC_SEI_TYPE_REGION_REFRESH_INFO                  = 134,
+    VVC_SEI_TYPE_TIME_CODE                            = 136,
+    VVC_SEI_TYPE_MASTERING_DISPLAY_INFO               = 137,
+    VVC_SEI_TYPE_CONTENT_LIGHT_LEVEL_INFO             = 144,
+    VVC_SEI_TYPE_ALTERNATIVE_TRANSFER_CHARACTERISTICS = 147,
+} VVC_SEI_Type;
+
+#endif /* AVCODEC_VVC_SEI_H */