Age | Commit message (Collapse) | Author | Files | Lines |
|
Handle video cropping information attached to a VA surface proxy.
|
|
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.
|
|
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.
|
|
Get rid of GstCaps to create surface/image pool, and use GstVideoInfo
structures instead. Those are smaller, and allows for streamlining
libgstvaapi more.
|
|
|
|
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.
|
|
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.
|
|
|
|
|
|
Drop user-data support from GstVaapiSurfaceProxy. Rather make it explicit
to call some user-provided function when the surface proxy is released.
|
|
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.
|
|
|
|
Use the GstTypeFind hooks from GStreamer 1.0. They look safer and
exactly correspond to the expected behaviour.
|
|
|
|
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.
|
|
|
|
|
|
Make simple-decoder build and execute correctly on older platforms,
and more precisely older versions of glib.
|
|
|
|
|
|
|
|
Fix build with built-in videoutils, i.e. when system GStreamer installation
does not know about GstVideoDecoder API.
|
|
Flush the remaining decoded frames when an end-of-stream is reached.
|
|
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.
|
|
Add --benchmark option to enable benchmark mode where rendering is not
synchronized with presentation timestamps of the decoded surfaces.
|
|
Try to honour the framerate from the bitstream, or cap the playback to
60 fps by default.
|
|
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.
|
|
Add simple decoder application to show off decoding capabilities from
raw bitstreams, for debugging or performance evaluation purposes.
|
|
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.
|
|
Add new --fullscreen|-f option to create new windows in fullscreen mode.
|
|
Check for global-alpha support in GstVideoOverlayComposition API.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
|
|
Add --global-alpha option to test-subpicture.
|
|
|
|
Use common decoder helpers for subpicture test, thus allowing to decode
sample images in an alternate format.
|
|
|
|
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>
|
|
Make sure to build codecparsers/ and videoutils/ sources against the
newly generated headers when out-of-source builds are used.
|
|
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.
|
|
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.
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
Add new --output option to select the renderer. Use --list-outputs to
print a list of supported renderers.
|
|
|
|
|
|
|
|
|