mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-26 02:00:33 +00:00
21610 lines
887 KiB
Text
21610 lines
887 KiB
Text
=== release 1.8.0 ===
|
||
|
||
2016-03-24 Sebastian Dröge <slomo@coaxion.net>
|
||
|
||
* configure.ac:
|
||
releasing 1.8.0
|
||
|
||
=== release 1.7.91 ===
|
||
|
||
2016-03-15 12:39:20 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gstreamer-vaapi.doap:
|
||
Release 1.7.91
|
||
|
||
2016-03-11 17:44:07 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: h265: Fix offset calculation in codec_data parsing
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762922
|
||
|
||
2016-03-09 20:26:31 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: don't handle jpeg decoding
|
||
As JPEG decoder has been split and demoted, it cannot be handled by
|
||
vaapidecodebin
|
||
Added a fixme comment regarding the future removal of vaapidecode.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734093
|
||
|
||
2016-03-09 20:25:08 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: split out jpeg decoder
|
||
Split, as a different element, the JPEG decoder.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734093
|
||
|
||
2016-03-09 18:41:49 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: register decoder with internal GType
|
||
Don't expose the the vaapidecode GType, instead expose a function
|
||
which will register element.
|
||
This is the first step to split the decoder by codecs.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734093
|
||
|
||
2016-03-10 12:47:49 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: remove unused function declaration
|
||
There is no need to pre-declare gst_vaapidecode_update_sink_caps(). And fixed
|
||
code-style of the other pre-declared functions.
|
||
|
||
2016-03-09 18:58:13 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/plugins/Makefile.am:
|
||
build: git ignore gtkdoc generated files
|
||
|
||
2016-03-09 18:55:39 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* m4/Makefile.am:
|
||
build: handle git ignore in m4 directory
|
||
|
||
2016-03-04 20:17:54 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
vaapidecoder_h265: plug leak of h265 parsing info
|
||
If something goes wrong while parsing, the info object is
|
||
being leaked
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=763121
|
||
|
||
2016-03-04 20:17:20 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
vaapidecoder_h264: plug leak of h264 parsing info
|
||
If something goes wrong while parsing, the info object is
|
||
being leaked
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=763121
|
||
|
||
2016-03-09 11:03:28 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: fix gstgl and vaapi memory leaks
|
||
1\ Unref gl_display and gl_window as soon they are not needed.
|
||
2\ Remove an unneeded display type check, since is handled by
|
||
gst_vaapi_created_display_from_handle()
|
||
3\ Unref vaapi's display if the display cannot be bind to a GL API.
|
||
Modified-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=763354
|
||
|
||
2016-03-09 14:13:24 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
vaapidisplay: Fix uninitialized value error for VA attribute
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=763362
|
||
|
||
2016-03-08 10:47:56 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
plugins: proxy information from downstream caps
|
||
Propagate to upstream the downstream information, such as fps, par, etc.
|
||
This will fix several "getcaps" critical warnings in gst-validate.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=763300
|
||
|
||
2016-03-04 10:51:42 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Assign values for profile and bit_depth from frame header
|
||
bit_depth field has added only in VA-API 0.39.0, added version check.
|
||
|
||
2016-03-04 09:12:13 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* Makefile.am:
|
||
build: Dist gstreamer-vaapi.doap and configure.ac/autogen.sh
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=763067
|
||
|
||
=== release 1.7.90 ===
|
||
|
||
2016-03-01 19:23:51 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gstreamer-vaapi.doap:
|
||
Release 1.7.90
|
||
|
||
2016-03-01 16:14:47 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
configure: Use AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO to set release date
|
||
|
||
2016-03-01 11:35:49 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: intersect with filter in getcaps()
|
||
In commit 6034734d I forgot to add the caps filter intersection in the
|
||
getcaps() vmethod generating a regression when a capsfilter is set in the
|
||
pipeline.
|
||
This commit adds the caps filter intersection.
|
||
|
||
2016-02-29 11:55:27 +0200 Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_jpeg.c:
|
||
Add memset to initialize value for VAEncSliceParameterBufferJPEG
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762850
|
||
|
||
2016-02-26 12:42:46 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From b64f03f to 6f2d209
|
||
|
||
2016-02-24 12:36:33 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* m4/Makefile.am:
|
||
build: add m4 directory
|
||
Instead of rely on the automatic creation of m4 directory by aclocal, we
|
||
already control it. Later we could create our own m4 scripts in order to
|
||
unclutter configure.ac
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762528
|
||
|
||
2016-02-23 10:55:02 +0200 Scott D Phillips <scott.d.phillips@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fill dependent slice segment headers while parsing
|
||
Copy the data into the dependent slice segment header from the
|
||
corresponding independent slice segment header during parsing.
|
||
Previously the reference to the "previous" independent header was
|
||
held through the parsing phase and then dereferenced during the
|
||
decoding phase. This caused all dependent headers to be populated
|
||
with the data of the AU's last independent header instead of the
|
||
proper corresponding header.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762352
|
||
Changes since v1:
|
||
- Reworded commit message
|
||
|
||
2016-02-17 13:43:48 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: use video decoder getcaps()
|
||
The usage of getcaps() vmethod is preferred than to handle manually the sink's
|
||
caps query.
|
||
In order to avoid function declarations, this patch moves the class_init()
|
||
method to the end of the file.
|
||
|
||
2016-02-17 12:51:45 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: remove deprecated code
|
||
Since we are only supporting current GStreamer version, since 1.3
|
||
gst_buffer_pool_config_add_option() checks if the option to add is
|
||
already set. There is no need to do it ourselves.
|
||
|
||
2016-02-19 19:03:44 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
vaapidecoder_h265: fix parsing of NALU aligned data
|
||
Don't assume the whole buffer is a single NAL, instead look for the
|
||
next start code in case there are multiple NALs per buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762328
|
||
|
||
2016-02-19 11:10:25 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
vaapidecoder_h264: fix parsing of NALU aligned data
|
||
Don't assume the whole buffer is a single NAL, instead look for the
|
||
next start code in case there are multiple NALs per buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762328
|
||
|
||
2016-02-18 10:13:53 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Fix event,pad,structure memory leaks
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762229
|
||
|
||
2016-02-17 15:40:54 +0200 Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
Add icamerasrc as dmabuf capable peer element
|
||
icamerasrc is another gstreamer plugin using to capture RAW
|
||
frames from camera device. It is based on libcamhal library.
|
||
There are some properties available to control icamera behavior.
|
||
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
Tested & Reviewed: Zhu Haiyang <haiyang.zhu@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759481
|
||
Fixme: This is the similar workaround we done for v4l2src.
|
||
The workaround will be removed once we fix #755072
|
||
|
||
2016-02-17 17:15:28 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
vaapipluginbase: Fix structure memory leak
|
||
config structure is not being freed in all cases
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762172
|
||
|
||
2016-02-17 17:20:08 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Fix videocodec state memory leak
|
||
When state is not NULL and either width/height of video info is 0, then state leaks
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762173
|
||
|
||
2016-02-16 15:44:48 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: post message for application for unhandled keyboard/mouse events
|
||
Makes (most) keyboard shortcuts work in gst-play-1.0 when
|
||
the video window has focus.
|
||
|
||
2016-02-16 08:48:43 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Fix capsfeature memory leak
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762116
|
||
|
||
2016-02-16 08:15:40 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Fix capsfeature memory leak
|
||
caps feature allocated is not being freeing in some cases
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762111
|
||
|
||
2016-02-16 15:09:01 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
vaapi: Fix various compiler warnings and disable -Wredundant-decls for now
|
||
|
||
2016-02-16 14:36:39 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
configure: Fix setting of extra compiler warning flags
|
||
|
||
2016-02-15 18:00:49 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
libs: fix build error
|
||
gst_vaapi_buffer_proxy_{acquire_handle,release_handle,finalize,class}
|
||
functions are used only when libva's API version is greater than 0.36.0
|
||
This patch guards those functions completely rather than just their
|
||
content. The patch is a continuation of commit 38f8fea4
|
||
Original-patch-by: Vineeth TM <vineeth.tm@samsung.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762055
|
||
|
||
2016-02-15 10:01:54 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* tests/simple-encoder.c:
|
||
tests: simple-encoder: fix build error
|
||
argument mismatch of gsize with 'long unsigned int'
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762055
|
||
|
||
2016-02-04 10:16:00 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Fix wrong caps advertising
|
||
The get_caps() should only report the supported formats.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=761147
|
||
|
||
2016-02-05 18:11:29 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From e97c9bb to b64f03f
|
||
|
||
2016-02-03 19:07:40 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/plugins/gstreamer-vaapi-plugins-docs.xml.in:
|
||
* docs/plugins/gstreamer-vaapi-plugins-sections.txt:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h265.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
rename encoders to vaapi{codec}enc
|
||
Trying to comply with GStreamer's element names, this patch renames the
|
||
encoders using the name format vaapi{codec}enc.
|
||
In this way, the plugin documentation is linked correctly.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-03 18:42:36 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
Use new AG_GST_ARG_ENABLE_EXTRA_CHECKS #define
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-03 18:02:21 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: remove vp9 parser check
|
||
Since the VP9 parser was added in gst-plugins-bad 1.7.1 we can remove safely
|
||
the check of the parser, as we did for the others.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-03 17:06:48 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* common:
|
||
* configure.ac:
|
||
Back to development
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
=== release 1.6.0 ===
|
||
|
||
2016-02-03 16:53:41 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
Release 1.6.0
|
||
|
||
2016-02-03 16:45:18 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.c:
|
||
libs: fix compiler warnings
|
||
After setting the release flags, the compiler warns about a couple
|
||
initialized variables.
|
||
Also marked a couple of set variables as unused, because they are only
|
||
used for assertion.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 20:41:27 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/plugins/gstreamer-vaapi-plugins-docs.xml.in:
|
||
* docs/plugins/gstreamer-vaapi-plugins-sections.txt:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h265.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
docs: update plugin documentation
|
||
Update all the documentation of elements of the vaapi plugin.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 15:39:09 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* docs/Makefile.am:
|
||
* docs/plugins/Makefile.am:
|
||
* docs/plugins/gstreamer-vaapi-plugins-docs.xml.in:
|
||
* docs/plugins/gstreamer-vaapi-plugins.types:
|
||
* docs/reference/Makefile.am:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-overrides.txt:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
* docs/version.entities.in:
|
||
resurrect gtk-doc machinery
|
||
Our auto-generated documentation has been a bit neglected. This patch replaces
|
||
the 'normal' gtk-doc with the one used in GStreamer, which is adapted for
|
||
plugins, elements and libraries.
|
||
This patch also re-enables documentation generation.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 19:35:24 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* ChangeLog:
|
||
* Makefile.am:
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
use gst-common submodule
|
||
This is 'the' big change in gstreamer-vaapi autoconf. Now it uses the official
|
||
GStreamer common submodule.
|
||
The documentation generation has been disable temporarily since it needs a
|
||
major rework, which will be done in the following commit.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-25 16:06:03 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* .gitmodules:
|
||
* common:
|
||
add gst-common submodule
|
||
Pointing to branch 1.6
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 13:28:30 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gstreamer-vaapi.doap:
|
||
add doap descriptor
|
||
DOAP (Description of a Project) is an RDF Schema and XML vocabulary to
|
||
describe software projects, in particular free and open source software.
|
||
The description is used in GStreamer as in many other open source projects.
|
||
This patch adds the doap description of this project.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-03 11:50:13 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparser_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
libs: humongous code style fix
|
||
As part of the upstreaming process of gstreamer-vaapi into the GStreamer
|
||
umbrella, we need to comply with the project's code style. This meant to
|
||
change a lot of code.
|
||
It was decided to use a single massive patch to update the code style.
|
||
I would like to apologize with the original developers of this code because of
|
||
the history breakage.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-03 11:04:15 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
libs: small refactors to enhance the code style
|
||
As gst-indent generated ugly code in these cases, this patch changes the used
|
||
idiomatic into other one.
|
||
No functional changes were introduced.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-02 17:59:57 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferpool.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_egl.c:
|
||
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-02 17:50:19 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferpool.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
libs: trivial comment style fixes
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-02 17:31:02 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodedbuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_egl.c:
|
||
libs: avoid gst-indent mess up
|
||
Guard pieces of code to avoid gst-ident to mess up the following code.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-03 12:17:59 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: fix code style
|
||
Minor code style changes by executing gst-indent in gst/vaapi directory.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-02-01 13:22:10 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
Fix some more compiler warning
|
||
Two (false) compiler warnings about variables potentially
|
||
being used uninitialized, and one about a variable being
|
||
set but not used.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759192
|
||
|
||
2016-02-01 13:02:13 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* tests/simple-encoder.c:
|
||
* tests/test-filter.c:
|
||
vaapi: fix 'ISO C90 forbids mixed declarations and code' compiler warnings
|
||
Declare variables at the beginning of a code block, which
|
||
is how it's done in GStreamer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759192
|
||
|
||
2016-01-28 14:21:04 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Fix crop rectangle setting
|
||
Align with software vp9dec behaviour: Add crop rectangle
|
||
only if display_width/display_height is less than the
|
||
frame_hdr->width/frame_hdr->height
|
||
|
||
2016-01-27 08:56:45 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Fix renegotiation for resolution change
|
||
Always renegotiate the pool if the immediate frame which going
|
||
to be pushed has a different un-cropped resolution than the already
|
||
configured one.
|
||
|
||
2016-01-29 15:51:49 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
plugins: use the same pre-processor macro
|
||
In gstvaapipluginbase.c we are using the macro USE_GST_GL_HELPERS to guard the
|
||
code related with GstGL. Nonetheless, in gstvaapipluginbase.h we are using
|
||
HAVE_GST_GL_GL_H macro in order to include the GstGLContext's header.
|
||
We should use only one to be homogeneous. This patch sets USE_GST_GL_HELPERS
|
||
in the header file.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 18:06:29 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: update a deprecated function
|
||
Somehow this didn't show up earlier, but gst_adapter_prev_timestamp() got
|
||
deprecated since GStreamer 1.0.
|
||
This patch replace it with gst_adapter_prev_pts()
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 13:13:56 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: honor configure's cache
|
||
The user might enable --config-cache when calling configure script. If so, our
|
||
configuration variables will not be correctly calculated.
|
||
This patch extracts the value of our variables either from the cache or from
|
||
the operation result.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 19:12:13 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: use common version variables
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 19:01:43 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: hard-code an unneeded macro
|
||
That macro is required for EGL's dynamic module loading, but since
|
||
gstreamer-vaapi doesn't creates dynamic modules, it is not required anymore.
|
||
That code in gst-libs/gst/vaapi/gstvaapidisplay_egl.c should be removed.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 17:14:51 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: refactorization of dependency tracking
|
||
This patch tries to avoid branching in configure.ac using a more functional
|
||
approach in macros usage.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 12:34:30 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: check for OpenGL either GLX or EGL are requested
|
||
Refactor some code in configure.ac to centralize $enable_opengl definition.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 16:55:44 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: indent and add square braces
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 16:50:39 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: upgrade autotools version dependency
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 11:14:34 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: enhance string comparisons
|
||
Add a 'x' as a prefix in string comparisons to watch out for edge cases where
|
||
the string is empty or undefined.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-28 14:29:16 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: remove unused variables
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-27 19:00:51 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: remove check for old version of gstreamer
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-27 17:55:02 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: remove GStreamer's parsers checks
|
||
This patch removes almost all the parsers check since they are already in place,
|
||
with the exception of the VP9 parser, since it was merged in Gstreamer 1.7.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-29 12:11:17 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/Makefile.am:
|
||
build: add gstreamer-pbutils dependency
|
||
This dependency was added in gstvaapidecodebin with the call
|
||
gst_missing_element_message_new().
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-27 17:53:59 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: fix variable declaration
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-27 17:47:32 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
build: fix when HEVC decoder is disabled
|
||
This a very pathological situation: when we have a HEVC encoder but not a HEVC
|
||
decoder.
|
||
The encoder needs functions that are only available when the decoder is
|
||
enabled.
|
||
This patch moves the utils functions into the generic sources, such as the
|
||
rest of the utils.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-27 17:20:31 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: remove unused EGL specific sources
|
||
These Makefile variables are not used at all.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-27 17:19:32 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: remove check for GStreamer 1.2
|
||
Since we are working for current stable GStreamer 1.6
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-26 11:49:40 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiparse.h:
|
||
Remove more video parser crufts
|
||
This header is not used anymore since it declares parsers that are
|
||
already in GStreamer 1.6
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-25 12:43:15 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* configure.ac:
|
||
* docs/reference/Makefile.am:
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-overrides.txt:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
docs: remove library documentation which is non-public now
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759192
|
||
|
||
2016-01-25 12:40:49 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/changelog.in:
|
||
* debian.upstream/compat:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/copyright:
|
||
* debian.upstream/gstreamer-vaapi-doc.install.in:
|
||
* debian.upstream/gstreamer-vaapi.install.in:
|
||
* debian.upstream/rules:
|
||
Remove debian.upstream packaging
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759192
|
||
|
||
2016-01-22 19:27:13 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
Remove old gst version guards
|
||
As gstreamer-vaapi now only supports from GStreamer 1.6, this patch removes
|
||
all the old GStreamer version guards.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-22 19:23:43 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiparse.c:
|
||
Remove video parser crufts
|
||
We forgot to remove gstvaapiparse.c when we removed all the videoparser
|
||
machinery.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-12-09 19:52:33 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* tests/Makefile.am:
|
||
libs: remove versioning
|
||
Since we don't install libraries anymore, it makes no sense to keep
|
||
versioning them according to the gstreamer's version.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-12-09 16:59:16 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/libgstvaapi-dev.install.in:
|
||
* debian.upstream/libgstvaapi-drm.install.in:
|
||
* debian.upstream/libgstvaapi-glx.install.in:
|
||
* debian.upstream/libgstvaapi-wayland.install.in:
|
||
* debian.upstream/libgstvaapi-x11.install.in:
|
||
* debian.upstream/libgstvaapi.install.in:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* tests/Makefile.am:
|
||
libs: make libraries no installables
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-12-09 15:37:39 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* debian.upstream/libgstvaapi-dev.install.in:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Do not install libgstvaapi headers
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-19 10:40:54 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* patches/Makefile.am:
|
||
* patches/videoparsers/0001-plugins-compile-the-built-in-video-parsers-as-vaapip.patch:
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
* patches/videoparsers/0003-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
* patches/videoparsers/0004-h264parse-Disable-3D-video-support-for-GStreamer-1.5.patch:
|
||
* patches/videoparsers/0005-videoparsers-h264-Disable-passthorugh-mode-enabling.patch:
|
||
* patches/videoparsers/0006-h265parse-include-gstvaapiparse.h.patch:
|
||
* patches/videoparsers/0007-h265parse-fix-build-with-GStreamer-1.5.patch:
|
||
* patches/videoparsers/Makefile.am:
|
||
* patches/videoparsers/series.frag:
|
||
Remove videoparser patches
|
||
|
||
2015-12-09 15:18:11 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* debian.upstream/libgstvaapi-dev.install.in:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-drm.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-glx.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-wayland.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
Remove pkg-config files
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-12-09 13:24:30 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* .gitmodules:
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* ext/codecparsers:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
Remove codecparsers submodule
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-12-08 00:36:36 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* .gitmodules:
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
* debian.upstream/libgstvaapi.install.in:
|
||
* ext/Makefile.am:
|
||
* ext/libvpx/Makefile.am:
|
||
* ext/libvpx/gstlibvpx.c:
|
||
* ext/libvpx/gstlibvpx.h:
|
||
* ext/libvpx/libgstcodecparsers_vpx.vers:
|
||
* ext/libvpx/sources.frag:
|
||
* ext/libvpx/upstream:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/codecparsers/gstvaapilibvpx.c:
|
||
Remove libvpx submodule
|
||
We will be using upstream codecparsers always.
|
||
No more internal libvpx !
|
||
|
||
2015-12-09 14:12:22 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: fix check for GstJpegParser
|
||
Right now the local JPEG parser is always compiled because the check for the
|
||
upstreamed version is broken: it looks for an non existent symbol:
|
||
GstJpegImage.
|
||
This patch changes that check for< GstJpegFrameHdr.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-10-28 09:56:46 +0100 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: free the frame in frame_release_callback()
|
||
This basically reverts 62c3888b76afc69f714a020957e8c5dd9d98f561 (wayland:
|
||
decouple wl_buffer from frame).
|
||
Otherwise the frame may be overwritten while it is still used by the
|
||
compositer:
|
||
The frame done callback (frame_done_callback()) is called, when the
|
||
compositor is done processing the frame and hands it to the hardware.
|
||
The buffer release callback (frame_release_callback()) is called when the
|
||
buffer memory is no longer used.
|
||
This can be quite some time later: E.g. if weston (with the DRM backend)
|
||
puts the buffer on a hardware plane, then then buffer release callback is
|
||
called when the kernel is done with the buffer. This is usually when the
|
||
next frame is shown, so most likely after the frame done callback for the
|
||
next frame!
|
||
Since 70eff01d36a2870cbf06ffb91c2a941e8cb6b804 "wayland: sync() when
|
||
destroy()" the mentioned possible leak should no longer be a problem, so
|
||
reverting this change should cause no leaking buffers.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=758848
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2016-01-14 17:36:24 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: check ANY caps at transform_caps()
|
||
When transforming downstream caps we should check for ANY caps from peer pad,
|
||
otherwise we get a segmentation fault.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759893
|
||
|
||
2016-01-13 19:17:02 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: ignore frame if its upload failed
|
||
When gst_vaapi_plugin_base_get_input_buffer() fail to copy the input buffer
|
||
into a VAAPI buffer, the return value is GST_FLOW_NOT_SUPPORTED, and it was
|
||
ignored by the vaapisink, leading to a segmentation fault.
|
||
This patch ignores the frame that generated the GST_FLOW_NOT_SUPPORTED
|
||
returned by gst_vaapi_plugin_base_get_input_buffer(), avoiding the
|
||
segmentation fault, but doing and effort to continue rendering. This is
|
||
the same behavior of ximagesink.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759332
|
||
|
||
2015-12-09 18:24:50 +0200 Joel Holdsworth <joel.holdsworth@vcatechnology.com>
|
||
|
||
* configure.ac:
|
||
build: Don't ignore GST_PLUGIN_PATH_1_0 even if the directory doesn't exist yet
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759184
|
||
|
||
2015-12-08 16:14:11 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265_priv.h:
|
||
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.
|
||
|
||
2001-01-01 04:59:28 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
gstvaapisurfacepool: Add new API to create surface pool based on chroma type
|
||
This new API gst_vaapi_surface_pool_new_with_chroma_type() is for
|
||
creating a new GstVaapiVideoPool of GstVaapiSurfaces with the specified
|
||
chroam type and dimensions. The underlying format of the surfaces is
|
||
implementation (driver) defined.
|
||
|
||
2015-12-07 19:06:28 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
Add definitions for YUV420 with more than 8 bits per channel
|
||
|
||
2015-12-07 17:26:24 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
gstvaapiporfile: Fix string representation of HEVCMain10 profile
|
||
|
||
2015-12-07 16:17:11 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development
|
||
|
||
=== release 0.7.0 ===
|
||
|
||
2015-12-07 12:52:10 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
0.7.0
|
||
|
||
2015-12-07 12:49:05 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: Updates
|
||
|
||
2015-12-07 12:47:04 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* AUTHORS:
|
||
AUTHORS: Update
|
||
|
||
2015-12-07 12:39:23 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* README:
|
||
README: Update
|
||
|
||
2015-11-26 10:34:12 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
texture: detect GL version and use the proper API
|
||
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
|
||
|
||
2015-11-26 10:19:32 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
texture: check for expected target and format
|
||
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
|
||
|
||
2015-11-26 10:26:10 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
libs: add gl3_bind_texture_2d()
|
||
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
|
||
|
||
2015-11-26 10:14:45 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
libs: add gl_get_current_api()
|
||
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
|
||
|
||
2015-11-27 12:29:11 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
build: Add gmodule dependency for libgstvaapi_egl
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=756259
|
||
|
||
2015-11-27 14:24:55 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0005-h265parse-include-gstvaapiparse.h.patch:
|
||
* patches/videoparsers/0005-videoparsers-h264-Disable-passthorugh-mode-enabling.patch:
|
||
* patches/videoparsers/0006-h265parse-fix-build-with-GStreamer-1.5.patch:
|
||
* patches/videoparsers/0006-h265parse-include-gstvaapiparse.h.patch:
|
||
* patches/videoparsers/0007-h265parse-fix-build-with-GStreamer-1.5.patch:
|
||
* patches/videoparsers/series.frag:
|
||
patches/videoparsers: h264: Disable passthorugh mode enabling
|
||
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
|
||
|
||
2015-11-25 15:12:53 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* patches/videoparsers/Makefile.am:
|
||
* patches/videoparsers/series.frag:
|
||
build: add gsth265parse patches conditionally
|
||
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
|
||
|
||
2015-11-25 15:11:28 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: declare correctly parse lib built files
|
||
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
|
||
|
||
2015-11-24 17:14:20 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/libvpx/sources.frag:
|
||
build: libvpx: Add missing source file
|
||
|
||
2015-11-23 17:21:23 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: Correctly detect the caps change
|
||
This is a quick fix for regression introuduced by the
|
||
commit 757833230bc73b8e3b4e31649e4618ba802bea51
|
||
With out this, the gst_vaapipostproc_create() will
|
||
never get invoked.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=758543
|
||
|
||
2015-11-18 20:48:30 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* ext/libvpx/Makefile.am:
|
||
* ext/libvpx/sources.frag:
|
||
build: libvpx: update the sources lists
|
||
`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
|
||
|
||
2015-11-16 17:49:01 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: don't set caps change at first set
|
||
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
|
||
|
||
2015-11-12 16:13:25 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: params video_info_changed() callers
|
||
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
|
||
|
||
2015-09-24 10:35:44 +0000 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: declare real built files
|
||
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
|
||
|
||
2015-11-17 19:37:07 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Fix last/golden/altref frame index setting
|
||
Always fill VADecPictureParameterBufferVP9 last/golden/altref indices
|
||
based on what ever reference frame indices encoded in frame header.
|
||
|
||
2015-08-25 16:01:51 +0000 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* debian.upstream/rules:
|
||
debian: remove custom parallel compilation
|
||
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
|
||
|
||
2015-11-16 18:22:55 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Fix PTS calculation of cloned frames
|
||
|
||
2015-11-16 18:22:33 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Avoid unnecessary show_frame flag checking while doing picture output
|
||
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.
|
||
|
||
2015-11-16 18:22:14 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Fix ref picture update while doing repeat frame
|
||
Don't try to do frame decoding and reference picture update
|
||
while receiving a vp9 frame having show_existing_frame flag
|
||
set as TRUE.
|
||
|
||
2015-11-16 18:21:56 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Add repeat-frame display handling
|
||
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.
|
||
|
||
2015-11-12 11:07:38 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: add me as element co-author
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757957
|
||
|
||
2015-11-12 12:47:01 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: try to get display from decoder
|
||
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
|
||
|
||
2015-11-11 19:04:25 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
vaapidecodebin: add postprocessor dynamically
|
||
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
|
||
|
||
2015-11-11 16:33:24 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: delay the bin configuration
|
||
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
|
||
|
||
2015-11-13 19:39:56 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Add crop rectangle support.
|
||
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
|
||
|
||
2015-11-13 19:23:05 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Fix the context and surface pool reset for multi resolution video
|
||
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.
|
||
|
||
2015-11-13 18:58:33 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Fill the VADecPictureParameterBufferVP9 width/height from frame header
|
||
Always fill width/height of VADecPictureParameterBufferVP9 from frame header.
|
||
Preliminary fix for supproting multi resolution video decode.
|
||
|
||
2015-11-13 18:51:27 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Add comments for corner case fixes and fix couple of indentations.
|
||
|
||
2015-11-13 18:41:53 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
decoder: vp9: Set lossless flag from frame header
|
||
|
||
2015-11-13 18:40:52 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch d9f25
|
||
d9f2527: codecparsers: vp9: Set lossless flag in frame header
|
||
|
||
2015-11-11 19:16:16 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
libs: vp9: remove unused symbols
|
||
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
|
||
|
||
2015-11-10 19:00:22 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch da251bb
|
||
da251bb: codecparsers: vp9: Optimize the memory allocation
|
||
f5759f4: codecparsers: vp9: Fix the wrong memcpy of probability arrays
|
||
|
||
2015-11-05 12:58:52 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
plugin: guard pointers to pad query functions
|
||
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
|
||
|
||
2015-11-05 12:39:55 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: use pad query vmethods
|
||
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
|
||
|
||
2015-10-28 13:01:04 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: return pad's template caps if no display
|
||
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
|
||
|
||
2015-10-28 12:59:02 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: don't create display at caps query
|
||
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
|
||
|
||
2015-11-04 21:38:42 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: fix context query handling
|
||
The current context query handling design is flawed: the function
|
||
gst_vaapi_reply_to_query() returns FALSE either if the query is not a
|
||
GST_CONTEXT_QUERY of if the query could not be handled correctly. But the
|
||
pad query function should handle differently each case.
|
||
This patch changes the gst_vaapi_reply_to_query() for
|
||
gst_vaapi_handle_context_query() and changes it usage in all the vaapi plugins
|
||
to match the correct context query handling.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-11-04 20:37:05 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugin: don't lose previous context at query
|
||
When processing the GST_CONTEXT_QUERY we should not lose the previous
|
||
context in the query, we should only add our display structure.
|
||
This patch copies the old context, if it is there, and stamp our display on
|
||
it. Otherwise, a new context is created.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-11-04 20:29:03 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
vaapivideocontext: add gst_vaapi_video_context_set_display()
|
||
This function set the display to an already created context. This function is
|
||
going to be used later.
|
||
Also, gst_vaapi_video_context_new_with_display() now uses this function.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-10-30 12:27:16 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
plugins: check if display is set in sync
|
||
Since the context messages are sync'ed, the display assignation happens in the
|
||
same thread, hence we can know if the display was found or not as soon we call
|
||
for it.
|
||
In order to take advantage of it, gst_vaapi_video_context_prepare() receives,
|
||
as a new parameter, the address of the plugin's display, and reports back if
|
||
the display was found and set.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-10-30 12:33:48 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
plugins: set display through context
|
||
Instead of setting the display to the plugin directly after its creation, do
|
||
it through the gstreamer's context mechanism, avoiding double assignations.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-11-02 18:20:07 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
vaapivideocontext: rename context structure
|
||
The context structure is named "display" which is too generic. The contrary
|
||
happens, for example, with GstGL, what uses the same name as the context, and
|
||
its logs make more sense.
|
||
This patch renames the context structure with the same name as the
|
||
context, thus GST_PTR_FORMAT can pretty print it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-11-04 19:02:34 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
vaapivideocontext: refactor gst_vaapi_video_context_prepare()
|
||
First, refactorized run_context_query() into _gst_context_run_query(), adding
|
||
a new parameter: the pad direction, in order to simplify the code.
|
||
Second, added a new helper function: _gst_context_query(), which is a generic
|
||
context query function. It isolates the operation of running the query and
|
||
sets the context if found, also it enhances the logs.
|
||
_gst_context_query() is similar to the one used in GstGL. Perhaps, in the
|
||
future this helper function will be merged into the core libraries of
|
||
GStreamer.
|
||
Finally, gst_vaapi_video_context_prepare() was rewritten to use
|
||
_gst_context_query().
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-10-30 11:18:47 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
vaapivideocontext: refactor context category debug
|
||
Refactor the extraction GST_CAT_CONTEXT logging using a only once
|
||
initializator, so we could get the debug category from different code
|
||
paths, safely.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-10-23 11:17:01 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
gstvaapivideocontext: fix indentation
|
||
gst-indent does not handle correctly some expression like function
|
||
declaration with attributes, breaking the following expressions.
|
||
This patch makes gst-indent to ignore the attributed function
|
||
declartion so the followed function definition is not mangled, such
|
||
as happened in commit b4154a
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-11-02 16:48:27 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugin: chain up set_context() vmethod
|
||
Since Gstreamer 1.7, set_context() vmethod needs to be chained up with
|
||
the parent class in order to broadcast all its contexts when the element
|
||
is added into a bin:
|
||
http://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=d5ded1588920c4471eefe055d09095d9e5e989b5
|
||
There is no need to guard the call, because before GStreamer 1.7, the
|
||
set_context() vmethod was NULL in the element class, hence the conditional
|
||
call make it safe.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757598
|
||
|
||
2015-11-06 10:20:34 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* tests/simple-encoder.c:
|
||
tests: simple-encoder: remove dead code
|
||
The caps creation for codec state configuration is not used. Let's remove it.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-11-02 19:05:07 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: fix a leaked display instance
|
||
The display returned by gst_vaapi_video_context_get_display() increments the
|
||
references. Thus, we have to unref the returned display.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757595
|
||
|
||
2015-11-04 16:50:44 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
libs: remove unneeded headers
|
||
Since gstvaapidisplay_glx.h do not expose gl.h/glx.h structures, it is not
|
||
required to include them in the header. It is not also required to include
|
||
them in gstvaapidisplay_glx.c, since gstvaapiutils_glx.h includes them and
|
||
exposes their structures (e.g. GLXPixmap).
|
||
Nonetheless, glext.h neither glxext.h are required to include, they are
|
||
already included conditionally by gl.h and glx.h, respectively.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757577
|
||
|
||
2015-11-06 19:18:54 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch 0ea6792
|
||
0ea6792: codecparsers: vp9: Add header comments
|
||
347ffc7: codecparsers: vp9: Use g_slice_free() for releasing memory allocated from the slice allocator
|
||
|
||
2015-11-06 15:19:38 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
VP9: plugins: Add VP9 decoder
|
||
|
||
2015-11-06 15:12:51 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp9.h:
|
||
VP9: libgstvaapi: Add VP9 decoder
|
||
|
||
2015-11-06 14:57:00 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
VP9: gstvaapiprofile: Add profile definitions
|
||
|
||
2015-11-06 14:39:22 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
VP9: build: Check availability of vp9 decoder APIs
|
||
|
||
2015-11-06 14:24:08 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
VP9: Allow building vp9 codecparser internally
|
||
|
||
2015-11-06 12:38:46 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit ac5dc1a
|
||
ac5dc1a: codecparsers: vp9: Add vp9 codec parser
|
||
e7d9217: codecparser: h264: initialize parsing structures
|
||
403d400: codecparser: h265: initialize parsing structures
|
||
|
||
2015-11-04 15:37:34 +0100 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
configure.ac: don't use an undefined variable
|
||
If the environment lacks of gstreamer development packages, this error will
|
||
be reported to the user: "gstreamer- was not found"
|
||
This is because we are using an undefined variable in the printed message. The
|
||
fix simple changes the variable for the hard-coded string "1.0".
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=757283
|
||
|
||
2015-10-16 15:55:40 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: relax guards for memory:VASurface capsfeature
|
||
Though caps features are supported since GStreamer 1.2, there are some
|
||
issues with the features caps negotiation in that version. Nonetheless,
|
||
those issues are fixed in GStreamer 1.4. So, the memoy:VASurface caps
|
||
feature negotiation is relaxed for GStreamer 1.4.
|
||
The guard is the same as in vaapisink's caps template.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=756686
|
||
|
||
2015-10-15 18:18:36 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: decide allocation doesn't update srccaps
|
||
The received caps query will bring the already negotiated caps, so they are
|
||
not expected to change.
|
||
This patch removes this verification which is dead code path.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=756686
|
||
|
||
2015-10-14 20:30:30 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
vaapidecode: use caps to check the features
|
||
Instead of calling gst_vaapi_find_preferred_caps_feature(), which is
|
||
expensive, we check the caps from the allocation query, to check the
|
||
negotiated feature.
|
||
In order to do this verification a new utility function has been implemented:
|
||
gst_vaapi_caps_feature_contains().
|
||
As this new function shared its logic with gst_caps_has_vaapi_surface(), both
|
||
have been refactorized.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=756686
|
||
|
||
2015-10-14 20:22:43 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: set format before decide allocation
|
||
There is a regression from commit 3d8e5e. It was expected the buffer pool
|
||
allocation occur before the caps negotiation, but it is not.
|
||
This patch fixes this regression: the caps negotiation is done regardless the
|
||
allocation query from downstream.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=756686
|
||
|
||
2015-10-16 20:21:50 +0800 Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
|
||
* configure.ac:
|
||
build: check for patch and fix yasm check
|
||
Add configure checking for GNU patch tools and fixed configure
|
||
checking YASM to correct sequence.
|
||
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=756690
|
||
|
||
2015-10-15 19:20:21 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/libvpx/Makefile.am:
|
||
build: Remove disable-md5 option for libvpx build
|
||
The configure option --disable-md5 was provided in libvpx-1.3.0 which
|
||
has been removed in 1.4.0.
|
||
|
||
2015-10-15 19:00:26 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/libvpx/upstream:
|
||
libvpx: Update the submodule to libvpx-1.4.0
|
||
libvpx git commit: c74bf6d889992c3cabe017ec353ca85c323107cd
|
||
|
||
2015-10-15 10:59:08 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: mark support for GStreamer 1.2 as obsolete.
|
||
Support for GStreamer 1.2 is obsolete. i.e. it is no longer supported.
|
||
Our goal is to support the last two stable versions of GStreamer which
|
||
are 1.4 and 1.6 at the moment.
|
||
We still keep the 1.2 specific codes until the next gstreamer-vaapi-0.7
|
||
release and will get rid of those in 0.8.
|
||
|
||
2015-10-12 14:13:03 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Fix buffer copy assertion
|
||
Don't try to copy the NULL buffer-codec_data.
|
||
|
||
2015-09-28 14:57:33 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: allow builds against GStreamer 1.7.x
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-09-23 16:02:46 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstcompat.h:
|
||
gstcompat: add gst_buffer_copy_deep() if gst < 1.5
|
||
gst_buffer_copy_deep() was added in GStreamer 1.5. If want to use it we should
|
||
add an implementation if gstreamer-vaapi is linked to previous versions.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-09-23 12:13:41 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: simplify copy of GstVideoCodecState
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-09-14 19:21:08 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0006-h265parse-fix-build-with-GStreamer-1.5.patch:
|
||
* patches/videoparsers/series.frag:
|
||
patches/videoparsers: h265parser: more API fences
|
||
Add more API fences according with its version and refresh the patch.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-14 19:19:56 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0001-h265parse-include-gstvaapiparse.h.patch:
|
||
* patches/videoparsers/0005-h265parse-include-gstvaapiparse.h.patch:
|
||
* patches/videoparsers/series.frag:
|
||
patches/videoparsers: h265parser: rename patch keeping number
|
||
Refresh the patch and rename it in order to keep the patch number.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-14 19:18:33 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
patches/videoparsers: h264parser: more API fences and refresh
|
||
Add more API fences according with its version and refresh the patch.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-14 19:16:51 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0004-h264parse-Disable-3D-video-support-for-GStreamer-1.5.patch:
|
||
* patches/videoparsers/0004-h264parse-Disable-3D-video-support-for-GStremaer-1.5.patch:
|
||
* patches/videoparsers/series.frag:
|
||
patches/videoparsers: h264parser: fix description and refresh
|
||
Fix a typo in the patch description and refresh it in order to avoid the
|
||
creation of .orig files and break the distcheck target.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-14 19:15:18 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0001-plugins-compile-the-built-in-video-parsers-as-vaapip.patch:
|
||
* patches/videoparsers/0003-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
patches/videoparsers: h264parser: refresh patches
|
||
In order to avoid the creation of .orig files and break the distcheck target.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-15 16:53:31 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: link libgstvaapi_parse against codec parser
|
||
GST_CODEC_PARSER_* variables are defined if builtin codec parsers are disabled
|
||
when running configure.
|
||
Right now, libgstcodecparsers links only to libgstvaapi, but libgstvaapi_parse
|
||
need it if builtin codec parsers are disabled.
|
||
This patch adds GST_CODEC_PARSER_* variables to libgstvaapi_parse
|
||
compilation. If builtin codec parsers are enable, this variable is null, so it
|
||
should work using libgstvaapi, as normal.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-11 16:35:30 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
build: verify for H264 MVC and H265 SPS
|
||
Currently the H264 and H265 parsers look for MVC and SPS respectively, and
|
||
the required symbols for those were added in GStreamer 1.5
|
||
If we try to compile in GStreamer < 1.4, without enabling the builtin codec
|
||
parsers, the compilation fails, because the lack of those symbols.
|
||
This patch verifies if the installed H264 and H265 parsers have those symbols. If
|
||
they do not, the specific built in codec parsers are enabled and used.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-11 16:49:16 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: initialize PPS's slice_group_id
|
||
When the GstVaapiParserInfoH264 is allocated, the memory is not initialized,
|
||
so it contains random data.
|
||
When gst_h264_parser_parse_pps() fails, the PPS structure keeps slice_group_id
|
||
pointer uninitialized, leading to a segmentation fault when the memory is
|
||
freed.
|
||
This patch prevents this by initializing the slice_group_id before the PPS
|
||
parsing.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754845
|
||
|
||
2015-09-15 11:01:29 +0300 Mark Nauwelaerts <mnauw@users.sourceforge.net>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: proper numerator and denominator for forced latency framerate
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=755040
|
||
|
||
2015-09-11 20:51:42 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit f9e284b
|
||
dae1a84: h264parse/h265parse: Fix negotiation crash
|
||
45a9f8a: codecparsers: h265 : Fix default scaling list values
|
||
28eaaf5: codecparsers: h265: Fix the selection of Active Ref Pic Set
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-09-04 22:19:55 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Don't flush dpb for EOS/EOB nal
|
||
Explicit flushing of dpb for EOS and EOB nal decoding is wrong,
|
||
the dpb_add() itself will handle the flusing(if needed) of dpb
|
||
for end of sequence and end of bitstream.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754010
|
||
|
||
2015-09-04 22:11:10 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix the dpb_add() based on C.5.2.3
|
||
Follow the spec as it is in C.5.2.3, add the decoded frame to dpb
|
||
just after the PicLatencyCnt setting of existing dpb frames.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754010
|
||
|
||
2015-09-04 22:02:55 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix the picture addition in dpb() based on spec H265 v3 (04/2015)
|
||
This fix is based on the V3 vesion of spec which was missing in older versions.
|
||
When the current picture has PicOutputFlag equal to 1, for each picture in the
|
||
DPB that is marked as "needed for output" and follows the current picture in output order,
|
||
the associated variable PicLatencyCount is set equal to PicLatencyCount + 1 (C.5.2.3).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754010
|
||
|
||
2015-09-04 22:00:36 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: h265: Fix indentation
|
||
|
||
2015-06-13 01:39:31 +1000 Jan Schmidt <jan@centricular.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
multiview: initial attempt at stereo/multiview support
|
||
Add support for marking caps and buffers for multiview or
|
||
stereoscopic output.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=750835
|
||
|
||
2015-08-28 17:12:12 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: remove unused functions
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=754250
|
||
|
||
2015-08-31 13:11:54 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: remove (another) unused variable
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-08-28 17:10:40 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: remove unused variable
|
||
Thus silence the compilation warnings.
|
||
|
||
2015-08-28 16:06:08 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: compilation fix
|
||
gst_vaapi_decoder_state_changed() returns void. This patch fixes the
|
||
compilation where the toolchain uses restrictive flags as clang.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-08-29 00:27:05 +0300 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: renegotiate if caps are not equal
|
||
The use of gst_caps_is_always_compatible() for this optimization may lead to
|
||
false positives. It is better to stick to gst_caps_is_strictly_equal() to know
|
||
if it is required a re-negotiation.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=750835
|
||
|
||
2015-08-29 00:18:57 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
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-28 23:43:47 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Always keep a copy of input codec state
|
||
Currently we are sharing the input GstVideoCodecState with
|
||
GstVaapiDecoder(gst-libs/gst/vaapi) by just doing ref and unref for
|
||
each caps change. This is troublesome in many cases, for eg: if
|
||
resoultion changes with in a singe stream. Because, when ever there
|
||
is a resolution change, GstVideoDecoder will first change the Codec_state->caps
|
||
fields with new resolution, but since we are using the same codecstate (ref)
|
||
in gstvaapidecode.c, the caps check for input caps change will always fail.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753914
|
||
|
||
2015-08-26 07:25:03 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix the scaling list scan order
|
||
The default scan order of scaling lists are up-right-diagonal
|
||
as per hevc specification. Use the newly implemented
|
||
uprightdiagonal_to_raster conversion codecparser APIs to
|
||
get the the scaling_list values in raster order, which is
|
||
what the VA intel driver requires.
|
||
|
||
2015-08-26 07:20:09 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: sync with the codecparser changes
|
||
The Tile Scanning Conversion process (spec 6-3 and 6-4) is implemented
|
||
in codecparsers now. Remove the duplication from gstvaapidecoder_h265
|
||
|
||
2015-08-26 07:04:22 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
patches/Videoparsers: update patch to fix build with older GStreamer 1.2 stacks
|
||
|
||
2015-08-26 06:57:36 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit 69550f1
|
||
c207c6d: codecparsers: h265: Fix tile row and column parsing
|
||
47074c5: codecparsers: h265: Add APIs for up-right-diagonal/raster scan conversion
|
||
cd28b18: codecparsers: h265: Fix the range of delta_chroma_log2_weight_denom
|
||
1746bbe: videoparsers: Use gst_base_parse_merge_tags()
|
||
2f0932b: h264parse: Clear SPS info after processing
|
||
f57d6b0: videoparsers: enable accept-template flag
|
||
|
||
2015-08-25 15:38:42 +0000 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* debian.upstream/control.in:
|
||
debian: add yasm as build dependency
|
||
As the compilation of libvpx (for vp8 parser) is enabled by default,
|
||
yasm is required by default too.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-08-14 19:21:04 +0800 Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
|
||
* debian.upstream/rules:
|
||
debian: remove --with-gstreamer-api option
|
||
It is no longer valid in gstreamer-vaapi.
|
||
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
[removed unused GST_API_VERSION variable]
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753618
|
||
|
||
2015-08-24 19:22:14 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: rename is_cancelled to sync_failed
|
||
Since commit 065a18a3, the semantics of the variable is_cancelled did not make
|
||
sense. This commit renames this variable to sync_failed.
|
||
|
||
2015-08-13 15:12:44 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: Don't return GST_FLOW_ERROR on flushing
|
||
Setting the sink to flushing causes gst_vaapi_window_wayland_sync() to
|
||
return FALSE which makes gst_vaapi_window_wayland_render() return
|
||
FALSE which ends up posting an ERROR message in
|
||
gst_vaapisink_show_frame_unlocked(). Solution is to just return TRUE
|
||
in the EBUSY case.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753598
|
||
|
||
2015-08-06 12:28:51 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
Revert "Marking rank of vaapidecodebin as GST_RANK_MARGINAL for now."
|
||
This reverts commit 3ccb198b513dc6ad287fe44117d03bec4d6a966a.
|
||
|
||
2015-07-06 20:22:57 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: check for postproc instance
|
||
If the VPP's deinterlace-method is set, first we should check if the postproc
|
||
is already instanced to set it. Otherwise we just store it until the VPP is
|
||
added into the bin.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
|
||
2015-08-06 18:48:13 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
vaapidecodebin: ensure VPP before going to READY
|
||
There are sometimes that the VA-API display context is not shared among the
|
||
pipeline, but it is important to know it before going to READY state (when the
|
||
pipeline is already linked).
|
||
One instance of this case is this:
|
||
gst-launch-1.0 filesrc location=media ! decodebin ! vaapipostproc ! vaapisink
|
||
This patch adds a new function in gstvaapipluginutil called
|
||
gst_vaapi_create_test_display(). Its purpose is to create a disposable VA-API
|
||
display, which only will be used for verify if the VAEntrypointVideoProc is
|
||
available by the hardware. Afterwards, it should be unrefed.
|
||
If the vaapidecodebin is going to READY state, and the element still doesn't
|
||
know if VPP is available, the last resort is to create a new instance of the
|
||
VA-API display and test for it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
|
||
2015-08-06 12:39:52 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: post an error message if fails
|
||
If the construction of the bin fails, post an error message in the bus.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
|
||
2015-08-06 12:36:07 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
vaapidecodebin: has_vpp as a tri-state variable
|
||
has_vpp can be UNKNOWN while the context message hasn't being received.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
|
||
2015-08-03 16:33:02 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
gstvaapivideomemory: native format with no derived image
|
||
If USE_NATIVE_FORMATS is defined we bail out before configuring the surface
|
||
info based on the derived image configuration.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-07-23 20:07:59 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
surface pool config based on video info
|
||
First added the function gst_vaapi_video_format_get_best_native(), which
|
||
returns the best native format that matches a particular chroma type:
|
||
YUV 4:2:0 -> NV12, YUV 4:2:2 -> YUY2, YUV 4:0:0 -> Y800
|
||
RGB32 chroma and encoded format map to NV12 too.
|
||
That format is used to configure, initially, the surface's pool for the
|
||
allocator.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-07-23 16:03:43 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
gstvaapivideomemory: refactor gst_vaapi_video_allocator_new()
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-06-19 15:51:07 +0200 Victor Jaquez <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
gstvaapiencoder: validate chroma according to the VA's RT format
|
||
Before, only YUV420 color space where supported. With this patch, the
|
||
encoder is queried to know the supported formats and admits YUV422
|
||
color space if its available.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-08-13 05:07:52 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Add calculation of WpOffsetHalfRangeC
|
||
This is necessary for finding ChromaOffsetL0/ChromaOffsetL1
|
||
prediction weight table values with out using any hard coding.
|
||
Fixme: We don't have parser API for sps_range_extension, so
|
||
assumed zero value for high_precision_offsets_enabled_flag.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-13 04:09:44 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix ChromaOffsetL0/ChromaOffsetL1 calculation
|
||
Based on ITU-T rec H265(4/2015): 7-56
|
||
This was a wrong equation in rec H265 (4/2013): 7-44...
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-13 04:08:03 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix default value assignment of pred_weight_table
|
||
|
||
2015-08-13 03:48:43 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix the value assigning for delta_chroma_log2_weight_denom
|
||
Assign only if ChromaArrayType != 0..
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-13 03:06:32 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit 1c70432
|
||
8e98b41: codecparsers: h265: Fix the range of delta_chroma_log2_weight_denom
|
||
839c5bc: codecparsers: h265: Fix the parsing of ref_pic_lists_modification
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-11 08:09:10 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit c18b8ad
|
||
8a03e67: videoparsers: h265: Avoid skipping of EOS and EOB nals
|
||
a033083: videoparsers: h265: Fix the frame start detection code
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-10 05:50:50 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Add SEI parsing
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-07 08:43:44 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Workaround to recognize wrongly encoded main profile streams
|
||
HACK: This is a work-around to identify some main profile streams having wrong profile_idc.
|
||
There are some wrongly encoded main profile streams(eg: ENTP_C_LG_3.bin) which doesn't
|
||
have any of the profile_idc values mentioned in Annex-A, instead general_profile_idc
|
||
has been set as zero and having general_profile_compatibility_flag[general_profile_idc]
|
||
is TRUE. Assuming them as MAIN profile for now.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753226
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-07 08:41:57 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
patches/videoparsers: Fix the wrong source file path
|
||
This is something wrongly typed in commit 6d7b631
|
||
|
||
2015-08-07 08:34:55 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit b8d8be4
|
||
ee7e81b: h264parse: Don't discard first AU delimiter
|
||
3690fb9: h264parse: Add more NAL types for debugging output
|
||
108d368: h265parse: Avoid checking for Non Mandatory VPS NAL
|
||
ace61048: h265parse: expose compatible profiles to downstream
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-06 13:07:53 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
gstvaapivideocontext: remove unused parameter
|
||
gst_vaapi_video_context_prepare() received an unused parameter. This patch
|
||
removes it and the structure passed by the caller.
|
||
This a left over of "Removal of gstreamer-1.0 support" (commit 8b36e25f).
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-08-06 04:01:24 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix decoding of stream when it has temporal sublayers
|
||
We are calculating the dpb size based on max_dec_pic_buffering.
|
||
But if there are more than one temporal sublayers, we are supposed
|
||
to use the max_dec_pic_buffering[max_sub_layers_minus] for dpb
|
||
size calculation (Assuming HighestTid as max_sub_layers_minus).
|
||
Sample streams: TSCL_A_VIDYO_5.bin, TSCL_B_VIDYO_4.bin
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753226
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-08-05 14:11:12 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h265.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
refactor vaapi caps strings for pad templates
|
||
Refactor the main vaapi caps strings into three macros:
|
||
GST_VAAPI_MAKE_SURFACE_CAPS, GST_VAAPI_MAKE_ENC_SURFACE_CAPS and
|
||
GST_VAAPI_MAKE_GLTEXUPLOAD_CAPS.
|
||
Those are in gstvaapipluginutil.h so all the elements could use them, instead
|
||
of re-declaring them every time.
|
||
No functional changes.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-08-05 14:15:07 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
gstvaapipostproc: fix code style
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-08-05 05:23:20 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix the decoding of dependent slice segment
|
||
Decoding process for reference picture list construction needs to be
|
||
invoked only for P and B slice and the value for slice_type of dependent slice
|
||
segment should be taken from the previous independent slice segment header
|
||
of the same pic.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753226
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-06-22 17:38:41 +0200 Victor Jaquez <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: reduce the noise of warnings
|
||
Those messagse should be attached to the object, also the lack of
|
||
caps is not an error, in particular in the case of JPEG encoding.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-06-23 17:49:51 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
gstvaapicontext: fix the JPEG encoder attribs value
|
||
When we query for the VAConfigAttribEncJPEG, we get a value which packs the
|
||
VAConfigAttribValEncJPEG structure, but we did not assign it. This patch
|
||
assigns the returned value to the attribute.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-06-18 17:37:46 +0200 Victor Jaquez <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
gstvaapiencoder: framerate 0/1 is valid too
|
||
Framerate 0/1 is valid, and it is particularly useful for picture
|
||
encoding, such as jpeg. This patch makes the encoder to admit that
|
||
framerate.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744042
|
||
|
||
2015-07-03 09:35:16 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostroc: GLTextureUploadMeta in sink template
|
||
Advertise GLTextureUploadMeta in sink caps template.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=752130
|
||
|
||
2015-07-23 13:11:40 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapiuploader.h:
|
||
remove gstvaapiuploader
|
||
Working on bug #744042 I realized that the gstvaapiuploader is practically not
|
||
used.
|
||
This patch removes the gstvaapiuploader and add the method
|
||
gst_vaapi_plugin_base_get_allowed_raw_caps () that returns the raw caps that
|
||
the system can handle, which is used by vaapisink and vaapipostproc.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=752777
|
||
|
||
2015-07-27 18:49:13 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: don't lost GLTextureUpload on seek
|
||
When seeking, the decoder is reset, but the buffer pool is not
|
||
re-negotiated, but in reset_full() the code forgets if the negotiated buffer
|
||
pool has the GLTextureUpload meta.
|
||
The decoder knows that GLTextureUpload meta was negotiated in
|
||
decide_allocation(), but this method is not called when seeking.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=752929
|
||
|
||
2015-07-21 18:45:56 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: don't use gst_pad_get_allowed_caps()
|
||
gst_pad_get_allowed_caps() query the pad and the peer pad. In the case
|
||
decoders, that is OK, but in the case of the postproc might lead loops,
|
||
since the gst_base_transform_query_caps() forwards the query upstream
|
||
and forth.
|
||
Instead of gst_pad_get_allowed_caps() we only query the peer with
|
||
gst_pad_peer_query_caps() using the pad's template as filter.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=752558
|
||
|
||
2015-07-22 12:40:19 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* README:
|
||
README: updates
|
||
|
||
2015-07-22 09:45:26 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0004-h264parse-Disable-3D-video-support-for-GStremaer-1.5.patch:
|
||
* patches/videoparsers/series.frag:
|
||
patches/videoparsers: h264parse: Disable 3D video support for GStremaer < 1.5
|
||
All API/ABI changes for S3D/MVC are added in 1.5, backporting
|
||
them to older verison is not recommended.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-22 09:41:34 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
patches/Videoparsers: update patch to fix build with older GStreamer 1.2 stacks
|
||
|
||
2015-07-22 09:38:42 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
decoder: jpeg: Align with new API/ABI changes in codecparser
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-22 09:31:02 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit 800bdb2
|
||
ed13220: mpegvideometa: add meta transform function
|
||
18d5efd: codecparsers: jpeg: add some padding to ScanHdr struct
|
||
7a51722: codecparsers: jpeg: fix docs for table parsing functions
|
||
06b8ded: codecparsers: jpeg: fix validity checking of data parsed
|
||
387a39d: codecparsers: jpeg: fix up API
|
||
db9d6a9: codecparsers: jpeg: tweak API a little
|
||
bb6951e: codecparsers: jpeg: hide gst_jpeg_scan_for_marker_code()
|
||
f33c30c: codecparsers: jpeg: fix and optimize scan for next marker code
|
||
4658c30: codecparsers: jpeg: fix calculation of segment size
|
||
759bcb9: codecparsers: jpeg: fix default Huffman tables generation
|
||
b4811ee: codecparsers: jpeg: add JPEG bitstream parser
|
||
9422464: h264parse: fix typo in log message
|
||
9e793a0: h264parse: Move PAR calcs, and use them for stereoscopic half-aspect
|
||
77704ce: nalutils: trivial patch to check if
|
||
8bb9249: codecparsers: mpeg4: actually return full number of bits of resync marker
|
||
7862f95: Revert "codecparsers: remove ignored increment of return"
|
||
54017b1: h264parse: Add support for passing stereoscopic/multiview info
|
||
8667ee4: h264parse: Don't switch to passthrough on set_caps()
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-06-29 14:27:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: track previous reference frames.
|
||
Improve closure of gaps in frame_num by strictly following and trying
|
||
to fill them with previous reference frames. So, they are now tracked
|
||
thus avoiding insertion of dummy ("greenish") frames.
|
||
|
||
2015-06-29 13:16:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix integration of second field into the DPB.
|
||
If the new picture to be added to the DPB is not a first field, then
|
||
it shall be the second field of the previous picture that was added
|
||
before.
|
||
This removes the need for dpb_find_picture() now that we track the
|
||
immediately preceding decoded picture, in decode order.
|
||
|
||
2015-07-06 14:38:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix closure of "other-field" gap.
|
||
When a dummy "other-field" is inserted, it is assumed to inherit the
|
||
reference flags from the first field, and the sliding window decoded
|
||
reference picture marking process is also executed so that corrupted
|
||
frames are moved out as early as possible.
|
||
While doing so, we also try to output frames that now contain a single
|
||
valid field picture, prior to inserting any other picture into the DPB.
|
||
Note: this may be superfluous currently based on the fact that dpb_add()
|
||
combines the two most recent pairable fields, but this process would be
|
||
further simplified later on.
|
||
|
||
2015-06-24 13:58:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: track corrupted frames.
|
||
Mark the picture as "corrupted" if it is reconstructed from corrupted
|
||
references or if those references are fake, e.g. resulting from lost
|
||
frames.
|
||
This is useful for notifying the upper layer, or downstream elements,
|
||
that the decoded frame may contain artefacts.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703921
|
||
|
||
2015-06-24 13:48:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
decoder: add initial infrastructure for marking corrupted output.
|
||
Add initial infrastructure in core codec library and vaapidecode to mark
|
||
corrupted frames as such. A corrupted frame is such a frame that was
|
||
reconstructed from invalid references for instance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=751434
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-07-15 18:18:49 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development
|
||
|
||
=== release 0.6.0 ===
|
||
|
||
2015-07-15 15:49:38 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
0.6.0
|
||
|
||
2015-07-15 15:49:19 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates
|
||
|
||
2015-07-14 19:39:20 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
vaapidecoder: no wmv profiles gstreamer 1.4/1.2
|
||
This patch fix the auto-plugging problem in gstreamer 1.2 and gstreamer 1.4
|
||
Right now there is not a primary ranked parser for vc1 and the demuxers
|
||
delivers caps without specifying the profile. This situation is not an issue
|
||
for avdec_vc1 but for vaapidecode it is, which refuses to negotiate without a
|
||
explicit profile defined in the negotiated caps.
|
||
Nonetheless, in gstreamer 1.5 it seems not to be a problem since the
|
||
negotiation admits caps subsets try outs.
|
||
This patch solves the issue ignoring the profile negotiation in the caps. For
|
||
gstreamer < 1.5 the profile string is not handled, so the auto-plugging get
|
||
done without the vc1 parser, such as happens in gstreamer 1.5.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-07-07 20:57:20 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
Marking rank of vaapidecodebin as GST_RANK_MARGINAL for now.
|
||
Unfortunately vaapidecodebin element is not seems to be stable
|
||
enough for autoplugging ahead of vaapidecode.
|
||
Lowering the rank for now (cosidering the immediate 0.6 release).
|
||
See this: https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-07 13:32:18 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
build: Add missing CFLAGS to Makefile.am
|
||
|
||
2015-07-03 15:07:02 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
gstvaapifilter: Only register STE property if it supported by corresponding VA library
|
||
Fix the regression introduced in commit eb465fb.
|
||
VAProcFilterSkinToneEnhancement is avaialbe from VA >= 0.36.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-02 17:49:25 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: no format convert on GL tex upload meta
|
||
When GL texture upload meta is negotiated, vaapipostproc shall not modify the
|
||
color format of the buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748184
|
||
|
||
2015-07-03 12:42:09 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
gstvaapifilter: Add guard for VAProcFilterSkinToneEnhancement
|
||
VAProcFilterSkinToneEnhancement is avaialbe from VA >= 0.36.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-02 21:57:38 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.c:
|
||
encoder:h265: Fix the check for packed-header support
|
||
Use VA_ENC_PACKED_HEADER_* definition for checking.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-02 21:37:56 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder:h264: Fix the check for packed-header support
|
||
Use VA_ENC_PACKED_HEADER_* definition for checking.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-02 21:00:14 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: submit SEI buffering_period() and picture_timing() messages for CBR mode
|
||
One buffering_period() SEI message shall be present in every IDR access unit
|
||
when NalHrdBpPresentFlag is inferred to be equal to 1. This is the case when we
|
||
use a non-CQP mode, e.g. CBR. In other words, when
|
||
nal_hrd_parameters_present_flag is set to 1.
|
||
One picture_timing() SEI messages shall be present in every access unit
|
||
if CpbDpbDelaysPresentFlag is equal to 1 or pic_struct_present_flag is equal to 1
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722734
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=751831
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-07-01 14:16:50 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecodebin: notify if vpp is disabled
|
||
When the system is aware that VPP is not available by the VA driver,
|
||
it would be useful to notify to the user that the disable-vpp property
|
||
has changed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
|
||
2015-07-01 14:17:17 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
vaapidecodebin: enable vpp if it is available
|
||
Instead of creating and adding VPP into the bin at setup, we wait until
|
||
we are sure the VA driver supports it. We know that when the VA video
|
||
context is received by the bin. Afterwards, it is decided to instanciate
|
||
and link the VPP or not.
|
||
This is more efficient and safer than waiting the VPP to fail and then
|
||
disable it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749554
|
||
|
||
2015-07-02 12:29:32 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* tests/test-display.c:
|
||
* tests/test-windows.c:
|
||
tests: Fix compilation while enabling egl as the only renderer in build
|
||
Include missing header files gstvaapidisplay_egl.h and gstvaapiwindow_egl.h.
|
||
|
||
2015-07-02 10:45:50 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: fix the build while enabling egl as the only renderer
|
||
|
||
2015-07-02 10:25:25 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
libs: Bump library major version
|
||
|
||
2015-06-30 09:44:18 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
gst/vaapi: Switch to upstreram like indentation.
|
||
gst-indent for all gst/vaapi/*.c source files
|
||
|
||
2015-06-30 09:35:37 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
vaapidecodebin: Add property to disable VPP
|
||
Adding a new propery "disable-vpp", enabling it will prevent
|
||
the insertion of vaapipostproc child element.
|
||
This is helpful in debugging, specifically to narrow-down the
|
||
vaapidecodebin/vaapipostproc related negotiation issues.
|
||
No support for run-time disabling for now.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745901
|
||
|
||
2015-06-29 13:35:59 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: Fix wrong selection of passthrough mode.
|
||
The Current code path is falling back to passthorugh mode if there is no
|
||
vpp property set by the user explictily. But we should not use the
|
||
passthrough mode if the negotiated src pad caps have a differnt color space
|
||
format than sink pad caps (Even though the user didn't set the format property
|
||
explicitly).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748184
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-06-29 13:20:28 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: prevent advanced-deinterlacing of non-native video formats.
|
||
This is a workaround to deal with the va-intel-driver for non-native
|
||
formats while doing advanced deinterlacing. The format of reference surfaces must
|
||
be same as the format used by the driver internally for motion adaptive
|
||
deinterlacing and motion compensated deinterlacing.
|
||
A permanent solution could be to do the color space conversion internally
|
||
for reference surfaces.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=730925
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-06-29 13:06:30 +0300 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
Work around ABBA deadlock between vaapisink and vaapipostproc
|
||
vaapisink takes the display lock, then does a gst_buffer_replace which can
|
||
take the lock on the gst_vaapi_video_pool.
|
||
vaapipostproc asks the gst_vaapi_video_pool for a new surface. This takes
|
||
the lock on the gst_vaapi_video_pool; if you're unlucky, there are no free
|
||
surfaces, which means that gst_vaapi_surface_create is
|
||
called. gst_vaapi_surface_create takes the display lock.
|
||
If vaapisink and vaapipostproc are in different threads, and this happens,
|
||
you get a deadlock. vaapisink holds the display lock, and wants the
|
||
gst_vaapi_video_pool lock. vaapipostproc holds the gst_vaapi_video_pool lock
|
||
and wants the display lock.
|
||
Work around this by releasing the display lock in vaapisink around the
|
||
gst_buffer_replace.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=738249
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-29 16:34:07 +0200 Jacobo Aragunde Pérez <jaragunde@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
vaapidecodebin: expose deinterlace-method property from inner vaapipostproc
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745901
|
||
|
||
2015-05-19 11:24:10 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: log negotiated caps
|
||
|
||
2015-05-18 14:30:22 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: remove useless debug message
|
||
|
||
2015-02-12 12:31:57 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: log negotiated src/sink caps
|
||
|
||
2015-05-07 15:57:26 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: error handling if rendering fails
|
||
This patch enhance the code path when an error is found when rendering a
|
||
buffer.
|
||
If the video meta doesn't contain a surface proxy or a surface, a warning
|
||
message is printed.
|
||
If the rendering backend fails, a error message is posted in the bus.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749382
|
||
|
||
2015-06-18 14:55:12 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Fix the conditional pad template creation.
|
||
|
||
2015-06-18 13:19:26 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
build: Don't build simple-encoder test program if there is no VA Encoding support
|
||
This will fix the build error against older VA-APIs <= 0.32
|
||
|
||
2015-06-18 12:20:37 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
Fix build error for older VA-API versions
|
||
Provide guards for VA_SURFACE_ATTRIB_MEM_TYPE_KERNEL_DRM and
|
||
VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME which are only availble from
|
||
VA >= 0.36.
|
||
|
||
2015-06-17 14:20:37 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Fix the capsfeature advertisement in padtemplate
|
||
This fixes the regression introduced in 64acc74.
|
||
If a pad supports multiple set of capsfeatures, it needs to add
|
||
multiple equal structures with different feature sets to the caps.
|
||
Because caps structures with the same name but with a non-equal
|
||
set of caps features are not compatible.
|
||
Without this patch, playbin will autoplug xvimagesink instead of vaapisink.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=750095
|
||
|
||
2015-06-17 12:41:28 +0300 Adrian Cox <adrian@humboldt.co.uk>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Expose the overlay capability for compatibility with dvbsuboverlay.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=750095
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-06-17 09:53:29 +0300 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
vaapipluginbase: Override downstream allocation reply if no pool
|
||
If the downstream replied without a pool, then override it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748559
|
||
|
||
2015-06-09 15:15:31 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add color balance interface
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720376
|
||
|
||
2015-05-22 18:13:25 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add skin tone enhancement
|
||
Added the 'skin-tone-enhancement' property to vaapostproc.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744088
|
||
|
||
2015-05-20 18:02:37 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
doc: add VA-API reference in freedesktop
|
||
|
||
2015-06-04 19:03:44 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0001-plugins-compile-the-built-in-video-parsers-as-vaapip.patch:
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
* patches/videoparsers/0003-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
patches/videoparsers: rebase all the h264parse patches
|
||
In order to avoid the creation of .orig files and break the distcheck target
|
||
|
||
2015-06-04 18:29:15 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* ext/libvpx/Makefile.am:
|
||
build: don't build in parallel libvpx
|
||
This fixes the distcheck -j XX target.
|
||
|
||
2015-06-02 08:52:53 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_jpeg.c:
|
||
encoder: jpeg: Fix the packed header generation
|
||
This is a work-around to satisfy the va-intel-driver.
|
||
Normalize the quality factor and scale QM values (only for packed header
|
||
generation) similar to what VA-Intel driver is doing . Otherwise the
|
||
generated packed headers will be wrong, since the driver itself is
|
||
scaling the QM values using the normalized quality factor.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748335
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-06-02 11:46:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix uninitialized variables in avcC mode.
|
||
Fix uninitialized variables when decoding SPS and PPS NAL units from
|
||
"codec-data" buffers. This is particularly important when seeking ops
|
||
are involved, and the new persistent states are used more often.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=750094
|
||
|
||
2015-06-01 18:39:18 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: remove unneeded casting
|
||
And a code-style fix
|
||
|
||
2015-05-21 19:38:33 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: calculate decoding latency
|
||
This is a naïve approach to the calculation of the VA-API decoding latency. It
|
||
takes into consideration when the frame-rate has some insane value.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=740419
|
||
|
||
2015-05-21 23:16:14 +1000 Jan Schmidt <jan@centricular.com>
|
||
|
||
* configure.ac:
|
||
configure: Compiling against libgstgl requires libgstvideo
|
||
Fix detection of the GstGL helper headers in uninstalled
|
||
builds.
|
||
|
||
2015-05-28 10:52:48 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.c:
|
||
encoder: hevc: Fix the size over-flow for encoded buffer.
|
||
The approximation of 6 times compression ratio migh not
|
||
work in all cases. Especially when enabling I frames.
|
||
Provide large enough size for coded-buffer creation.
|
||
|
||
2015-05-28 10:43:20 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_vp8.c:
|
||
encoder: vp8: Fix the size over-flow for encoded buffer.
|
||
The approximation of 4 times compression ratio will not
|
||
work in all cases. Especially when enabling I frames.
|
||
Provide large enough size for coded-buffer creation.
|
||
|
||
2015-05-28 05:43:49 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.c:
|
||
encoder: hevc: fix bug in multi slice encoding.
|
||
This is a work-around for satisfying the VA-Intel driver.
|
||
The driver only support slices begin from CTU row start address.
|
||
Multi-Slice encoding also requires a fix in va-intel-driver:
|
||
http://lists.freedesktop.org/archives/libva/2015-May/003351.html
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749854
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-03-12 22:57:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add initial support for loss of pictures.
|
||
Implement decoding process for gaps in frame_num (8.5.2). This
|
||
also somewhat supports unintentional loss of pictures.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745048
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703921
|
||
Original-patch-by: Wind Yuan <feng.yuan@intel.com>
|
||
[fixed derivation of POC, ensured clone is valid for reference,
|
||
actually fixed detection of gaps in FrameNum by PrevRefFrameNum]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-05-22 11:42:52 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add support for missing first field.
|
||
Try to identify missing first fields too, thus disregarding any
|
||
intermediate gaps in frames. We also assume that we keep the same
|
||
field sequence, i.e. if previous frames were in top-field-first
|
||
(TFF) order, then so are subsequent frames.
|
||
Note that insertion of dummy first fields need to operate in two
|
||
steps: (i) create the original first field that the current field
|
||
will inherit from, and (ii) submit that field into the DPB prior
|
||
to initializing the current (other) field POC values but after any
|
||
reference flag was set. i.e. copy reference flags from the child
|
||
(other field) to the parent (first field).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745048
|
||
|
||
2015-05-07 14:00:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add support for missing second field.
|
||
Interlaced H.264 video frames always have two fields to decode and
|
||
display. However, in some cases, e.g. packet loss, one of the field
|
||
can be missing. This perturbs the reference picture marking process,
|
||
whereby the number of references available in DPB no longer matches
|
||
the expected value.
|
||
This patch adds initial support for missing field within a decoded
|
||
frame. The current strategy taken is to find out the nearest field,
|
||
by POC value, and with the same parity.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745048
|
||
|
||
2015-05-22 17:06:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: improve tracking of "top-field-first" flag.
|
||
Try to maintain a "top-field-first" (TFF) flag, even if the H.264 standard
|
||
does not mandate it. This will be useful for tracking missing fields, and
|
||
also for more correct _split_fields() implementation for frames in the DPB.
|
||
|
||
2015-05-05 11:56:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: skip all pictures prior the first I-frame.
|
||
Don't try to decode pictures until the first I-frame is received within
|
||
the currently active sequence. There is no point is decoding and then
|
||
displaying frames with artifacts.
|
||
|
||
2015-05-12 15:36:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix processing of EOSEQ NAL.
|
||
Fix decoding of end_of_seq() NAL unit so that to not submit the current
|
||
picture for decoding again. This is pretty vintage code that dates back
|
||
before the existing of the whole decoder units machinery.
|
||
One issue that could be arising if that code was kept is that we could
|
||
have submitted a picture, and subsequently a GstVideoCodec frame, twice.
|
||
Once without the decode_only flag set, and once with that flag set. The
|
||
end result is that the GstVideoDecoder would release the codec frame
|
||
twice, thus releasing stale data.
|
||
In short, the piece of code that is removed by this patch is for once
|
||
completely obsolete for a while, and secondly error-prone in corner
|
||
cases.
|
||
|
||
2013-02-28 15:26:36 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: add utility function to clone picture objects.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703921
|
||
Signed-off-by: Wind Yuan <feng.yuan@intel.com>
|
||
[added cosmetic changes, fixed propagation of "one-field" flag to
|
||
children, fixed per-codec clone modes (h264)]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-05-27 23:49:18 +0300 Alban Browaeys <prahal@yahoo.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: don't compile HEVC encoder if not supported
|
||
Fix:
|
||
(gst-plugin-scanner:16681): GStreamer-WARNING **: Failed to load plugin '/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvaapi.so': /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvaapi.so: undefined symbol: gst_vaapi_encoder_h265_get_default_properties
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749954
|
||
Signed-off-by: Alban Browaeys <prahal@yahoo.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-27 23:43:16 +0300 Alban Browaeys <prahal@yahoo.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
HEVC: decode: add missing va_dec_hevc header
|
||
Signed-off-by: Alban Browaeys <prahal@yahoo.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749953
|
||
|
||
2015-05-26 13:28:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix PTS cache for GOP start.
|
||
If the GOP temporal sequence number (TSN) is interpolated from a valid
|
||
PTS, then we need to compensate that PTS corresponding to the start of
|
||
GOP with the next picture to be decoded, which shall be an I-frame,
|
||
based on its sequence number.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748676
|
||
|
||
2015-05-27 10:49:56 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: avoid crash when seeking with debug logs
|
||
Move down the debug message when the state of the decoder is verified
|
||
so the slice header is not NULL.
|
||
|
||
2014-12-17 00:41:10 +1100 Jan Schmidt <jan@centricular.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: Avoid crashes and warnings on re-opened decoder after a seek
|
||
Reset state and add some checks for safe state to avoid a crash and
|
||
a warning after the decoder is destroyed/recreated during a seek.
|
||
|
||
2015-05-26 10:21:59 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
* patches/videoparsers/0004-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
* patches/videoparsers/series.frag:
|
||
patches/videoparsers: Rebase the patch on top of gst-vaapi-branch commit 20ee952
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-26 10:03:20 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit 20ee952
|
||
b7dded3: h264parse: don't consider unknown stream-format as avc
|
||
5110ad9: h264parse: fix up handling of input caps corner cases
|
||
e51db3e: h264parse: Remove dead code
|
||
3d739d0: codecparser: h265: Fix the number of tile rows/columns parsing
|
||
8482957: h265parse: Fix profile, tier and level setting in caps
|
||
4649acb: h265parse: Fix the memory freeing of stored VPS nals
|
||
f2beeb7: h265parse: Fix source caps to report cropped dimensions
|
||
6886a31: h264parse: Fix profile and level setting in caps
|
||
5286c1a: h264parse: Consider SEI NALU as "HEADER" packets
|
||
eb97854: videoparsers: h264: bit-exact sync with upstream, minor changes here and there
|
||
53074fc: build: Upgrade GStreamer dependency to 1.0
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-26 06:01:10 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
HEVC: decode: Replace clip3 implementation with glib CLAMP macro
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-26 05:33:33 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
HEVC: decode: Update Cropping Rectangle
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-25 11:58:20 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiencode_h265.c:
|
||
* gst/vaapi/gstvaapiencode_h265.h:
|
||
HEVC_Encode: Add HEVC(h265) Encoder plugin
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748874
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-25 11:38:34 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h265.h:
|
||
HEVC_Encode: Add HEVC(h265) encoder to core libgstvaapi
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748874
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-05-25 11:26:14 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
HEVC_Encode: build: Check availability of VA APIs for H265 encoding.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748874
|
||
|
||
2015-05-25 10:58:52 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265.h:
|
||
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-19 10:57:42 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/reference/plugins/Makefile.am:
|
||
doc: conditional linking for scanner
|
||
Add x11 library only if it is enabled.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749018
|
||
|
||
2015-05-19 10:37:13 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/reference/plugins/plugins.types:
|
||
doc: fix scanner compilation warning
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749018
|
||
|
||
2015-05-06 16:19:23 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
doc: update sections and symbols
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749018
|
||
|
||
2015-05-13 10:38:24 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* .gitignore:
|
||
* Makefile.am:
|
||
* debian.upstream/Makefile.am:
|
||
* docs/Makefile.am:
|
||
* docs/reference/Makefile.am:
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* ext/Makefile.am:
|
||
* ext/libvpx/Makefile.am:
|
||
* git.mk:
|
||
* gst-libs/Makefile.am:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/base/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* patches/Makefile.am:
|
||
* patches/videoparsers/Makefile.am:
|
||
* pkgconfig/Makefile.am:
|
||
* tests/Makefile.am:
|
||
build: use git.mk
|
||
This patch handles dinamically the gitignore files with git.mk[1].
|
||
Removed the automake variable MAINTAINERCLANFILES in most of the
|
||
Makefile.am files since now it is handled by the top one.
|
||
1. https://github.com/behdad/git.mk/blob/master/git.mk
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749321
|
||
|
||
2015-05-07 11:28:15 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: sync() when destroy()
|
||
Before pushing a the new frame, the render() method calls sync() to flush the
|
||
pending frames. Nonetheless, the last pushed frame never gets rendered, leading
|
||
to a memory leak too.
|
||
This patch calls sync() in the destroy() to flush the pending frames before
|
||
destroying the window.
|
||
Also a is_cancelled flag is added. This flag tells to not flush the event
|
||
queue again since the method failed previously or were cancelled by the user.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749078
|
||
|
||
2015-05-07 15:55:40 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: implement unlock/unlock_stop for wayland
|
||
Otherwise wl_display_dispatch_queue() might prevent the pipeline from
|
||
shutting down. This can happen e.g. if the wayland compositor exits while
|
||
the pipeline is running.
|
||
Changes:
|
||
* renamed unlock()/unlock_stop() to unblock()/unblock_cancel() in gstvaapiwindow
|
||
* splitted the patch removing wl_display_dispatch_queue()
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747492
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749078
|
||
|
||
2015-05-07 12:33:34 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: wl_display_dispatch_queue() can block forever.
|
||
wl_display_dispatch_queue() might prevent the pipeline from shutting
|
||
down. This can happen e.g. if the wayland compositor exits while the
|
||
pipeline is running.
|
||
This patch replaces it with these steps:
|
||
- With wl_display_prepare_read() all threads announce their intention
|
||
to read.
|
||
- wl_display_read_events() is thread save. On threads reads, the other
|
||
wait for it to finish.
|
||
- With wl_display_dispatch_queue_pending() each thread dispatches its
|
||
own events.
|
||
wl_display_dispatch_queue_pending() was defined since wayland 1.0.2
|
||
Original-patch-by: Michael Olbrich <m.olbrich@pengutronix.de>
|
||
* stripped out the unlock() unlock_stop() logic
|
||
* stripped out the poll handling
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749078
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747492
|
||
|
||
2015-05-07 18:30:33 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: rename frame for last_frame
|
||
Since frame in the private data means the last frame sent, it would
|
||
semantically better use last_frame.
|
||
Also, this patch makes use of g_atomic_pointer_{compare_and_exchange, set}()
|
||
functions.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749078
|
||
|
||
2015-05-07 11:18:12 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: use a counter as sync flag
|
||
Wayland window has a pointer to the last pushed frame and use it to set the
|
||
flag for stopping the queue dispatch loop. This may lead to memory leaks,
|
||
since we are not keeping track of all the queued frames structures.
|
||
This patch removes the last pushed frame pointer and change the binary flag
|
||
for an atomic counter, keeping track of number of queued frames and use it for
|
||
the queue dispatch loop.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749078
|
||
|
||
2015-05-07 10:36:17 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: decouple wl_buffer from frame
|
||
This patch takes out the wayland's buffer from the the frame structure. The
|
||
buffer is queued to wayland and destroyed in the "release" callback. The
|
||
frame is freed in the surface's "done" callback.
|
||
In this way a buffer may be leaked but not the whole frame structure.
|
||
- surface 'done' callback is used to throttle the rendering operation and to
|
||
unallocate the frame, but not the buffer.
|
||
- buffer 'release' callback is used to destroy wl_buffer.
|
||
Original-patch-by: Zhao Halley <halley.zhao@intel.com>
|
||
* code rebase
|
||
* kept the the event_queue for buffer's proxy
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749078
|
||
|
||
2015-05-14 16:22:36 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix indentation
|
||
|
||
2015-05-13 11:54:01 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* debian.upstream/Makefile.am:
|
||
* ext/libvpx/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* tests/Makefile.am:
|
||
build: fix make distcheck
|
||
This patch fixes several issues found when running the `make distcheck`
|
||
target:
|
||
- In commit c561b8da, the update of gstcompat.h in Makefile.am was
|
||
forgotten.
|
||
- In commit c5756a91 add the simple_encoder_source_h in EXTRA_DIST was
|
||
forgotten.
|
||
- vpx.build.stamp is not generated at all, only vpx.configure.stamp.
|
||
- The make target distcleancheck failed because some autogenerated files
|
||
were not handled with the DISTCLEANFILES variable.
|
||
Note: `make distcheck -jXX` is not currently supported.
|
||
|
||
2015-05-13 13:28:17 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* patches/videoparsers/0001-plugins-compile-the-built-in-video-parsers-as-vaapip.patch:
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
* patches/videoparsers/0004-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
h264parse: update patches with upstream
|
||
These patches didn't applied cleanly, breaking the `make distcleancheck`
|
||
target. Re-sync'ed the patches against the current git's submodule.
|
||
|
||
2015-05-12 16:04:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-encoder.c:
|
||
tests: simple-encoder: fix build warnings on 64-bit platforms.
|
||
Add a cosmetic change to replace VAAPI buffer with VA buffer and most
|
||
importantly fix warnings spitted out during build on 64-bit platforms.
|
||
../../tests/simple-encoder.c:211:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘gssize’ [-Wformat=]
|
||
g_warning ("Invalid VAAPI buffer size (%d)", size);
|
||
^
|
||
../../tests/simple-encoder.c:217:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘gssize’ [-Wformat=]
|
||
g_warning ("Failed to create output buffer of size %d", size);
|
||
^
|
||
|
||
2015-05-08 15:54:09 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
plugins: remove gstreamer-0.10 crumbs
|
||
GstVideoContext was used in gstreamer-0.10, which is not supported anymore.
|
||
Still, its definition was still in the code. This patch removes it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=749113
|
||
|
||
2015-05-05 13:08:25 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/simple-encoder.c:
|
||
* tests/y4mreader.c:
|
||
* tests/y4mreader.h:
|
||
tests: add simple-encoder program
|
||
This patch adds a simple-encoder test program that uses libgstvaapi for video
|
||
encoding to elementary (raw) streams. Input stream is raw YUV in the Y4M
|
||
format. That can be from a regular file or standard input when the input
|
||
filename is "-".
|
||
Usage: simple-encoder [options]* <source>
|
||
Options:
|
||
--output|-o output file name
|
||
--codec|-c codec to use for video encoding
|
||
--bitrate|-b desired bitrate (kbps)
|
||
By default, and as an initial patch, the encoded stream shall conform to the
|
||
minimally supported profile. That is "Constrained Baseline Profile" for H.264
|
||
and "Simple Profile" for MPEG-2. Though, those are the defaults to be
|
||
generated by libgstvaapi.
|
||
You can find Y4M sample files here http://samples.mplayerhq.hu/yuv4mpeg2/
|
||
Original-patch-by: Changzhi Wei <changzhix.wei@intel.com>
|
||
* general code clean-up
|
||
* removed the yuv reader thread
|
||
* re-wrote the y4m file parser
|
||
* updated used API fixed some wrong usage
|
||
* fixed a lot of memory leaks
|
||
* added the bitrate setting
|
||
* keep fps' numerator and denominator
|
||
* simplified the thread control
|
||
* removed custom logging and use glib
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719528
|
||
|
||
2015-05-05 13:02:19 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
libs: trivial documentation fix
|
||
GST_VAAPI_ENCODER_STATUS_NO_SURFACE and GST_VAAPI_ENCODER_STATUS_NO_BUFFER
|
||
are not errors, so they do not have the ERROR namespace.
|
||
This patch fixes this typo in documentation.
|
||
|
||
2015-02-15 15:01:03 +0000 Simon Farnsworth <simon@farnz.org.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
window: Correct prototype to match implementation
|
||
On s390x, guintptr and GstVaapiID are not compatible types. The
|
||
implementation of gst_vaapi_window_new_internal() and all its callers
|
||
seem to assume that its third argument is a GstVaapiID, while the
|
||
header gives it guintptr type.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744559
|
||
|
||
2015-05-04 14:24:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
vaapidecode: add guards for disabled codecs.
|
||
Fix link when building plugin elements without HEVC support. e.g. don't
|
||
try to call into gst_vaapi_decoder_h265_set_alignment() if there is no
|
||
support HEVC enabled in libgstvaapi.
|
||
Also, drop disabled codecs from static template caps. Add the missing
|
||
HEVC static template caps into vaapidecodebin too.
|
||
|
||
2015-04-30 13:29:48 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
build: upgrade glib dependency to 2.32
|
||
Since bug #745728 was fixed the oldest supported version of GStreamer is
|
||
1.2. That GStreamer release requires glib 2.32, so we can upgrade our
|
||
requirement too.
|
||
This patch changes the required version of glib in configure.ac and removes
|
||
the hacks in glibcompat.h
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748698
|
||
|
||
2015-04-30 13:21:08 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: check if the pool config is already set
|
||
In commit 97b768, a regression for GStreamer 1.2 was introduced:
|
||
GStreamer 1.2 doesn't check, in gst_buffer_pool_set_config() if the
|
||
config option is already set. This patch adds an inline function to
|
||
first verify if the option is not in the pool config berfore add it.
|
||
|
||
2015-04-29 12:39:50 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: tune up a couple of log messages
|
||
In order to reduce the noise, the query type log was downgrade from INFO to
|
||
DEBUG, and the shared display address log message is assigned to the object.
|
||
|
||
2015-04-29 12:27:43 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: check gst_buffer_pool_set_config()
|
||
Check the return value of gst_buffer_pool_set_config(). If it fails an error
|
||
message is posted in the bus.
|
||
|
||
2015-04-29 12:24:52 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: more specific log message
|
||
Be more specific in the log message about the reason of creating a new pool.
|
||
|
||
2015-04-29 12:22:29 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: delete unused variable
|
||
need_pool is a boolean variable extracted from the allocation query, but it is
|
||
not used afterwards.
|
||
|
||
2015-04-27 19:21:12 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
vaapipluginbase: Update the pool if there was no pool in the downstream reply
|
||
Fix regression introduced by bd866479, the query after decide_allocation()
|
||
always needs a pool in the first slot.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748559
|
||
|
||
2015-04-27 20:50:19 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
videopool: Free members before chaining up finalize
|
||
The finalize function in GObject frees the object memory, so
|
||
everything else needs to have been freed before.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748563
|
||
|
||
2015-04-27 20:31:50 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
wayland: don't leak the registry proxy
|
||
Release the registry proxy when closing the display.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748564
|
||
|
||
2015-04-21 17:17:06 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: refactor _sync() method and rename callback
|
||
This patch only intends to improve readability: in the method
|
||
gst_vaapi_window_wayland_sync() the if/do instructions are squashed into a
|
||
single while loop.
|
||
Also renames the frame_redraw_callback() callback into frame_done_callback(),
|
||
which is a bit more aligned to Wayland API.
|
||
|
||
2015-02-03 16:52:06 +0100 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: free frame in buffer release callback
|
||
The Wayland compositor may still use the buffer when the frame done
|
||
callback is called.
|
||
This patch destroys the frame (which contains the buffer) until the
|
||
release callback is called. The draw termination callback only controls
|
||
the display queue dispatching.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747492
|
||
|
||
2015-04-21 10:00:36 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: refactor gst_vaapidecode_internal_flush()
|
||
This a cosmetic refactor: gst_vaapidecode_internal_flush() removes its only
|
||
label; gst_vaapidecode_finish() is more readable and gst_vaapidecode_purge()
|
||
shares the same error message of gst_vaapidecode_internal_flush() when flush
|
||
fails.
|
||
|
||
2015-04-20 13:27:27 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: refactor gst_vaapidecode_destroy()
|
||
Add the method gst_vaapidecode_purge(). This method releases the
|
||
flushed frames from the decoder.
|
||
This new method add more readablity to gst_vaapidecode_destroy()
|
||
|
||
2015-04-16 12:53:18 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Tell the base class about released frames on close
|
||
The base class needs to be informed about frames that were still queued
|
||
in the decoder on release, otherwise they are leaked.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747999
|
||
|
||
2015-04-19 11:19:03 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: reduce logging noise
|
||
When a frame is rejected by downstream, the message is logged twice. This
|
||
patch removes one of those logging messages.
|
||
Also, the reject of a frame doesn't mean an alarming error. This patch demotes
|
||
the log message from error to info.
|
||
|
||
2015-04-16 20:18:13 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Use the GstVideoDecoder error reporting function
|
||
This way, the decoder won't stop on the first decoding error,
|
||
in most cases it can recover after some glitchiness.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744620
|
||
|
||
2015-04-17 19:10:35 +0000 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
vaapipluginbase: The allocation query can return without a pool
|
||
It is possible to return the min/max/size without actually providing
|
||
a pool. This way the source knows how many buffers downstream needs.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=748076
|
||
|
||
2015-04-17 16:45:22 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapiparse.c:
|
||
* gst/vaapi/gstvaapiparse.h:
|
||
* patches/videoparsers/0001-h265parse-include-gstvaapiparse.h.patch:
|
||
* patches/videoparsers/series.frag:
|
||
plugins: Add h265 videoparser element "vaapiparse_h265"
|
||
This is a mirror of h265parse element in upstream gst-plugins-bad.
|
||
There could be additional patches but all should go to upstream.
|
||
This is for making development faster.
|
||
Note: vaapiparse_h265 will get build only for GStreamer version >= 1.4
|
||
|
||
2015-04-17 15:44:04 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit 43a0368
|
||
45f1c28: codecparser: h265: Fix nal unit size checking
|
||
f25987b: codecparser: h265: Calculate crop rectangle dimensions
|
||
639573a: codecparser: h265: Fix parsing multiple SEI messages in a single SEI Nal
|
||
4c8ec41: Add h265 videoparser plugin source files
|
||
|
||
2015-04-17 10:10:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* autogen.sh:
|
||
autogen: drop videoutils submodule.
|
||
|
||
2015-04-17 10:36:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: cosmetics.
|
||
Mostly coding style updates. Avoid integer signess inconsistencies.
|
||
Optimize dpb_find_lowest_poc() to align with original h264's decoder.
|
||
|
||
2015-04-16 14:13:59 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Add Support for tiled video decoding
|
||
Based up on the value of uniform_spacing_flag in Picture Parameter Set,
|
||
the tile column width and tile row height should be calculated.
|
||
Equations: 6-1, 6-2
|
||
Tiled video Descriptions: 7.3.2.3, 7.4.3.3
|
||
|
||
2015-04-16 14:13:21 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
decoder: hevc: Fix decoding when there are RASL pictures present.
|
||
-- Set NoRaslOutputFlag based on EOS and EOB Nal units
|
||
-- Fix PicOutputFlag setting for RASL picture
|
||
-- Fix prev_poc_lsb/prev_poc_msb calculation
|
||
-- Drop the RASL frames if NoRaslOutputFlag is TRUE for the associated IRAP picture
|
||
-- Fixed couple of crashes and added cosmetics
|
||
|
||
2015-04-14 10:54:54 +0100 Martin Sherburn <martin.sherburn@datapath.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
display: drm: fix race condition setting device type
|
||
There is a race condition where g_drm_device_type can be left set to
|
||
DRM_DEVICE_RENDERNODES when it shouldn't.
|
||
If thread 1 comes in and falls into the last else statement setting up both
|
||
RENDERNODES and LEGACY types. And begins to process the first type (RENDERNODES),
|
||
it sets g_drm_device_type = RENDERNODES.
|
||
Now when thread 2 comes in and sees g_drm_device_type is RENDERNODES, it queues
|
||
up that type to be tried but then encounters the lock and has to wait until the
|
||
first thread finishes. Once the lock is acquired it will then proceed to ONLY try
|
||
RENDERNODES and fail it. But it doesn't try LEGACY. And from then on, all future
|
||
attempts will only try RENDERNODES.
|
||
So to avoid this situation I have simply moved the acquisition of the lock higher
|
||
up in the attached patch.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747914
|
||
|
||
2015-04-15 15:26:12 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: Don't create filter on caps query
|
||
The problem with this is that creating the filter causes the display to
|
||
be selected, and the caps query happens while linking the element. So,
|
||
if the downstream or upstream element is using a specific display
|
||
object, it won't be propagated correctly to the postproc as it already
|
||
has a display at this point.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747945
|
||
|
||
2015-04-15 15:20:17 -0400 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
videopool: Release lock while allocating new object
|
||
The video pool can be accessed with the display lock held, for example,
|
||
when releasing a buffer from inside vaapisink_render, but allocating
|
||
a new object can may also take the display lock. Which means a possible
|
||
deadlock.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747944
|
||
|
||
2015-04-15 17:26:43 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: use GstVideoSink vmethod show_frame()
|
||
vaapisink inherits from GstVideoSink, in order to use its functionality (such
|
||
as ::show-preroll-frame property), we should use its vmethod show_frame(),
|
||
rather than call ourselves render() and preroll().
|
||
|
||
2015-04-15 18:16:47 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: add 'handoff' signal
|
||
This patch adds the signal ::handoff and the property signal-handoffs. If the
|
||
property is set TRUE, the signal ::handoff is emitted just after the buffer is
|
||
rendered.
|
||
Based on Zhao Halley <halley.zhao@intel.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747905
|
||
|
||
2015-04-14 10:17:16 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
HEVC: silence the compiler
|
||
Fixed a couple of clang complains.
|
||
|
||
2015-02-02 16:42:43 +0100 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: destroy vpp buffer pool on resize
|
||
Otherwise the old buffers with the old size are used.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747491
|
||
|
||
2015-04-14 10:08:47 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
build: don't compile HEVC if not supported
|
||
HEVC decoding was added recently libva-1.5.
|
||
This patch avoids HEVC decoding support in libgstvaapi if it is not available
|
||
in the installed libva.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747831
|
||
|
||
2015-04-13 16:04:59 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Update Author name in plugin metadata
|
||
|
||
2015-04-13 15:43:30 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
plugins: Add HEVC decoder
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-13 15:41:45 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h265.h:
|
||
HEVC: Add HEVC(h265) decoder to core libgstvaapi
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-13 14:53:46 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h265_priv.h:
|
||
HEVC: Add codec utility methods to core libgstvaapi
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-13 14:52:53 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
HEVC: gstvaapiprofile: Add profile definitions
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-13 14:52:14 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
HEVC: build: Check availability of h265 decoder APIs
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-13 14:51:51 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
HEVC: Allow to build h265 codecparser internally
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-08 18:05:20 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
guard buffer export API if not available
|
||
The support for buffer exports in VA-API was added in version 0.36. These
|
||
interfaces are for interop with EGL, OpenCL, etc.
|
||
GStreamer-VAAPI uses it for a dmabuf memory allocator. Though, gstreamer-vaapi
|
||
has to support VA-API versions ranging from 0.30.4, which doesn't support it.
|
||
This patch guards all the buffer exports handling (and dmabuf allocator) if
|
||
the detected VA-API version is below 0.36.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=746405
|
||
|
||
2015-04-13 11:29:35 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: Update to gst-vaapi-branch commit 9bc72b0
|
||
767bf22: codecparsers: h265: add helpers to convert quantization matrices
|
||
71c8e93: codecparser: h265: skip byte alignment bits while parsing slice header
|
||
3bf0355: codecparsre: h265: Fix the NumDeltaPocs calculation
|
||
10e2087: codecparser: h265: Fix the NumPocTotalCurr calculatio
|
||
2d753b8: codecparser: h265: Fix nal size calculation for EOS and EOB
|
||
|
||
2014-12-11 12:02:38 +0100 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: unref video codec frame twice
|
||
We get one reference when the frame is passed to decode_handle_frame()
|
||
and create another one in gst_vaapi_decoder_push_frame().
|
||
Usually the frame is handled in gst_vaapidecode_push_decoded_frame().
|
||
Here the frame is always released twice:
|
||
gst_video_decoder_finish_frame() + gst_video_codec_frame_unref() or
|
||
gst_video_decoder_drop_frame() + gst_video_codec_frame_unref().
|
||
In gst_vaapidecode_reset_full() both references to the frame must be
|
||
released as well.
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743226
|
||
|
||
2015-04-08 18:20:34 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
libs: remove unused variables
|
||
clang reports these unused variables. Let's get rid of them.
|
||
This patch is a missing part of commit c82e5173
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-03 20:38:07 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
decoder: mpeg4: remove an spurious comparison
|
||
The member size in GstMpeg4Packet is gsize which is unsigned, which cannot be
|
||
less than zero. Hence this pre-condition test is a no-op. This patch removes
|
||
that code.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-03 20:33:44 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: casts slice_param->slice_type
|
||
slice_type in slice_param is defined as (char *), but it is compared against a
|
||
signed integer. clang complains about this comparison.
|
||
This patch casts the variable.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-03 20:31:47 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
encoder: avoid GstVaapiCodedBuffer redefinition
|
||
The symbol GstVaapiCodedBuffer is already defined in
|
||
gst-libs/gst/vaapi/gstvaapicodedbuffer.h which is loaded, at the end, by
|
||
gstvaapiencoder_objects.h. Clang complains about the symbol re-definition.
|
||
This patch removes that redefinition.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-03 20:28:22 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_vp8.c:
|
||
libs: remove unused variables
|
||
clang reports these unused variables. Let's get rid of them.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-03 20:27:24 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
encoder: mpeg2: use fabsf() instead of abs()
|
||
The member value in frame_rate_tab is float, the result of the abs() function
|
||
should be float too. But abs() only manages integers.
|
||
This patch replaces abs() with fabsf() to handle correctly the possible floats
|
||
values.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-03 20:02:29 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
decoder: cast GST_VAAPI_DECODER_STATUS_DROP_FRAME
|
||
Since GST_VAAPI_DECODER_STATUS_DROP_FRAME is not part of the enum
|
||
GstVaapiDecoderStatus, we need to cast it to avoid compiler complains.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=747312
|
||
|
||
2015-04-04 00:40:29 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* README:
|
||
Update README
|
||
|
||
2015-04-04 00:06:56 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* .gitmodules:
|
||
* README:
|
||
Changing source code download links from https://gitorious to https://github
|
||
-- gitmodules: Change gstreamer-codecparsers submodule source download link
|
||
-- README: Change the gstreamer-vaapi webpage link
|
||
|
||
2015-04-03 23:30:24 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 1f792e4
|
||
87f4a7e: bytereader: add gst_byte_reader_peek_sub_reader() and _get_sub_reader()
|
||
7d8ba7a: bytereader: use unchecked inline variant for get_remaining in more places
|
||
2528ea6: bytereader: add gst_byte_reader_masked_scan_uint32_peek
|
||
2b92a67: h264parse: reset the parser information when caps changes
|
||
05eee86: codecparsers: Indent file
|
||
e27a38b: codecparsers: Add READ_UE_MAX macro
|
||
2036471: Constify some static arrays everywhere
|
||
|
||
2015-04-03 17:45:08 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
Remove the gstvaapivideoconverter_*.c source files missed in commit 51b1e4a
|
||
|
||
2015-04-03 17:09:08 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.h:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
Removal of gstreamer-1.0 support
|
||
The support for GStreamer 1.0 has been obsoleted in 0.5.10 release.
|
||
GStreamer 1.2 is the a minimal requirement for building the gstreamer-vaapi.
|
||
This patch removes all the pre-processor conditional code compilation guarded
|
||
for gstreamer-1.0.
|
||
Thus, all the video converters were removed too.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-03 17:08:30 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
* gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
* gst/vaapi/gstvaapiparse.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* tests/codec.c:
|
||
update and move gstcompat.h
|
||
The purpose of gstcompat.h is to couple the API differences among
|
||
gstreamer-1.0 and gstreamer-0.10. Since gstreamer-0.10 is obsolete, the code
|
||
in this compatibility layer shall be removed.
|
||
Nevertheless, the gstcompat.h header should be kept, if new incompatibilites
|
||
appear in the future, but it shall live in gst/vaapi, not in gst-libs.
|
||
This patch removes the crumbs defined gstcompat.h and moves it to gst/vaapi.
|
||
In order to avoid layer violations, gstcompat.h includes sysdeps.h and all
|
||
the includes in gst/vaapi of sysdeps.h are replaced with gstcompat.h
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-03 17:05:45 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/Makefile.am:
|
||
autotools: remove gstreamer-1.0 support
|
||
This patch only removes the support of gstreamer-1.0 in the autotools
|
||
scripts. No other files are touched.
|
||
In the automake file all the converters were deprecated.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-04-03 17:03:38 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* .gitmodules:
|
||
* ext/Makefile.am:
|
||
* ext/videoutils:
|
||
Remove the gstreamer-videoutils submodule
|
||
|
||
2015-04-03 17:01:45 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Remove libgstvaapi-videoutils.so
|
||
This library was intended to add the base classes for video decoders which
|
||
where not included in gstreamer-0.10.
|
||
Since the support of gstreamer-0.10 is deprecated those classes are not
|
||
required, thus the whole library is removed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732666
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-04-03 16:55:43 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicontext_overlay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* tests/test-subpicture.c:
|
||
Remove HAVE_GST_VIDEO_OVERLAY_HWCAPS macro
|
||
This macro guarded the use of HAVE_GST_VIDEO_OVERLAY_HWCAPS, which was not
|
||
defined before gstreamer 0.10.35. Since the support of gstreamer-0.10 is
|
||
deprecated these guards are not required.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732666
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-04-03 16:55:27 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext_overlay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
* gst/vaapi/gstvaapiparse.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
* tests/test-filter.c:
|
||
* tests/test-subpicture.c:
|
||
Removal of gstreamer-0.10 support
|
||
This patch removes all the pre-processor conditional code compilation guarded
|
||
for gstreamer-0.10.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732666
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-04-03 16:54:54 +0300 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/control.in:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
autotools: remove gstreamer-0.10 support
|
||
This patch only removes the support of gstreamer-0.10 in the autotools
|
||
scripts. No other files are touched.
|
||
The configuration parameter --gstreamer-api was deleted since now it is always
|
||
auto-detected.
|
||
The verification of vmethod query in GstBaseSinkClass was removed since it was
|
||
added in gstreamer 0.10.35. The same case for GstVideoOverlayComposition and
|
||
its format flags.
|
||
The precious variable GST_PLUGIN_PATH was removed, while GST_PLUGIN_PATH_1_0
|
||
remained.
|
||
The automake files were changed accordingly.
|
||
Removed, in debian/control, the vaapiupload and vaapidownload descriptions.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732666
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745728
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-03-16 23:38:18 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: add drain() vmethod
|
||
In GStremer v1.6 a new vmethod drain() was added in GstVideoDecoder
|
||
class. This patch implements this new method.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=742922
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-03-16 23:37:29 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: remove vmethod reset()
|
||
Since in bug #745728 the support for GStreamer 1.0 is going to be dropped,
|
||
this patch removes the method reset() which was deprecated in GStreamer 1.2.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=742922
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-03-16 23:36:33 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: handle flush() vmethod
|
||
Since GStreamer 1.2 the vmethod reset() in GstVideoDecoderClass was deprecated
|
||
and flush() was added.
|
||
This patch set the vmethod flush() if the installed GStreamer version is 1.2 or
|
||
superior. Otherwise, reset() is set.
|
||
v2: 1) In order to avoid symbol collision, the old method gst_vaapidecode_flush()
|
||
was renamed to gst_vaapidecode_internal_flush().
|
||
2) The new vmethod flush() always do a hard full reset.
|
||
v3: 1) Call gst_vaapidecode_internal_flush() first in flush() vmethod, in order to
|
||
gather all collected data with gst_video_decoder_have_frame()
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=742922
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-03-16 23:10:53 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: call the correct query function
|
||
In commit 2f8c115 (vaapidecode: use the query virtual methods in 1.4)
|
||
a bug was introduced: when calling the parent's query function of the
|
||
src pad, the one of the sink pad is called instead. This patch fixes
|
||
this issue.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=746248
|
||
|
||
2015-03-15 00:36:45 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* .gitmodules:
|
||
gitmodules: Use https:// url instead of git:// for submodules.
|
||
Gitorious is failing to clone repositories over git:// url.
|
||
|
||
2015-03-14 22:12:19 +0200 Julien Isorce <j.isorce@samsung.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
vaapidisplay: mark X11 display as compatible with EGL
|
||
GST_GL_WINDOW=x11 GST_GL_API=gles2 GST_GL_PLATFORM=egl
|
||
gst-launch-1.0 ... ! vaapidecode ! glimagesink
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745902
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
2015-03-06 15:20:01 +0200 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Don't crash if a buffer outlives the decoder
|
||
Sometimes, for example, when switching video streams but keeping
|
||
the same sink, the surface will be released after the decoder is
|
||
stopped and replaced. This caused a crash because the release
|
||
callback was called on an invalid pointer.
|
||
The patch adding an additional reference to the decoder object in the buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745189
|
||
Signed-off-by: Olivier Crete <olivier.crete@collabora.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-03-06 14:31:21 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: clean-ups (indentation, drop unused variables)
|
||
|
||
2015-03-06 14:09:22 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: use the query virtual methods in 1.4
|
||
GstVideoDecoder, the base class of vaapidecode, added support for
|
||
pad queries as virtual methods. This patch enables the use of that
|
||
support, while keeping support for lower versions of gstreamer.
|
||
This patch is important because GstVideoDecoder takes care of other
|
||
queries that might be important in the pipeline managing.
|
||
v2: 1) rebase to current master
|
||
2) fix indentation with gst-indent
|
||
3) simplify the patch layout
|
||
4) fix the context query
|
||
5) initialise the filter to NULL
|
||
6) improve the query log message for gst-1.2
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744406
|
||
|
||
2015-03-06 12:16:17 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: always activate buffer pool
|
||
The vaapipostproc has a proxy flag to know if the the buffer pool is
|
||
already active. But this fails in some situations where it is needed
|
||
to renegotiate the buffer pool.
|
||
This patch removes that flag so the renegotiation is done whenever is
|
||
required.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745535
|
||
|
||
2015-03-02 17:04:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix minor memory leak in debug mode.
|
||
The gst_video_colorimetry_to_string() function returns a newly created
|
||
string that represents the GstVideoColorimetry value. So, that needs
|
||
to be released after usage, in e.g. GST_DEBUG().
|
||
|
||
2015-03-03 12:37:41 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
vaapidecodebin: Avoid usage of "__" prefix in macro names
|
||
Avoiding "__" prefix usage in Header File Guards as per
|
||
C standard recommendation.
|
||
|
||
2015-03-03 12:31:11 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
plugins: Disable vaapidecodebin for GStreamer < 1.4
|
||
There are autoplugging issues in GStreamer-1.2.
|
||
Lets disable vaapidecodebin untill we get some workarounds for this.
|
||
|
||
2015-03-02 15:19:40 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecodebin.c:
|
||
* gst/vaapi/gstvaapidecodebin.h:
|
||
plugins: Add a vaapidecodebin element
|
||
Add a "vaapidecodebin" element to vaapi plugins.
|
||
Child Elements: "vaapidecode ! queue ! vaapipostproc"
|
||
The Reasons for implementing a new bin element:
|
||
-- Help to Autoplug Hardware Accelerated Video Postprocessing element in playbin
|
||
with out any dependency to upstream gstreamer.
|
||
This is to overcome the *unacceptable* delay in upstream gstreamer to get new
|
||
features in. Eg: https://bugzilla.gnome.org/show_bug.cgi?id=687182.
|
||
Also customers using older gstreamer versions (1.2 and 1.4) will get the
|
||
benefit of autoplugging, hardware accelerated deinterlacing support etc.
|
||
-- Help to maintain a single thread implementation in vaapidecode.
|
||
This will result a dead-lock free vaapidecode in most of the cases.
|
||
More details here: https://bugzilla.gnome.org/show_bug.cgi?id=742605
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745216
|
||
|
||
2015-03-02 14:59:16 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: re-indent (gst-indent) gstvaapidecode.c
|
||
|
||
2015-03-02 14:46:38 +0200 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: Switch back to Single thread implementation
|
||
Because the decoder uses the thread from handle_frame() to decode a frame,
|
||
the src pad task creates an unsolveable AB-BA deadlock between
|
||
handle_frame() waiting for a free surface and decode_loop() pushing
|
||
decoded frames out.
|
||
Instead, have handle_frame() take responsibility for pushing surfaces,
|
||
and remove the deadlock completely. If you need a separate thread
|
||
downstream, you can insert a queue between vaapidecode and its downstream
|
||
to get one.
|
||
Another justification for the single thread implementation is,
|
||
there are two many point of locking in gstreamer-vaapi's current
|
||
implementation which can lead to deadlocks.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=742605
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-03-02 13:28:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: fix detection of upstream v4l2src element.
|
||
Improve check for upstream element that requires DMABUF buffer pool,
|
||
e.g. v4l2src element. In particular, make sure to traverse through
|
||
any additional capsfilter for instance.
|
||
Note: the traversal to the top-most upstream element could be made
|
||
more generic, but we are insofar only interested in supporting pipes
|
||
similar to v4l2src or v4l2src ! capsfilter, e.g. with an explicit
|
||
specification for a desired video camera format, or resolution.
|
||
|
||
2015-03-02 11:12:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: fix allocation of DMABUF memory.
|
||
The dmabuf allocator would close the DMABUF handle passed in the init
|
||
function gst_dmabuf_allocator_alloc(). So, we need to dup() it so that
|
||
to avoid a double close, ultimately in the underlying driver that owns
|
||
the DMABUF handle.
|
||
|
||
2015-02-26 12:28:02 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: keep src caps and output state in sync
|
||
vaapidecode keeps an output state that use the format
|
||
GST_VIDEO_FORMAT_ENCODED, while it crafts a different src caps
|
||
for a correct negotiation.
|
||
I don't see the rational behind this decoupling, it looks like
|
||
unnecessary complexity. This patch simplify this logic keeping
|
||
in sync the output state and the src caps.
|
||
This patch improves the readability of the function
|
||
gst_vaapidecode_update_src_caps() and simplify its logic. Also,
|
||
the patch validates if the buffer pool has the configuration for
|
||
the GL texture upload meta, in order to set the caps feature
|
||
meta:GLTextureUpload. Otherwise, the I420 format is set back.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744618
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-02-26 12:26:54 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: upload meta only if feature and allocation
|
||
When vaapidecode finishes the decoding of a frame and pushes it,
|
||
if, in the decide_allocation() method, it is determined if the
|
||
next element supports the GL texture upload meta feature, the
|
||
decoder adds the buffer's meta.
|
||
Nonetheless, in the same spirit of the commit 71d3ce4d, the
|
||
determination if the next element supports the GL texture upload
|
||
meta needs to check both the preferred caps feature *and* if the
|
||
allocation query request the API type.
|
||
This patch, first removes the unused variable need_pool, and
|
||
determines the attribute has_texture_upload_meta using the
|
||
preferred caps feature *and* the allocation query.
|
||
Also, the feature passed to GstVaapPluginBase is not longer
|
||
determined by has_texture_upload_meta, but by the computed
|
||
preferred one.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744618
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-02-26 12:24:55 +0200 Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
vaapidecode: delayed src caps negotiation
|
||
Currently the src caps are set immediately after the sink caps are set, but in
|
||
that moment the pipeline might not fully constructed and the video sink has
|
||
not negotiated its supported caps and features. As a consequence, in many cases
|
||
of playback, the least optimized caps feature is forced. This is partially the
|
||
responsible of bug #744039.
|
||
Also, vaapidecode doesn't attend the reconfigure events from downstream,
|
||
which is a problem too, since the video sink can be changed with different
|
||
caps features.
|
||
This patch delays the src caps, setting them until the first frame arrives to
|
||
the decoder, assuming until that very moment the whole pipeline is already
|
||
negotiated. Particularly, it checks if the src pad needs to be reconfigured,
|
||
as a consequence of a reconfiguration event from downstream.
|
||
A key part of this patch is the new GstVaapiCapsFeature
|
||
GST_VAAPI_CAPS_FEATURE_NOT_NEGOTIATED, which is returned when the src pad
|
||
doesn't have a peer yet. Also, for a better report of the caps allowed
|
||
through the src pad and its peer, this patch uses gst_pad_get_allowed_caps()
|
||
instead of gst_pad_peer_query_caps() when looking for the preferred feature.
|
||
v3: move the input_state unref to close(), since videodecoder resets at
|
||
some events such as navigation.
|
||
v4: a) the state_changed() callback replaces the input_state if the media
|
||
changed, so this case is also handled.
|
||
b) since the parameter ref_state in gst_vaapidecode_update_src_caps() is
|
||
always the input_state, the parameter were removed.
|
||
c) there were a lot of repeated code handling the input_state, so I
|
||
refactored it with the function gst_vaapi_decode_input_state_replace().
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744618
|
||
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-02-24 17:14:33 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
encoder: h264: add support for more than 2 views
|
||
Add support for H.264 MVC Multiview High profile encoding with
|
||
more than 2 views. All views within the same accesss unit are
|
||
provided in increasing order of view order index (VOIdx).
|
||
Upto 10 view are supported for now.
|
||
A new property "view-ids" has been provided for the plugins to
|
||
set the view ids (which is an array of guint values) to be used
|
||
for mvc encoding.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732453
|
||
|
||
2015-02-23 16:55:36 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: upload meta only if feature and allocation
|
||
Working on bug #743687, I realized that vaapidecode always adds to its buffer
|
||
pool the config option GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META if
|
||
the decide_allocation()'s query has GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE.
|
||
Nevertheless, there are occasions where the query has the API type, but the
|
||
last negotiated caps don't have the feature meta:GstVideoGLTextureUploadMeta.
|
||
Under this contradiction, vaapidecode adds the GLTextureUploadMeta API to its
|
||
buffer pool configuration, and adds its buffer's meta to each output buffer,
|
||
even if the negotiated caps feature is memory:SystemMemory with I420 color
|
||
format.
|
||
This kind of output buffers chokes ClutterAutoVideosSink, since it uses a map
|
||
that relates caps <-> GL upload method. If it receives a buffer with color
|
||
format I420, it assumes that it doesn't have a texture upload meta, because
|
||
only those with RGB color format has it. Our buffers, with I420 format, say
|
||
that they have the upload meta too. In that case the mapped method is a dummy
|
||
one which does nothing. I reported this issue in bug #744039 (the patch,
|
||
obviously, was rejected).
|
||
This patch workarounds the problem: the buffer pool's configuration option
|
||
GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META is set if and only if the
|
||
query has the GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE *and* the negotiated
|
||
caps feature is meta:GstVideoGLTextureUploadMeta.
|
||
I have tested these patches with gst-master (1.5), gst-1.4 and gst-1.2 and
|
||
in all they seem to work correctly.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744618
|
||
[adapted to fit current EGL changes]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2015-02-20 15:13:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_priv.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: add support for GstVideoGLTextureOrientation.
|
||
Add support for GstVideoGLTextureOrientation modes. In particular,
|
||
add orientation flags to the GstVaapiTexture wrapper and the GLX
|
||
implementations. Default mode is that texture memory is laid out
|
||
with top lines first, left row first. Flags indicate whether the
|
||
X or Y axis need to be inverted.
|
||
|
||
2015-02-09 21:09:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: add support for BGRA textures.
|
||
Some frameworks (EFL) expect BGRA textures for storage. However,
|
||
adding support for that broadly into GStreamer framework implies
|
||
two kinds of hacks: (i) libgstgl helpers currently do not support
|
||
BGRA textures correctly, (ii) we need to better parse downstream
|
||
suggested caps and intersect them with what the VA plugin elements
|
||
can offer to them for GL texturing.
|
||
|
||
2015-01-23 09:31:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: fix support for Wayland/EGL running alongside X11.
|
||
When multiple display servers are available, the glimagesink element
|
||
(from GStreamer 1.4) may not be able to derive a global display in
|
||
Wayland. Rather, a "window"-specific display is created. In this case,
|
||
the GstGLDisplay handle available through GstGLContext is invalid.
|
||
So, try to improve heuristics for display server characterisation in
|
||
those particular situations.
|
||
|
||
2015-02-20 15:29:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: add initial support for EGL.
|
||
Add initial support for EGL through GstVideoGLTextureUploadMeta.
|
||
Fix gst_vaapi_ensure_display() to allocate a GstVaapiDisplay off the
|
||
downstream supplied GstGLContext configuration, i.e. use its native
|
||
display handle to create a GstVaapiDisplay of type X11 or Wayland ;
|
||
and use the desired OpenGL API to allocate the GstVaapiDisplayEGL
|
||
wrapper.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=741079
|
||
|
||
2014-12-09 11:46:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: track video texture size changes.
|
||
Sync video texture sizes to GstVideoGLTextureUploadMeta private date,
|
||
i.e. GstVaapiVideoMetaTexture, on a regular basis. In particular, we
|
||
now update the texture size from the GstVideoMeta, if any, or reset
|
||
to some defaults otherwise.
|
||
|
||
2014-12-03 15:45:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: ensure VA display matches GL context expectations.
|
||
If a GstGLContext is supplied by the downstream element, then make
|
||
sure that the VA plugin element gets a compatible display to what
|
||
is requested by the GL context. e.g. re-allocate a VA/GLX display
|
||
when a GLX context is provided by the downstream element.
|
||
|
||
2014-12-03 14:14:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
plugins: record downstream GstGLContext.
|
||
Record GL context supplied by downstream elements. This can be useful,
|
||
and further needed, to enforce run-time check that the GL context is
|
||
compatible for use by libgstvaapi. e.g. check that we don't create a
|
||
VA/GLX display for EGL/X11 contexts.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=725643
|
||
Original-path-by: Matthew Waters <ystreet00@gmail.com>
|
||
|
||
2014-12-01 14:52:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/output.c:
|
||
egl: update tests.
|
||
Add initial support for EGL to tests. The new EGL backend can be selected
|
||
through the --egl command line option. The OpenGL|ES version can further
|
||
be selected with the --gles-version command line option, where the default
|
||
of 0 means "desktop" OpenGL.
|
||
|
||
2015-01-27 16:21:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_egl.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_egl.h:
|
||
egl: add windowing support.
|
||
This provides for some basic EGL window abstraction.
|
||
|
||
2015-01-24 08:29:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_egl.h:
|
||
egl: add texture abstraction.
|
||
Add GstVaapiTextureEGL abstraction that can create its own GL texture,
|
||
or import a foreign allocated one, while still allowing updates from a
|
||
VA surface.
|
||
|
||
2014-12-09 18:14:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_egl.h:
|
||
egl: allow for EGLImage imports into VA Surfaces.
|
||
Add helpers to import EGLImage objects into VA surfaces. There are
|
||
two operational modes: (i) gst_vaapi_surface_new_from_egl_image(),
|
||
which allows for implicit conversion from EGLImage to a VA surface
|
||
in native video format, and (ii) gst_vaapi_surface_new_with_egl_image(),
|
||
which exactly wraps the source EGLImage, typically in RGBA format
|
||
with linear storage.
|
||
Note: in case of (i), the EGLImage can be disposed right after the
|
||
VA surface creation call, unlike in (ii) where the user shall ensure
|
||
that the EGLImage is live until the associated VA surface is no longer
|
||
needed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743847
|
||
|
||
2015-02-20 15:27:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/egl_compat.h:
|
||
* gst-libs/gst/vaapi/egl_vtable.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_egl_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_egl.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_egl.h:
|
||
* gst-libs/gst/vaapi/ogl_compat.h:
|
||
Add initial support for EGL.
|
||
Add initial support for EGL to libgstvaapi core library. The target
|
||
display server and the desired OpenGL API can be programmatically
|
||
selected at run-time.
|
||
A comprehensive set of EGL utilities are provided to support those
|
||
dynamic selection needs, but also most importantly to ensure that
|
||
the GL command stream is executed from within a single thread.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743846
|
||
|
||
2015-01-30 21:38:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
libs: initialize GValues in a thread-safe manner.
|
||
|
||
2015-01-30 21:35:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
libs: re-indent all GValue related source code.
|
||
|
||
2015-01-22 22:45:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: partially revert 0777f35.
|
||
Reset the VA decoder after updating the base plugin caps, and most
|
||
importantly, after GstVideoDecoder negotiation. The reason behind
|
||
this is that the negotiation could trigger a last decide_allocation()
|
||
where we could actually derive a new GstVaapiDisplay to use from the
|
||
downstream element. e.g. GLX backend.
|
||
|
||
2015-02-19 13:37:09 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Caps query should return the list of all supported caps.
|
||
Query caps filtering should be always done on top of allowed caps instead
|
||
of existing fixed caps on a particular pad.
|
||
This fixes the mvc stream decoding when there is a base view(high profile)
|
||
and non-base view(stereo-high profile).
|
||
|
||
2015-02-18 13:36:16 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: intersect filter from query caps
|
||
According to documentation[1] when receiving a GST_QUERY_CAPS
|
||
the return value should be all formats that this elements supports,
|
||
taking into account limitations of peer elements further downstream
|
||
or upstream, sorted by order of preference, highest preference first.
|
||
This patch add those limitations intersecting with the received
|
||
filter in the query. Also takes into account the already negotiated
|
||
caps. Also adds the processing of the query on the SRC pad.
|
||
1. http://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/html/section-nego-getcaps.html
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744406
|
||
|
||
2015-02-18 11:46:11 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_jpeg.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
Fix compiler warnings
|
||
This patch fixes some warnings that gcc 4.9 reports.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744411
|
||
|
||
2015-02-18 11:22:21 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Use GST_DEBUG_FUNCPTR for gst_vaapidecode_query()
|
||
Hence the function name is shown in the gst-inspect-1.0 information
|
||
rather than the memory address.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744330
|
||
|
||
2015-02-18 11:21:35 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: log flow error name
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744387
|
||
|
||
2015-02-18 11:20:42 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
VC1: decoder: Ignore VC1 user BDU's
|
||
Don't return error if the processed BDU is a user one, just ignore them.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=741237
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-02-18 11:19:26 +0200 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
vaapidecode: Emit error GstMessage when returning a GST_FLOW_ERROR
|
||
This is required in GStreamer, elements should never return
|
||
GST_FLOW_ERROR without posting an ERROR message on the bus.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=744620
|
||
|
||
2015-02-13 13:45:32 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.c:
|
||
* gst/vaapi/gstvaapiencode_vp8.h:
|
||
plugins: Add VP8 Encoder
|
||
|
||
2015-02-13 13:42:04 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_vp8.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_vp8.h:
|
||
Add VP8 Encoder to core libgstvaapi.
|
||
|
||
2015-02-13 13:40:19 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: Add Check for VP8 Encoding API
|
||
|
||
2015-02-10 11:40:16 +0200 Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: vc1: Rounding control handling for VC1 simple and Main profile
|
||
Added rounding control handling for VC1 simple and Main profile
|
||
based on VC1 standard spec: section 8.3.7
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743958
|
||
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
2015-02-06 12:10:51 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: fix make dist when certain conditionals not met.
|
||
Fix typo which was preventing the inclusion of jpeg encoder
|
||
source files from make dist (when there is no jpeg encoder
|
||
API support in libva).
|
||
|
||
2015-02-05 13:08:53 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_jpeg.c:
|
||
encoder: jpeg: Fix the sampling factor calculation for ENCODED format.
|
||
If the incoming raw video format is GST_VIDEO_FORMAT_ENCODED,
|
||
use native YUV420 format (which is i420) as default.
|
||
|
||
2015-02-05 12:13:38 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
encoder: Only support YUV420 native format as input for now
|
||
Practically we should be able to support more formats, for eg:
|
||
JPEG Encoder can support YUV422, RGBA and all.
|
||
But this is causing more issues which need proper fix here and there.
|
||
|
||
2015-02-04 18:34:59 +0200 Olivier Crete <olivier.crete@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Check the condition after taking the lock
|
||
Otherwise the condition could become true before the lock
|
||
is taken and the g_cond_signal() could be called
|
||
before the g_cond_wait(), so the g_cond_wait() is never
|
||
awoken.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=740645
|
||
|
||
2015-02-04 11:18:29 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.c:
|
||
* gst/vaapi/gstvaapiencode_jpeg.h:
|
||
plugins: Add JPEG encoder element
|
||
|
||
2015-02-04 11:17:58 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
gstvaapicontext: Add VAConfigAttribValEncJPEG to the attribute list using for VAConfig creation.
|
||
|
||
2015-02-04 11:17:27 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
gstvaapicontext: Don't use the unsupported Ratecontrol attributes for vaCreateConfig
|
||
Don't add the VAConfigAttribRateControl to the attribute list using
|
||
for the vaCreateConfig if it is not supported by the driver.
|
||
|
||
2015-02-04 11:17:06 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
gstvaapiencoder: Use hardcoded packed_raw_data flag for JPEG Encoding
|
||
|
||
2015-02-04 11:16:37 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
gstvaapiencoder: Fix crash when handling rate control mask
|
||
Having a ratecontrol_mask equal to zero is not a bug, but the driver
|
||
might not be supporting any kind of rate control mechanisms.
|
||
Eg: JPEG Encoding
|
||
|
||
2015-02-04 11:16:05 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_jpeg.h:
|
||
encoder: Add JPEG Encoder
|
||
|
||
2015-02-04 11:15:38 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
encoder_objects: Add QuantizationMatrix and JPEGHuffmanTable
|
||
|
||
2015-02-04 11:15:00 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
Encode: Add support for Picture level Entrypoint
|
||
This is useful for JPEG encoding which is utilizing picture level
|
||
entrypoint instead of slice level entrypoint like h264,mpeg2 etc.
|
||
|
||
2015-02-04 11:14:15 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: Add Check for JPEG encoding API
|
||
|
||
2015-02-03 13:08:53 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* AUTHORS:
|
||
AUTHORS: Updates
|
||
|
||
2015-02-03 13:08:01 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
=== release 0.5.10 ===
|
||
|
||
2015-02-03 10:00:42 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
0.5.10
|
||
|
||
2015-02-03 10:00:23 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: Updates
|
||
|
||
2015-02-02 11:43:58 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
Fix compilation error if there is no GL/gl.h header file installed
|
||
|
||
2015-01-28 18:09:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: drop leftover declaration.
|
||
GstVaapiVideoMemory quark is not needed any more, and the actual
|
||
implementation was already removed bfore the merge. i.e. this is
|
||
an oversight for a hunk that was not meant to be pushed.
|
||
|
||
2015-01-26 18:30:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: add support for dma_buf exports (v4l2src).
|
||
Allow v4l2src element to connected to vaapipostproc or vaapisink when
|
||
"io-mode" is set to "dmabuf-import". In practice, this is a more likely
|
||
operational mode with uvcvideo. Supporting v4lsrc with "io-mode" set
|
||
to "dmabuf" could work, but with more demanding driver or kernel reqs.
|
||
Note: with GStreamer 1.4, v4l2src (gst-plugins-good) needs to be built
|
||
with --without-libv4l2.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743635
|
||
|
||
2014-01-23 05:00:09 -0500 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: add support for dma_buf imports.
|
||
Allow imports of v4l2 buffers into VA surfaces for further operation
|
||
with vaapi plugins, e.g. vaapipostproc or vaapiencode_* elements.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=735362
|
||
[fixed memory leaks, ported to new dma_buf infrastructure, cleanups]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-09-15 15:27:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.h:
|
||
surface: add support for GEM buffer imports.
|
||
Add support for GEM buffer imports. This is useful for VA/EGL interop
|
||
with legacy Mesa implementations, or when it is desired or required to
|
||
support outbound textures for instance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736718
|
||
|
||
2014-09-15 15:25:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.h:
|
||
surface: add support for dma_buf imports.
|
||
Add new gst_vaapi_surface_new_with_dma_buf_handle() helper function
|
||
to allow for creating VA surfaces from a foreign DRM PRIME fd. The
|
||
resulting VA surface owns the supplied buffer handle.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=735362
|
||
|
||
2015-01-27 11:19:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
surface: add initial support for foreign buffer imports.
|
||
Add gst_vaapi_surface_new_from_buffer_proxy() helper function to
|
||
create a VA surface from an external buffer provided throug the
|
||
new GstVaapiBufferProxy object.
|
||
|
||
2014-09-15 13:47:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.h:
|
||
surface: add support for GEM buffer exports.
|
||
Add support for GEM buffer exports. This will only work with VA drivers
|
||
based off libdrm, e.g. the Intel HD Graphics VA driver. This is needed
|
||
to support interop with EGL and the "Desktop" GL specification. Indeed,
|
||
the EXT_image_dma_buf_import extension is not going to be supported in
|
||
Desktop GL, due to the lack of support for GL_TEXTURE_EXTERNAL_OES targets
|
||
there.
|
||
This is useful for implementing VA/EGL interop with legacy Mesa stacks,
|
||
in Desktop OpenGL context.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736717
|
||
|
||
2014-09-15 11:48:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_drm.h:
|
||
surface: add support for dma_buf exports.
|
||
Use the new VA buffer export APIs to allow for a VA surface to be
|
||
exposed as a plain PRIME fd. This is in view to simplifying interop
|
||
with EGL or OpenCL for instance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=735364
|
||
|
||
2014-09-15 10:58:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapibufferproxy_priv.h:
|
||
Add abstraction for exported VA buffers.
|
||
The VA buffer export APIs work for a particular lifetime starting from
|
||
vaAcquireBufferHandle() and ending with vaReleaseBufferHandle(). As such,
|
||
it could be much more convenient to support implicit releases by simply
|
||
having a refcount reaching zero.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736721
|
||
|
||
2015-01-28 18:25:09 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Add missing header file to Makefile
|
||
Add gstvaapitexture_glx.h to Makefile.am
|
||
|
||
2015-01-27 11:44:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
* tests/test-surfaces.c:
|
||
videopool: add optional flags for surface pool allocation.
|
||
Reword surface pool allocation helpers so that to allow for a simple
|
||
form, e.g. gst_vaapi_surface_pool_new(format, width, height); and a
|
||
somewhat more elaborated/flexible form with optional allocation flags
|
||
and precise GstVideoInfo specification.
|
||
This is an API/ABI change, and SONAME version needs to be bumped.
|
||
|
||
2015-01-26 23:21:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool_priv.h:
|
||
videopool: re-indent all GstVaapiVideoPool related source code.
|
||
|
||
2014-12-10 20:13:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
window: add toplevel display indirection for visualid and colormap.
|
||
Add GstVaapiDisplay::get_{visual_id,colormap}() helpers to help determine
|
||
the best suitable window visual id and colormap. This is an indirection in
|
||
view to supporting EGL and custom/generic replacements.
|
||
|
||
2014-12-10 19:58:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
window: add toplevel API to determine the colormap.
|
||
Add GstVaapiWindowClass::get_colormap() hook to help determine the
|
||
currently active colormap bound to the supplied window, or actually
|
||
create it if it does not already exist yet.
|
||
|
||
2014-12-10 19:36:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
window: add toplevel API to determine a visual id.
|
||
Add GstVaapiWindowClass::get_visual_id() function hook to help find
|
||
the best suitable visual id for the supplied window. While doing so,
|
||
also simplify the process by which an X11 window is created with a
|
||
desired Visual, i.e. now use a visual id instead of a Visual object.
|
||
|
||
2014-12-10 18:12:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
window: add generic helper to create windows.
|
||
Add a new generic helper function gst_vaapi_window_new() to create
|
||
a window without having the caller to check for the display type
|
||
himself. i.e. internally, there is now a GstVaapiDisplayClass hook
|
||
to create windows, and the actual backend implementation fills it in.
|
||
Add new generic helper functions gst_vaapi_texture_new_wrapped()
|
||
This is a simplification in view to supporting EGL.
|
||
|
||
2014-12-03 11:39:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
display: add utility function to check for OpenGL rendering.
|
||
Add gst_vaapi_display_has_opengl() helper function to help determining
|
||
whether the display can support OpenGL context to be bound to it, i.e.
|
||
if the class is of type GST_VAAPI_DISPLAY_TYPE_GLX.
|
||
|
||
2014-12-10 18:02:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
display: refine the meaning of display type.
|
||
Make gst_vaapi_display_get_display_type() return the actual VA display
|
||
type. Conversely, add a gst_vaapi_display_get_class_type() function to
|
||
return the type of the GstVaapiDisplay instance. The former is used to
|
||
identify the display server onto which the application is running, and
|
||
the latter to identify the original object class.
|
||
|
||
2014-12-02 11:23:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: cosmetics (helper macros, new internal API names).
|
||
Add more helper macros to the top-level GstVaapiDisplay interfaces.
|
||
Rename a few others used internally for improved consistency.
|
||
|
||
2014-12-01 17:08:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
display: record native display object.
|
||
Record the underlying native display instance into the toplevel
|
||
GstVaapiDisplay object. This is useful for fast lookups to the
|
||
underlying native display, e.g. for creating an EGL display.
|
||
|
||
2014-12-01 16:54:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
display: use a recursive mutex for the display cache.
|
||
Use a recursive mutex for the display cache so that a 3rdparty display
|
||
object could be initialized during the initialization of the parent
|
||
display.
|
||
|
||
2014-12-04 14:36:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_priv.h:
|
||
texture: add generic helper to create textures.
|
||
Add new generic helper functions gst_vaapi_texture_new_wrapped()
|
||
and gst_vaapi_texture_new() to create a texture without having
|
||
the caller to uselessly check for the display type himself. i.e.
|
||
internally, there is now a GstVaapiDisplayClass hook to create
|
||
textures, and the actual backend implementation fills it in.
|
||
This is a simplification in view to supporting EGL.
|
||
|
||
2014-10-23 17:44:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture_priv.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* tests/test-textures.c:
|
||
texture: move to core libgstvaapi base library.
|
||
GstVaapiTexture is a generic abstraction that could be moved to the
|
||
core libgstvaapi library. While doing this, no extra dependency needs
|
||
to be added. This means that a GstVaapitextureClass is now available
|
||
for any specific code that needs to be added, e.g. creation of the
|
||
underlying GL texture objects, or backend dependent ways to upload
|
||
a surface to the texture object.
|
||
Generic OpenGL data types (GLuint, GLenum) are also replaced with a
|
||
plain guint.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736715
|
||
|
||
2014-10-23 13:11:54 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
texture: drop support for VA/GLX interfaces.
|
||
The VA/GLX interfaces are obsolete. They used to exist for XvBA, and
|
||
ease of use, but they had other caveats to deal with. It's now better
|
||
to move on to legacy mode, whereby VA/GLX interop is two be provided
|
||
through (i) X11 Pixmap, and (ii) other modern means of buffer sharing.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736711
|
||
|
||
2014-10-23 11:56:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* tests/test-textures.c:
|
||
texture: add support for cropping rectangle during transfer.
|
||
The gst_vaapi_texture_put_surface() function is missing a crop_rect
|
||
argument that would be used during transfer for cropping the source
|
||
surface to the desired dimensions.
|
||
Note: from a user point-of-view, he should create the GstVaapiTexture
|
||
object with the cropped size. That's the default behaviour in software
|
||
decoding pipelines that we need to cope with.
|
||
This is an API/ABI change, and SONAME version needs to be bumped.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736712
|
||
|
||
2014-10-23 11:22:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
texture: re-indent all GstVaapiTexture related source code.
|
||
|
||
2015-01-27 11:16:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
surface: add more fine-grained allocation helper.
|
||
Add new gst_vaapi_surface_new_full() helper function that allocates
|
||
VA surface from a GstVideoInfo template in argument. Additional flags
|
||
may include ways to
|
||
- allocate linear storage (GST_VAAPI_SURFACE_ALLOC_FLAG_LINEAR_STORAGE) ;
|
||
- allocate with fixed strides (GST_VAPI_SURFACE_ALLOC_FLAG_FIXED_STRIDES) ;
|
||
- allocate with fixed offsets (GST_VAAPI_SURFACE_ALLOC_FLAG_FIXED_OFFSETS).
|
||
|
||
2014-09-15 14:57:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
surface: re-indent all GstVaapiSurface related source code.
|
||
|
||
2015-01-23 16:44:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
surfaceproxy: add helper to create a wrapped surface object.
|
||
Add new gst_vaapi_surface_proxy_new() helper to wrap a surface into
|
||
a proxy. The main use case for that is to convey additional information
|
||
at the proxy level that would not be suitable to the plain surface.
|
||
|
||
2015-01-23 16:37:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
surfaceproxy: re-indent all GstVaapiSurfaceProxy related source code.
|
||
|
||
2015-01-27 18:02:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
libs: bump library major version.
|
||
|
||
2014-12-04 14:36:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
libs: re-introduce a GST_VAAPI_ID_INVALID value.
|
||
Re-introduce a GST_VAAPI_ID_INVALID value that represents
|
||
a non-zero and invalid id. This is useful to have a value
|
||
that is still invalid for cases where zero could actually
|
||
be a valid value.
|
||
|
||
2014-12-02 16:51:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
libs: expose GstVaapiMiniObject APIs to all backends.
|
||
Make it possible to have all libgstvaapi backends (libs) access to a
|
||
common GstVaapiMiniObject API and implementation. This is a minor step
|
||
towards full exposure when needed, but restrict it to libgstvaapi at
|
||
this time.
|
||
|
||
2014-12-02 14:15:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
libs: re-indent all GstVaapiObject related source code.
|
||
Re-indent and provide additional minor cosmetical changes to the
|
||
GstVaapiMiniObject and GstVaapiObject source files.
|
||
|
||
2015-01-27 16:25:21 +0200 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
pluginutil: Fix clearing of subtitle overlay
|
||
dvbsuboverlay signals no subtitles present by not setting
|
||
GstVideoOverlayCompositionMeta on a buffer.
|
||
Detect this, and remove subtitles whenever we have no overlay composition to
|
||
hand.
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
2015-01-27 16:06:02 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: clear state on stop
|
||
Otherwise restarting may fail because the state of vaapipluginbase and
|
||
vaapipostproc don't match. e.g. gst_vaapipostproc_set_caps() will skip
|
||
initailization and not call gst_vaapi_plugin_base_set_caps()
|
||
|
||
2015-01-27 14:50:12 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: don't print an error message for GST_FLOW_FLUSHING
|
||
|
||
2015-01-27 12:38:45 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
gstvaapiencoder: Fix the negotiation issue with _ENCODED format handling
|
||
Don't error out for the video format GST_VIDEO_FORMAT_ENCODED with in gstvaapiencoder,
|
||
since the vaaapi context creation (gstvaapicontext.c) can still use the
|
||
default chroma type which is YUV420.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743567
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=743035
|
||
|
||
2015-01-21 18:31:22 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-add-initial-support-for-MVC-NAL-units.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: drop patches merged upstream.
|
||
0003-h264parse-add-initial-support-for-MVC-NAL-units.patch
|
||
|
||
2015-01-21 18:26:12 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit d3b5c1b
|
||
8194cac: h264parse: parse SPS subset
|
||
64b7f52: h264parse: expose stereo-high profile
|
||
774360a: h264parse: add initial support for MVC NAL units
|
||
258478f: h264parser: fix stack smashing
|
||
|
||
2015-01-19 11:30:12 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
Fix compilation error if there is no GL/gl.h header file installed
|
||
|
||
2015-01-15 16:23:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: commit updated srcpad caps to base plugin.
|
||
Make sure that the GstVaapiPluginBase instance receives the new src
|
||
pad caps whenever they get updated from within the GstVaapiDecoder
|
||
decode routines.
|
||
This also ensures that downstream elements receive correctly sized
|
||
SW decoded buffers if needed.
|
||
https://bugs.tizen.org/jira/browse/TC-114
|
||
|
||
2015-01-15 16:19:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: always reset decoder on ::set_format().
|
||
Split GstVideoDecoder::set_format() handler to first update the sink
|
||
pad caps and reset the active VA decoder instance based on those, and
|
||
then update the src pad caps whenever possible, e.g. when the caps
|
||
specify a valid video resolution.
|
||
|
||
2015-01-15 16:14:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: don't crash when trying to allocate 0x0 images.
|
||
In some occasions, a buffer pool is created for pre-initialization
|
||
purposes regardless of whether a valid image size is available or
|
||
not. However, during actual decode stage, the vaapidecode element
|
||
is expected to update the srcpad caps with the new dimensions, thus
|
||
also triggering a reset of the underlying bufferpool.
|
||
|
||
2015-01-15 00:00:16 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 191cb2f
|
||
347605a: h264parse: expose compatible profiles to downstream
|
||
d1ea97e: h264parse: Fix periodic SPS/PPS sending work after a seek
|
||
24a3126: Revert "h264parse: expose compatible profiles to downstream"
|
||
8661740: h264parse: expose compatible profiles to downstream
|
||
8b7ef3f: codecparsers: fix some compiler warnings
|
||
|
||
2014-11-27 12:11:03 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: Fix the period between I/P frames
|
||
If the key-frame period is set as one, then ip_period shuld be zero
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734992
|
||
|
||
2014-11-27 11:21:03 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: Provide intra_idr_period value for VAEncSequenceParameterBufferH264
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734993
|
||
|
||
2014-11-27 11:14:50 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: Protect the X11 API invokations with proper locking
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739808
|
||
|
||
2014-11-27 11:13:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix pixel-aspect-ratio in encoded stream.
|
||
Really report sample aspect ratio (SAR) as present, and make it match
|
||
what we have obtained from the user as pixel-aspect-ratio (PAR). i.e.
|
||
really make sure VUI parameter aspect_ratio_info_present_flag is set
|
||
to TRUE and that the indication from aspect_ratio_idc is Extended_SAR.
|
||
This is a leftover from git commit a12662f.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=740360
|
||
|
||
2014-11-25 11:46:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
decoder: mpeg4: fix uninitialized variables.
|
||
Fix gst_vaapi_decoder_mpeg4_parse() to initialize the packet type to
|
||
GST_MPEG4_USER_DATA so that a parse error would result in skipping
|
||
that packet. Also fix gst_vaapi_decoder_mpeg4_decode_codec_data() to
|
||
initialize status to GST_VAAPI_DECODER_STATUS_SUCCESS.
|
||
|
||
2014-11-25 11:41:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix profile limits.
|
||
Fix ensure_profile_limits() to lower profile to the desired limits,
|
||
only if the latter are actually known and the profile needed to be
|
||
changed to fit.
|
||
|
||
2014-11-24 15:14:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix out caps for GLMemory.
|
||
If the best downstream capsfeature turns out to be GLMemory, then make
|
||
sure to propagate RGBA video format in caps to that element. This fixes
|
||
the following pipeline: ... ! vaapipostproc ! glimagesink.
|
||
|
||
2014-11-24 14:25:33 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix check for compatible src pad capsfilters.
|
||
When an explicit output video format is selected, from an src pad
|
||
capsfilter, make sure that the downstream element actually supports
|
||
that format. In particular, fix crash with the following pipelines:
|
||
... ! vaapipostproc ! video/x-raw,format=XXX ! xvimagesink ; where
|
||
XXX is a format not supported by xvimagesink.
|
||
While doing so, also reduce the set of src pad filter caps to the
|
||
actual set of allowed src pad caps.
|
||
|
||
2014-11-24 14:10:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapiuploader.h:
|
||
plugins: re-indent all video processing related source code.
|
||
|
||
2014-11-24 13:20:33 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: further fixes to the new "current" storage tracker.
|
||
The ensure_surface() and ensure_image() functions shall only relate
|
||
to the underlying backing store. The actual current flags are to be
|
||
updated only through ensure_{surface,image}_is_current() or very other
|
||
particular cases in GstMemory hooks.
|
||
|
||
2014-11-21 15:43:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: fix "current" video memory flags.
|
||
If the surface proxy is updated into the GstVaapiVideoMemory, then
|
||
it is assumed it is the most current representation of the current
|
||
video frame. Likewise, make a few more arrangements to have the
|
||
"current " flags set more consistently.
|
||
|
||
2014-11-21 15:23:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: ensure VA surface is current prior to using it.
|
||
When interacting with SW elements, the buffers and underlying video
|
||
memory could be mapped as read/write. However, we need to use those
|
||
buffers again as plain VA surfaces, we have to make sure the VA image
|
||
is thus committed back to VA surface memory.
|
||
This fixes pipelines involving avdec_* and vaapi{postproc,sink}.
|
||
|
||
2013-07-12 06:34:15 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: enable memory maps for read & write.
|
||
Hence vaapisink can display buffers decoded by gst-libav, or HW decoded
|
||
buffers can be further processed in-place, e.g. with a textoverlay.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=704078
|
||
[ported to current git master branch, amended commit message]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-11-18 14:57:02 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
plugins: preserve framerate when updating src caps video format.
|
||
In the current implementation, gst_video_info_set_format() would reset
|
||
the whole GstVideoInfo structure first, prior to setting video format
|
||
and size. So, coleteral information like framerate or pixel-aspect-
|
||
ratio are lost.
|
||
Provide and use a unique gst_video_info_change_format() for overcome
|
||
this issue, i.e. only have it change the format and video size, and
|
||
copy over the rest of the fields.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734665
|
||
|
||
2014-11-18 14:07:57 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
vaapidecode: increase the rank to GST_RANK_PRIMARY + 1
|
||
This is for helping decodebin to autoplug the vaapidecode element.
|
||
Decodebin is selecting decoder elements only based on rank and caps.
|
||
Without overriding the autoplug-* signals there is no way to autoplug
|
||
HW decoders inside decodebin. An easier soulution is to raise the
|
||
rank of vaapidecode, so that it gets selected first.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739332
|
||
|
||
2014-11-12 07:46:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: only expose supported profiles when needed.
|
||
JPEG and VP8 codecs do not really support the concept of "profile". So,
|
||
don't try to expose any set that wouldn't be supported by jpegparse, or
|
||
ivfparse for instance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739713
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739714
|
||
|
||
2014-11-13 15:13:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
decoder: h264: add initial support for repeat-first-field (RFF) flag.
|
||
Use the SEI pic_timing() message to track and propagate down the repeat
|
||
first field (RFF) flag. This is only initial support as there is one
|
||
other condition that could induce the RFF flag, which is not handled
|
||
yet.
|
||
|
||
2014-11-13 15:05:19 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix picture ordering count type 0 with previous MMCO5.
|
||
Fix the decoding process for picture order count type 0 when the previous
|
||
picture had a memory_management_control_operation = 5. In particular, fix
|
||
the actual variable type for prev_pic_structure to hold the full bits of
|
||
the picture structure.
|
||
In practice, this used to work though, due to the underlying type used to
|
||
express a gboolean.
|
||
|
||
2014-11-13 15:00:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix detection of top-field-first (TFF) flag.
|
||
Use the SEI pic_timing() message to track the pic_struct variable when
|
||
present, or infer it from the regular slice header flags field_pic_flag
|
||
and bottom_field_flag. This fixes temporal sequence ordering when the
|
||
output pictures are to be displayed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739291
|
||
|
||
2014-11-14 09:54:02 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 3d05d9f.
|
||
1241840 h264: fix derivation of MaxPicNum variable
|
||
3bd718e h264: fix GstH264ParserResult documentation typo
|
||
b021609 h264parse: set the HEADER flag on buffers containing SPS or PPS
|
||
b08e4be h264parse: don't unnecesarily set src_caps
|
||
|
||
2014-11-03 19:20:43 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: Add string representation of VPP functions to ElementFactoy Klass
|
||
Added the same Klass specifications used in other upstream
|
||
video postprocessing elements like videoconvert, videoscale,
|
||
videobalance and deinterlace.
|
||
An example use case is for this is to help the playsink
|
||
to autoplug the hardware accelerated deinterlacer.
|
||
|
||
2014-11-03 19:19:20 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: Tweak the output video format setting to enable the autoplugging
|
||
This is a workaround until auto-plugging is fixed when
|
||
format=ENCODED + memory:VASurface caps feature are provided.
|
||
Use the downstream negotiated video format as the output video format
|
||
if the user didn't ask for the colorspace conversion explicitly.
|
||
Usecase: This will help to connect elements like videoscale, videorate etc
|
||
to vaapipostproc.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739443
|
||
|
||
2014-10-29 17:30:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: allow user defined scaling mode.
|
||
Add new "scale-method" property to expose the scaling mode to use during
|
||
video processing. Note that this is only a hint, and the actual behaviour
|
||
may differ from implementation (VA driver) to implementation.
|
||
|
||
2014-10-29 16:57:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
filter: add initial support for high quality scaling.
|
||
Add support for video scaling options in VPP pipelines. Only the
|
||
DEFAULT mode is bound to exist. Others might be folded into that
|
||
mode.
|
||
|
||
2014-10-29 16:35:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: re-indent all GstVaapiFilter related source code.
|
||
|
||
2014-10-29 15:45:50 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit f9d3bde.
|
||
2218b02 h264parse: expose parsed profile and level to downstream
|
||
3dbfab4 h264parse: return flushing if we get chained while being set to READY
|
||
d40fa8b h264: fix frame packing SEI parsing
|
||
32d40be h264: Use proper bit_reader api while parsing buffering_period SEI
|
||
b3e022e h264: initialize some fields of pic_timing structure
|
||
a70661d vc1: fix expected level in sequence-layer parsing unit test
|
||
6cee88d vc1: fix level values for simple/main profile
|
||
356c189 vc1: add unit test for sequence-layer parsing
|
||
ab9f641 vc1: take care of endianness when parsing sequence-layer
|
||
8dc8e35 mpeg4: fix vlc table used for sprite trajectory
|
||
|
||
2014-10-29 15:46:47 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: Expose the supported profiles as caps to upstream
|
||
This will allows the playbin to fallback to Software Decoder
|
||
if the Hardware Decoder does not support a particular profile.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=730997
|
||
|
||
2014-10-29 15:46:12 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
encode: Attach the codec-data to out caps only based on negotiated caps
|
||
Attach the codec_data to out_caps only if downstream needed.
|
||
For eg: h264 encoder doesn't need to stuff codec_data to the
|
||
src caps if the negotiated caps has a stream format of byte-stream.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734902
|
||
|
||
2014-10-29 15:45:44 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: echoing installation prefix path
|
||
|
||
2014-09-24 10:14:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
display: add support for DRM Render-Nodes.
|
||
Add support for DRM Render-Nodes. This is a new feature that appeared
|
||
in kernel 3.12 for experimentation purposes, but was later declared
|
||
stable enough in kernel 3.15 for getting enabled by default.
|
||
This allows headless usages without authentication at all, i.e. usages
|
||
through plain ssh connections is possible.
|
||
|
||
2014-09-24 13:44:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: clean-ups (indentation, drop unused variables).
|
||
|
||
2014-09-24 13:39:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix GstNavigation "key-press" / "key-release" events.
|
||
Fix arguments to XkbKeycodeToKeysym() for converting an X11 keycode
|
||
to a KeySym. In particular, there is no such Window argument. Also
|
||
make sure to check for, and use, the correct <X11/XKBlib.h> header
|
||
where that new function is defined. Otherwise, default to the older
|
||
XKeycodeToKeysym() function.
|
||
|
||
2014-09-24 13:23:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix GstNavigation "mouse-move" event.
|
||
Really use the motion event coordinates to propagate the "mouse-move"
|
||
event to upper layer, instead of those from a button event. Those are
|
||
technically the same though.
|
||
|
||
2014-09-16 14:25:40 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: implement the GstNavigation interface
|
||
This is useful for things like DVD menus, where key/mouse events
|
||
would need to be forwarded from the upstream sink element.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=711479
|
||
|
||
2014-03-13 18:38:33 +0000 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
vaapipostproc: fix deinterlacing from non VA memory buffers.
|
||
When we copy a buffer because we're moving it into VA-API memory, we
|
||
need to copy flags. Otherwise, interlaced YUV buffers from a capture
|
||
source (e.g. V4L2) don't get flagged as interlaced.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726270
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
[reversed order of gst_buffer_copy_into() flags to match <1.0 code]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-08-22 15:22:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: add support for GLTextureUploadMeta output.
|
||
This allows for vaapipostproc to be chained to the glimagesink element
|
||
for instance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=735231
|
||
|
||
2014-08-22 15:22:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: add support for "download" capability.
|
||
Allow implicit conversions to raw video formats, while still keeping
|
||
VA surfaces underneath. This allows for chaining the vaapipostproc
|
||
element to a software-only element that takes care of maps/unmaps.
|
||
e.g. xvimagesink.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720174
|
||
|
||
2014-08-22 18:10:54 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: use pooled vaapi video meta.
|
||
Use pooled GstVaapiVideoMeta information, i.e. always allocate that on
|
||
video buffer allocation. Also optimize copy of additional metadata info
|
||
into the resulting video buffer: only copy the video cropping info and
|
||
the source surface proxy.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720311
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
[fixed proxy leak, fixed double free on error, optimized meta copy]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-08-22 15:17:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix passthrough mode.
|
||
If no explicit output surface format is supplied try to keep the one
|
||
supplied through the sink pad caps. This avoids a useless copy, even
|
||
if things are kept in GPU memory.
|
||
This is a performance regression from git commit dfa70b9.
|
||
|
||
2014-07-05 21:00:34 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: fix output buffer to have a GstVaapiVideoMemory.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720311
|
||
[used new infrastructure through base decide_allocation() impl]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-08-22 11:13:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: enable advanced deinterlacing with same format.
|
||
If only advanced deinterlacing is requested, i.e. deinterlacing is
|
||
the only active algorithm to apply with source and output surface
|
||
formats being the same, then make sure to enable VPP processing.
|
||
Otherwise, allow fallback to bob-deinterlacing with simple rendering
|
||
flags alteration.
|
||
|
||
2014-08-21 15:04:20 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: avoid NULL pointer unref if GstVaapiImage creation failed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=735156
|
||
|
||
2014-08-22 13:25:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: fix memory leaks.
|
||
|
||
2014-08-21 14:10:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
plugins: factor out decide_allocation() hook.
|
||
Add a default decide_allocation() hook to GstVaapiPluginBase. The caps
|
||
feature argument can be used to force a bufferpool with a specific kind
|
||
of memory.
|
||
|
||
2014-08-21 11:12:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: allow bufferpool to not allocate vaapi video meta.
|
||
Add GST_VAAPI_VIDEO_BUFFER_POOL_ACQUIRE_FLAG_NO_ALLOC params flag that
|
||
can be used to disable early allocations of vaapi video metas on buffers,
|
||
thus delagating that to the bufferpool user.
|
||
|
||
2014-08-21 10:45:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.h:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.h:
|
||
plugins: re-indent all GstVaapiVideo* related source code.
|
||
|
||
2014-08-22 15:12:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
surfaceproxy: fix copy to propagate view_id.
|
||
Fix gst_vaapi_surface_proxy_copy() to copy the view-id element, thus
|
||
fixing random frames skipped when vaapipostproc element is used in
|
||
passthrough mode. In that mode, GstMemory is copied, thus including
|
||
the underlying GstVaapiVideoMeta and associated GstVaapiSurfaceProxy.
|
||
|
||
2014-08-20 16:38:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix detection of output surface format changes.
|
||
Default to I420 format for output surfaces so that to match the usual
|
||
GStreamer pipelines. Though, internally, we could still opt for NV12
|
||
surface formats, i.e. default format=ENCODED is a hint for that, thus
|
||
delegating the decision to the VA driver.
|
||
|
||
2014-08-20 10:59:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix construction of allowed sink pad caps.
|
||
Fix construction of the set of caps allowed on the sink pad to filter
|
||
out unsupported raw video caps with GStreamer >= 1.2.
|
||
|
||
2014-08-20 10:37:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: improve heuristics for detecting native VA surfaces.
|
||
Use the new gst_caps_has_vaapi_surface() helper function to detect
|
||
whether the sink pad caps contain native VA surfaces, or not, i.e.
|
||
no raw video caps.
|
||
Also rename is_raw_yuv to get_va_surfaces to make the variable more
|
||
explicit as we just want a way to differentiate raw video caps from
|
||
VA surfaces actually.
|
||
|
||
2014-08-12 18:33:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: disable discontinuity detection code.
|
||
The "discontinuity" tracking code, whereby lost frames are tentatively
|
||
detected, is inoperant if the sink pad buffer timestamps are not right
|
||
to begin with.
|
||
This is a temporary workaround until the following bug is fixed:
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734386
|
||
|
||
2014-08-07 14:57:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix heuristic for detecting discontinuity.
|
||
In order to make the discontinuity detection code useful, we need to
|
||
detect the lost frames in the history as early as the previous frame.
|
||
This is because some VA implementations only support one reference
|
||
frame for advanced deinterlacing.
|
||
In practice, turn the condition for detecting new frame that is beyond
|
||
the previous frame from field_duration*2 to field_duration*3, i.e.
|
||
nothing received for the past frame and a half because of possible
|
||
rounding errors when calculating the field-duration either in this
|
||
element (vaapipostproc), or from the upstream element (parser element).
|
||
This is a regression introduced with commit faefd62.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734135
|
||
|
||
2014-08-20 11:43:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
plugins: fix detection of raw video caps.
|
||
Use the new gst_caps_has_vaapi_surface() helper function to better
|
||
detect raw video caps, and in particular those from RGB colorspace.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734665
|
||
|
||
2014-08-20 11:30:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
plugins: add helper for detecting VA surfaces in caps.
|
||
Introduce new gst_caps_has_vaapi_surface() helper function to detect
|
||
whether the supplied caps has VA surfaces. With GStreamer >= 1.2, this
|
||
implies a check for memory:VASurface caps features, and format=ENCODED
|
||
for earlier versions of GStreamer.
|
||
|
||
2014-08-12 13:01:57 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: start the decoder task again after finishing
|
||
This allows the element to accept data again after draining without
|
||
a hard reset or caps change happening in between.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734616
|
||
|
||
2014-08-12 13:00:03 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: unlock condition variables before shutting down the element
|
||
Otherwise threads might wait for them, causing the shutdown of the element
|
||
to deadlock on the streaming thread.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734616
|
||
|
||
2014-08-11 17:15:24 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: reset decoder_finish variable after stopping the decoder thread
|
||
Otherwise the element is not usable again after draining/EOS.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734616
|
||
|
||
2014-08-11 17:14:53 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: don't try flushing the decoder instance if we didn't create one yet
|
||
This otherwise results in unnecessary error messages.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=734616
|
||
|
||
2014-08-01 06:32:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
build: fix with --no-undefined linker flags.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=729352
|
||
|
||
2014-01-23 15:44:09 +0000 Changzhi Wei <changzhix.wei@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: add support for GstColorBalance interface.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722390
|
||
[fixed channel names, simplified range factor, fixed memory leak]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-23 15:23:00 +0000 Changzhi Wei <changzhix.wei@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: add support for colorbalance adjustment.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722390
|
||
[fixed and simplified tracking of colorbalance value changes]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-07-31 13:18:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: improve installation of properties.
|
||
Simplify the creation and installation process of properties, by first
|
||
accumulating them into a g_properties[] array, and next calling into
|
||
g_object_class_install_properties().
|
||
Also add missing docs and flags to some properties.
|
||
|
||
2014-07-31 10:48:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: code clean-ups.
|
||
Move code around in a more logical way. Introduce GST_VAAPISINK_CAST()
|
||
helper macro and use it wherever we know the object is a GstBaseSink or
|
||
any base class. Drop explicit initializers for values that have defaults
|
||
set to zero.
|
||
|
||
2014-07-31 10:37:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: re-indent all GstVaapiSink related source code.
|
||
|
||
2014-07-30 17:27:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: introduce separate backends.
|
||
Introduce new backends vtable so that to have clean separation between
|
||
display dependent code and common base code. That's a "soft" separation,
|
||
we don't really need dedicated objects.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722248
|
||
|
||
2014-07-30 16:47:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: drop unused "synchronous" mode.
|
||
Support for X11 "synchronous" mode was never implemented, and was only
|
||
to be useful for debugging. Drop that altogether, that's not going to
|
||
be useful in practice.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733985
|
||
|
||
2014-07-30 17:32:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: drop unused variables.
|
||
Drop obsolete, and now unused, video_buffer_pool and video_buffer_size
|
||
variables. They got merged into the GstVaapiPluginBase object.
|
||
|
||
2014-07-30 16:35:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: drop GLX rendering and fancy effects.
|
||
Rendering with GLX in vaapisink is kind of useless nowadays, including
|
||
OpenGL related fancy effects. Plain VA/GLX interfaces are also getting
|
||
deprecated in favor of EGL, or more direct buffer sharing with actual
|
||
GL textures.
|
||
Should testing of interop with GLX be needed, one could still be using
|
||
the modern cluttersink or glimagesink elements.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733984
|
||
|
||
2013-11-05 14:01:11 +0100 Holger Kaelberer <hk@getslash.de>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: listen to window size changes on X11.
|
||
Allow dynamic changes to the window, e.g. performed by the user, and
|
||
make sure to refresh its contents, while preserving aspect ratio.
|
||
In practice, Expose and ConfigureNotify events are tracked in X11
|
||
display mode by default. This occurs in a separte event thread, and
|
||
this is similar to what xvimagesink does. Any of those events will
|
||
trigger a reconfiguration of the window "soft" size, subsequently
|
||
the render-rect when necessary, and finally _expose() the result.
|
||
The default of handle_events=true can be changed programatically via
|
||
gst_x_overlay_handle_events().
|
||
Thanks to Fabrice Bellet for rebasing the patch.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=711478
|
||
[dropped XInitThreads(), cleaned up the code a little]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-07-29 15:47:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: decode and output all pending frames on normal EOS.
|
||
The gst_vaapidecode_decode_loop() function is called within a separate
|
||
task to fetch and output all frames that were decoded so far. So, if
|
||
the decoder_loop_status is forcibly set to EOS when _finish() is called,
|
||
then we are bound to exist the task without submitting the pending
|
||
frames.
|
||
If the downstream element error'ed out, then the gst_pad_push() would
|
||
propagate up an error and so we will get it right for cutting off
|
||
_finish() early in that case.
|
||
This is a regression from 6003596.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733897
|
||
|
||
2014-07-29 13:24:52 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2014-07-29 10:31:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* AUTHORS:
|
||
AUTHORS: updates.
|
||
|
||
2014-07-29 10:31:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2014-07-29 16:22:01 +1000 Matthew Waters <ystreet00@gmail.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: properly return from decode loop on downstream errors.
|
||
Fixes a hang/race on shutdown where _decode_loop() had already completed
|
||
its execution and _finish() was waiting on a GCond for decode_loop()
|
||
to complete. Also fixes the possible race where _finish() is called
|
||
but _decode_loop() endlessly returns before signalling completion
|
||
iff the decoder instance returns GST_FLOW_OK.
|
||
Found with: ... ! vaapidecode ! {glimagesink,cluttersink}
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733897
|
||
[factored out GST_VIDEO_DECODER_STREAM_UNLOCK() call]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-07-28 18:45:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.9.
|
||
|
||
2014-07-28 18:31:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix GstVideoOverlay::expose() implementation.
|
||
Now that we always track the currently active video buffer, it is
|
||
not necessary to automatically increase its reference since this is
|
||
implicitly performed in ::show_frame() through the get_input_buffer()
|
||
helper from GstVaapiPluginBase class.
|
||
This is a regression from a26df80.
|
||
|
||
2014-07-28 18:00:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
vaapidecode: simplify bufferpool configuration.
|
||
Rework the logics behind the configuration of an adequate bufferpool,
|
||
especially when OpenGL meta or additional capsfeatures are needed.
|
||
Besides, for GStreamer >= 1.4, the first capsfeatures that gets matched,
|
||
and that is not system memory, is now selected by default.
|
||
|
||
2014-07-28 16:43:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix auto-plugging of vaapisink element.
|
||
Make sure to propagate memory:VASurface capsfeature to srcpad caps
|
||
only for GStreamer >= 1.5 as the plug-in elements in GStreamer 1.4
|
||
core currently miss additional patches available in 1.5-git (1.6).
|
||
This is a temporary workaround.
|
||
|
||
2014-07-28 15:54:46 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: allow builds against GStreamer git (1.5.x).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733688
|
||
|
||
2014-07-28 14:20:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: fix build with GStreamer 1.4.0 release.
|
||
|
||
2014-03-04 19:40:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
debian: fix packaging for new naming scheme.
|
||
|
||
2014-07-28 11:52:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2014-07-28 11:39:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: mark support for GStreamer < 1.2 as deprecated.
|
||
Supporting anything thing below GStreamer 1.2 is asking for trouble
|
||
for keeping up with the required facilities to make efficient pipelines.
|
||
Users are invited to upgrade to the very latest GStreamer 1.2.x release,
|
||
at the minimum.
|
||
|
||
2014-07-28 11:35:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: mark support for GStreamer 0.10 as obsolete.
|
||
Support for GStreamer 0.10 is obsolete. i.e. it is no longer supported
|
||
and may actually be removed altogether for a future release. There is
|
||
no real point to maintain a build for such an ancient GStreamer version
|
||
that is not even supported upstream.
|
||
|
||
2014-07-28 10:25:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: allow a specific view component to be displayed.
|
||
If a multiview stream is decoded, multiple view components are submitted
|
||
as is downstream. It is the responsibility of the sink element to display
|
||
the required view components. By default, always select the frame buffer
|
||
that matches the view-id of the very first frame to be displayed.
|
||
However, introduce a "view-id" property to allow the selection of a
|
||
specific view component of interest to display.
|
||
|
||
2014-07-28 10:09:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: always keep the last displayed buffer around.
|
||
Always record the VA surface that is currently being rendered, no matter
|
||
the fact we are using texturedblit or overlay. That's because in some
|
||
occasions, we need to refresh or resize the displayed contents based on
|
||
new events. e.g. user-resized window.
|
||
Besides, it's simpler to track the last video buffer in GstVaapiSink than
|
||
through the base sink "last-sample".
|
||
|
||
2014-07-25 11:13:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: add support for "display-name" property.
|
||
Add a "display-name" property to vaapisink so that the end user could
|
||
select the desired output. Keep "display-name" in-line with the existing
|
||
"display" (GstVaapiDisplayXXX type).
|
||
So, for X11 or GLX, the "display-name" is the usual display name as we
|
||
know for XOpenDisplay(); for Wayland, the "display-name" is the name used
|
||
for wl_display_connect(); and for DRM, the "display-name" is actually the
|
||
DRI device name.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722247
|
||
|
||
2014-07-25 17:29:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
window: make gst_vaapi_window_reconfigure() thread-safe.
|
||
Ensure the X11 implementation for GstVaapiWindow::get_geometry() is
|
||
thread-safe by default, so that upper layer users don't need to handle
|
||
that explicitly.
|
||
|
||
2013-07-29 09:28:28 +0200 Holger Kaelberer <hk@getslash.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
window: allow for updating size from current geometry.
|
||
Add gst_vaapi_window_reconfigure() interface to force an update of
|
||
the GstVaapiWindow "soft" size, based on the current geometry of the
|
||
underlying native window.
|
||
This can be useful for instance to synchronize the window size when
|
||
the user changed it.
|
||
Thanks to Fabrice Bellet for rebasing the patch.
|
||
[changed interface to gst_vaapi_window_reconfigure()]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-07-25 16:53:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
window: re-indent all GstVaapiWindow related source code.
|
||
|
||
2014-07-25 11:24:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
display: add interface to retrieve the display name.
|
||
Add gst_vaapi_display_get_display_name() helper function to determine
|
||
the name associated with the underlying native display. Note that for
|
||
raw DRM backends, the display name is actually the device path.
|
||
|
||
2014-07-25 10:55:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: fix comparison of X11 display names.
|
||
Make sure to not only compare display host names, but also the actual
|
||
display number. The screen number does not need to be checked at this
|
||
time.
|
||
|
||
2014-07-25 15:52:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
vaapidecode: add support for VideoAlignment bufferpool option.
|
||
Always add VideoAlignment bufferpool option if the downstream element
|
||
expects its own pool to be used but does not offer it through a proper
|
||
propose_allocation() implementation for instance, and that the ALLOCATION
|
||
query does not expose the availability of the Video Meta API.
|
||
This fixes propagation of video buffer stride information to Firefox.
|
||
|
||
2014-07-25 15:44:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: always prefer native VA surface formats.
|
||
Make sure to always prefer native internal formats for the VA surfaces
|
||
that get allocated. Also disable "direct-rendering" mode in this case.
|
||
This is needed so that to make sure that anything that gets out of the
|
||
decoder, or anything that gets into the encoder, is in native format
|
||
for the hardware, and thus the driver doesn't need to perform implicit
|
||
conversions in there. Interop with SW elements is still available with
|
||
fast implementations of VA imaging APIs.
|
||
|
||
2014-07-24 11:58:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: disallow memory shares across buffers, use a copy.
|
||
Forbid shares of GstMemory instances, and rather make copy of it. This
|
||
effectively copies the GstMemory structure and enclosed metadata, but
|
||
this does not copy the VA surface contents itself. It should though.
|
||
This fixes preroll and makes sure to not download garbage for the first
|
||
frame when a SW rendering sink is used.
|
||
|
||
2014-07-24 06:46:22 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
vaapivideomemory: use an image pool to cache objects.
|
||
Use an image pool to hold VA images to be used for downloads/uploads
|
||
of contents for the associated surface.
|
||
This is an optmization for size. So, instead of creating as many VA
|
||
images as there are buffers (then VA surfaces) allocated, we only
|
||
maintain a minimal set of live VA images, thus preserving memory
|
||
resources.
|
||
|
||
2014-07-24 00:14:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: forbid R/W mappings if non direct-rendering mode.
|
||
Disable read-write mappings if "direct-rendering" is not supported.
|
||
Since the ordering of read and write operations is not specified,
|
||
this would require to always download the VA surface on _map(), then
|
||
commit the temporary VA image back to the VA surface on _unmap().
|
||
Some SW decoding plug-in elements still use R/W mappings though.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733242
|
||
|
||
2014-07-23 23:49:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: minor code clean-ups.
|
||
Fix error messages introduced in the previous commit for the _map()
|
||
imaplementation. Also use the new get_image_data() helper function
|
||
to determine the base pixels data buffer from a GstVaapiImage when
|
||
updating the video info structure from it.
|
||
|
||
2014-07-23 18:54:13 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
vaapivideomemory: add support for raw pixels mappings.
|
||
Allow raw pixels of the whole frame to be mapped read-only. i.e. in
|
||
cases where the buffer pool is allocated without VideoMeta API, thus
|
||
individual planes cannot be mapped.
|
||
This is initial support for Firefox >= 30.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=731886
|
||
|
||
2014-07-03 18:41:11 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: fix determination of the surface pool format.
|
||
While creating the vaapi video allocator, make sure the associated
|
||
surface pool has correct format instead of defaulting to NV12 video
|
||
format even though there is no direct rendering support.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732691
|
||
|
||
2014-07-23 18:01:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
vaapivideomemory: fix association of surface to proxy.
|
||
Make sure to always update the VA surface pointer whenever the proxy
|
||
changes. This used to only work when the VA surface is written to, in
|
||
interop with SW element ("upload" feature), and this now fixes cases
|
||
when the VA surface is needed for reading, in interop with SW element
|
||
("download" feature).
|
||
|
||
2014-07-23 10:23:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: expose I420 format for interop with SW elements.
|
||
Always expose I420 format by default when the VA surface could be
|
||
mapped for interoperability with non harware accelerated elements.
|
||
However, the default behaviour remains the auto-plugging of vaapi
|
||
elements, down to the sink.
|
||
Side effect: "direct-rendering" mode is also disabled most of the
|
||
times as plain memcpy() from uncached speculative write combining
|
||
memory is not going to be efficient enough.
|
||
|
||
2014-07-22 18:54:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: allow download capability to vaapidecode element.
|
||
Fix support for VA surface download capability in vaapidecode element
|
||
for GStreamer >= 1.2. This is a fix to supporting libva-vdpau-driver,
|
||
but also the libva-intel-driver while performing hardware accelerated
|
||
conversions from the native VA surface format (NV12) to the desired
|
||
output VA image format.
|
||
For instance, this fixes pipelines involving vaapidecode ! xvimagesink.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733243
|
||
|
||
2014-07-17 01:51:36 +0200 Fabrice Bellet <fabrice@bellet.info>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
decoder: mpeg4: fix picture decoder return value for skipped frames.
|
||
The picture decoder should return GST_VAAPI_DECODER_STATUS_DROP_FRAME
|
||
when a frame should be skipped, so the stream processing is not stalled.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733324
|
||
|
||
2014-07-04 15:13:32 +1000 Jan Schmidt <jan@centricular.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
decoder: mpeg2: respect any input PTS provided for a frame.
|
||
The timestamp generator in gstvaapidecoder_mpeg2.c always interpolated
|
||
frame timestamps within a GOP, even when it's been fed input PTS for
|
||
every frame.
|
||
That leads to incorrect output timestamps in some situations - for example
|
||
live playback where input timestamps have been scaled based on arrival time
|
||
from the network and don't exactly match the framerate.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732719
|
||
|
||
2014-01-22 08:20:59 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
GstVaapiObject: make gst_vaapi_object_new() more robust.
|
||
Forbid GstVaapiObject to be created without an associated klass spec.
|
||
It is mandatory that the subclass implements an adequate .finalize()
|
||
hook, so it shall provide a valid GstVaapiObjectClass.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722757
|
||
[made non-NULL klass argument to gst_vaapi_object_new() a requirement]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-21 15:43:57 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
GstVaapiObject: initialize the derived object data with init() hook.
|
||
Call the subclass .init() function in gst_vaapi_object_new(), if
|
||
needed. The default behaviour is to zero initialize the subclass
|
||
object data, then the .init() function can be used to initialize
|
||
fields to non-default values, e.g. VA object ids to VA_INVALID_ID.
|
||
Also fix the gst_vaapi_object_new() description, which was merely
|
||
copied from GstVaapiMiniObject.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722757
|
||
[changed to always zero initialize the subclass]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-06-13 21:45:04 +0100 Lionel Landwerlin <llandwerlin@gmail.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: make decoder work with playbin
|
||
When playbin/decodebin builds the pipeline, it puts decoders and sinks
|
||
into different bins and forwards the queries from bins to bins. So in
|
||
the initials steps the pipeline is built iteratively by playbin and
|
||
looks like this :
|
||
[filesrc]
|
||
[filesrc] -> [typefind]
|
||
[filesrc] -> [typefind] -> [demuxer]
|
||
[filesrc] -> [typefind] -> [demuxer] -> [decoder]
|
||
At this point the decoder is asked for its SRC caps and it will make a
|
||
choice based on what gst_pad_peer_query_caps() returns. The problem is
|
||
that the caps returns at that point includes caps features like ANY,
|
||
essentially because playbin can plug in additional elements like
|
||
videoscale, videoconv or deinterlace.
|
||
This patch adds a another call to
|
||
gst_vaapi_find_preferred_caps_feature() when the decoder decides its
|
||
allocation, to make sure we asks the downstream elements when the
|
||
entire pipeline has been built.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=731645
|
||
|
||
2014-06-27 11:57:11 +0100 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: don't let tmp_rect go out of scope.
|
||
A compiler change showed me that tmp_rect went out of scope before
|
||
it was used. Move it to the beginning of the function instead.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726363
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
[added guards for GStreamer 0.10 builds]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-07-03 22:44:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* AUTHORS:
|
||
AUTHORS: updates.
|
||
|
||
2014-07-03 22:34:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: updates.
|
||
Drop references to deprecated plugins (vaapiupload, vaapidownload),
|
||
mention that support for GStreamer 0.10 is deprecated, make overview
|
||
more descriptive in certain aspects.
|
||
|
||
2014-07-03 22:21:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2014-07-03 19:42:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
* configure.ac:
|
||
build: mention that support for GStreamer 0.10 is deprecated.
|
||
|
||
2014-07-03 17:17:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
build: fix for GStreamer 0.10.
|
||
|
||
2014-07-03 18:01:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-GStreamer-1.2.patch:
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-older-GStreamer-1.x-stacks.patch:
|
||
* patches/videoparsers/series.frag:
|
||
build: fix for GStreamer 1.0.x.
|
||
|
||
2014-07-03 13:48:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: detect incorrectly paired fields in frames.
|
||
When a DPB flush is required, e.g. at a natural and of stream or issued
|
||
explicitly through an IDR, try to detect any frame left in the DPB that
|
||
is interlaced but does not contain two decoded fields. In that case, mark
|
||
the picture as having a single field only.
|
||
This avoids a hang while decoding tv_cut.mkv.
|
||
|
||
2014-07-03 11:13:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: simplify the DPB output process.
|
||
Simplify the dpb_output() function to exclusively rely on the frame store
|
||
buffer to output, since this is now always provided. Besides, also fix
|
||
cases where split fields would not be displayed.
|
||
This is a regression from f48b1e0.
|
||
|
||
2014-07-01 17:20:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-fix-and-optimize-NAL-collection-function.patch:
|
||
* patches/videoparsers/0005-h264parse-introduce-new-state-tracking-variables.patch:
|
||
* patches/videoparsers/0006-h264parse-improve-conditions-for-skipping-NAL-units.patch:
|
||
* patches/videoparsers/0007-h264parse-fix-collection-of-access-units-to-preserve.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: drop patches merged upstream.
|
||
0003-h264parse-fix-and-optimize-NAL-collection-function.patch
|
||
0005-h264parse-introduce-new-state-tracking-variables.patch
|
||
0006-h264parse-improve-conditions-for-skipping-NAL-units.patch
|
||
0007-h264parse-fix-collection-of-access-units-to-preserve.patch
|
||
|
||
2014-07-01 17:18:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix memory leak in PPS.
|
||
Cope with latest changes from codecparsers/h264. It is now required
|
||
to explicitly clear the GstH264PPS structure as it could contain
|
||
additional allocations (slice_group_ids).
|
||
|
||
2014-07-01 17:13:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 2d53b69.
|
||
c4ace00 h264parse: fix collection of access units to preserve config headers
|
||
0f9f7c9 h264parse: improve conditions for skipping NAL units
|
||
9ffb25c h264parse: introduce new state tracking variables
|
||
64955d3 h264parse: fix and optimize NAL collection function
|
||
13cd2a3 h264: clarifications and documentation fixes
|
||
53e7dd1 h264: fix identification of EOSEQ and EOS NALs
|
||
18f0de0 h264: fix memory leak in GstH264PPS
|
||
fdcb54c h264: fix typo in GstH264VUIParams description
|
||
fd4dae9 vp8: move up built-in range decoder private data
|
||
|
||
2014-06-30 19:01:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
decoder: propagate MVC metadata ("view-id", head of multiview set).
|
||
Add new GstVaapiSurfaceProxy flag FFB, which means "first frame in
|
||
bundle", and really expresses the first view component of a multi
|
||
view coded frame. e.g. in H.264 MVC, the surface proxy has flag FFB
|
||
set if VOIdx = 0.
|
||
Likewise, new API is exposed to retrieve the associated "view-id".
|
||
|
||
2014-06-30 18:46:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: propagate "one-field" flags.
|
||
Allow decoders to set the "one-field" attribute when the decoded frame
|
||
genuinely has a single field, or if the second field was mis-decoded but
|
||
we still want to display the first field.
|
||
|
||
2014-06-30 18:34:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: output decoded frames only once.
|
||
Make sure to output the decoded picture, and push the associated
|
||
GstVideoCodecFrame, only once. The frame fully represents what needs
|
||
to be output, included for interlaced streams. Otherwise, the base
|
||
GstVideoDecoder class would release the frame twice.
|
||
Anyway, the general process is to output decoded frames only when
|
||
they are complete. By complete, we mean a full frame was decoded or
|
||
both fields of a frame were decoded.
|
||
|
||
2014-06-30 16:12:52 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: decode current picture earlier.
|
||
Slightly optimize decoding process by submitting the current VA surface
|
||
for decoding earlier to the hardware, and perform the reference picture
|
||
marking process and DPB update process afterwards.
|
||
This is a minor optimization to let the video decode engine kick in work
|
||
earlier, thus improving parallel resources utilization.
|
||
|
||
2014-06-30 16:09:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix output of second field when first field is not in DPB.
|
||
Fix decoding of interlaced streams where a first field (e.g. B-slice)
|
||
was immediately output and the current decoded field is to be paired
|
||
with that former frame, which is no longer in DPB.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=701340
|
||
|
||
2014-06-30 11:06:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: slightly optimize the process to detect new pictures.
|
||
Optimize the process to detect new pictures or start of new access
|
||
units by checking if the previous NAL unit was the end of a picture,
|
||
or the end of the previous access unit.
|
||
|
||
2014-06-13 15:42:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: handle access unit ("au") optimization.
|
||
Optimize parsing when buffers are supplied with access unit alignment.
|
||
This helps determining faster when the end of an access unit is reached.
|
||
|
||
2014-06-28 07:25:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix tracking of DPB size changes.
|
||
Add support for MVC streams with multiple SPS and subset SPS headers
|
||
emitted regularly, e.g. at around every I-frame. Track the maximum
|
||
number of views in ensure_context() and really reset the DPB size to
|
||
the expected value, always. i.e. even if it decreased. dpb_reset()
|
||
only cares of ensuring the DPB allocation.
|
||
|
||
2014-06-27 20:44:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix the DPB compaction process.
|
||
Fix the compaction process when the DPB is cleared for a specific
|
||
view, i.e. fix the process of filling in the holes resulting from
|
||
removing frame buffers matching the current picture.
|
||
|
||
2014-06-27 16:38:03 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: generate new SPS only when codec config changed.
|
||
It is not necessary to periodically send SPS or subset SPS headers.
|
||
This is up to the upper layer (e.g. transport layer) to decide on
|
||
if/how to periodically submit those. For now, only generate new SPS
|
||
or subset SPS headers when the codec config changed.
|
||
Note: the upper layer could readily determine the config headers
|
||
(SPS/PPS) through the gst_vaapi_encoder_h264_get_codec_data() function.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732083
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-06-27 18:43:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: track encoder config changes.
|
||
Track and report when encoder configuration changed. For now, this covers
|
||
resolution, profile/level and bitrate changes.
|
||
|
||
2014-06-27 13:15:13 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: add pixel-aspect-ratio to VUI parameters.
|
||
Report sample aspect ratio (SAR) as present, and make it match what
|
||
we have obtained from the user as pixel-aspect-ratio (PAR). i.e. the
|
||
VUI parameter aspect_ratio_info_present_flag now defaults to TRUE.
|
||
|
||
2014-06-27 00:49:34 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix number of anchor and non-anchor reference pictures.
|
||
Set the value of num_anchor_refs_l0, num_anchor_refs_l1, num_non_anchor_refs_l0,
|
||
and num_non_anchor_refs_l1 to zero since the inter-view prediction is not yet
|
||
supported.
|
||
|
||
2014-06-27 10:37:38 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix timing_info_present_flag value in subset SPS.
|
||
When the seq_parameter_set_data() syntax structure is present in a subset
|
||
sequence parameter set and vui_parameters_present_flag is equal to 1, then
|
||
timing_info_present_flag shall be equal to 0 (H.7.4.2.1.1).
|
||
|
||
2014-06-26 14:39:52 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: add cpbBrNalFactor values for MVC profiles.
|
||
|
||
2014-06-26 14:51:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-add-initial-support-for-MVC-NAL-units.patch:
|
||
h264parse: fix detection of access unit boundaries for MVC.
|
||
The gst_h264_parse_collect_nal() function is a misnomer. In reality,
|
||
this function is used to determine access unit boundaries, i.e. that
|
||
is the key function for alignment=au output format generation.
|
||
|
||
2014-06-26 14:49:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0007-h264parse-fix-collection-of-access-units-to-preserve.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: fix collection of access units to preserve config headers.
|
||
Always use a GstAdapter when collecting access units (alignment="au")
|
||
in either byte-stream or avcC format. This is required to properly
|
||
preserve config headers like SPS and PPS when invalid or broken NAL
|
||
units are subsequently parsed.
|
||
More precisely, this fixes scenario like:
|
||
<SPS> <PPS> <invalid-NAL> <slice>
|
||
where we used to reset the output frame buffer when an invalid or
|
||
broken NAL is parsed, i.e. SPS and PPS NAL units were lost, thus
|
||
preventing the next slice unit to be decoded, should this also
|
||
represent any valid data.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732203
|
||
|
||
2014-06-26 14:48:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-add-initial-support-for-MVC-NAL-units.patch:
|
||
* patches/videoparsers/0006-h264parse-improve-conditions-for-skipping-NAL-units.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: improve conditions for skipping NAL units.
|
||
Carefully track cases when skipping broken or invalid NAL units is
|
||
necessary. In particular, always allow NAL units to be processed
|
||
and let that gst_h264_parse_process_nal() function decide on whether
|
||
the current NAL needs to be dropped or not.
|
||
This fixes parsing of streams with SEI NAL buffering_period() message
|
||
inserted between SPS and PPS, or SPS-Ext NAL following a traditional
|
||
SPS NAL unit, among other cases too.
|
||
Practical examples from the H.264 AVC conformance suite include
|
||
alphaconformanceG, CVSE2_Sony_B, CVSE3_Sony_H, CVSEFDFT3_Sony_E
|
||
when parsing in stream-format=byte-stream,alignment=au mode.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732203
|
||
|
||
2014-06-26 14:45:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-add-initial-support-for-MVC-NAL-units.patch:
|
||
* patches/videoparsers/0005-h264parse-introduce-new-state-tracking-variables.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: introduce new state tracking variables.
|
||
Improve parser state tracking by introducing new flags reflecting
|
||
it: "got-sps", "got-pps" and "got-slice". This is an addition for
|
||
robustness purposes.
|
||
Older have_sps and have_pps variables are kept because they have
|
||
a different meaning. i.e. they are used for deciding on when to
|
||
submit updated caps or not, and rather mean "have new SPS/PPS to
|
||
be submitted?"
|
||
|
||
2014-06-26 14:39:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0004-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: default to byte-stream/nalu format (Annex B).
|
||
Always default to stream-format=byte-stream,alignment=nalu if avcC
|
||
format was not detected. This is the natural stream format specified
|
||
in the standard (Annex.B): a series of NAL units prefixed with the
|
||
usual start code.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732167
|
||
|
||
2014-06-26 14:37:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* patches/videoparsers/0003-h264parse-fix-and-optimize-NAL-collection-function.patch:
|
||
* patches/videoparsers/series.frag:
|
||
h264parse: fix and optimize NAL collection function.
|
||
Use gst_h264_parser_identify_nalu_unchecked() to identify the next
|
||
NAL unit. We don't want to parse the full NAL unit, but only the
|
||
header bytes and possibly the first RBSP byte for identifying the
|
||
first_mb_in_slice syntax element.
|
||
Also fix check for failure when returning from that function. The
|
||
only success condition for that is GST_H264_PARSER_OK, so use it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732154
|
||
|
||
2014-06-26 11:39:38 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix NAL unit types in packed headers.
|
||
Submit Prefix NAL headers (nal_unit_type = 14) before every packed
|
||
slice header (nal_unit_type = 1 or 5) only for the base view. In non
|
||
base views, a Coded Slice Extension NAL header (nal_unit_type = 20)
|
||
is required, with an appropriate nal_unit_header_mvc_extension() in
|
||
the NAL header bytes.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732083
|
||
|
||
2014-06-25 22:05:52 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: add missing field in packed Subset SPS header.
|
||
Write the missing num_level_values_signalled_minus1 syntax element
|
||
into the packed header for subset sequence parameter set.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732083
|
||
|
||
2014-06-25 22:26:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix marking of non-reference picture into DPB.
|
||
Fix search for a picture in the DPB that has a lower POC value than
|
||
the current picture. The dpb_find_lowest_poc() function will return
|
||
a picture with the lowest POC in DPB and that is marked as "needed
|
||
for output", but an additional check against the actual POC value
|
||
of the current picture is needed.
|
||
This is a regression from 1c46990.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732130
|
||
|
||
2014-06-19 17:08:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix DPB clear when no decoding actually started.
|
||
Fix dpb_clear() to clear previous frame buffers only if they actually
|
||
exist to begin with. If the decoder bailed out early, e.g. when it
|
||
does not support a specific profile, that array of previous frames
|
||
might not be allocated beforehand.
|
||
|
||
2014-02-06 08:30:10 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
decoder: h264: add support for NALU "alignment" optimization.
|
||
We can avoid scanning for start codes again if the bitstream is fed
|
||
in NALU chunks. Currently, we always scan for start codes, and keep
|
||
track of remaining bits in a GstAdapter, even if, in practice, we
|
||
are likely receiving one GstBuffer per NAL unit. i.e. h264parse with
|
||
"nal" alignment.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=723284
|
||
[use gst_adapter_available_fast() to determine the top buffer size]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-06-18 18:53:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix caps to report interlace-mode accordingly.
|
||
The `vaapipostproc' element could never determine if the H.264 stream
|
||
was interlaced, and thus always assumed it to be progressive. Fix the
|
||
H.264 decoder to report interlace-mode accordingly, thus allowing the
|
||
vaapipostproc element to automatically enable deinterlacing.
|
||
|
||
2014-06-19 13:35:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: don't crash with dynamic framerate (0/1).
|
||
Avoid reaching an assert if dynamic framerates (0/1) are used. One
|
||
way to solve this problem is to just stick field_duration to zero.
|
||
However, this means that, in presence of interlaced streams, the
|
||
very first field will never be displayed if precise presentation
|
||
timestamps are honoured.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=729604
|
||
|
||
2014-02-07 12:27:50 +0000 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: create filter surface pool if it does not exist yet.
|
||
ensure_srcpad_buffer_pool() tries to avoid unnecessarily deleting and
|
||
recreating filter_pool. Unfortunately, this also meant it didn't create
|
||
it if it did not exist.
|
||
Fix it to always create the buffer pool if it does not exist.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=723834
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
2013-12-12 10:01:13 +0800 Zhao, Halley <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: reset deinterlacer state when there is a discontinuity.
|
||
Reset deinterlacer state, i.e. past reference frames used for advanced
|
||
deinterlacing, when there is some discontinuity detected in the course
|
||
of processing source buffers.
|
||
This fixes support for advanced deinterlacing when a seek occurred.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720375
|
||
[fixed type of pts_diff variable, fetch previous buffer PTS from the
|
||
history buffer, reduce heuristic for detecting discontinuity]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-06-18 16:16:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: add support for crop regions in VPP mode.
|
||
Apply video cropping regions stored in GstVideoCropMeta, or in older
|
||
GstVaapiSurfaceProxy representation, to VPP pipelines. In non-VPP modes,
|
||
the crop meta are already propagated to the output buffers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720730
|
||
|
||
2014-03-14 17:49:40 +0000 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: make deinterlace-mode behave as expected.
|
||
deinterlace-mode didn't behave in the way you'd expect if you have
|
||
past experience of the deinterlace element. There were two bugs:
|
||
1. "auto" mode wouldn't deinterlace "interleaved" buffers, only "mixed".
|
||
2. "force" mode wouldn't deinterlace "mixed" buffers flagged as progressive.
|
||
Fix these up, and add assertions and error messages to detect cases that
|
||
aren't handled.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726361
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-15 16:36:29 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: do not discard video info props when the format changed.
|
||
gst_video_info_set_format() does not preserve video info properties. In
|
||
order to keep important information in the caps such as interlace mode,
|
||
framerate, pixel aspect ratio, ... we need to manually copy back those
|
||
properties after setting the new video format.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722276
|
||
|
||
2014-02-23 01:43:39 +1100 Matthew Waters <ystreet00@gmail.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: plug a memory leak.
|
||
It can happen that there is a pool provided that does not advertise
|
||
the vappivideometa. We should unref that pool before using our own.
|
||
Discovered with vaapidecode ! {glimagesink,cluttersink}
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724957
|
||
[fixed compilation by adding the missing semi-colon]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-06-18 13:47:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: parse source data until a frame is obtained.
|
||
Parse any pending data until a complete frame is obtained. This is a
|
||
memory optimization to avoid expansion of video packets stuffed into
|
||
the GstAdapter, and a fix to EOS condition to detect there is actually
|
||
pending data that needs to be decoded, and subsequently output.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=731831
|
||
|
||
2014-06-05 15:32:29 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix multiple slices support in packed headers mode.
|
||
Handle packedi slice headers and packed raw data on a per-slice basis,
|
||
which is necessary for multi slice encoding.
|
||
|
||
2014-06-05 15:30:38 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
encoder: add infrastructure for per-slice handling of packed headers.
|
||
The packed slice header and packed raw data need to be paired with
|
||
the submission of VAEncSliceHeaderParameterBuffer. So handle them
|
||
on a per-slice basis insted of a per-picture basis.
|
||
[removed useless initializer]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-03-07 17:40:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix initialization with "drm" display type.
|
||
Force early initializatin of the GstVaapiDisplay so that to make sure
|
||
that the sink element display object is presented first to upstream
|
||
elements, as it will be correctly featuring the requested display type
|
||
by the user.
|
||
Otherwise, we might end up in situations where a VA/X11 display is
|
||
initialized in vaapidecode, then we try VA/DRM display in vaapisink
|
||
(as requested by the "display" property), but this would cause a failure
|
||
because we cannot acquire a DRM display that was previously acquired
|
||
through another backend (e.g. VA/X11).
|
||
|
||
2014-03-07 17:38:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: fix initialization with foreign context.
|
||
When a new display is settled through GstElement::set_context() (>= 1.2),
|
||
or GstVideoContext::set_context() (<= 1.0), then we shall also update the
|
||
associated display type.
|
||
|
||
2014-04-28 17:44:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapiparse.c:
|
||
* gst/vaapi/gstvaapiparse.h:
|
||
* patches/Makefile.am:
|
||
* patches/videoparsers/0001-plugins-compile-the-built-in-video-parsers-as-vaapip.patch:
|
||
* patches/videoparsers/0002-h264parse-fix-build-with-GStreamer-1.2.patch:
|
||
* patches/videoparsers/0003-h264parse-add-initial-support-for-MVC-NAL-units.patch:
|
||
* patches/videoparsers/Makefile.am:
|
||
* patches/videoparsers/series.frag:
|
||
plugins: add built-in video parsers as "vaapiparse" element.
|
||
The built-in video parsers elements are built into a single DSO named
|
||
libgstvaapi_parse.so. The various video parsers could be accessed as
|
||
vaapiparse_CODEC.
|
||
For now, this only includes a modified version of h264parse so that to
|
||
support H.264 MVC encoded streams.
|
||
|
||
2014-06-13 11:36:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: cope with new gst_h264_quant_matrix_*() interfaces.
|
||
New gst_h264_quant_matrix_*_get_raster_from_zigzag() were renamed
|
||
from gst_h264_video_quant_matrix_*_get_raster_from_zigzag().
|
||
|
||
2014-06-13 11:34:07 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit d6325ac.
|
||
7d8d045 h264parse: use new gst_h264_video_calculate_framerate()
|
||
d2f965a h264parse: set field_pic_flag when parsing a slice header
|
||
24c15b8 Import h264parse
|
||
a9283e5 bytereader: Use concistant derefence method
|
||
a8252c6 bytereader: Use pointer instead of index access
|
||
b1bebfc Import GstBitReader and GstByteReader
|
||
2f58788 h264: recognize SVC NAL units
|
||
4335da5 h264: fix SPS copy code for MVC
|
||
cf9b6dc h264: fix quantization matrix conversion routine names
|
||
b11ce2a h264: add gst_h264_video_calculate_framerate()
|
||
126dc6f add C++ guards for MPEG-4 and VP8 parsers
|
||
|
||
2014-06-10 18:30:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: factor out DPB pruning for MVC.
|
||
Factor out the removal process of unused inter-view only reference
|
||
pictures from the DPB, prior to the possible insertion of the current
|
||
picture.
|
||
Ideally, the compiler could still opt for generating two loops. But
|
||
at least, the code is now clearer for maintenance.
|
||
|
||
2014-06-10 17:42:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: clean-ups.
|
||
Fix GST_VAAPI_PICTURE_IS_{INTER_VIEW,ANCHOR}() definitions to use
|
||
the base GST_VAAPI_PICTURE_FLAG_IS_SET() macro.
|
||
|
||
2014-06-10 16:07:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: improve pruning of unused MVC inter-view frames.
|
||
Improve process for the removal of pictures from DPB before possible
|
||
insertion of the current picture (C.4.4) for H.264 MVC inter-view only
|
||
reference components. In particular, handle cases where picture to be
|
||
inserted is not the last one of the access unit and if it was already
|
||
output and is no longer marked as used for reference, including for
|
||
decoding next view components within the same access unit.
|
||
|
||
2014-06-03 17:36:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: improve DPB bumping process for MVC.
|
||
While invoking the DPB bumping process in presence of many views,
|
||
it could be necessary to output previous pictures that are ready,
|
||
in a whole. i.e. emitting all view components from the very first
|
||
view order index zero to the very last one in its original access
|
||
unit; and not starting from the view order index of the picture
|
||
that caused the DPB bumping process to be invoked.
|
||
As a reminder, the maximum number of frames in DPB for MultiView
|
||
High profile with more than 2 views is not necessarily a multiple
|
||
of the number of views.
|
||
This fixes decoding of MVCNV-4.264.
|
||
|
||
2014-06-06 17:56:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix inter-view references array growth.
|
||
Let the utility layer handle dynamic growth of the inter-view pictures
|
||
array. By definition, setting a new size to the array will effectively
|
||
grow the array, but would also fill in the newly created elements with
|
||
empty entries (NULL), thus also increasing the reported length, which
|
||
is not correct.
|
||
|
||
2014-06-03 17:36:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: reduce ReferenceFrames entries to the essential set.
|
||
When decoding Multiview High profile streams with a large number of
|
||
views, it is not possible to make the VAPictureParameterBufferH264.
|
||
ReferenceFrames[] array hold the complete DPB, with all possibly
|
||
active pictures to be used for inter-view prediction in the current
|
||
access unit.
|
||
So reduce the scope of the ReferenceFrames[] array to only include
|
||
the set of reference pictures that are going to be used for decoding
|
||
the current picture. Basically, this is a union of all RefPicListX[]
|
||
array, for all slices constituting the decoded picture.
|
||
|
||
2014-06-04 19:10:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix MVC inter-view prediction process.
|
||
The inter-view reference components and inter-view only reference
|
||
components that are included in the reference picture lists shall
|
||
be considered as not being marked as "used for short-term reference"
|
||
or "used for long-term reference". This means that reference flags
|
||
should all be removed from VAPictureH264.flags.
|
||
This fixes decoding of MVCNV-2.264.
|
||
|
||
2014-06-04 19:03:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix detection of profile changes for MVC.
|
||
If the VA driver exposes ad-hoc H.264 MVC profiles, then we have to
|
||
be careful to detect profiles changes and not reset the underlying
|
||
VA context erroneously. In MVC situations, we could indeed get a
|
||
profile_idc change for every SPS that gets activated, alternatively
|
||
(base-view -> non-base view -> base-view, etc.).
|
||
An improved fix would be to characterize the exact profile to use
|
||
once and for all when SPS NAL units are parsed. This would also
|
||
allow for fallbacks to a base-view decoding only mode.
|
||
|
||
2014-06-03 14:30:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: drop extraneous definitions.
|
||
Re-use definitions from the codecparser headers instead of duplicating
|
||
them here again. That covers NALU definitions and slice types.
|
||
|
||
2014-04-01 11:26:04 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: remove unnecessary calcualtion of max_pic_order_cnt.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=727418
|
||
|
||
2014-04-01 14:23:56 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: don't allow CABAC with Extended profile.
|
||
The H.264 specification does not support CABAC entropy coding for the
|
||
Extended profile.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=727418
|
||
|
||
2014-05-07 00:12:39 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: use packed headers mode for MVC encoding.
|
||
Exclusively use VA drivers that support raw packed headers for encoding.
|
||
i.e. simply submit packed headers Subset SPS and Prefix NAL units. This
|
||
provides for better compatibility accross the various VA drivers and HW
|
||
generations since no particular API is needed beyond what readily exists.
|
||
|
||
2014-05-07 00:09:45 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: add support for packed slice headers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722905
|
||
|
||
2014-05-07 00:09:19 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: store subset sps to generate the codec-data
|
||
Store the SubsetSPS nal unit which we need for MVC specific
|
||
codec_data generation.
|
||
|
||
2014-05-07 00:08:33 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix MVC pipeline hang while encoding with B-frames.
|
||
Since we are encoding each view independently from each other, we
|
||
need a higher number of pre-allocated surfaces to be used as the
|
||
reconstructed frames. For Stereo High profile encoding, this means
|
||
to effectively double the number of frames to be stored in the DPB.
|
||
|
||
2014-02-17 15:51:43 +0800 Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
encoder: h264: add initial support for H.264 Stereo High profile.
|
||
Add initial support for Subset SPS, Prefix NAL and Slice Extension NAL
|
||
for non-base-view streams encoding, and the usual SPS, PPS and Slice
|
||
NALs for base-view encoding.
|
||
The H.264 Stereo High profile encoding mode will be turned on when the
|
||
"num-views" parameter is set to 2. The source (raw) YUV frames will be
|
||
considered as Left/Right view, alternatively.
|
||
Each of the two views has its own frames reordering pool and reference
|
||
frames list management system. Inter-view references are not supported
|
||
yet, so the views are encoded independently from each other.
|
||
Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
|
||
[limited to Stereo High profile per the definition of MAX_NUM_VIEWS]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-02-17 11:10:26 +0800 Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: wrap pools for refs and frames reordering.
|
||
Create structures to maintain the reference frames list (RefPool) and
|
||
frames reordering (ReorderPool) logic.
|
||
This is a prerequisite for H.264 MVC support.
|
||
Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
2014-02-14 15:33:15 +0800 Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: add provisional support for subset SPS headers.
|
||
Add provisions to write subset SPS headers to the bitstream in view
|
||
to supporting the H.264 MVC specification.
|
||
This assumes the libva "staging" branch is in use.
|
||
Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
2013-12-18 13:47:32 +0800 Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
utils: add H.264 MVC profiles.
|
||
Add "MultiView High" and "Stereo High" definitions.
|
||
Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
|
||
[require VA-API >= 0.35.2 for MVC profiles]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-06-02 16:25:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
utils: only enable VP8 profiles for newer VA-API versions.
|
||
VP8 decoding API appeared in VA-API >= 0.35.0. So, disable mappings
|
||
involving VP8 codec on earlier versions of the API.
|
||
|
||
2014-05-22 10:04:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: compute view ids only once per slice.
|
||
Optimize lookups of view ids / view order indices by caching the result
|
||
of the calculatiosn right into the GstVaapiParserInfoH264 struct. This
|
||
terribly simplifies is_new_access_unit() and find_first_field() functions.
|
||
|
||
2014-05-21 17:57:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add support for MVC interlaced streams.
|
||
Fix support for MVC Stereo High profile streams with interlaced frames.
|
||
Also improve the detection logic of the first field.
|
||
|
||
2014-05-20 18:08:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add MVC profiles compatibility logic.
|
||
Add safe fallbacks for MVC profiles:
|
||
- all MultiView High profile streams with 2 views at most can be decoded
|
||
with a Stereo High profile compliant decoder ;
|
||
- all Stereo High profile streams with only progressive views can be
|
||
decoded with a MultiView High profile compliant decoder ;
|
||
- all drivers that support slice-level decoding could normally support
|
||
MVC profiles when the DPB holds at most 16 frames.
|
||
|
||
2014-05-02 14:58:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: h264: add initial support for MVC.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=721772
|
||
|
||
2014-05-01 19:16:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: dynamically allocate the DPB.
|
||
Dynamically allocate the Decoded Picture Buffer (DPB) and add provisions
|
||
for supporting the MVC allocation requirements.
|
||
|
||
2014-05-01 19:33:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix detection of access unit boundaries.
|
||
In order to have a stricter conforming implementation, we need to carefully
|
||
detect access unit boundaries. Additional operations could be necessary to
|
||
perform at those boundaries.
|
||
|
||
2013-03-13 11:44:38 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: detect the first VCL NAL unit of a picture for MVC.
|
||
Detect the first VCL NAL unit of a picture for MVC, based on the
|
||
view_id as per H.7.4.1.2.4. Note that we only need to detect new
|
||
view components.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-10-31 19:32:55 +0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: properly handle Prefix NAL units.
|
||
Always cache the previous NAL unit so that we could check whether
|
||
there is a Prefix NAL unit immediately preceding the current slice
|
||
or IDR NAL unit. In that case, the NAL unit metadata is copied into
|
||
the current NAL unit. Otherwise, some default values are inferred,
|
||
tentatively. e.g. view_id shall be set to 0 and inter_view_flag to 1.
|
||
[infer default values for slice if previous NAL was not a Prefix]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-02-28 15:59:55 +0800 Xiaowei Li <xiaowei.a.li@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add support for MVC base views.
|
||
Allow decoding for base views of MVC encoded streams. For now, just skip
|
||
the slice extension and prefix NAL units, and skip non-base view frames.
|
||
Signed-off-by: Xiaowei Li <xiaowei.a.li@intel.com>
|
||
[fixed memory leak, improved check for MVC NAL units]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-05-04 14:49:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: simplify storage of decoded picture into DPB.
|
||
Factor out process by which the decoded picture with the lowest POC
|
||
is found, and possibly output. Likewise, the storage and marking of
|
||
a reference decoded, or non-reference decoded picture, into the DPB
|
||
could also be simplified as they mostly share the same operations.
|
||
|
||
2014-05-02 22:40:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: minor clean-ups.
|
||
Make init_picture_ref_lists() more consistent with other functions
|
||
related to the reference marking process by supplying the current
|
||
picture as argument.
|
||
|
||
2014-05-20 11:36:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
display: add utility function to query VA driver name.
|
||
Add gst_vaapi_display_get_vendor_string() helper function to query
|
||
the underlying VA driver name. The display object owns the resulting
|
||
string, so it shall not be deallocated.
|
||
That function is thread-safe. It could be used for debugging purposes,
|
||
for instance.
|
||
|
||
2014-03-07 14:50:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
display: make cache maintenance really MT-safe.
|
||
Make sure to initialize one GstVaapiDisplay at a time, even in threaded
|
||
environments. This makes sure the display cache is also consistent
|
||
during the whole display creation process. In the former implementation,
|
||
there were risks that display cache got updated in another thread.
|
||
|
||
2014-05-03 15:56:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
context: allow dynamic growth of VA surfaces pool.
|
||
Add support for dynamic growth of the VA surfaces pool. For decoding,
|
||
this implies the recreation of the underlying VA context, as per the
|
||
requirement from VA-API. Besides, only increases are supported, not
|
||
shrinks.
|
||
|
||
2014-05-03 15:47:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
context: reset VA context if VA surfaces set changed.
|
||
It is a requirement from VA-API specification that the VA context got
|
||
from vaCreateContext(), for decoding purposes, binds the supplied set
|
||
of VA surfaces. This means that if the set of VA surfaces is to be
|
||
changed for the current decode session, then the VA context needs to
|
||
be recreated with the new set of VA surfaces.
|
||
|
||
2014-05-12 19:23:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix assignment of LongTermFrameIdx.
|
||
Complement fix committed as e95a42e.
|
||
The H.264 AVC standard has to say: if the field is part of a reference
|
||
frame or a complementary reference field pair, and the other field of
|
||
the same reference frame or complementary reference field pair is also
|
||
marked as "used for long-term reference", the reference frame or
|
||
complementary reference field pair is also marked as "used for long-term
|
||
reference" and assigned LongTermFrameIdx equal to long_term_frame_idx.
|
||
This fixes decoding of MR9_BT_B in strict mode.
|
||
https://bugs.freedesktop.org/show_bug.cgi?id=64624
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724518
|
||
|
||
2014-05-10 06:23:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
decoder: h264: properly support grayscale formats.
|
||
Request the correct chroma format for decoding grayscale streams.
|
||
i.e. make lookups of the VA chroma format more generic, thus possibly
|
||
supporting more formats in the future.
|
||
This means that, if a VA driver doesn't support grayscale formats,
|
||
it is now going to fail. We cannot safely assume that maybe grayscale
|
||
was implemented on top of some YUV 4:2:0 with the chroma components
|
||
all set to 0x80.
|
||
|
||
2014-02-06 11:14:09 +0000 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
* tests/test-filter.c:
|
||
build: fix source file modes.
|
||
A few source files are marked executable in error - fix them
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=723748
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
2014-04-29 13:22:47 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
build: fix conditional compilation of VP8 decoder.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=729170
|
||
[added check for VASliceParameterBufferBase fields]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-04-27 08:55:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
build: fix make dist for codecparsers.
|
||
|
||
2014-04-28 09:42:13 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit eaa3f7e.
|
||
h264: fix parsing of slice groups for map type = 2
|
||
|
||
2014-04-26 22:35:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi branch commit f44edfc.
|
||
h264: fix derivation of default scaling lists
|
||
|
||
2013-05-24 19:00:54 +0800 Cong Zhong <congx.zhong@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix long-term reference picture marking process.
|
||
Fix reference picture marking process with memory_management_control_op
|
||
set to 3 and 6, i.e. assign LongTermFrameIdx to a short-term reference
|
||
picture, or the current picture.
|
||
This fixes decoding of FRExt_MMCO4_Sony_B.
|
||
https://bugs.freedesktop.org/show_bug.cgi?id=64624
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724518
|
||
[squashed, edited to use GST_VAAPI_PICTURE_IS_COMPLETE() macro]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-04-26 20:21:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix initialization of RefPicLists for multiple slices.
|
||
The initialization of reference picture lists (8.2.4.2) applies to all
|
||
slices. So, the RefPicList0/1 lists need to be constructed prior to
|
||
each slice submission to the HW decoder.
|
||
This fixes decoding of video sequences where frames are encoded with
|
||
multiple slices of different types, e.g. 4 slices in this order I, P,
|
||
I, and P. More precisely, CABAST3_Sony_E and CABASTBR3_Sony_B.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724518
|
||
|
||
2013-06-04 15:01:46 +0800 Zhong Cong <congx.zhong@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: skip SPS extension and auxiliary slice NALs.
|
||
When NAL units of type 13 (SPS extension) or type 19 (auxiliary slice)
|
||
are present in a video, decoders shall perform the (optional) decoding
|
||
process specified for these NAL units or shall ignore them (7.4.1).
|
||
Implement option 2 (skip) for now, as alpha composition is not
|
||
supported yet during the decoding process.
|
||
This fixes decoding of the primary coded video in alphaconformanceG.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703928
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=728869
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724518
|
||
[skip NAL units earlier, i.e. at parsing time]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-03-07 11:32:20 +0800 Li Xiaowei <xiaowei.a.li@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix slice data bit offset with MVC NAL units.
|
||
When MVC slice NAL units (coded slice extension and prefix NAL) are
|
||
present, the number of NAL header bytes is 3, not 1 as usual.
|
||
Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-04-25 19:11:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix activation of picture and sequence parameters.
|
||
At the time the first VCL NAL unit of a primary coded picture is found,
|
||
and if that NAL unit was parsed to be an SPS or PPS, then the entries
|
||
in the parser may have been overriden. This means that, when the picture
|
||
is to be decoded, slice_hdr->pps could point to an invalid (the next)
|
||
PPS entry.
|
||
So, one way to solve this problem is to not use the parser PPS and
|
||
SPS info but rather maintain our own activation chain in the decoder.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724519
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724518
|
||
|
||
2014-04-25 16:24:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: retain SEI messages until the end of frame.
|
||
Retain the SEI messages that were parsed from the access unit until we
|
||
have completely decoded the current frame. This is done so that we can
|
||
peek at that data whenever necessary during decoding. e.g. for exposing
|
||
3D stereoscopic information at a later stage.
|
||
|
||
2014-04-25 14:23:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: add support for grayscale encoded clips.
|
||
Fix support for grayscale encoded video clips, and possibly others if
|
||
the underlying driver supports the non-YUV 4:2:0 formats. i.e. defer
|
||
the decision that a surface with the desired chroma format is not
|
||
supported to the actual VA driver implementation.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=728144
|
||
|
||
2014-04-25 14:16:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
decoder: default to YUV 4:2:0 VA surfaces.
|
||
Cope with context changes to support non-YUV 4:2:0 VA surfaces. Still,
|
||
make sure all codecs use YUV 4:2:0 output format for now, by default.
|
||
|
||
2014-04-25 13:57:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: re-indent GstVaapiDecoder base object.
|
||
|
||
2014-04-25 13:47:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
encoder: derive chroma type from video format.
|
||
Cope with previous VA context change to derive the correct surface chroma
|
||
type from the input video format.
|
||
|
||
2014-04-25 13:45:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
context: add support for non-YUV 4:2:0 formats.
|
||
Don't force allocation of VA surfaces in YUV 4:2:0 format. Rather, allow
|
||
for the upper layer to specify the desired chroma type. If the chroma
|
||
type field is not set (or yields zero), then YUV 4:2:0 format is used
|
||
by default.
|
||
|
||
2014-04-22 19:53:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
vp8: fix per-segment deblocking filter level in relative mode.
|
||
Fix possible bug when a per-segment deblocking filter level value
|
||
needs to be set in non-absolute mode, i.e. when the loop filter update
|
||
value is negative in delta mode.
|
||
Also clamp the resulting filter level value to 0..63 range.
|
||
|
||
2014-04-22 17:25:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
vp8: fix check for disabling the loop filter (again).
|
||
Improve condition to disable the loop filter. The previous heuristic
|
||
used to check all filter levels, for all segments. It turns out that
|
||
only the base filter_level value defined in the frame header needs
|
||
to be checked.
|
||
This fixes 00-comprehensive-013.
|
||
|
||
2014-04-21 18:02:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
build: fix make dist with certain conditionals not met.
|
||
Fix generation of source tarballs when certain conditionals are not
|
||
met. e.g. always include all buildable codecparsers sources in the
|
||
distribution tarball, fix plug-in element sources set to include X11
|
||
and encoder bits.
|
||
|
||
2014-04-21 17:34:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/Makefile.am:
|
||
build: add missing files for GStreamer 0.10.
|
||
Add missing GstVideoEncoder implementation files to fix build with ancient
|
||
GStreamer 0.10 stack.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=723964
|
||
|
||
2014-04-19 10:17:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/Makefile.am:
|
||
build: add missing files for VP8 bitstream parser.
|
||
Fix make dist for building the VP8 bitstream parser.
|
||
|
||
2014-04-21 17:49:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* ext/libvpx/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
vp8: allow compilation without the built-in libvpx.
|
||
The built-in libvpx serves multiple purposes, among which the most
|
||
important ones could be: track the most up-to-date, and optimized,
|
||
range decoder; allow for future hybrid implementations (non-VLD);
|
||
and have a completely independent range decoder implementation.
|
||
|
||
2014-04-21 17:28:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
vp8: propagate PTS from demux frame.
|
||
gst_adapter_prev_pts() is forbidden within libgstvaapi. Besides, the demuxer
|
||
or parser would already have determined the PTS from a previous stage.
|
||
|
||
2014-04-19 07:49:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* Makefile.am:
|
||
* debian.upstream/libgstvaapi.install.in:
|
||
* ext/libvpx/Makefile.am:
|
||
* ext/libvpx/sources.frag:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
vp8: fix compilation with built-in libvpx.
|
||
Apply correct patch from fd.o #722760 to fix several issues: update the
|
||
license terms to LGPLv2.1+, fix dependencies to built-in libvpx and fix
|
||
make dist.
|
||
|
||
2014-02-13 21:17:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitmodules:
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* ext/libvpx/Makefile.am:
|
||
* ext/libvpx/gstlibvpx.c:
|
||
* ext/libvpx/gstlibvpx.h:
|
||
* ext/libvpx/libgstcodecparsers_vpx.vers:
|
||
* ext/libvpx/sources.frag:
|
||
* ext/libvpx/upstream:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/codecparsers/gstvaapilibvpx.c:
|
||
vp8: use range decoder from libvpx.
|
||
Add libvpx submodule that tracks the upstream version 1.3.0. This is
|
||
needed to build a libgstcodecparsers_vpx.so library with all symbols
|
||
placed into the GSTREAMER namespace.
|
||
|
||
2014-04-04 19:17:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
vp8: fix check for disabling the loop filter.
|
||
|
||
2013-12-27 07:18:24 +0800 Zhao, Halley <halley.zhao@intel.com>
|
||
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vp8.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
Add initial VP8 decoder.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722761
|
||
[complete overhaul, fixed support for resolution changes]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-03-21 15:15:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: cope with new gst_h264_parser_parse_sei() interface.
|
||
The gst_h264_parse_parse_sei() function now returns an array of SEI
|
||
messages, instead of a single SEI message. Reason: it is allowed to
|
||
have several SEI messages packed into a single SEI NAL unit, instead
|
||
of multiple NAL units.
|
||
|
||
2014-04-18 19:36:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit a454f86.
|
||
b2eb5f6 vp8: rename dboolhuff symbols
|
||
b74a881 vp8: add GStreamer native utilities
|
||
2940ac6 add VP8 bitstream parser
|
||
|
||
2014-04-18 19:16:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit d459bc5.
|
||
d459bc5 h264: set framerate even for interlaced videos
|
||
c78b82c h264: add support for Recovery Point SEI message
|
||
7693bac h264: add support for Frame Packing Arrangement SEI message
|
||
31fafa7 h264: add support for Stereo Video Information SEI message
|
||
8b113a6 h264: parse seq_parameter_set_mvc_extension()
|
||
040f9b8 h264: parse MVC syntax elements
|
||
cc18ef3 h264: add nal_reader_skip_long() helper
|
||
7e76a48 h264: fix slice_header() parsing for MVC
|
||
caf46d8 h264: add gst_h264_parse_nalu_header() helper
|
||
f75074e h264: add gst_h264_parse_sps_data() helper
|
||
798c397 h264: clean-up gst_h264_parser_parse_sei_message()
|
||
4e36737 h264: fix skipping of unsupported SEI messages
|
||
5300766 h264: fix SEI buffering_period() parsing
|
||
|
||
2014-03-21 15:09:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
codecparsers: update to gst-vaapi-branch commit 8fadf40.
|
||
8fadf40 h264: Fix multiple SEI messages in one SEI RBSP parsing.
|
||
644825f h265: remove trailling 0x00 bytes as the spec doesn't allow them
|
||
95f9f0f h264: remove trailling 0x00 bytes as the spec doesn't allow them
|
||
766007b h265: Initialize pointer correctly that is never assigned but freed in error cases
|
||
8ec5816 h265: Fix segfault when parsing HRD parameter
|
||
5b1730f h265: Fix segfault when parsing VPS
|
||
983b7f7 h265: prevent to overrun chroma_weight_l0_flag
|
||
7ba641d h265: Fix debug output
|
||
d9f9f9b h264: not all startcodes should have 3-byte 0 prefix
|
||
|
||
2014-02-04 18:35:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix robustness patch for bytestream format.
|
||
Fix parser and decoder state to sync at the right locations. This is
|
||
because we could reset the parser state, while the decoder state was
|
||
not copied yet, e.g. when parsing several NAL units from multiple frames
|
||
whereas the current frame was not decoded yet.
|
||
This is a regression brought in by commit 6fe5496.
|
||
|
||
2014-02-18 06:56:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-drm.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-glx.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-wayland.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
build: fix pkgconfig file names (again).
|
||
It turns out it is more convenient to have only pkgconfig files named
|
||
after the installed GStreamer API version (1.0) instead of using all
|
||
possible subsequent names from that (1.0, 1.2, 1.4). i.e. they conflict
|
||
altogether anyway, so align pkgconfig file names to that.
|
||
|
||
2014-02-07 09:43:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/libgstvaapi-dev.install.in:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
build: fix packaging for GStreamer 1.2.
|
||
Fix gstreamer-vaapi includedir for GStreamer 1.2 setups. i.e. use
|
||
the pkgconfig version (1.0) instead of the intended API version (1.2).
|
||
libgstvaapi1.0-dev and libgstvaapi1.2-dev packages will now conflict,
|
||
as would core GStreamer 1.0 and GStreamer 1.2 dev packages anyway.
|
||
|
||
2014-01-24 11:27:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2014-01-24 10:55:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/control.in:
|
||
debian: fix trailing whitespace in description.
|
||
|
||
2014-01-23 23:24:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/copyright:
|
||
debian: fix package description.
|
||
Try to improve package description for the compiled plug-in elements
|
||
available in there. e.g. only display vaapidownload and vaapiupload
|
||
for GStreamer 0.10 builds, display vaapiencode_* elements when VA
|
||
encoding is enabled, etc.
|
||
Also increase the copyright notice date.
|
||
|
||
2014-01-23 22:47:19 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
build: fix warnings on 64-bit platforms.
|
||
|
||
2014-01-23 22:44:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
build: fix for older versions of VA-API (< 0.34.0).
|
||
Fix build with older versions of VA-API (< 0.34.0), or versions without
|
||
good enough headers for encoding support for instance.
|
||
|
||
2014-01-23 19:36:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.8.
|
||
|
||
2014-01-23 19:32:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: updates.
|
||
VA-API up to 0.34.0 is actually supported. Mention new video encoding
|
||
support. Update copyright years, list of supported Intel HD Graphics
|
||
hardware.
|
||
|
||
2014-01-23 19:18:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2014-01-20 14:16:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-filter.c:
|
||
tests: test-filter: fix "deinterlace" option parse.
|
||
Default to GST_VAAPI_DEINTERLACE_METHOD_NONE if no "deinterlace" option
|
||
string was provided, i.e. if it remained set to NULL.
|
||
|
||
2014-01-23 18:41:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_core.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_core.h:
|
||
libs: factor out usages of vaGetConfigAttributes().
|
||
Add gst_vaapi_get_config_attribute() helper function that takes a
|
||
GstVaapiDisplay and the rest of the arguments with VA types. The aim
|
||
is to have thread-safe VA helpers by default.
|
||
|
||
2014-01-23 17:41:02 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
libs: re-indent all source code related to VA utilities.
|
||
|
||
2014-01-23 17:06:08 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/libgstvaapi_priv_check.h:
|
||
libs: add missing file (libgstvaapi_priv_check.h).
|
||
|
||
2014-01-23 15:13:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: notify the encoder of the submitted packed headers.
|
||
Make sure to configure the encoder with the set of packed headers we
|
||
intend to generate and submit. i.e. make selection of packed headers
|
||
to submit more robust.
|
||
|
||
2014-01-23 15:10:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: fix and factor out check for supported rate-control modes.
|
||
Cache the first compatible GstVaapiProfile found if the encoder is not
|
||
configured yet. Next, factor out the code to check for the supported
|
||
rate-control modes by moving out vaGetConfigAttributes() to a separate
|
||
function, while also making sure that the attribute type is actually
|
||
supported by the encoder.
|
||
Also fix the default set of supported rate control modes to not the
|
||
"none" variant. It's totally useless to expose it at this point.
|
||
|
||
2014-01-23 14:01:33 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
context: move rate-control mode to encoder specific config.
|
||
Move usage-specific config out of the common GstVaapiContextInfo.
|
||
Create a specialized config for encoding and move rate-control mode
|
||
to there.
|
||
|
||
2014-01-23 13:30:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
context: introduce concept of usage.
|
||
Introduce GstVaapiContextUsage so that to explicitly determine the
|
||
usage of a VA context. This is useful in view to simplifying the
|
||
creation of VA context for VPP too.
|
||
|
||
2014-01-23 11:44:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
context: fix get_attribute() value result.
|
||
Unknown attributes, or attributes that are not supported for the given
|
||
profile/entrypoint pair have a return value of VA_ATTRIB_NOT_SUPPORTED.
|
||
So, return failure in this case.
|
||
|
||
2014-01-23 10:59:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext_overlay.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext_overlay.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
context: move overlay composition to separate files.
|
||
Move GstVideoOverlayComposition handling to separate source files.
|
||
This helps keeing GstVaapiContext core implementation to the bare
|
||
minimal, i.e. simpy helpers to create a VA context and handle pool
|
||
of associated VA surfaces.
|
||
|
||
2014-01-23 09:41:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
context: clean-ups. Strip down APIs.
|
||
Improve documentation and debug messages. Clean-up APIs, i.e. strip
|
||
them down to the minimal set of interfaces. They are private, so no
|
||
need expose getters for instance.
|
||
|
||
2014-01-23 09:27:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
context: re-indent all GstVaapiContext related source code.
|
||
|
||
2014-01-23 10:20:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
libs: check that private headers remain private.
|
||
Make sure that libgstvaapi private headers remain internally used to
|
||
build libgstvaapi libraries only. All header dependencies were reviewed
|
||
and checks for IN_LIBGSTVAAPI definition were added accordingly.
|
||
Also rename GST_VAAPI_CORE definition to IN_LIBGSTVAAPI_CORE to keep
|
||
consistency.
|
||
|
||
2014-01-22 19:04:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump library major version.
|
||
Bump the library major version due to API/ABI changes that occurred in
|
||
the imaging API. In particular, GstVaapiDisplay interfaces no longer
|
||
expose any GstCaps but provide GArray based ones e.g. to determine the
|
||
set of supported decode/encode profiles.
|
||
|
||
2014-01-22 18:54:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferpool.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferpool.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.h:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* tests/simple-decoder.c:
|
||
legal: update copyright notice dates.
|
||
|
||
2014-01-22 18:49:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.h:
|
||
legal: add per-file authorship information.
|
||
|
||
2014-01-22 18:11:26 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: fix video codec frame number in standalone mode.
|
||
Set a valid GstVideoCodecFrame.system_frame_number when decoding a
|
||
stream in standalone mode. While we are at it, improve the debugging
|
||
messages to also include that frame number.
|
||
|
||
2014-01-17 16:56:53 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
decoder: fix crash on invalid pointer for GST_DEBUG().
|
||
When decoding failed, or that the frame was dropped, the associated
|
||
surface proxy is not guaranteed to be present. Thus, the GST_DEBUG()
|
||
message needs to check whether the proxy is actually present or not.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722403
|
||
[fixed gst_vaapi_surface_proxy_get_surface_id() to return VA_INVALID_ID]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-22 17:07:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: disable NAL HRD parameters for now.
|
||
Don't emit NAL HRD parameters for now in the SPS headers because the
|
||
SEI buffering_period() and picture_timing() messages are not handled
|
||
yet. Some additional changes are necessary to get it right.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722734
|
||
|
||
2014-01-21 19:04:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264_priv.h:
|
||
encoder: h264: fix default CPB buffer size.
|
||
Fix default CPB buffer size to something more reasonable (1500 ms)
|
||
and that still fits the level limits. This is a non configurable
|
||
property for now. The initial CPB removal delay is also fixed to
|
||
750 ms.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722087
|
||
|
||
2014-01-22 14:43:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix bitrate encoding for HRD conformance.
|
||
Round down the calculated, or supplied, bitrate (kbps) into a multiple
|
||
of the HRD bitrate scale factor. Use a bitrate scale factor of 64 so
|
||
that to have less losses in precision. Likewise, don't round up because
|
||
that could be a strict constraint imposed by the user.
|
||
|
||
2014-01-22 11:25:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix level lookup constraints wrt. bitrate.
|
||
Fix the level calculation involving bitrate limits. Since we are
|
||
targetting NAL HRD conformance, the check against MaxBR from the
|
||
Table A-1 limits shall involve cpbBrNalFactor depending on the
|
||
active profile.
|
||
|
||
2014-01-21 18:01:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: submit sequence parameter only once.
|
||
Submit sequence parameter buffers only once, or when the bitstream
|
||
was reconfigured in a way that requires such. Always submit packed
|
||
sequence parameter buffers at I-frame period, if the VA driver needs
|
||
those.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722737
|
||
|
||
2014-01-21 18:35:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: h264: only submit packed headers when required.
|
||
Make sure to submit the packed headers only if the underlying VA driver
|
||
requires those. Currently, only handle packed sequence and picture
|
||
headers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722737
|
||
|
||
2014-01-21 17:35:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix ip_period value in sequence parameter.
|
||
The VAEncSequenceParameterBuffer.ip_period value reprents the distance
|
||
between the I-frame and the next P-frame. So, this also accounts for
|
||
any additional B-frame in the middle of it.
|
||
This fixes rate control heuristics for certain VA drivers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722735
|
||
|
||
2014-01-21 17:04:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix level when bitrate is automatically computed.
|
||
Fix level characterisation when the bitrate is automatically computed
|
||
from the active coding tools. i.e. ensure the bitrate once the profile
|
||
is completely characterized but before the level calculation process.
|
||
|
||
2014-01-21 16:05:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: clean-ups.
|
||
Document and rename a few functions here and there. Drop code that
|
||
caps num_bframes variable in reset_properties() since they shall
|
||
have been checked beforehand, during properties initialization.
|
||
|
||
2014-01-21 15:28:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: clean-up bitwriter related utilities.
|
||
Clean-up GstBitWriter related utility functions and simplify notations.
|
||
While we are at it, also make bitstream writing more robust should an
|
||
overflow occur. We could later optimize for writing headers capped to
|
||
their maximum possible size by using the _unchecked() helper variants.
|
||
|
||
2014-01-21 15:23:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
encoder: h264: completely remove private headers.
|
||
Drop private header since it was originally used to expose internals
|
||
to the plugin element. The proper interface is now the properties API,
|
||
thus rendering private headers totally obsolete.
|
||
|
||
2014-01-15 15:54:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix PPS header packing with profile < high.
|
||
Fix PPS header packing when profile is below High since 8x8 transform
|
||
mode and scaling lists are High Profile features.
|
||
|
||
2014-01-15 15:46:19 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: always emit VUI parameters for framerate.
|
||
Always emit VUI parameters for timing_info, which includes framerate
|
||
information.
|
||
|
||
2014-01-15 15:10:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: really fix frame cropping rectangle calculation.
|
||
Make frame cropping rectangle calculation future proof, i.e. exactly
|
||
follow the specification (7-18) to (7-21), and subsampling definitions
|
||
from Table 6-1.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722089
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722238
|
||
|
||
2014-01-15 12:09:14 +0100 Holger Kaelberer <hk@getslash.de>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: set csc render flags from sinkpad caps.
|
||
This maps GstVideoColorimetry information in vaapisink's sinkpad caps
|
||
to GST_VAAPI_COLOR_STANDARD_* flags, if per-buffer information was not
|
||
available.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722255
|
||
[factored out code, added SMPTE240M, handle per-buffer flags]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-03-28 15:05:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
surface: rework render flags.
|
||
Pack render flags per category and provide more flags into the color
|
||
standard category. In particular, cover for SMPTE-240M.
|
||
|
||
2013-12-13 04:14:41 +0800 Zhao, Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add support for colorbalance filters.
|
||
Add support for hue, saturation, brightness and constrat adjustments.
|
||
Also fix cap info local copy to match the really expected cap subtype
|
||
of interest.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720376
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-12 08:38:12 +0800 Zhao, Halley <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix support for "sharpen" filter.
|
||
Fix copy/paste error when submitting the "sharpen" value to the
|
||
GstVaapiFilter instance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720375
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-20 12:05:42 +0000 Lionel Landwerlin <llandwerlin@gmail.com>
|
||
|
||
* configure.ac:
|
||
* pkgconfig/gstreamer-vaapi-drm.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-glx.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-wayland.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
pkgconfig: plugin dir should use PKG version not API version.
|
||
Fix the pluginsdir and includedir variables in the generated pkgconfig
|
||
(.pc) files. The location needs to be built with the PKG version in
|
||
mind instead of the API version.
|
||
While we are at it, also fix the PKG version for GStreamer >= 1.3.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720820
|
||
[additional fixes for includedir and pkg requirements]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-15 10:05:45 +0100 Holger Kaelberer <hk@getslash.de>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix display initialization in GstVideoOverlay implementation.
|
||
When gst_vaapisink_video_overlay_set_window_handle() is called early,
|
||
before the pipeline has been set to PLAYING, the display has not yet
|
||
been initialized and _PLUGIN_BASE_DISPLAY_TYPE() is not yet
|
||
up-to-date. For this reason the foreign XID is not attached.
|
||
Now _ensure_display() is called earlier.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722244
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-10-09 13:47:54 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: expose the raw video formats in static caps template.
|
||
Expose all raw video formats in the static caps template since the
|
||
vaapisink is supporting raw data. We will get the exact set of formats
|
||
supported by the driver dynamically through the _get_caps() routine.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703271
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720737
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-11 18:08:26 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: query downstream caps features like GLTextureUploadMeta.
|
||
Fix vaapidecode to correctly report caps features downstream, when
|
||
a custom pipeline is built manually.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719372
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-17 15:27:10 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: add system memory caps to template caps.
|
||
Since vaapidecode provides buffer that can be mapped as regular memory,
|
||
those caps should be added to the template caps. That only applies to
|
||
GStreamer >= 1.2.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720608
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-17 10:26:03 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix hang on SIGINT.
|
||
vaapidecode hangs when pipeline is stopped without any EOS, e.g. when
|
||
<Ctrl>+C is pressed, thus causing the srcpad task to keep running and
|
||
locked. This fixes a deadlock on state change from PAUSED to READY.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720584
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-17 04:23:42 -0500 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: fix possible hang on SIGINT.
|
||
vaapiencode might hang when the pipeline is stopped without any EOS,
|
||
e.g. when <Ctrl>+C is pressed, thus causing the srcpad task to keep
|
||
running and locked. This fixes a possible deadlock on state change
|
||
from PAUSED to READY.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720584
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-14 16:33:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: fix typo in error message.
|
||
Fix incomplete error message in gst_vaapiencode_push_frame().
|
||
|
||
2014-01-14 19:08:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
plugins: add helpers to create video caps with features.
|
||
Add gst_vaapi_video_format_new_template_caps_with_features() helper
|
||
function to add the supplied caps feature string on GStreamer >= 1.2.
|
||
Add gst_vaapi_find_preferred_caps_feature() helper function to discover
|
||
the "best" caps feature to use for the supplied pad. In practice, we
|
||
will always favor memory:VASurface first, then meta:GLTextureUploadMeta,
|
||
and finally the system memory caps.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719372
|
||
|
||
2014-01-09 11:54:11 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: don't apply overlay composition in GLTextureUpload function.
|
||
The GLTextureUpload function is not in charge of doing the overlay
|
||
composition if any.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=721859
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-14 13:47:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
encoder: re-order submission of VA objects.
|
||
Change the submission order of VA objects so that to make that process
|
||
more logical. i.e. submit sequence parameter first, if any; next the
|
||
packed headers associated to sequece, picture or slices; and finally
|
||
the actual picture and associated slices.
|
||
|
||
2014-01-14 12:01:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
encoder: clean-up objects.
|
||
Various clean-ups to improve consistency and readability: rename some
|
||
variables, drop unused macro definitions, drop initialization of vars
|
||
that are zero-initialized from the base class, drop un-necessary casts,
|
||
allocate GPtrArrays with a destroy function.
|
||
|
||
2014-01-13 13:41:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: fix frame cropping rectangle calculation.
|
||
Fix frame cropping rectangle calculation to handle horizontal resolutions
|
||
that don't match a multiple of 16 pixels, but also the vertical resolution
|
||
that was incorrectly computed for progressive sequences too.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722089
|
||
|
||
2014-01-13 11:49:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: improve automatic bitrate calculation.
|
||
For non "Constant-QP" modes, we could provide more reasonable heuristics
|
||
for the target bitrate. In general, 48 bits per macroblock with all the
|
||
useful coding tools enable looks safe enough. Then, this rate is raised
|
||
by +10% to +15% for each coding tool that is disabled.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719699
|
||
|
||
2014-01-13 11:11:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: support "high-compression" tuning option.
|
||
Add support for "high-compression" tuning option. First, determine the
|
||
largest supported profile by the hardware. Next, check any target limit
|
||
set by the user. Then, enable each individual coding tool based on the
|
||
resulting profile_idc value to use.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719696
|
||
|
||
2014-01-12 22:24:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
encoder: h264: allow target decoder constraints.
|
||
Allow user to precise the largest profile to use for encoding due
|
||
to target decoder constraints. For instance, if CABAC entropy coding
|
||
mode is requested by "constrained-baseline" profile only is desired,
|
||
then an error is returned during codec configuration.
|
||
Also make sure that the suitable profile we derived actually matches
|
||
what the HW can cope with.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719694
|
||
|
||
2014-01-12 22:14:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
encoder: h264: refine size of coded buffer.
|
||
Refine the heuristic to determine the maximum size of a coded buffer
|
||
to account for the exact number of slices. set_context_info() is the
|
||
last step during codec reconfiguration, no additional change is done
|
||
afterwards, so re-using the num_slices field here is fine.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719953
|
||
|
||
2013-12-13 17:36:08 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
encoder: h264: expose more coding tools.
|
||
Add new H.264 coding tools to improve compression:
|
||
- "cabac": enable CABAC entropy coding (default: FALSE);
|
||
- "dct8x8": enable spatial transform 8x8 (default: FALSE).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719693
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-10 18:18:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
encoder: h264: derive profile and level from active coding tools.
|
||
Automatically derive the minimum profile and level to be used for
|
||
encoding, based on the activated coding tools. The encoder will
|
||
be trying to generate a bitstream that has the best chances to be
|
||
decoded on most platforms by default.
|
||
Also change the default profile to "constrained-baseline" so that
|
||
to ensure maximum compatibility when the stream is decoded.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719691
|
||
|
||
2014-01-10 17:02:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
encoder: h264: fix hardware profile lookup.
|
||
Fix lookup for a suitable HW profile, as to be used by the underlying
|
||
hardware, based on heuristics that lead to characterize the SW profile,
|
||
i.e. the one used by the SW level encoding logic.
|
||
Also fix constraint_set0_flag (A.2.1) and constraint_set1_flag (A.2.2)
|
||
as they should respectively match the baseline and main profile.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719827
|
||
|
||
2014-01-10 14:46:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
encoder: h264: support only the byte-stream format.
|
||
The libgstvaapi core encoders are meant to support raw bitstreams only.
|
||
Henceforth, we are always producing a stream in "byte-stream" format.
|
||
However, the "codec-data" buffer which holds SPS and PPS headers is
|
||
always available. The "lengthSizeMinusOne" field is always set to 3
|
||
so that in-place "byte-stream" format to "avc" format conversion could
|
||
be performed.
|
||
|
||
2014-01-10 14:05:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
encoder: h264: clean-ups.
|
||
Various clean-ups to improve consistency and readability: rename some
|
||
variables, drop unused macro definitions, drop initialization of vars
|
||
that are zero-initialized from the base class, drop un-necessary casts.
|
||
|
||
2014-01-13 17:11:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
encoder: mpeg2: fix hardware profile lookup.
|
||
Fix lookup for a suitable HW profile, as to be used by the underlying
|
||
hardware, based on heuristics that lead to characterize the SW profile,
|
||
i.e. the one used by the SW level encoding logic.
|
||
|
||
2014-01-13 16:56:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
encoder: mpeg2: derive profile and level from active coding tools.
|
||
Automatically derive the minimum profile and level to be used for
|
||
encoding, based on the activated coding tools. Improve lookup for
|
||
the best suitable level with the new MPEG-2 helper functions.
|
||
Also change the default profile to "simple" so that to ensure maximum
|
||
compatibility when the stream is decoded.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719703
|
||
|
||
2014-01-13 14:41:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
encoder: mpeg2: clean-ups.
|
||
Various clean-ups to improve consistency and readability: drop unused
|
||
macro definitions, drop initialization of vars that are zero-initialized
|
||
from the base class, drop un-necessary casts.
|
||
|
||
2014-01-13 10:48:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: add tuning options API.
|
||
Add encoder "tune" option to override the default behaviour that is to
|
||
favor maximum decoder compatibility at the expense of lower compression
|
||
ratios.
|
||
Expected tuning options to be developed are:
|
||
- "high-compression": improve compression, target best-in-class decoders;
|
||
- "low-latency": tune for low-latency decoding;
|
||
- "low-power": tune for encoding in low power / resources conditions.
|
||
|
||
2014-01-12 23:17:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
encoder: fix bitrate units to match kbps.
|
||
Bitrate is expressed in kilobits per second (kbps). So, this exactly
|
||
means in multiple of 1000 bits, not 1024 bits.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=722086
|
||
|
||
2014-01-12 21:57:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: clean-ups.
|
||
Drop obsolete and unused macros. Add a few doc comments. Slightly
|
||
improve indentation of a few leftovers.
|
||
|
||
2014-01-12 18:52:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
encoder: filter out the supported set of rate-control properties.
|
||
Only expose the exact static set of supported rate-control properties
|
||
to the upper layer. For instance, if the GstVaapiEncoderXXX class does
|
||
only support CQP rate control, then only add it the the exposed enum
|
||
type.
|
||
Add helper macros and functions to build a GType for an enum subset.
|
||
|
||
2014-01-10 13:23:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: add keyframe period API.
|
||
Add gst_vaapi_encoder_set_keyframe_period() interface to allow the
|
||
user control the maximum distance between two keyframes. This new
|
||
property can only be set prior to gst_vaapi_encoder_set_codec_state().
|
||
A value of zero for "keyframe-period" gets it re-evaluated to the
|
||
actual framerate during encoder reconfiguration.
|
||
|
||
2014-01-10 12:01:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: improve codec reconfiguration.
|
||
Improve codec reconfiguration to be performed only through a single
|
||
function. That is, remove the _set_context_info() hook as subclass
|
||
should not alter the parent GstVaapiContextInfo itself. Besides, the
|
||
VA context is constructed only at the final stages of reconfigure().
|
||
|
||
2014-01-10 11:30:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferpool.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodedbufferpool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
encoder: fix possible memory leak of coded buffer pools.
|
||
Fix gst_vaapi_encoder_reconfigure_internal() to re-/allocate the coded
|
||
buffer pool only if the coded buffer size actually changed.
|
||
|
||
2014-01-10 10:54:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
encoder: add video codec-state API.
|
||
Add interface to communicate the encoder resolution and related info
|
||
like framerate, interlaced vs. progressive, etc. This new interface
|
||
supersedes gst_vaapi_encoder_set_format() and doesn't use any GstCaps
|
||
but rather use GstVideoCodecState.
|
||
Note that gst_vaapi_encoder_set_codec_state() is also a synchronization
|
||
point for codec config. This means that the encoder is reconfigured
|
||
there to match the latest properties.
|
||
|
||
2014-01-13 17:18:42 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: don't crash on NULL encoder on _finish().
|
||
Don't try to destroy an encoder, in GstVideoEncoder::finish() handler,
|
||
if it was not created in the first place. Return "not-negotiated" error
|
||
since this means we did not even reach GstVideoEncoder::set_format(),
|
||
where the encoder could have been created.
|
||
This fixes a crash when the vaapiencode_* plug-in elements get deallocated
|
||
and that we failed to negotiate either pad.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719704
|
||
|
||
2014-01-09 18:20:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
vaapiencode: use more GstVaapiPluginBase facilities.
|
||
Avoid duplication of pad references or query functions since they are
|
||
provided through the GstVaapiPluginBase object.
|
||
|
||
2014-01-09 18:10:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: fix negotiation process of output caps.
|
||
The specified caps in gst_video_encoder_set_output_state() function
|
||
arguments should not contain any resolution, pixel-aspect-ratio,
|
||
framerate, codec-data et al. Those rather should be set through the
|
||
returned GstVideoCodecState. This means that output caps creation
|
||
could be delayed until before gst_video_encoder_finish_frame() is
|
||
called.
|
||
This greatly simplifies the GstVideoEncoder::set_format() callback
|
||
by the way.
|
||
|
||
2014-01-08 18:56:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: make GstVaapiEncode an abstract type.
|
||
Make base GstVaapiEncode class an abstract type so that we cannot
|
||
create an instance from it without going through any of the codec
|
||
specific derived class.
|
||
|
||
2014-01-09 10:09:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: rename a few member functions.
|
||
Rename a few member functions to make them more consistent:
|
||
- alloc_encoder(): now reduced to allocate the encoder object only;
|
||
- alloc_buffer(): allocate buffer from srcpad, and copy bitstream.
|
||
|
||
2014-01-08 18:36:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: update for new properties API.
|
||
Update MPEG-2 and H.264 encode elements to cope with the new core
|
||
libgstvaapi properties API. i.e. all configurable properties are now
|
||
directly handled at the GstVaapiEncoder level.
|
||
Besides, this also makes sure to not use or modify the GstVaapiEncoder
|
||
private definitions directly. Private data need to remain private.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719529
|
||
|
||
2014-01-06 17:46:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: add properties API.
|
||
Add interface to communicate configurable properties to the encoder.
|
||
This covers both the common ones (rate-control, bitrate), and the
|
||
codec specific properties.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719529
|
||
|
||
2014-01-06 18:01:33 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
encoder: add bitrate API.
|
||
Add gst_vaapi_encoder_set_bitrate() interface to allow the user control
|
||
the bitrate for encoding. Currently, changing this parameter is only
|
||
valid before the first frame is encoded. Should the value be modified
|
||
afterwards, then GST_VAAPI_ENCODER_STATUS_ERROR_OPERATION_FAILED is
|
||
returned.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719529
|
||
|
||
2014-01-06 15:10:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
encoder: add rate control API.
|
||
Add gst_vaapi_encoder_set_rate_control() interface to request a new
|
||
rate control mode for encoding. Changing the rate control mode is
|
||
only valid prior to encoding the very first frame. Afterwards, an
|
||
error ("operation-failed") is issued.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719529
|
||
|
||
2014-01-03 16:57:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: fix indentation.
|
||
|
||
2014-01-03 16:57:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
encoder: fix indentation.
|
||
|
||
2014-01-13 16:20:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_mpeg2_priv.h:
|
||
utils: add new MPEG-2 helper functions.
|
||
Add various helper functions to convert profile, level, chroma formats
|
||
from gstreamer-vaapi world and the MPEG-2 specification world.
|
||
|
||
2014-01-10 19:49:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
utils: h264: don't use fatal asserts.
|
||
Replace g_assert() with a g_debug() so that to not make the program
|
||
abort when an unsupported value is supplied.
|
||
|
||
2014-01-10 19:37:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.h:
|
||
utils: h264: add helpers for profile and level string mappings.
|
||
Add profile and level helper functions to convert to/from strings.
|
||
|
||
2014-01-10 18:27:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264_priv.h:
|
||
utils: h264: expose levels in public header.
|
||
Instal <gst/vaapi/gstvaapiutils_h264.h> header but only expose the
|
||
H.264 levels in there. The additional helper functions are meant
|
||
to be private for now.
|
||
|
||
2014-01-09 09:27:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
codec: add helper macros to maintain object refcount.
|
||
Add gst_vaapi_mini_object_{ref,unref,replace}() helper macros so that
|
||
to avoid explicit casts to GstVaapiMiniObject in all caller sites.
|
||
|
||
2014-01-09 09:30:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
codec: re-indent decoder objects.
|
||
|
||
2014-01-09 09:10:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
codec: re-indent base codec objects.
|
||
|
||
2014-01-03 12:49:05 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
plugins: do not free debug category in finalize method.
|
||
Fixes a crash when multiple vaapidecode elements are finalized since
|
||
the debug category is created once in the class init method.
|
||
This is a regression from git commit 7e58d60.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=721390
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2014-01-02 11:35:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: don't use deprecated g_thread_create().
|
||
Use g_thread_try_new() instead of the deprecated g_thread_create()
|
||
function. Provide compatibility glue for any GLib version < 2.31.2.
|
||
|
||
2014-01-02 11:17:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
Fix printf()-like formats.
|
||
Fix formts for various GST_DEBUG et al. invocations. More precisely,
|
||
make size_t arguments use the %zu format specifier accordingly; force
|
||
XID formats to be a 32-bit unsigned integer; and fix the format used
|
||
for gst_vaapi_create_surface_with_format() error cases since we have
|
||
been using strings nowadays.
|
||
|
||
2013-12-21 07:38:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
utils: format: drop unused helper functions.
|
||
The following helper functions are no longer used, thus are removed:
|
||
- gst_vaapi_video_format_from_structure()
|
||
- gst_vaapi_video_format_from_caps()
|
||
- gst_vaapi_video_format_to_caps()
|
||
|
||
2013-12-21 07:29:50 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
utils: re-indent GstVideoFormat related helpers.
|
||
|
||
2013-12-21 08:27:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
download: use GstVideoInfo facilities to build output caps.
|
||
Use standard GstVideoInfo related functions to build the output caps,
|
||
thus directly preserving additional fields as needed, instead of
|
||
manually copying them over through gst_vaapi_append_surface_caps().
|
||
Also ensure that the input caps are fixated first.
|
||
|
||
2013-12-21 10:41:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: factor out construction of template caps.
|
||
Add new helper functions to build video template caps.
|
||
- gst_vaapi_video_format_new_template_caps():
|
||
create GstCaps with size, frame rate and PAR to full range
|
||
- gst_vaapi_video_format_new_template_caps_from_list():
|
||
try to create a "simplified" list from the supplied formats
|
||
|
||
2013-12-21 06:41:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
plugins: factor out construction of GValue from GstVideoFormat.
|
||
Add new helper functions to build GValues from GstVideoFormat:
|
||
- gst_vaapi_value_set_format():
|
||
build a GValue from the supplied video format
|
||
- gst_vaapi_value_set_format_list():
|
||
build a GValue list from the supplied array of video formats
|
||
|
||
2013-12-21 06:22:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
plugins: re-indent common and video context creation utils.
|
||
|
||
2013-12-20 15:31:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/test-display.c:
|
||
display: don't use GstCaps for decode or encode profiles list.
|
||
Replace gst_vaapi_display_get_{decode,encode}_caps() APIs with more
|
||
more convenient APIs that return an array of GstVaapiProfile instead
|
||
of GstCaps: gst_vaapi_display_get_{decode,encode}_profiles().
|
||
|
||
2013-12-20 15:15:05 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* tests/test-display.c:
|
||
display: don't use GstCaps for image or subpicture formats list.
|
||
Replace gst_vaapi_display_get_{image,subpicture}_caps() APIs, that
|
||
returned GstCaps, with more convenient APIs that return an array of
|
||
GstVideoFormat: gst_vaapi_display_get_{image,subpicture}_formats().
|
||
|
||
2013-12-20 14:01:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
display: allocate queried resources on-demand.
|
||
Allocate the set of decoders or encoders on-demand, when they are
|
||
queried. Likewise for VA display attributes, image and subpicture
|
||
formats.
|
||
|
||
2013-12-20 13:27:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
display: re-indent all GstVaapiDisplay related source code.
|
||
|
||
2013-12-20 16:04:19 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
utils: add helper functions to get codec or profile name.
|
||
|
||
2013-12-20 17:08:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: fix permissions for certain files.
|
||
Drop the execute bit for gstvaapiuploader.c and gstvaapipostproc.[ch]
|
||
files.
|
||
|
||
2013-12-12 17:01:29 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: implement GLTextureUploadMeta user data copy.
|
||
Makes the copies of a buffer reference their own GLTextureUploadMeta
|
||
user data and prevent the original buffer accessing already freed
|
||
memory if its copies has been released and freed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720336
|
||
[Propagate the original meta texture to the copy too]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-17 18:52:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
plugins: factor out support for raw YUV buffers on sink pads.
|
||
Factor out propose_allocation() hooks, creation of video buffer pool
|
||
for the sink pad, conversion from raw YUV buffers to VA surface backed
|
||
buffers. Update vaapidecode, vaapiencode and vaapipostproc to cope
|
||
with the new GstVaapiPluginBase abilities.
|
||
|
||
2013-12-17 18:46:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: factor out pad caps.
|
||
|
||
2013-12-13 16:03:08 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: factor out video context sharing code.
|
||
|
||
2013-12-13 13:24:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: factor out GstImplementsInterface.
|
||
|
||
2013-12-13 12:00:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: check type of display obtained from neighbours.
|
||
Fix display creation code to check that any display obtained from a
|
||
neighbour actually has the type we expect. Note: if display type is
|
||
set to "any", we can then accept any VA display type.
|
||
|
||
2013-12-13 11:52:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: factor out display creation process.
|
||
Move common VA display creation code to GstVaapiPluginBase, with the
|
||
default display type remaining "any". Also add a "display-changed"
|
||
hook so that subclasses could perform additional tasks when/if the
|
||
VA display changed, due to a new display type request for instance.
|
||
All plug-ins are updated to cope with the new internal APIs.
|
||
|
||
2013-12-13 10:24:26 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapipluginbase.c:
|
||
* gst/vaapi/gstvaapipluginbase.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
plugins: add new base object, store display in there.
|
||
Introduce a new GstVaapiPluginBase object that will contain all common
|
||
data structures and perform all common tasks. First step is to have a
|
||
single place to hold VA displays.
|
||
While we are at it, also make sure to store and subsequently release
|
||
the appropriate debug category for the subclasses.
|
||
|
||
2013-12-11 14:04:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.h:
|
||
plugins: fix GLTextureUploadMeta to work with different texture ids.
|
||
The GLTextureUploadMeta implementation assumed that for each upload()
|
||
sequence, the supplied texture id is always the same as the one that
|
||
was previously cached into the underlying GstVaapiTexture. Cope with
|
||
any texture id change the expense to recreate the underlying VA/GLX
|
||
resources.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719643
|
||
|
||
2013-12-11 13:25:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: allow builds without GLX enabled for GStreamer 1.2.
|
||
Don't try to build GLTextureUploadMeta related code if GLX is not
|
||
enabled during GStreamer >= 1.2 builds.
|
||
|
||
2013-11-20 17:20:07 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.h:
|
||
plugins: request GLTextureUpload meta on buffers in the buffer pool.
|
||
Requesting the GLTextureUpload meta on buffers in the bufferpool
|
||
prevents such metas from being de-allocated when buffers are released
|
||
in the sink.
|
||
This is particulary useful in terms of performance when using the
|
||
GLTextureUploadMeta API since the GstVaapiTexture associated with
|
||
the target texture is stored in the meta.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=712558
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-11 10:51:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
plugins: robustify GstVideoGLTextureUploadMeta implementation.
|
||
Make GstVideoGLTextureUploadMeta::upload() implementation more robust
|
||
when the GstVaapiTexture associated with the supplied texture id could
|
||
not be created.
|
||
|
||
2013-12-10 16:14:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: improve robustness when packets are missing.
|
||
Improve robustness when some expected packets where not received yet
|
||
or that were not correctly decoded. For example, don't try to decode
|
||
a picture if there was no valid frame headers parsed so far.
|
||
https://bugs.freedesktop.org/show_bug.cgi?id=57902
|
||
|
||
2013-12-10 14:20:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix decoding of BA3_SVA_C.264.
|
||
Conformance test Base_Ext_Main_profiles/BA3_SVA_C.264 complys with
|
||
extended profile specifications. However, the SPS header has the
|
||
constraint_set1_flag syntax element set to 1. This means that, if
|
||
a Main profile compliant decoder is available, then it should be
|
||
able to decode this stream.
|
||
This changes makes it possible to fall-back from Extended profile
|
||
to Main profile if constraint_set1_flag is set to 1.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720190
|
||
|
||
2013-12-10 11:13:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
utils: h264: add more profiles.
|
||
Add extended profile (A.2.3), high 4:2:2 profile (A.2.6), high 4:2:2
|
||
profiles (A.2.7, A.2.10), scalable profiles (G.10.1.1, G.10.1.2) and
|
||
multiview profiles (H.10.1.1, H.10.1.2).
|
||
Document "Constrained Baseline" and "High 10" profiles.
|
||
|
||
2013-12-10 15:21:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit e7d0e18.
|
||
e7d0e18 h264: complete set of NAL unit types
|
||
|
||
2013-12-06 15:08:26 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
decoder: h264: add support for constrained baseline profile.
|
||
Recognize streams marked as conforming to the "Constrained Baseline
|
||
Profile". If VA driver supports that as is, fine. Otherwise, fallback
|
||
to baseline, main or high profile.
|
||
Constrained Baseline Profile conveys coding tools that are common
|
||
to baseline profile and main profile.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719947
|
||
[Added fallbacks to main and high profiles]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-09 12:46:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
decoder: h264: fix decoding of scaling lists.
|
||
The GStreamer codecparser layer now parses the scaling lists in zigzag
|
||
scan order, as expected, so that to match the original bitstream layout
|
||
and specification. However, further convert the scaling lists into
|
||
raster scan order to fit the existing practice in most VA drivers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=706406
|
||
|
||
2013-12-09 12:07:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 177c73b.
|
||
a7e3255 add H.265 (HEVC) bitstream parser
|
||
177c73b h264: fix picture level scaling lists derivation (rule B)
|
||
14733f1 h264: fix parsing of VCL HRD parameters
|
||
59a0b47 h264: store quantization matrices in zig-zag order
|
||
ffb6e26 h264: add helpers to convert quantization matrices
|
||
c78a504 mpeg2: also initialize debug category in parse_sequence_header()
|
||
719d1b0 mpeg2: turn internal consistency check into a g_assert()
|
||
5241d8e all: remove some unused functions
|
||
18eb312 all: fix for GST_DISABLE_GST_DEBUG
|
||
963c04a all: make warnings more meaningful
|
||
|
||
2013-12-06 19:05:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.h:
|
||
utils: add helpers for H.264 levels.
|
||
- gst_vaapi_utils_h264_get_level():
|
||
Returns GstVaapiLevelH264 from H.264 level_idc value
|
||
- gst_vaapi_utils_h264_get_level_idc():
|
||
Returns H.264 level_idc value from GstVaapiLevelH264
|
||
- gst_vaapi_utils_h264_get_level_limits():
|
||
Returns level limits as specified in Table A-1 of the H.264 standard
|
||
- gst_vaapi_utils_h264_get_level_limits_table():
|
||
Returns the Table A-1 specification
|
||
|
||
2013-12-06 17:34:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_h264.c:
|
||
utils: add new H.264 profiles.
|
||
Add "Constrained Baseline Profile" and "High 10 Profile" definitions
|
||
and helper functiions.
|
||
|
||
2013-12-06 17:21:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
utils: add new H.264 helper functions.
|
||
* Profiles:
|
||
- gst_vaapi_utils_h264_get_profile():
|
||
Returns GstVaapiProfile from H.264 profile_idc value
|
||
- gst_vaapi_utils_h264_get_profile_idc():
|
||
Returns H.264 profile_idc value from GstVaapiProfile
|
||
* Chroma formats:
|
||
- gst_vaapi_utils_h264_get_chroma_type():
|
||
Returns GstVaapiChromaType from H.264 chroma_format_idc value
|
||
- gst_vaapi_utils_h264_get_chroma_format_idc():
|
||
Returns H.264 chroma_format_idc value from GstVaapiChromaType
|
||
|
||
2013-12-03 11:05:17 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* gst-libs/gst/base/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Fix missing files in distribution tarball.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719776
|
||
[Additional fixes and clean-ups]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-05 18:13:54 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
encoder: fix computation of max coded buffer size (again).
|
||
The previous fix was only valid to express the maximum size of the
|
||
macroblock layer, i.e. without any headers. Now, also account for
|
||
the slice headers and top picture header, but also any other header
|
||
we might stuff into the VA coded buffer, e.g. sequence headers.
|
||
|
||
2013-12-04 19:10:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
encoder: fix computation of max coded buffer size.
|
||
Fix coded buffer size for each codec. A generic issue was that the
|
||
number of macroblocks was incorrectly computed. The second issue was
|
||
specific to MPEG-2 were the max number of bits per macroblock, and
|
||
as defined by the standard, was incorrectly mapped to the (lower)
|
||
H.264 requirement. i.e. 4608 bits vs. 3200 bits limit.
|
||
|
||
2013-12-04 18:48:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: simplify VA context initialization process.
|
||
Change get_context_info() into a set_context_info() function that
|
||
initializes common defaults into the base class, thus allowing the
|
||
subclasses to specialize the context info further on.
|
||
The set_context_info() hook is also the location where additional
|
||
context specific data could be initialized. At this point, we are
|
||
guaranteed to have valid video resolution size and framerate. i.e.
|
||
gst_vaapi_encoder_set_format() was called beforehand.
|
||
|
||
2013-11-26 14:38:23 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
encoder: fix mpeg2 compilation error.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719746
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-12-04 17:55:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
encoder: clean-ups and document public APIs.
|
||
Clean public APIs up so that to better align with the decoder APIs.
|
||
Most importantly, gst_vaapi_encoder_get_buffer() is changed to only
|
||
return the VA coded buffer proxy. Also provide useful documentation
|
||
for the public APIs.
|
||
|
||
2013-12-04 17:05:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: avoid extra allocations of GstVaapiEncoderSyncPic objects.
|
||
Kill GstVaapiEncoderSyncPic objects that are internally and temporarily
|
||
allocated. Rather, associate a GstVaapiEncPicture to a coded buffer
|
||
through GstVaapiCodedBufferProxy user-data facility.
|
||
Besides, use a GAsyncQueue to maintain a thread-safe queue object of
|
||
coded buffers.
|
||
Partial fix for the following report:
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719530
|
||
|
||
2013-12-03 17:04:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
encoder: refactor status codes.
|
||
Drop obsolete or unused status codes. Align some status codes with the
|
||
decoder counterparts.
|
||
|
||
2013-12-04 11:54:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
encoder: fix subclassing process.
|
||
Fix the GstVaapiEncoderClass parent class type. Make sure to validate
|
||
subclass hooks as early as possible, i.e. in gst_vaapi_encoder_init(),
|
||
thus avoiding useless run-time checks. Also simplify the subclass
|
||
initialization process to be less error prone.
|
||
|
||
2013-12-03 16:11:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
encoder: rework GstVaapiCodedBuffer and related proxy.
|
||
Refactor the GstVaapiCodedBuffer APIs so that to more clearly separate
|
||
public and private interfaces. Besides, the map/unmap APIs should not
|
||
be exposed as is but appropriate accessors should be provided instead.
|
||
* GstVaapiCodedBuffer: VA coded buffer abstraction
|
||
- gst_vaapi_coded_buffer_get_size(): get coded buffer size.
|
||
- gst_vaapi_coded_buffer_copy_into(): copy coded buffer into GstBuffer
|
||
* GstVaapiCodedBufferPool: pool of VA coded buffer objects
|
||
- gst_vaapi_coded_buffer_pool_new(): create a pool of coded buffers of
|
||
the specified max size, and bound to the supplied encoder
|
||
* GstVaapiCodedBufferProxy: pool-allocated VA coded buffer object proxy
|
||
- gst_vaapi_coded_buffer_proxy_new_from_pool(): create coded buf from pool
|
||
- gst_vaapi_coded_buffer_proxy_get_buffer(): get underlying coded buffer
|
||
- gst_vaapi_coded_buffer_proxy_get_buffer_size(): get coded buffer size
|
||
Rationale: more optimized transfer functions might be provided in the
|
||
future, thus rendering the map/unmap mechanism obsolete or sub-optimal.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=719775
|
||
|
||
2013-11-29 14:02:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: fix reference leaks of VA display objects.
|
||
Fix GstElement::set_context() implementation for all plug-in elements
|
||
to avoid leaking an extra reference to the VA display, thus preventing
|
||
correct cleanup of VA resources in GStreamer 1.2 builds.
|
||
|
||
2013-11-29 13:56:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
plugins: simplify gst_vaapi_ensure_display().
|
||
Return earlier if the creation of a VA display failed. Likewise, simplify
|
||
gst_vaapi_video_context_propagate() now that we are guaranteed to have a
|
||
valid VA display.
|
||
|
||
2013-11-28 19:08:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: fix memory leaks through GstVideoMeta maps.
|
||
When GstVideoMeta maps were used, the supporting functions incorrectly
|
||
used gst_buffer_get_memory() instead of gst_buffer_peek_memory(), thus
|
||
always increasing the associated GstMemory reference count and giving
|
||
zero chance to actually release that, and subsequently the VA display.
|
||
|
||
2013-11-28 14:15:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: use G_PARAM_STATIC_STRINGS.
|
||
This avoids a few string copies during initialization.
|
||
|
||
2013-11-28 17:28:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: simplify VA video meta to only reference surface proxies.
|
||
Simplify GstVaapiVideoMeta to only hold a surface proxy, which is
|
||
now allocated from a surface pool. This also means that the local
|
||
reference to the VA surface is also gone, as it could be extracted
|
||
from the associated surface proxy.
|
||
|
||
2013-11-28 16:51:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
plugins: drop obsolete functions.
|
||
Drop the following functions that are not longer used:
|
||
- gst_vaapi_video_buffer_new_with_surface()
|
||
- gst_vaapi_video_meta_new_with_surface()
|
||
- gst_vaapi_video_meta_set_surface()
|
||
- gst_vaapi_video_meta_set_surface_from_pool()
|
||
|
||
2013-11-28 16:37:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: allow VA video meta to be allocated from surface proxy pools.
|
||
Fix gst_vaapi_video_meta_new_from_pool() to allocate VA surface proxies
|
||
from surface pools instead of plain VA surfaces. This is to simplify
|
||
allocations now that surface proxies are created from a surface pool.
|
||
|
||
2013-11-28 17:25:05 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
surfaceproxy: add copy function.
|
||
Add gst_vaapi_surface_proxy_copy() function that creates a new surface
|
||
proxy with the same information from the parent proxy, except that the
|
||
user-defined destroy notify function is not copied over.
|
||
The underlying VA surface is pushed back to the video pool only when
|
||
the last reference to the parent surface proxy is released.
|
||
|
||
2013-11-28 15:56:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: optimize _handle_frame() to avoid extra allocation.
|
||
Optimize gst_vaapiencode_handle_frame() to avoid extra memory allocation,
|
||
and in particular the GstVaapiEncObjUserData object. i.e. directly use
|
||
the VA surface proxy from the source buffer. This also makes the user
|
||
data attached to the GstVideoCodecFrame more consistent between both
|
||
the decoder and encoder plug-in elements.
|
||
|
||
2013-11-28 15:14:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: fix memory leaks in _push_frame() on error.
|
||
Simplify gst_vaapiencode_push_frame(), while also removing the call
|
||
to gst_video_encoder_negotiate() since this is implicit in _finish()
|
||
if caps changed. Also fixed memory leaks that occured on error.
|
||
|
||
2013-11-28 13:57:54 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: additional clean-ups.
|
||
Constify pointers wherever possible. Drop unused variables, and use
|
||
consistent variable names. Fix gst_vaapiencode_h264_allocate_buffer()
|
||
to correctly report errors, especially when in-place conversion from
|
||
bytestream to avcC format failed.
|
||
|
||
2013-11-28 13:26:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.h:
|
||
vaapiencode: move common properties to base class.
|
||
Move "rate-control" mode and "bitrate" properties to the GstVaapiEncode
|
||
base class. The actual range of supported rate control modes is currently
|
||
implemented as a plug-in element hook. This ought to be determined from
|
||
the GstVaapiEncoder object instead, i.e. from libgstvaapi.
|
||
|
||
2013-11-28 10:54:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: fix plugin description and debug name.
|
||
Align the plug-in debug category to its actual name. i.e. enable debug
|
||
logs through vaapiencode_<CODEC> where <CODEC> is mpeg2, h264, etc. Fix
|
||
the plug-in element description to make it more consistent with other
|
||
VA-API plug-ins.
|
||
|
||
2013-11-27 16:27:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: add initial support for GStreamer 0.10.
|
||
|
||
2013-11-27 16:25:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
libs: add more GstBuffer compat glue for GStreamer 0.10.
|
||
Add gst_buffer_new_allocate() and gst_buffer_fill() implementations.
|
||
Fix gst_buffer_new_wrapped_full() implementation to handle the destroy
|
||
notify function.
|
||
|
||
2013-11-27 15:56:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
libs: always use built-in videoutils for GStreamer 0.10.
|
||
GStreamer 0.10.36 is the latest and ultimate version to be released
|
||
from the GStreamer 0.10 branch. i.e. no further releases are to be
|
||
made. So, we can safely enable the built-in videoutils replacement
|
||
now that they are in sync with the 0.10 branch.
|
||
|
||
2013-11-27 15:47:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/videoutils:
|
||
videoutils: update to master commit d4a15a5.
|
||
d4a15a5 video: fix compiler warning in header with C++11 / clang-3.1
|
||
86096cc videodecoder: minor cosmetic changes to align a bit more with master
|
||
b4b8b52 videodecoder: allow parse function to not use all data on adapter
|
||
2145495 videodecoder: warn if frame list gets long
|
||
36c3753 videodecoder: Also use the object lock to protect the output_state
|
||
518c93d videodecoder: fix seeking again
|
||
185fb63 video: Correct usage of the base class stream lock
|
||
170e944 videodecoder: Expose _negotiate function
|
||
|
||
2013-11-26 12:06:07 +0000 Matthieu Bouron <matthieu.bouron@collabora.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Fix build with GStreamer >= 1.3.
|
||
http://bugzilla.gnome.org/show_bug.cgi?id=715183
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-26 17:56:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: disable encoders with GStreamer 0.10.
|
||
Don't try to build video encoders for GStreamer 0.10. Support code is
|
||
not there yet, and probably will never for such an ancient version.
|
||
|
||
2013-11-26 17:26:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: fix error handling while allocating output buffers.
|
||
Fix default GstVideoEncoder::allocate_buffer() implementation to properly
|
||
unmap the coded buffer prior to returning an error.
|
||
|
||
2013-11-26 17:11:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: fix error handling in _finish() hook.
|
||
Fix GstVideoEncoder::finish() implementation to really return possible
|
||
errors instead of GST_FLOW_OK. That is, fix check for timeout status.
|
||
|
||
2013-11-26 16:34:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.h:
|
||
vaapiencode: minor clean-ups.
|
||
Add a GST_VAAPIENCODE_CAST() helper to avoid run-time checks against
|
||
the GObject type system. We are guaranteed to only deal with the same
|
||
plug-in element object.
|
||
|
||
2013-11-26 15:31:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: fix support for raw YUV sink buffers.
|
||
Allow vaapiencode plug-in elements to encode from raw YUV buffers.
|
||
The most efficient way to do so is to let the vaapiencode elements
|
||
allocate a buffer pool, and subsequently buffers from it. This means
|
||
that upstream elements are expected to honour downstream pools.
|
||
If upstream elements insist on providing their own allocated buffers
|
||
to the vaapiencode elements, then it possibly would be more efficient
|
||
to insert a vaapipostproc element before the vaapiencode element.
|
||
This is because vaapipostproc currently has better support than other
|
||
elements for "foreign" raw YUV buffers.
|
||
|
||
2013-11-26 15:12:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
vaapiencode: fix support for GStreamer 1.2.
|
||
|
||
2013-11-07 17:42:21 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
vaapiencode: initial port to GStreamer 1.2.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-20 16:21:32 +0800 XuGuangxin <guangxin.xu@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.c:
|
||
* gst/vaapi/gstvaapiencode_mpeg2.h:
|
||
plugins: add mpeg2 encoder element.
|
||
Add GstVaapiEncodeMPEG2 element object. The actual plug-in element
|
||
is called "vaapiencode_mpeg2".
|
||
Valid properties:
|
||
- rate-control: rate control mode (default: cqp - constant QP)
|
||
- bitrate: desired bitrate in kbps (default: auto-calculated)
|
||
- key-period: maximal distance between two key frames (default: 30)
|
||
- max-bframes: number of B-frames between I and P (default: 2)
|
||
- quantizer: constant quantizer (default: 8)
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-29 16:02:56 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiencode_h264.c:
|
||
* gst/vaapi/gstvaapiencode_h264.h:
|
||
plugins: add h264 encoder element.
|
||
Add GstVaapiEncodeH264 element object. The actual plug-in element
|
||
is called "vaapiencode_h264".
|
||
Valid properties:
|
||
- rate-control: rate control mode (default: none)
|
||
- bitrate: desired bitrate in kbps (default: auto-calculated)
|
||
- key-period: maximal distance between two key frames (default: 30)
|
||
- num-slices: number of slices per frame (default: 1)
|
||
- max-bframes: number of B-frames between I and P (default: 0)
|
||
- min-qp: minimal quantizer (default: 1)
|
||
- init-qp: initial quantizer (default: 26)
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-29 13:44:48 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapiencode.c:
|
||
* gst/vaapi/gstvaapiencode.h:
|
||
plugins: add base encoder element.
|
||
vaapiencode element is based on GstVideoEncoder APIs.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-20 16:20:15 +0800 XuGuangxin <guangxin.xu@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_mpeg2_priv.h:
|
||
encoder: add mpeg2 encoder.
|
||
Add initial support for MPEG-2 encoding. I/P/B frames are supported.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-29 15:46:11 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_h264_priv.h:
|
||
encoder: add h264 encoder.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-29 13:34:06 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapiencoder_priv.h:
|
||
Add initial infrastructure for video encoding.
|
||
Add initial API for video encoding: only basic interfaces and small
|
||
encoder objects are implemented so far.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-29 15:41:23 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/base/Makefile.am:
|
||
* gst-libs/gst/base/gstbitwriter.c:
|
||
* gst-libs/gst/base/gstbitwriter.h:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
libs: add generic bitstream writer.
|
||
GstBitWriter provides a bit writer that can write any number of bits
|
||
to a pre-allocated memory buffer. Helper functions are also provided
|
||
to write any number of bits from 8, 16, 32 and 64 bit variables.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-12 22:07:59 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
libs: add support for rate-control to GstVaapiContext.
|
||
Extend GstVaapiContextInfo structure to hold the desired rate control
|
||
mode for encoding purposes. For decoding purposes, this field is not
|
||
used and it is initialized to GST_VAAPI_RATECONTROL_NONE.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-12 21:33:32 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
libs: add rate-control attributes.
|
||
Add GstVaapiRateControl types and GType values in view to supporting
|
||
rate controls for encoding. This is meant to be used for instance in
|
||
GstVaapiContext.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-22 11:56:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-11-22 11:28:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
build: fix for Wayland headers not in standard include dirs.
|
||
Fix build when Wayland headers don't live in plain system include dirs
|
||
like /usr/include but rather in /usr/include/wayland for instance.
|
||
Original patch written by Dominique Leuenberger <dimstar@opensuse.org>
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=712282
|
||
|
||
2013-11-14 10:58:37 +0000 Ross Burton <ross.burton@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
build: link libgstvaapi-wayland against videoutils.
|
||
This library is using symbols that don't exist in GStreamer 0.10 so
|
||
it needs to link to built-in implementation (libgstvaapi-videoutils).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=712282
|
||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-22 11:15:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapostproc: fix memory leaks.
|
||
Destroy VPP output surface pool on exit. Also avoid a possible crash
|
||
in double-free situation caused by insufficiently reference counted
|
||
array of formats returned during initialization.
|
||
|
||
2013-11-22 10:19:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: fix and optimize advanced deinterlacing mode.
|
||
Fix advanced deinterlacing modes with VPP to track only up to 2 past
|
||
reference buffers. This used to be 3 past reference buffers but this
|
||
doesn't fit with the existing decode pipeline that only has 4 extra
|
||
scratch surfaces.
|
||
Also optimize references tracking to be only enabled when needed, i.e.
|
||
when advanced deinterlacing mode is used. This means that we don't
|
||
need to track past references for basic bob or weave deinterlacing.
|
||
|
||
2013-11-22 10:04:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix "mixed" mode deinterlacing.
|
||
In "mixed" interlaced streams, the buffer contains additional flags that
|
||
specify whether the frame contained herein is interlaced or not. This means
|
||
that we can alternatively get progressive or interlaced frames. Make sure
|
||
to disable deinterlacing at the VPP level when the source buffer is no longer
|
||
interlaced.
|
||
|
||
2013-11-22 09:49:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix memory leaks with advanced deinterlacing.
|
||
Fix memory leaks with advanced deinterlacing, i.e. when we keep track
|
||
of past buffers. Completely reset the deinterlace state, thus destroying
|
||
any buffer currently held, on _start(), _stop() and _destroy().
|
||
|
||
2013-11-22 06:59:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: updates.
|
||
- GStreamer 1.2 APIs are supported ;
|
||
- Video Processing (VA/VPP) features.
|
||
|
||
2013-11-22 06:45:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: update for GStreamer >= 1.0.x and VPP features.
|
||
|
||
2013-11-22 06:37:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/output.h:
|
||
* tests/test-display.c:
|
||
* tests/test-jpeg.c:
|
||
* tests/test-jpeg.h:
|
||
* tests/test-mpeg4.c:
|
||
* tests/test-mpeg4.h:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-windows.c:
|
||
legal: update copyright notice dates.
|
||
|
||
2013-11-22 05:57:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparser_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparser_frame.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiworkarounds.h:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapiuploader.h:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.h:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.h:
|
||
* tests/codec.c:
|
||
* tests/codec.h:
|
||
* tests/decoder.c:
|
||
* tests/decoder.h:
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/output.c:
|
||
* tests/output.h:
|
||
* tests/simple-decoder.c:
|
||
* tests/test-decode.c:
|
||
* tests/test-decode.h:
|
||
* tests/test-display.c:
|
||
* tests/test-filter.c:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-jpeg.c:
|
||
* tests/test-jpeg.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-mpeg4.c:
|
||
* tests/test-mpeg4.h:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
* tests/test-windows.c:
|
||
legal: add per-file authorship information.
|
||
Credit original authors on a per-file basis as we cannot expect people
|
||
to know all country-specific rules, or bother browsing through the git
|
||
history.
|
||
|
||
2013-11-21 23:52:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.7.
|
||
|
||
2013-11-21 23:51:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-11-21 23:17:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
decoder: don't include obsolete headers.
|
||
The <gst/vaapi/gstvaapicontext.h> header was removed from the public
|
||
set of APIs. So, don't make public headers (gstvaapidecoder.h) depend
|
||
on private files.
|
||
|
||
2013-11-18 16:20:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: add initial support for GStreamer 1.2.
|
||
Port vaapipostproc element to GStreamer 1.2. Support is quite minimal
|
||
right now so that to cope with auto-plugging issues/regressions. e.g.
|
||
this happens when the correct set of expected caps are being exposed.
|
||
This means that, currently, the proposed caps are not fully accurate.
|
||
|
||
2013-11-01 10:22:17 +0800 Halley Zhao <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add support for denoise and sharpen filters.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-21 19:52:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add support for advanced deinterlacing.
|
||
Add initial support for advanced deinterlacing. The history buffer
|
||
size is arbitrarily set to 3 references for now.
|
||
|
||
2013-11-21 22:32:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix deinterlacing with VPP.
|
||
Fix basic deinterlacing flags provided to gst_vaapi_set_deinterlacing()
|
||
for the first field. Render flags were supplied instead of the actual
|
||
deinterlacing flags (deint_flags).
|
||
|
||
2013-11-21 15:08:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix transform caps.
|
||
Fix GstBaseTransform::transform_caps() implementation to always return
|
||
the complete set of allowed sink pad caps (unfixated) even if the src
|
||
pad caps we are getting are fixated. Rationale: there are just so many
|
||
possible combinations, and it was wrong to provide a unique set anyway.
|
||
As a side effect, this greatly simplifies the ability to derive src pad
|
||
caps from fixated sink pad caps.
|
||
|
||
2013-11-01 10:31:13 +0800 Halley Zhao <halley.zhao@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: add helper to specify references for deinterlacing.
|
||
Add gst_vaapi_fitler_set_deinterlacing_references() API to submit the
|
||
list of surfaces used for forward or backward reference in advanced
|
||
deinterlacing mode, e.g. Motion-Adaptive, Motion-Compensated.
|
||
The list of surfaces used as deinterlacing references shall be live
|
||
until the next call to gst_vaapi_filter_process().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-21 18:44:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* tests/test-filter.c:
|
||
filter: fix semantics of deinterlacing flags.
|
||
Fix deinterlacing flags to make more sense. The TFF (top-field-first)
|
||
flag is meant to specify the organization of reference frames used in
|
||
advanced deinterlacing modes. Introduce the more explicit flag TOPFIELD
|
||
to specify that the top-field of the supplied input surface is to be
|
||
used for deinterlacing. Conversely, if not set, this means that the
|
||
bottom field of the supplied input surface will be used instead.
|
||
|
||
2013-11-21 17:20:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: add helpers to check for supported/active operation.
|
||
Add a couple of helper functions:
|
||
- gst_vaapi_filter_has_operation(): checks whether the VA driver
|
||
advertises support for the supplied operation ;
|
||
- gst_vaapi_filter_use_operation(): checks whether the supplied
|
||
operation was already enabled to its non-default value.
|
||
|
||
2013-11-20 15:10:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
libs: fix GstVaapiSurfaceProxy destroy notify call site.
|
||
The user-defined destroy notify function is meant to be called only when
|
||
the surface proxy was fully released, i.e. once it actually released the
|
||
VA surface back to the underlying pool.
|
||
|
||
2013-08-29 13:44:22 +0800 XuGuangxin <guangxin.xu@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool_priv.h:
|
||
libs: make GstVaapiVideoPool thread-safe.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=707108
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-08-29 14:04:06 +0800 XuGuangxin <guangxin.xu@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
libs: robustify decoder objects and surface proxy initialization.
|
||
Fix GstVaapiPicture, GstVaapiSlice and GstVaapiSurfaceProxy initialization
|
||
sequences to have the expected default values set beforehand in case of an
|
||
error raising up further during creation. i.e. make it possible to cleanly
|
||
destroy those partially initialized objects.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=707108
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-21 11:01:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix decoder flush.
|
||
There are situations where gst_video_decoder_flush() is called, and
|
||
this subsequently produces a gst_video_decoder_reset() that kills the
|
||
currently active GstVideoCodecFrame. This means that it no longer
|
||
exists by the time we reach GstVideoDecoder::finish() callback, thus
|
||
possibly resulting in a crash if we assumed spare data was still
|
||
available for decode (current_frame_size > 0).
|
||
Try to honour GstVideoDecoder::reset() behaviour from GStreamer 1.0
|
||
that means a flush, thus performing the actual operations there like
|
||
calling gst_video_decoder_have_frame() if pending data is available.
|
||
|
||
2013-11-20 19:21:05 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: fix dead-locks with decoder task.
|
||
Review all interactions between the main video decoder stream thread
|
||
and the decode task to derive a correct sequence of operations for
|
||
decoding. Also avoid extra atomic operations that become implicit under
|
||
the GstVideoDecoder stream lock.
|
||
|
||
2013-08-29 14:12:10 +0800 XuGuangxin <guangxin.xu@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix hard reset for seek cases.
|
||
Fix hard reset for seek cases by flushing the GstVaapiDecoder queue
|
||
and completely purge any decoded output frame that may come out from
|
||
it. At this stage, the GstVaapiDecoder shall be in a complete clean
|
||
state to start decoding over new buffers.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-08-29 14:12:10 +0800 XuGuangxin <guangxin.xu@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: drop decode timeout, always wait for a free surface.
|
||
vaapidecode used to wait up to one second past the expected time of
|
||
presentation for the last decoded frame. This is not realistic in
|
||
practice when it comes to video pause/resume. Changed behaviour to
|
||
unconditionnally wait for a free VA surface prior to continuing the
|
||
decoding. The decode task will continue pushing the output frames to
|
||
the downstream element while also reporting errors at the same time
|
||
to the main thread.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=707108
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-20 10:56:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix srcpad caps for GStreamer 1.2.
|
||
The srcpad caps exposed for GStreamer 1.2 were missing any useful info
|
||
like framerate, pixel-aspect-ratio, interlace-mode et al. Not to mention
|
||
that it relied on possibly un-initialized data. Fix srcpad caps to be
|
||
initialized from a sanitized copy of GstVideoDecoder output state caps.
|
||
Note: the correct way to expose the srcpad caps triggers an additional
|
||
issue in core GStreamer auto-plugging capabilities as the correct caps
|
||
to be exposed should be format=ENCODED with memory:VASurface caps feature
|
||
at the minimum. In some situations, we could determine the underlying
|
||
VA surface format, but this is not always possible. e.g. cases where it
|
||
is not allowed to expose the underlying VA surface data, or when the
|
||
VA driver implementation cannot actually provide such information.
|
||
|
||
2013-11-20 10:45:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: streamline VA formats exposed in caps to a realistic set.
|
||
Currently, the decoder only supports YUV 4:2:0 output. So, expose the
|
||
output formats for GStreamer 1.2 in caps to a realistic subset. This
|
||
means NV12, I420 or YV12 but also ENCODED if we cannot determine the
|
||
underlying VA surface format, or if it is actually not allowed to get
|
||
access to the surface contents.
|
||
|
||
2013-11-20 10:37:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: expose the expected format for GstVideoGLTextureUploadMeta.
|
||
Fix vaapidecode srcpad caps to only expose RGBA video format for the
|
||
meta:GstVideoGLTextureUploadMeta feature. That's only what is supported
|
||
so far. Besides, drop this meta from the vaapisink sinkpad caps since
|
||
we really don't support that for rendering.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=711828
|
||
|
||
2013-11-18 18:25:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: automatically detect GStreamer API version.
|
||
Automatically detect GStreamer API version. The --with-gstreamer-api
|
||
configure option now defaults to "autodetect" and configure then tries
|
||
to derive the GStreamer API version from the highest version based on
|
||
what pkg-config --modversion would report.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=711657
|
||
|
||
2013-11-01 13:43:11 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix support for raw YUV data upload on GStreamer 1.0.
|
||
Fix raw YUV data uploaded as in the following pipeline:
|
||
$ gst-launch-1.0 filesrc video.yuv ! videoparse ! vaapipostproc ! vaapisink
|
||
The main reason why it failed was that the videoparse element simply
|
||
allocates GstBuffer with raw data chunk'ed off the sink pad without
|
||
any prior knowledge of the actual frame info. i.e. it basically just
|
||
calls gst_adapter_take_buffer().
|
||
We could avoid the extra copy performed in vaapipostproc if the videoparse
|
||
element was aware of the downstream pool and bothers copying line by
|
||
line, for each plane. This means that, for a single frame per buffer,
|
||
the optimizatin will be to allocate the video buffer downstream, map
|
||
it, and copy each line that is coming through until we need to fills
|
||
in the successive planes.
|
||
Still, optimized raw YUV uploads already worked with the following:
|
||
$ gst-launch-1.0 videotestsrc ! vaapipostproc ! vaapisink
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=711250
|
||
[clean-ups, fixed error cases to unmap and unref outbuf]
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-11-16 07:02:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: try to downgrade deinterlace-method when needed.
|
||
If the currently selected deinterlacing method is not supported by the
|
||
underlying hardware, then try to downgrade the method to a supported one.
|
||
At the minimum, basic bob-deinterlacing shall always be supported.
|
||
|
||
2013-11-15 19:04:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: add initial support for deinterlacing with VPP.
|
||
Allow basic bob-deinterlacing to work when VPP is enabled. Currently,
|
||
this only covers bob-deinterlacing when the output pixel format is
|
||
explicitly set.
|
||
|
||
2013-11-15 17:14:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix build on 64-bit platforms with GStreamer 0.10.
|
||
The size argument for GstBaseTransform::transform_size() hook is a
|
||
guint in GStreamer 0.10 APIs but a gsize in GStreamer >= 1.0.X APIs.
|
||
|
||
2013-10-18 18:08:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add initial support for scaling.
|
||
Add initial support for basic scaling with size specified through the
|
||
"width" and "height" properties. If either user-provided dimension is
|
||
zero and "force-aspect-ratio" is set to true (the default), then the
|
||
other dimension is scaled to preserve the aspect ratio.
|
||
|
||
2013-10-18 18:08:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add initial support for color conversion.
|
||
If VPP is available, we always try to implicitly convert the source
|
||
buffer to the "native" surface format for the underlying accelerator.
|
||
This means that no optimization is performed yet to propagate raw YUV
|
||
buffers to the downstream element as is, if VPP is available. i.e. it
|
||
will always cause a color conversion.
|
||
|
||
2013-10-16 11:23:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix bug when user disabled deinterlacing.
|
||
Fix pipeline error / hang when the user disabled deinterlacing through
|
||
the deinterlace-mode=disabled property setting.
|
||
|
||
2013-10-16 11:20:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: factor out operations to be applied into flags.
|
||
Even if we only support deinterlacing for now, use flags to specify
|
||
which filters are to be applied to each frame we receive in transform().
|
||
This is preparatory work for integrating new filters.
|
||
|
||
2013-10-04 15:37:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add support for raw YUV video source buffers.
|
||
Allow video processing from raw YUV buffers coming from the sink pad,
|
||
while still producing a VA surface for the downstream elements.
|
||
|
||
2013-10-04 16:00:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: add support for "mixed" interlace mode.
|
||
Add support for "mixed" interlace-mode, whereby the video frame buffer
|
||
shall be deinterlaced only if its flags mention that's actually an
|
||
interlaced frame buffer.
|
||
|
||
2013-10-03 19:04:07 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
vaapipostproc: rework plug-in element.
|
||
Rewrite the vaapipostproc plug-in element so that it derives from
|
||
GstBaseTransform, thus simplifying the caps negotiation process.
|
||
|
||
2013-10-09 17:25:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: fix and optimize check for buffer pool allocator params.
|
||
Reset the buffer pool allocator only if the config caps changed in a
|
||
sensible way: format or resolution change. i.e. don't bother with
|
||
other caps like colorimetry et al. as this doesn't affect the way to
|
||
allocate VA surfaces or images.
|
||
|
||
2013-10-09 10:33:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: enable memory maps for read & write with direct-rendering.
|
||
Enable read and write mappings only if direct-rendering is supported.
|
||
Otherwise, this means that we may need to download data from the VA
|
||
surface first for correctness, even if the VA surface doesn't need to
|
||
be read at all. i.e. sometimes, READWRITE mappings are meant for
|
||
surfaces that are written to first, and read afterwards for further
|
||
processing.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=704078
|
||
|
||
2013-10-09 10:06:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: fix check for direct-rendering support.
|
||
Fix check for direct-rendering if the creation of VA surfaces with
|
||
an explicit pixel format is not support, e.g. VA-API < 0.34.0, and
|
||
that we tried to allocate a VA surface based on the corresponding
|
||
chroma type. i.e. in that particular case, we have to make sure that
|
||
the derived image has actually the expected format.
|
||
|
||
2013-10-09 09:47:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: fix buffer pool reset_buffer() to reset memory resources.
|
||
Fix GstVaapiVideoBufferPool::reset_buffer() to reset the underlying
|
||
memory resources, and more particularly the VA surface proxy. Most
|
||
importantly, the GstVaapiVideoMeta is retained. Cached surface in
|
||
memory are released, thus triggering a new allocation the next time
|
||
we need to map the buffer.
|
||
|
||
2013-10-09 09:33:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: fix GstVaapiVideoMemory to allocate VA surface proxies.
|
||
Make sure GstVaapiVideoMemory allocates VA surface proxies from a
|
||
pool stored in the parent VA memory allocator.
|
||
This fixes the following scenario:
|
||
- VA video buffer 1 is allocated from a buffer pool
|
||
- Another video buffer is created, and inherits info from buffer 1
|
||
- Buffer 1 is released, thus pushing it back to the buffer pool
|
||
- New buffer alloc request comes it, this yields buffer 1 back
|
||
- At this stage, buffers 1 and 2 still share the same underlying VA
|
||
surface, but buffer 2 was already submitted downstream for further
|
||
processing, thus conflicting with additional processing we were
|
||
about to perform on buffer 1.
|
||
Maybe the core GstBufferPool implementation should have been fixed
|
||
instead to actually make sure that the returned GstBuffer memory we
|
||
found from the pool is writable?
|
||
|
||
2013-10-04 19:34:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: create a proxy for GstVaapiUploader allocated buffers.
|
||
Always make sure to allocate a VA surface proxy for GstVaapiUploader
|
||
allocated buffers, i.e. make gst_vaapi_uploader_get_buffer() allocate
|
||
a proxy surface.
|
||
This fixes cases where we want to retain the underlying surface longer,
|
||
instead of releasing it back to the surface pool right away.
|
||
|
||
2013-10-04 19:30:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
plugins: add helper function to disable deinterlacing in caps.
|
||
Add gst_caps_set_interlaced() helper function that would reset the
|
||
interlace-mode field to "progressive" for GStreamer >= 1.0, or the
|
||
interlaced field to "false" for GStreamer 0.10.
|
||
|
||
2013-10-01 18:26:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
filter: fix memory leak of VPP operations.
|
||
Fix ensure_operations() to release the VPP operations array if non
|
||
NULL, prior to returning to the caller. The former function was also
|
||
renamed to a more meaningful get_operations() since the caller owns
|
||
the returned array that needs to be released.
|
||
|
||
2013-09-04 13:53:25 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
filter: fix first-time operation lookup.
|
||
Fix first-time operation lookup through find_operation() if the set
|
||
of supported operations was not initially determined through the
|
||
gst_vaapi_filter_get_operations() helper function.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-09-04 13:53:25 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
filter: fix colorbalance related subtypes.
|
||
Fix intiialization of GstVaapiFilterOpData for colorbalance related
|
||
operations. In particular, fill in the va_subtype field accordingly.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-09-30 17:08:12 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
filter: fix VA-API 0.34.0 symbol guards.
|
||
VASurfaceAttrib and VAProcFilterParameterBufferType are symbols
|
||
that need to be guarded for libva 0.34 and 0.33, respectively.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=709102
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-10-01 17:57:11 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: hanle the context query in any pad.
|
||
Also this patch simplifies the code, since now the query is common for the
|
||
decoder and the sink.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=709200
|
||
|
||
2013-10-01 12:09:44 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
plugins: query upstream element for a GstContext.
|
||
Fix gst_vaapi_video_context_prepare() to also query upstream elements
|
||
for a valid GstContext. Improve comments regarding the steps used to
|
||
lookup or build that context, thus conforming to the GstContext API
|
||
recommendations.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=709112
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-09-26 15:21:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/control.in:
|
||
Fix detection and packaging of GStreamer 1.2.x builds.
|
||
The GStreamer 1.2.x packages sticked to the naming convention for 1.0.x
|
||
packages, i.e. -1.0 suffix. However, for gstreamer-vaapi packaging
|
||
purposes, update the versioning to -1.2 suffix instead.
|
||
|
||
2013-07-15 13:41:00 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.c:
|
||
* gst/vaapi/gstvaapivideometa_texture.h:
|
||
plugins: add support for GstVideoGLTextureUploadMeta.
|
||
If the allocation meta GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE is
|
||
requested, and more specifically under a GLX configuration, then add
|
||
the GstVideoGLTextureUploadMeta to the output buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703236
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-04 11:03:52 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: add support for GstCaps features.
|
||
Move VA video buffer memory from "video/x-surface,type=vaapi" format,
|
||
as expressed in caps, to the more standard use of caps features. i.e.
|
||
add "memory:VASurface" feature attribute to the associated caps.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703271
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-12 12:58:57 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: improve ::query() debugging messages.
|
||
Fix gst_vaapidecode_query() to correctly display the query type name,
|
||
instead of randomly displaying that we shared the underlying display.
|
||
Also add debug info for the GstVaapiSink::query() handler, i.e. the
|
||
supplied query type name actually.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-12 12:58:57 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: add support for GstContext API.
|
||
Add support for the new GstContext API from GStreamer 1.2.x.
|
||
- implement the GstElement::set_context() hook ;
|
||
- reply to the `context' query from downstream elements.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703235
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-05-22 12:07:52 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapivideocontext.c:
|
||
* gst/vaapi/gstvaapivideocontext.h:
|
||
plugins: add compat layer for GstVideoContext.
|
||
Add thin compatibility layer for the deprecated GstVideoContext API.
|
||
For GStreamer API >= 1.2, this involves the following two functions:
|
||
- gst_vaapi_video_context_prepare(): queries if a context is already
|
||
set in the pipeline ;
|
||
- gst_vaapi_video_context_propagate(): propagates the newly-created
|
||
context to the rest of the pipeline.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703235
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-05-21 12:42:39 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
plugins: initial port to GStreamer 1.2.
|
||
Port vaapidecode and vaapisink plugins to GStreamer API >= 1.2. This
|
||
is rather minimalistic so that to test the basic functionality.
|
||
Disable vaapipostproc plugin for now as further polishing is needed.
|
||
Also disable GstVideoContext interface support since this API is now
|
||
gone in 1.2.x. This is preparatory work for GstContext support.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703235
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-09-24 16:21:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: fix for non-X11 backends.
|
||
Don't try to create pixmaps if we have not requested that feature. This
|
||
fixes execution for non-X11 backends, and most specifically DRM video
|
||
output mode.
|
||
|
||
2013-09-24 16:22:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit b33bd32.
|
||
b33bd32 jpeg: fix and optimize scan for next marker code
|
||
|
||
2013-09-23 19:14:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: fix calculation of MCU count.
|
||
Fix calculation of MCU count for image sizes that are not a multiple
|
||
of 8 pixels in either dimension, but also for non-common sampling
|
||
factors like 4:2:2 in non-interleaved mode.
|
||
|
||
2013-09-23 16:49:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
jpeg: add support for multiscan images.
|
||
Add support for images with multiple scans per frame. The Huffman table
|
||
can be updated before SOS, and thus possibly requiring multiple uploads
|
||
of Huffman tables to the VA driver. So, the latter must be able to cope
|
||
with multiple VA buffers of type 'huffman-table' and with the correct
|
||
sequential order.
|
||
|
||
2013-09-23 11:41:52 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: improve robustness when packets are missing.
|
||
Improve robustness when some expected packets where not received yet
|
||
or that were not correctly decoded. For example, don't try to decode
|
||
a picture if there was no valid frame headers.
|
||
|
||
2013-09-20 16:46:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: minor clean-ups.
|
||
Improve debugging and error messages. Rename a few variables to fit the
|
||
existing naming conventions. Change some fatal asserts to non-fatal
|
||
error codes.
|
||
|
||
2013-09-20 10:12:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
jpeg: rework and optimize parser.
|
||
Split the input buffer data into decoder units that represent a JPEG
|
||
segment. Handle scan decoder unit specifically so that it can include
|
||
both the scan header (SOS) but also any other ECS or RSTi segment.
|
||
That way, we parse the input buffer stream only once at the gst-vaapi
|
||
level instead of (i) in gst_vaapi_decoder_jpeg_parse() to split the
|
||
stream into frames SOI .. EOI and (ii) in decode_buffer() to further
|
||
determine segment boundaries and decode them.
|
||
In practice, this is a +15 to +25% performance improvement.
|
||
|
||
2013-09-17 14:29:54 +0800 Junfeng Xu <jun.feng.xu@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: handle comment segments.
|
||
Fix decode_buffer() function to gracefully skip comment (COM) segments.
|
||
This fixes decoding of streams generated by certain cameras, e.g. like
|
||
the Logitech Pro C920.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=708208
|
||
Signed-off-by: Junfeng Xu <jun.feng.xu@intel.com>
|
||
|
||
2013-09-18 17:59:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: fix determination of image bounds.
|
||
Look for the exact image bounds characterised by the <SOI> and <EOI>
|
||
markers. Use the gst_jpeg_parse() codec parser utility function to
|
||
optimize the lookup for the next marker segment.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=707447
|
||
|
||
2013-09-10 15:46:09 +0800 Junfeng Xu <jun.feng.xu@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: fix calculation of offset to next marker segment.
|
||
Fix calculation of the offset to the next marker segment since the
|
||
correction of the codecparser part to match the API specification.
|
||
i.e. the GstJpegMarkerSegment.size field represents the size in bytes
|
||
of the segment minus any marker prefix.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=707447
|
||
Signed-off-by: Junfeng Xu <jun.feng.xu@intel.com>
|
||
|
||
2013-09-20 18:30:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 23c7dde.
|
||
23c7dde jpeg: fix calculation of segment size
|
||
|
||
2013-08-31 16:00:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-08-31 15:47:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.6.
|
||
|
||
2013-08-31 15:46:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-08-15 17:59:37 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
configure: fix detection of VA/JPEG decoding API.
|
||
Fix detection of VA/JPEG decoding API with non-standard libva packages.
|
||
More precisely, some packages were shipping with a <va/va.h> header that
|
||
did not include <va/va_dec_jpeg.h>.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=706055
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-04-18 19:49:42 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: ensure the uploader is setup for upstream allocated buffers.
|
||
In GStreamer 0.10 builds, make sure that the GstVaapiUploader helper
|
||
is setup in case upstream elements allocate buffers themselves without
|
||
honouring our GstVaapiSink::bufer_alloc() hook.
|
||
In particular, this fixes support for OGG video streams with WebKit.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703934
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-08-29 19:07:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: simplify get_render_buffer() for GStreamer 0.10 builds.
|
||
Implement and use gst_vaapisink_get_render_buffer() for GStreamer 0.10
|
||
builds as well.
|
||
|
||
2013-08-29 18:34:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: handle raw buffers not created from VA video buffer pool.
|
||
Handle raw video buffers that were not created from a VA video buffer
|
||
pool. Use the generic GstVideo API to copy buffers in GStreamer 1.0.x
|
||
builds instead of the GstVaapiUploader.
|
||
https://bugs.freedesktop.org/show_bug.cgi?id=55818
|
||
|
||
2013-08-29 19:33:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: remove extraneous size information from allowed caps.
|
||
Fix _getcaps() implementation to not report codecs with size information
|
||
filled in the returned caps. That's totally useless nowadays. Ideally,
|
||
this is a hint to insert a video parser element, thus allowing future
|
||
optimizations, but this is not a strict requirement for gstreamer-vaapi,
|
||
which is able to parse the elementary bitstreams itself.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=704734
|
||
|
||
2013-07-30 14:05:39 +0800 Guangxin.Xu <Guangxin.Xu@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: submit the last frame from output adapter to decoder.
|
||
If there is no frame delimiter at the end of the stream, e.g. no
|
||
end-of-stream or end-of-sequence marker, and that the current frame
|
||
was fully parsed correctly, then assume that last frame is complete
|
||
and submit it to the decoder.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=705123
|
||
Signed-off-by: Guangxin.Xu <Guangxin.Xu@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-08-29 11:55:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: push all decoded frames from within the task.
|
||
Make sure to push all decoded frames from the task so that the unlying
|
||
VA surfaces could all be rendered from the same thread.
|
||
|
||
2013-08-27 18:24:12 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: render the raw surface if VPP failed.
|
||
As a last resort, if video processing capabilities (VPP) are not available,
|
||
or they did not produce anything conclusive enough, then try to fallback to
|
||
the original rendering code path whereby the whole VA surface is rendered
|
||
as is, no matter of video cropping or deinterlacing requests.
|
||
Note: under those conditions, the visual outcome won't be correct but at
|
||
least, something gets displayed instead of bailing out.
|
||
|
||
2013-08-27 18:20:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: add supporting for video processing.
|
||
Try to use VA/VPP processing capabilities to handle video cropping and
|
||
additional rendering flags that may not be directly supported by the
|
||
underlying hardware when exposing a suitable Wayland buffer for the
|
||
supplied VA surface. e.g. deinterlacing, different color primaries than
|
||
BT.601, etc.
|
||
|
||
2013-08-27 16:26:22 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: add new frame redraw infrastructure.
|
||
Update the frame redraw infrastructure with a new FrameState stucture
|
||
holds all the necessary information used to display the next pending
|
||
surface.
|
||
While we are at it, delay the sync operation down to when it is actually
|
||
needed. That way, we keep performing additional tasks meanwhile.
|
||
|
||
2013-08-27 18:06:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: allow specification of render target regions.
|
||
Add support for rendering the source surface to a particular region within
|
||
the supplied target surface. The default background color is black.
|
||
|
||
2013-08-26 17:14:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
decode: fix creation of GLX video buffers for GStreamer 0.10.
|
||
Fix creation of GstVaapiVideoBuffer objects (i) to have that type for real;
|
||
and (ii) to correctly extract the GstSurfaceConverter from the video buffer
|
||
object meta.
|
||
This fixes support for cluttersink with GStreamer 0.10 builds.
|
||
|
||
2013-08-26 16:15:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: disable video cropping as picture_display_extension() is missing.
|
||
Disable video cropping in MPEG-2 codec because it is partially implemented
|
||
and actually because nobody implements it that way, and the standard spec
|
||
does not specify the display process either anyway.
|
||
Most notably, there are two possible use cases for sequence_display_extension()
|
||
horizontal_display_size & vertical_display_size: (i) guesstimating the
|
||
pixel-aspect-ratio, or (ii) implement some kind of span & scan process
|
||
in conjunction with picture_display_extension() information.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=704848
|
||
|
||
2013-08-16 16:58:58 +0100 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: allow scaling to ignore aspect ratio.
|
||
Other GStreamer sinks, like xvimagesink, have a force-aspect-ratio property,
|
||
which allows you to say that you don't want the sink to respect aspect
|
||
ratio. Add the same property to vaapisink.
|
||
http://lists.freedesktop.org/archives/libva/2012-September/001298.html
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth at onelan.co.uk>
|
||
|
||
2013-05-14 15:19:04 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix memory leak of GstVaapiUploader instance.
|
||
Make sure gst_vaapisink_ensure_uploader() checks for the existence
|
||
of a former GstVaapiUploader instance prior to forcibly creating a
|
||
new one.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703980
|
||
|
||
2013-07-31 16:49:20 +0800 Guangxin.Xu <Guangxin.Xu@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix get_caps() implementation for GStreamer 1.0.
|
||
Fix GstBaseSink::get_caps() implementation for GStreamer 1.0.X builds
|
||
by honouring the filter caps argument. More precisely, this fixes the
|
||
following pipeline: gst-launch-1.0 videotestsrc ! vaapisink
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=705192
|
||
Signed-off-by: Guangxin.Xu <Guangxin.Xu@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-08-26 11:31:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: fix double definition of GstVaapiDecoderMpeg4Class.
|
||
This fixes the following issue:
|
||
CC libgstvaapi_0.10_la-gstvaapidecoder_mpeg4.lo
|
||
gstvaapidecoder_mpeg4.c:113: error: redefinition of typedef
|
||
'GstVaapiDecoderMpeg4Class'
|
||
gstvaapidecoder_mpeg4.c:44: note: previous declaration of
|
||
'GstVaapiDecoderMpeg4Class' was here
|
||
make[5]: *** [libgstvaapi_0.10_la-gstvaapidecoder_mpeg4.lo] Error 1
|
||
make[5]: Leaving directory
|
||
`/builddir/build/BUILD/gstreamer-vaapi-0.5.5.1/gst-libs/gst/vaapi'
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=705148
|
||
|
||
2013-07-30 15:59:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-filter.c:
|
||
tests: filter: add support for deinterlacing.
|
||
Add --deinterlace option to enable deinterlacing through explicit VA/VPP
|
||
deinterlacing filter. However, if --deinterlace option is not set but the
|
||
--deinterlace-flags option is set with "top-field-first", then the very
|
||
basic bob deinterlacing filter is set through VA/VPP proc pipeline flags.
|
||
|
||
2013-07-17 17:29:41 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* tests/test-filter.c:
|
||
tests: filter: add support for denoising and sharpening.
|
||
Add --denoise option to enable noise reduction with the level specified
|
||
as the option value (float). Likewise, add --sharpen option to enable
|
||
sharpening.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-24 14:31:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-filter.c:
|
||
tests: filter: add support for frame cropping.
|
||
Add support for frame cropping through the --crop-rect|-c argument.
|
||
The format used is either <WIDTH> 'x' <HEIGHT>, with origin at (0,0) ;
|
||
or full specification with '('? <X> ',' <Y> ')'? <WIDTH> 'x' <HEIGHT>.
|
||
|
||
2013-07-23 18:00:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-filter.c:
|
||
tests: filter: dump supported operations and formats.
|
||
|
||
2013-07-08 16:54:55 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-filter.c:
|
||
tests: add initial test for video processing.
|
||
Add minimal test case for video processing: scaling and color format
|
||
conversion.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-29 09:23:50 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
filter: add initial support for deinterlacing.
|
||
Add basic deinterlacing support, i.e. bob-deinterlacing whereby only
|
||
the selected field from the input surface is kept for the target surface.
|
||
Setting gst_vaapi_filter_set_deinterlacing() method argument to
|
||
GST_VAAPI_DEINTERLACE_METHOD_NONE means to disable deinterlacing.
|
||
Also move GstVaapiDeinterlaceMethod definition from vaapipostproc plug-in
|
||
to libgstvaapi core library.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-17 17:40:41 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: add support for color balance adjustment.
|
||
Add ProcAmp (color balance) adjustments for hue, saturation, brightness
|
||
and contrast. The respective range for each filter shall be the same as
|
||
for the VA display attributes.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-17 17:37:16 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: add support for sharpening.
|
||
Sharpening is configured with a float value. The supported range is
|
||
-1.0 .. 1.0 with 0.0 being the default, and that means no sharpening
|
||
operation at all.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-17 17:29:41 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: add support for denoising.
|
||
Noise reduction is configured with a float value. The supported range
|
||
is 0.0 .. 1.0 with 0.0 being the default, and that means no denoise
|
||
operation at all.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-24 14:22:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
filter: add support for frame cropping.
|
||
Frame cropping is defined with a GstVaapiRectangle value. The default
|
||
behaviour is to treat the source surface as a whole
|
||
|
||
2013-07-25 13:55:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
filter: add helper functions.
|
||
Add helper functions to ensure an operation VA buffer is allocated to
|
||
the right size; that filter caps get parsed and assigned to the right
|
||
operation too; and that float parameters are correctly scaled to fit
|
||
the reported range from the VA driver.
|
||
|
||
2013-07-23 15:52:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||
* gst-libs/gst/vaapi/gstvaapifilter.h:
|
||
Add initial infrastructure for video processing.
|
||
Add initial API for video processing: only scaling and color format
|
||
conversion operations are supported.
|
||
|
||
2013-07-24 11:53:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
libs: add gst_vaapi_video_format_from_string() helper.
|
||
Add gst_vaapi_video_format_from_string() helper function to convert from
|
||
a video format string representation to a suitable GstVideoFormat. This
|
||
is just an alias to gst_video_format_from_string() for GStreamer 1.0.x
|
||
builds, and a proper iteration over all GstVideoFormat string representations
|
||
otherwise for earlier GStreamer 0.10.x builds.
|
||
|
||
2013-07-24 11:37:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
libs: add gst_vaapi_video_format_from_va_fourcc() helper.
|
||
Add gst_vaapi_video_format_from_va_fourcc() helper that converts from a
|
||
VA fourcc value to a suitable GstVideoFormat.
|
||
|
||
2013-07-24 11:41:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
libs: add type definitions for GstVaapiPoint and GstVaapiRectangle.
|
||
Add helper functions to describe GstVaapiPoint and GstVaapiRectangle
|
||
structures as a standard GType. This could be useful to have them
|
||
described as a GValue later on.
|
||
|
||
2013-07-26 13:57:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
libs: drop some public APIs.
|
||
Don't expose GstVaapiContext APIs and make them totally private to
|
||
libgstvaapi core library. That API would also tend to disappear in
|
||
a future revision. Likewise, don't expose GstVaapiDisplayCache API
|
||
but keep symbols visible so that the various render backends could
|
||
share a common display cache implementation in libgstvaapi.
|
||
Try to clean-up the documentation from any stale entry too.
|
||
|
||
2013-08-23 18:35:42 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
tests: image: allow creation of images with interleaved patterns.
|
||
Add image_generate_full() function to create interleaved color rectangles.
|
||
If flags is zero, the whole frame is generated with a unique pattern. If
|
||
flags is non-zero, then each field is handled individually.
|
||
|
||
2013-08-23 16:25:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
tests: image: fix conversion from RGB to YUV.
|
||
Fix RGB to YUV conversion to preserve full data range.
|
||
|
||
2013-07-26 13:12:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
tests: image: try to upload images through vaDeriveImage() too.
|
||
On some platforms, vaPutImage() would fail even if it does not involve
|
||
color format conversion or scaling, whereas copying raw pixels through
|
||
vaDeriveImage() could work instead.
|
||
|
||
2013-07-26 10:05:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
tests: image: add support for packed YUV formats.
|
||
Add support for packed YUV 4:2:2 formats, i.e. YUY2 and UYVY.
|
||
|
||
2013-07-25 18:10:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
tests: image: fix generation of I420/YV12 images.
|
||
U/V planes were reversed, thus producing invalid images.
|
||
|
||
2013-07-24 13:55:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
tests: image: fix string representation for GstVideoFormat.
|
||
|
||
2013-07-26 12:57:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
image: clean image API up.
|
||
Don't expose functions that reference a GstVaapiImageRaw, those are
|
||
meant to be internal only for implementing subpictures sync. Also add
|
||
a few private definitions to avoid functions calls for retrieving
|
||
image size and format information.
|
||
|
||
2013-07-26 11:43:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
image: add gst_vaapi_image_copy() helper.
|
||
Add gst_vaapi_image_copy() helper function to copy images of same format
|
||
and size.
|
||
|
||
2013-07-22 14:53:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
plugins: handle video cropping in X11 pixmap converter.
|
||
Use GstVideoCropMeta in GStreamer 1.0 or any other render rectangle
|
||
we could decode from the stream.
|
||
|
||
2013-07-22 11:58:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.c:
|
||
* gst/vaapi/gstvaapivideoconverter_x11.h:
|
||
plugins: add support for "x11-pixmap" video converter type.
|
||
Install a new video converter that supports X11 pixmap targets for X11
|
||
backends only, or make the GLX converter creation function chain up to
|
||
the X11 converter whenever requested.
|
||
|
||
2013-07-22 09:36:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: add support for pixmap API.
|
||
Add support for the new render-to-pixmap API. Avoid flickering on
|
||
platforms supporting video overlay by keeping up to 2 intermediate
|
||
pixmaps.
|
||
|
||
2013-07-22 09:12:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: add support for video cropping.
|
||
Handle video cropping information attached to a VA surface proxy.
|
||
|
||
2013-07-22 09:03:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/output.c:
|
||
* tests/output.h:
|
||
* tests/test-decode.c:
|
||
tests: add support for render-to-pixmap.
|
||
Add --pixmap option to test-decode so that to allow copies of VA
|
||
surface to an intermediate pixmap and rendering from that pixmap.
|
||
Only X11 backends are supported for now.
|
||
|
||
2013-07-22 09:00:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
x11: implement pixmap rendering with RENDER extension.
|
||
Use hardware accelerated XRenderComposite() function, from the RENDER
|
||
extension, to blit a pixmap to screen. Besides, this can also support
|
||
cropping and scaling.
|
||
|
||
2013-07-19 15:05:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_x11.h:
|
||
x11: implement pixmap API.
|
||
Implement the new render-to-pixmap API. The only supported pixmap format
|
||
that will work is xRGB, with native byte ordering. Others might work but
|
||
they were not tested.
|
||
|
||
2013-07-22 10:10:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
x11: update x11_get_geometry() helper function with depth output.
|
||
Allow x11_get_geometry() utility function to also return the depth
|
||
assigned to the X drawable.
|
||
|
||
2013-07-22 10:00:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap.c:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap.h:
|
||
* gst-libs/gst/vaapi/gstvaapipixmap_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
Add initial Pixmap API.
|
||
Add API to transfer VA urfaces to native pixmaps. Also add an API to
|
||
render a native pixmap, for completeness. In general, rendering to
|
||
pixmap would only be useful to certain VA drivers and use cases on
|
||
X11 display servers. e.g. GLX_EXT_texture_from_pixmap (TFP) handled
|
||
in an upper layer.
|
||
|
||
2013-07-22 15:15:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
libs: add and expose gst_vaapi_video_format_to_string() helper.
|
||
This is just a wrapper over gst_video_format_to_string() for older
|
||
GStreamer 0.10 builds.
|
||
|
||
2013-07-18 02:54:54 -0300 Emilio López <emilio@elopez.com.ar>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: fix display type comparison in gst_vaapi_create_display().
|
||
After the code got moved to create the gst_vaapi_create_display() helper,
|
||
this comparison was not updated to dereference the newly-created
|
||
pointer, so the code was comparing the pointer itself to the type, and
|
||
therefore failing to retrieve the VA display.
|
||
This fixes the following error (and gets gst-vaapi decoding again):
|
||
ERROR vaapidecode gstvaapidecode.c:807:gst_vaapidecode_ensure_allowed_caps: failed to retrieve VA display
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=704410
|
||
Signed-off-by: Emilio López <emilio@elopez.com.ar>
|
||
|
||
2013-07-17 11:07:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-07-15 17:49:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: don't output dummy pictures.
|
||
Mark dummy pictures as output already so that we don't try to submit
|
||
them to the upper layer since this is purely internal / temporary
|
||
picture for helping the decoder.
|
||
|
||
2013-07-15 17:43:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: dispose GstVideoCodecFrame earlier.
|
||
Once the picture was output, it is no longer necessary to keep an extra
|
||
reference to the underlying GstVideoCodecFrame. So, we can release it
|
||
earlier, and maybe subsequently release the associate surface proxy
|
||
earlier.
|
||
|
||
2013-07-15 14:47:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.5.
|
||
|
||
2013-07-15 14:42:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* tests/image.c:
|
||
* tests/test-display.c:
|
||
Fix new video format API.
|
||
Fix new internal video format API, based on GstVideoFormat, to not
|
||
clobber with system symbols. So replace the gst_video_format_* prefix
|
||
with gst_vaapi_video_format_ prefix, even if the format type remains
|
||
GstVideoFormat.
|
||
|
||
2013-07-15 14:05:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump library major version.
|
||
Bump the library major version due to API/ABI changes that occurred in
|
||
the imaging API. In particular, GstVaapiImageFormat type was replaced
|
||
with the standard GstVideoFormat type. All dependent APIs were updated
|
||
to match this change.
|
||
|
||
2013-07-15 13:44:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-06-11 15:11:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: fix memory leak when processing interlaced pictures.
|
||
Fix memory leak when processing interlaced pictures and that occurs
|
||
because the first field, represented as a GstVideoCodecFrame, never
|
||
gets released. i.e. when the picture is completed, this is generally
|
||
the case when the second field is successfully decoded, we need to
|
||
propagate the GstVideoCodecFrame of the first field to the original
|
||
GstVideoDecoder so that it could reclaim memory.
|
||
Otherwise, we keep accumulating the first fields into GstVideoDecoder
|
||
private frames list until the end-of-stream is reached. The frames
|
||
are eventually released there, but too late, i.e. too much memory
|
||
may have been consumed.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=701257
|
||
|
||
2013-07-15 11:58:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: simlpify gst_vaapi_create_display() helper.
|
||
Simplify gst_vaapi_create_display() helper as gst_vaapi_display_XXX_new()
|
||
performs the necessary validation checks for the underlying VA display
|
||
prior to returning to the caller. So, if an error occurred, then NULL is
|
||
really returned in that case.
|
||
|
||
2013-05-24 05:04:01 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: add gst_vaapi_create_display() helper.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703235
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-12 17:47:07 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
plugins: don't reallocate pool allocator for the same caps.
|
||
If the video buffer pool config doesn't have new caps, then it's not
|
||
necessary to reinstantiate the allocator. That could be a costly
|
||
operation as we could do some extra heavy checking in there.
|
||
|
||
2013-07-12 17:14:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: fix ref counting of GstVaapiVideoMemory allocator.
|
||
Fix reference counting issue whereby gst_memory_init() does not hold
|
||
an extra reference to the GstAllocator. So, there could be situations
|
||
where the last instance of GstVaapiVideoAllocator gets released before
|
||
a dangling GstVaapiVideoMemory object, thus possibly leading to a crash.
|
||
|
||
2013-07-12 15:15:07 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
vaapiupload: use implicit color conversion to NV12.
|
||
Always perform conversion of sources buffers to NV12 since this is
|
||
the way we tested for this capability in ensure_allowed_caps(). This
|
||
also saves memory bandwidth for further rendering. However, this may
|
||
not preserve quality since the YUV buffers are down-sampled to 4:2:0.
|
||
|
||
2013-07-12 15:01:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
pool: fix deallocation of video pools.
|
||
The queue of free objects to used was deallocated with g_queue_free_full().
|
||
However, this convenience function shall only be used if the original queue
|
||
was allocated with g_queue_new(). This caused memory corruption, eventually
|
||
leading to a crash.
|
||
The correct solution is to pair the g_queue_init() with the corresponding
|
||
g_queue_clear(), while iterating over all free objects to deallocate them.
|
||
|
||
2013-03-13 17:44:52 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
vaapidownload: fix src caps format error.
|
||
This fixes direct linking of vaapidownload element to xvimagesink with
|
||
VA drivers supporting vaGetImage() from the native VA surface format to
|
||
a different VA image format. i.e. color conversion during download.
|
||
http://bugzilla.gnome.org/show_bug.cgi?id=703937
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-11 18:26:37 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
vaapidownload: fix debug string for image formats.
|
||
The image is now expressed as a standard GstVideoFormat, which is not
|
||
a FOURCC but rather a regular enum value.
|
||
This is a regression introduced in commit 09397fa.
|
||
|
||
2013-04-24 10:39:03 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: add support for raw YUY2/UYVY image copies.
|
||
Implement raw image copies for YUY2 format. Add support for UYVY format
|
||
too, with the same copy function as for YUY2. Even though components
|
||
ordering differs, copying line strides is essentially the same.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703939
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703940
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-10 15:15:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: clean-up video uploader helper.
|
||
Fix gst_vaapi_uploader_get_buffer() to not assign caps since they
|
||
were already negotiated beforehand, and they are not used from the
|
||
buffer in upstream elements.
|
||
Clean-up gst_vaapi_uploader_ensure_caps() to use the new image caps
|
||
represented as a GstVideoInfo.
|
||
|
||
2013-07-10 15:03:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: use GstVideoInfo in video uploader helper.
|
||
|
||
2013-07-10 10:34:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: allow creation of VA surfaces with explicit pixel format.
|
||
Adapt GstVaapiVideoMemory allocator to support creation of VA surfaces
|
||
with an explicit pixel format. This allows for direct rendering to
|
||
VA surface memory from a software decoder.
|
||
|
||
2013-07-10 14:20:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
surface: fix surface pool creation with an explicit pixel format.
|
||
Fix creation of surface pool objects to honour explicit pixel format
|
||
specification. If this operation is not supported, then fallback to
|
||
the older interface with chroma format.
|
||
|
||
2013-07-10 13:58:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
surface: try to determine the underlying VA surface format.
|
||
If a VA surface was allocated with the chroma-format interface, try to
|
||
determine the underlying pixel format on gst_vaapi_surface_get_format(),
|
||
or return GST_VIDEO_FORMAT_ENCODED if this is not a supported operation.
|
||
|
||
2013-07-09 19:08:37 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
surface: allow creation with explicit pixel format.
|
||
Make it possible to create VA surfaces with a specific pixel format.
|
||
This is a new capability brought in by VA-API >= 0.34.0. If that
|
||
capability is not built-in (e.g. using VA-API < 0.34.0), then
|
||
gst_vaapi_surface_new_with_format() will return NULL.
|
||
|
||
2013-07-10 09:48:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
surface: add helper function to get chroma type from GstVideoFormat.
|
||
Add gst_video_format_get_chroma_type() helper function to determine
|
||
the GstVaapiChromaType from a standard GStreamer video format. It is
|
||
possible to reconstruct that from GstVideoFormatInfo but it is much
|
||
simpler (and faster?) to use the local GstVideoFormatMap table.
|
||
|
||
2013-07-09 19:13:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
surface: add new chroma formats.
|
||
Add new chroma formats available with VA-API >= 0.34.0. In particular,
|
||
this includes "RGB" chroma formats, and more YUV subsampled formats.
|
||
Also add a new from_GstVaapiChromaType() helper function to convert
|
||
libgstvaapi chroma type to VA chroma format.
|
||
|
||
2013-07-10 13:32:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
pool: fix image pool to check for the video format to use.
|
||
Make gst_vaapi_image_pool_new() succeed, and thus returning a valid
|
||
image pool object, only if the underlying VA display does support the
|
||
requested VA image format.
|
||
|
||
2013-07-10 13:07:37 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* tests/Makefile.am:
|
||
* tests/test-surfaces.c:
|
||
Use GstVideoInfo for video pools.
|
||
Get rid of GstCaps to create surface/image pool, and use GstVideoInfo
|
||
structures instead. Those are smaller, and allows for streamlining
|
||
libgstvaapi more.
|
||
|
||
2013-07-09 18:03:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
Add more video formats.
|
||
Add new video format mappings to VA image formats:
|
||
- YUV: packed YUV (YUY2, UYVY), grayscale (Y800) ;
|
||
- RGB: 32-bit RGB without alpha channel (XRGB, XBGR, RGBX, BGRX).
|
||
|
||
2013-07-10 15:52:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: fix debug message with video format.
|
||
Fix debug message string with image format expressed with GstVideoFormat
|
||
instead of the obsolete format that turned out to be a fourcc.
|
||
This is a regression from git commit e61c5fc.
|
||
|
||
2013-07-09 15:28:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-display.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-windows.c:
|
||
tests: port to new video format API.
|
||
|
||
2013-07-09 15:44:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: port to new video format API.
|
||
|
||
2013-07-09 16:26:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
libs: use GstVideoInfo wherever possible.
|
||
In particular, use gst_video_info_from_caps() helper function in VA image
|
||
for implementating gst_vaapi_image_get_buffer() [vaapidownload] and
|
||
gst_vaapi_image_update_from_buffer() [subpictures] in GStreamer 0.10 builds.
|
||
|
||
2013-07-09 16:38:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
libs: drop GstVaapiImageFormat helpers.
|
||
Drop GstVaapiImageFormat helpers since everything was moved to the new
|
||
GstVideoFormat based API. Don't bother with backwards compatibility and
|
||
just bump the library major version afterwards.
|
||
|
||
2013-07-09 14:03:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
libs: port to new video format API.
|
||
|
||
2013-07-09 15:29:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/video-format.c:
|
||
* gst-libs/gst/vaapi/video-format.h:
|
||
Add new video format API.
|
||
Leverage GstVideoFormat utilities from core GStreamer to provide an
|
||
adaptation layer to VA image formats.
|
||
|
||
2013-07-09 11:13:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-07-08 18:32:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix creation of GLX texture.
|
||
Fix creation of GLX texture, to not depend on the GstCaps video size that
|
||
could be wrong, especially in presence of frame cropping. So, use the size
|
||
from the source VA surfaces.
|
||
An optimization could be to reduce the texture size to the actual visible
|
||
size on screen. i.e. scale down the texture size to match the screen dimensions,
|
||
while preserving the VA surface aspect ratio. However, some VA drivers don't
|
||
honour that.
|
||
|
||
2013-02-18 16:28:27 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: add support for video cropping.
|
||
If the stream has a sequence_display_extenion, then attach the
|
||
display_horizontal/display_vertical dimension as the cropping
|
||
rectangle width/height to the GstVaapiPicture.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-02-18 15:05:37 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: add support for video cropping.
|
||
If the Advanced profile has display_extension fields, then set the display
|
||
width/height dimension as cropping rectangle to the GstVaapiPicture.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-02-15 18:50:26 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add support for video cropping.
|
||
If the encoded stream has the frame_cropping_flag set, then associate
|
||
the cropping rectangle to GstVaapiPicture.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-08 17:01:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/decoder.c:
|
||
* tests/decoder.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
tests: add basic support for video cropping.
|
||
Change generic decoder of sample I-frame to return a GstVaapiSurfaceProxy
|
||
instead of a plain GstVaapiSurface. This means that we can now retrieve
|
||
the frame cropping rectangle from the surface proxy, along with additional
|
||
information if ever needed.
|
||
|
||
2013-07-08 14:50:42 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: add support for video cropping.
|
||
Add support for GstVideoCropMeta in GStreamer >= 1.0.x builds and gst-vaapi
|
||
specific meta information to hold video cropping details. Make the sink
|
||
support video cropping in X11 and GLX modes.
|
||
|
||
2013-02-15 18:24:24 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
plugins: add helper functions to set the render rectangle.
|
||
Some video clips may have a clipping region that needs to propogate to
|
||
the renderer. These helper functions make it possible to attach that
|
||
clipping region, as a GstVaapiRectangle, the the video meta associated
|
||
with the buffer.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-08 14:47:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
surfaceproxy: allow for NULL cropping rectangle.
|
||
Make it possible associate an empty cropping rectangle to the surface
|
||
proxy, thus resetting any cropping rectangle that was previously set.
|
||
This allows for returning plain NULL when no cropping rectangle was
|
||
initially set up to the surface proxy, or if it was reset to defaults.
|
||
|
||
2013-07-08 11:41:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
surfaceproxy: clean-up helper macros.
|
||
Always use the GST_VAAPI_SURFACE_PROXY() helper macro to cast from a
|
||
proxy macro argument to a GstVaapiSurfaceProxy pointer.
|
||
|
||
2013-07-08 11:43:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
surface: add simple surface info accessors as helper macros.
|
||
Add helper macros to retrieve the VA surface information like size
|
||
(width, height) or chroma type. This is a micro-optimization to avoid
|
||
useless function calls and NULL pointer re-checks in internal routines.
|
||
|
||
2013-02-15 18:42:12 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
decoder: add support for video cropping.
|
||
Add gst_vaapi_picture_set_crop_rect() helper function to copy the video
|
||
cropping information from raw bitstreams to each picture being decoded.
|
||
Also add helper function to surface proxy to propagate that information
|
||
outside of libgstvaapi. e.g. plug-in elements or standalone applications.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-08 17:30:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit f90de0a.
|
||
f90de0a h264: fix calculation of the frame cropping rectangle
|
||
535515c h264: parse the cropping rectangle separately
|
||
|
||
2013-07-05 19:03:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 0f68a71.
|
||
0f68a71 mpeg2: fix video packet header size checks
|
||
|
||
2013-06-07 20:08:43 +0800 Zhong Cong <congx.zhong@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: reset quantization matrices on new sequence headers.
|
||
The MPEG-2 standard specifies (6.3.7) that all quantisation matrices
|
||
shall be reset to their default values when a Sequence_Header() is
|
||
decoded.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-07-05 15:49:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: cope with latest codecparser changes.
|
||
Fix build with newer MPEG-2 codecparser where GstMpegVideoPacket are
|
||
used in individual header parsers. Also use the new slice parsing API.
|
||
|
||
2013-07-05 17:51:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit dddd182.
|
||
dddd182 mpeg2: add slice header parsing API
|
||
94e6228 mpeg2: add sequence scalable extension parsing API
|
||
531134f mpeg2: add new API that takes GstMpegVideoPacket arguments
|
||
4b135d3 h264: fix the return value type for the SEI palyload parsing methods
|
||
|
||
2013-06-27 12:25:44 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: expose the raw video formats in static caps template.
|
||
Expose all raw video formats in the static caps template since the
|
||
vaapisink is supporting raw data. We will get the exact set of formats
|
||
supported by the driver dynamically through the _get_caps() routine.
|
||
This also fixes an inconsistency wrt. GStreamer 0.10 builds.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=702178
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-06-27 13:53:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: add "use-glx" property for OpenGL rendering.
|
||
Now that VA/GLX capable buffers are generated by default on X11, thus
|
||
depending on a VA/GLX display, we stil want to use vaPutSurface() for
|
||
rendering since it is faster.
|
||
Anyway, OpenGL rendering in vaapisink was only meant for testing and
|
||
enabling "fancy" effects to play with. This has no real value. So,
|
||
disable OpenGL rendering by default.
|
||
|
||
2013-06-06 05:36:03 -0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: try to allocate a GLX display first over an X11 one.
|
||
If the gstreamer-vaapi plug-in elements are built with GLX support, then
|
||
try to allocate a GstVaapiDisplayGLX first before resorting to a VA/X11
|
||
display next.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=701742
|
||
|
||
2013-04-25 17:07:13 +0100 Lionel Landwerlin <llandwerlin@gmail.com>
|
||
|
||
* configure.ac:
|
||
configure: use GST_PLUGIN_PATH_1_0 instead of GST_PLUGIN_PATH for Gst 1.0.
|
||
jhbuild sets $GST_PLUGIN_PATH_1_0 which overrides $GST_PLUGIN_PATH.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=698858
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-04-27 15:15:49 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: fix wrong check for rect bounds in copy_image().
|
||
|
||
2013-06-14 13:41:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-06-14 11:47:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.4.
|
||
|
||
2013-06-14 11:43:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-06-14 11:39:54 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
configure: always build the MPEG-4 parser.
|
||
Always build the MPEG-4 parser for now as there are also core fixes
|
||
included in the parser that cannot be tested for with API checks.
|
||
|
||
2013-06-14 11:32:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: add --enable-builtin-codecparsers [default="yes"] option.
|
||
Add flag to have all codecparsers built-in, thus ensuring that the
|
||
resulting binaries have all the necessary bug fixes and this is what
|
||
the QA has been testing anyway.
|
||
Of course, for a completely up-to-date Linux distribution, you could
|
||
also opt for --disable-builtin-codecparsers and use the system ones.
|
||
Though, some core fixes could be missing, and those cannot be tested
|
||
for with API checks.
|
||
|
||
2013-06-14 11:14:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 843ce3e.
|
||
843ce3e jpeg: fix default Huffman tables generation.
|
||
8655187 mpeg2: fix the pixel-aspect-ratio calculation
|
||
21099dc mpeg2: actually store video bitrate values
|
||
dd02087 mpeg2: fix picture packet extension size check
|
||
25948e9 mpeg2: increase min size for picture coding ext
|
||
f1f5a40 ensure the debug category is properly initialized
|
||
|
||
2013-06-12 14:16:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/Makefile.am:
|
||
debian: fix list of generated files for .deb packaging.
|
||
|
||
2013-06-12 13:48:26 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
debian: fix libgstvaapi -dev package name.
|
||
Fix libgstvaapi -dev package name so that to allow installation of both
|
||
GStreamer 0.10 and 1.0.x based packages.
|
||
|
||
2013-06-05 17:42:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-05-31 11:09:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
wayland: fix memory leak of display resources.
|
||
|
||
2013-06-04 07:14:22 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix build without VA/GLX support.
|
||
|
||
2013-06-05 11:01:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: allow buffer mappings to GstVaapiSurfaceProxy.
|
||
Allow plain gst_buffer_map() interface to work with gstreamer-vaapi
|
||
video buffers, i.e. expose the underlying GstVaapiSurfaceProxy to the
|
||
caller. This is the only sensible enough thing to do in this mode as
|
||
the underlying surface pixels need to be extracted through an explicit
|
||
call to the gst_video_frame_map() function instead.
|
||
A possible use-case of this is to implement a "handoff" signal handler
|
||
to fakesink or identity element for further processing.
|
||
|
||
2013-06-03 10:22:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: silence check for direct-rendering mode in video memory.
|
||
Fix gst_vaapi_video_allocator_new() to silently check for direct-rendering
|
||
mode support, and not trigger fatal-criticals if either test surface or
|
||
image could not be created. Typical case: pixel format mismatch, e.g. NV12
|
||
supported by most hardware vs. I420 supported by most software decoders.
|
||
|
||
2013-06-03 10:06:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
plugins: improve video memory flags safety checks.
|
||
On map, ensure we have GST_MAP_WRITE flags since this is only what we
|
||
support for now. Likewise, on unmap, make sure that the VA image is
|
||
unmapped for either read or write, while still committing it to the
|
||
VA surface if write was requested.
|
||
|
||
2013-05-30 18:17:07 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
surface: fix memory leak through unreleased parent context.
|
||
Break the circular references between GstVaapiContext and its children
|
||
GstVaapiSurfaces. Since the VA surfaces held an extra reference to the
|
||
context, which holds a reference to its VA surfaces, then none of those
|
||
were released.
|
||
How does this impact support for subpictures?
|
||
The only situation when the parent context needs to disappear is when
|
||
it is replaced with another one because of a resolution change in the
|
||
video stream for instance, or a normal destroy. In this case, it does
|
||
not really matter to apply subpictures to the peer surfaces since they
|
||
are either gone, or those that are left in the pipe can probably bear
|
||
a reinstantiation of the subpictures for it.
|
||
So, parent_context is set to NULL when the parent context is destroyed,
|
||
other VA surfaces can still get subpictures attached to them, individually
|
||
not as a whole. i.e. subpictures for surface S1 will be created from
|
||
active composition buffers and associated to S1, subpictures for S2 will
|
||
be created from the next active composition buffers, etc. We don't try
|
||
to cache the subpictures in those cases (pending surfaces until EOS
|
||
is reached, or pending surfaces until new surfaces matching new VA context
|
||
get to be used instead).
|
||
|
||
2013-05-27 14:01:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix one-time initialization when display property is set.
|
||
Fix gst_vaapisink_ensure_display() to perform one-time initialization
|
||
tasks even if the `display' property was explicitly set.
|
||
|
||
2013-05-27 15:59:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
window: fix GLX window initialization.
|
||
Make sure to create the GLX context once the window object has completed
|
||
its creation. Since gl_resize() relies on the newly created window size,
|
||
then we cannot simply overload the GstVaapiWindowClass::create() hook.
|
||
So, we just call into gst_vaapi_window_glx_ensure_context() once the
|
||
window object is created in the gst_vaapi_window_glx_new*() functions.
|
||
|
||
2013-05-27 17:18:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
display: validate display types.
|
||
|
||
2013-05-27 16:13:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: drop internal NAME_PREFIX, store the real display name.
|
||
Always store a valid display name/device path, instead of adding a
|
||
particular prefix. i.e. make it simply a strdup(), or "" if it was
|
||
initially NULL.
|
||
|
||
2013-05-27 13:17:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
display: make it possible to lookup the display cache by type.
|
||
Make it possible to add extra an extra filter to most of display cache
|
||
lookup functions so that the GstVaapiDisplay instance can really match
|
||
a compatible and existing display by type, instead of relying on extra
|
||
string tags (e.g. "X11:" prefix, etc.).
|
||
|
||
2013-05-24 16:19:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: cope with new display cache API.
|
||
|
||
2013-05-24 16:12:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
display: rework display cache API.
|
||
Simplify display cache API, while making it more flexible. We can now create
|
||
custom lookup functions with gst_vaapi_display_cache_lookup_custom().
|
||
|
||
2013-05-24 15:05:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-display.c:
|
||
tests: improve check for display cache.
|
||
Improve check for display cache infrastructure. In particular, for X11 and
|
||
GLX backends, we need to make sure that we can create a GstVaapiDisplayX11
|
||
from another GstVaapiDisplayGLX, i.e. underlying X11 and VA displays can be
|
||
shared. Besides, allocating a GstVaapiDisplayGLX while a GstVaapiDisplayX11
|
||
already exists will have to generate different VA displays.
|
||
|
||
2013-05-15 10:33:16 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
uploader: fix memory leak in GStreamer 0.10 builds.
|
||
In GStreamer 0.10 builds, gst_vaapi_uploader_get_buffer() was used
|
||
but it exhibited a memory leak because the surface generated for the
|
||
GstVaapiVideoMeta totally lost its parent video pool. So, it was not
|
||
possible to release that surface back to the parent pool when the meta
|
||
gets released, and the memory consumption kept growing.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-05-23 18:56:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: fix gst_vaapi_video_meta_new_from_pool().
|
||
Since GST_VAAPI_IS_xxx_VIDEO_POOL() was only testing for NULL and not
|
||
the underlying object type, the gst_vaapi_video_meta_new_from_pool()
|
||
was hereby totally broken. Fixed this regression by using the newly
|
||
provided gst_vaapi_video_pool_get_object_type() function.
|
||
|
||
2013-05-23 18:22:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: cope with GST_VAAPI_IS_xxx() macros removal.
|
||
|
||
2013-05-23 18:19:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/decoder.c:
|
||
tests: cope with GST_VAAPI_IS_xxx() macros removal.
|
||
|
||
2013-05-23 18:45:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool_priv.h:
|
||
libs: add query for GstVaapiVideoPool object types.
|
||
Add API to identify the underlying GstVaapiVideoPool object type.
|
||
|
||
2013-05-23 18:15:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
libs: drop GST_VAAPI_IS_xxx() helper macros.
|
||
Drop obsolete GST_VAAPI_IS_xxx() helper macros since we are no longer
|
||
deriving from GObject and so those were only checking for whether the
|
||
argument was NULL or not. This is now irrelevant, and even confusing
|
||
to some extent, because we no longer have type checking.
|
||
Note: this incurs more type checking (review) but the libgstvaapi is
|
||
rather small, so this is manageable.
|
||
|
||
2013-05-07 18:52:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump library major version.
|
||
The whole libgstvaapi libraries got a major refresh to get rid of GObject.
|
||
This is a fundamental change that requires a new SONAME. More changes are
|
||
underway to streamline the core libraries.
|
||
So far, the net result is a reduction of .text size (code) by 32KB, i.e. -10%.
|
||
On one particular test (sintel HD trailer), the total number of executed
|
||
instruction was reduced by 8%.
|
||
|
||
2013-05-07 18:37:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.core.types:
|
||
* docs/reference/libs/libs.glx.types:
|
||
* docs/reference/libs/libs.x11.types:
|
||
docs: cope with removed APIs.
|
||
Some APIs are dead because they are no longer based on GObject.
|
||
|
||
2013-05-06 14:43:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: cope with new GstVaapiMiniObject objects.
|
||
|
||
2013-05-07 11:45:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/decoder.c:
|
||
* tests/image.c:
|
||
* tests/output.c:
|
||
* tests/simple-decoder.c:
|
||
* tests/test-decode.c:
|
||
* tests/test-display.c:
|
||
* tests/test-subpicture.c:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-windows.c:
|
||
tests: cope with new GstVaapiMiniObject objects.
|
||
|
||
2013-05-07 15:38:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: fix set_synchronous() to lock display.
|
||
|
||
2013-05-03 19:02:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
videopool: simplify creation of video objects pool.
|
||
|
||
2013-05-07 18:17:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
libs: simplify GstVaapiID definitions.
|
||
Make GstVaapiID a gsize instead of guessing an underlying integer large
|
||
enough to hold all bits of a pointer. Also drop GST_VAAPI_ID_NONE since
|
||
this is plain zero and that it is no longer passed as varargs.
|
||
|
||
2013-05-02 16:11:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapi_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
libs: drop obsolete function helpers and objects.
|
||
Drop obsolete GstVaapiID related function helpers for passing them as
|
||
GValues.
|
||
|
||
2013-05-07 11:39:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
libs: use GstVaapiMiniObject for display objects.
|
||
|
||
2013-05-06 14:07:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
libs: use GstVaapiMiniObject for video decoders.
|
||
Port GstVaapiDecoder and GstVaapiDecoder{MPEG2,MPEG4,JPEG,H264,VC1} to
|
||
GstVaapiMiniObject. Add gst_vaapi_decoder_set_codec_state_changed_func()
|
||
helper function to let the user add a callback to a function triggered
|
||
whenever the codec state (e.g. caps) changes.
|
||
|
||
2013-05-03 11:01:12 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool_priv.h:
|
||
libs: use GstVaapiMiniObject for video object pools.
|
||
Port GstVaapiVideoPool, GstVaapiSurfacePool and GstVaapiImagePool to
|
||
GstVaapiMiniObject. Drop gst_vaapi_video_pool_get_caps() since it was
|
||
no longer used for a long time. Make object allocators static, i.e.
|
||
local to the shared library.
|
||
|
||
2013-04-30 17:22:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
libs: use GstVaapiObject for texture objects.
|
||
|
||
2013-04-30 17:20:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11_priv.h:
|
||
libs: use GstVaapiObject for window objects.
|
||
|
||
2013-04-30 17:22:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
libs: use GstVaapiObject for VA objects.
|
||
|
||
2013-04-30 17:20:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
Port GstVaapiObject to GstVaapiMiniObject.
|
||
|
||
2013-04-30 10:28:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
libs: refine GstVaapiMiniObject.
|
||
Drop support for user-defined data since this capability was not used
|
||
so far and GstVaapiMiniObject represents the smallest reference counted
|
||
object type. Add missing GST_VAAPI_MINI_OBJECT_CLASS() helper macro.
|
||
Besides, since GstVaapiMiniObject is a libgstvaapi internal object, it
|
||
is also possible to further simplify the layout of the object. i.e. merge
|
||
GstVaapiMiniObjectBase into GstVaapiMiniObject.
|
||
|
||
2013-05-07 16:43:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: update picture size from the bitstream.
|
||
Propagate the picture size from the bitstream to the GstVaapiDecoder,
|
||
and subsequent user who installed a signal on notify::caps. This fixes
|
||
decoding of TS streams when the demuxer failed to extract the required
|
||
information.
|
||
|
||
2013-04-25 14:16:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: fix raw decoding mode.
|
||
Fix gst_vaapi_decoder_get_surface() to actually transfer ownership of the
|
||
surface proxy to the caller.
|
||
|
||
2013-04-25 13:56:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
decoder: add gst_vaapi_decoder_get_frame_with_timeout().
|
||
Add gst_vaapi_decoder_get_frame_with_timeout() helper function that will
|
||
wait for a frame to be decoded, until the specified timeout in microseconds,
|
||
prior to returning to the caller.
|
||
This is a fix to performance regression from 851cc0, whereby the vaapidecode
|
||
loop executed on the srcpad task was called to often, thus starving all CPU
|
||
resources.
|
||
|
||
2013-04-19 14:38:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-04-18 19:09:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.3.
|
||
|
||
2013-04-18 19:08:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-04-18 15:55:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: rework heuristics to detect decode timeout.
|
||
Rework heuristics to detect when downstream element ran into errors,
|
||
and thus failing to release any VA surface in due time for the current
|
||
frame to get decoded. In particular, recalibrate the render time base
|
||
when the first frame gets submitted downstream, or when there is no
|
||
timestamp that could be inferred.
|
||
|
||
2013-04-18 15:50:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: rework GstVideoDecoder::handle_frame() with a task.
|
||
Rework GstVideoDecoder::handle_frame() to decode the current frame,
|
||
while possibly waiting for a free surface, and separately submit all
|
||
decoded frames from a task. This makes it possible to pop and render
|
||
decoded frames as soon as possible.
|
||
|
||
2013-04-18 10:06:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: use gst_object_unref() wherever applicable.
|
||
Use gst_object_unref() wherever applicable, e.g. objects derived from
|
||
GstElement, GstVideoPool, etc.
|
||
|
||
2013-04-17 14:21:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
docs: drop obsolete plug-ins.
|
||
Drop documentation for obsolete plug-ins, even for GStreamer 0.10.
|
||
i.e. vaapiupload and vaapidownload are no longer the recommended
|
||
plug-ins to use.
|
||
|
||
2013-04-17 13:17:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/rules:
|
||
debian: fix build of GStreamer 0.10 packages.
|
||
Fix build of Debian packages to scan the actual GStreamer API version
|
||
from the generated changelog file.
|
||
|
||
2013-04-17 10:58:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: minor clean-ups.
|
||
Use g_clear_object() wherever appropriate and remove dead-code.
|
||
|
||
2013-04-17 10:53:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix reference counting buf for passthrough mode.
|
||
Fix reference counting bug for passthrough mode, whereby the input buffer
|
||
was propagated as is downstream through gst_pad_push() without increasing
|
||
its reference count before. The was a problem when gst_pad_push() returns
|
||
an error and we further decrease the reference count of the input buffer.
|
||
|
||
2013-04-17 10:18:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: port to GStreamer 1.0.
|
||
Add support for interlaced streams with GStreamer 1.0 too. Basically,
|
||
this enables vaapipostproc, though it is not auto-plugged yet. We also
|
||
make sure to reply to CAPS queries, and happily handle CAPS events.
|
||
|
||
2013-04-17 10:14:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: fix GstVideoCodecFrame flags for interlaced contents.
|
||
Fix support for interlaced contents with GStreamer 0.10. In particular,
|
||
propagate GstVaapiSurfaceProxy frame flags to GstVideoCodecFrame flags
|
||
correctly.
|
||
This is a regression from commit 87e5717.
|
||
|
||
2013-04-16 13:23:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparser_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparser_frame.h:
|
||
decoder: rename GstVaapiDecoderFrame to GstVaapiParserFrame.
|
||
Rename GstVaapiDecoderFrame to GstVaapiParserFrame because this data
|
||
structure was only useful to parsing and a proper GstvaapiDecoderFrame
|
||
instance will be created instead.
|
||
|
||
2013-04-16 19:09:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: export presentation timestamp for raw decoding mode.
|
||
Fix regression from 0.4-branch whereby GstVaapiSurfaceProxy no longer
|
||
held any information about the expected presentation timestamp, frame
|
||
duration or additional flags like interlaced or top-field-first.
|
||
|
||
2013-04-16 18:56:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: use new GstVaapiSurfaceProxy utility functions.
|
||
Use new GstVaapiSurfaceProxy internal helper functions to propagate the
|
||
necessary GstVideoCodecFrame flags to vaapidecode (GStreamer 0.10).
|
||
Also make GstVaapiDecoder push_frame() operate similarly to drop_frame().
|
||
i.e. increase the GstVideoCodecFrame reference count in push_frame rather
|
||
than gst_vaapi_picture_output().
|
||
|
||
2013-04-16 18:35:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy_priv.h:
|
||
surfaceproxy: add more attributes for raw decoding modes.
|
||
Add more attributes for raw decoding modes, i.e. directly through the
|
||
libgstvaapi helper library. In particular, add presentation timestamp,
|
||
duration and a couple of flags (interlaced, TFF, RFF, one-field).
|
||
|
||
2013-04-16 13:48:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/simple-decoder.c:
|
||
surfaceproxy: drop user-data support from GstVaapiSurfaceProxy.
|
||
Drop user-data support from GstVaapiSurfaceProxy. Rather make it explicit
|
||
to call some user-provided function when the surface proxy is released.
|
||
|
||
2013-04-15 12:52:51 +0400 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
build: link libgstvaapi-glx-1.0.so against libdl.
|
||
Ensure libgstvaapi-glx*.so builds against libdl since dlsym() is used
|
||
to resolve glXGetProcAddress() from GLX libraries. This fix builds on
|
||
Fedora 17.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=698046
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-04-15 14:22:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: fix gst_vaapi_decoder_get_codec_state().
|
||
Fix previous commit whereby gst_vaapi_decoder_get_codec_state() was
|
||
supposed to make GstVaapiDecoder own the return GstVideoCodecState
|
||
object. Only comment was updated, not the actual code.
|
||
|
||
2013-04-15 13:58:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
decoder: make gst_vaapi_decoder_get_codec_state() return the original state.
|
||
Make gst_vaapi_decoder_get_codec_state() return the original codec state,
|
||
i.e. make the GstVaapiDecoder object own the return state so that callers
|
||
that want an extra reference to it would just gst_video_codec_state_ref()
|
||
it before usage. This aligns the behaviour with what we had before with
|
||
gst_vaapi_decoder_get_caps().
|
||
This is an ABI incompatible change, library major version was bumped from
|
||
previous release (0.5.2).
|
||
|
||
2013-04-15 13:52:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
plugins: mark a few more functions as internal.
|
||
Mark the following functions are internal, i.e. private to the vaapi plug-in:
|
||
- gst_vaapi_video_buffer_pool_get_type()
|
||
- gst_vaapi_video_converter_glx_get_type()
|
||
- gst_vaapi_video_converter_glx_new()
|
||
|
||
2013-04-15 13:48:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
plugins: implement GstSurfaceMeta API.
|
||
Implement GstSurfaceMeta API for GStreamer 1.0.x. Even though this is
|
||
an unstable/deprecated API, this makes it possible to support Clutter
|
||
sink with minimal changes. Tested against clutter-gst 1.9.92.
|
||
|
||
2013-04-12 17:12:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: optimize GstVideoOverlayInterface::expose().
|
||
When render-mode is "overlay", then it is not really useful to peek into
|
||
the GstBaseSink::last_buffer, since we have our own video_buffer already
|
||
recorded and maintained into GstVaapiSink.
|
||
|
||
2013-04-12 17:05:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix memory leak of GstSample objects.
|
||
Fix memory leak of GstSample objects in GstVideoOverlayInterface::expose().
|
||
This also fixes extra unreferencing of the underlying GstBuffer in the common
|
||
path afterwards (for both 0.10 or 1.0).
|
||
|
||
2013-04-12 13:44:52 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
plugins: fix description for gst-inspect.
|
||
Fix the name of the plug-in element reported to gst-inspect-1.0. i.e. we
|
||
need an explicit definition for GStreamer >= 1.0 because the GST_PLUGIN_DEFINE
|
||
incorrectly uses #name for creating the plug-in name, instead of using macro
|
||
expansion (and let further expansion of macros) through e.g. G_STRINGIFY().
|
||
|
||
2013-04-11 09:24:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: updates.
|
||
Update build requirements for GStreamer 1.0.x support. Add section for
|
||
ways to report bugs.
|
||
|
||
2013-04-10 16:54:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-04-10 15:31:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
Fix make dist to include all source files, in any case.
|
||
Fix make dist to allow build for either GStreamer 0.10 or 1.0. i.e. make
|
||
sure to include all source files in either case while generating source
|
||
tarballs.
|
||
|
||
2013-04-10 15:21:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump library major version.
|
||
Bump library major version, while preserving a major version of 0 for
|
||
GStreamer 1.0 based libraries, and a major version of 2 for GStreamer
|
||
0.10 based librarieS.
|
||
|
||
2013-04-10 14:37:42 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: implement direct-rendering mode for raw YUV buffer uploads.
|
||
Allow direct-rendering (writes) into target VA surfaces.
|
||
|
||
2013-04-09 16:02:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: implement uploads from raw YUV buffers for GStreamer 1.0.
|
||
Implement GstVideoMeta::{,un}map() to support raw YUV buffer upload when
|
||
the last component is unmapped. Downloads are not supported yet. The aim
|
||
was to first support SW decoding + HW accelerated rendering (vaapisink).
|
||
e.g. for Wayland.
|
||
|
||
2013-04-03 11:10:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: submit all decoded frames before decoding a new one.
|
||
Make sure to purge all pending frames that were already decoded prior
|
||
to decoding a new one. This helps release VA surfaces as early as
|
||
possible.
|
||
|
||
2013-04-02 16:12:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: reply to CAPS queries.
|
||
Handle GST_QUERY_CAPS, which is the GStreamer 1.0 mechanism to retrieve
|
||
the set of allowed caps, i.e. it works similar to GstPad::get_caps().
|
||
This fixes fallback to SW decoding if no HW decoder is available.
|
||
|
||
2013-03-20 11:26:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: fix unpaired GstBuffer map/unmaps.
|
||
This possibly fixes a few memory leaks along the way.
|
||
|
||
2013-03-20 14:40:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* tests/codec.c:
|
||
Allow build against either GStreamer API (0.10 or 1.0).
|
||
Introduce a new configure option --with-gstreamer-api that determines
|
||
the desired GStreamer API to use. By default, GStreamer 1.0 is selected.
|
||
Also integrate more compatibility glue into gstcompat.h and plugins.
|
||
|
||
2012-11-08 16:41:22 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
plugins: use new video buffer pools.
|
||
Use new GstVaapiVideoBufferPool to maintain video buffers. Implement
|
||
GstBaseSink::propose_allocation() to expose that pool to upstream
|
||
elements; and also implement GstVideoDecoder::decide_allocation() to
|
||
actually use that pool (from downstream), if any, or create one.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-11-08 16:41:22 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapivideobufferpool.c:
|
||
* gst/vaapi/gstvaapivideobufferpool.h:
|
||
* gst/vaapi/gstvaapivideomemory.c:
|
||
* gst/vaapi/gstvaapivideomemory.h:
|
||
plugins: add GstVaapiVideoMemory and GstVaapiVideoBufferPool objects.
|
||
Add initial support for GstVaapiVideoMemory backed buffer pool. The memory
|
||
object currently holds a reference to GstVaapiVideoMeta.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-04-04 17:36:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
plugins: allow copies of GstVaapiVideoMeta objects.
|
||
Make it possible to copy GstVaapiVideoMeta objects, unless they contain VA
|
||
objects created from GstVaapiVideoPool. This is mostly useful to clone a
|
||
GstVaapiVideoMeta object containing a VA surface proxy so that to alter its
|
||
rendering flags.
|
||
|
||
2013-04-04 16:16:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
plugins: make it possible to clear VA objects from GstVaapiVideoMeta.
|
||
Fix GstVaapiVideoMeta to allow VA objects to be destroyed when they are
|
||
reset to NULL. i.e. make gst_vaapi_video_meta_set_{image,surface}() and
|
||
gst_vaapi_video_meta_set_surface_proxy() actually clear VA objects when
|
||
argument is NULL.
|
||
|
||
2012-09-03 14:00:25 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
plugins: initial port to GStreamer 1.0.
|
||
Port vaapidecode and vaapisink plugins to GStreamer API >= 1.0. This
|
||
is rather minimalistic so that to test the basic functionality.
|
||
Disable vaapiupload, vaapidownload and vaapipostproc plugins. The latter
|
||
needs polishing wrt. to GStreamer 1.x functionality and the former are
|
||
totally phased out in favor of GstVaapiVideoMemory map/unmap facilities,
|
||
which are yet to be implemented.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-03-21 10:12:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* tests/codec.c:
|
||
* tests/decoder.c:
|
||
* tests/simple-decoder.c:
|
||
* tests/test-subpicture.c:
|
||
tests: add support for GStreamer 1.0.
|
||
|
||
2012-09-04 15:12:18 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add initial support for GStreamer 1.0.
|
||
This integrates support for GStreamer API >= 1.0 only in the libgstvaapi
|
||
core decoding library. The changes are kept rather minimal here so that
|
||
the library retains as little dependency as possible on core GStreamer
|
||
functionality.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-04-03 15:58:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: improve check for raw YUV format mode.
|
||
Improve check for raw YUV format modes by avoiding checks against strings
|
||
("video/x-raw-yuv") for each new GstBuffer allocation. In the usual case,
|
||
GstBaseSink::set_caps() is called first and if VA surface format mode is
|
||
used, then GstBaseSink::buffer_alloc() is not called. If the latter is
|
||
called before set_caps(), then we just make a full check. This one is
|
||
pretty rare though, e.g. it usually happens once for custom pipelines.
|
||
|
||
2013-04-03 15:06:46 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: don't fail if there is no overlay composition to apply.
|
||
Fix gst_vaapi_apply_composition() to not fail if no overlay composition
|
||
was found. i.e. return success (TRUE). This was harmless though extra
|
||
debug messages are not nice.
|
||
This is a regression introduced by commit 95b8659.
|
||
|
||
2013-04-03 14:59:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: expose the exact set of supported HW decoders.
|
||
Don't return static caps that don't mean anything for the underlying codecs
|
||
that are actually supported for decoding. i.e. always allocate a VA display
|
||
and retrieve the exact set of HW decoders available. That VA display may be
|
||
re-used later on during negotiation through GstVideoContext "prepare-context".
|
||
This fixes fallback to SW decoding if no HW decoder is available.
|
||
|
||
2013-04-03 13:08:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
decoder: drop obsolete functions.
|
||
Drop the following functions that are now obsolete:
|
||
- gst_vaapi_context_get_surface()
|
||
- gst_vaapi_context_put_surface()
|
||
- gst_vaapi_context_find_surface_by_id()
|
||
- gst_vaapi_surface_proxy_new()
|
||
- gst_vaapi_surface_proxy_get_context()
|
||
- gst_vaapi_surface_proxy_set_context()
|
||
- gst_vaapi_surface_proxy_set_surface()
|
||
This is an API change.
|
||
|
||
2013-04-03 13:14:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: delegate surface size check to VA context reset.
|
||
Now that the surface pool is reference counted in the surface proxy wrapper,
|
||
we can safely ignore surface size checks in gst_vaapi_decoder_ensure_context().
|
||
Besides, this check is already performed in gst_vaapi_context_reset_full().
|
||
|
||
2013-04-03 11:37:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
decoder: simplify acquisition/release of spare surface.
|
||
Introduce gst_vaapi_surface_proxy_new_from_pool() to allocate a new surface
|
||
proxy from the context surface pool. This change also makes sure to retain
|
||
the parent surface pool in the proxy.
|
||
Besides, it was also totally useless to attach/detach parent context to
|
||
VA surface each time we acquire/release it. Since the whole context owns
|
||
all associated VA surfaces, we can mark this as such only once and for all.
|
||
|
||
2013-03-29 10:39:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-03-28 10:18:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.2.
|
||
|
||
2013-03-28 10:15:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-03-26 18:57:00 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: fix usage of gst_vaapi_reply_to_query().
|
||
Make gst_vaapi_reply_to_query() first check whether the query argument
|
||
is actually a video-context query, i.e. with type GST_QUERY_TYPE_CUSTOM.
|
||
Then, make sure vaapisink propagates the query to the parent class if
|
||
it is not a video-context query.
|
||
|
||
2013-03-26 18:45:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
plugins: streamline video buffers.
|
||
Add new gst_vaapi_video_buffer_new() helper function that allocates a video
|
||
buffer from a GstVaapiVideoMeta. Also remove obsolete and useless function
|
||
gst_vaapi_video_buffer_get_meta().
|
||
|
||
2013-03-26 10:31:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideometa.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideometa.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideometa.c:
|
||
* gst/vaapi/gstvaapivideometa.h:
|
||
plugins: integrate GstVaapiVideoMeta from libgstvaapi.
|
||
Move GstVaapiVideoMeta from core libgstvaapi decoding library to the
|
||
actual plugin elements. That's only useful there. Also inline reference
|
||
counting code from GstVaapiMiniObject.
|
||
|
||
2013-03-21 17:17:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
plugins: drop gstvaapipluginbuffer.[ch] helper files.
|
||
Move all gst_vaapi_video_buffer_new*() helpers from gstvaapipluginbuffer.[ch]
|
||
to gstvaapivideobuffer.[ch], and drop the obsolete files.
|
||
|
||
2013-03-21 17:06:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.core.types:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
plugins: integrate GstVaapiVideoBuffer from libgstvaapi.
|
||
Move GstVaapiVideoBuffer from core libgstvaapi decoding library to the
|
||
actual plugin elements. That's only useful there.
|
||
|
||
2013-03-21 16:32:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
plugins: use common helper function to apply compositions.
|
||
Use common gst_vaapi_apply_composition() helper function to apply compositions
|
||
attached to a buffer in vaapisink or GstVaapiVideoConverterGLX.
|
||
|
||
2013-03-21 16:09:42 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
plugins: integrate GstVaapiVideoConverterGLX from libgstvaapi.
|
||
Make sure libgstvaapi core decoding library doesn't include un-needed
|
||
dependencies. So, move out GstVaapiVideoConverterGLX to plugins instead.
|
||
Besides, even if the vaapisink element is not used, we are bound to have
|
||
a correctly populated GstSurfaceBuffer from vaapidecode.
|
||
Also clean-up the file along the way.
|
||
|
||
2013-03-21 13:32:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix use of possibly uninitialized variable.
|
||
In decode_codec_data(), force initialization of format to zero so that
|
||
we can catch up cases where codec-data has neither "format" nor "wmvversion"
|
||
fields, thus making it possible to gracefully fail in this case.
|
||
|
||
2013-03-21 13:43:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: propagate buffer data as a const guchar * pointer (cosmetics).
|
||
|
||
2013-03-21 14:36:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: sanitize codec-data decoding.
|
||
Add a new GstVaapiDecoder::decode_codec_data() hook to actually decode
|
||
codec-data in the decoder sub-class. Provide a common shared helper
|
||
function to do the actual work and delegating further to the sub-class.
|
||
|
||
2013-03-21 13:41:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
decoder: get rid of GstVaapiDecoderUnit::buffer field.
|
||
Drop GstVaapiDecoderUnit buffer field (GstBuffer) since it's totally
|
||
useless nowadays as creating sub-buffers doesn't bring any value. It
|
||
actually means more memory allocations. We can't do without that in
|
||
JPEG and MPEG-4:2 decoders.
|
||
|
||
2013-03-21 13:28:05 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: sanitize uses of codec frame input buffer (cosmetics).
|
||
Alias GST_VAAPI_DECODER_CODEC_FRAME(decoder)->input_buffer to a simple
|
||
"buffer" variable.
|
||
|
||
2013-03-20 17:34:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: add helper function to apply a composition buffer.
|
||
Simplify application of a composition buffer to a GstVaapiSurface, and
|
||
all its peers, until that function is eventually promoted to libgstvaapi.
|
||
|
||
2013-03-20 13:42:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix support for raw YUV buffers.
|
||
If the raw YUV buffer was created from vaapisink, through the buffer_alloc()
|
||
hook, then it will have a valid GstVaapiVideoMeta object attached to it.
|
||
However, we previously assumed in that case that it was a "native" VA buffer,
|
||
thus not calling into GstVaapiUploader::process().
|
||
|
||
2013-03-20 18:41:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: use modern GstElement metadata information.
|
||
Use gst_element_class_set_static_metadata() from GStreamer 1.0, which
|
||
basically is the same as gst_element_class_set_details_simple() in
|
||
GStreamer 0.10 context.
|
||
|
||
2013-03-20 18:04:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: move up interfaces (cosmetics).
|
||
Move GstImplementsInterface and GstVideoContext support functions up
|
||
so that to keep a clear separation between the plugin element and its
|
||
interface hooks.
|
||
|
||
2013-03-20 12:57:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: upgrade to newer APIs (GstVideoInfo based helpers).
|
||
Use GstVideoInfo and gst_video_info_from_caps() helper wherever possible.
|
||
Also use the newly added gst_vaapi_image_format_from_structure() helper
|
||
in GstVaapiUploader::ensure_allowed_caps().
|
||
|
||
2013-03-20 14:02:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
plugins: fix creation of video buffer from another source buffer.
|
||
gst_vaapi_video_buffer_new_from_buffer() needs to reference the source
|
||
buffer video meta since it would be unreference'd from the get_buffer()
|
||
helper function. For other cases, we still use (steal) the newly created
|
||
video meta.
|
||
|
||
2013-03-20 11:57:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: include "sysdeps.h" header instead of "config.h".
|
||
|
||
2013-03-20 18:33:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* tests/codec.c:
|
||
tests: modernize GstTypeFind functions.
|
||
Use the GstTypeFind hooks from GStreamer 1.0. They look safer and
|
||
exactly correspond to the expected behaviour.
|
||
|
||
2013-03-20 11:57:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-display.c:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-jpeg.c:
|
||
* tests/test-jpeg.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-mpeg4.c:
|
||
* tests/test-mpeg4.h:
|
||
* tests/test-textures.c:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
* tests/test-windows.c:
|
||
tests: fix license templates.
|
||
|
||
2013-03-20 11:53:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-display.c:
|
||
tests: use gst_vaapi_image_format_from_structure() in test-display.
|
||
Use gst_vaapi_image_format_from_structure() helper in test-display and
|
||
then extract a VAImageFormat from it instead of relying on GstCaps for
|
||
YUV and RGB formats.
|
||
|
||
2013-03-20 11:50:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/codec.c:
|
||
* tests/decoder.c:
|
||
* tests/output.c:
|
||
* tests/test-decode.c:
|
||
* tests/test-display.c:
|
||
* tests/test-subpicture.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-windows.c:
|
||
tests: include "sysdeps.h" header instead of "config.h".
|
||
|
||
2013-03-20 18:25:05 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
subpicture: use gst_video_overlay_rectangle_get_pixels_unscaled_raw().
|
||
Use newer gst_video_overlay_rectangle_get_pixels_unscaled_raw() helper
|
||
function with GStreamer 0.10 compatible semantics, or that tries to
|
||
approach the current meaning. Basically, this is also just about moving
|
||
the helper to gstcompat.h.
|
||
|
||
2013-03-20 11:10:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
image: add gst_vaapi_image_format_from_structure() helper.
|
||
Add helper function to convert video formats from a GstStructure to a
|
||
plain GstVaapiImageFormat.
|
||
|
||
2013-03-20 18:12:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstcompat.h:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
sysdeps: split out GStreamer API compatibility glue to "gstcompat.h".
|
||
|
||
2013-03-20 11:56:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
sysdeps: add more standard includes by default.
|
||
|
||
2013-03-20 14:43:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: improve GStreamer API version checks.
|
||
|
||
2013-03-20 11:44:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/changelog.in:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/gstreamer-vaapi-doc.install.in:
|
||
* debian.upstream/libgstvaapi-dev.install.in:
|
||
* debian.upstream/libgstvaapi-drm.install.in:
|
||
* debian.upstream/libgstvaapi-glx.install.in:
|
||
* debian.upstream/libgstvaapi-wayland.install.in:
|
||
* debian.upstream/libgstvaapi-x11.install.in:
|
||
* debian.upstream/libgstvaapi.install.in:
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-drm.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-glx.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-wayland.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
* tests/Makefile.am:
|
||
configure: rename GST_MAJORMINOR to GST_API_VERSION.
|
||
|
||
2013-03-20 11:28:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: improve check for H.264 codecparser.
|
||
|
||
2013-02-26 00:38:24 +0100 Holger Kaelberer <hk@getslash.de>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
vaapiupload: fix illegal write in ensure_image().
|
||
Fix ensure_image() to only zero-initialize the first line of each plane.
|
||
Properly initializing each plane to their full vertical resolution would
|
||
require to actually compute it based on the image format.
|
||
In particular, for NV12 images, the UV plane has half vertical resolution
|
||
vs. the Y plane. So using the full image height to initialize the UV plane
|
||
will obviously lead to a buffer overflow. Likewise for other YUV format.
|
||
Since ensure_image() is only a helper function to initialize something,
|
||
and not necessarily the whole thing, it is fine to initializ the first
|
||
line only. Besides, the target surface is not rendered either.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-02-17 16:28:47 +0800 Xiang, Haihao <haihao.xiang@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
build: fix compiling of local GstVideoDecoder and codecparsers.
|
||
Generated source files were missing a dependency on the complete set of
|
||
generated header files. e.g. gstvideodecoder.c requires gstvideoutils.h
|
||
to build and almost every codec parser source depends on parserutils.h.
|
||
https://bugs.freedesktop.org/show_bug.cgi?id=59575
|
||
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-02-08 11:56:54 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: set {luma,chroma}_log2_weight_denom to 0 if no pred_weight_table().
|
||
Force luma_log2_weight_denom and chroma_log2_weight_denom to zero if
|
||
there is no pred_weight_table() that was parsed.
|
||
This is a workaround for the VA intel-driver on Ivy Bridge.
|
||
|
||
2013-02-07 15:42:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: use new profile definitions from codecparsers.
|
||
|
||
2013-02-07 15:29:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 500bc02.
|
||
500bc02 h264: add profile enums
|
||
|
||
2013-02-06 15:27:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-02-06 15:21:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 31b1c57.
|
||
8957fb7 mpeg2: add helpers to convert quantization matrices
|
||
07c4034 mpeg2: store quantization matrices in zigzag scan order
|
||
|
||
2013-01-31 11:32:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: fix build on older platforms.
|
||
Make simple-decoder build and execute correctly on older platforms,
|
||
and more precisely older versions of glib.
|
||
|
||
2013-01-31 11:30:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
glibcompat: add replacement for g_async_queue_timeout_pop().
|
||
g_async_queue_timeout_pop() appeared in glib 2.31.18. Implement it as
|
||
g_async_queue_timed_pop() with a GTimeVal as the final time to wait for
|
||
new data to arrive in the queue.
|
||
|
||
2013-01-31 11:25:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
glibcompat: add replacement for g_cond_wait().
|
||
|
||
2013-01-30 18:38:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix decoding of 4K videos.
|
||
Account for slice_vertical_position_extension when vertical_size > 2800.
|
||
|
||
2013-01-30 18:54:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix decoding of sequence_end().
|
||
There shall be only one place to call decode_current_picture(), and this
|
||
is in the end_frame() hook. The EOS unit is processed after end_frame()
|
||
so this means we cannot have a valid picture to decode/output at this
|
||
point.
|
||
|
||
2013-01-30 15:10:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: improve robustness when packets are missing.
|
||
Improve robustness when some expected packets where not received yet
|
||
or that were not correctly decoded. For example, don't try to decode
|
||
a picture if there was no valid sequence or picture headers.
|
||
|
||
2013-01-30 18:58:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: handle decode-only frames in raw API mode.
|
||
Fix gst_vaapi_decoder_get_surface() to only return frames with a valid
|
||
surface proxy, i.e. with a valid VA surface. This means that any frame
|
||
marked as decode-only is simply skipped.
|
||
|
||
2013-01-30 16:33:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: allow frames to be dropped.
|
||
If the decoder was not able to decode a frame because insufficient
|
||
information was available, e.g. missing sequence or picture header,
|
||
then allow the frame to be gracefully dropped without generating
|
||
any error.
|
||
It is also possible that a frame is not meant to be displayed but
|
||
only used as a reference, so dropping that frame is also a valid
|
||
operation since GstVideoDecoder base class has extra references to
|
||
that GstVideoCodecFrame that needs to be released.
|
||
|
||
2013-01-30 16:26:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: handle decode-only frames.
|
||
Decode-only frames may not have a valid surface proxy. So, simply discard
|
||
them gracefully, i.e. don't create meta data information. GstVideoDecoder
|
||
base class will properly handle this case and won't try to push any buffer
|
||
to downstream elements.
|
||
|
||
2013-01-24 00:49:17 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: add support for post-seek semantics reset.
|
||
Implement GstVideoDecoder::reset() as a destruction of the VA decoder
|
||
and the creation of a new VA decoder.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-30 09:38:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-01-30 09:37:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.1.
|
||
|
||
2013-01-24 00:48:26 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: implement GstVaapiDecoder::flush() as a DPB flush.
|
||
|
||
2013-01-24 17:34:43 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
decoder: fix documentation for GstVaapiDecoderFrame.
|
||
Drop superfluous reference to prev_slice member.
|
||
|
||
2013-01-29 16:18:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: assume current frame is complete at end-of-stream.
|
||
Assume we got a complete frame when the end-of-stream is reached and that
|
||
the current codec frame contains at least one slice data unit.
|
||
|
||
2013-01-29 14:14:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* README:
|
||
* debian.upstream/copyright:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* tests/output.c:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
legal: fix year for some copyright notices (2013).
|
||
|
||
2013-01-29 14:03:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* tests/test-subpicture.c:
|
||
legal: fix year for some copyright notices (2012).
|
||
|
||
2013-01-29 14:00:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* tests/test-display.c:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-windows.c:
|
||
legal: add Intel copyright on modified files.
|
||
|
||
2013-01-29 13:37:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-01-28 18:09:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: use a local event queue to avoid lock contention.
|
||
This improves performance when rendering several surfaces from within
|
||
the same process. e.g. a tee of vaapidecode'd buffers to vaapisink.
|
||
|
||
2013-01-28 17:28:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: fix thread-safe issues.
|
||
The Wayland API is not fully thread-safe and client applications shall
|
||
perform locking themselves on key functions. Besides, make sure to
|
||
release the lock if the _render() function fails.
|
||
|
||
2013-01-28 16:37:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: really wait until the pending redraw completed.
|
||
Introduce gst_vaapi_window_wayland_sync() helper function to wait for
|
||
the completion of the redraw request. Use it in _render() function to
|
||
actually block until the previous draw request is completed.
|
||
|
||
2013-01-23 10:10:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: fix frame_redraw callback.
|
||
The redraw callback needs to be attached to the surface prior to the
|
||
commit. Otherwise, the callback notifies the next surface repaint,
|
||
which is not the desired behaviour. i.e. we want to be notified for
|
||
the surface we have just filled.
|
||
Another isse was the redraw_pending was reset before the actual completion
|
||
of the frame redraw callback function, thus causing concurrency issues.
|
||
e.g. the callback could have been called again, but with a NULL buffer.
|
||
|
||
2013-01-28 14:45:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
wayland: fix display sharing.
|
||
When the Wayland display is shared, we still have to create our own local
|
||
shell and compositor objects, since they are not propagated from the cache.
|
||
Likewise, we also need to determine the display size or vaapisink would
|
||
fail to account for the display aspect ratio, and will try to create a 0x0
|
||
window.
|
||
|
||
2013-01-24 17:38:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 21a098e.
|
||
21a098e vc1: fix bitplanes decoding (DIFF6 or NORM6) [residual]
|
||
f8c836a vc1: fix bitplanes decoding (DIFF6 or NORM6)
|
||
|
||
2013-01-23 16:38:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: handle frames with multiple slices.
|
||
|
||
2013-01-23 17:01:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 3fba492.
|
||
3fba492 vc1: add API to parse slice headers
|
||
|
||
2013-01-23 11:11:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: handle CLOSED_ENTRY.
|
||
When CLOSED_ENTRY == 0, and if the B pictures that follow an entry-point
|
||
lack a reference anchor picture, these B pictures shall be discarded.
|
||
https://bugs.freedesktop.org/show_bug.cgi?id=59505
|
||
|
||
2013-01-23 10:25:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: cope with latest codecparser changes.
|
||
Fix build with newer VC-1 codecparser where dqsbedge was renamed to
|
||
dqbedge, and now represents either DQSBEDGE or DQDBEDGE depending on
|
||
the actual value of DQPROFILE.
|
||
|
||
2013-01-23 10:24:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 3d2c67c.
|
||
3d2c67c vc1: simplify GstVC1VopDquant structure
|
||
|
||
2013-01-22 10:51:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit 5d33da8.
|
||
5d33da8 vc1: fix bitplanes decoding
|
||
562bdc4 vc1: fix VOPDQUANT parser for DQUANT == 2
|
||
0b13d2b vc1: fix calculation of ALTPQUANT
|
||
ba88e63 vc1: fix parser for DQPROFILE in VOPDQUANT
|
||
|
||
2013-01-22 15:47:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix size of encapsulated BDU.
|
||
Fix size of encapsulated BDUs since GstVC1BDU.size actually represents
|
||
the size of the BDU data, starting from offset, i.e. after any start
|
||
code is parsed.
|
||
This fixes a buffer overflow during the unescaping process.
|
||
|
||
2013-01-11 17:08:00 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix decoding of WMV3 videos in AVI format.
|
||
The AVI demuxer (avidemux) does not set a proper "format" attribute
|
||
to the generated caps. So, try to recover the video codec format from
|
||
the "wmvversion" property instead.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-22 13:28:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: review and report errors accordingly.
|
||
Use GST_ERROR() to report real errors instead of hiding them into
|
||
GST_DEBUG().
|
||
|
||
2013-01-22 13:50:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: don't create GstBuffers for all decoder units.
|
||
Don't create temporary GstBuffers for all decoder units, even if they
|
||
are lightweight "sub-buffers", since it is not really necessary to keep
|
||
the buffer data around.
|
||
|
||
2013-01-22 16:03:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: implement flush() hook.
|
||
Make it a simple DPB flush.
|
||
|
||
2013-01-22 13:44:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: implement {start,end}_frame() hooks.
|
||
Implement GstVaapiDecoder.start_frame() and end_frame() semantics so
|
||
that to create new VA context earlier and submit VA pictures to the
|
||
HW for decoding as soon as possible. i.e. don't wait for the next
|
||
frame to start decoding the previous one.
|
||
|
||
2013-01-22 09:30:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix next POC for new sequence layers.
|
||
Fix next POC when a new sequence layer is reached. At this point, we
|
||
need to reset any previous reference picture, i.e. non B-frame.
|
||
|
||
2012-08-02 17:15:26 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: port to common GstVaapiDpb interface.
|
||
Use GstVaapiDpb interface instead of maintaining our own prev and next
|
||
picture pointers. While doing so, try to derive a sensible POC value.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-15 17:10:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix decode_sequence_end() to return success, not EOS.
|
||
|
||
2013-01-18 17:00:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: simplify gst_vaapi_decoder_get_surface().
|
||
Avoid extraenous branches, i.e. immediately return with success once we
|
||
have a decoded frame available.
|
||
|
||
2013-01-18 16:56:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: optimize and clean decode_step() up.
|
||
Avoid usage of goto. Simplify decode_step() process to first accumulate all
|
||
pending buffers into the GstAdapter, and then parse and decode units from
|
||
that input adapter. Stop the process once a frame is fully decoded or an
|
||
error occurred.
|
||
|
||
2013-01-18 14:46:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: move "vaapi" debug init to libgstvaapi_init_once().
|
||
|
||
2013-01-18 14:17:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiversion.h.in:
|
||
display: dump gstreamer-vaapi version for debugging purposes.
|
||
|
||
2013-01-18 14:30:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
tests: simple-decoder: fix build with built-in videoutils.
|
||
Fix build with built-in videoutils, i.e. when system GStreamer installation
|
||
does not know about GstVideoDecoder API.
|
||
|
||
2013-01-18 10:35:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: flush decoded frames at EOS.
|
||
Flush the remaining decoded frames when an end-of-stream is reached.
|
||
|
||
2013-01-18 10:25:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: drop use of GstVaapiVideoMeta.
|
||
Don't use GstVaapiVideoMeta since that object is not guaranteed to live
|
||
in libgstvaapi forever. Rather, that'd move to plugin elements at some
|
||
point.
|
||
|
||
2013-01-16 13:53:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: add benchmark mode.
|
||
Add --benchmark option to enable benchmark mode where rendering is not
|
||
synchronized with presentation timestamps of the decoded surfaces.
|
||
|
||
2013-01-16 13:29:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: honour framerate from the bitstream.
|
||
Try to honour the framerate from the bitstream, or cap the playback to
|
||
60 fps by default.
|
||
|
||
2013-01-15 18:49:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/simple-decoder.c:
|
||
tests: simple-decoder: set window size to the surface dimensions.
|
||
Set the window size to the decoded surface dimensions, if the user has
|
||
not requested the application to run in full-screen mode. Besides, no
|
||
effort is made to preserve aspect ratio or to center the video within
|
||
the mapped window.
|
||
|
||
2013-01-15 17:33:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/simple-decoder.c:
|
||
tests: add simple decoder application.
|
||
Add simple decoder application to show off decoding capabilities from
|
||
raw bitstreams, for debugging or performance evaluation purposes.
|
||
|
||
2013-01-15 17:30:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/codec.c:
|
||
* tests/codec.h:
|
||
tests: add codec helper utils.
|
||
Add helper functions to determine the codec type from a specific file
|
||
or utility functions to convert from codec type to GstCaps or from
|
||
codec name to codec type.
|
||
|
||
2013-01-15 17:47:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/output.c:
|
||
tests: allow fullscreen mode.
|
||
Add new --fullscreen|-f option to create new windows in fullscreen mode.
|
||
|
||
2013-01-17 18:35:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: implement GstVaapiDecoder::flush() as a DPB flush.
|
||
|
||
2013-01-17 18:07:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: handle end-of-stream NALU.
|
||
Handle <end-of-stream> NAL unit to actually flush any pending picture
|
||
from the DPB.
|
||
|
||
2013-01-17 18:22:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: handle EOS events.
|
||
Flush all decoded frames to downstream when EOS is received. This is
|
||
performed by implementing GstVideoDecoder::finish() hook.
|
||
|
||
2013-01-17 18:19:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: split gvd_handle_frame() into decode/push frames.
|
||
Split GstVideoDecoder::handle_frame() implementation into two functions:
|
||
(i) one for decoding the provided GstVideoCodecFrame and (ii) another one
|
||
for purging all decoded frames and submit them downstream.
|
||
|
||
2013-01-17 18:33:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
decoder: add GstVaapiDecoder::flush() hook.
|
||
|
||
2013-01-15 17:21:50 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: fix check for end-of-stream in raw API mode.
|
||
Make sure to immediately return GST_VAAPI_DECODER_STATUS_END_OF_STREAM
|
||
if the end-of-stream was already reached at the previous iteration.
|
||
|
||
2013-01-15 16:55:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: make decode_step() return once the frame is decoded.
|
||
Make sure we always have a free surface left to use for decoding the
|
||
current frame. This means that decode_step() has to return once a frame
|
||
gets decoded. If the current adapter contains more buffers with valid
|
||
frames, they will get parsed and decoded on subsequent iterations.
|
||
|
||
2013-01-17 15:47:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-branch commit b47983a.
|
||
8840c2d h264: zero-initialize SPS VUI parameters
|
||
|
||
2013-01-15 09:21:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2013-01-15 09:21:08 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.5.0.
|
||
|
||
2013-01-14 11:48:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
docs: expose new interfaces.
|
||
|
||
2013-01-14 12:58:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2013-01-14 10:58:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
dpb: cosmetics (clean-ups).
|
||
|
||
2013-01-14 10:46:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
dpb: port to GstVaapiMiniObject.
|
||
|
||
2013-01-14 10:21:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
dpb: drop GstVaapiDpb2 interface, keep only one class.
|
||
Keep only one DPB interface and rename gst_vaapi_dpb2_get_references()
|
||
to gst_vaapi_dpb_get_neighbours() so that to retrieve pictures in DPB
|
||
around the specified picture POC.
|
||
|
||
2012-08-02 15:56:54 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
dpb: rename GstVaapiDpbMpeg2 to GstVaapiDpb2.
|
||
Move GstVaapiDpbMpeg2 API to a more generic version that could also be
|
||
useful to other decoders that require 2 reference pictures, e.g. VC-1.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-11 16:04:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for pre-release.
|
||
|
||
2013-01-11 15:57:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-07-20 12:36:33 +0200 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
* tests/test-subpicture.c:
|
||
overlay: fix build without advanced GstVideoOverlayFormatFlags.
|
||
Check for global-alpha support in GstVideoOverlayComposition API.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-04 10:19:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-subpicture.c:
|
||
tests: add support for global-alpha subpictures.
|
||
Add --global-alpha option to test-subpicture.
|
||
|
||
2013-01-10 13:09:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-subpicture.c:
|
||
tests: use GstVideoOverlayComposition API for subpicture test.
|
||
|
||
2013-01-10 11:26:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-subpicture.c:
|
||
tests: use common decoder helpers for subpicture test.
|
||
Use common decoder helpers for subpicture test, thus allowing to decode
|
||
sample images in an alternate format.
|
||
|
||
2013-01-10 11:22:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/decoder.c:
|
||
* tests/decoder.h:
|
||
* tests/test-decode.c:
|
||
tests: add decoder helpers.
|
||
|
||
2013-01-11 15:19:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
overlay: fix ordering of composition layers.
|
||
Make sure to maintain the association order of composition layers when
|
||
GstVideoOverlayRectangle objects are kept around (cached).
|
||
|
||
2012-05-15 10:24:08 +0200 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
overlay: fix support for global-alpha.
|
||
Fix support for global-alpha subpictures. The previous changes brought
|
||
the ability to check for GstVideoOverlayRectangle changes by comparing
|
||
the underlying pixel buffer pointers. If sequence number and pixel data
|
||
did not change, then this is an indication that only the global-alpha
|
||
value changed. Now, try to update the underlying VA subpicture global-alpha
|
||
value.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-11 11:53:05 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
overlay: detect render-rect changes.
|
||
Don't re-upload VA subpicture if only the render rectangle changed.
|
||
Rather deassociate the subpicture and re-associate it with the new
|
||
render rectangle.
|
||
|
||
2013-01-11 11:12:26 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
overlay: fix check for pixels buffer change.
|
||
A GstVideoOverlayRectangle is created whenever the underlying pixels data
|
||
change. However, when global-alpha is supported, it is possible to re-use
|
||
the same GstVideoOverlayRectangle but with a change to the global-alpha
|
||
value. This process causes a change of sequence number, so we can no longer
|
||
check for that.
|
||
Still, if sequence numbers did not change, then there was no change in
|
||
global-alpha either. So, we need a way to compare the underlying GstBuffer
|
||
pointers. There is no API to retrieve the original pixels buffer from
|
||
a GstVideoOverlayRectangle. So, we use the following heuristics:
|
||
1. Use gst_video_overlay_rectangle_get_pixels_unscaled_argb() with the same
|
||
format flags from which the GstVideoOverlayRectangle was created. This
|
||
will work if there was no prior consumer of the GstVideoOverlayRectangle
|
||
with alternate (non-"native") format flags.
|
||
2. In overlay_rectangle_has_changed_pixels(), we have to use the same
|
||
gst_video_overlay_rectangle_get_pixels_unscaled_argb() function but
|
||
with flags that match the subpicture. This is needed to cope with
|
||
platforms that don't support global-alpha in HW, so the gst-video
|
||
layer takes care of that and fixes this up with a possibly new
|
||
GstBuffer, and hence pixels data (or) in-place by caching the current
|
||
global-alpha value applied. So we have to determine the rectangle
|
||
was previously used, based on what previous flags were used to
|
||
retrieve the ARGB pixels buffer.
|
||
|
||
2013-01-10 18:42:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
overlay: optimize cache at the GstVideoOverlayRectangle level.
|
||
We previously assumed that an overlay composition changed if the number
|
||
of overlay rectangles in there actually changed, or that the rectangle
|
||
was updated, and thus its seqnum was also updated.
|
||
Now, we can cope with cases where the GstVideoOverlayComposition grew
|
||
by one or a few more overlay rectangles, and the initial overlay rectangles
|
||
are kept as is.
|
||
|
||
2013-01-10 13:41:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
overlay: simplify caching of GstVideoOverlayComposition objects.
|
||
Create the GPtrArray once in the _init() function and destroy it only
|
||
in the _finalize() function. Then use overlay_clear() to remove all
|
||
subpicture associations for intermediate updates, don't recreate the
|
||
GPtrArray.
|
||
Make GstVaapiOverlayRectangle a reference counted object. Also make
|
||
sure that overlay_rectangle_new() actually creates and associates the
|
||
VA subpicture.
|
||
|
||
2012-05-15 10:24:08 +0200 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
overlay: add support for global-alpha.
|
||
Handle global-alpha from GstVideoOverlayComposition API. Likewise,
|
||
the same code path could also work for premultiplied-alpha but this
|
||
was not tested.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-05-15 10:24:08 +0200 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* tests/image.c:
|
||
* tests/test-subpicture.c:
|
||
subpicture: add support for global-alpha.
|
||
Add the necessary helpers in GstVaapiDisplay to determine whether subpictures
|
||
with global alpha are supported or not. Also add accessors in GstVaapiSubpicture
|
||
to address this feature.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-04 09:41:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
subpicture: add premultiplied-alpha and global-alpha feature flags.
|
||
Add premultiplied-alpha and global-alpha feature flags, along with converters
|
||
between VA-API and gstreamer-vaapi definitions. Another round of helpers is
|
||
also necessary for GstVideoOverlayComposition API.
|
||
|
||
2013-01-03 18:02:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: allow image/subpicture formats with additional flags.
|
||
Introduce new GstVaapiFormatInfo to store the actual GstVaapiImageFormat
|
||
and any additional flags needed. Currently, all flags are set to zero.
|
||
|
||
2013-01-11 13:34:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* tests/Makefile.am:
|
||
libs: fix build of submodule wrappers.
|
||
Make sure to build codecparsers/ and videoutils/ sources against the
|
||
newly generated headers when out-of-source builds are used.
|
||
|
||
2013-01-11 14:11:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: fix checks for packages installed in non-standard roots.
|
||
|
||
2013-01-10 10:12:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
decoder: fix mini object implementation on 64-bit systems.
|
||
Use GPOINTER_TO_SIZE() instead of GPOINTER_TO_UINT() while manipulating
|
||
pointers. The latter is meant to be 32-bit only, not uintptr_t like size.
|
||
Only a gsize can hold all bits of a pointer.
|
||
Thanks to Ouping Zhang for spotting this error.
|
||
|
||
2013-01-09 16:05:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: optimize scan for the end of the frame.
|
||
Heuristic: if the second start-code is available, check whether that
|
||
one marks the start of a new frame because e.g. this is a sequence
|
||
or picture header. This doesn't save much, since we already cache the
|
||
results.
|
||
|
||
2013-01-09 13:44:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: optimize scan for start codes.
|
||
Accelerate scan for start codes by skipping up to 3 bytes per iteration.
|
||
A start code prefix is defined by the following bytes: 00 00 01. Thus,
|
||
for any group of 3 bytes (xx yy zz), we have the following possible cases:
|
||
1. If zz != 1, this cannot be a start code, then skip 3 bytes;
|
||
2. If yy != 0, this cannot be a start code, then skip 2 bytes;
|
||
3. If xx != 0 or zz != 1, this cannot be a start code, then skip 1 byte;
|
||
4. xx == 00, yy == 00, zz == 1, we have match!
|
||
This algorithm requires to peek bytes from the adapter. This increases the
|
||
amount of bytes copied to a temporary buffer, but this process is much faster
|
||
than scanning for all the bytes and using shift/masks. So, overall, this is
|
||
a win.
|
||
|
||
2013-01-08 16:41:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: drop useless gst_adapter_peek().
|
||
Drop useless gst_adapter_peek() since the returned buffer was not used
|
||
and this could incur superfluous memcpy().
|
||
|
||
2013-01-07 16:07:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: cosmetics: move parse_slice() down.
|
||
|
||
2013-01-07 15:24:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: avoid too many allocations of parser info objects.
|
||
Move parsing back to decoding step, but keep functions separate for now.
|
||
This is needed for future optimizations that may introduce some meta data
|
||
for parsed info attached to codec frames.
|
||
|
||
2013-01-07 14:04:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
decoder: decoder units are no longer dynamically allocated objects.
|
||
|
||
2013-01-07 13:59:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
decoder: optimize pre-allocation of decoder units.
|
||
Optimize pre-allocation of decoder units, thus avoiding un-necessary
|
||
memory reallocations. The heuristic used is that we could have around
|
||
one slice unit per macroblock line.
|
||
|
||
2013-01-07 13:41:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
decoder: use an array of units instead of a single-linked list.
|
||
Use a GArray to hold decoder units in a frame, instead of a single-linked
|
||
list. This makes 'append' calls faster, but not that much. At least, this
|
||
makes things clearer.
|
||
|
||
2013-01-07 11:13:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: refactor decoder unit API.
|
||
Allocate decoder unit earlier in the main parse() function and don't
|
||
delegate this task to derived classes. The ultimate purpose is to get
|
||
rid of dynamic allocation of decoder units.
|
||
|
||
2013-01-07 10:48:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: introduce parser info instead of MPEG-2 specific decoder unit.
|
||
Use a new GstVaapiParserInfoMpeg2 data structure instead of deriving
|
||
from GstVaapiDecoderUnit for MPEG-2 specific parser information.
|
||
|
||
2013-01-07 10:22:54 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: introduce parser info instead of H.264 specific decoder unit.
|
||
Use a new GstVaapiParserInfoH264 data structure instead of deriving
|
||
from GstVaapiDecoderUnit for H.264 specific parser information.
|
||
|
||
2013-01-05 12:33:06 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: set default values for some header fields.
|
||
The SPS, PPS and slice headers are not fully zero-initialized in the
|
||
codecparsers/ library. Rather, the standard upstream behaviour is to
|
||
initialize only certain syntax elements with some inferred values if
|
||
they are not present in the bitstream.
|
||
At the gstreamer-vaapi decoder level, we need to further initialize
|
||
certain syntax elements with some sensible default values so that to
|
||
not complicate VA drivers that just pass those verbatim to the HW,
|
||
and also avoid an memset() of the whole decoder unit.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2013-01-06 19:05:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-rebased commit b47983a.
|
||
b47983a h264: add inferred value for slice_beta_offset_div2
|
||
|
||
2013-01-05 17:55:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
plugins: cope with new GstVaapiVideoMeta API.
|
||
Update plugin elements with the new GstVaapiVideoMeta API.
|
||
This also fixes support for subpictures/overlay because GstVideoDecoder
|
||
generates a sub-buffer from the GstVaapiVideoBuffer. So, that sub-buffer
|
||
is marked as read-only. However, when comes in the textoverlay element
|
||
for example, it checks whether the input buffer is writable. Since that
|
||
buffer read-only, then a new GstBuffer is created. Since gst_buffer_copy()
|
||
does not preserve the parent field, the generated buffer in textoverlay
|
||
is not exploitable because we lost all VA specific information.
|
||
Now, with GstVaapiVideoMeta information attached to a standard GstBuffer,
|
||
all information are preserved through gst_buffer_copy() since the latter
|
||
does copy metadata (qdata in this case).
|
||
|
||
2013-01-05 17:37:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
videobuffer: wrap video meta into a surface buffer.
|
||
Make GstVaapiVideoBuffer a simple wrapper for video meta. This buffer is
|
||
no longer necessary but for compatibility with GStreamer 0.10 APIs or users
|
||
expecting a GstSurfaceBuffer like Clutter.
|
||
|
||
2013-01-05 08:31:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideometa.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideometa.h:
|
||
videobuffer: add video meta information.
|
||
Add new GstVaapiVideoMeta object that holds all information needed to
|
||
convey gst-vaapi specific data as a GstBuffer.
|
||
|
||
2013-01-03 13:10:33 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix calculation of the time-out value.
|
||
Fix calculation of the time-out value for cases where no VA surface is
|
||
available for decoding. In this case, we need to wait until downstream
|
||
sink consumed at least one surface. The time-out was miscalculated as
|
||
it was always set to <current-time> + one second, which is not suitable
|
||
for streams with larger gaps.
|
||
|
||
2013-01-03 13:05:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: always use the calculated presentation timestamp.
|
||
Use PTS value computed by the decoder, which could also be derived from
|
||
the GstVideoCodecFrame PTS. This makes it possible to fix up the PTS if
|
||
the original one was miscomputed or only represented a DTS instead.
|
||
|
||
2013-01-02 17:33:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: don't create sub-buffer for slice data.
|
||
|
||
2013-01-03 11:16:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: create new context when encoded resolution changes.
|
||
Create a new VA context if the encoded surface size changes because we
|
||
need to keep the underlying surface pool until the last one was released.
|
||
Otherwise, either of the following cases could have happened: (i) release
|
||
a VA surface to an inexistent pool, or (ii) release VA surface to an
|
||
existing surface pool, but with different size.
|
||
|
||
2013-01-02 17:23:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: don't create sub-buffer for slice data.
|
||
Avoid creating a GstBuffer for slice data. Rather, directly use the codec
|
||
frame input buffer data. This is possible because the codec frame is valid
|
||
until end_frame() where we submit the VA buffers for decoding. Anyway, the
|
||
slice data buffer is copied into the VA buffer when it is created.
|
||
|
||
2013-01-02 14:45:50 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: minor clean-ups.
|
||
Drop explicit initialization of most fields that are implicitly set to
|
||
zero. Remove some useless checks for NULL pointers.
|
||
|
||
2013-01-02 14:18:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: optimize scan for the second start code.
|
||
Optimize scan for the second start code, on the next parse() call so that
|
||
to avoid scanning again earlier bytes where we didn't find any start code.
|
||
|
||
2013-01-02 14:10:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: use sequence_display_extension() to compute PAR.
|
||
Also compute pixel-aspect-ratio from sequence_display_extension(),
|
||
should it exist in the bitstream.
|
||
|
||
2013-01-02 14:02:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: handle sequence_display_extension().
|
||
|
||
2012-12-27 15:18:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: implement {start,end}_frame() hooks.
|
||
Implement GstVaapiDecoder.start_frame() and end_frame() semantics so
|
||
that to create new VA context earlier and submit VA pictures to the
|
||
HW for decoding as soon as possible. i.e. don't wait for the next
|
||
frame to start decoding the previous one.
|
||
|
||
2012-12-27 14:54:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: parse slice() header earlier.
|
||
Parse slice() header and first macroblock position earlier in _parse()
|
||
function instead of waiting for the _decode() stage. This doesn't change
|
||
anything but readability.
|
||
|
||
2012-12-27 14:41:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: add codec specific decoder unit.
|
||
Introduce new GstVaapiDecoderUnitMpeg2 object, which holds the standard
|
||
GstMpegVideoPacket and additional parsed header info. Besides, we now
|
||
parse as early as in the _parse() function so that to avoid un-necessary
|
||
creation of sub-buffers in _decode() for video packets that are not slices.
|
||
|
||
2012-12-27 18:52:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
decoder: introduce lists of units to decode before/after frame.
|
||
Theory of operations: all units marked as "slice" are moved to the "units"
|
||
list. Since this list only contains slice data units, the prev_slice pointer
|
||
was removed. Besides, we now maintain two extra lists of units to be decoded
|
||
before or after slice data units.
|
||
In particular, all units in the "pre_units" list will be decoded before
|
||
GstVaapiDecoder::start_frame() is called and units in the "post_units"
|
||
list will be decoded after GstVaapiDecoder::end_frame() is called.
|
||
|
||
2013-01-02 16:06:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: drop useless checks for codec objects.
|
||
Codec objects are used internally only and they are bound to be created
|
||
with a valid GstVaapiDecoder object.
|
||
|
||
2012-12-27 10:35:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: use GST_ERROR to print error messages.
|
||
|
||
2012-12-27 09:55:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: avoid double release of frame on error.
|
||
Don't call gst_video_decoder_drop_frame() if gst_video_decoder_finish_frame()
|
||
was already called before and it returned an error. In that case, we were
|
||
releasing the frame again, thus leading to a "double-free" condition.
|
||
|
||
2012-12-21 14:29:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitmodules:
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* ext/videoutils:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
Add videoutils submodule for GstVideoDecoder APIs.
|
||
|
||
2012-12-18 16:36:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: check for GstVideoDecoder API.
|
||
GstVideoDecoder API is part of an unreleased GStreamer 0.10 stack. In particular,
|
||
this is only available in git 0.10 branch or GStreamer >= 1.0 stack. Interested
|
||
parties may either use upstream git 0.10 branch or backport the necessary support
|
||
for GstVideoDecoder API, thus including helper tools like GstVideoCodecFrame et al.
|
||
|
||
2012-12-18 16:21:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs.core.types:
|
||
docs: remove obsolete gst_vaapi_surface_proxy_get_type().
|
||
GstVaapiSurfaceProxy is no longer based on the GType system.
|
||
|
||
2012-12-18 16:17:22 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
docs: fix entries for GstVaapiSurfaceProxy.
|
||
|
||
2012-12-18 15:29:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-12-18 15:15:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Bump library major version.
|
||
Increase library major so that to cope with API/ABI incompatible changes
|
||
since 0.4.x series and avoid user issues.
|
||
|
||
2012-12-13 16:02:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
surfaceproxy: minor clean-ups.
|
||
|
||
2012-12-13 15:51:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
surfaceproxy: drop accessors to obsolete attributes.
|
||
Make GstVaapiSurfaceProxy only a thin wrapper around a VA context and a
|
||
VA surface. i.e. drop any other attribute like timestamp, duration,
|
||
interlaced or top-field-first.
|
||
|
||
2012-12-13 15:34:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
decoder: maintain decoded frames as GstVideoCodecFrame objects.
|
||
Maintain decoded surfaces as GstVideoCodecFrame objects instead of
|
||
GstVaapiSurfaceProxy objects. The latter will tend to be reduced to
|
||
the strict minimum: a context and a surface.
|
||
|
||
2012-12-13 14:30:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: output all decoded frames as soon as possible.
|
||
Make sure to push all decoded frames downstream as soon as possible.
|
||
This makes sure we don't need to wait for a new frame to be ready to
|
||
be decoded before receiving new decoded frames.
|
||
This also separates the decode process and the output process. The latter
|
||
could be moved to a specific GstTask later on.
|
||
|
||
2012-12-13 14:27:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
decoder: add gst_vaapi_decoder_get_frame() API.
|
||
Add new gst_vaapi_decoder_get_frame() function meant to be used with
|
||
gst_vaapi_decoder_decode(). The purpose is to return the next decoded
|
||
frame as a GstVideoCodecFrame and the associated GstVaapiSurfaceProxy
|
||
as the user-data object.
|
||
|
||
2012-12-13 15:47:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: use GstBuffer flags for TFF.
|
||
Determine whether the buffer represents the top-field only by checking for
|
||
the GST_VIDEO_BUFFER_TFF flag instead of relying on the GstVaapiSurfaceProxy
|
||
flag. Also trust "interlaced" caps to determine whether the input frame
|
||
is interleaved or not.
|
||
|
||
2012-12-13 13:27:33 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: handle video sub-buffers.
|
||
Intermediate elements may produce a sub-buffer from a valid GstVaapiVideoBuffer
|
||
for non raw YUV cases. Make sure vaapipostproc now understands those buffers.
|
||
|
||
2012-12-18 14:57:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: optimize initialization process of decoder units.
|
||
Decoder units were zero-initialized, including the SPS/PPS/slice headers.
|
||
The latter don't require zero-initialization since the codecparsers/ lib
|
||
will do so for key variables already. This is not a great value per se but
|
||
at least it makes it possible to check whether the default initialization
|
||
decisions made in the codecparsers/ lib were right or not.
|
||
This can be reverted if this exposes too many issues.
|
||
|
||
2012-12-13 11:48:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: minor clean-ups.
|
||
Drop explicit initialization of most fields that are implicitly set to
|
||
zero. Drop helper macros for casting to GstVaapiPictureH264 or
|
||
GstVaapiFrameStore. Also remove some useless checks for NULL pointers.
|
||
|
||
2012-12-07 17:45:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: drop GstVaapiSliceH264 object.
|
||
Use standard GstVaapiSlice object from now on since we already have
|
||
parsed and recorded the slice headers (GstH264SliceHdr decode units).
|
||
|
||
2012-12-13 10:47:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: detect new pictures from decode-units.
|
||
Update is_new_picture() to cope with GstVaapiDecoderUnitH264, instead
|
||
of assuming frame boundaries when first_mb_in_slice is zero.
|
||
|
||
2012-12-13 10:21:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: implement {start,end}_frame() hooks.
|
||
Implement GstVaapiDecoder.start_frame() and end_frame() semantics so
|
||
that to create new VA context earlier and submit VA pictures to the
|
||
HW for decoding as soon as possible. i.e. don't wait for the next
|
||
frame to start decoding the previous one.
|
||
|
||
2012-12-12 18:33:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: optimize scan for the second start code.
|
||
Optimize scan for the second start code, on the next parse() call so that
|
||
to avoid scanning again earlier bytes where we didn't find any start code.
|
||
|
||
2012-12-06 17:25:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add codec specific decoder unit.
|
||
Introduce new GstVaapiDecoderUnitH264 object, which holds the standard
|
||
NAL unit header (GstH264NalUnit) and additional parsed header info.
|
||
Besides, we now parse headers as early as in the _parse() function so
|
||
that to avoid un-necessary creation of sub-buffers in _decode() for
|
||
NAL units that are not slices.
|
||
This is a performance win by ~+1.1% only.
|
||
|
||
2012-12-04 11:01:42 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: handle sub video-buffers.
|
||
Intermediate elements may produce a sub-buffer from a valid GstVaapiVideoBuffer
|
||
for non raw YUV cases. Make sure vaapisink now understands those buffers.
|
||
|
||
2012-12-12 15:22:32 +0100 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: use gst_vaapi_decoder_get_codec_state().
|
||
Directly use the GstVideoCodecState associated with the VA decoder
|
||
instead of parsing caps again.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-12-04 14:53:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: use more standard helpers.
|
||
Use g_clear_object() [glib >= 2.28] and gst_caps_replace() helper functions
|
||
in more places.
|
||
|
||
2012-12-04 14:45:29 +0100 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: move to GstVideoDecoder base class.
|
||
Make vaapidecode derive from the standard GstVideoDecoder base element
|
||
class. This simplifies the code to the strict minimum for the decoder
|
||
element and makes it easier to port to GStreamer 1.x API.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-12-06 14:02:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: initial port to new GstVaapiDecoder API
|
||
|
||
2012-12-06 14:02:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: initial port to new GstVaapiDecoder API
|
||
|
||
2012-12-06 14:02:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: initial port to new GstVaapiDecoder API
|
||
|
||
2012-12-17 09:47:20 -0800 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: initial port to new GstVaapiDecoder API
|
||
|
||
2012-12-06 14:01:46 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: initial port to new GstVaapiDecoder API.
|
||
|
||
2012-12-12 15:09:21 +0100 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
decoder: use GstVideoCodecState.
|
||
Use standard GstVideoCodecState throughout GstVaapiDecoder and expose
|
||
it with a new gst_vaapi_decoder_get_codec_state() function. This makes
|
||
it possible to drop picture size (width, height) information, framerate
|
||
(fps_n, fps_d) information, pixel aspect ratio (par_n, par_d) information,
|
||
and interlace mode (is_interlaced field).
|
||
This is a new API with backwards compatibility maintained. In particular,
|
||
gst_vaapi_decoder_get_caps() is still available.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-12-12 13:44:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
decoder: update gst_vaapi_decoder_get_surface() semantics.
|
||
Align gst_vaapi_decoder_get_surface() semantics with the rest of the
|
||
API. That is, return a GstVaapiDecoderStatus and the decoded surface
|
||
as a handle to GstVaapiSurfaceProxy in parameter.
|
||
This is an API/ABI change.
|
||
|
||
2012-12-07 16:40:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: use standard helper functions.
|
||
Use g_clear_object(), gst_buffer_replace() and gst_caps_replace()
|
||
whenever necessary.
|
||
|
||
2012-11-29 15:06:00 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: expose new parse/decode API.
|
||
Introduce new decoding process whereby a GstVideoCodecFrame is created
|
||
first. Next, input stream buffers are accumulated into a GstAdapter,
|
||
that is then passed to the _parse() function. The GstVaapiDecoder object
|
||
accumulates all parsed units and when a complete frame or field is
|
||
detected, that GstVideoCodecFrame is passed to the _decode() function.
|
||
Ultimately, the caller receives a GstVaapiSurfaceProxy if decoding
|
||
process was successful.
|
||
|
||
2012-12-13 10:20:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
decoder: add {start,end}_frame() hooks.
|
||
The start_frame() hook is called prior to traversing all decode-units
|
||
for decoding. The unit argument represents the first slice in the frame.
|
||
Some codecs (e.g. H.264) need to wait for the first slice in order to
|
||
determine the actual VA context parameters.
|
||
|
||
2012-12-06 13:57:42 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: add new GstVaapiDecoder API.
|
||
Split decoding process into two steps: (i) parse incoming bitstreams
|
||
into simple decoder-units until the frame or field is complete; and
|
||
(ii) decode the whole frame or field at once.
|
||
This is an ABI change.
|
||
|
||
2012-12-05 10:51:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_frame.h:
|
||
decoder: add new "decoder-frame" object.
|
||
Introduce a new GstVaapiDecoderFrame that is just a list of decoder units
|
||
(GstVaapiDecoderUnit objects) that constitute a frame. This object is just
|
||
an extension to GstVideoCodecFrame for VA decoder purposes. It is available
|
||
as the user-data member element.
|
||
This is a libgstvaapi internal object.
|
||
|
||
2012-12-06 09:44:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_unit.h:
|
||
decoder: add new "decoder-unit" object.
|
||
Introduce GstVaapiDecoderUnit which represents a fragment of the source
|
||
stream to be decoded. For instance, a decode-unit will be a NAL unit for
|
||
H.264 streams, an EBDU for VC-1 streams, and a video packet for MPEG-2
|
||
streams.
|
||
This is a libgstvaapi internal object.
|
||
|
||
2012-12-03 14:09:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
Port GstVaapiFrameStore to GstVaapiMiniObject.
|
||
|
||
2012-12-03 11:19:08 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
Port codec objects to GstVaapiMiniObject.
|
||
|
||
2012-12-03 13:46:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
surfaceproxy: port to GstVaapiMiniObject.
|
||
GstVaapiSurfaceProxy does not use any particular functionality from
|
||
GObject. Actually, it only needs a basic object type with reference
|
||
counting.
|
||
This is an API and ABI change.
|
||
|
||
2012-11-30 17:25:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiminiobject.h:
|
||
Add GstVaapiMiniObject.
|
||
Introduce a new reference counted object that is very lightweight and
|
||
also provides flags and user-data functionalities. Initialization and
|
||
finalization times are reduced by up to a factor 5x vs GstMiniObject
|
||
from GStreamer 0.10 stack.
|
||
This is a libgstvaapi internal object.
|
||
|
||
2012-12-17 02:51:17 -0800 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-decode.c:
|
||
* tests/test-mpeg4.c:
|
||
* tests/test-mpeg4.h:
|
||
tests: add test for MPEG-4:2 decoding.
|
||
|
||
2012-12-17 04:42:29 -0800 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: initialize VA context before allocating the first slice.
|
||
Fix decode_slice() to ensure a VA context exists prior to creating a
|
||
new GstVaapiSliceH264, which invokes vaCreateBuffer() with some VA
|
||
context ID. i.e. the latter was not initialized, thus causing failures
|
||
on Cedar Trail for example.
|
||
|
||
2012-12-05 09:15:32 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: install plugin elements in GST_PLUGIN_PATH, if set.
|
||
If GST_PLUGIN_PATH environment variable exists and points to a valid
|
||
directory, then use it as the system installation path for gst-vaapi
|
||
plugin elements.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-12-17 14:27:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: downgrade glib required version to 2.28.
|
||
|
||
2012-12-17 09:41:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst/vaapi/gstvaapi.c:
|
||
libs: fix compatibility with glib 2.28.
|
||
Always prefer non deprecated APIs by default and provide compatibility
|
||
glue for older glib versions when necessary.
|
||
|
||
2012-12-17 10:10:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
libs: use glib >= 2.32 semantics for mutexes.
|
||
Use glib >= 2.32 semantics for GMutex and GRecMutex wrt. initialization
|
||
and termination. Basically, the new mutex objects can be used as static
|
||
mutex objects from the deprecated APIs, e.g. GStaticMutex and GStaticRecMutex.
|
||
|
||
2012-12-17 04:15:53 -0800 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
libs: only export gst_vaapi_*() symbols.
|
||
This fixes symbol clashes between the gst-vaapi built-in codecparsers/
|
||
library and the system-provided one, mainly used by videoparses/. Now,
|
||
only symbols with the gst_vaapi_* prefix will be exported, if they are
|
||
not marked as "hidden" to libgstvaapi.
|
||
|
||
2012-11-20 18:21:41 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
vaapiupload: reset direct-rendering to zero when changing caps.
|
||
Make sure to reset direct-rendering flag to zero when caps are changed,
|
||
and only derive it to one when the next checks succeed.
|
||
|
||
2012-11-20 14:42:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapiupload: fix sink caps to report the supported set of YUV caps.
|
||
Try to allocate the GstVaapiUploader helper object prior to listing the
|
||
supported image formats. Otherwise, only a single generic caps is output
|
||
with no particular pixel format referenced in there.
|
||
|
||
2012-11-20 14:32:40 +0100 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
vaapiupload: use new GstVaapiUploader helper.
|
||
Use GstVaapiUploader helper that automatically handles direct rendering
|
||
mode, thus making the "direct-rendering" property obsolete and hence it
|
||
is now removed.
|
||
The "direct-rendering" level 2, i.e. exposing VA surface buffers, was never
|
||
really well supported and it could actually trigger degraded performance.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-11-20 15:50:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapiuploader.h:
|
||
vaapisink: compute and expose the supported set of YUV caps.
|
||
Make vaapisink expose only the set of supported caps for raw YUV buffers.
|
||
Add gst_vaapi_uploader_get_caps() helper function to determine the set
|
||
of supported YUV caps as source (for images). This function actually
|
||
tries to zero and upload each image to a 64x64 test surface. Of course,
|
||
this relies on VA drivers to not claim success if vaPutImage() is not
|
||
correctly supported.
|
||
|
||
2012-11-20 14:28:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiuploader.c:
|
||
* gst/vaapi/gstvaapiuploader.h:
|
||
vaapisink: add support for raw YUV buffers.
|
||
Add new GstVaapiUploader helper to upload raw YUV buffers to VA surfaces.
|
||
It is up to the caller to negotiate source caps (for images) and output
|
||
caps (for surfaces). gst_vaapi_uploader_has_direct_rendering() is available
|
||
to help decide between the creation of a GstVaapiVideoBuffer or a regular
|
||
GstBuffer on sink pads.
|
||
Signed-off-by: Zhao Halley <halley.zhao@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-11-20 14:36:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: fix GstVaapiImage map and unmap.
|
||
Fix gst_vaapi_image_map() to return TRUE and the GstVaapiImageRaw
|
||
structure correctly filled in if the image was already mapped.
|
||
Likewise, make gst_vaapi_image_unmap() return TRUE if the image
|
||
was already unmapped.
|
||
|
||
2012-10-30 13:15:45 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
videobuffer: fix memory leak for surface and image.
|
||
Fix reference leak of surface and image in GstVaapiVideoBuffer wrapper,
|
||
thus resulting on actual memory leak of GstVaapiImage when using them
|
||
for downloads/uploads from VA surfaces and more specifically surfaces
|
||
when the pipeline is shutdown. i.e. vaTerminate() was never called
|
||
because the resources were not unreferenced, and thus not deallocated
|
||
in the end.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-11-19 10:04:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-11-16 18:00:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix picture size in macroblocks.
|
||
The picture size signalled by sps->{width,height} is the actual size with
|
||
cropping applied, not the original size derived from pic_width_in_mbs_minus1
|
||
and pic_height_in_map_units_minus1. VA driver expects that original size,
|
||
uncropped.
|
||
There is another issue pending: frame cropping information needs to be
|
||
taken care of.
|
||
|
||
2012-11-16 16:18:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
codecparsers: always build parserutils first.
|
||
Fix commit 18245b4 so that to link and build parserutils.[ch] first.
|
||
This is needed since that's the common dependency for actual codec
|
||
parsers (gstvc1parser.c for instance).
|
||
|
||
2012-11-15 17:50:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
codecparsers: always build the VC-1 parser library.
|
||
... this is useful to make sure pixel-aspect-ratio and framerate
|
||
information are correctly parsed since we have no means to detect
|
||
that at configure time.
|
||
|
||
2012-11-08 11:40:47 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix PAR calculation from commit bd11bae.
|
||
Invoke gst_mpeg_video_finalise_mpeg2_sequence_header() to get the
|
||
correct PAR values. While doing so, require a newer version of the
|
||
bitstream parser library.
|
||
Note: it may be necessary to also parse the Sequence_Display_Extension()
|
||
header.
|
||
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-11-15 15:00:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Fix build with the GNU gold linker.
|
||
In particular, fix libgstvaapi-glx DSO dependencies to include libgstbase
|
||
and libgstvideo libs, e.g. for gst_video_buffer_get_overlay_composition().
|
||
|
||
2012-11-02 18:18:37 +0000 Rob Bradford <rob@linux.intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: port to 1.0 version of the protocol.
|
||
This patch updates to relect the 1.0 version of the protocol. The main
|
||
changes are the switch to wl_registry for global object notifications
|
||
and the way that the event queue and file descriptor is processed.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-11-14 19:22:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix incorrect integration of previous commit (4d31e1e).
|
||
git am got confused somehow, though the end result doesn't change at
|
||
all since we require both SPS and PPS to be parsed prior to decoding
|
||
the first slice.
|
||
|
||
2012-11-14 18:40:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: start decoding slices after first SPS/PPS activation.
|
||
Only start decoding slices when at least one SPS and PPS got activated.
|
||
This fixes cases when a source represents a substream of another stream
|
||
and no SPS and PPS was inserted before the first slice of the generated
|
||
substream.
|
||
|
||
2012-11-14 14:25:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix VAPictureParameterBufferH264.ReferenceFrames[] construction.
|
||
... for interlaced streams. The short_ref[] and long_ref[] arrays may
|
||
contain up to 32 fields but VA ReferenceFrames[] array expects up to
|
||
16 reference frames, thus including both fields.
|
||
|
||
2012-11-14 10:27:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix interlaced stream decoding with MMCO.
|
||
Fix decoding of interlaced streams when adaptive_ref_pic_marking_mode_flag
|
||
is equal to 1, i.e. when memory management control operations are used. In
|
||
particular, when field_pic_flag is set to 0, the new reference flags shall
|
||
be applied to both fields.
|
||
|
||
2012-11-13 17:14:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add initial support for interlaced streams.
|
||
Decoded frames are only output when they are complete, i.e. when both
|
||
fields are decoded. This also means that the "interlaced" caps is not
|
||
propagated to vaapipostproc or vaapisink elements. Another limitation
|
||
is that interlaced bitstreams with MMCO are unlikely to work.
|
||
|
||
2012-11-13 16:35:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: split remove_reference_at() into finer units.
|
||
Split remove_reference_at() into a function that actually removes the
|
||
specified entry from the short-term or long-term reference picture array,
|
||
and a function that sets reference flags to the desired value, possibly
|
||
zero. The latters marks the picture as "unused for reference".
|
||
|
||
2012-10-23 14:04:22 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: fix gst_vaapi_picture_new_field() object type.
|
||
Fix gst_vaapi_picture_new_field() to preserve the original picture type.
|
||
e.g. gst_vaapi_picture_new_field() with a GstVaapiPictureH264 argument
|
||
shall generate a GstVaapiPictureH264 object.
|
||
|
||
2012-11-13 14:04:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add picture structure for reference picture marking process.
|
||
Introduce new `structure' field to the H.264 specific picture structure
|
||
so that to simplify the reference picture marking process. That local
|
||
picture structure is derived from the original picture structure, as
|
||
defined by the syntax elements field_pic_flag and bottom_field_flag.
|
||
|
||
2012-11-02 15:14:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: introduce new frame store structure.
|
||
The frame store represents a Decoded Picture Buffer entry, which can
|
||
hold up to two fields. So far, the frame store is only used to hold
|
||
full frames.
|
||
|
||
2012-11-13 10:10:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* ext/codecparsers:
|
||
codecparsers: update to gst-vaapi-rebased commit 73d6aab.
|
||
73d6aab h264: fix rbsp_more_data() implementation
|
||
25d04cf h264: fix error code for invalid size parsed in SPS
|
||
84798e5 fix FSF address
|
||
|
||
2012-10-31 16:37:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: minor clean-ups.
|
||
Move DPB flush up if the current picture to decode is an IDR. Besides,
|
||
don't bother to check for IDR pictures in dpb_add() function since an
|
||
explicit DPB flush was already performed in this case.
|
||
|
||
2012-10-31 14:24:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: simplify reference picture marking process.
|
||
... to build the short_ref[] and long_ref[] lists from the DPB, instead
|
||
of maintaining them separately. This avoids refs/unrefs while making it
|
||
possible to generate the list based on the actual picture structure.
|
||
This also ensures that the list of generated ReferenceFrames[] actually
|
||
matches what reference frames are available in the DPB. i.e. short_ref[]
|
||
and long_ref[] entries are implied from the DPB, so there is no risk of
|
||
having "dangling" references.
|
||
|
||
2012-10-31 11:52:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: introduce per-field POC in GstVaapiPictureH264.
|
||
Use the POC member available in the GstVaapiPicture base class and
|
||
get rid of the dependency on the local VAPictureH264 TopFieldOrderCnt
|
||
and BottomFieldOrderCnt. Rather, use a simple field_poc[] array
|
||
initialized to INT_MAX, so that to simplify picture POC calculation
|
||
for non frame pictures.
|
||
|
||
2012-10-31 11:45:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: introduce GST_VAAPI_PICTURE_{SHORT,LONG}_TERM_REFERENCE flags.
|
||
Further get rid of GstVaapiPictureH264-local VAPictureH264.flags for
|
||
reference bits, thus simplifying the reference picture marking process
|
||
to only track a single set of reference flags. Also introduce a new
|
||
long_term_frame_idx member.
|
||
|
||
2012-10-31 11:33:40 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: introduce GST_VAAPI_PICTURE_FLAG_IDR flag.
|
||
|
||
2012-10-31 10:56:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fill in GstVaapiPicture structure.
|
||
... and get rid of local VAPictureH264.flags fields in GstVaapiPictureH264.
|
||
|
||
2012-10-31 11:07:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add vaapi_fill_picture() helper.
|
||
Add vaapi_fill_picture() helper function to convert GstVaapiPictureH264
|
||
to VAPictureH264 structure. This is preparatory work to get rid of the
|
||
local VAPictureH264 member in GstVaapiPictureH264.
|
||
|
||
2012-10-26 16:12:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix activation order of picture and sequence parameters.
|
||
Delay ensure_context() until we actually need a VA context for allocating
|
||
new VA surfaces, and then GstVaapiPictures, but also when a real activation
|
||
of a new picture parameter set occurs, thus also implying an activation
|
||
of the related sequence parameter set.
|
||
The most important thing was to drop the global pps and sps pointers since
|
||
they may not have matched the currently activated picture parameter or
|
||
sequence parameter sets at the specified decode point.
|
||
Anoter positive side-effect is that this cleans up all occurrences of
|
||
decode_current_picture() to only keep those useful in decode_picture(),
|
||
before a new picture is allocated, or in decode_sequence_end() when
|
||
an end-of-stream or end-of-sequence condition occurred.
|
||
|
||
2012-10-26 13:17:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix scaling list generation.
|
||
... aka fix regression from efaab79. In particular, ScalingList8x8[]
|
||
array was partially copied to the VAIQMatrixBufferH264. While we are
|
||
at it, also improve bounds checking and avoid copying 8x8 scaling
|
||
lists if transform_8x8_mode_flag is set to 0.
|
||
|
||
2012-10-24 18:23:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix detection of picture boundaries.
|
||
Strictly follow the standard (7.4.1.2.4) to detect the first VCL NAL
|
||
unit of a primary coded picture.
|
||
|
||
2012-10-23 14:50:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: optimize handling of scaling lists.
|
||
Don't copy scaling lists twice to an intermediate state. Rather, directly
|
||
use the scaling lists from GstH264PPS since they would match those provided
|
||
by SPS header, if necessary. i.e. if PPS-specific scaling lists are not
|
||
available in the bitstream.
|
||
|
||
2012-10-23 10:33:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: simplify code when MMCO is 5.
|
||
Remove exit_picture() and exit_picture_poc() since PicOrderCnt(CurrPic)
|
||
is now updated accordingly to the standard. Besides, MMCO = 5 specific
|
||
operations are moved up to exec_ref_pic_marking_adaptive_mmco_5().
|
||
|
||
2012-10-22 11:52:13 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix MMCO-based reference picture marking process.
|
||
Fix adaptive memory control decoded reference picture marking process
|
||
implementation for operations 2 to 6, thus also fixing support for
|
||
long-term reference pictures.
|
||
|
||
2012-10-22 10:50:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: move MMCO handlers out of the loop (cosmetics).
|
||
This change only splits each individual MMCO handler into several functions
|
||
dedicated for each operation. This is needed to perform further work later
|
||
on.
|
||
|
||
2012-10-17 15:49:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* Makefile.am:
|
||
debian: fix make dist for packaging.
|
||
bzip2 tarballs are now used, so update the deb.upstream dependencies
|
||
to include dist-bzip2 instead of plain old dist, and use the correct
|
||
tar extract options to handle that format.
|
||
|
||
2012-10-17 15:42:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: generate bzip2 tarballs in ustar format by default.
|
||
|
||
2012-10-17 15:38:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: bump glib required version to 2.31.2.
|
||
Use new Thread API. In particular, g_mutex_init() and g_cond_init()
|
||
rather than g_mutex_new() and g_cond_new() respectively.
|
||
|
||
2012-10-04 17:39:53 +0100 Rob Bradford <rob@linux.intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: adopt non-deprecrated glib locking primitive pattern.
|
||
The use of heap allocated GMutex/GCond is deprecated. Instead place them
|
||
inside the structure they are locking.
|
||
These changes switch to use g_mutex_init/g_cond_init rather than the heap
|
||
allocation functions.
|
||
Because we cannot test for a NULL pointer for the GMutex/GCond we must
|
||
initialise inside the GObject _init function and clear inside the _finalize
|
||
which is guaranteed to only be called once and after the object is no longer
|
||
in use.
|
||
|
||
2012-10-17 14:52:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix compiler warnings.
|
||
Don't care of the return value for gst_vaapi_decoder_put_buffer()
|
||
during destruction of the element. Don't print out (uninitialised)
|
||
error code when allocation of video buffer failed.
|
||
|
||
2012-10-16 16:52:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add flag to compile with strict DPB ordering mode.
|
||
Allow build with strict DPB ordering mode whereby evicted entries
|
||
are replaced by the next entries, in order instead of optimizing
|
||
it away with the last entry in the DPB.
|
||
This is only useful for debugging purpose, against a reference SW
|
||
decoder for example.
|
||
|
||
2012-10-16 16:46:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: drop extra code covered by built-in codecparsers.
|
||
GstH264SliceHdr.n_emulation_prevention_bytes is bound to exist now that
|
||
a newer version of codecparsers/ are used if the system provided one is
|
||
now recent enough to have those required extensions.
|
||
|
||
2012-10-16 16:43:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
codecparsers: fix generation of symlinks.
|
||
Try to improve dependencies while generating symlinks to externally
|
||
maintained copy of codecparsers (derived from upstream git master
|
||
tree).
|
||
|
||
2012-10-11 15:04:12 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: use framerate information from bitstream parser.
|
||
|
||
2012-09-27 18:05:46 +0100 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: use pixel-aspect-ratio from bitstream parser.
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-09-27 18:05:46 +0100 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: use pixel-aspec-ratio information from bitstream parser.
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-10-11 13:49:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
codecparsers: h264: use submodule sources.
|
||
Use newer sources from the codecparsers/ submodule for
|
||
- GstH264SliceHdr.n_emulation_prevention_bytes: EPBs;
|
||
- GstH264VUIParams.{par_n,par_d}: pixel-aspect-ratio.
|
||
|
||
2012-10-11 13:23:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitignore:
|
||
* configure.ac:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
codecparsers: jpeg: use submodule sources.
|
||
|
||
2012-10-11 10:03:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitmodules:
|
||
* Makefile.am:
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
* ext/Makefile.am:
|
||
* ext/codecparsers:
|
||
Add codecparsers submodule.
|
||
|
||
2012-10-11 14:17:12 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitignore:
|
||
.gitignore: updates.
|
||
|
||
2012-10-11 13:40:37 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* autogen.sh:
|
||
autogen: fix check for gtkdocize and autoreconf.
|
||
If gtkdocize or autoreconf programs were not found, then the autogen.sh
|
||
script would fail to report that correctly because test -z was not passed
|
||
any argument (empty string "" in this case).
|
||
|
||
2012-09-27 18:05:46 +0100 Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: use pixel-aspect-ratio from SPS header.
|
||
Propagate pixel-aspect-ratio determined by the GStreamer codecparser
|
||
from the sequence headers.
|
||
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-10-10 10:35:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: add decode_nalu() helper function.
|
||
Split decode_buffer() into the core infrastructure that determines
|
||
the NAL units contained in the adapter and the actual function that
|
||
decodes the NAL unit.
|
||
|
||
2012-10-10 10:31:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix end-of-stream conditions (flush).
|
||
Decode pending data in the adapter prior to processing the actual
|
||
code for end-of-stream.
|
||
|
||
2012-10-10 09:45:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: add decode_packet() helper function.
|
||
Split decode_buffer() into the core infrastructure that determines
|
||
the packets contained in the adapter and the actual function that
|
||
decodes the packet data.
|
||
|
||
2012-10-09 15:34:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix end-of-stream conditions (flush).
|
||
Decode pending data in the adapter prior to processing the actual
|
||
code for end-of-stream. Initial code from Feng Yuan.
|
||
|
||
2012-10-09 15:40:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix memory leak of empty packets.
|
||
Fix memory leakage of empty packets, i.e. packets that only contain
|
||
the start code prefix. In particular, free empty user-data packets.
|
||
Besides, the codec parser will already fail gracefully if the packet
|
||
to parse does not have the minimum required size. So, we can also
|
||
completely drop the block of code that used to handle packets of size 4
|
||
(including the start code).
|
||
|
||
2012-10-09 15:01:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix return value for "no-data" conditions.
|
||
Fix return value when the second scan for start code fails. This means
|
||
there is not enough data to determine the full extents of the current
|
||
packet and the function shall return GST_VAAPI_DECODER_STATUS_ERROR_NO_DATA
|
||
in this case, instead of GST_VAAPI_DECODER_STATUS_SUCCESS.
|
||
|
||
2012-10-09 14:48:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: refine semantics of gst_vaapi_decoder_put_buffer().
|
||
Improve the semantics for gst_vaapi_decoder_put_buffer() when an empty
|
||
buffer is passed on. An empty buffer is a buffer with a NULL data pointer
|
||
or with a size equals to zero. In this case, that buffer is simply
|
||
skipped and the function returns TRUE. A NULL buffer argument still
|
||
marks the end-of-stream.
|
||
|
||
2012-10-09 14:40:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: drop unused functions.
|
||
|
||
2012-08-26 22:29:04 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: flush buffers when receiving EOS.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-10-05 13:36:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/Makefile.am:
|
||
debian: fix make dist for packaging.
|
||
|
||
2012-10-05 12:06:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: cosmetics (remove tabs).
|
||
|
||
2012-10-04 17:39:52 +0100 Rob Bradford <rob@linux.intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: add support for windowed mode.
|
||
Rather than always making the surface fullscreen instead implement the
|
||
set_fullscreen vfunc on GstVaapiWindow and then set the shell surface
|
||
fullscreen on not depending on that.
|
||
Reviewed-by: Joe Konno <joe.konno@intel.com>
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-10-01 09:21:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-09-28 17:54:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
* configure.ac:
|
||
Fix and document build dependencies better.
|
||
|
||
2012-09-28 17:41:42 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/control.in:
|
||
debian: fix GStreamer build dependencies.
|
||
|
||
2012-09-28 17:39:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/control.in:
|
||
debian: fix Wayland build dependencies.
|
||
|
||
2012-09-28 17:38:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/control.in:
|
||
debian: fix conditional build of packages.
|
||
Make it still possible to build package even if one of the build dependencies
|
||
for a specific video backend is not available.
|
||
|
||
2012-09-27 11:08:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
utils: drop unused GLX helpers.
|
||
Remove helpers for GL_ARB_fragment_program and GL_ARB_multitexture
|
||
extensions since they are not used throughout gstreamer-vaapi.
|
||
|
||
2012-09-27 11:04:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
utils: fix build with <GL/glext.h> version >= 85.
|
||
Mesa recently updated the <GL/glext.h> header version to Khronos version 85.
|
||
This caused the PFNGLMULTITEXCOORD2FPROC definition to be moved out of the
|
||
GL_VERSION_1_3_DEPRECATED block. However, since <GL/gl.h> also defines
|
||
GL_VERSION_1_3 to 1, the definitions in <GL/glext.h> are then not enabled,
|
||
thus leaving PFNGLMULTITEXCOORD2FPROC undefined as well.
|
||
Provide a PFNGLMULTITEXCOORD2FPROC replacement as an interim solution for
|
||
newer versions of the <GL/glext.h> header.
|
||
|
||
2012-09-26 16:33:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: update VA-API version requirements.
|
||
VA/DRM and VA/Wayland API are now promoted to VA-API 0.33.0 (libva 1.1.0).
|
||
|
||
2012-09-21 16:43:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: review and report errors accordingly.
|
||
Use GST_ERROR() to report real errors instead of hiding them into
|
||
GST_DEBUG().
|
||
|
||
2012-09-20 17:58:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: exclusively use GstAdapter, drop sub-buffer hack.
|
||
Maintaining the sub-buffer is rather suboptimal especially since we
|
||
were also maintaining a GstAdapter. Now, we only use the GstAdapter
|
||
thus requiring minor extra parsing when receiving avcC buffers.
|
||
|
||
2012-09-20 16:18:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: updates.
|
||
|
||
2012-09-20 16:02:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-09-20 14:38:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/gstreamer-vaapi.install.in:
|
||
debian: fix packaging on recent Ubuntu platforms.
|
||
Use explicit GStreamer plugins path.
|
||
|
||
2012-09-17 17:55:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs.core.types:
|
||
docs: fix build for make dist.
|
||
|
||
2012-09-14 10:30:35 -0400 Kristian Høgsberg <krh@bitplanet.net>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: set opaque region for YUV surface.
|
||
This allows the compositor to optimize redraws and cull away changes
|
||
obscured by the video surface.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-09-14 17:30:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: fix check for libva-glx and libva-drm.
|
||
|
||
2012-09-12 13:42:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
glibcompat: add replacement for g_cond_wait_until().
|
||
|
||
2012-09-12 13:41:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: include "sysdeps.h" instead of "config.h".
|
||
|
||
2012-09-12 10:40:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
codecparsers: jpeg: add missing includes.
|
||
|
||
2012-09-11 17:03:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: don't reset decoder if codec type is the same.
|
||
Reset, i.e. destroy then create, the decoder in _setcaps() handler only
|
||
if the underlying codec type actually changed. This makes it possible
|
||
to be more tolerant with certain MPEG-2 streams that get parsed to
|
||
form caps that are compatible with the previous state but minor changes
|
||
to "codec-data".
|
||
|
||
2012-09-11 16:41:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: simplify codec lookup from caps.
|
||
Add new gst_vaapi_codec_from_caps() helper to determine codec type from
|
||
the specified caps. Don't globally expose this function since this is
|
||
really trivial and only used in the vaapidecode element.
|
||
|
||
2012-09-11 15:54:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: improve "no free surface" conditions.
|
||
Previously, vaapidecode would wait up to one second until a free surface
|
||
is available, or it aborts decoding. Now, vaapidecode waits until the
|
||
last decoded surface was to be presented, plus one second. Besides, end
|
||
times are now expressed relative to the monotonic clock.
|
||
|
||
2012-09-11 10:59:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
decoder: propagate buffer duration downstream.
|
||
|
||
2012-09-11 10:59:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
surfaceproxy: add "duration" property.
|
||
|
||
2012-09-10 18:26:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: cope with new GstVaapiContextInfo based API.
|
||
Update decoders to report the maximum number of reference frames to use.
|
||
|
||
2012-09-10 18:17:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
context: JPEG codec does not need any reference frame.
|
||
|
||
2012-09-10 18:15:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
context: allow number of reference frames to be set.
|
||
Make it possible to specify the maximum number of references to use within
|
||
a single VA context. This helps reducing GPU memory allocations to the useful
|
||
number of references to be used.
|
||
|
||
2012-09-07 16:41:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: fix deinterlace-{mode,method} types definition.
|
||
|
||
2012-09-07 16:15:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: fix debug info for unsupported profile.
|
||
|
||
2012-09-07 16:14:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
libs: fix build in strict ISO C mode.
|
||
|
||
2012-09-07 16:11:12 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: fix build in strict ISO C mode.
|
||
|
||
2012-09-07 15:31:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* pkgconfig/gstreamer-vaapi-glx.pc.in:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
pkgconfig: fix dependencies and slightly improve description.
|
||
Drop @LIBVA_EXTRA_{CFLAGS,LIBS}@ substitutions and slightly improve
|
||
descriptions with clearer renderer names.
|
||
|
||
2012-09-04 13:54:19 +0200 Philip Lorenz <philip@bithub.de>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: acquire lock only if the mutex exists.
|
||
When playback stops the GstVaapiDecode object is reset into a clean
|
||
state. However, surfaces may still be referenced by library users and
|
||
unreferencing them after the reset triggers an access to an unset mutex.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-09-07 11:58:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: drop extraneous return for void function.
|
||
|
||
2012-09-07 11:57:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: don't use (void *) pointer arithmetic.
|
||
|
||
2012-09-04 13:40:04 +0200 Philip Lorenz <philip@bithub.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
Do not forward declare enums.
|
||
Forward declaring enums is not allowed by the C standard and aborts
|
||
compilation if the header file is included in a C++ project.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-09-07 11:44:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: fix check for VA/DRM API.
|
||
|
||
2012-09-04 11:53:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix calculation of window size.
|
||
If either dimension is out-of-bounds, then scale window to fit the
|
||
display size, even if the output is to be rotated. Use the standard
|
||
gst_video_sink_center_rect() function to center and scale the window
|
||
wrt. the outer (display) bounds.
|
||
|
||
2012-08-28 02:45:22 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: add video rotation support.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-09-06 11:47:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
pluginutils: add G_PRIMITIVE_SWAP() helper macro.
|
||
This macro helps swapping variables while maintaining the correct underlying
|
||
and primitive type.
|
||
|
||
2012-09-06 11:51:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: fix display aspect ratio when display is rotated.
|
||
|
||
2012-09-06 11:50:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
display: fix physical display size when display is rotated.
|
||
|
||
2012-08-30 16:27:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
display: fix GstVaapiRotation enumeration of values.
|
||
|
||
2012-08-29 13:18:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapisink: drop obsolete GstVaapiVideoSink interface.
|
||
This interface was deprecated since 0.3.x series when the GstVideoContext
|
||
interface was added to the main GStreamer APIs.
|
||
|
||
2012-08-27 18:34:27 +0300 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: automatically detect overlay rendering mode.
|
||
Retain the VA surface until another surface is to be displayed only
|
||
if VA display rendering mode is determined to be "overlay" mode.
|
||
|
||
2012-08-24 16:30:33 +0300 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: retain VA surface until another one is displayed.
|
||
Keep VA surface proxy associated with the surface that is currently
|
||
being displayed. This makes sure that surface is not released back
|
||
to the pool of surfaces free to use for decoding. This is necessary
|
||
with VA driver implementations that support rendering to an overlay
|
||
pipe. Otherwise, there could be cases where we are decoding into a
|
||
surface that is being displayed, hence some flickering.
|
||
|
||
2012-08-24 14:54:16 +0300 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: fix build with older toolchains.
|
||
Don't re-declare GstVaapiTexture if USE_GLX mode is set.
|
||
|
||
2012-08-29 10:13:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: partially revert 8ebe4d6.
|
||
Don't try to fix up the initial values, this could make things worse.
|
||
Simply assume the driver does not support the capability in this case.
|
||
|
||
2012-08-28 16:08:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-display.c:
|
||
tests: dump VA display properties.
|
||
|
||
2012-08-28 18:11:32 +0300 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: fix validation process of properties during discovery.
|
||
Some VA drivers (e.g. EMGD) can have completely random values for initial
|
||
display attributes. So, try to improve the discovery process to check the
|
||
initial display attribute values actually fall within valid bounds. If not,
|
||
try to reset those to some sensible values like the default value reported
|
||
through vaQueryDisplayAttributes().
|
||
|
||
2012-08-28 13:59:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
display: add color balance properties.
|
||
Add support for hue, saturation, brightness and contrast attributes.
|
||
|
||
2012-08-28 14:05:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: initialize default attribute values.
|
||
Ensure the display attribute is actually supported by trying to retrieve
|
||
its current value during GstVaapiDisplay creation.
|
||
|
||
2012-08-28 11:09:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: raise "notify" for property changes.
|
||
|
||
2012-08-28 10:55:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
display: expose display attributes as GObject properties.
|
||
Expose VA display "render-mode" and "rotation" attributes as standard
|
||
GObject properties.
|
||
|
||
2012-08-28 16:24:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: install properties in batch.
|
||
Use g_object_class_install_properties() to install GstVaapiDisplay properties.
|
||
It is useful to maintain properties as GParamSpec so that to be able to raise
|
||
"notify" signals by id instead of by name in the future.
|
||
|
||
2012-08-27 19:00:37 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: fix gst_vaapi_display_has_property().
|
||
Append the "render-mode" and "rotation" properties, should they be supported
|
||
by the underlying VA driver.
|
||
|
||
2012-08-22 02:18:11 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
display: add support for rotation modes.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-08-27 18:11:37 +0300 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
display: add support for rendering modes.
|
||
A rendering mode can be "overlay" or "texture"'ed blit.
|
||
The former mode implies that a VA surface used for rendering can't be
|
||
re-used right away for decoding, so the sink shall make provisions to
|
||
retain the associated surface proxy until the next surface is to be
|
||
displayed.
|
||
The latter mode implies that the VA surface is implicitly copied to an
|
||
intermediate backing store, or back buffer of a frame buffer, so the
|
||
associated surface proxy can be disposed right away.
|
||
|
||
2012-08-27 17:02:49 +0300 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
display: add initial support for display attributes.
|
||
The VA display attributes are mapped to properties so that to maintain the
|
||
GStreamer terminology. Properties are to be identified by name, but internal
|
||
functions are available to lookup the property by the actual VA display
|
||
attribute type.
|
||
|
||
2012-08-24 11:36:16 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: fix end-of-image (EOI) handler.
|
||
decode_current_picture() was converted to return a gboolean instead
|
||
of a GstVaapiDecoderStatus, so we were not getting out of the decode
|
||
loop as expected, or could cause an error instead.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-08-24 18:41:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: include start code into VA slice data buffer.
|
||
Integrate the start code prefix in the slice data buffer that is submitted
|
||
to the hardware. VA-API specifies that slice_data_offset is the offset to
|
||
the first byte of slice data. And, for MPEG-2, slice() data begins with
|
||
the slice_start_code. Some VA driver implementations (EMGD) expect this.
|
||
|
||
2012-06-28 01:08:03 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* autogen.sh:
|
||
autogen: fix configure script generation when srcdir != builddir.
|
||
This patch allows for regenerating the configure script from a build
|
||
directory that is not the actual source directory.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-28 00:22:03 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
configure: use new libtool syntax.
|
||
This now requires libtool >= 2.2 to regenerate the configure script.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-08-08 12:50:41 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: use g_object_notify_by_pspec().
|
||
Use g_object_notify_by_pspec() instead of g_object_notify() so that to
|
||
avoid a property name lookup. i.e. this makes notifications faster to
|
||
the `vaapidecode' element.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-08-06 19:21:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: handle de-interlacing flags.
|
||
VA/Wayland API was updated to allow flags for bob deinterlacing.
|
||
More elaborated filters will require a complete VA/VPP pipeline.
|
||
|
||
2012-08-02 18:27:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
jpeg: fix default quantization tables.
|
||
Two elements in the luminance quantization table were wrong. So,
|
||
gst_jpeg_get_default_quantization_tables() now reconstructs tables
|
||
in zig-zag order from the standard ones (Tables K.1 and K.2).
|
||
|
||
2012-08-02 15:17:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
jpeg: compute default Huffman tables.
|
||
... instead of having them pre-calculated. This saves around 1.5 KB
|
||
of data in the DSO but requires gst_jpeg_get_default_huffman_tables()
|
||
to do more work. Though, the client application may have to call that
|
||
function at most once, only.
|
||
|
||
2012-08-01 18:30:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: drop VAProfileNone entries from debug messages.
|
||
|
||
2012-07-31 18:24:14 +0800 Yan Yin <yan.yin@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: query for supported display attributes.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-31 18:22:48 +0800 Yan Yin <yan.yin@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
utils: add string_of_VADisplayAttributeType() helper.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-08-01 15:46:35 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: handle VA/DRM API.
|
||
This is not useful in practice but for raw performance evaluation when
|
||
the sink is invoked with display=drm sync=false. fakesink could also be
|
||
used though.
|
||
|
||
2012-08-01 15:46:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: add support for headless pipelines.
|
||
|
||
2012-08-01 15:44:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/output.c:
|
||
* tests/test-display.c:
|
||
* tests/test-windows.c:
|
||
tests: add support for headless decoding.
|
||
|
||
2012-08-01 15:44:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/libgstvaapi-drm.install.in:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_drm_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_drm.h:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-drm.pc.in:
|
||
Add initial support for VA/DRM.
|
||
|
||
2012-07-31 17:58:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Fix build without X11 (again).
|
||
Don't try to build libgstvaapi-x11.so.* if X11 was disabled. Also shuffle
|
||
files list wrt. x11, glx and wayland backends.
|
||
|
||
2012-07-31 11:51:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: update to the latest VA-API changes (0.32.1+).
|
||
|
||
2012-07-27 14:27:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
wayland: implement display ::get_size*() hooks.
|
||
|
||
2012-07-27 10:45:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: prefer X11 rendering over GLX.
|
||
Prefer X11 display over GLX so that "vaapisink" uses X11, i.e. vaPutSurface(),
|
||
for rendering instead of texturing.
|
||
|
||
2012-07-26 09:28:51 -0400 Kristian Høgsberg <krh@bitplanet.net>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: use scale fullscreen method.
|
||
This makes the compositor scale the surface to fit and preserves aspect
|
||
ratio.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-26 09:27:47 -0400 Kristian Høgsberg <krh@bitplanet.net>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
wayland: respond to ping/pong protocol so we're not deemed unresponsive.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-25 10:39:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
wayland: fix double disconnect of display.
|
||
|
||
2012-07-24 19:58:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
wayland: mangle display name for cache lookups.
|
||
|
||
2012-07-24 15:43:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/libgstvaapi-wayland.install.in:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-wayland.pc.in:
|
||
wayland: add packaging files.
|
||
|
||
2012-07-24 15:07:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* pkgconfig/Makefile.am:
|
||
Fix build without X11.
|
||
|
||
2012-07-24 09:45:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: add support for Wayland.
|
||
|
||
2012-07-23 12:56:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/output.c:
|
||
* tests/test-display.c:
|
||
* tests/test-windows.c:
|
||
tests: add support for Wayland.
|
||
|
||
2012-07-19 10:27:23 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_wayland_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_wayland.h:
|
||
Add initial support for VA/Wayland.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-25 15:11:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
plugins: fix creation of video buffer from surface proxy.
|
||
Fix a regression introduced with commit 8ef490a.
|
||
|
||
2012-07-25 14:51:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
plugins: use new display types more.
|
||
In particular, simplify gst_vaapi_reply_to_query() with display types.
|
||
Likewise for creating new video buffers.
|
||
|
||
2012-07-25 10:02:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: fix display type selection and propagation.
|
||
If vaapisink is in the GStreamer pipeline, then we shall allocate a
|
||
unique GstVaapiDisplay and propagate it upstream. i.e. subsequent
|
||
queries from vaapidecode shall get a valid answer from vaapisink.
|
||
|
||
2012-07-25 11:37:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: fix destruction of mutex.
|
||
|
||
2012-07-25 09:16:02 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
display: add display types.
|
||
Move display types from gstvaapipluginutil.* to gstvaapidisplay.* so that
|
||
we could simplify characterization of a GstVaapiDisplay. Also rename "auto"
|
||
type to "any", and add a "display-type" attribute.
|
||
|
||
2012-07-24 19:43:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: use prefixed display names for cache lookups.
|
||
This improves display name comparisons by always allocating a valid display
|
||
name. This also helps to disambiguate lookups by name in the global display
|
||
cache, should a new backend be implemented.
|
||
|
||
2012-07-24 16:14:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
plugins: declare helper functions as internal.
|
||
|
||
2012-07-24 14:31:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.c:
|
||
* gst/vaapi/gstvaapipluginbuffer.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
videobuffer: drop deprecated functions.
|
||
Move video buffer creation routines to plugin elements. That exclusively
|
||
uses *_typed_new*() variants.
|
||
|
||
2012-07-24 14:09:09 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.h:
|
||
videobuffer: mark video buffer creation routines as deprecated.
|
||
The vdeo buffer creation routines shall actually be internal to gstreamer-vaapi
|
||
plugin elements. So deprecate any explicit creation routines that are not the
|
||
new *_typed_new*() variants.
|
||
|
||
2012-07-24 13:52:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_priv.h:
|
||
videobuffer: factor out base and GLX implementations.
|
||
Introduce new typed constructors internal to gstreamer-vaapi plugin elements.
|
||
This avoids duplication of code, and makes it possible to further implement
|
||
generic video buffer creation routines that automatically map to base or GLX
|
||
variants.
|
||
|
||
2012-07-24 10:58:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
utils: fix gl_create_context() with parent context set.
|
||
If GLX window was created from a foreign Display, then that same Display shall
|
||
be used for subsequent glXMakeCurrent(). This means that gl_create_context()
|
||
will now use the same Display that the parent, if available.
|
||
This fixes cluttersink with the Intel GenX VA driver.
|
||
|
||
2012-07-23 18:37:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
pluginutils: improve automatic display type selection.
|
||
|
||
2012-07-23 18:01:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
pluginutils: cosmetics (indentation fixes).
|
||
|
||
2012-07-23 17:54:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: simplify video outputs summary.
|
||
|
||
2012-07-23 17:49:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
configure: drop check for --enable-vaapisink-glx.
|
||
vaapisink is now built with support for multiple display types, whenever
|
||
they are enabled. The new "display" attribute is used to select a particular
|
||
renderer.
|
||
|
||
2012-07-23 16:15:38 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* tests/test-display.c:
|
||
configure: drop check for --enable-vaapi-glx.
|
||
This flag is obsolete. It was meant to explicitly enable/disable VA/GLX API
|
||
support, or fallback to TFP+FBO if this API is not found. Now, we check for
|
||
the VA/GLX API by default if --enable-glx is set. If this API is not found,
|
||
we now default to use TFP+FBO.
|
||
Note: TFP+FBO, i.e. using vaPutSurface() is now also a deprecated usage and
|
||
will be removed in the future. If GLX rendering is requested, then the VA/GLX
|
||
API shall be used as it covers most usages. e.g. AMD driver can't render to
|
||
an X pixmap yet.
|
||
|
||
2012-07-23 15:20:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/output.c:
|
||
tests: allow GLX output, if available and selected.
|
||
|
||
2012-07-23 15:17:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/output.c:
|
||
* tests/output.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
* tests/test-surfaces.c:
|
||
tests: use common display and window creation routines.
|
||
Add new --output option to select the renderer. Use --list-outputs to
|
||
print a list of supported renderers.
|
||
|
||
2012-07-23 14:15:42 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
tests: move encoded bitstreams to libutils.la.
|
||
|
||
2012-07-23 14:11:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
tests: build convenience library for common utilities.
|
||
|
||
2012-07-20 16:37:01 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-display.c:
|
||
tests: simplify build with various display options.
|
||
|
||
2012-07-23 13:28:42 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: improve checks for X11.
|
||
|
||
2012-07-20 15:57:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
configure: fix previous commit for GLX deps.
|
||
|
||
2012-07-20 14:44:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
configure: improve checks for GLX.
|
||
|
||
2012-07-20 11:45:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
Drop support for obsolete VA-API versions < 0.30.4.
|
||
|
||
2012-07-20 11:16:27 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/gstutils_version.h.in:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: drop checks for new APIs used by default.
|
||
GStreamer -base plugins >= 0.10.31 are now required, so the checks for
|
||
new APIs like GstXOverlay::set_window_handle() and ::set_render_rectangle()
|
||
are no longer necessary.
|
||
|
||
2012-07-20 14:05:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: cosmetics and some minor changes.
|
||
- Better grouping of feature checks
|
||
- Sort list of config files to generate
|
||
|
||
2012-07-19 17:55:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
Use standard G_GNUC_INTERNAL keyword instead of attribute_hidden.
|
||
|
||
2012-07-19 17:41:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_tsb.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_tsb.h:
|
||
Drop obsolete GstVaapiTSB.
|
||
It has been replaced with a GstAdapter and gst_adapter_prev_pts().
|
||
|
||
2012-07-19 17:27:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
docs: add missing entries for the JPEG decoder.
|
||
|
||
2012-07-19 17:16:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
Drop all references to USE_CODEC_PARSERS.
|
||
|
||
2012-07-19 17:00:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.core.types:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-subpicture.c:
|
||
Drop FFmpeg-based decoders.
|
||
GStreamer codecparsers-based decoders are the only supported decoders now.
|
||
Though, FFmpeg decoders are still available in gstreamer-vaapi 0.3.x series.
|
||
|
||
2012-07-01 05:55:05 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/control.in:
|
||
configure: bump glib required version to 2.28.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-29 08:45:47 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
plugins: declare _get_type() functions as const.
|
||
Declaring a function as const enables better optimization of calls to
|
||
the function.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-01 05:50:17 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: use g_clear_object() wherever applicable.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-29 15:19:51 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
libs: declare _get_type() functions as const.
|
||
Declaring a function as const enables better optimization of calls
|
||
to the function.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-01 05:34:15 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
libs: use g_clear_object() wherever applicable.
|
||
This is a preferred thread-safe version. Also add an inline version of
|
||
g_clear_object() if compiling with glib < 2.28.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-01 06:02:22 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* .gitignore:
|
||
* configure.ac:
|
||
* docs/reference/libs/Makefile.am:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapimarshal.list:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
libs: use generic g_cclosure_marshal_VOID__VOID().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-19 14:29:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
glibcompat: drop explicit check for g_list_free_full().
|
||
|
||
2012-07-19 13:58:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-07-19 13:57:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
jpeg: fix make dist.
|
||
|
||
2012-06-28 00:39:10 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
* docs/Makefile.am:
|
||
configure: fix build without gtk-doc support.
|
||
Also do not generate tamplate files as all the documentation is inline.
|
||
Drop un-needed code in autogen.sh as well.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-28 00:27:31 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* Makefile.am:
|
||
* autogen.sh:
|
||
* configure.ac:
|
||
configure: put m4 macros and autogenerated files into m4/ directory.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-28 00:20:12 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
configure: drop deprecated autoconf macros.
|
||
Bump autoconf required version to 2.58, needed for AS_HELP_STRING macro.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-28 00:04:19 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
configure: don't use AC_SUBST for some variables.
|
||
PKG_CHECK_MODULES already does this for us.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-19 11:43:03 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: add support for GstImplementsInterface.
|
||
|
||
2012-07-01 02:58:36 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: use G_DEFINE_TYPE_* instead of deprecated GST_BOILERPLATE_*.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-01 03:57:13 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
plugins: do not use deprecated GStreamer -base symbols.
|
||
Bump GStreamer plugins -base required version to 0.10.31, needed for
|
||
gst_x_overlay_got_window_handle().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-01 03:57:13 +0900 Javier Jardón <jjardon@gnome.org>
|
||
|
||
* configure.ac:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: do not use deprecated core GStreamer symbols.
|
||
Bump GStreamer required version to 0.10.14, needed for
|
||
gst_element_class_set_details_simple().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-07-19 10:54:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-decode.c:
|
||
tests: fix build without JPEG decoder support.
|
||
|
||
2012-07-17 13:44:45 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-decode.c:
|
||
* tests/test-jpeg.c:
|
||
* tests/test-jpeg.h:
|
||
tests: add test for JPEG decoding.
|
||
|
||
2012-07-17 13:43:32 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: update to match latest parser API.
|
||
|
||
2012-07-16 17:35:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
codecparsers: jpeg: tweak parser API.
|
||
... to allow for more consistent parsing API among various codec parsers.
|
||
In particular, drop use of GList.
|
||
|
||
2012-07-16 16:24:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
jpeg: fix configure check for VA/JPEG decoding API.
|
||
|
||
2012-06-26 15:18:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
jpeg: fix build with VA-API < 0.32.0.
|
||
|
||
2012-06-26 15:04:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-06-26 15:02:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-06-26 14:46:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.3.7.
|
||
|
||
2012-06-26 13:34:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-06-25 16:07:55 +0800 Yan Yin <yan.yin@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
vaapiplugin: fix build when compiling without GLX.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-26 11:03:25 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: disable FFmpeg-based decoders.
|
||
FFmpeg decoders are still available through the --enable-ffmpeg option
|
||
but are no longer maintained.
|
||
|
||
2012-06-25 17:25:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Fix build with recent GStreamer stack.
|
||
|
||
2012-06-25 17:10:49 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: update to current VA/JPEG decoding API.
|
||
|
||
2012-06-21 16:06:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
codecparsers: jpeg: track valid quantization and Huffman tables.
|
||
Add valid flag to GstJpegQuantTable and GstJpegHuffmanTable so that
|
||
to determine whether a table actually changed since the last user
|
||
synchronization point. That way, this makes it possible for some
|
||
hardware accelerated decoding solution to upload only those tables
|
||
that changed.
|
||
|
||
2012-06-05 10:10:22 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
codecparsers: jpeg: use U_READ_UINT*() wherever possible.
|
||
Use GstByteReader *_unchecked() variants as much as possible.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-04 16:20:13 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: add new GstJpegHuffmanTables structure.
|
||
Add new GstJpegHuffmanTables helper structure to hold all possible
|
||
AC/DC Huffman tables available to all components.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-06-04 15:52:19 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: make gst_jpeg_parse() support multiple scans.
|
||
gst_jpeg_parse() now gathers all scans available in the supplied
|
||
buffer. A scan comprises of the scan header and any entropy-coded
|
||
segments or restart marker following it. The size and offset to
|
||
the associated data (ECS + RST segments) are append to a new
|
||
GstJpegScanOffsetSize structure.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-19 23:50:14 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
jpeg: update to match latest parser API.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-13 01:58:39 -0400 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
jpeg: simplify and optimize parser API.
|
||
|
||
2012-04-18 22:30:45 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg: fix picture used to determine backward_reference_vop_coding_type.
|
||
Complete fix brought by bf9f77b1afb0829b97e2d502057aec973c5fd7f5
|
||
but Gwenole did not apply all the bits.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-27 04:13:00 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: map Simple_Scalable profile to Advanced_Simple profile.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-27 04:10:17 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: handle skipped frames (vop_hdr->coded = 0).
|
||
Gracefully skip non VOP coded frames.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-26 04:00:41 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: fix timestamp issues on too fast playback.
|
||
Improve generation of presentation timestamps to be less sensitive
|
||
to input stream errors. In practise, GOP is also a synchronization
|
||
point for PTS calculation.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-16 10:02:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
Fix build without JPEG decoder.
|
||
|
||
2012-04-12 11:48:24 +0200 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: fix VOP coding type of backward reference pictures.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-11 23:02:45 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: fix handling of temporal reference distances.
|
||
TRD and TRB fields are not large enough to hold the difference of PTS
|
||
expressed with nanosecond resolution. So, compute them from the original
|
||
VOP info.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-12 11:00:22 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
dpb: mpeg2: cosmetics.
|
||
Define MAX_MPEG2_REFERENCES to 2 and avoid magic numbers all around.
|
||
|
||
2012-02-10 00:21:04 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_jpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
Add initial JPEG decoder.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-10 00:21:04 +0800 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/codecparsers/Makefile.am:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.c:
|
||
* gst-libs/gst/codecparsers/gstjpegparser.h:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
codecparsers: add JPEG parser.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-10 13:29:10 +0200 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix VA display type.
|
||
Fix typo whereby plain VADisplay type was used instead of the GstVaapiDisplay
|
||
wrapper.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-10 14:28:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix includes when compiling for a single API.
|
||
|
||
2012-04-02 18:42:12 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix calculation of macroblock_offset.
|
||
Fix decoding of streams with extra slice() information before the first
|
||
macroblock(). e.g. this fixes sony-ct3.bs from conformance test.
|
||
|
||
2012-04-02 18:09:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix interpolation of GOP TSN from new PTS.
|
||
New GOP TSN base could be mis-calculated. In particular, this fixes
|
||
decoding of uruseiyatsura.vob from <http://samples.mplayerhq.hu/>.
|
||
|
||
2012-04-02 16:07:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
mpeg2: fix decoding of high profile streams.
|
||
Allow MPEG-2 High profile streams only if the HW supports that profile
|
||
or no High profile specific bits are used, and thus Main profile could
|
||
be used instead. i.e. chroma_format is 4:2:0, intra_dc_precision is not
|
||
set to 11 and no sequence_scalable_extension() was parsed.
|
||
|
||
2012-04-02 14:51:06 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: report unsupported codec profiles.
|
||
Try to gracefully abort when the HW does not support the requested
|
||
profile. There is no fallback unless profiles are correctly parsed
|
||
and matched through caps beforehand.
|
||
|
||
2012-02-07 15:23:22 +0100 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* NEWS:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: don't resize a 'foreign' X-window.
|
||
Don't forcibly resize foreign X windows. The user is responsible for
|
||
their size and vaapisink shall not change this.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-07 15:21:05 +0100 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* NEWS:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
vaapisink: recalculate render rect only if caps are negotiated.
|
||
Fix gst_vaapisink_xoverlay_set_window_handle() when it is called before
|
||
caps got negotiated. Besides, when a foreign window is provided by the
|
||
user, so should the render rect.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-04-02 13:07:34 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-04-02 10:07:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
0.3.6.
|
||
|
||
2012-04-02 12:52:54 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
Fix a few documentation issues.
|
||
|
||
2012-04-02 10:05:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* README:
|
||
Update introduction and changelog.
|
||
|
||
2012-04-02 11:29:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: allocate dummy picture for first field based I-frame.
|
||
In P-pictures, prediction shall be made from the two most recently
|
||
decoded reference fields. However, when the first I-frame is a field,
|
||
the next field of the current picture could be a P-picture but only a
|
||
single field was decoded so far. In this case, create a dummy picture
|
||
with POC = -1 that will be used as reference.
|
||
Some VA drivers would error out if P-pictures don't have a forward
|
||
reference picture. This is true in general but not in this very specific
|
||
initial case.
|
||
|
||
2012-04-02 10:43:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix simple to main profile fallback.
|
||
Allow fallback from simple to main profile when the HW decoder does
|
||
not support the former profile and that no sequence_header_extension()
|
||
is available to point out this.
|
||
|
||
2012-03-30 03:04:40 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: improve error checking while decoding packets.
|
||
decode_picture() could return an error when an MPEG-4 profile is not
|
||
supported for example. In this case, the underlying VA context is not
|
||
allocated and no other proper action can be taken. Likewise on exit
|
||
from decode_slice().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-03-30 17:03:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: use POC to maintain the DPB.
|
||
Introduce a POC field in GstVaapiPicture so that to store simpler sequential
|
||
numbers. A signed 32-bit integer should be enough for 1 year of continuous
|
||
video streaming at 60 Hz.
|
||
Use this new POC value to maintain the DPB, instead of 64-bit timestamps.
|
||
This also aligns with H.264 that will be migrated to GstVaapiDpb infrastructure.
|
||
|
||
2012-03-30 16:23:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: rework generation of presentation timestamps.
|
||
Always prefer PTS from the demuxer layer for GOP times. If this is invalid,
|
||
i.e. demuxer could not determine the PTS or the generated PTS is lower than
|
||
max PTS from past pictures, then try to fix it up based on the duration of
|
||
a frame.
|
||
For picture PTS, simply use the GOP PTS formerly computed then use TSN to
|
||
reconstruct a current time. Also now handle wrapped TSN correctly.
|
||
|
||
2012-03-30 17:07:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: ignore empty user-data packets.
|
||
Fix tcela-8.bits conformance test.
|
||
|
||
2012-03-29 11:13:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: review and report errors accordingly.
|
||
Use GST_ERROR() to report real errors instead of hiding them into
|
||
GST_DEBUG().
|
||
|
||
2012-03-28 19:15:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix invalid interlaced frame in progressive sequence.
|
||
Some streams, badly constructed, could have signaled an interlaced
|
||
frame while the sequence was meant to be progressive. Warn and force
|
||
frame to be progressive in this case.
|
||
|
||
2012-03-28 16:08:29 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
mpeg2: add support for interlaced streams.
|
||
Pictures are submitted to the HW for rendering only when both fields
|
||
are decoded or current picture is a full frame.
|
||
|
||
2012-03-28 14:36:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_dpb.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: add new decoded picture buffer infrastructure.
|
||
Decoded pictures are now maintained into DPB, similarly to H.264.
|
||
The same mechanism could be re-used for VC-1 and MPEG-4:2 codecs.
|
||
|
||
2012-03-28 17:50:28 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: add first-field flag to picture.
|
||
Add first-field (FF) flag to GstVaapiPicture, thus not requiring is_first_field
|
||
member in each decoder. Rather, when a GstVaapiPicture is created, it is considered
|
||
as the first field. Any subsequent allocated field will become the second field.
|
||
|
||
2012-03-28 16:05:58 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: allow pictures to be cloned for field decoding.
|
||
Add gst_vaapi_picture_new_field() function that clones a picture, while
|
||
preserving the parent picture surface. i.e. the surface proxy reference
|
||
count is increased and other fields copied as is. Besides, the picture
|
||
is reset into a "non-output" mode.
|
||
|
||
2012-03-28 16:07:44 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: rework picture field flags.
|
||
Add top-field-first (TFF) and interlaced flags to GstVaapiPicture so they
|
||
could be propagated to the surface proxy when it is pushed for rendering.
|
||
Besides, top and bottom fields are now expressed with picture structure flags
|
||
from GstVaapiSurfaceRenderFlags.
|
||
|
||
2012-03-28 14:28:26 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: add OUTPUT flag to pictures.
|
||
Allow pictures to be marked as output gst_vaapi_picture_output().
|
||
|
||
2012-03-28 14:24:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: fix semantics of SKIPPED pictures.
|
||
If GstVaapiPicture has flag SKIPPED set, this means gst_vaapi_picture_output()
|
||
will not push the underlying surface for rendering. Besides, VC-1 skipped P-frame
|
||
has nothing to do with rendering. This only means that the currently decoded
|
||
picture is just a copy of its reference picture.
|
||
|
||
2012-03-28 15:16:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
vaapipostproc: get "interlaced" attribute from surface proxy.
|
||
Add new "interlaced" attribute to GstVaapiSurfaceProxy. Use this in
|
||
vaapipostproc so that to handles cases where bitstream is interlaced
|
||
but almost only frame pictures are generated. In this case, we should
|
||
not be alternating between top/bottom fields.
|
||
|
||
2012-03-26 14:37:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
* debian.upstream/control.in:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapipostproc.c:
|
||
* gst/vaapi/gstvaapipostproc.h:
|
||
vaapipostproc: add new element for video postprocessing.
|
||
Add vaapipostproc element for video postprocessing. So far, only basic
|
||
bob deinterlacing is implemented. Interlaced mode is automatically
|
||
detected based on sink caps ("interlaced" field).
|
||
|
||
2012-03-26 12:01:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
videobuffer: add surface render flags.
|
||
Allow rendering flags, as a combination of GstVaapiSurfaceRenderFlags,
|
||
to be set to the video buffer. In particular, this is mostly useful for
|
||
basic deinterlacing.
|
||
|
||
2012-03-23 17:13:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
compat: add compatibility glue with VA-API 0.34+ (WIP).
|
||
|
||
2012-03-23 17:11:18 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: skip all Filler Data NALs.
|
||
|
||
2012-03-22 03:28:22 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
mpeg4: check for decoder status prior to decoding packet.
|
||
Make sure there is a VA surface free prior to decoding the current frame.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-03-15 04:58:04 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
decode: delay NEWSEGMENT event if vaapidecode element was not linked.
|
||
Rationale: playbin2 links all elements at run-time. Once vaapidecode
|
||
is created and a NEWSEGMENT event arrives, downstream element may not
|
||
be ready yet. So, delay this event until next element is chained in,
|
||
otherwise basesink could output "Received buffer without a new-segment.
|
||
Assuming timestamps start from 0".
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-03-13 20:33:41 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix GOP timestamps when incorrect data is received.
|
||
Some streams have incorrect GOP timestamps, or nothing set at all.
|
||
i.e. GOP time is 00:00:00 for all GOPs. Try to recover in this case
|
||
from demuxer timestamps, which are monotonic.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-03-13 02:03:31 -0400 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: don't decode anything before the first sequence_header().
|
||
Skip all pictures prior to the first sequence_header(). Besides,
|
||
skip all picture_data() if there was no prior picture_header().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-07 15:57:14 +0100 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
ffmpeg: add support for interlaced streams.
|
||
Evaluate interlaced stream properties.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-07 15:54:15 +0100 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: propagate interlaced and TFF properties downstream.
|
||
Propagate "interlaced" caps downstream and set "tff" buffer flag
|
||
appropriately to output buffers for interlaced pictures.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-07 15:54:15 +0100 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: maintain caps for interlaced streams.
|
||
Extend GstVaapiDecoder base object to maintain caps with "interlaced"
|
||
property.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-07 15:54:15 +0100 Holger Kaelberer <holger.k@elberer.de>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
surfaceproxy: add TFF property.
|
||
Add TFF (top-field-first) property to GstVaapiSurfaceProxy.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-03-16 14:21:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* AUTHORS:
|
||
AUTHORS: update to match current authors.
|
||
|
||
2012-02-28 11:58:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix is_first_field calculation.
|
||
Reset is_first_field for frame pictures. Factor out locations where
|
||
the flag is updated.
|
||
|
||
2012-02-24 12:56:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: catch incorrect picture_structure from bitstreams.
|
||
Assume "frame" picture structure if the syntax element was zero or if
|
||
progressive_frame is set.
|
||
|
||
2012-02-24 12:53:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix slice_vertical_position calculation (again).
|
||
VA-API expects slice_vertical_position as the initial position from the
|
||
bitstream. i.e. the direct slice() information. VA drivers will be fixed
|
||
accordingly.
|
||
|
||
2012-03-02 15:03:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
Revert "vaapidecode: fix another pad template ref leak" (Holger Kaelberer)
|
||
This reverts commit 2f127d6af473afd647a2c88f75faafd1cd718437.
|
||
For gst_element_class_get_pad_template(), no unreferencing is necessary
|
||
according to the GStreamer documentation.
|
||
|
||
2012-03-02 13:41:16 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix slice_data_bit_offset calculation.
|
||
Unlike what VA-API documentation defines, the slice_data_bit_offset
|
||
represents the offset to the first macroblock in the slice data, minus
|
||
any emulation prevention bytes in the slice_header().
|
||
This fix copes with binary-only VA drivers that won't be fixed any
|
||
time soon. Besides, this aligns with the current FFmpeg behaviour
|
||
that was based on those proprietary drivers implementing the API
|
||
incorrectly.
|
||
|
||
2012-02-21 02:11:20 -0500 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: skip all Access Unit (AU) NALs.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-29 03:08:46 -0500 Wind Yuan <feng.yuan@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix modification process of reference picture lists.
|
||
Construction of RefPicList0/1 could be off by one element.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-12 11:21:52 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix size calculation from sequence_extension().
|
||
Original values from sequence_header() are 12-bit and the remaining
|
||
2 most significant bits are coming from sequence_extension().
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-23 16:39:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix slice_vertical_position calculation.
|
||
Make sure to adjust slice_vertical_position if picture structure
|
||
is a top or bottom field.
|
||
|
||
2012-02-23 16:23:27 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: add picture structure flags.
|
||
|
||
2012-02-23 14:42:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix decoding at end-of-sequence.
|
||
|
||
2012-02-23 14:17:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix slice_horizontal_position calculation.
|
||
|
||
2012-02-23 16:14:02 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: drop useless mb_y and mb_height members.
|
||
|
||
2012-02-23 11:19:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix decoding of multiple slices with same slice_vertical_position.
|
||
6.3.15 says that "some slices may have the same slice_vertical_position,
|
||
since slices may start and finish anywhere". So, we can't submit the current
|
||
picture to the HW right away since subsequent slices would be missing.
|
||
|
||
2012-02-15 14:08:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: fix source stride in picture copy.
|
||
|
||
2012-02-13 10:10:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: fix double buffer free with some VA drivers.
|
||
vaRenderPicture() implicitly disposes VA buffers. Some VA drivers would
|
||
push the VA buffer object into a list of free buffers to be re-used. However,
|
||
reference pictures (and data) that was kept would explicitly release the VA
|
||
buffer object later on, thus possibly destroying a valid (re-used) object.
|
||
Besides, some other VA drivers don't support correctly the vaRenderPicture()
|
||
semantics for VA buffers disposal and would leak memory if there is no explicit
|
||
vaDestroyBuffer(). The temporary workaround is to explcitily destroy VA buffers
|
||
right after vaRenderPicture(). All VA drivers need to be aligned.
|
||
|
||
2012-02-08 18:08:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: complete any current picture decoder before SPS / PPS change.
|
||
This ensures the VA context is clear when the encoded resolution
|
||
changes. i.e. make sure older picture is decoded with the older
|
||
VA context before it changes.
|
||
|
||
2012-02-08 18:07:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: create VA context earlier when SPS is parsed.
|
||
|
||
2012-02-08 17:57:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: don't allocate too big data structures on stack.
|
||
|
||
2012-02-07 11:07:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
glib: map deprecated API to glib >= 2.32 equivalents.
|
||
GStaticMutex and GStaticRecMutex are now replaced with GMutex and
|
||
GRecMutex, which no longer require any prior call to g_thread_init().
|
||
|
||
2012-02-07 10:01:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
glib: fix includes.
|
||
|
||
2012-02-07 10:05:53 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
cosmetics: fix warnings (drop unused variables).
|
||
|
||
2012-02-06 16:11:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix another pad template ref leak.
|
||
|
||
2012-02-06 15:54:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
mpeg2: fix crash when there is no free surface to decode into.
|
||
|
||
2012-01-31 16:38:58 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: skip profiles which have no entrypoints.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-02-05 18:28:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapiupload: use g_object_unref() for GstVaapiImage.
|
||
|
||
2012-02-05 18:24:08 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
plugins: fix pad template ref leaks.
|
||
|
||
2012-02-02 09:23:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-02-01 23:34:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.3.4.
|
||
|
||
2012-02-01 23:32:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: updates.
|
||
Mention codecparsers-based decoders, FFmpeg is now optional. Update
|
||
list of support HW.
|
||
|
||
2012-02-01 23:28:23 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-01-31 11:34:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: allocate proxy surface earlier.
|
||
This simplifies gst_vaapi_picture_output() to only update the presentation
|
||
timestamp and submit the proxy to the decoder for output.
|
||
|
||
2012-01-31 11:26:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
decoder: fix memory leak of VA objects on exit.
|
||
On sequence end, if the last decoded picture is not output for rendering,
|
||
then the proxy surface is not created. In this case, the original surface
|
||
must be released explicitly to the context.
|
||
|
||
2012-01-31 10:47:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: use GstAdapter to track input sequence.
|
||
This fixes possible memory leaks and improves performance by removing
|
||
some extra copies.
|
||
|
||
2012-01-30 18:25:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/glibcompat.h:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
Add glib compatibility glue for older versions.
|
||
|
||
2012-01-30 18:12:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/sysdeps.h:
|
||
Add header for system-dependent definitions.
|
||
|
||
2012-01-30 10:15:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
decoder: optimize slice data buffers initialization.
|
||
VA drivers may have a faster means to transfer user buffers to GPU
|
||
buffers than using memcpy(). In particular, on Intel Gen graphics, we
|
||
can use pwrite(). This provides for faster upload of bitstream and can
|
||
help higher bitrates.
|
||
vaapi_create_buffer() helper function was also updated to allow for
|
||
un-mapped buffers and pre-initialized data for buffers.
|
||
|
||
2012-01-27 17:28:50 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: simplify RefPicList reconstruction.
|
||
|
||
2012-01-27 16:08:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: flush DPB when the end of the sequence is reached.
|
||
|
||
2012-01-24 15:38:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: handle Decoded Picture Buffer (DPB).
|
||
|
||
2012-01-24 09:20:25 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix pred_weight_table() reconstruction.
|
||
Only the explicit pred_weight_table(), possibly with the inferred default
|
||
values, shall be required. e.g. don't fill in the table if weighted_pred_flag
|
||
is not set for P/SP slices.
|
||
|
||
2012-01-23 15:03:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: execute reference picture marking process (MMCO).
|
||
|
||
2012-01-23 15:20:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: fix presentation timestamps.
|
||
|
||
2012-01-18 13:38:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: execute reference picture marking process (sliding window).
|
||
|
||
2012-01-17 10:42:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: handle avcC format for decoding buffers.
|
||
|
||
2011-11-25 14:37:00 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
h264: handle codec-data.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-08-12 17:43:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_h264.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/test-decode.c:
|
||
Add initial H.264 decoder.
|
||
|
||
2012-01-26 15:28:42 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
decoder: retain proxy surface until the GstVaapiPicture is destroyed.
|
||
Keep a valid reference to the proxy in GstVaapiPicture so that frames
|
||
marked as "used for reference" could be kept during the lifetime of the
|
||
picture. i.e. don't release them too soon as they could be re-used right
|
||
away.
|
||
|
||
2012-01-26 15:19:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: properly reference count pictures.
|
||
This fixes cases where a GstVaapiPicture would be destroyed whereas
|
||
there is still a valid instance of it in either prev, current or
|
||
next picture.
|
||
|
||
2012-01-26 14:54:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: simplify output of decoded frames.
|
||
Drop obsolete gst_vaapi_decoder_push_surface() that was no longer used.
|
||
Change gst_vaapi_decoder_push_surface_proxy() semantics to assume PTS
|
||
is already set correctly and reference count increased, if necessary.
|
||
|
||
2012-01-26 09:48:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapicodec_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_objects.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
decoder: rework the internal VA objects API.
|
||
The new API simplifies a lot reference counting and makes it more
|
||
flexible for future additions/changes. The GstVaapiCodecInfo is
|
||
also gone. Rather, new helper macros are provided to allocate
|
||
picture, slice and quantization matrix parameter buffers.
|
||
|
||
2012-01-24 10:21:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: allow slices to be attached to pictures later.
|
||
|
||
2011-11-21 18:39:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: add ref_count to GstVaapiPicture.
|
||
|
||
2012-01-23 11:48:42 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: cap window size to the maximum display size.
|
||
|
||
2012-01-18 10:23:41 +0100 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiworkarounds.h:
|
||
profile: match video/x-h263 as H.263 Baseline profile.
|
||
HACK: qtdemux does not report profiles for H.263. So, assume plain
|
||
"video/x-h263" is H.263 Baseline profile.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-01-18 10:22:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiworkarounds.h:
|
||
display: report H.263 Baseline profile.
|
||
HACK: expose GST_VAAPI_PROFILE_H263_BASELINE for decoding if MPEG-4:2 Simple
|
||
profile (VAProfileMPEG4Simple) is supported.
|
||
|
||
2012-01-24 10:06:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiworkarounds.h:
|
||
Add template for workarounds.
|
||
|
||
2012-01-18 10:47:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-decode.c:
|
||
tests: error out if FFmpeg|codecparsers are not supported.
|
||
|
||
2012-01-18 10:42:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
surface: don't expose gst_vaapi_surface_get_parent_context().
|
||
gst_vaapi_surface_get_parent_context() was not meant to be exposed globally.
|
||
It's just an internal helper function. However, it's still possible to get
|
||
the parent context through the "parent-context" property.
|
||
|
||
2012-01-16 14:19:00 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-subpicture.c:
|
||
tests: fix build without FFmpeg.
|
||
|
||
2012-01-16 14:09:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-01-16 11:05:31 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.3.3.
|
||
|
||
2012-01-16 11:03:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
* debian.upstream/copyright:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
* tests/test-decode.c:
|
||
legal: fix year for some copyright notices.
|
||
|
||
2012-01-16 10:42:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
* tests/test-decode.c:
|
||
legal: add Intel copyright on modified files.
|
||
|
||
2012-01-16 10:41:10 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapi_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-decode.h:
|
||
* tests/test-display.c:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
* tests/test-windows.c:
|
||
legal: fix copyright notices to include "Copyright" term.
|
||
|
||
2011-12-09 16:44:03 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
mpeg4: replace GstVaapiTSB with GstAdapter (gst-plugins-base >= 0.10.24).
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-09 16:28:11 +0800 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg4.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
Add initial MPEG-4 decoder.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-18 15:41:40 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
vc1: replace GstVaapiTSB with GstAdapter (gst-plugins-base >= 0.10.24).
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-10-07 11:50:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix codec-data decoding for WMV3 format.
|
||
|
||
2011-10-07 11:12:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix presentation timestamps.
|
||
|
||
2011-10-06 15:59:22 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix MV mode packing.
|
||
|
||
2011-10-05 16:41:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: handle codec-data.
|
||
|
||
2011-10-05 15:56:36 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: handle encapsulated bitstreams.
|
||
|
||
2011-10-04 17:51:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix bitplanes decoding.
|
||
|
||
2011-10-04 14:15:55 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix BFRACTION reconstruction.
|
||
|
||
2011-09-30 17:16:23 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
vc1: fix framerate calculation.
|
||
|
||
2011-09-30 13:40:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_vc1.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/test-decode.c:
|
||
Add initial VC-1 decoder.
|
||
|
||
2012-01-09 17:37:34 +0100 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix first field detection.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-01-06 16:44:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix quantisation matrix construction.
|
||
|
||
2011-11-18 15:06:07 +0200 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
mpeg2: replace GstVaapiTSB API with GstAdapter (gst-plugins-base >= 0.10.24).
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-09-14 18:11:57 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: fix packets spanning over two buffers.
|
||
|
||
2011-09-12 18:20:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: ignore system start codes (PES headers).
|
||
|
||
2011-09-12 18:02:53 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
mpeg2: handle closed_gop.
|
||
|
||
2011-08-05 11:55:11 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/test-decode.c:
|
||
Add initial MPEG-2 decoder.
|
||
|
||
2011-08-12 10:21:19 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* tests/test-decode.c:
|
||
Allow conditional build of GStreamer/FFmpeg bitstream parsers.
|
||
|
||
2011-08-05 11:53:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Add VA decoder helpers.
|
||
|
||
2011-08-05 11:52:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
decoder: add new error codes.
|
||
GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_PROFILE: for unsupported profile
|
||
GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_CHROMA_FORMAT: for unsupported chroma format
|
||
|
||
2011-09-12 13:00:59 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_tsb.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_tsb.h:
|
||
Add timestamp buffer store helper utils.
|
||
|
||
2011-08-04 17:29:41 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
Add VA buffer helpers.
|
||
|
||
2012-01-13 15:03:38 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
utils: slight improvements to gl_bind_texture().
|
||
|
||
2012-01-13 14:13:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
utils: pretty-print output of gl_get_error_string().
|
||
|
||
2012-01-13 14:03:29 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
utils: rewrite gl_perspective() as per OpenGL FAQ 9.085.
|
||
|
||
2012-01-13 12:09:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
utils: simplify string of VAProfile/VAEntrypoint.
|
||
|
||
2012-01-13 11:46:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
utils: drop string_of_FOURCC() in favor of standard GST_FOURCC_* helpers.
|
||
|
||
2012-01-12 17:18:47 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-01-12 15:34:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-decode.c:
|
||
tests: check for shared VA displays (display cache).
|
||
|
||
2012-01-12 15:30:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: always free VA display cache if it is empty.
|
||
|
||
2012-01-12 15:03:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
display: use VA display cache for X11 and GLX winsys.
|
||
|
||
2012-01-12 12:46:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplaycache.h:
|
||
display: implement a VA display cache.
|
||
|
||
2012-01-11 14:13:06 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
vaapiplugin: fix gst_vaapi_ensure_display() to use system defaults.
|
||
This ensures the display name provided to gst_vaapi_display_*_new()
|
||
maps to the system defaults, instead of forcing "" that could be different
|
||
from the current DISPLAY name.
|
||
|
||
2011-08-26 15:44:25 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapiupload: only set caps on newly created buffers.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-01-11 14:11:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: ensure VA display in GstBaseSink::start() hook.
|
||
This ensures a VA display is ready by the time upstream elements request
|
||
for it.
|
||
|
||
2011-08-26 15:44:46 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: don't leak GL texture.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-01-09 16:51:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: fix calculation of render region.
|
||
|
||
2012-01-09 11:23:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: automatically fit video to window.
|
||
|
||
2012-01-09 10:37:30 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: implement GstXOverlay::set_render_rectangle().
|
||
|
||
2012-01-09 11:04:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
window: always check geometry when the window is mapped.
|
||
|
||
2012-01-06 17:51:59 +0100 Zhao Halley <halley.zhao@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
Add missing profiles from VA-API 0.32.0.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2012-01-06 16:48:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitignore:
|
||
.gitignore: add test-subpicture.
|
||
|
||
2012-01-06 11:23:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-01-06 11:20:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.3.2.
|
||
|
||
2012-01-06 11:18:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/Makefile.am:
|
||
tests: fix make dist (ship with test-subpicture-data.h).
|
||
|
||
2012-01-05 17:35:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2012-01-05 17:09:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: fix possible leak of VA surfaces.
|
||
Under some circumstances, we could have leaked a surface, thus not
|
||
releasing it to the pool of available surfaces in the VA context.
|
||
The strategy is now to use a proxy earlier and automatically ref/unref
|
||
whenever necessary. In particular, during the lifetime needed for FFmpeg.
|
||
|
||
2012-01-05 16:59:57 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
surfaceproxy: add helper to retrieve the VA surface ID.
|
||
|
||
2012-01-05 16:44:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
surfaceproxy: simplify destruction.
|
||
Also make sure to always make sure to release the surface back to the
|
||
pool of surfaces in the associated VA context, if any.
|
||
|
||
2012-01-05 16:26:49 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapidecode: fix deinitialization order.
|
||
|
||
2012-01-05 14:50:26 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
context: avoid self reference loops with surfaces.
|
||
|
||
2012-01-05 11:23:01 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* debian.upstream/control.in:
|
||
debian: update control.in description for new plugins.
|
||
|
||
2012-01-05 11:01:56 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapiupload: use new gst_vaapi_append_surface_caps() helper.
|
||
This also fixes extra structures, beyond the one at index 0, to hold
|
||
the right additional values.
|
||
|
||
2012-01-05 10:55:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapiupload: fix sink (YUV) caps to not report type and opengl fields.
|
||
|
||
2012-01-05 10:50:59 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapidownload.c:
|
||
* gst/vaapi/gstvaapidownload.h:
|
||
vaapidownload: add new plugin to download pixels from VA surfaces.
|
||
|
||
2012-01-05 11:00:39 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
vaapipluingutils: add helper to append surface caps to YUV caps.
|
||
|
||
2012-01-05 10:29:48 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
image: add helpers to extract pixels to user buffers.
|
||
|
||
2012-01-04 11:34:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: simplify initialization of raw images from video buffers.
|
||
|
||
2012-01-04 11:29:11 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
image: fix update from NV12 buffers.
|
||
|
||
2012-01-03 18:16:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
vaapiupload: fix memory leak in _init() function.
|
||
|
||
2012-01-03 14:34:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* README:
|
||
* debian.upstream/control.in:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapiconvert.h:
|
||
* gst/vaapi/gstvaapiupload.c:
|
||
* gst/vaapi/gstvaapiupload.h:
|
||
Rename vaapiconvert element to vaapiupload.
|
||
|
||
2012-01-03 13:54:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2012-01-03 13:42:12 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.3.1.
|
||
|
||
2011-12-14 15:22:24 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2011-12-14 14:40:37 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
surface: apply composition to the parent context, if requested.
|
||
|
||
2011-12-14 14:35:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
context: make it possible to apply composition globally.
|
||
|
||
2011-12-14 14:13:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
surface: fix associate subpicture to not report deassociation errors.
|
||
|
||
2011-12-14 13:46:26 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
surface: fix typo in debug message.
|
||
|
||
2011-12-14 13:16:21 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
subpicture: add helper to create subpicture from GstVideoOverlayRectangle.
|
||
|
||
2011-12-13 16:53:15 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface_priv.h:
|
||
surface: record parent context.
|
||
|
||
2011-12-13 15:59:02 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
Fix warnings.
|
||
|
||
2011-12-13 15:51:58 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
Rename gst_vaapi_surface_update_composition() to gst_vaapi_surface_set_subpictures_from_composition().
|
||
|
||
2011-12-13 13:40:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: check for GstVideoOverlayComposition.
|
||
|
||
2011-12-12 18:42:44 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2011-11-25 15:00:25 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
converter: add support for GstVideoOverlayComposition planes.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-23 16:45:46 -0300 Thibault Saunier <thibault.saunier@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: handle GstVideoOverlayComposition planes.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-12 18:27:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
surface: use unscaled overlay rectangle for blending.
|
||
|
||
2011-12-12 18:37:13 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
surface: fix VA image leak when an error occurred.
|
||
|
||
2011-11-25 14:59:56 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
surface: add helper to handle GstVideoOverlayComposition.
|
||
This helper resets the subpictures to reflect the current composition
|
||
layers provided with the buffers.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-12 18:13:19 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
image: add gst_vaapi_image_format_from_video() helper.
|
||
|
||
2011-12-12 16:34:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
image: allow updates from GstVaapiImageRaw.
|
||
|
||
2011-12-12 14:34:03 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* tests/test-subpicture.c:
|
||
image: allow partial updates.
|
||
|
||
2011-12-12 15:31:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
subpicture: fix doc for gst_vaapi_subpicture_set_image().
|
||
|
||
2011-12-12 13:39:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: fix has_image_format() to check against subpicture formats.
|
||
|
||
2011-10-17 18:43:15 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* tests/test-subpicture.c:
|
||
tests: fix subpicture test.
|
||
|
||
2011-10-14 13:00:12 -0300 Thibault Saunier <thibault.saunier@collabora.com>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-subpicture-data.c:
|
||
* tests/test-subpicture-data.h:
|
||
* tests/test-subpicture.c:
|
||
tests: add test for subpictures.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-25 12:28:04 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
Add missing video context queries.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-12 13:22:07 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2011-12-12 10:04:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* gst-libs/gst/video/gstbasevideocodec.c:
|
||
* gst-libs/gst/video/gstbasevideocodec.h:
|
||
* gst-libs/gst/video/gstbasevideodecoder.c:
|
||
* gst-libs/gst/video/gstbasevideodecoder.h:
|
||
* gst-libs/gst/video/gstbasevideoutils.c:
|
||
* gst-libs/gst/video/gstbasevideoutils.h:
|
||
Drop unused copy of GstBaseVideoDecoder.
|
||
|
||
2011-12-09 11:46:45 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
0.3.0.
|
||
|
||
2011-12-09 11:38:43 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
README: update dependencies.
|
||
|
||
2011-12-09 11:38:34 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
NEWS: updates.
|
||
|
||
2011-12-09 11:20:04 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: check for GstBaseSink 'query' vfunc.
|
||
|
||
2011-12-09 10:45:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
vaapiplugin: include local build dir to CFLAGS for generated files.
|
||
|
||
2011-12-09 10:44:52 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* autogen.sh:
|
||
autogen: don't configure if NO_CONFIGURE variable is set.
|
||
|
||
2011-12-08 11:54:59 +0100 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
vaapidecode: return sink caps template if decoder is in NULL state.
|
||
Otherwise, the decoder would always create its own X display instead
|
||
of probing it from the downstream element, which is not reliable.
|
||
e.g. DISPLAY is not :0 or when running on Wayland.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-08 15:44:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapiplugin: properly set surface type to "vaapi" in caps.
|
||
|
||
2011-12-08 15:16:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
decoder: drop unused headers.
|
||
|
||
2011-11-04 19:47:25 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapiplugin: properly set opengl support in caps.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-04 20:07:52 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
vaapiplugin: allocate GLX buffers when supported.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-04 19:47:09 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideoconverter_glx.h:
|
||
videobuffer: add GLX buffer support.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-10-06 16:06:15 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Port to GstSurfaceBuffer interface.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-10-06 16:04:37 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
Don't use downstream buffer allocation.
|
||
With the new video/x-surface abstraction, we can't rely on having a VA
|
||
specific sink downstream. Also, there was no particular reason to do that.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-04 17:16:23 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* tests/Makefile.am:
|
||
* tests/test-surfaces.c:
|
||
Change caps to use new video/x-surface generic type.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-11-04 16:50:15 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.h:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapipluginutil.c:
|
||
* gst/vaapi/gstvaapipluginutil.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
Port to GstVideoContext interface.
|
||
This new interface allows for upstream and downstream display sharing
|
||
that works in both static and dynamic pipelines.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-08 14:57:36 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: use GST_ERROR to print error messages.
|
||
|
||
2011-12-08 13:30:51 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/Makefile.am:
|
||
vaapiplugin: link against VA/GLX when enabled.
|
||
|
||
2011-12-07 19:09:55 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
Add Intel copyright information.
|
||
|
||
2011-12-07 19:04:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: allow compatibility with gst-plugins-base < 0.10.31.
|
||
|
||
2011-12-07 18:40:35 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitignore:
|
||
* configure.ac:
|
||
* gst-libs/gst/Makefile.am:
|
||
* gst-libs/gst/gstutils_version.h.in:
|
||
Add new GStreamer version check utilities.
|
||
|
||
2011-07-28 11:14:49 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
||
|
||
* gst/vaapi/gstvaapisink.c:
|
||
vaapisink: replace the deprecated xoverlay API with the new one.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-07 17:31:09 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: allow for pre-releases.
|
||
|
||
2011-10-13 17:08:13 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: destroy display on creation failure.
|
||
This allows element to detect that the display creation has actually
|
||
failed.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-10-13 17:07:35 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
display: don't crash when config is empty.
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-12-07 14:42:14 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* README:
|
||
* debian.upstream/copyright:
|
||
doc: mention Collabora copyrights.
|
||
|
||
2011-12-07 14:40:20 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* .gitignore:
|
||
.gitignore: refine for generated docs.
|
||
|
||
2011-09-14 15:12:41 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* configure.ac:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* gst/Makefile.am:
|
||
* gst/vaapi/Makefile.am:
|
||
* gst/vaapi/gstvaapi.c:
|
||
* gst/vaapi/gstvaapiconvert.c:
|
||
* gst/vaapi/gstvaapiconvert.h:
|
||
* gst/vaapi/gstvaapidecode.c:
|
||
* gst/vaapi/gstvaapidecode.h:
|
||
* gst/vaapi/gstvaapisink.c:
|
||
* gst/vaapi/gstvaapisink.h:
|
||
* gst/vaapiconvert/Makefile.am:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapiconvert/gstvaapiconvert.h:
|
||
* gst/vaapidecode/Makefile.am:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
* gst/vaapisink/Makefile.am:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
* gst/vaapisink/gstvaapisink.h:
|
||
Group all plugins into the same bundle
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-07-21 14:31:30 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2011-12-07 14:17:32 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/control.in:
|
||
debian: build against upstream libva packages.
|
||
|
||
2011-12-07 13:52:17 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Fix build on Ubuntu 11.10 (Oneric).
|
||
|
||
2011-12-07 13:14:28 +0100 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
0.2.7.
|
||
|
||
2011-09-12 16:20:16 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* .gitignore:
|
||
Adding ignore file
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-10-24 16:18:16 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Update license in plugin definition
|
||
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
2011-10-12 14:00:50 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
decoder: fix use of invalid data at the end-of-stream.
|
||
|
||
2011-10-19 14:47:31 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: fix some warnings.
|
||
|
||
2011-10-19 14:43:56 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/changelog.in:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/copyright:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Update with my current e-mail address.
|
||
|
||
2011-10-19 14:39:21 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* README:
|
||
Splitted-Desktop systems relicensed plugins and tests to LGPL v2.1+.
|
||
|
||
2011-10-18 09:18:20 +0200 warly <warly@warly.org>
|
||
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-decode.h:
|
||
* tests/test-display.c:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
* tests/test-windows.c:
|
||
switch tests licence to LGPL v2.1+
|
||
|
||
2011-10-18 09:06:52 +0200 warly <warly@warly.org>
|
||
|
||
* COPYING:
|
||
* README:
|
||
* debian.upstream/copyright:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapiconvert/gstvaapiconvert.h:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
* gst/vaapisink/gstvaapisink.h:
|
||
move plugins to LGPL v2.1+
|
||
|
||
2011-09-14 13:07:18 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
vaapidecode: fix sink caps to not expose size information.
|
||
This fixes this particular issue:
|
||
GStreamer-WARNING **: pad vaapidecode0:sink returned caps which are not
|
||
a real subset of its template caps
|
||
|
||
2011-09-14 11:34:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
vaapidecode: fix decoding of MPEG-2 PS files.
|
||
|
||
2011-09-12 13:00:04 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Cosmetics (sort source files).
|
||
|
||
2011-09-08 14:50:24 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapiconvert/gstvaapiconvert.h:
|
||
vaapiconvert: fix direct-rendering caps detection.
|
||
|
||
2011-09-08 14:40:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Fix gst_vaapi_image_new_with_image().
|
||
|
||
2011-09-08 13:09:17 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: warn when surface failed to be updated with image.
|
||
|
||
2011-09-06 18:34:33 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: fix autodetection for vaDeriveImage() support.
|
||
|
||
2011-09-06 17:47:10 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: fix memory leak (VA surface image).
|
||
|
||
2011-09-05 16:20:20 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: fix direct-rendering mode.
|
||
|
||
2011-09-06 16:49:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Add gst_vaapi_video_buffer_new_from_buffer().
|
||
Add helper function to bind a foreign buffer into a GstVaapiVideoBuffer.
|
||
Any image, surface or surface proxy will be inherited from the source buffer
|
||
if it is a GstVaapiVideoBuffer.
|
||
|
||
2011-09-05 17:23:05 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: protect access to direct_rendering.
|
||
|
||
2011-09-05 16:18:14 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
vaapiconvert: use gst_vaapi_display_lookup_downstream() helper to get a VA display.
|
||
|
||
2011-08-01 14:15:39 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
* README:
|
||
* debian.upstream/copyright:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
Add Intel copyright information.
|
||
|
||
2011-07-22 15:59:00 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* NEWS:
|
||
Updates.
|
||
|
||
2011-07-22 15:55:47 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix build with newer FFmpeg versions.
|
||
|
||
2011-07-22 15:39:51 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
Fix decoding of MPEG-2 TS files.
|
||
|
||
2011-07-22 15:34:48 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Report caps update only once per video resolution change.
|
||
|
||
2011-07-22 15:33:13 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add canonical form (type name) of VA surface caps.
|
||
|
||
2011-07-22 15:42:16 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2011-07-19 17:38:40 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* configure.ac:
|
||
Use pretty build output with automake >= 1.11.
|
||
|
||
2011-07-15 16:08:08 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
||
|
||
* gst/vaapiconvert/Makefile.am:
|
||
* gst/vaapidecode/Makefile.am:
|
||
* gst/vaapisink/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Fix build with libva headers not in a standard include dir.
|
||
|
||
2011-06-14 15:59:08 +0200 Gwenole Beauchesne <gbeauchesne@splitted-desktop.com>
|
||
|
||
* configure.ac:
|
||
0.2.6.
|
||
|
||
2011-06-14 13:52:56 +0200 Gwenole Beauchesne <gbeauchesne@splitted-desktop.com>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapi_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapiconvert/gstvaapiconvert.h:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
* gst/vaapisink/gstvaapisink.h:
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-decode.c:
|
||
* tests/test-decode.h:
|
||
* tests/test-display.c:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-textures.c:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
* tests/test-windows.c:
|
||
Update copyright notice.
|
||
|
||
2011-06-14 13:51:41 +0200 Gwenole Beauchesne <gbeauchesne@splitted-desktop.com>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Fix licensing terms.
|
||
|
||
2010-07-20 11:23:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.2.5.
|
||
|
||
2010-07-20 11:21:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* debian.upstream/copyright:
|
||
Fix license terms...
|
||
|
||
2010-07-01 13:19:29 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Render pretty background only in use-reflection=true mode.
|
||
|
||
2010-07-01 11:43:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
Updates.
|
||
|
||
2010-07-01 11:41:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
Drop the GLX 1.3 requirement.
|
||
|
||
2010-07-01 11:38:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
Call the GLX/Pixmap related functions through the vtable.
|
||
|
||
2010-07-01 11:11:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Drop dependency on libavformat.
|
||
|
||
2010-06-22 15:15:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/video/gstbasevideodecoder.c:
|
||
* gst-libs/gst/video/gstbasevideodecoder.h:
|
||
Add gst_base_video_decoder_update_src_caps(). Don't forcibly set "interlaced" field if upstream elements did not have any.
|
||
|
||
2010-06-22 14:06:25 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/video/gstbasevideodecoder.c:
|
||
* gst-libs/gst/video/gstbasevideoutils.c:
|
||
* gst-libs/gst/video/gstbasevideoutils.h:
|
||
Drop superfluous functions.
|
||
|
||
2010-06-22 13:57:33 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/video/gstbasevideodecoder.c:
|
||
Really drop any dependency on libgstvideo. i.e. inline the helpers.
|
||
|
||
2010-06-22 13:48:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/video/gstbasevideodecoder.c:
|
||
Further drop dependency on libgstvideo.
|
||
|
||
2010-06-22 12:57:06 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/video/Makefile.am:
|
||
* gst-libs/gst/video/gstbasevideocodec.c:
|
||
* gst-libs/gst/video/gstbasevideocodec.h:
|
||
* gst-libs/gst/video/gstbasevideodecoder.c:
|
||
* gst-libs/gst/video/gstbasevideodecoder.h:
|
||
* gst-libs/gst/video/gstbasevideoutils.c:
|
||
* gst-libs/gst/video/gstbasevideoutils.h:
|
||
Add GstBaseVideoDecoder from gst-plugins-bad git.
|
||
|
||
2010-06-15 12:36:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
Fix GLX version check.
|
||
|
||
2010-06-14 14:46:41 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-06-14 14:14:42 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix decoding of some H.264 streams. e.g. Ice Age 2 trailer.
|
||
|
||
2010-06-14 12:58:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
Update changelog.
|
||
|
||
2010-06-14 09:20:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
Fix build with older VA-API 0.29-sds.
|
||
|
||
2010-05-18 11:22:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
* gst/vaapisink/gstvaapisink.h:
|
||
Fix upscaling in foreign window (Totem).
|
||
|
||
2010-05-17 12:32:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Soft validate caps since we only care about video/x-vaapi-surface as input. _setcaps() will check for other fields.
|
||
|
||
2010-05-17 08:55:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Fix video rendering rect within an embedder window (Totem).
|
||
|
||
2010-05-17 08:28:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Disable GLX rendering when vaapisink uses a foreign X window.
|
||
|
||
2010-05-17 08:24:42 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Simplify GLX rendering code.
|
||
|
||
2010-05-17 07:32:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-05-16 21:44:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.2.3.
|
||
|
||
2010-05-16 21:35:14 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Wait for at most one second for a VA surface to become available.
|
||
|
||
2010-05-16 21:18:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* README:
|
||
* configure.ac:
|
||
Build-Requires: gstreamer0.10 >= 0.10.10 for gst_caps_merge().
|
||
|
||
2010-05-16 21:17:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* README:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix decoder caps to report codec aliases.
|
||
|
||
2010-05-16 21:04:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
Fix VC-1 decoding through the playbin2 pipeline.
|
||
|
||
2010-05-15 15:33:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Regularly update and expose decoder caps.
|
||
|
||
2010-05-15 09:43:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Add mechanism to reinsert buffer leftovers into the queue.
|
||
|
||
2010-05-15 06:59:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Fix memory leak of encoded buffers.
|
||
|
||
2010-05-15 05:36:15 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
Check for out-of-free-surfaces condition.
|
||
|
||
2010-05-15 04:35:00 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
Change GST_VAAPI_DECODER_STATUS_ERROR_UNKNOWN value to something more generic (-1).
|
||
|
||
2010-05-15 04:25:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Improve debug info for gst_vaapisink_ensure_render_rect().
|
||
|
||
2010-05-14 05:02:05 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-05-13 21:52:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.2.2.
|
||
|
||
2010-05-13 21:39:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Improve previous fix.
|
||
|
||
2010-05-13 21:27:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix a crash in the FFmpeg decoder on close.
|
||
|
||
2010-05-13 16:41:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* README:
|
||
Sort platforms by name.
|
||
|
||
2010-05-13 09:40:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-05-13 09:38:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Add debug info for _show_frame().
|
||
|
||
2010-05-13 07:19:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
Nuke older build dir.
|
||
|
||
2010-05-13 07:19:21 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* debian.upstream/control.in:
|
||
Fix packaging deps.
|
||
|
||
2010-05-13 06:12:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
Cosmetics.
|
||
|
||
2010-05-13 06:11:42 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
Fix OpenGL texture internal format (Clutter).
|
||
|
||
2010-05-13 04:40:40 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
Respin release.
|
||
|
||
2010-05-13 04:27:44 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Debug video & display PARs.
|
||
|
||
2010-05-13 04:22:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Use XGetGeometry() to retrieve the window size.
|
||
|
||
2010-05-12 19:40:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Move code around.
|
||
|
||
2010-05-12 19:35:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Ensure VA display is created prior to initializing the window from a specific XID. Also move code down.
|
||
|
||
2010-05-12 19:18:04 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* README:
|
||
Drop obsolete comment.
|
||
|
||
2010-05-12 19:14:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.2.1.
|
||
|
||
2010-05-12 19:14:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Fix GstVaapiDisplay refcounting in vaapidecode.
|
||
|
||
2010-05-12 14:10:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.c:
|
||
Fix comment.
|
||
|
||
2010-05-12 12:58:53 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
* gst/vaapisink/gstvaapisink.h:
|
||
Fix render rect when the foreign window size changes.
|
||
|
||
2010-05-12 11:43:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gst/vaapisink/Makefile.am:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Add GstXOverlay interface to vaapisink (e.g. for Totem).
|
||
|
||
2010-05-12 10:51:21 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* README:
|
||
Update deps to match configure.ac versions.
|
||
|
||
2010-05-12 09:34:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Cosmetics.
|
||
|
||
2010-05-12 09:22:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst/vaapidecode/Makefile.am:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
Fix vaapidecode to expose the HW supported caps only.
|
||
|
||
2010-05-12 08:32:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Initialize decoder earlier.
|
||
|
||
2010-05-12 08:02:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* README:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Fix integration within the playbin2 pipeline.
|
||
|
||
2010-05-12 08:02:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
Exclude gstvaapiutils_gst.h from docs for now.
|
||
|
||
2010-05-12 08:00:09 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Raise VA-API plugins ranks.
|
||
|
||
2010-05-12 07:57:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_gst.h:
|
||
Add gst_vaapi_display_lookup_downstream() helper.
|
||
|
||
2010-05-11 16:23:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Use fixed caps on the src pad, they are not meant to change from video/x-vaapi-surface.
|
||
|
||
2010-05-11 16:19:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Expose VA display through GstVaapiVideoBuffer.
|
||
|
||
2010-05-11 16:09:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Simplify gst_vaapidecode_set_caps() and fix memory leak.
|
||
|
||
2010-05-11 12:06:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
Expose video pool display.
|
||
|
||
2010-05-11 12:03:13 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
Stop iteration if there is no more element to examine.
|
||
|
||
2010-05-10 09:32:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Improve plugin details.
|
||
|
||
2010-05-07 06:35:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Factor out VA surface caps.
|
||
|
||
2010-05-05 15:36:25 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Add gst_vaapidecode_ensure_display() helper for set-caps.
|
||
|
||
2010-05-05 12:57:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-05-05 12:29:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
Really make it 0.2.0.
|
||
|
||
2010-05-05 12:28:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* README:
|
||
More docs.
|
||
|
||
2010-05-05 11:48:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
Don't exclude GstVaapiParamSpecs.
|
||
|
||
2010-05-05 11:44:06 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
Fix docs.
|
||
|
||
2010-05-05 06:06:02 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Lower plugins rank for now since playbin2 auto-plugging is not working properly. User applications will have to create their own pipeline or with some hacks around playbin2.
|
||
|
||
2010-05-04 15:03:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Really link all helper libraries with libtool -no-undefined.
|
||
|
||
2010-05-04 15:02:29 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Link helper libraries with libtool -no-undefined.
|
||
|
||
2010-05-04 14:59:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/gstreamer-vaapi.install.in:
|
||
* gst/vaapiconvert/Makefile.am:
|
||
* gst/vaapidecode/Makefile.am:
|
||
* gst/vaapisink/Makefile.am:
|
||
Don't build plugins with SONAME. Make them plain *.so.
|
||
|
||
2010-05-04 08:59:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* README:
|
||
Improve documentation for release.
|
||
|
||
2010-05-03 22:50:56 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix build with older VA-API 0.29.
|
||
|
||
2010-05-03 22:43:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.2.0.
|
||
|
||
2010-05-03 22:42:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/Makefile.am:
|
||
Fix make dist.
|
||
|
||
2010-05-03 22:36:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.core.types:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
Add missing docs.
|
||
|
||
2010-05-03 22:34:53 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix doc.
|
||
|
||
2010-05-03 22:28:02 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* tests/test-decode.c:
|
||
Rename gst_vaapi_decoder_ffmpeg_new_from_caps() to plain gst_vaapi_decoder_ffmpeg_new().
|
||
|
||
2010-05-03 22:02:41 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Extract framerate information from caps.
|
||
|
||
2010-05-03 21:49:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Move caps initialization to parent class.
|
||
|
||
2010-05-03 21:25:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Simplify.
|
||
|
||
2010-05-03 21:25:26 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix doc.
|
||
|
||
2010-05-03 21:14:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
More simplifications.
|
||
|
||
2010-05-03 20:55:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* tests/test-decode.c:
|
||
Simplify GstVaapiDecoder API.
|
||
|
||
2010-05-03 20:40:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
Drop obsolete defs.
|
||
|
||
2010-05-03 20:34:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
Drop obsolete decls.
|
||
|
||
2010-05-03 17:36:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Add more aliases for MPEG-4 decoding.
|
||
|
||
2010-05-03 17:04:00 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Use avctx->coded_{width,height} info to create the VA context.
|
||
|
||
2010-05-03 16:54:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-decode.c:
|
||
* tests/test-decode.h:
|
||
Use gst_vaapi_decoder_ffmpeg_new_from_caps().
|
||
|
||
2010-05-03 16:41:13 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-decode.c:
|
||
* tests/test-decode.h:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
Simplify tests info.
|
||
|
||
2010-05-03 16:17:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Try to improve heuristics to use an AVCodecContextParser.
|
||
|
||
2010-05-03 15:35:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix VC-1 decoding, it does not require any specific parser.
|
||
|
||
2010-05-03 15:34:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix VC-1 detection with older gstreamer libs (no "fourcc" field, but a "format" one).
|
||
|
||
2010-05-03 15:29:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Use size information from the demuxer, whenever available. i.e. fix WMV3 decoding.
|
||
|
||
2010-05-03 15:11:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
Add gst_vaapi_decoder_ffmpeg_new_from_caps() helper.
|
||
|
||
2010-05-03 14:53:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
Improve WMV3 detection yet further.
|
||
|
||
2010-05-03 13:44:41 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix detection of plain old WMV3 contents.
|
||
|
||
2010-05-03 12:25:07 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-vc1.c:
|
||
Add End-of-Sequence start code.
|
||
|
||
2010-05-03 11:44:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Fix VC-1 detection.
|
||
|
||
2010-05-03 08:51:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Fix build with older gstreamer libs where gst_buffer_unref() is not a plain function.
|
||
|
||
2010-05-03 08:34:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Drop obsolete (and wrong) code.
|
||
|
||
2010-05-03 08:33:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Cosmetics (spelling).
|
||
|
||
2010-05-03 08:32:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Try to fix timestamps (step 1). Looks OK on H55.
|
||
|
||
2010-05-03 07:10:04 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* debian.upstream/Makefile.am:
|
||
Ship with COPYING.LIB.
|
||
|
||
2010-05-03 07:07:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* COPYING.LIB:
|
||
* NEWS:
|
||
* README:
|
||
* gst-libs/gst/vaapi/gstvaapi_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
Relicense gst-libs/ code to LGPL v2.1+.
|
||
|
||
2010-05-03 06:49:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Drop extraneous comma.
|
||
|
||
2010-05-03 06:49:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Drop variant=itu field to help codec detection.
|
||
|
||
2010-04-30 15:50:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Decode as many surfaces as possible in gst_vaapidecode_step().
|
||
|
||
2010-04-30 15:37:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
* tests/test-decode.c:
|
||
Drop excessive threading that over-complicates synchronisation. MPEG-2 & H.264 videos now play but there are other problems (timestamps).
|
||
|
||
2010-04-30 13:13:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
0.2.0.
|
||
|
||
2010-04-30 12:04:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Move VA context reset to AVCodecContext.get_context() as the surface sizes can change.
|
||
|
||
2010-04-30 09:52:29 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
Fix gst_vaapi_display_has_{decoder,encoder}() to check for the entrypoint too.
|
||
|
||
2010-04-30 09:48:41 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
Add GST_VAAPI_ENTRYPOINT_SLICE_ENCODE.
|
||
|
||
2010-04-30 08:18:07 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Document H.264 / AVC1 format case better.
|
||
|
||
2010-04-29 23:09:07 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix H.264 decoding with AVC1 format bitstreams.
|
||
|
||
2010-04-29 22:00:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
Complete initialization of the GstVaapiVideoBuffer. Some frames start to show up.
|
||
|
||
2010-04-29 21:59:14 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
Add missing GstBaseSink::buffer_alloc() override. i.e. make sure to allocate a GstVaapiVideoBuffer instead of a plain GstBuffer from the peer pad.
|
||
|
||
2010-04-29 21:56:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Export gst_vaapi_video_buffer_new().
|
||
|
||
2010-04-29 21:12:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix gst_vaapi_profile_get_caps() to include the "profile" field.
|
||
|
||
2010-04-29 17:56:42 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Fix comment.
|
||
|
||
2010-04-29 17:55:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gst/Makefile.am:
|
||
* gst/vaapidecode/Makefile.am:
|
||
* gst/vaapidecode/gstvaapidecode.c:
|
||
* gst/vaapidecode/gstvaapidecode.h:
|
||
Add FFmpeg/VAAPI decoder for the new `vaapidecode' element.
|
||
|
||
2010-04-29 17:51:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
Add gst_vaapi_decoder_pause().
|
||
|
||
2010-04-29 17:11:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Use a GstTask with start/stop semantics for the decoder thread.
|
||
|
||
2010-04-29 16:08:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
Drop extraneous var.
|
||
|
||
2010-04-29 15:45:44 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Add support for GstVaapiSurfaceProxy to GstVaapiVideoBuffer.
|
||
|
||
2010-04-29 14:58:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Fix gst_vaapi_decoder_get_surface() status.
|
||
|
||
2010-04-29 14:28:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Try to set correct timestamps to the decoded surface proxy.
|
||
|
||
2010-04-29 12:52:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
* tests/test-decode.c:
|
||
Add timestamps to GstVaapiSurfaceProxy.
|
||
|
||
2010-04-29 09:43:40 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Fix GstVaapiDecoder::destroy(): GASyncQueue is not a GObject, likewise for GstBuffer.
|
||
|
||
2010-04-29 09:40:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix destructor, av_parser_close() does destroy the struct already, unliker avcodec_close()...
|
||
|
||
2010-04-29 09:35:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Prefer profile from codec-data if any was found there.
|
||
|
||
2010-04-29 09:34:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Improve heuristics to find the best profile. Use the highest one if no explicit match on "profile" field.
|
||
|
||
2010-04-28 23:09:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
Make sure gst_vaapi_decoder_get_surface() gets unblocked on error.
|
||
|
||
2010-04-28 22:30:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Fix VC-1 codec initialization, it really needs an extradata buffer.
|
||
|
||
2010-04-28 22:16:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Split decoder creation with actual resources allocation and codec setup (probe). This fixes a memory leak (avctx, pctx) on destroy and most interestingly makes it possible to detect unsupported codecs.
|
||
|
||
2010-04-28 21:58:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Move gst_vaapi_decoder_ffmpeg_create() call to object constructor.
|
||
|
||
2010-04-28 21:50:44 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* tests/test-decode.c:
|
||
Add "codec-data" property for additional codec data. e.g. VC-1 sequence headers for elementary streams.
|
||
|
||
2010-04-28 21:20:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Cosmetics (weird indentation).
|
||
|
||
2010-04-28 21:15:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Cosmetics (extraneous variable, debug message).
|
||
|
||
2010-04-28 09:07:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Fix check for VA-API enabled FFmpeg.
|
||
|
||
2010-04-27 15:26:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
- Add PTS and framerate information. - Simplify parsing with an AVCodeParserContext.
|
||
|
||
2010-04-27 11:59:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
Add more error codes. Fix documentation.
|
||
|
||
2010-04-26 13:30:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
Fix gst_vaapi_profile_get_codec(). Improve gst_vaapi_profile_from_caps() for H.264 & caps with "codec-data".
|
||
|
||
2010-04-26 11:44:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
* tests/test-decode.c:
|
||
Handle user end-of-streams. Add gst_vaapi_decoder_{start,stop}() helpers.
|
||
|
||
2010-04-26 11:36:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-vc1.c:
|
||
Drop useless End-of-Sequence marker.
|
||
|
||
2010-04-26 08:53:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
Flush stream only if avcodec_decode_video() read something. Otherwise, we might still have to seek into the stream. i.e. keep the data longer.
|
||
|
||
2010-04-26 08:40:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
Use a recursive mutex so that a single thread can lock several times. This fixes decoding of MPEG-2 and H.264 because those created a GstVaapiContext later through avcodec_decode_video() that was a protected call.
|
||
|
||
2010-04-26 08:15:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-h264.c:
|
||
* tests/test-vc1.c:
|
||
Regenerate correct clips.
|
||
|
||
2010-04-23 16:11:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-decode.c:
|
||
* tests/test-h264.c:
|
||
* tests/test-h264.h:
|
||
* tests/test-mpeg2.c:
|
||
* tests/test-mpeg2.h:
|
||
* tests/test-vc1.c:
|
||
* tests/test-vc1.h:
|
||
Add decoder demos. Use -c (mpeg2|h264|vc1) to select the codec.
|
||
XXX: only VC-1 decoding works at this time because of awful
|
||
bugs left in GstVaapiDecoderFfmpeg et al.
|
||
|
||
2010-04-23 16:05:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.c:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_ffmpeg.h:
|
||
* gst-libs/gst/vaapi/gstvaapidecoder_priv.h:
|
||
Add initial (multithreaded) decoder based on FFmpeg.
|
||
There are tons of bugs left:
|
||
- Decoder API not nice enough with error conditions
|
||
- FFmpeg parser is sometimes broken
|
||
- Packets queue can be lost
|
||
|
||
2010-04-23 16:00:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfaceproxy.h:
|
||
Add surface proxy that holds a reference to the parent surface and that returns the surface to that context on destruction.
|
||
|
||
2010-04-23 15:59:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapicontext.c:
|
||
* gst-libs/gst/vaapi/gstvaapicontext.h:
|
||
Add VA context abstraction.
|
||
|
||
2010-04-23 10:58:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
Fix VA profiles definitions for gst_vaapi_profile_get_codec() to work.
|
||
|
||
2010-04-21 15:03:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
Add a means to cap the number of objects allocated in the pool.
|
||
|
||
2010-04-21 15:02:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
Add VA entrypoint abstraction.
|
||
|
||
2010-04-20 13:36:04 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.c:
|
||
* gst-libs/gst/vaapi/gstvaapiprofile.h:
|
||
* tests/test-display.c:
|
||
Add VA profile abstraction.
|
||
|
||
2010-04-20 07:51:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
Fix OpenGL rendering on G45 systems.
|
||
|
||
2010-04-16 13:47:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
Fix gl_create_context() to find a GLXFBConfig compatible with the parent GL context.
|
||
|
||
2010-04-02 11:27:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
Fix TFP logic and simplify the FBO model. i.e. it's not necessary to create another texture (and storage) for the TFP, simply a new texture name.
|
||
|
||
2010-04-01 16:11:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
Fix get-out conditions.
|
||
|
||
2010-04-01 15:38:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
The shared GL context in GstVaapiTexture is only useful for cases where TFP+FBO are used, thus avoiding the need fully preserve the states and call into glGet*() functions that need synchronization.
|
||
|
||
2010-04-01 13:55:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
Shorter structs.
|
||
|
||
2010-04-01 13:41:24 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* tests/test-windows.c:
|
||
Make more helpers internal, thus reducing .text size further. Add gst_vaapi_display_x11_get_screen() helper along the way.
|
||
|
||
2010-04-01 09:47:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapi_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Move GST_VAAPI_DISPLAY_VADISPLAY() and GST_VAAPI_DISPLAY_{LOCK,UNLOCK}() to gstvaapidisplay_priv.h.
|
||
|
||
2010-03-31 15:25:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
Improve handling of GL contexts.
|
||
|
||
2010-03-30 16:41:21 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Simplify summary.
|
||
|
||
2010-03-30 13:33:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-03-30 13:29:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
Rename -dev package to libgstvaapi-dev.
|
||
|
||
2010-03-30 13:17:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* README:
|
||
Updates.
|
||
|
||
2010-03-30 13:05:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
Fix build with VA-API < 0.30.
|
||
|
||
2010-03-30 13:01:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* tests/test-display.c:
|
||
Enable build without VA/GLX extensions. i.e. fallback to TFP + FBO.
|
||
|
||
2010-03-30 12:59:15 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
Add TFP and FBO helpers.
|
||
|
||
2010-03-30 12:55:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
Cosmetics. Make vaapi_check_status() use GST_DEBUG() for error messages.
|
||
|
||
2010-03-30 08:13:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Use a shorter function name.
|
||
|
||
2010-03-30 08:11:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
Add gst_vaapi_surface_query_status() wrapper.
|
||
|
||
2010-03-30 07:50:11 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/plugins/Makefile.am:
|
||
Fix leftover during migration.
|
||
|
||
2010-03-30 07:46:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* gst/Makefile.am:
|
||
* gst/vaapiconvert/Makefile.am:
|
||
* gst/vaapiconvert/gstvaapiconvert.c:
|
||
* gst/vaapiconvert/gstvaapiconvert.h:
|
||
* gst/vaapisink/Makefile.am:
|
||
* gst/vaapisink/gstvaapisink.c:
|
||
* gst/vaapisink/gstvaapisink.h:
|
||
* sys/Makefile.am:
|
||
* sys/vaapiconvert/Makefile.am:
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
* sys/vaapisink/Makefile.am:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Rename to gst/ as sys/ was too vague.
|
||
|
||
2010-03-30 07:39:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Try to not reference VA-API types directly.
|
||
|
||
2010-03-29 16:24:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Fix reflection code to preserve aspect ratio.
|
||
|
||
2010-03-29 16:17:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Fix fullscreen mode.
|
||
|
||
2010-03-29 15:59:44 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Add OpenGL reflection effect ("use-reflection").
|
||
|
||
2010-03-29 15:51:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
Use a projection suitable for rotation around the Y axis.
|
||
|
||
2010-03-29 15:03:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* sys/vaapisink/Makefile.am:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Don't build vaapisink/gl by default. However, if this is enabled, use the GL renderer by default.
|
||
|
||
2010-03-29 14:50:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/libgstvaapi-glx.install.in:
|
||
Add libgstvaapi-glx-0 package.
|
||
|
||
2010-03-29 14:47:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* pkgconfig/Makefile.am:
|
||
Really fix make distclean.
|
||
|
||
2010-03-29 14:43:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
Fix make dist.
|
||
|
||
2010-03-29 14:42:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* pkgconfig/Makefile.am:
|
||
Fix make distclean.
|
||
|
||
2010-03-29 14:40:26 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/Makefile.am:
|
||
Fix make dist.
|
||
|
||
2010-03-29 14:31:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs.core.types:
|
||
* docs/reference/libs/libs.glx.types:
|
||
* docs/reference/libs/libs.types:
|
||
* docs/reference/libs/libs.x11.types:
|
||
Fix doc build.
|
||
|
||
2010-03-29 14:21:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Fix build without GLX.
|
||
|
||
2010-03-29 14:13:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.1.2.
|
||
|
||
2010-03-29 14:13:26 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/Makefile.am:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Add VA/GLX support to vaapisink.
|
||
|
||
2010-03-29 13:40:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
Add glXSwapBuffers() workaround for NVIDIA.
|
||
|
||
2010-03-29 13:27:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-textures.c:
|
||
Improve VA/GLX textures test.
|
||
|
||
2010-03-29 12:51:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
Fix texture rendering.
|
||
|
||
2010-03-29 11:25:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
Fix documentation.
|
||
|
||
2010-03-29 10:40:26 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
Add gst_vaapi_window_glx_put_texture() helper.
|
||
|
||
2010-03-29 09:09:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
Fix typos.
|
||
|
||
2010-03-26 17:00:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-windows.c:
|
||
Move code around.
|
||
|
||
2010-03-26 16:52:07 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.c:
|
||
* gst-libs/gst/vaapi/gstvaapitexture.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
Add initial VA/GLX texture abstraction though the API is not good enough yet.
|
||
|
||
2010-03-26 15:22:00 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
Add gst_vaapi_object_{,un}lock_display() helpers.
|
||
|
||
2010-03-26 15:16:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/image.c:
|
||
* tests/image.h:
|
||
* tests/test-windows.c:
|
||
Factor out image utilities.
|
||
|
||
2010-03-26 11:54:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
MT-Safe: lock display.
|
||
|
||
2010-03-26 11:50:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
Make sure window resize completed prior to resizing the GL viewport.
|
||
|
||
2010-03-26 11:39:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
gstvaapicompat.h is a private header, don't install it.
|
||
|
||
2010-03-26 11:35:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
Add gst_vaapi_display_{sync,flush}() helpers.
|
||
|
||
2010-03-26 11:30:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Add "synchronous" mode.
|
||
|
||
2010-03-26 11:02:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
Only add _display suffix to open & close members because they could be #define to some arbitrary value. lock/unlock are safe names.
|
||
|
||
2010-03-26 10:09:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
Restore GLX context only if there is one.
|
||
|
||
2010-03-26 09:41:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
Add gst_vaapi_window_glx_make_current(). Handle X11 window size changes and reset the GL viewport.
|
||
|
||
2010-03-26 08:35:24 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
Check GstVaapiWindow::render() is available prior to calling it.
|
||
|
||
2010-03-26 08:10:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/Makefile.am:
|
||
* tests/test-display.c:
|
||
* tests/test-textures.c:
|
||
Add VA/GLX display tests.
|
||
|
||
2010-03-26 08:00:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Fix compile flags.
|
||
|
||
2010-03-25 17:39:06 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.types:
|
||
Add missing API documentation.
|
||
|
||
2010-03-25 17:28:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_glx.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_glx.h:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-glx.pc.in:
|
||
* tests/Makefile.am:
|
||
* tests/test-textures.c:
|
||
Add initial VA/GLX support.
|
||
|
||
2010-03-25 17:21:56 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Add missing includes (for vaapi_check_status()).
|
||
|
||
2010-03-25 17:21:13 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
Only enable GST_DEBUG() if DEBUG is defined. Drop old D(bug()) stuff.
|
||
|
||
2010-03-25 17:18:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
Add gst_vaapi_window_x11_is_foreign_xid() helper.
|
||
|
||
2010-03-25 17:18:06 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
Allow derived classes to specify custom Visual and Colormap.
|
||
|
||
2010-03-25 13:54:06 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Allow window creation with a specific visual (e.g. for GLX support).
|
||
|
||
2010-03-25 13:21:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Fix return value on error (though it's the same in the end).
|
||
|
||
2010-03-25 12:39:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
Simplify initialization of VADisplay.
|
||
|
||
2010-03-25 10:04:39 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Move __attribute__((visibility("hidden"))) check down.
|
||
|
||
2010-03-25 09:49:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* tests/test-surfaces.c:
|
||
Restore the gst_vaapi_{surface,image,subpicture}_get_id() interfaces.
|
||
|
||
2010-03-25 09:39:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Use the parent display object, no need to maintain another one.
|
||
In the end, libgstvaapi-x11 reduced by 1 KB in .text vs. 0.1.1.
|
||
|
||
2010-03-25 09:37:40 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
Add more internal helpers.
|
||
|
||
2010-03-24 17:40:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Rename to GST_VAAPI_OBJECT_DISPLAY().
|
||
|
||
2010-03-24 17:38:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
All GstVaapiID are initialized to GST_VAAPI_ID_NONE by default. Besides, all GstVaapiObject derived class shall initialize "id" to a valid value.
|
||
|
||
2010-03-24 17:22:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Make GstVaapiWindow* derive from GstVaapiObject.
|
||
|
||
2010-03-24 16:37:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Factor out use gstreamer-vaapi (PACKAGE name).
|
||
|
||
2010-03-24 16:35:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Improve versioning summary.
|
||
|
||
2010-03-24 16:27:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
gstvaapicompat.h is now a private header (not installed).
|
||
|
||
2010-03-24 16:25:56 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Include gstvaapicompat.h in source files only, not headers.
|
||
|
||
2010-03-24 16:21:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* sys/vaapiconvert/Makefile.am:
|
||
* sys/vaapisink/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Drop tedious LIBVA_EXTRA_{CFLAGS,LIBS} definitions in Makefile.am. Override CFLAGS & LIBS instead.
|
||
|
||
2010-03-24 16:17:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapicompat.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
* sys/vaapiconvert/Makefile.am:
|
||
* sys/vaapisink/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Add compatibility with the original VA-API 0.29.
|
||
|
||
2010-03-24 15:18:33 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivalue.h:
|
||
Add missing file (gstvaapivalue.h).
|
||
|
||
2010-03-24 15:12:56 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Fix g_warning() invocation.
|
||
|
||
2010-03-24 15:11:26 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Deassociate subpictures while destroying the surface.
|
||
|
||
2010-03-24 14:57:33 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Fix destruction order of subpictures. They should be destroyed first.
|
||
|
||
2010-03-24 14:46:33 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* tests/test-windows.c:
|
||
Add support for AYUV format.
|
||
|
||
2010-03-24 14:36:39 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-windows.c:
|
||
Simplify upload process and fallback to subpictures.
|
||
|
||
2010-03-24 13:44:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
Fix documentation.
|
||
|
||
2010-03-24 13:37:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.c:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapivalue.c:
|
||
Move GValue specific stuff to a dedicated file.
|
||
|
||
2010-03-24 13:22:25 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-surfaces.c:
|
||
Cosmetics (lowercase for consistency).
|
||
|
||
2010-03-24 13:21:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
Cosmetics (vertical alignment).
|
||
|
||
2010-03-24 13:20:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
Fix return value on error.
|
||
|
||
2010-03-24 13:19:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* tests/test-surfaces.c:
|
||
Move "id" down to the GstVaapiObject base.
|
||
|
||
2010-03-24 12:59:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapitypes.c:
|
||
Cosmetics (drop extraneous empty line).
|
||
|
||
2010-03-24 12:57:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.c:
|
||
* gst-libs/gst/vaapi/gstvaapiparamspecs.h:
|
||
Add GParamSpecs for GstVaapiID.
|
||
|
||
2010-03-24 12:54:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs.types:
|
||
Drop gst_vaapi_id_get_type().
|
||
|
||
2010-03-24 12:38:40 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
Add GST_VAAPI_ID_FORMAT() and GST_VAAPI_ID_ARGS() helpers.
|
||
|
||
2010-03-24 09:52:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.types:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.c:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
Add GstVaapiID abstraction.
|
||
|
||
2010-03-24 09:22:00 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs.types:
|
||
Sort types.
|
||
|
||
2010-03-24 08:35:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Drop useless include (<va/va_backend.h>).
|
||
|
||
2010-03-24 08:34:11 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
Optimize GST_VAAPI_OBJECT_GET_DISPLAY to avoid a run-time check.
|
||
|
||
2010-03-24 08:32:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Move private definitions and accessors to gstvaapiobject_priv.h.
|
||
|
||
2010-03-24 08:16:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Fix short descriptions.
|
||
|
||
2010-03-23 18:45:09 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* debian.upstream/Makefile.am:
|
||
* debian.upstream/changelog.in:
|
||
* debian.upstream/compat:
|
||
* debian.upstream/control.in:
|
||
* debian.upstream/copyright:
|
||
* debian.upstream/gstreamer-vaapi-doc.install.in:
|
||
* debian.upstream/gstreamer-vaapi.install.in:
|
||
* debian.upstream/libgstvaapi-dev.install.in:
|
||
* debian.upstream/libgstvaapi-x11.install.in:
|
||
* debian.upstream/libgstvaapi.install.in:
|
||
* debian.upstream/rules:
|
||
* debian/Makefile.am:
|
||
* debian/changelog.in:
|
||
* debian/compat:
|
||
* debian/control.in:
|
||
* debian/copyright:
|
||
* debian/gstreamer-vaapi-doc.install.in:
|
||
* debian/gstreamer-vaapi.install.in:
|
||
* debian/libgstvaapi-dev.install.in:
|
||
* debian/libgstvaapi-x11.install.in:
|
||
* debian/libgstvaapi.install.in:
|
||
* debian/rules:
|
||
Generate upstream packages through make deb.upstream.
|
||
|
||
2010-03-23 17:40:03 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-03-23 17:29:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
Use a black background for new windows.
|
||
|
||
2010-03-23 17:18:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.1.1.
|
||
|
||
2010-03-23 17:12:40 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* docs/reference/libs/libs.types:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapimarshal.list:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* tests/test-surfaces.c:
|
||
Add "destroy" signal.
|
||
|
||
2010-03-23 16:25:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
Improve gst-plugins-vaapi Library reference template.
|
||
|
||
2010-03-23 16:21:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.c:
|
||
* gst-libs/gst/vaapi/gstvaapiobject.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Make GstVaapi{Surface,Image,Subpicture} derive from a GstVaapiObject.
|
||
|
||
2010-03-23 16:11:21 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Fix return value.
|
||
|
||
2010-03-23 15:34:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Make sure VA display is valid when created with an explicit "display" name.
|
||
|
||
2010-03-23 15:28:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Use plain "display" property for the X11 display name.
|
||
|
||
2010-03-23 15:22:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Document vaapiconvert & vaapisink plugins.
|
||
|
||
2010-03-23 14:19:21 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* docs/reference/Makefile.am:
|
||
* docs/reference/plugins/Makefile.am:
|
||
* docs/reference/plugins/plugins-docs.xml.in:
|
||
* docs/reference/plugins/plugins-overrides.txt:
|
||
* docs/reference/plugins/plugins-sections.txt:
|
||
* docs/reference/plugins/plugins.types:
|
||
Add plugins documentation template.
|
||
|
||
2010-03-23 14:06:42 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Don't export gst_vaapisink_get_display().
|
||
|
||
2010-03-23 13:32:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
Drop introspection annotations since they require gtk-doc >= 1.12.
|
||
|
||
2010-03-23 10:51:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Add note about the fact that the surface holds an extra reference to the subpicture.
|
||
|
||
2010-03-23 10:49:33 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Improve debugging messages.
|
||
|
||
2010-03-23 10:48:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-windows.c:
|
||
Unref subpicture earlier as the surface is supposed to hold a reference to it.
|
||
|
||
2010-03-23 10:36:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* tests/test-windows.c:
|
||
Add gst_vaapi_surface_{,de}associate_subpicture() API.
|
||
|
||
2010-03-23 08:13:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Wait for MapNotify or UnmapNotify events on foreign windows too.
|
||
|
||
2010-03-23 07:42:05 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Check whether the foreign XID is mapped at binding time.
|
||
|
||
2010-03-23 07:34:15 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Add missing includes.
|
||
|
||
2010-03-23 07:31:04 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* debian/Makefile.am:
|
||
* debian/control.in:
|
||
* debian/gstreamer-vaapi-doc.install.in:
|
||
* debian/rules:
|
||
Add -doc package.
|
||
|
||
2010-03-23 06:41:29 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Fix warnings (drop extraneous var).
|
||
|
||
2010-03-23 06:40:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
Add GST_VAAPI_WINDOW_XWINDOW() helper macro.
|
||
|
||
2010-03-22 16:59:29 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
Shorten condition.
|
||
|
||
2010-03-22 16:57:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Try to improve switch to fullscreen mode.
|
||
|
||
2010-03-22 16:01:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Improve display locking and rework X event wait functions.
|
||
|
||
2010-03-22 13:06:41 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
Move _GstVaapiWindowPrivate declaration to gstvaapiwindow_priv.h.
|
||
|
||
2010-03-22 13:05:05 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_priv.h:
|
||
Add private API to set window size & fullscreen modes without triggering any notification or virtual functions. This is useful for derived class to fix up sizes whenever appropriate.
|
||
|
||
2010-03-22 12:47:13 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
Add gst_vaapi_window_get_fullscreen() helper and "fullscreen" property.
|
||
|
||
2010-03-22 12:39:02 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Add gst_vaapi_window_get_display() to base.
|
||
|
||
2010-03-22 12:16:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapitypes.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Add GstVaapiPoint & GstVaapiRectangle data structures.
|
||
|
||
2010-03-22 12:05:11 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
0.1.1.
|
||
|
||
2010-03-22 12:03:26 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Allow `vaapisink` to render videos in fullscreen mode.
|
||
|
||
2010-03-22 10:51:49 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Add gst_vaapi_window_set_fullscreen() API.
|
||
|
||
2010-03-22 10:03:24 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Size window so that to respect the video and pixel aspect ratio.
|
||
|
||
2010-03-22 09:32:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* tests/test-display.c:
|
||
Add gst_vaapi_display_get_pixel_aspect_ratio().
|
||
|
||
2010-03-22 08:45:03 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
Updates.
|
||
|
||
2010-03-22 08:44:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* tests/test-display.c:
|
||
Add display size accessors.
|
||
|
||
2010-03-22 08:03:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* debian/control.in:
|
||
Build-Requires: gstreamer-plugins-base >= 0.10.16.
|
||
|
||
2010-03-21 08:45:09 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
Fix documentation of *Class'es.
|
||
|
||
2010-03-21 08:38:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Move GstVaapiSurfaceRenderFlags conversion to get_PutSurface_flags_from_GstVaapiSurfaceRenderFlags().
|
||
|
||
2010-03-21 08:22:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
Move GstVaapiSurfaceRenderFlags to gstvaapisurface.h since this will also be useful for e.g. a gstvaapitexture.h.
|
||
|
||
2010-03-21 08:12:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* tests/test-windows.c:
|
||
Rename gst_vaapi_window_put_surface_full() to plain gst_vaapi_window_put_surface().
|
||
|
||
2010-03-19 17:15:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* docs/reference/libs/Makefile.am:
|
||
Fix make dist for --enable-gtk-doc builds.
|
||
|
||
2010-03-19 17:13:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* autogen.sh:
|
||
Improve autogen.sh.
|
||
|
||
2010-03-19 17:11:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* autogen.sh:
|
||
Generate gtk-doc.make from gtkdocize.
|
||
|
||
2010-03-19 17:04:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* NEWS:
|
||
* configure.ac:
|
||
* docs/Makefile.am:
|
||
* docs/reference/Makefile.am:
|
||
* docs/reference/libs/Makefile.am:
|
||
* docs/reference/libs/libs-docs.xml.in:
|
||
* docs/reference/libs/libs-overrides.txt:
|
||
* docs/reference/libs/libs-sections.txt:
|
||
* docs/reference/libs/libs.types:
|
||
Document public API for libgstvaapi-*.so.*.
|
||
|
||
2010-03-19 16:41:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Document GstVaapiVideoBuffer.
|
||
|
||
2010-03-19 16:08:48 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
Document surface & image pools. Drop obsolete gst_vaapi_video_pool_new() function.
|
||
|
||
2010-03-19 15:45:21 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
Add tedious documentation.
|
||
|
||
2010-03-19 10:42:11 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
Beautify append_formats().
|
||
|
||
2010-03-19 10:38:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
Simplify GstVaapiDisplay (use GArray).
|
||
|
||
2010-03-19 08:42:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Factor out direct-rendering infrastructure.
|
||
|
||
2010-03-18 16:18:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Allow user to specify inout-buffers & derive-image optimizations.
|
||
|
||
2010-03-18 15:58:28 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
Reduce number of debug messaged printed out.
|
||
|
||
2010-03-18 15:53:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Add vaDeriveImage() optimization.
|
||
|
||
2010-03-18 15:52:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Fix gst_vaapi_image_create() from a foreign VA image.
|
||
|
||
2010-03-18 15:28:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add gst_vaapi_surface_derive_image() API.
|
||
|
||
2010-03-18 13:49:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Make it possible to bin an X11 window to GstVaapiWindowX11 with plain g_object_new() and "xid" property. i.e. get foreign window size in gst_vaapi_window_x11_create().
|
||
|
||
2010-03-18 13:08:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-windows.c:
|
||
Try YV12 & I420 image formats too.
|
||
|
||
2010-03-18 12:59:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Split map/unmap functions into internal functions that don't check preconditions.
|
||
|
||
2010-03-18 12:56:53 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Improve gst_vaapi_image_new() sanity checks.
|
||
|
||
2010-03-18 12:52:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/test-windows.c:
|
||
Fix typo.
|
||
|
||
2010-03-18 08:45:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
Check if our inout buffer is still alive or default to a separate output buffer.
|
||
|
||
2010-03-18 08:16:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Factor out buffers negotiation and optimization checks.
|
||
|
||
2010-03-18 08:02:25 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Use gtypes.
|
||
|
||
2010-03-17 10:43:02 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Optimize gst_vaapi_image_is_linear() and simplify gst_vaapi_image_update_from_buffer().
|
||
|
||
2010-03-17 07:59:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Add VA display locking utilities.
|
||
|
||
2010-03-17 07:20:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Initialize the X window in a ::set_caps() handler. Also fix build with GStreamer < 0.10.25. i.e. use preroll/render hooks.
|
||
|
||
2010-03-17 07:17:17 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* tests/test-windows.c:
|
||
Don't show window by default during creation.
|
||
|
||
2010-03-17 06:49:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Fix gst_vaapi_window_x11_destroy().
|
||
|
||
2010-03-16 17:57:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Alias sink & src pad buffers whenever possible.
|
||
|
||
2010-03-16 17:57:23 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
Extend GstVaapiImage API with *_get_image(), *_is_linear(), *_get_data_size().
|
||
|
||
2010-03-16 17:10:02 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Make GstVaapiVideoBuffer handle two pools. i.e. both image & surface at the same time.
|
||
|
||
2010-03-16 14:37:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
Fix image & surface size cache.
|
||
|
||
2010-03-16 14:12:40 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Move gstreamer-vaapi package versioning to the top.
|
||
|
||
2010-03-16 14:11:46 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Bump version for development.
|
||
|
||
2010-03-16 14:07:53 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Cosmetics (shorten lines).
|
||
|
||
2010-03-16 13:58:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* NEWS:
|
||
* README:
|
||
Update docs.
|
||
|
||
2010-03-16 13:53:54 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* debian/Makefile.am:
|
||
* debian/changelog.in:
|
||
* debian/compat:
|
||
* debian/control.in:
|
||
* debian/copyright:
|
||
* debian/gstreamer-vaapi.install.in:
|
||
* debian/libgstvaapi-dev.install.in:
|
||
* debian/libgstvaapi-x11.install.in:
|
||
* debian/libgstvaapi.install.in:
|
||
* debian/rules:
|
||
Add debian packaging.
|
||
|
||
2010-03-16 13:53:09 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
Add debian packaging.
|
||
|
||
2010-03-16 10:13:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* pkgconfig/Makefile.am:
|
||
Silence GNU make extensions warning.
|
||
|
||
2010-03-16 09:59:03 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Add AM_PROG_CC_C_O, thus fixing this warning: tests/Makefile.am:16: compiling `test-display.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.ac'
|
||
|
||
2010-03-16 09:57:25 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* pkgconfig/Makefile.am:
|
||
* pkgconfig/gstreamer-vaapi-x11.pc.in:
|
||
* pkgconfig/gstreamer-vaapi.pc.in:
|
||
Add pkgconfig files.
|
||
|
||
2010-03-16 09:39:07 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* sys/vaapisink/Makefile.am:
|
||
* tests/Makefile.am:
|
||
Split X11 support to libgstvaapi-x11-*.so.*
|
||
|
||
2010-03-16 09:21:15 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
Don't install private headers.
|
||
|
||
2010-03-16 09:18:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
Fix header guards.
|
||
|
||
2010-03-16 09:17:41 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidebug.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/vaapi_debug.h:
|
||
Rename vaapi_debug.h to gstvaapidebug.h.
|
||
|
||
2010-03-16 09:15:48 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils.h:
|
||
* gst-libs/gst/vaapi/vaapi_debug.h:
|
||
* gst-libs/gst/vaapi/vaapi_utils.c:
|
||
* gst-libs/gst/vaapi/vaapi_utils.h:
|
||
Move vaapi_utils.* to gstvaapiutils.*
|
||
|
||
2010-03-16 09:13:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
Cosmetics (remove an extra line).
|
||
|
||
2010-03-16 09:12:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiutils_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Move X11 utilties to gstvaapiutils_x11.[ch].
|
||
|
||
2010-03-16 09:03:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapisinkbase.c:
|
||
* gst-libs/gst/vaapi/gstvaapisinkbase.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideosink.h:
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
Rename GstVaapiSinkBase to GstVaapiVideoSink.
|
||
|
||
2010-03-16 08:49:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* tests/Makefile.am:
|
||
* tests/examples/Makefile.am:
|
||
* tests/examples/generic/Makefile.am:
|
||
* tests/examples/generic/test-display.c:
|
||
* tests/examples/generic/test-surfaces.c:
|
||
* tests/examples/generic/test-windows.c:
|
||
* tests/test-display.c:
|
||
* tests/test-surfaces.c:
|
||
* tests/test-windows.c:
|
||
Move tests to top-level tests/ directory.
|
||
|
||
2010-03-16 08:43:16 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Handle I420 formats internally in GstVaapiImage.
|
||
|
||
2010-03-15 17:44:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Implement I420 (resp. YV12) with YV12 (resp. I420) if the driver does not.
|
||
|
||
2010-03-15 17:43:29 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Implement I420 and YV12 if the underlying implementation does not.
|
||
|
||
2010-03-15 17:10:56 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapiconvert/Makefile.am:
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
Add initial vaapiconvert plugin.
|
||
|
||
2010-03-15 17:09:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Display frames.
|
||
|
||
2010-03-15 16:57:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
Factor out.
|
||
|
||
2010-03-15 16:57:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/examples/generic/test-windows.c:
|
||
Generate R/G/B rects.
|
||
|
||
2010-03-15 16:13:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add gst_vaapi_surface_sync().
|
||
|
||
2010-03-15 16:13:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Cosmetics (reverse args order).
|
||
|
||
2010-03-15 15:55:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Cosmetics.
|
||
|
||
2010-03-15 15:12:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow.h:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapiwindow_x11.h:
|
||
* tests/examples/generic/Makefile.am:
|
||
* tests/examples/generic/test-windows.c:
|
||
Add VA/X11 window abstraction.
|
||
|
||
2010-03-15 14:57:57 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
Add VA and X11 display accessors.
|
||
|
||
2010-03-15 14:57:30 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
Fix preconditions.
|
||
|
||
2010-03-15 13:32:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
Cosmetics.
|
||
|
||
2010-03-15 11:49:03 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add gst_vaapi_{get,put}_image() API.
|
||
|
||
2010-03-15 10:27:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
Add gst_vaapi_image_update_from_buffer() helper.
|
||
|
||
2010-03-12 23:53:48 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapisink/Makefile.am:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Implement GstVaapiSinkBase interface and integrate with GST_DEBUG better.
|
||
|
||
2010-03-12 23:50:09 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/examples/generic/Makefile.am:
|
||
* tests/examples/generic/test-surfaces.c:
|
||
Add surface tests.
|
||
|
||
2010-03-12 23:48:50 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideobuffer.h:
|
||
Add basic GstVaapiVideoBuffer.
|
||
|
||
2010-03-12 23:47:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimagepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.c:
|
||
* gst-libs/gst/vaapi/gstvaapivideopool.h:
|
||
Add GstVaapiImagePool and factor out GstVaapiSurfacePool from a base GstVaapiVideoPool.
|
||
|
||
2010-03-12 22:32:35 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
Simplify format conversion code.
|
||
|
||
2010-03-12 22:28:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
Add gst_vaapi_image_format_from_caps() helper.
|
||
|
||
2010-03-12 17:45:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurfacepool.h:
|
||
Add VA surface pool (lazy allocator).
|
||
|
||
2010-03-12 17:39:11 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add gst_vaapi_surface_get_size() helper.
|
||
|
||
2010-03-12 10:52:08 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
Avoid use of GstStaticCaps since older gstreamer versions (0.10.22) write to it.
|
||
|
||
2010-03-11 15:35:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
Reset display-name if the user provided his own X11 display.
|
||
|
||
2010-03-11 15:21:43 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* tests/examples/generic/test-display.c:
|
||
Add gst_vaapi_display_x11_new_with_display() API.
|
||
|
||
2010-03-11 15:04:18 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Fix *_GET_CLASS() definitions...
|
||
|
||
2010-03-11 15:01:00 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* tests/examples/generic/test-display.c:
|
||
API change: gst_vaapi_display_x11_new() now takes an X11 display name.
|
||
|
||
2010-03-11 13:58:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Use GstVaapiChromaType abstraction.
|
||
|
||
2010-03-11 12:30:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
New refcounting policy. All getters return a reference, not a copy. So the user shall reference the object itself, should he wish so.
|
||
|
||
2010-03-11 12:14:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
Don't warn on failure, just return an appropriate error or value.
|
||
|
||
2010-03-11 12:11:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
Filter out any format that is not supported by the library (libgstvaapi). Also sort the formats by HW preference.
|
||
|
||
2010-03-11 10:50:27 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapisinkbase.c:
|
||
* gst-libs/gst/vaapi/gstvaapisinkbase.h:
|
||
Add helper interface that all VA-API sinks must implement. e.g. vaapisink.
|
||
|
||
2010-03-10 13:13:51 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/vaapi_debug.h:
|
||
Use GST_DEBUG.
|
||
|
||
2010-03-10 13:10:59 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
Fix GstVaapiImage and GstVaapiSubpicture initialization.
|
||
|
||
2010-03-10 13:02:45 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Fix GstVaapiSurface initialization, override constructed() method, not constructor(). GObject C is awful...
|
||
|
||
2010-03-10 12:25:38 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* tests/examples/generic/test-display.c:
|
||
Dump caps.
|
||
|
||
2010-03-10 12:25:19 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
Fix GstVaapiDisplay initialization.
|
||
|
||
2010-03-10 10:43:31 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
Get VA image & subpicture formats as GstCaps.
|
||
|
||
2010-03-10 10:41:12 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
Add helper to convert from GstVaapiImageFormat to GstCaps.
|
||
|
||
2010-03-09 12:00:32 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Cosmetics (drop unused variables).
|
||
|
||
2010-03-05 17:11:52 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* sys/vaapiconvert/Makefile.am:
|
||
* sys/vaapiconvert/gstvaapiconvert.c:
|
||
* sys/vaapiconvert/gstvaapiconvert.h:
|
||
* sys/vaapisink/Makefile.am:
|
||
* sys/vaapisink/gstvaapisink.c:
|
||
* sys/vaapisink/gstvaapisink.h:
|
||
Add boilerplate for vaapiconvert and vaapisink elements.
|
||
|
||
2010-03-05 15:29:04 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* sys/Makefile.am:
|
||
* sys/vaapiconvert/Makefile.am:
|
||
Add vaapiconvert element hierarchy.
|
||
|
||
2010-03-05 15:26:36 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* sys/vaapi/Makefile.am:
|
||
* sys/vaapisink/Makefile.am:
|
||
Rename to vaapisink.
|
||
|
||
2010-03-05 10:07:22 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
Shorter code (and more correct).
|
||
|
||
2010-03-05 10:04:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add helper to get GstVaapiDisplay from a surface.
|
||
|
||
2010-03-05 08:52:20 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
Fix subpicture formats list length.
|
||
|
||
2010-03-04 17:41:34 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
Add utilities to check whether a VA-API driver supports specific image or subpicture format. Likewise for VA profile.
|
||
|
||
2010-03-04 17:40:47 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
Cosmetics (more checks, includes).
|
||
|
||
2010-03-04 17:39:58 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.c:
|
||
* gst-libs/gst/vaapi/gstvaapisubpicture.h:
|
||
Really add VA subpicture abstraction.
|
||
|
||
2010-03-04 17:39:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimage.h:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.c:
|
||
* gst-libs/gst/vaapi/gstvaapiimageformat.h:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.c:
|
||
* gst-libs/gst/vaapi/gstvaapisurface.h:
|
||
Add VA surface, image, subpicture abstractions. Ported over from Gnash.
|
||
|
||
2010-01-25 16:15:01 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
* gst-libs/gst/vaapi/Makefile.am:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay.h:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.c:
|
||
* gst-libs/gst/vaapi/gstvaapidisplay_x11.h:
|
||
* gst-libs/gst/vaapi/vaapi_debug.h:
|
||
* gst-libs/gst/vaapi/vaapi_utils.c:
|
||
* gst-libs/gst/vaapi/vaapi_utils.h:
|
||
* tests/examples/generic/Makefile.am:
|
||
* tests/examples/generic/test-display.c:
|
||
Add initial VA display abstraction.
|
||
|
||
2010-01-25 15:04:10 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* tests/Makefile.am:
|
||
* tests/examples/Makefile.am:
|
||
* tests/examples/generic/Makefile.am:
|
||
Add tests infrastructure.
|
||
|
||
2010-01-25 14:59:37 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Clean up VA-API checks.
|
||
|
||
2010-01-25 13:49:55 +0000 gb <gb@5584edef-b1fe-4b99-b61b-dd2bab72e969>
|
||
|
||
* configure.ac:
|
||
Check for __attribute__((visibility("hidden"))).
|
||
|