gstreamer/sys
Sreerenj Balachandran 1e95c03c7d msdk: dec: Add dynamic-configuration change support
The patch adds a serios of changes to support dynamic resolution
change and efficient utilization of resources.
Major changes:

-- Use MSDK's apis to retrieve the headers instead of only relying
on upsteram notification. For eg: avc decoder requires SEI header
information for dpb count calculation which we don't get from caps.

-- For all codecs other than VP9, we force the reset of decoder
if resoultion changes to fit with gstreamer flow. VP9 enfource
the hard reset only if the new resolution is bigger.

-- delay the src caps setting till msdk api's invokation in
handle_frame to avoid caching multiple configuration values

-- ensure pool negotiation is based on decoder's allocation_caps.

--dynamic resoluttion change use an explicit allocation_query
to reclaim the buffers before closing the decoder (thanks to v4l2dec)

--In case if we don't get upstream notification of res change (for eg,
this can can happen for vp9 frames with ivfheader where ivfparse
is not able to notify the dynamic changes), we handle the the case
based on MFX_ERR_INCOMPATIBLE_VIDEO_PARAM which is the return value
of MFXVideoDECODE_DecodeFrameAsync

-- calculate the minimum surfaces to be preallocated based on
msdk suggestion, downstream requirement, async depth and scratch surface
count for smooth display.

https://bugzilla.gnome.org/show_bug.cgi?id=796566
2018-07-02 16:17:49 -08:00
..
acmenc Fix up package name and origin in some plugins 2017-05-18 10:58:20 +01:00
acmmp3dec Remove plugin specific static build option 2017-05-16 14:05:52 -04:00
androidmedia androidmedia: Invert the transform matrix from the decoder 2018-06-15 05:01:20 +10:00
applemedia Fix code indentation 2018-04-22 18:27:37 +01:00
bluez Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
d3dvideosink Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
decklink decklink: Fix warning about HRESULT not being unsigned int 2018-06-20 11:38:17 +05:30
directsound Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
dshowdecwrapper Remove plugin specific static build option 2017-05-16 14:05:52 -04:00
dshowsrcwrapper dshowsrcwrapper: fix DirectShow caps negotiation and set capture pin caps 2016-04-23 15:21:44 +01:00
dshowvideosink bad: use new gst_element_class_add_static_pad_template() 2016-03-24 14:56:51 +02:00
dvb dvb: Fix typo in comment termination 2018-06-01 17:07:19 +10:00
fbdev Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
ipcpipeline Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
kms kmssink: Add 24bit RGB support 2018-04-26 10:35:09 -04:00
msdk msdk: dec: Add dynamic-configuration change support 2018-07-02 16:17:49 -08:00
nvdec nvdec: Add support VP8/VP9 decoding 2018-05-05 18:13:00 +10:00
nvenc nvenc: Fix build warning error 2018-05-18 10:43:39 +01:00
opensles Remove plugin specific static build option 2017-05-16 14:05:52 -04:00
shm Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
tinyalsa Remove plugin specific static build option 2017-05-16 14:05:52 -04:00
uvch264 uvch264src: get rid of unnecessary private struct 2018-06-24 00:07:59 +02:00
vcd Remove plugin specific static build option 2017-05-16 14:05:52 -04:00
vdpau vdpau: Run gst-indent 2018-06-06 07:50:21 +02:00
wasapi wasapisink: recover from low buffer levels in shared mode 2018-05-25 19:06:37 +05:30
winks winks: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 12:27:09 +02:00
winscreencap Meson: Generate pc file for all plugins in bad 2018-04-25 11:08:09 +01:00
Makefile.am ipcpipeline: move to sys/ and make it dependent on platform support for unix sockets 2017-08-02 10:40:24 +03:00
meson.build ipcpipeline: move to sys/ and make it dependent on platform support for unix sockets 2017-08-02 10:40:24 +03:00