* [FFmpeg-devel] [PATCH v2 1/2] configure: Alphabetical order for av1 codecs @ 2024-06-14 8:28 fei.w.wang-at-intel.com 2024-06-14 8:28 ` [FFmpeg-devel] [PATCH v2 2/2] lavc/qsvdec: Add VVC decoder fei.w.wang-at-intel.com 0 siblings, 1 reply; 4+ messages in thread From: fei.w.wang-at-intel.com @ 2024-06-14 8:28 UTC (permalink / raw) To: ffmpeg-devel; +Cc: fei.w.wang From: Fei Wang <fei.w.wang@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com> --- configure | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/configure b/configure index 06a72e4114..6d31698142 100755 --- a/configure +++ b/configure @@ -3321,12 +3321,18 @@ nvenc_deps_any="libdl LoadLibrary" aac_mf_encoder_deps="mediafoundation" ac3_mf_encoder_deps="mediafoundation" +av1_amf_encoder_deps="amf" av1_cuvid_decoder_deps="cuvid CUVIDAV1PICPARAMS" av1_mediacodec_decoder_deps="mediacodec" av1_mediacodec_encoder_deps="mediacodec" av1_mediacodec_encoder_select="extract_extradata_bsf" av1_nvenc_encoder_deps="nvenc NV_ENC_PIC_PARAMS_AV1" av1_nvenc_encoder_select="atsc_a53" +av1_qsv_decoder_select="qsvdec" +av1_qsv_encoder_deps="libvpl" +av1_qsv_encoder_select="qsvenc" +av1_vaapi_encoder_deps="VAEncPictureParameterBufferAV1" +av1_vaapi_encoder_select="cbs_av1 vaapi_encode" h263_v4l2m2m_decoder_deps="v4l2_m2m h263_v4l2_m2m" h263_v4l2m2m_encoder_deps="v4l2_m2m h263_v4l2_m2m" h264_amf_encoder_deps="amf" @@ -3415,12 +3421,6 @@ vp9_vaapi_encoder_select="vaapi_encode" vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" vp9_qsv_encoder_select="qsvenc" vp9_v4l2m2m_decoder_deps="v4l2_m2m vp9_v4l2_m2m" -av1_qsv_decoder_select="qsvdec" -av1_qsv_encoder_select="qsvenc" -av1_qsv_encoder_deps="libvpl" -av1_amf_encoder_deps="amf" -av1_vaapi_encoder_deps="VAEncPictureParameterBufferAV1" -av1_vaapi_encoder_select="cbs_av1 vaapi_encode" # parsers aac_parser_select="adts_header mpeg4audio" -- 2.25.1 _______________________________________________ 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". ^ permalink raw reply [flat|nested] 4+ messages in thread
* [FFmpeg-devel] [PATCH v2 2/2] lavc/qsvdec: Add VVC decoder 2024-06-14 8:28 [FFmpeg-devel] [PATCH v2 1/2] configure: Alphabetical order for av1 codecs fei.w.wang-at-intel.com @ 2024-06-14 8:28 ` fei.w.wang-at-intel.com 2024-07-26 4:43 ` Xiang, Haihao 0 siblings, 1 reply; 4+ messages in thread From: fei.w.wang-at-intel.com @ 2024-06-14 8:28 UTC (permalink / raw) To: ffmpeg-devel; +Cc: fei.w.wang From: Fei Wang <fei.w.wang@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com> --- Changelog | 1 + configure | 1 + doc/decoders.texi | 2 +- libavcodec/allcodecs.c | 1 + libavcodec/qsv.c | 4 ++++ libavcodec/qsvdec.c | 7 ++++++- libavcodec/version.h | 2 +- 7 files changed, 15 insertions(+), 3 deletions(-) diff --git a/Changelog b/Changelog index 881b0e67a3..1fd1fce0c6 100644 --- a/Changelog +++ b/Changelog @@ -13,6 +13,7 @@ version <next>: - VVC decoder compatible with DVB test content - xHE-AAC decoder - removed DEC Alpha DSP and support code +- Intel QSV-accelerated VVC decoding version 7.0: diff --git a/configure b/configure index 6d31698142..d50f444141 100755 --- a/configure +++ b/configure @@ -3421,6 +3421,7 @@ vp9_vaapi_encoder_select="vaapi_encode" vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" vp9_qsv_encoder_select="qsvenc" vp9_v4l2m2m_decoder_deps="v4l2_m2m vp9_v4l2_m2m" +vvc_qsv_decoder_select="qsvdec" # parsers aac_parser_select="adts_header mpeg4audio" diff --git a/doc/decoders.texi b/doc/decoders.texi index 293c82c2ba..2fcc761d2f 100644 --- a/doc/decoders.texi +++ b/doc/decoders.texi @@ -157,7 +157,7 @@ Force to use a specific number of threads @section QSV Decoders The family of Intel QuickSync Video decoders (VC1, MPEG-2, H.264, HEVC, -JPEG/MJPEG, VP8, VP9, AV1). +JPEG/MJPEG, VP8, VP9, AV1, VVC). @subsection Common Options diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index b102a8069e..a73b4e1673 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -885,6 +885,7 @@ extern const FFCodec ff_vp9_mediacodec_encoder; extern const FFCodec ff_vp9_qsv_decoder; extern const FFCodec ff_vp9_vaapi_encoder; extern const FFCodec ff_vp9_qsv_encoder; +extern const FFCodec ff_vvc_qsv_decoder; // null codecs extern const FFCodec ff_vnull_decoder; diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c index 0c6fbd0dc0..221c1b24e5 100644 --- a/libavcodec/qsv.c +++ b/libavcodec/qsv.c @@ -73,6 +73,10 @@ int ff_qsv_codec_id_to_mfx(enum AVCodecID codec_id) case AV_CODEC_ID_AV1: return MFX_CODEC_AV1; #endif +#if QSV_VERSION_ATLEAST(2, 11) + case AV_CODEC_ID_VVC: + return MFX_CODEC_VVC; +#endif default: break; diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c index f2cd6ae05c..9ad3439991 100644 --- a/libavcodec/qsvdec.c +++ b/libavcodec/qsvdec.c @@ -933,7 +933,8 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext *q, frame->pict_type = ff_qsv_map_pictype(aframe.frame->dec_info.FrameType); if (avctx->codec_id == AV_CODEC_ID_H264 || - avctx->codec_id == AV_CODEC_ID_HEVC) { + avctx->codec_id == AV_CODEC_ID_HEVC || + avctx->codec_id == AV_CODEC_ID_VVC) { if (aframe.frame->dec_info.FrameType & MFX_FRAMETYPE_IDR) frame->flags |= AV_FRAME_FLAG_KEY; else @@ -1300,3 +1301,7 @@ DEFINE_QSV_DECODER(vp9, VP9, NULL) #if CONFIG_AV1_QSV_DECODER DEFINE_QSV_DECODER(av1, AV1, NULL) #endif + +#if CONFIG_VVC_QSV_DECODER +DEFINE_QSV_DECODER(vvc, VVC, NULL) +#endif diff --git a/libavcodec/version.h b/libavcodec/version.h index 7acb261bb3..37c4c39451 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #include "version_major.h" -#define LIBAVCODEC_VERSION_MINOR 7 +#define LIBAVCODEC_VERSION_MINOR 8 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ -- 2.25.1 _______________________________________________ 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". ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2 2/2] lavc/qsvdec: Add VVC decoder 2024-06-14 8:28 ` [FFmpeg-devel] [PATCH v2 2/2] lavc/qsvdec: Add VVC decoder fei.w.wang-at-intel.com @ 2024-07-26 4:43 ` Xiang, Haihao 2024-07-30 7:45 ` Xiang, Haihao 0 siblings, 1 reply; 4+ messages in thread From: Xiang, Haihao @ 2024-07-26 4:43 UTC (permalink / raw) To: ffmpeg-devel; +Cc: Wang, Fei W On Vr, 2024-06-14 at 16:28 +0800, fei.w.wang-at-intel.com@ffmpeg.org wrote: > From: Fei Wang <fei.w.wang@intel.com> > > Signed-off-by: Fei Wang <fei.w.wang@intel.com> > --- > Changelog | 1 + > configure | 1 + > doc/decoders.texi | 2 +- > libavcodec/allcodecs.c | 1 + > libavcodec/qsv.c | 4 ++++ > libavcodec/qsvdec.c | 7 ++++++- > libavcodec/version.h | 2 +- > 7 files changed, 15 insertions(+), 3 deletions(-) > > diff --git a/Changelog b/Changelog > index 881b0e67a3..1fd1fce0c6 100644 > --- a/Changelog > +++ b/Changelog > @@ -13,6 +13,7 @@ version <next>: > - VVC decoder compatible with DVB test content > - xHE-AAC decoder > - removed DEC Alpha DSP and support code > +- Intel QSV-accelerated VVC decoding > > > version 7.0: > diff --git a/configure b/configure > index 6d31698142..d50f444141 100755 > --- a/configure > +++ b/configure > @@ -3421,6 +3421,7 @@ vp9_vaapi_encoder_select="vaapi_encode" > vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" > vp9_qsv_encoder_select="qsvenc" > vp9_v4l2m2m_decoder_deps="v4l2_m2m vp9_v4l2_m2m" > +vvc_qsv_decoder_select="qsvdec" > > # parsers > aac_parser_select="adts_header mpeg4audio" > diff --git a/doc/decoders.texi b/doc/decoders.texi > index 293c82c2ba..2fcc761d2f 100644 > --- a/doc/decoders.texi > +++ b/doc/decoders.texi > @@ -157,7 +157,7 @@ Force to use a specific number of threads > @section QSV Decoders > > The family of Intel QuickSync Video decoders (VC1, MPEG-2, H.264, HEVC, > -JPEG/MJPEG, VP8, VP9, AV1). > +JPEG/MJPEG, VP8, VP9, AV1, VVC). > > @subsection Common Options > > diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c > index b102a8069e..a73b4e1673 100644 > --- a/libavcodec/allcodecs.c > +++ b/libavcodec/allcodecs.c > @@ -885,6 +885,7 @@ extern const FFCodec ff_vp9_mediacodec_encoder; > extern const FFCodec ff_vp9_qsv_decoder; > extern const FFCodec ff_vp9_vaapi_encoder; > extern const FFCodec ff_vp9_qsv_encoder; > +extern const FFCodec ff_vvc_qsv_decoder; > > // null codecs > extern const FFCodec ff_vnull_decoder; > diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c > index 0c6fbd0dc0..221c1b24e5 100644 > --- a/libavcodec/qsv.c > +++ b/libavcodec/qsv.c > @@ -73,6 +73,10 @@ int ff_qsv_codec_id_to_mfx(enum AVCodecID codec_id) > case AV_CODEC_ID_AV1: > return MFX_CODEC_AV1; > #endif > +#if QSV_VERSION_ATLEAST(2, 11) > + case AV_CODEC_ID_VVC: > + return MFX_CODEC_VVC; > +#endif > > default: > break; > diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c > index f2cd6ae05c..9ad3439991 100644 > --- a/libavcodec/qsvdec.c > +++ b/libavcodec/qsvdec.c > @@ -933,7 +933,8 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext > *q, > frame->pict_type = ff_qsv_map_pictype(aframe.frame- > >dec_info.FrameType); > > if (avctx->codec_id == AV_CODEC_ID_H264 || > - avctx->codec_id == AV_CODEC_ID_HEVC) { > + avctx->codec_id == AV_CODEC_ID_HEVC || > + avctx->codec_id == AV_CODEC_ID_VVC) { > if (aframe.frame->dec_info.FrameType & MFX_FRAMETYPE_IDR) > frame->flags |= AV_FRAME_FLAG_KEY; > else > @@ -1300,3 +1301,7 @@ DEFINE_QSV_DECODER(vp9, VP9, NULL) > #if CONFIG_AV1_QSV_DECODER > DEFINE_QSV_DECODER(av1, AV1, NULL) > #endif > + > +#if CONFIG_VVC_QSV_DECODER > +DEFINE_QSV_DECODER(vvc, VVC, NULL) > +#endif > diff --git a/libavcodec/version.h b/libavcodec/version.h > index 7acb261bb3..37c4c39451 100644 > --- a/libavcodec/version.h > +++ b/libavcodec/version.h > @@ -29,7 +29,7 @@ > > #include "version_major.h" > > -#define LIBAVCODEC_VERSION_MINOR 7 > +#define LIBAVCODEC_VERSION_MINOR 8 > #define LIBAVCODEC_VERSION_MICRO 100 > > #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ LGTM, will apply -Haihao _______________________________________________ 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". ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2 2/2] lavc/qsvdec: Add VVC decoder 2024-07-26 4:43 ` Xiang, Haihao @ 2024-07-30 7:45 ` Xiang, Haihao 0 siblings, 0 replies; 4+ messages in thread From: Xiang, Haihao @ 2024-07-30 7:45 UTC (permalink / raw) To: ffmpeg-devel; +Cc: Wang, Fei W On Vr, 2024-07-26 at 04:43 +0000, Xiang, Haihao wrote: > On Vr, 2024-06-14 at 16:28 +0800, fei.w.wang-at-intel.com@ffmpeg.org wrote: > > From: Fei Wang <fei.w.wang@intel.com> > > > > Signed-off-by: Fei Wang <fei.w.wang@intel.com> > > --- > > Changelog | 1 + > > configure | 1 + > > doc/decoders.texi | 2 +- > > libavcodec/allcodecs.c | 1 + > > libavcodec/qsv.c | 4 ++++ > > libavcodec/qsvdec.c | 7 ++++++- > > libavcodec/version.h | 2 +- > > 7 files changed, 15 insertions(+), 3 deletions(-) > > > > diff --git a/Changelog b/Changelog > > index 881b0e67a3..1fd1fce0c6 100644 > > --- a/Changelog > > +++ b/Changelog > > @@ -13,6 +13,7 @@ version <next>: > > - VVC decoder compatible with DVB test content > > - xHE-AAC decoder > > - removed DEC Alpha DSP and support code > > +- Intel QSV-accelerated VVC decoding > > > > > > version 7.0: > > diff --git a/configure b/configure > > index 6d31698142..d50f444141 100755 > > --- a/configure > > +++ b/configure > > @@ -3421,6 +3421,7 @@ vp9_vaapi_encoder_select="vaapi_encode" > > vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" > > vp9_qsv_encoder_select="qsvenc" > > vp9_v4l2m2m_decoder_deps="v4l2_m2m vp9_v4l2_m2m" > > +vvc_qsv_decoder_select="qsvdec" > > > > # parsers > > aac_parser_select="adts_header mpeg4audio" > > diff --git a/doc/decoders.texi b/doc/decoders.texi > > index 293c82c2ba..2fcc761d2f 100644 > > --- a/doc/decoders.texi > > +++ b/doc/decoders.texi > > @@ -157,7 +157,7 @@ Force to use a specific number of threads > > @section QSV Decoders > > > > The family of Intel QuickSync Video decoders (VC1, MPEG-2, H.264, HEVC, > > -JPEG/MJPEG, VP8, VP9, AV1). > > +JPEG/MJPEG, VP8, VP9, AV1, VVC). > > > > @subsection Common Options > > > > diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c > > index b102a8069e..a73b4e1673 100644 > > --- a/libavcodec/allcodecs.c > > +++ b/libavcodec/allcodecs.c > > @@ -885,6 +885,7 @@ extern const FFCodec ff_vp9_mediacodec_encoder; > > extern const FFCodec ff_vp9_qsv_decoder; > > extern const FFCodec ff_vp9_vaapi_encoder; > > extern const FFCodec ff_vp9_qsv_encoder; > > +extern const FFCodec ff_vvc_qsv_decoder; > > > > // null codecs > > extern const FFCodec ff_vnull_decoder; > > diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c > > index 0c6fbd0dc0..221c1b24e5 100644 > > --- a/libavcodec/qsv.c > > +++ b/libavcodec/qsv.c > > @@ -73,6 +73,10 @@ int ff_qsv_codec_id_to_mfx(enum AVCodecID codec_id) > > case AV_CODEC_ID_AV1: > > return MFX_CODEC_AV1; > > #endif > > +#if QSV_VERSION_ATLEAST(2, 11) > > + case AV_CODEC_ID_VVC: > > + return MFX_CODEC_VVC; > > +#endif > > > > default: > > break; > > diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c > > index f2cd6ae05c..9ad3439991 100644 > > --- a/libavcodec/qsvdec.c > > +++ b/libavcodec/qsvdec.c > > @@ -933,7 +933,8 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext > > *q, > > frame->pict_type = ff_qsv_map_pictype(aframe.frame- > > > dec_info.FrameType); > > > > if (avctx->codec_id == AV_CODEC_ID_H264 || > > - avctx->codec_id == AV_CODEC_ID_HEVC) { > > + avctx->codec_id == AV_CODEC_ID_HEVC || > > + avctx->codec_id == AV_CODEC_ID_VVC) { > > if (aframe.frame->dec_info.FrameType & MFX_FRAMETYPE_IDR) > > frame->flags |= AV_FRAME_FLAG_KEY; > > else > > @@ -1300,3 +1301,7 @@ DEFINE_QSV_DECODER(vp9, VP9, NULL) > > #if CONFIG_AV1_QSV_DECODER > > DEFINE_QSV_DECODER(av1, AV1, NULL) > > #endif > > + > > +#if CONFIG_VVC_QSV_DECODER > > +DEFINE_QSV_DECODER(vvc, VVC, NULL) > > +#endif > > diff --git a/libavcodec/version.h b/libavcodec/version.h > > index 7acb261bb3..37c4c39451 100644 > > --- a/libavcodec/version.h > > +++ b/libavcodec/version.h > > @@ -29,7 +29,7 @@ > > > > #include "version_major.h" > > > > -#define LIBAVCODEC_VERSION_MINOR 7 > > +#define LIBAVCODEC_VERSION_MINOR 8 > > #define LIBAVCODEC_VERSION_MICRO 100 > > > > #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ > > LGTM, will apply Fixed conflict in Changelog & libavcodec/version.h and applied. Thanks Haihao > > > _______________________________________________ > 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". _______________________________________________ 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". ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-07-30 7:46 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-06-14 8:28 [FFmpeg-devel] [PATCH v2 1/2] configure: Alphabetical order for av1 codecs fei.w.wang-at-intel.com 2024-06-14 8:28 ` [FFmpeg-devel] [PATCH v2 2/2] lavc/qsvdec: Add VVC decoder fei.w.wang-at-intel.com 2024-07-26 4:43 ` Xiang, Haihao 2024-07-30 7:45 ` Xiang, Haihao
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