gstreamer/gst/vaapi
Sreerenj Balachandran 6eba201f32 vaapidecode: Rework the re-negotiation code to handle multi resoultion videos
Delaying the pool re-negotiation untill we push all decoded (and queued)
frames downstream. Otherwise for the multi-resolution videos, the
GstVideoVideoMemory will be having wrong resolution and which leads
to nasty behaviours, especially when using software renderers.

sample media file: RAP_B_Bossen_1.bin
case explained:
The first SPS Nal will report resoultion of 448x256 and having crop rectangles to
get the final resoultion 416x240.
Starting from 25 th frame, the resolution will change to 416x240. But parser
elements won't report this since the effective croped resolution is same in
both cases. Here the core libgstvaapi will detect this through it's internal
parsing and do all context/pool destory/reset stuffs. Also it will notify this
change to plugins in advance. But if the plugin try to do re-negotiaion of pool
immediately, this will not sync with the resolution of already decoded and queued
frames and which will lead to failure in gst_video_frame_map() in downstream(if we use the
software renderer). So we have to delay the pool renegotiation in vaapidecode,
untill we push all decoded frames downstream.

https://bugzilla.gnome.org/show_bug.cgi?id=753914
2015-08-29 00:18:57 +03:00
..
gstcompat.h update and move gstcompat.h 2015-04-03 17:08:30 +03:00
gstvaapi.c Revert "Marking rank of vaapidecodebin as GST_RANK_MARGINAL for now." 2015-08-13 17:34:42 +02:00
gstvaapidecode.c vaapidecode: Rework the re-negotiation code to handle multi resoultion videos 2015-08-29 00:18:57 +03:00
gstvaapidecode.h vaapidecode: Rework the re-negotiation code to handle multi resoultion videos 2015-08-29 00:18:57 +03:00
gstvaapidecodebin.c vaapidecodebin: check for postproc instance 2015-08-13 17:34:42 +02:00
gstvaapidecodebin.h vaapidecodebin: has_vpp as a tri-state variable 2015-08-13 17:34:42 +02:00
gstvaapiencode.c remove gstvaapiuploader 2015-08-04 19:32:40 +02:00
gstvaapiencode.h encode: Attach the codec-data to out caps only based on negotiated caps 2014-10-29 15:46:12 +02:00
gstvaapiencode_h264.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapiencode_h264.h legal: update copyright notice dates. 2014-01-22 19:02:35 +01:00
gstvaapiencode_h265.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapiencode_h265.h HEVC_Encode: Add HEVC(h265) Encoder plugin 2015-05-25 11:58:20 +03:00
gstvaapiencode_jpeg.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapiencode_jpeg.h plugins: Add JPEG encoder element 2015-02-04 11:18:29 +02:00
gstvaapiencode_mpeg2.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapiencode_mpeg2.h legal: update copyright notice dates. 2014-01-22 19:02:35 +01:00
gstvaapiencode_vp8.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapiencode_vp8.h plugins: Add VP8 Encoder 2015-02-13 13:45:32 +02:00
gstvaapiparse.c plugins: Add h265 videoparser element "vaapiparse_h265" 2015-04-17 17:09:30 +03:00
gstvaapiparse.h plugins: Add h265 videoparser element "vaapiparse_h265" 2015-04-17 17:09:30 +03:00
gstvaapipluginbase.c plugins: reduce the noise of warnings 2015-08-04 19:42:48 +02:00
gstvaapipluginbase.h remove gstvaapiuploader 2015-08-04 19:32:40 +02:00
gstvaapipluginutil.c vaapidecodebin: ensure VPP before going to READY 2015-08-13 17:34:42 +02:00
gstvaapipluginutil.h vaapidecodebin: ensure VPP before going to READY 2015-08-13 17:34:42 +02:00
gstvaapipostproc.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapipostproc.h vaapipostproc: add color balance interface 2015-06-12 19:22:01 +02:00
gstvaapisink.c refactor vaapi caps strings for pad templates 2015-08-05 14:26:37 +02:00
gstvaapisink.h vaapisink: add 'handoff' signal 2015-04-16 11:27:51 +02:00
gstvaapivideobuffer.c Removal of gstreamer-1.0 support 2015-04-03 17:09:08 +03:00
gstvaapivideobuffer.h plugins: re-indent all GstVaapiVideo* related source code. 2014-08-22 15:54:32 +02:00
gstvaapivideobufferpool.c gst/vaapi: Switch to upstreram like indentation. 2015-06-30 09:44:18 +03:00
gstvaapivideobufferpool.h plugins: add support for dma_buf exports (v4l2src). 2015-01-28 17:36:21 +01:00
gstvaapivideocontext.c gstvaapivideocontext: remove unused parameter 2015-08-06 19:07:13 +02:00
gstvaapivideocontext.h gstvaapivideocontext: remove unused parameter 2015-08-06 19:07:13 +02:00
gstvaapivideomemory.c gstvaapivideomemory: native format with no derived image 2015-08-13 17:20:19 +02:00
gstvaapivideomemory.h Removal of gstreamer-1.0 support 2015-04-03 17:09:08 +03:00
gstvaapivideometa.c gst/vaapi: Switch to upstreram like indentation. 2015-06-30 09:44:18 +03:00
gstvaapivideometa.h Removal of gstreamer-0.10 support 2015-04-03 16:55:27 +03:00
gstvaapivideometa_texture.c Removal of gstreamer-1.0 support 2015-04-03 17:09:08 +03:00
gstvaapivideometa_texture.h plugins: re-indent all GstVaapiVideo* related source code. 2014-08-22 15:54:32 +02:00
Makefile.am remove gstvaapiuploader 2015-08-04 19:32:40 +02:00