diff mbox series

[FFmpeg-devel,v1] lavc/av1dec: use frame split bsf

Message ID 20211215080637.3097627-1-fei.w.wang@intel.com
State Accepted
Commit 7787cca18016c1f8100ab158f3479ba4b7e70467
Headers show
Series [FFmpeg-devel,v1] lavc/av1dec: use frame split bsf | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished
andriy/make_ppc success Make finished
andriy/make_fate_ppc success Make fate finished

Commit Message

Fei Wang Dec. 15, 2021, 8:06 a.m. UTC
Split packed data in case of its contains multiple show frame in some
non-standard bitstream. This can benefit decoder which can decode
continuously instead of interrupt with unexpected error.

Signed-off-by: Fei Wang <fei.w.wang@intel.com>
---
This is an improvement fix for my previous patch:
https://patchwork.ffmpeg.org/project/ffmpeg/patch/20211203080920.1948453-1-fei.w.wang@intel.com/

 libavcodec/av1dec.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Xiang, Haihao Dec. 28, 2021, 6 a.m. UTC | #1
On Wed, 2021-12-15 at 16:06 +0800, Fei Wang wrote:
> Split packed data in case of its contains multiple show frame in some
> non-standard bitstream. This can benefit decoder which can decode
> continuously instead of interrupt with unexpected error.
> 
> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
> ---
> This is an improvement fix for my previous patch:
> 
https://patchwork.ffmpeg.org/project/ffmpeg/patch/20211203080920.1948453-1-fei.w.wang@intel.com/
> 
>  libavcodec/av1dec.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
> index db110c50c7..09df2bf421 100644
> --- a/libavcodec/av1dec.c
> +++ b/libavcodec/av1dec.c
> @@ -1240,6 +1240,7 @@ const AVCodec ff_av1_decoder = {
>      .flush                 = av1_decode_flush,
>      .profiles              = NULL_IF_CONFIG_SMALL(ff_av1_profiles),
>      .priv_class            = &av1_class,
> +    .bsfs                  = "av1_frame_split",
>      .hw_configs            = (const AVCodecHWConfigInternal *const []) {
>  #if CONFIG_AV1_DXVA2_HWACCEL
>          HWACCEL_DXVA2(av1),

LGTM

-Haihao
Xiang, Haihao Jan. 4, 2022, 8:29 a.m. UTC | #2
On Tue, 2021-12-28 at 06:00 +0000, Xiang, Haihao wrote:
> On Wed, 2021-12-15 at 16:06 +0800, Fei Wang wrote:
> > Split packed data in case of its contains multiple show frame in some
> > non-standard bitstream. This can benefit decoder which can decode
> > continuously instead of interrupt with unexpected error.
> > 
> > Signed-off-by: Fei Wang <fei.w.wang@intel.com>
> > ---
> > This is an improvement fix for my previous patch:
> > 
> 
> 
https://patchwork.ffmpeg.org/project/ffmpeg/patch/20211203080920.1948453-1-fei.w.wang@intel.com/
> > 
> >  libavcodec/av1dec.c | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
> > index db110c50c7..09df2bf421 100644
> > --- a/libavcodec/av1dec.c
> > +++ b/libavcodec/av1dec.c
> > @@ -1240,6 +1240,7 @@ const AVCodec ff_av1_decoder = {
> >      .flush                 = av1_decode_flush,
> >      .profiles              = NULL_IF_CONFIG_SMALL(ff_av1_profiles),
> >      .priv_class            = &av1_class,
> > +    .bsfs                  = "av1_frame_split",
> >      .hw_configs            = (const AVCodecHWConfigInternal *const []) {
> >  #if CONFIG_AV1_DXVA2_HWACCEL
> >          HWACCEL_DXVA2(av1),
> 
> LGTM

This patch works well for me when using vaapi av1 decoding. I'll apply it if no
objection. 

Thanks
Haihao
Xiang, Haihao Jan. 7, 2022, 7:04 a.m. UTC | #3
On Tue, 2022-01-04 at 08:29 +0000, Xiang, Haihao wrote:
> On Tue, 2021-12-28 at 06:00 +0000, Xiang, Haihao wrote:
> > On Wed, 2021-12-15 at 16:06 +0800, Fei Wang wrote:
> > > Split packed data in case of its contains multiple show frame in some
> > > non-standard bitstream. This can benefit decoder which can decode
> > > continuously instead of interrupt with unexpected error.
> > > 
> > > Signed-off-by: Fei Wang <fei.w.wang@intel.com>
> > > ---
> > > This is an improvement fix for my previous patch:
> > > 
> > 
> > 
> 
> 
https://patchwork.ffmpeg.org/project/ffmpeg/patch/20211203080920.1948453-1-fei.w.wang@intel.com/
> > > 
> > >  libavcodec/av1dec.c | 1 +
> > >  1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
> > > index db110c50c7..09df2bf421 100644
> > > --- a/libavcodec/av1dec.c
> > > +++ b/libavcodec/av1dec.c
> > > @@ -1240,6 +1240,7 @@ const AVCodec ff_av1_decoder = {
> > >      .flush                 = av1_decode_flush,
> > >      .profiles              = NULL_IF_CONFIG_SMALL(ff_av1_profiles),
> > >      .priv_class            = &av1_class,
> > > +    .bsfs                  = "av1_frame_split",
> > >      .hw_configs            = (const AVCodecHWConfigInternal *const []) {
> > >  #if CONFIG_AV1_DXVA2_HWACCEL
> > >          HWACCEL_DXVA2(av1),
> > 
> > LGTM
> 
> This patch works well for me when using vaapi av1 decoding. I'll apply it if
> no
> objection. 

Applied, thx!
diff mbox series

Patch

diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
index db110c50c7..09df2bf421 100644
--- a/libavcodec/av1dec.c
+++ b/libavcodec/av1dec.c
@@ -1240,6 +1240,7 @@  const AVCodec ff_av1_decoder = {
     .flush                 = av1_decode_flush,
     .profiles              = NULL_IF_CONFIG_SMALL(ff_av1_profiles),
     .priv_class            = &av1_class,
+    .bsfs                  = "av1_frame_split",
     .hw_configs            = (const AVCodecHWConfigInternal *const []) {
 #if CONFIG_AV1_DXVA2_HWACCEL
         HWACCEL_DXVA2(av1),