[Mesa-dev] [PATCH 1/3] vl: get h264 profile idc

boyuan.zhang at amd.com boyuan.zhang at amd.com
Tue Oct 23 15:43:12 UTC 2018


From: Boyuan Zhang <boyuan.zhang at amd.com>

Adding a function for converting h264 pipe video profile to profile idc

Signed-off-by: Boyuan Zhang <boyuan.zhang at amd.com>
---
 src/gallium/auxiliary/util/u_video.h | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/src/gallium/auxiliary/util/u_video.h b/src/gallium/auxiliary/util/u_video.h
index 967ebc57489..f6e93dd0387 100644
--- a/src/gallium/auxiliary/util/u_video.h
+++ b/src/gallium/auxiliary/util/u_video.h
@@ -239,6 +239,30 @@ u_get_h264_level(uint32_t width, uint32_t height, uint32_t *max_reference)
       return 52;
 }
 
+static inline uint32_t
+u_get_h264_profile_idc(enum pipe_video_profile profile)
+{
+   switch (profile) {
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_CONSTRAINED_BASELINE:
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_BASELINE:
+         return 66;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_MAIN:
+         return 77;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_EXTENDED:
+         return 88;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH:
+         return 100;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH10:
+         return 110;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH422:
+         return 122;
+      case PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH444:
+         return 244;
+      default:
+         return 66; //use baseline profile instead
+   }
+}
+
 #ifdef __cplusplus
 }
 #endif
-- 
2.17.1



More information about the mesa-dev mailing list