He Junyan
30290115af
libs: util: h265: use common parser API to get vaapi profiles.
...
We can reuse H265 parser's API to recognize the correct profile and
then just need to convert them to VAAPI profiles.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/356 >
2020-08-08 19:28:15 +08:00
He Junyan
55769a16c7
libs: encoder: H265: Enable Main 12 profile support.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/375 >
2020-08-06 00:21:50 +08:00
He Junyan
f82850c6d3
libs: decoder: H265: Add MAIN_12 profile supporting.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/359 >
2020-07-20 16:26:32 +00:00
He Junyan
85bc355019
libs: decoder: H265: Add SCC_MAIN_444_10 profile support.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/311 >
2020-06-05 09:51:19 +00:00
He Junyan
1d9b2cab42
libs: util: H265: recognize the SCC profiles.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/311 >
2020-06-05 09:51:19 +00:00
He Junyan
8486f82d98
libs: encoder: h265: Add support for MAIN 4:2:2 10 profile.
...
Using YUY2 as the input of the encoder can generate main 4:2:2 bit
streams and using Y210 as the input of the encoder can generate main
4:2:2 10 bit streams.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/334 >
2020-06-05 08:42:35 +00:00
He Junyan
a2063083a5
libs: encoder: h265: Fix chrome idc for 444 10 bits
...
GST_VAAPI_CHROMA_TYPE_YUV444_10BPP should also set chroma_format_idc
to 3 as GST_VAAPI_CHROMA_TYPE_YUV444 does.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/334 >
2020-06-05 08:42:35 +00:00
He Junyan
026c01875c
libs: encoder: h265: Support MAIN 4:4:4 10 profile.
...
Using Y410 as the input of the encoder can generate main_444_10 bit
streams.
2020-04-02 23:01:46 +08:00
He Junyan
532a1e5509
libs,plugins: decoder: Add -intra profile support for hevc.
...
In hevc, we can consider the -intra profile a subset of the none
-intra profile. The -intra profiles just contain I frames and we
definitely can use the none -intra profiles's context to decode
them.
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
2020-03-20 14:57:49 +01:00
He Junyan
25422b6766
plugin: encode: Add H265 main-444 profile.
...
Expose the main-444 profile to h265enc caps, when the upstream
chooses to use VUYA as input, we choose main 4:4:4 profile to encode
the frames.
2020-01-17 11:02:44 +00:00
He Junyan
9b0f041ded
libs: dec: h265: Consider chroma_bit_depth to choose chrome type
...
For some main-10 stream, sometime the luma is 8 bits while chrome is more
than 8 bits, which cause using the wrong NV12 surface as the render target
and decoding error.
Fix #176
2019-06-28 16:49:51 +02:00
He Junyan
3b5c7aa688
libs: dec: h265: Fix profile_idc mapping.
...
The old mapping values return by gst_vaapi_utils_h265_get_profile_idc is
wrong, though GST_H265_PROFILE_IDC_MAIN and GST_H265_PROFILE_IDC_MAIN_10
happened to be the correct value.
We only support Annex A profile_idc (1-4).
2019-06-25 17:41:24 +02:00
Wangfei
5e7988b2d8
libs: dec: h265: support decode for main-444 10bit streams.
...
Add 444 10bit yuv format Y410, which can be used to decode
main-444 10bit streams. Currently, this feature is only
supported by media-driver in Icelake.
2018-12-04 13:25:59 +08:00
Wangfei
5d0878b48a
libs: dec: h265: support decode for main-444 8bit streams.
...
Add 444 8bit yuv format AYUV, which can be used to decode
main-444 8bit streams. Currently, this feature is only
supported by media-driver in Icelake.
https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/issues/119
2018-11-14 02:29:54 +00:00
Wangfei
638004875b
libs: dec: h265: support decode for main-10-422 10bit streams.
...
Add 422 10bit yuv format Y210, which can be used to decode
main-10-422 10bit streams. Currently, this feature is only
supported by media-driver in Icelake.
https://bugzilla.gnome.org/show_bug.cgi?id=797264
2018-11-01 14:03:23 +01:00
Matteo Valdina
5567a3d2cd
libs: Move from g_debug to GST_DEBUG.
...
https://bugzilla.gnome.org/show_bug.cgi?id=797202
2018-10-09 16:58:43 +02:00
Wangfei
619abbdeb4
libs: dec: h265: add 422 chroma format support.
...
Add main-422-10 profile which support 422 chroma format stream.
Currently, this feature is only supported by media-driver in Icelake.
https://bugzilla.gnome.org/show_bug.cgi?id=797143
2018-09-27 11:55:04 +02:00
Wangfei
f4f935b6f4
libs: dec: h265: fix the macros used for IDC profile
...
profile_idc flag in SPS only indicate the IDC profile, which may
need some other flags together to get the real profile.
https://bugzilla.gnome.org/show_bug.cgi?id=797160
2018-09-18 13:16:43 +02:00
Víctor Manuel Jáquez Leal
3f9ad1ffd8
libs: utils: remove va.h include in header
...
And include gstvaapicompat.h in the C files, since the VA-API is not
exposed in the headers.
https://bugzilla.gnome.org/show_bug.cgi?id=786119
2017-08-13 18:08:19 +02:00
Víctor Manuel Jáquez Leal
28d01c0857
libs: small code style fixes
...
This a set of small code style fixes detected as-is by gst-indent.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
2016-02-03 12:45:30 +01:00
Sreerenj Balachandran
61045041c4
Add 10 HEVC 10 bit decoding support
...
Only supporting vaapidecode ! vaapisink combination for now.
Missing dependencies:
1: No support for P010 video format in GStreamer
2: No support for P010 vaGetImage()/vaPutimage() in vaapi-intel-driver
3: As a result of 1&2 , we have no support for Vaapi Video memory mapping
through GstVideoMeta.
Right now we only set chroma format (YUV420 with more than 8 bits per channel)
for surface pool and keeping GST_VIDEO_FORMAT as ENCODED. The underlying format
of the surfaces is implementation (driver) defined, which is P010.
2015-12-08 16:14:11 +02:00
Sreerenj Balachandran
e069ddf2b1
gstvaapiutils_h265: Add H265 Tier specific utility functions
...
-- New API: gst_vaapi_utils_h265_get_tier_from_string()
-- New API: gst_vaapi_utils_h265_get_tier_string()
https://bugzilla.gnome.org/show_bug.cgi?id=748874
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
2015-05-25 11:23:16 +03:00
Sreerenj Balachandran
8c5f1b1c4b
HEVC: Add codec utility methods to core libgstvaapi
...
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
2015-04-13 14:53:46 +03:00