From 6b76be620b02cc0f19f9171492fa73e7ca9144c2 Mon Sep 17 00:00:00 2001 From: Nicolas Dufresne Date: Tue, 11 Aug 2020 17:24:11 -0400 Subject: [PATCH] v4l2h264codec: Map newly defined profile/levels Part-of: --- sys/v4l2/gstv4l2h264codec.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/sys/v4l2/gstv4l2h264codec.c b/sys/v4l2/gstv4l2h264codec.c index 26a80ecd13..2ba16f5030 100644 --- a/sys/v4l2/gstv4l2h264codec.c +++ b/sys/v4l2/gstv4l2h264codec.c @@ -68,6 +68,8 @@ v4l2_profile_from_string (const gchar * profile) v4l2_profile = V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH; } else if (g_str_equal (profile, "multiview-high")) { v4l2_profile = V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH; + } else if (g_str_equal (profile, "constrained-high")) { + v4l2_profile = V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH; } else { GST_WARNING ("Unsupported profile string '%s'", profile); } @@ -113,6 +115,8 @@ v4l2_profile_to_string (gint v4l2_profile) return "stereo-high"; case V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH: return "multiview-high"; + case V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH: + return "constrained-high"; default: GST_WARNING ("Unsupported V4L2 profile %i", v4l2_profile); break; @@ -158,6 +162,14 @@ v4l2_level_from_string (const gchar * level) v4l2_level = V4L2_MPEG_VIDEO_H264_LEVEL_5_0; else if (g_str_equal (level, "5.1")) v4l2_level = V4L2_MPEG_VIDEO_H264_LEVEL_5_1; + else if (g_str_equal (level, "5.2")) + v4l2_level = V4L2_MPEG_VIDEO_H264_LEVEL_5_2; + else if (g_str_equal (level, "6")) + v4l2_level = V4L2_MPEG_VIDEO_H264_LEVEL_6_0; + else if (g_str_equal (level, "6.1")) + v4l2_level = V4L2_MPEG_VIDEO_H264_LEVEL_6_1; + else if (g_str_equal (level, "6.2")) + v4l2_level = V4L2_MPEG_VIDEO_H264_LEVEL_6_2; else GST_WARNING ("Unsupported level '%s'", level); @@ -200,6 +212,14 @@ v4l2_level_to_string (gint v4l2_level) return "5"; case V4L2_MPEG_VIDEO_H264_LEVEL_5_1: return "5.1"; + case V4L2_MPEG_VIDEO_H264_LEVEL_5_2: + return "5.2"; + case V4L2_MPEG_VIDEO_H264_LEVEL_6_0: + return "6"; + case V4L2_MPEG_VIDEO_H264_LEVEL_6_1: + return "6.1"; + case V4L2_MPEG_VIDEO_H264_LEVEL_6_2: + return "6.2"; default: GST_WARNING ("Unsupported V4L2 level %i", v4l2_level); break;