- Dec 07, 2015
-
-
Sreerenj Balachandran authored
-
Sreerenj Balachandran authored
-
Sreerenj Balachandran authored
- Nov 30, 2015
-
-
Víctor Manuel Jáquez Leal authored
When receiving the texture from the application or the video sink, we must know it size and border. To query the texture the API has changed according to the OpenGL version used in the GL context of the application/vsink. This patch checks the current context API type and queries the texture according to this detected API. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=753099
-
Víctor Manuel Jáquez Leal authored
gst_vaapi_texture_glx_new_wrapped() only handles a GL_TEXTURE_2D target and formats GL_RGBA or GL_BGRA. This patch adds a debugging verification of those values. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=753099
-
Víctor Manuel Jáquez Leal authored
Since OpenGL3.1 removed the fixed pipelines[1] enabling 2D textures is not needed. In particular, the Intel's Mesa implementation complains if it is called. This patch add a new binding function for 2D textures, without enabling gl3_bind_texture_2d()[2]. 1. https://www.opengl.org/wiki/Fixed_Function_Pipeline 2. https://www.opengl.org/wiki/Common_Mistakes#OOP_and_hidden_binding Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=753099
-
Víctor Manuel Jáquez Leal authored
In order to know which OpenGL API use, we must detect the API type of current context. This patch adds the function gl_get_current_api() which returns the OpenGL API type. This function is an adaptation of gst_gl_context_get_current_gl_api() from GstGL. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=753099
-
-
- Nov 27, 2015
-
-
Sreerenj Balachandran authored
This is a quick fix for regression introduced by the upstream commit e8908f5aeef952566f6bccde743c7735d3f8c6ef in h264 videoparser. The patch is disabling the passthrough mode, otherwise it will break multi-layer mvc stream parsing. https://bugzilla.gnome.org/show_bug.cgi?id=758656
-
- Nov 25, 2015
-
-
As gsth265parse was added in GStreamer 1.4, and gstreamer-vaapi still support GStreamer 1.2, the patching of gsth265parse must be conditional to the target GStreamer version. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=755525
-
This is a continuation of commit fc8a0d12 When declaring BUILT_SOURCES, those files should not be distributed. This patch avoids the distribution of the generated source code. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=755525
-
- Nov 24, 2015
-
-
Sreerenj Balachandran authored
-
- Nov 23, 2015
-
-
Sreerenj Balachandran authored
This is a quick fix for regression introuduced by the commit 75783323 With out this, the gst_vaapipostproc_create() will never get invoked. https://bugzilla.gnome.org/show_bug.cgi?id=758543
-
- Nov 19, 2015
-
-
Víctor Manuel Jáquez Leal authored
`make dist` broke since commit f06798 (libvpx: Update the submodule to libvpx-1.4.0) because the sources.frag does not contain all the module sources. This patch updates thoroughly the sources. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=755525
-
Víctor Manuel Jáquez Leal authored
When the source caps change, the filter is destroyed and recreated. Nonetheless, this happens every time the vaapipostproc starts, since the caps change detection algorithm does not take in consideration when the caps are set by first time. This patch intents to be an optimization, to avoid a useless filter destroy-creation cycle when the sources caps are set for first time. The new helper function video_info_update() is a refactorization to avoid duplicated code. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=758007
-
Víctor Manuel Jáquez Leal authored
The signature is video_info_changed(old_vip, new_vip). Nonetheless the callers swapped the the order. This didn't raise problems since the comparison of both structures were not affected by its semantics. But still it would be better to fix this to keep the coherence of the code. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=758007
-
- Nov 18, 2015
-
-
Víctor Manuel Jáquez Leal authored
When runnig the `make dist` target from a clean tree, it fails because if could not find the copied files from codecparsers submodule. They weren't copied because they weren't declared as built sources. This patch removes the stamp mechanism and use the actual file list to copy as the built sources. Also it fixes the duplication of the parser files. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=755525
-
- Nov 17, 2015
-
-
Sreerenj Balachandran authored
Always fill VADecPictureParameterBufferVP9 last/golden/altref indices based on what ever reference frame indices encoded in frame header.
-
- Nov 16, 2015
-
-
Víctor Manuel Jáquez Leal authored
In order to build a debian package with upstream source, the user should do ./autogen.sh cp -a debian.upstream debian debuild -eDEB_BUILD_OPTIONS="parallel=8" -us -uc -b The environment variable DEB_BUILD_OPTIONS="parallel=8" is the canonical way to make a parallel build (-j8 in this case). This commit removes the script in debian/rules that detects the number of cpus, requested by the environment variable DEBIAN_BUILD_NCPUS, which is not official in debian. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=754087
-
Sreerenj Balachandran authored
-
Sreerenj Balachandran authored
We always set GST_VAAPI_PICTURE_FLAG_SKIPPED for DECODE_ONLY frames and the gstvaapidecoder base calss is reponsible for handling those frames later on. No need for explicit verification of frame header's show_frame in order to do picture outputing.
-
Sreerenj Balachandran authored
Don't try to do frame decoding and reference picture update while receiving a vp9 frame having show_existing_frame flag set as TRUE.
-
Sreerenj Balachandran authored
If vp9 frame header come up with show_existing_frame flag set, we should duplicate the existing decoded frame as current frame to be displayed.
-
-
Víctor Manuel Jáquez Leal authored
Rather than create a dummy display, if none has propagated as a context, we should try to get the one from vaapidecode. As the bin is already in READY state, the vaapidecode should be also in that state. That means that the contexts have been negotiated, and it should have already a display. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757957
-
Víctor Manuel Jáquez Leal authored
The former approach to left the bin unfinished has some problems: the context cannot be shared because the vaapidecode is unlinked in many cases, leading to creating a VADisplay twice. Initially the bin is fully functional, constructed as (-----------------------------------) | vaapidecodebin | | (-------------) (-------) | |<--| vaapidecode |--->| queue |--->| | (-------------) (-------) | (-----------------------------------) When the context is shared and the VADisplay has VPP capabilities, before changing to READY state, the bin is reconfigured dynamically, adding the vaapipostproc element afeter the queue: (--------------------------------------------------------) | vaapidecodebin | | (-------------) (-------) (---------------) | |<--| vaapidecode |--->| queue |--->| vaapipostproc |--->| | (-------------) (-------) (---------------) | (--------------------------------------------------------) Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757957
-
Víctor Manuel Jáquez Leal authored
Delay the bin configuration until changing to READY state. This is because we should add the vaapipostproc element until the vaapidecode has emitted the HAVE_CONTEXT message, so de gst_bin_add() could set the context set to vaapipostproc. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757957
-
- Nov 13, 2015
-
-
Sreerenj Balachandran authored
Set crop rectange if: There is display_width and display_height which is different from actual width/height or The changed resolution is less than the actual configured dimension of surfaces
-
Sreerenj Balachandran authored
Unlike other decoders, vp9 decoder doesn't need to reset the whole context and surfaces for each resolution change. Context reset only needed if resolution of any frame is greater than what actullay configured. There are streams where a bigger resolution set in ivf header or webm header but actual resolution of all frames are less. Also it is possible to have inter-prediction between these multi resolution frames.
-
Sreerenj Balachandran authored
Always fill width/height of VADecPictureParameterBufferVP9 from frame header. Preliminary fix for supproting multi resolution video decode.
-
Sreerenj Balachandran authored
-
Sreerenj Balachandran authored
-
Sreerenj Balachandran authored
d9f2527: codecparsers: vp9: Set lossless flag in frame header
-
- Nov 11, 2015
-
-
Víctor Manuel Jáquez Leal authored
clang complains about a couple variables and one label which were not used. This patch removes them. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757958
-
- Nov 10, 2015
-
-
Sreerenj Balachandran authored
da251bb: codecparsers: vp9: Optimize the memory allocation f5759f4: codecparsers: vp9: Fix the wrong memcpy of probability arrays
-
- Nov 09, 2015
-
-
Víctor Manuel Jáquez Leal authored
Since gstreamer 1.4 is not required to have pad query functions if the query vmethods are used. This patch guards out the pad query functions for gstreamer < 1.4 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757629
-
Víctor Manuel Jáquez Leal authored
GstVideoEncoder, the base class of vaapiencode, added support for pad queries as virtual methods since gstreamer 1.4. This patch enables those vmethods, while keeps support for previous versions of gstreamer. This patch is relevant since GstVideoEncoder takes care of other queries that we are currently ignoring. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757629
-
Víctor Manuel Jáquez Leal authored
A caps query can occur before the element has a display. In that case, the element can return its pad's template. But when the element already has a display, and the caps probe fails, the element shall return an empty caps, so the auto-plug could try with another decoder. If the element has a display and the caps probe works, then the computed caps should be returned. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757598
-
Víctor Manuel Jáquez Leal authored
Caps query can happen before the element has a bus. The display creation should be should occur on the context negotiation, when the bus is already configured. Then at caps query no display should be created. Instead of force the display creation, we graciously fail the allowed_caps() creation. This change only applies for vaapidecode and vaapisink. The vaapipostroc, as a basetransform descendant, seems to be not affected by this, nor the encoders. Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> https://bugzilla.gnome.org/show_bug.cgi?id=757598
-