[Pkg-gstreamer-commits] [gstreamer-vaapi] 53/176: utils: h264: add more profiles.
Vincent Cheng
vcheng at moszumanska.debian.org
Tue Jun 3 08:09:27 UTC 2014
This is an automated email from the git hooks/post-receive script.
vcheng pushed a commit to branch upstream
in repository gstreamer-vaapi.
commit 416ab33e347c0cd011ec37bff5d6e0fca90afb0b
Author: Gwenole Beauchesne <gwenole.beauchesne at intel.com>
Date: Tue Dec 10 11:13:01 2013 +0100
utils: h264: add more profiles.
Add extended profile (A.2.3), high 4:2:2 profile (A.2.6), high 4:2:2
profiles (A.2.7, A.2.10), scalable profiles (G.10.1.1, G.10.1.2) and
multiview profiles (H.10.1.1, H.10.1.2).
Document "Constrained Baseline" and "High 10" profiles.
---
gst-libs/gst/vaapi/gstvaapiprofile.h | 36 +++++++++++++++++++++++++---
gst-libs/gst/vaapi/gstvaapiutils_h264.c | 42 +++++++++++++++++++++++++++++++++
2 files changed, 75 insertions(+), 3 deletions(-)
diff --git a/gst-libs/gst/vaapi/gstvaapiprofile.h b/gst-libs/gst/vaapi/gstvaapiprofile.h
index 750249d..aa83e35 100644
--- a/gst-libs/gst/vaapi/gstvaapiprofile.h
+++ b/gst-libs/gst/vaapi/gstvaapiprofile.h
@@ -85,11 +85,33 @@ typedef enum {
* @GST_VAAPI_PROFILE_H263_BASELINE:
* H.263 baseline profile
* @GST_VAAPI_PROFILE_H264_BASELINE:
- * H.264 (MPEG-4 Part-10) baseline profile
+ * H.264 (MPEG-4 Part-10) baseline profile [A.2.1]
+ * @GST_VAAPI_PROFILE_H264_CONSTRAINED_BASELINE:
+ * H.264 (MPEG-4 Part-10) constrained baseline profile [A.2.1.1]
* @GST_VAAPI_PROFILE_H264_MAIN:
- * H.264 (MPEG-4 Part-10) main profile
+ * H.264 (MPEG-4 Part-10) main profile [A.2.2]
+ * @GST_VAAPI_PROFILE_H264_EXTENDED:
+ * H.264 (MPEG-4 Part 10) extended profile [A.2.3]
* @GST_VAAPI_PROFILE_H264_HIGH:
- * H.264 (MPEG-4 Part-10) high profile
+ * H.264 (MPEG-4 Part-10) high profile [A.2.4]
+ * @GST_VAAPI_PROFILE_H264_HIGH10:
+ * H.264 (MPEG-4 Part-10) high 10 profile [A.2.5], or high 10 intra
+ * profile [A.2.8], depending on constraint_set3_flag
+ * @GST_VAAPI_PROFILE_H264_HIGH_422:
+ * H.264 (MPEG-4 Part-10) high 4:2:2 profile [A.2.6], or high 4:2:2
+ * intra profile [A.2.9], depending on constraint_set3_flag
+ * @GST_VAAPI_PROFILE_H264_HIGH_444:
+ * H.264 (MPEG-4 Part-10) high 4:4:4 predictive profile [A.2.7], or
+ * high 4:4:4 intra profile [A.2.10], depending on constraint_set3_flag
+ * @GST_VAAPI_PROFILE_H264_SCALABLE_BASELINE:
+ * H.264 (MPEG-4 Part-10) scalable baseline profile [G.10.1.1]
+ * @GST_VAAPI_PROFILE_H264_SCALABLE_HIGH:
+ * H.264 (MPEG-4 Part-10) scalable high profile [G.10.1.2], or scalable
+ * high intra profile [G.10.1.3], depending on constraint_set3_flag
+ * @GST_VAAPI_PROFILE_H264_MULTIVIEW_HIGH:
+ * H.264 (MPEG-4 Part-10) multiview high profile [H.10.1.1]
+ * @GST_VAAPI_PROFILE_H264_STEREO_HIGH:
+ * H.264 (MPEG-4 Part-10) stereo high profile [H.10.1.2]
* @GST_VAAPI_PROFILE_VC1_SIMPLE:
* VC-1 simple profile
* @GST_VAAPI_PROFILE_VC1_MAIN:
@@ -115,8 +137,16 @@ typedef enum {
GST_VAAPI_PROFILE_H264_CONSTRAINED_BASELINE =
GST_VAAPI_MAKE_PROFILE(H264,9),
GST_VAAPI_PROFILE_H264_MAIN = GST_VAAPI_MAKE_PROFILE(H264,2),
+ GST_VAAPI_PROFILE_H264_EXTENDED = GST_VAAPI_MAKE_PROFILE(H264,10),
GST_VAAPI_PROFILE_H264_HIGH = GST_VAAPI_MAKE_PROFILE(H264,3),
GST_VAAPI_PROFILE_H264_HIGH10 = GST_VAAPI_MAKE_PROFILE(H264,7),
+ GST_VAAPI_PROFILE_H264_HIGH_422 = GST_VAAPI_MAKE_PROFILE(H264,4),
+ GST_VAAPI_PROFILE_H264_HIGH_444 = GST_VAAPI_MAKE_PROFILE(H264,8),
+ GST_VAAPI_PROFILE_H264_SCALABLE_BASELINE =
+ GST_VAAPI_MAKE_PROFILE(H264,5),
+ GST_VAAPI_PROFILE_H264_SCALABLE_HIGH = GST_VAAPI_MAKE_PROFILE(H264,6),
+ GST_VAAPI_PROFILE_H264_MULTIVIEW_HIGH = GST_VAAPI_MAKE_PROFILE(H264,11),
+ GST_VAAPI_PROFILE_H264_STEREO_HIGH = GST_VAAPI_MAKE_PROFILE(H264,15),
GST_VAAPI_PROFILE_VC1_SIMPLE = GST_VAAPI_MAKE_PROFILE(VC1,1),
GST_VAAPI_PROFILE_VC1_MAIN = GST_VAAPI_MAKE_PROFILE(VC1,2),
GST_VAAPI_PROFILE_VC1_ADVANCED = GST_VAAPI_MAKE_PROFILE(VC1,3),
diff --git a/gst-libs/gst/vaapi/gstvaapiutils_h264.c b/gst-libs/gst/vaapi/gstvaapiutils_h264.c
index b7d2f43..54d8dd7 100644
--- a/gst-libs/gst/vaapi/gstvaapiutils_h264.c
+++ b/gst-libs/gst/vaapi/gstvaapiutils_h264.c
@@ -62,12 +62,33 @@ gst_vaapi_utils_h264_get_profile (guint8 profile_idc)
case GST_H264_PROFILE_MAIN:
profile = GST_VAAPI_PROFILE_H264_MAIN;
break;
+ case GST_H264_PROFILE_EXTENDED:
+ profile = GST_VAAPI_PROFILE_H264_EXTENDED;
+ break;
case GST_H264_PROFILE_HIGH:
profile = GST_VAAPI_PROFILE_H264_HIGH;
break;
case GST_H264_PROFILE_HIGH10:
profile = GST_VAAPI_PROFILE_H264_HIGH10;
break;
+ case GST_H264_PROFILE_HIGH_422:
+ profile = GST_VAAPI_PROFILE_H264_HIGH_422;
+ break;
+ case GST_H264_PROFILE_HIGH_444:
+ profile = GST_VAAPI_PROFILE_H264_HIGH_444;
+ break;
+ case GST_H264_PROFILE_SCALABLE_BASELINE:
+ profile = GST_VAAPI_PROFILE_H264_SCALABLE_BASELINE;
+ break;
+ case GST_H264_PROFILE_SCALABLE_HIGH:
+ profile = GST_VAAPI_PROFILE_H264_SCALABLE_HIGH;
+ break;
+ case GST_H264_PROFILE_MULTIVIEW_HIGH:
+ profile = GST_VAAPI_PROFILE_H264_MULTIVIEW_HIGH;
+ break;
+ case GST_H264_PROFILE_STEREO_HIGH:
+ profile = GST_VAAPI_PROFILE_H264_STEREO_HIGH;
+ break;
default:
g_assert (0 && "unsupported profile_idc value");
profile = GST_VAAPI_PROFILE_UNKNOWN;
@@ -90,12 +111,33 @@ gst_vaapi_utils_h264_get_profile_idc (GstVaapiProfile profile)
case GST_VAAPI_PROFILE_H264_MAIN:
profile_idc = GST_H264_PROFILE_MAIN;
break;
+ case GST_VAAPI_PROFILE_H264_EXTENDED:
+ profile_idc = GST_H264_PROFILE_EXTENDED;
+ break;
case GST_VAAPI_PROFILE_H264_HIGH:
profile_idc = GST_H264_PROFILE_HIGH;
break;
case GST_VAAPI_PROFILE_H264_HIGH10:
profile_idc = GST_H264_PROFILE_HIGH10;
break;
+ case GST_VAAPI_PROFILE_H264_HIGH_422:
+ profile_idc = GST_H264_PROFILE_HIGH_422;
+ break;
+ case GST_VAAPI_PROFILE_H264_HIGH_444:
+ profile_idc = GST_H264_PROFILE_HIGH_444;
+ break;
+ case GST_VAAPI_PROFILE_H264_SCALABLE_BASELINE:
+ profile_idc = GST_H264_PROFILE_SCALABLE_BASELINE;
+ break;
+ case GST_VAAPI_PROFILE_H264_SCALABLE_HIGH:
+ profile_idc = GST_H264_PROFILE_SCALABLE_HIGH;
+ break;
+ case GST_VAAPI_PROFILE_H264_MULTIVIEW_HIGH:
+ profile_idc = GST_H264_PROFILE_MULTIVIEW_HIGH;
+ break;
+ case GST_VAAPI_PROFILE_H264_STEREO_HIGH:
+ profile_idc = GST_H264_PROFILE_STEREO_HIGH;
+ break;
default:
g_assert (0 && "unsupported GstVaapiProfile value");
profile_idc = 0;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gstreamer/gstreamer-vaapi.git
More information about the Pkg-gstreamer-commits
mailing list