diff mbox series

[FFmpeg-devel,v7,01/10] lavc/avcodec: Add HEVC Screen Content Coding Extensions profile

Message ID 20230216054637.159397-1-fei.w.wang@intel.com
State New
Headers show
Series [FFmpeg-devel,v7,01/10] lavc/avcodec: Add HEVC Screen Content Coding Extensions profile | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished

Commit Message

Wang, Fei W Feb. 16, 2023, 5:46 a.m. UTC
From: Linjie Fu <linjie.fu@intel.com>

Described in HEVC spec A.3.7. Bump minor version and add APIchanges
entry for new added profile.

Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
Signed-off-by: Fei Wang <fei.w.wang@intel.com>
---
1. fix warning of patchwork report for V6.

 doc/APIchanges        | 3 +++
 libavcodec/avcodec.h  | 1 +
 libavcodec/hevc_ps.c  | 2 ++
 libavcodec/profiles.c | 1 +
 libavcodec/version.h  | 2 +-
 5 files changed, 8 insertions(+), 1 deletion(-)

Comments

Xiang, Haihao Feb. 19, 2023, 2:10 a.m. UTC | #1
On Do, 2023-02-16 at 13:46 +0800, Fei Wang wrote:
> From: Linjie Fu <linjie.fu@intel.com>
> 
> Described in HEVC spec A.3.7. Bump minor version and add APIchanges
> entry for new added profile.
> 
> Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
> ---
> 1. fix warning of patchwork report for V6.
> 
>  doc/APIchanges        | 3 +++
>  libavcodec/avcodec.h  | 1 +
>  libavcodec/hevc_ps.c  | 2 ++
>  libavcodec/profiles.c | 1 +
>  libavcodec/version.h  | 2 +-
>  5 files changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/doc/APIchanges b/doc/APIchanges
> index 29161e30bf..196f681730 100644
> --- a/doc/APIchanges
> +++ b/doc/APIchanges
> @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-02-09
>  
>  API changes, most recent first:
>  
> +2023-02-16 - xxxxxxxxxx - lavc 60.3.100 - avcodec.h
> +  Add FF_PROFILE_HEVC_SCC.
> +
>  2023-02-16 - xxxxxxxxxx - lavf 60.2.100 - avformat.h
>    Deprecate AVFormatContext io_close callback.
>    The superior io_close2 callback should be used instead.
> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> index 39881a1d2b..9a0fe97cad 100644
> --- a/libavcodec/avcodec.h
> +++ b/libavcodec/avcodec.h
> @@ -1654,6 +1654,7 @@ typedef struct AVCodecContext {
>  #define FF_PROFILE_HEVC_MAIN_10                     2
>  #define FF_PROFILE_HEVC_MAIN_STILL_PICTURE          3
>  #define FF_PROFILE_HEVC_REXT                        4
> +#define FF_PROFILE_HEVC_SCC                         9
>  
>  #define FF_PROFILE_VVC_MAIN_10                      1
>  #define FF_PROFILE_VVC_MAIN_10_444                 33
> diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c
> index 5fe62ec35b..4aa5b76d5f 100644
> --- a/libavcodec/hevc_ps.c
> +++ b/libavcodec/hevc_ps.c
> @@ -259,6 +259,8 @@ static int decode_profile_tier_level(GetBitContext *gb,
> AVCodecContext *avctx,
>          av_log(avctx, AV_LOG_DEBUG, "Main Still Picture profile
> bitstream\n");
>      else if (ptl->profile_idc == FF_PROFILE_HEVC_REXT)
>          av_log(avctx, AV_LOG_DEBUG, "Range Extension profile bitstream\n");
> +    else if (ptl->profile_idc == FF_PROFILE_HEVC_SCC)
> +        av_log(avctx, AV_LOG_DEBUG, "Screen Content Coding Extension profile
> bitstream\n");
>      else
>          av_log(avctx, AV_LOG_WARNING, "Unknown HEVC profile: %d\n", ptl-
> >profile_idc);
>  
> diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c
> index 7af7fbeb13..2230fc5415 100644
> --- a/libavcodec/profiles.c
> +++ b/libavcodec/profiles.c
> @@ -85,6 +85,7 @@ const AVProfile ff_hevc_profiles[] = {
>      { FF_PROFILE_HEVC_MAIN_10,              "Main 10"             },
>      { FF_PROFILE_HEVC_MAIN_STILL_PICTURE,   "Main Still Picture"  },
>      { FF_PROFILE_HEVC_REXT,                 "Rext"                },
> +    { FF_PROFILE_HEVC_SCC,                  "Scc"                 },
>      { FF_PROFILE_UNKNOWN },
>  };
>  
> diff --git a/libavcodec/version.h b/libavcodec/version.h
> index 0550d7b0d8..43794ea588 100644
> --- a/libavcodec/version.h
> +++ b/libavcodec/version.h
> @@ -29,7 +29,7 @@
>  
>  #include "version_major.h"
>  
> -#define LIBAVCODEC_VERSION_MINOR   2
> +#define LIBAVCODEC_VERSION_MINOR   3
>  #define LIBAVCODEC_VERSION_MICRO 100
>  
>  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \


v7 LGTM.

Thanks
Haihao
Xiang, Haihao Feb. 24, 2023, 4:05 a.m. UTC | #2
On So, 2023-02-19 at 02:10 +0000, Xiang, Haihao wrote:
> On Do, 2023-02-16 at 13:46 +0800, Fei Wang wrote:
> > From: Linjie Fu <linjie.fu@intel.com>
> > 
> > Described in HEVC spec A.3.7. Bump minor version and add APIchanges
> > entry for new added profile.
> > 
> > Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
> > Signed-off-by: Fei Wang <fei.w.wang@intel.com>
> > ---
> > 1. fix warning of patchwork report for V6.
> > 
> >  doc/APIchanges        | 3 +++
> >  libavcodec/avcodec.h  | 1 +
> >  libavcodec/hevc_ps.c  | 2 ++
> >  libavcodec/profiles.c | 1 +
> >  libavcodec/version.h  | 2 +-
> >  5 files changed, 8 insertions(+), 1 deletion(-)
> > 
> > diff --git a/doc/APIchanges b/doc/APIchanges
> > index 29161e30bf..196f681730 100644
> > --- a/doc/APIchanges
> > +++ b/doc/APIchanges
> > @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-02-
> > 09
> >  
> >  API changes, most recent first:
> >  
> > +2023-02-16 - xxxxxxxxxx - lavc 60.3.100 - avcodec.h
> > +  Add FF_PROFILE_HEVC_SCC.
> > +
> >  2023-02-16 - xxxxxxxxxx - lavf 60.2.100 - avformat.h
> >    Deprecate AVFormatContext io_close callback.
> >    The superior io_close2 callback should be used instead.
> > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> > index 39881a1d2b..9a0fe97cad 100644
> > --- a/libavcodec/avcodec.h
> > +++ b/libavcodec/avcodec.h
> > @@ -1654,6 +1654,7 @@ typedef struct AVCodecContext {
> >  #define FF_PROFILE_HEVC_MAIN_10                     2
> >  #define FF_PROFILE_HEVC_MAIN_STILL_PICTURE          3
> >  #define FF_PROFILE_HEVC_REXT                        4
> > +#define FF_PROFILE_HEVC_SCC                         9
> >  
> >  #define FF_PROFILE_VVC_MAIN_10                      1
> >  #define FF_PROFILE_VVC_MAIN_10_444                 33
> > diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c
> > index 5fe62ec35b..4aa5b76d5f 100644
> > --- a/libavcodec/hevc_ps.c
> > +++ b/libavcodec/hevc_ps.c
> > @@ -259,6 +259,8 @@ static int decode_profile_tier_level(GetBitContext *gb,
> > AVCodecContext *avctx,
> >          av_log(avctx, AV_LOG_DEBUG, "Main Still Picture profile
> > bitstream\n");
> >      else if (ptl->profile_idc == FF_PROFILE_HEVC_REXT)
> >          av_log(avctx, AV_LOG_DEBUG, "Range Extension profile bitstream\n");
> > +    else if (ptl->profile_idc == FF_PROFILE_HEVC_SCC)
> > +        av_log(avctx, AV_LOG_DEBUG, "Screen Content Coding Extension
> > profile
> > bitstream\n");
> >      else
> >          av_log(avctx, AV_LOG_WARNING, "Unknown HEVC profile: %d\n", ptl-
> > > profile_idc);
> >  
> > diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c
> > index 7af7fbeb13..2230fc5415 100644
> > --- a/libavcodec/profiles.c
> > +++ b/libavcodec/profiles.c
> > @@ -85,6 +85,7 @@ const AVProfile ff_hevc_profiles[] = {
> >      { FF_PROFILE_HEVC_MAIN_10,              "Main 10"             },
> >      { FF_PROFILE_HEVC_MAIN_STILL_PICTURE,   "Main Still Picture"  },
> >      { FF_PROFILE_HEVC_REXT,                 "Rext"                },
> > +    { FF_PROFILE_HEVC_SCC,                  "Scc"                 },
> >      { FF_PROFILE_UNKNOWN },
> >  };
> >  
> > diff --git a/libavcodec/version.h b/libavcodec/version.h
> > index 0550d7b0d8..43794ea588 100644
> > --- a/libavcodec/version.h
> > +++ b/libavcodec/version.h
> > @@ -29,7 +29,7 @@
> >  
> >  #include "version_major.h"
> >  
> > -#define LIBAVCODEC_VERSION_MINOR   2
> > +#define LIBAVCODEC_VERSION_MINOR   3
> >  #define LIBAVCODEC_VERSION_MICRO 100
> >  
> >  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
> 
> 
> v7 LGTM.
> 

Ping, 
I'll push this in a few days if there are no comments 

Thanks
Haihao
Xiang, Haihao Feb. 27, 2023, 5:57 a.m. UTC | #3
On Vr, 2023-02-24 at 04:05 +0000, Xiang, Haihao wrote:
> On So, 2023-02-19 at 02:10 +0000, Xiang, Haihao wrote:
> > On Do, 2023-02-16 at 13:46 +0800, Fei Wang wrote:
> > > From: Linjie Fu <linjie.fu@intel.com>
> > > 
> > > Described in HEVC spec A.3.7. Bump minor version and add APIchanges
> > > entry for new added profile.
> > > 
> > > Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
> > > Signed-off-by: Fei Wang <fei.w.wang@intel.com>
> > > ---
> > > 1. fix warning of patchwork report for V6.
> > > 
> > >  doc/APIchanges        | 3 +++
> > >  libavcodec/avcodec.h  | 1 +
> > >  libavcodec/hevc_ps.c  | 2 ++
> > >  libavcodec/profiles.c | 1 +
> > >  libavcodec/version.h  | 2 +-
> > >  5 files changed, 8 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/doc/APIchanges b/doc/APIchanges
> > > index 29161e30bf..196f681730 100644
> > > --- a/doc/APIchanges
> > > +++ b/doc/APIchanges
> > > @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-
> > > 02-
> > > 09
> > >  
> > >  API changes, most recent first:
> > >  
> > > +2023-02-16 - xxxxxxxxxx - lavc 60.3.100 - avcodec.h
> > > +  Add FF_PROFILE_HEVC_SCC.
> > > +
> > >  2023-02-16 - xxxxxxxxxx - lavf 60.2.100 - avformat.h
> > >    Deprecate AVFormatContext io_close callback.
> > >    The superior io_close2 callback should be used instead.
> > > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> > > index 39881a1d2b..9a0fe97cad 100644
> > > --- a/libavcodec/avcodec.h
> > > +++ b/libavcodec/avcodec.h
> > > @@ -1654,6 +1654,7 @@ typedef struct AVCodecContext {
> > >  #define FF_PROFILE_HEVC_MAIN_10                     2
> > >  #define FF_PROFILE_HEVC_MAIN_STILL_PICTURE          3
> > >  #define FF_PROFILE_HEVC_REXT                        4
> > > +#define FF_PROFILE_HEVC_SCC                         9
> > >  
> > >  #define FF_PROFILE_VVC_MAIN_10                      1
> > >  #define FF_PROFILE_VVC_MAIN_10_444                 33
> > > diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c
> > > index 5fe62ec35b..4aa5b76d5f 100644
> > > --- a/libavcodec/hevc_ps.c
> > > +++ b/libavcodec/hevc_ps.c
> > > @@ -259,6 +259,8 @@ static int decode_profile_tier_level(GetBitContext
> > > *gb,
> > > AVCodecContext *avctx,
> > >          av_log(avctx, AV_LOG_DEBUG, "Main Still Picture profile
> > > bitstream\n");
> > >      else if (ptl->profile_idc == FF_PROFILE_HEVC_REXT)
> > >          av_log(avctx, AV_LOG_DEBUG, "Range Extension profile
> > > bitstream\n");
> > > +    else if (ptl->profile_idc == FF_PROFILE_HEVC_SCC)
> > > +        av_log(avctx, AV_LOG_DEBUG, "Screen Content Coding Extension
> > > profile
> > > bitstream\n");
> > >      else
> > >          av_log(avctx, AV_LOG_WARNING, "Unknown HEVC profile: %d\n", ptl-
> > > > profile_idc);
> > >  
> > > diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c
> > > index 7af7fbeb13..2230fc5415 100644
> > > --- a/libavcodec/profiles.c
> > > +++ b/libavcodec/profiles.c
> > > @@ -85,6 +85,7 @@ const AVProfile ff_hevc_profiles[] = {
> > >      { FF_PROFILE_HEVC_MAIN_10,              "Main 10"             },
> > >      { FF_PROFILE_HEVC_MAIN_STILL_PICTURE,   "Main Still Picture"  },
> > >      { FF_PROFILE_HEVC_REXT,                 "Rext"                },
> > > +    { FF_PROFILE_HEVC_SCC,                  "Scc"                 },
> > >      { FF_PROFILE_UNKNOWN },
> > >  };
> > >  
> > > diff --git a/libavcodec/version.h b/libavcodec/version.h
> > > index 0550d7b0d8..43794ea588 100644
> > > --- a/libavcodec/version.h
> > > +++ b/libavcodec/version.h
> > > @@ -29,7 +29,7 @@
> > >  
> > >  #include "version_major.h"
> > >  
> > > -#define LIBAVCODEC_VERSION_MINOR   2
> > > +#define LIBAVCODEC_VERSION_MINOR   3
> > >  #define LIBAVCODEC_VERSION_MICRO 100
> > >  
> > >  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR,
> > > \
> > 
> > 
> > v7 LGTM.
> > 
> 
> Ping, 
> I'll push this in a few days if there are no comments 

Pushed,

- Haihao
diff mbox series

Patch

diff --git a/doc/APIchanges b/doc/APIchanges
index 29161e30bf..196f681730 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -2,6 +2,9 @@  The last version increases of all libraries were on 2023-02-09
 
 API changes, most recent first:
 
+2023-02-16 - xxxxxxxxxx - lavc 60.3.100 - avcodec.h
+  Add FF_PROFILE_HEVC_SCC.
+
 2023-02-16 - xxxxxxxxxx - lavf 60.2.100 - avformat.h
   Deprecate AVFormatContext io_close callback.
   The superior io_close2 callback should be used instead.
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 39881a1d2b..9a0fe97cad 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -1654,6 +1654,7 @@  typedef struct AVCodecContext {
 #define FF_PROFILE_HEVC_MAIN_10                     2
 #define FF_PROFILE_HEVC_MAIN_STILL_PICTURE          3
 #define FF_PROFILE_HEVC_REXT                        4
+#define FF_PROFILE_HEVC_SCC                         9
 
 #define FF_PROFILE_VVC_MAIN_10                      1
 #define FF_PROFILE_VVC_MAIN_10_444                 33
diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c
index 5fe62ec35b..4aa5b76d5f 100644
--- a/libavcodec/hevc_ps.c
+++ b/libavcodec/hevc_ps.c
@@ -259,6 +259,8 @@  static int decode_profile_tier_level(GetBitContext *gb, AVCodecContext *avctx,
         av_log(avctx, AV_LOG_DEBUG, "Main Still Picture profile bitstream\n");
     else if (ptl->profile_idc == FF_PROFILE_HEVC_REXT)
         av_log(avctx, AV_LOG_DEBUG, "Range Extension profile bitstream\n");
+    else if (ptl->profile_idc == FF_PROFILE_HEVC_SCC)
+        av_log(avctx, AV_LOG_DEBUG, "Screen Content Coding Extension profile bitstream\n");
     else
         av_log(avctx, AV_LOG_WARNING, "Unknown HEVC profile: %d\n", ptl->profile_idc);
 
diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c
index 7af7fbeb13..2230fc5415 100644
--- a/libavcodec/profiles.c
+++ b/libavcodec/profiles.c
@@ -85,6 +85,7 @@  const AVProfile ff_hevc_profiles[] = {
     { FF_PROFILE_HEVC_MAIN_10,              "Main 10"             },
     { FF_PROFILE_HEVC_MAIN_STILL_PICTURE,   "Main Still Picture"  },
     { FF_PROFILE_HEVC_REXT,                 "Rext"                },
+    { FF_PROFILE_HEVC_SCC,                  "Scc"                 },
     { FF_PROFILE_UNKNOWN },
 };
 
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 0550d7b0d8..43794ea588 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -29,7 +29,7 @@ 
 
 #include "version_major.h"
 
-#define LIBAVCODEC_VERSION_MINOR   2
+#define LIBAVCODEC_VERSION_MINOR   3
 #define LIBAVCODEC_VERSION_MICRO 100
 
 #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \