Víctor Manuel Jáquez Leal
ce96f2d1fa
vaapipostproc: fix classification string
...
The classification string is splitted by '/' and then looks for the
components.
This patch removes the ';' by unifying all the components.
2018-10-15 17:55:24 +02:00
Philippe Normand
8914ace06a
vaapipostproc: Add Hardware classifier to metadata
2018-10-15 16:06:31 +01:00
Wangfei
ecdfc623fd
libs: context: create context first before using it to create surface.
...
In gst_vaapi_context_reset(), if the context has to be destroyed, make
sure to create it first before allocating its associated surfaces.
This patch fixes a regression introduced in commit 82872f4
because
the formats available in the current context now are ensured before
creating the context's surfaces.
https://bugzilla.gnome.org/show_bug.cgi?id=797277
2018-10-15 16:54:02 +02:00
Philippe Normand
70726aef00
gst: Advertise elements interacting with hardware devices
2018-10-12 15:39:53 +01:00
Wangfei
82872f4234
libs: context: query surface format before context to create surface.
...
Before using context to create surface, the supported surface format
should be checked first.
https://bugzilla.gnome.org/show_bug.cgi?id=797222
2018-10-10 20:13:01 +02:00
Víctor Manuel Jáquez Leal
bcd63f8021
libs: replace g_error with GST_ERROR
...
And handle those errors rather than halting.
2018-10-09 17:23:55 +02:00
Víctor Manuel Jáquez Leal
9132090182
libs: replace g_warning with GST_WARNING
2018-10-09 17:23:30 +02: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
Soon, Thean Siew
ee27377cb3
vaapipostproc: change the way of handling deinterlace
...
The current vaapipostproc calls driver's video processing
pipeline for deinterlacing only if it is Advance deinterlacing.
Modify in the way that it always tries with driver's video
processing pipeline for deinterlacing, and falls back to software
method of appending picture structure meta data only if it fails
with driver's method.
https://bugzilla.gnome.org/show_bug.cgi?id=797095
2018-10-09 16:19:52 +02:00
Matteo Valdina
b1b36a44a4
libs: h264: Update level table to "Recommendation H.264 (04/17)".
...
Added level 6, 6.1 and 6.2. Reference Table A-1 – Level limits
from T-REC-H.264-201704.
https://bugzilla.gnome.org/show_bug.cgi?id=797202
2018-09-27 12:29:10 +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
U. Artie Eoff
37a756fd91
tests: include sysdeps.h in compilation unit
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=797204
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
2018-09-26 19:34:47 +02:00
Víctor Manuel Jáquez Leal
fbc5ed1651
tests: fix compilation
...
https://bugzilla.gnome.org/show_bug.cgi?id=797204
2018-09-26 18:28:02 +02:00
Víctor Manuel Jáquez Leal
00f5fe9ccf
tests: don's use sysdeps.h in header
2018-09-25 20:36:06 +02:00
Víctor Manuel Jáquez Leal
cfbe7cbc44
libs: utils: no need of include config.h
2018-09-25 18:22:51 +02:00
Víctor Manuel Jáquez Leal
e1557fff78
tests: remove already include string.h
...
Since sysdeps.h includes string.h there's no need to include it again.
2018-09-25 18:22:45 +02:00
Víctor Manuel Jáquez Leal
ae2fbf951a
libs: remove already include string.h
...
Since sysdeps.h includes string.h there's no need to include it again.
2018-09-25 18:22:35 +02:00
Víctor Manuel Jáquez Leal
0152410c97
libs: object: separation of internal API and plugins
...
Removed exposed macros GST_VAAPI_OBJECT_DISPLAY() and
GST_VAAPI_OBJECT_ID() to plugins, keeping them only for internal
library usage.
The purpose is readability.
https://bugzilla.gnome.org/show_bug.cgi?id=797139
2018-09-25 17:41:55 +02:00
Víctor Manuel Jáquez Leal
9970e15f67
libs: parser_frame: change macros for inlined functions
...
https://bugzilla.gnome.org/show_bug.cgi?id=797139
2018-09-25 17:41:55 +02:00
Víctor Manuel Jáquez Leal
0e16691b09
libs: videopool: remove unneeded code
...
The removed code comes frome the bad practice of copy&paste. Better
move it as internal function.
https://bugzilla.gnome.org/show_bug.cgi?id=797139
2018-09-25 17:41:55 +02:00
Víctor Manuel Jáquez Leal
4505acc522
libs: remove dependency on IN_LIBGSTVAAPI_CORE
...
This conditional code was when libgstvaapi was intended to be library
used outside GStreamer. This not the case anymore, thus removing it.
https://bugzilla.gnome.org/show_bug.cgi?id=797139
2018-09-25 17:41:55 +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
Jimmy Ohn
7b077cdcb9
libs: use g_clear_pointer() when possible
...
https://bugzilla.gnome.org/show_bug.cgi?id=797131
2018-09-13 11:35:27 +02:00
Víctor Manuel Jáquez Leal
148d75c8af
libs: filter: add gobject's cleanup function
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
ae46b1a91a
libs: filter: remove custom ref() and unref()
...
Replacing them by gst_object_ref() and gst_object_unref()
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
99183e0184
libs: filter: refactor filter as gobject
...
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
a2f923f9e9
libs: decoder: remove destoy() and create() callbacks
...
They were all replaced by reset()
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
60dad9fa02
libs: decoder: vp9: implement reset() callback
...
remove destroy() and create() callback
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
e493420375
libs: decoder: vp8: implement reset() callback
...
remove create() and destroy() callbacks
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
2b207a47cb
libs: decoder: vc1: implement reset() callback
...
remove destroy() and create() callbacks
use g_clear_pointer for rbdu_buffer
no cast for enum
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
5b3f6eb285
libs: decoder: mpeg4: implement reset() callback
...
remove destroy() and create() callback
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
0374a8c0a5
libs: decoder: mpeg2: implement reset() callback
...
remove create() and destroy() callbacks
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
c1d65cf1a4
libs: decoder: jpeg: implement reset() callback
...
and remove create() and destroy() callbacks.
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
3dbddfa682
libs: decoder: h265: implement reset() callback
...
and remove create() and destroy()
and use g_clear_pointer for dpb structure
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
7a9f7f09c7
libs: decoder: h264: remove create() and destroy() callbacks
...
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
4649ac1c38
libs: decoder: remove gst_vaapi_decoder_unref()
...
Replaced by gst_object_unref() in tests
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
ad5eb75187
libs: decoder: remove gst_vaapi_decoder_ref()
...
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
a75329ca94
libs: decoder: remove gst_vaapi_decoder_new()
...
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Víctor Manuel Jáquez Leal
0ca49a10f8
libs: decoder: refactor decoders as gobject
...
https://bugzilla.gnome.org/show_bug.cgi?id=796308
2018-09-03 17:54:19 +02:00
Matteo Valdina
7872d12695
vaapidecode: Requests upstream a key unit at parse or decode error.
...
This is done to resume decoding after a parse error or decode error.
Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=797006
2018-09-03 16:11:13 +02:00
Matteo Valdina
2cb795fc77
vaapidecode: sets return value in failure case.
...
In gst_vaapidecode_handle_frame, when there is a decode error
there is a code path the returns an uninitialized value.
Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=797006
2018-09-03 15:38:33 +02:00
Víctor Manuel Jáquez Leal
1f0b2fb952
libs: display: lock at extracting available image formates
...
When running several vaapi elements at the concurrently, at
initialization, there is a race condition when extractin the avaible
formats for images and subpictures.
This patch add a lock when the those arrays are filled.
https://bugzilla.gnome.org/show_bug.cgi?id=797039
2018-08-31 13:41:58 +02:00
Nirbheek Chauhan
f6d827f6ff
meson: Sync libversion and osxversion code from other repos
...
gstreamer-vaapi does not build any libraries, only plugins, so this is
not used, but sync it just in case someone does add it in the future.
2018-08-31 14:47:55 +05:30
Víctor Manuel Jáquez Leal
5f718b4f93
libs: encoder: h265: trivial documentation fix
2018-08-29 14:49:49 +02:00
Wangfei
2fce126cc7
libs: encoder: h265: add low delay B frame support.
...
Low delay B frame provide the function of transforming
P frame into low delay B frame which frame type is B, but
only reference predictive frames. This can be used when P
frame unsupported. Especially for P and B both unsupported,
in this case, I and low delay B frame can be encoded in a
stream.
https://bugzilla.gnome.org/show_bug.cgi?id=796984
2018-08-29 14:49:41 +02:00
Nicolas Dufresne
2922439bc2
libs: decoder: h264: Avoid using picture after it has been free
...
In some cases, the found_picture ended up being evicted and freed, which
would lead to a use after free when accessing picture->base.poc. In this
fix, we take a ref on the picture before calling dpb_evict.
https://bugzilla.gnome.org/show_bug.cgi?id=787124
2018-08-28 18:05:12 -04:00
Nicolas Dufresne
7a120c7a72
h264decoder: Fail decoding slice with missing inter-view reference
...
Similarly to previous patch, we have no error concealment. As a side
effect, it's better to skip slices with missing references then passing
NULL pointers to the accelerator. Passing NULL pointer would lead to
major visual artifact, a behaviour that is likely undefined.
https://bugzilla.gnome.org/show_bug.cgi?id=787124
2018-08-01 19:43:58 -04:00
Hyunjun Ko
038c62011f
libs: decoder: h264: reset context when the number of view is increased
...
Usually in case of MVC decoding, dpb size is increasedi if subset sps.
That's why it resets context without this patch.
But for some media it doesn't increase dpb size. Even in this case we
should reset context to deal with MVC decoding.
Otherwise, it leads to assert.
https://bugzilla.gnome.org/show_bug.cgi?id=787124
2018-08-01 19:43:58 -04:00
Nicolas Dufresne
06aa82f989
vaapidecode: Skip unparsable units from adapter
...
If the unit could not be parsed, just skip this nal and keep parsing
what is left in the adapter. We need to flush the broken unit in the
decoder specific parser because the generic code does not know about
units boundary. This increases error resilliance.
Before this, the broken unit would stay in the adapter and EOS would be
returned. Which stopped the streaming. Just removing the EOS would have
lead to the adapter size growing indefinitely.
https://bugzilla.gnome.org/show_bug.cgi?id=796863
2018-07-25 15:52:54 -04:00
Nicolas Dufresne
d07bffb578
vaapidecoder: Don't error out on decode errors
...
This is problematic on live pipeline where loosing network can
cause an important amount of errors.
https://bugzilla.gnome.org/show_bug.cgi?id=796832
2018-07-25 15:52:54 -04:00