Message ID | 20220926093501.26466-1-irui.wang@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | media: mediatek: vcodec: Skip unsupported h264 encoder profile | expand |
Hi Irui, Tested-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> Tested for CTS cases on the mt8186 corsola board. Thanks, Allen On Mon, 2022-09-26 at 17:35 +0800, Irui Wang wrote: > The encoder driver support h264 baseline, main, high encoder > profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip > the unsupported profile. > > get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L > h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 > 0: Baseline > 2: Main > 4: High > > Signed-off-by: Irui Wang <irui.wang@mediatek.com> > --- > drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > index d810a78dde51..d65800a3b89d 100644 > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct > mtk_vcodec_ctx *ctx) > 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); > v4l2_ctrl_new_std_menu(handler, ops, > V4L2_CID_MPEG_VIDEO_H264_PROFILE, > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, > - 0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > + ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) > | > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), > + V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > v4l2_ctrl_new_std_menu(handler, ops, > V4L2_CID_MPEG_VIDEO_H264_LEVEL, > h264_max_level, > 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0);
Hi Irui, Reviewed-by: Yunfei Dong <yunfei.dong@mediatek.com> Thanks Yunfei Dong On Wed, 2022-09-28 at 21:38 +0800, Allen-KH Cheng (程冠勳) wrote: > Hi Irui, > > Tested-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> > > Tested for CTS cases on the mt8186 corsola board. > > Thanks, > Allen > > On Mon, 2022-09-26 at 17:35 +0800, Irui Wang wrote: > > The encoder driver support h264 baseline, main, high encoder > > profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip > > the unsupported profile. > > > > get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L > > h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 > > 0: Baseline > > 2: Main > > 4: High > > > > Signed-off-by: Irui Wang <irui.wang@mediatek.com> > > --- > > drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git > > a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > index d810a78dde51..d65800a3b89d 100644 > > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct > > mtk_vcodec_ctx *ctx) > > 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); > > v4l2_ctrl_new_std_menu(handler, ops, > > V4L2_CID_MPEG_VIDEO_H264_PROFILE, > > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, > > - 0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > > + ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) > > > > > > > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | > > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), > > + V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > > v4l2_ctrl_new_std_menu(handler, ops, > > V4L2_CID_MPEG_VIDEO_H264_LEVEL, > > h264_max_level, > > 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0);
Il 26/09/22 11:35, Irui Wang ha scritto: > The encoder driver support h264 baseline, main, high encoder > profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip > the unsupported profile. > > get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L > h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 > 0: Baseline > 2: Main > 4: High > > Signed-off-by: Irui Wang <irui.wang@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Dear Hans, Gently ping for this patch, could you help to review this patch? Thanks Best Regards On Mon, 2022-09-26 at 17:35 +0800, Irui Wang wrote: > The encoder driver support h264 baseline, main, high encoder > profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip > the unsupported profile. > > get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L > h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 > 0: Baseline > 2: Main > 4: High > > Signed-off-by: Irui Wang <irui.wang@mediatek.com> > --- > drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > index d810a78dde51..d65800a3b89d 100644 > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct > mtk_vcodec_ctx *ctx) > 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); > v4l2_ctrl_new_std_menu(handler, ops, > V4L2_CID_MPEG_VIDEO_H264_PROFILE, > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, > - 0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > + ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) > | > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), > + V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > v4l2_ctrl_new_std_menu(handler, ops, > V4L2_CID_MPEG_VIDEO_H264_LEVEL, > h264_max_level, > 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0);
Dear Hans, Gently ping for this patch. May I know this patch current status? It seems is under your reviewing state? Thanks Best Regards On Mon, 2022-09-26 at 17:35 +0800, Irui Wang wrote: > The encoder driver support h264 baseline, main, high encoder > profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip > the unsupported profile. > > get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L > h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 > 0: Baseline > 2: Main > 4: High > > Signed-off-by: Irui Wang <irui.wang@mediatek.com> > --- > drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > index d810a78dde51..d65800a3b89d 100644 > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct > mtk_vcodec_ctx *ctx) > 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); > v4l2_ctrl_new_std_menu(handler, ops, > V4L2_CID_MPEG_VIDEO_H264_PROFILE, > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, > - 0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > + ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) > | > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), > + V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > v4l2_ctrl_new_std_menu(handler, ops, > V4L2_CID_MPEG_VIDEO_H264_LEVEL, > h264_max_level, > 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0);
Hi Irui, On 11/15/22 12:40, Irui Wang (王瑞) wrote: > Dear Hans, > > Gently ping for this patch. > May I know this patch current status? It seems is under your reviewing > state? Mauro was on vacation last week, but he said that he hopes to merge the pending PRs tomorrow. Fingers crossed... Regards, Hans > > Thanks > Best Regards > > On Mon, 2022-09-26 at 17:35 +0800, Irui Wang wrote: >> The encoder driver support h264 baseline, main, high encoder >> profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip >> the unsupported profile. >> >> get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L >> h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 >> 0: Baseline >> 2: Main >> 4: High >> >> Signed-off-by: Irui Wang <irui.wang@mediatek.com> >> --- >> drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 ++++- >> 1 file changed, 4 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c >> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c >> index d810a78dde51..d65800a3b89d 100644 >> --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c >> +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c >> @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct >> mtk_vcodec_ctx *ctx) >> 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); >> v4l2_ctrl_new_std_menu(handler, ops, >> V4L2_CID_MPEG_VIDEO_H264_PROFILE, >> V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, >> -0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); >> +~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) >> | >> + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | >> + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), >> +V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); >> v4l2_ctrl_new_std_menu(handler, ops, >> V4L2_CID_MPEG_VIDEO_H264_LEVEL, >> h264_max_level, >> 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0); > > ************* MEDIATEK Confidentiality Notice > ******************** > The information contained in this e-mail message (including any > attachments) may be confidential, proprietary, privileged, or otherwise > exempt from disclosure under applicable laws. It is intended to be > conveyed only to the designated recipient(s). Any use, dissemination, > distribution, printing, retaining or copying of this e-mail (including its > attachments) by unintended recipient(s) is strictly prohibited and may > be unlawful. If you are not an intended recipient of this e-mail, or believe > > that you have received this e-mail in error, please notify the sender > immediately (by replying to this e-mail), delete any and all copies of > this e-mail (including any attachments) from your system, and do not > disclose the content of this e-mail to any other person. Thank you!
Dear Hans, Got it, thank you very much. Best Regards On Tue, 2022-11-15 at 12:49 +0100, Hans Verkuil wrote: > Hi Irui, > > On 11/15/22 12:40, Irui Wang (王瑞) wrote: > > Dear Hans, > > > > Gently ping for this patch. > > May I know this patch current status? It seems is under your > > reviewing > > state? > > Mauro was on vacation last week, but he said that he hopes to merge > the pending PRs tomorrow. Fingers crossed... > > Regards, > > Hans > > > > > Thanks > > Best Regards > > > > On Mon, 2022-09-26 at 17:35 +0800, Irui Wang wrote: > > > The encoder driver support h264 baseline, main, high encoder > > > profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip > > > the unsupported profile. > > > > > > get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L > > > h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 > > > 0: Baseline > > > 2: Main > > > 4: High > > > > > > Signed-off-by: Irui Wang <irui.wang@mediatek.com> > > > --- > > > drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 > > > ++++- > > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > > > diff --git > > > a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > > b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > > index d810a78dde51..d65800a3b89d 100644 > > > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c > > > @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct > > > mtk_vcodec_ctx *ctx) > > > 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); > > > v4l2_ctrl_new_std_menu(handler, ops, > > > V4L2_CID_MPEG_VIDEO_H264_PROFILE, > > > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, > > > -0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > > > +~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) > > > > > > > > > > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | > > > + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), > > > +V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); > > > v4l2_ctrl_new_std_menu(handler, ops, > > > V4L2_CID_MPEG_VIDEO_H264_LEVEL, > > > h264_max_level, > > > 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0); > > > > ************* MEDIATEK Confidentiality Notice > > ******************** > > The information contained in this e-mail message (including any > > attachments) may be confidential, proprietary, privileged, or > > otherwise > > exempt from disclosure under applicable laws. It is intended to be > > conveyed only to the designated recipient(s). Any use, > > dissemination, > > distribution, printing, retaining or copying of this e-mail > > (including its > > attachments) by unintended recipient(s) is strictly prohibited and > > may > > be unlawful. If you are not an intended recipient of this e-mail, > > or believe > > > > that you have received this e-mail in error, please notify the > > sender > > immediately (by replying to this e-mail), delete any and all copies > > of > > this e-mail (including any attachments) from your system, and do > > not > > disclose the content of this e-mail to any other person. Thank you! > >
diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c index d810a78dde51..d65800a3b89d 100644 --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c @@ -1397,7 +1397,10 @@ int mtk_vcodec_enc_ctrls_setup(struct mtk_vcodec_ctx *ctx) 0, V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE); v4l2_ctrl_new_std_menu(handler, ops, V4L2_CID_MPEG_VIDEO_H264_PROFILE, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH, - 0, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); + ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) | + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) | + (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)), + V4L2_MPEG_VIDEO_H264_PROFILE_HIGH); v4l2_ctrl_new_std_menu(handler, ops, V4L2_CID_MPEG_VIDEO_H264_LEVEL, h264_max_level, 0, V4L2_MPEG_VIDEO_H264_LEVEL_4_0);
The encoder driver support h264 baseline, main, high encoder profile, set mask for V4L2_CID_MPEG_VIDEO_H264_PROFILE to skip the unsupported profile. get supported h264_profile by command: v4l2-ctl -d /dev/videoX -L h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=4 0: Baseline 2: Main 4: High Signed-off-by: Irui Wang <irui.wang@mediatek.com> --- drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)