vaapi:sree-gstreamer-vaapi.git
6 years agoFix the typecast warnings:
Sreerenj Balachandran [Wed, 10 Oct 2012 13:23:44 +0000 (16:23 +0300)]
Fix the typecast warnings:

6 years agoMoving VaSurfacePool Creation to vaapisink:
Sreerenj Balachandran [Wed, 10 Oct 2012 10:04:57 +0000 (13:04 +0300)]
Moving VaSurfacePool Creation to vaapisink:
--- implement propose_allocation in vaapisink, this is the needed feature for merging vaapiupload  with vaapisink
--- vacontext creation should happen only after checking the availability of downstream allocated pool
--- decoder is creating pool, iff the vaapisink is not providing one
--- many other trivial fixes

6 years agoadd videometa:just defaults for now
Sreerenj Balachandran [Thu, 4 Oct 2012 12:15:41 +0000 (15:15 +0300)]
add videometa:just defaults for now

6 years agosurfacepool: no need to ref the display
Sreerenj Balachandran [Thu, 4 Oct 2012 11:50:33 +0000 (14:50 +0300)]
surfacepool: no need to ref the display

6 years agoNo more vaapidownload: buffer_map will return the the copy of client side mapped...
Sreerenj Balachandran [Wed, 3 Oct 2012 19:35:50 +0000 (22:35 +0300)]
No more vaapidownload: buffer_map will return the the copy of client side mapped memory of the vasurface. So "vaapidecode ! videoconvert ! xvimagesink" will work like usual pipeline.
.... playbin autoplugging needs the fix in videobalace element in upstream(NV12 support in videobalance)

6 years agoSetting the default format to NV12 since it is the default derive image format for...
Sreerenj Balachandran [Tue, 2 Oct 2012 21:23:53 +0000 (00:23 +0300)]
Setting the default format to NV12 since it is the default derive image format for vaapiimage

6 years agoMerge branch '0.10_basevideodec' into 1.0
Sreerenj Balachandran [Mon, 1 Oct 2012 11:18:41 +0000 (14:18 +0300)]
Merge branch '0.10_basevideodec' into 1.0

Conflicts:
configure.ac

6 years agoMerge branch 'gwe_master' into 0.10_basevideodec
Sreerenj Balachandran [Mon, 1 Oct 2012 11:10:28 +0000 (14:10 +0300)]
Merge branch 'gwe_master' into 0.10_basevideodec

Conflicts:
gst-libs/gst/vaapi/gstvaapidecoder_h264.c

6 years agoMake vaapiupload and vaapidownload to work with new vaapisurfacememory and vaapisurfa...
Sreerenj Balachandran [Mon, 1 Oct 2012 10:54:22 +0000 (13:54 +0300)]
Make vaapiupload and vaapidownload to work with new vaapisurfacememory and vaapisurfacemeta..
..these two elements will merge to vaapidecode in the next set of patches...

6 years agoAdd missing files: gstvaapisurfacemeta.c and gstvaapisurfacemeta.h
Sreerenj Balachandran [Mon, 1 Oct 2012 10:15:32 +0000 (13:15 +0300)]
Add missing files: gstvaapisurfacemeta.c and gstvaapisurfacemeta.h

6 years agoBump version for development.
Gwenole Beauchesne [Mon, 1 Oct 2012 07:21:03 +0000 (09:21 +0200)]
Bump version for development.

6 years agoMake the VaapiSurfaceMemory allocator more reliable:sync with vdpau-1.0 port by Edward.
Sreerenj Balachandran [Fri, 28 Sep 2012 22:12:27 +0000 (01:12 +0300)]
Make the VaapiSurfaceMemory allocator more reliable:sync with vdpau-1.0 port by Edward.
... buffer_map will return the mapped memory of vasurface(not implemented yet)
... a fully accelerated pipleline ("vaapidecode ! vaaapisink") will use the VaapiSurfaceMeta
... many other fixes

6 years agoFix and document build dependencies better.
Gwenole Beauchesne [Fri, 28 Sep 2012 15:54:03 +0000 (17:54 +0200)]
Fix and document build dependencies better.

6 years agodebian: fix GStreamer build dependencies.
Gwenole Beauchesne [Fri, 28 Sep 2012 15:41:42 +0000 (17:41 +0200)]
debian: fix GStreamer build dependencies.

6 years agodebian: fix Wayland build dependencies.
Gwenole Beauchesne [Fri, 28 Sep 2012 15:39:43 +0000 (17:39 +0200)]
debian: fix Wayland build dependencies.

6 years agodebian: fix conditional build of packages.
Gwenole Beauchesne [Fri, 28 Sep 2012 15:38:17 +0000 (17:38 +0200)]
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.

6 years agovaapidecoder_h264: handle the case of context reset
Sreerenj Balachandran [Thu, 27 Sep 2012 12:02:23 +0000 (15:02 +0300)]
vaapidecoder_h264: handle the case of context reset
,,,,need more fixes like merging ensure_context and reset_context

6 years agoutils: drop unused GLX helpers.
Gwenole Beauchesne [Thu, 27 Sep 2012 09:08:58 +0000 (11:08 +0200)]
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.

6 years agoutils: fix build with <GL/glext.h> version >= 85.
Gwenole Beauchesne [Thu, 27 Sep 2012 09:04:24 +0000 (11:04 +0200)]
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.

6 years agoconfigure: update VA-API version requirements.
Gwenole Beauchesne [Wed, 26 Sep 2012 14:33:16 +0000 (16:33 +0200)]
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).

6 years agoInitial Set of patches which allows the buffer pool allocation from decide_allocation.
Sreerenj Balachandran [Wed, 26 Sep 2012 14:01:43 +0000 (17:01 +0300)]
Initial Set of patches which allows the buffer pool allocation from decide_allocation.
,,, previously it was allocating during parsing. cleanups follows,,,

6 years agoRevert "vaapicontext: re-enable :- use the ref_pic count parsed from the stream to...
Sreerenj Balachandran [Wed, 26 Sep 2012 12:13:44 +0000 (15:13 +0300)]
Revert "vaapicontext: re-enable :- use the ref_pic count parsed from the stream to calculate the size of surfacepool"
,,,revering becaues still noticed some flickering with h264 decoder when using less surfaces in pool
This reverts commit e3721c0081c4a63938b94e290c5b5679e693d5d1.

6 years agovaapidecode: add mpeg version 1 also into the range to help the autoplugging.
Sreerenj Balachandran [Wed, 26 Sep 2012 12:05:50 +0000 (15:05 +0300)]
vaapidecode: add mpeg version 1 also into the range to help the autoplugging.
,,,,otherwise playbin will autoplug s/w decoder. The proper fix is needed in mpegvideoparse...

6 years agovaapicontext: re-enable :- use the ref_pic count parsed from the stream to calculate...
Sreerenj Balachandran [Wed, 26 Sep 2012 12:02:19 +0000 (15:02 +0300)]
vaapicontext: re-enable :- use the ref_pic count parsed from the stream to calculate the size of surfacepool

6 years agovaapidecode: gvd_negotiate is invoking from baseclass during finish_frame(if the...
Sreerenj Balachandran [Sun, 23 Sep 2012 21:30:07 +0000 (00:30 +0300)]
vaapidecode: gvd_negotiate is invoking from baseclass during finish_frame(if the output sate changed). Remove the explicit invokation.

6 years agovaapisink: chain up with parent query function
Sreerenj Balachandran [Sun, 23 Sep 2012 21:28:23 +0000 (00:28 +0300)]
vaapisink: chain up with parent query function

6 years agoh264: review and report errors accordingly.
Gwenole Beauchesne [Fri, 21 Sep 2012 14:43:38 +0000 (16:43 +0200)]
h264: review and report errors accordingly.

Use GST_ERROR() to report real errors instead of hiding them into
GST_DEBUG().

6 years agore-enabling: vaapisink :- Retain VA surface until the next one is displayed Gstreamer-vaapi-1.0__0.1
Sreerenj Balachandran [Fri, 21 Sep 2012 07:45:27 +0000 (10:45 +0300)]
re-enabling: vaapisink :- Retain VA surface until the next one is displayed

6 years agoMerge branch '0.10_basevideodec' into 1.0
Sreerenj Balachandran [Fri, 21 Sep 2012 07:22:41 +0000 (10:22 +0300)]
Merge branch '0.10_basevideodec' into 1.0

Conflicts:
gst-libs/gst/vaapi/gstvaapisurfaceproxy.c
gst/vaapi/gstvaapidecode.c
gst/vaapi/gstvaapiupload.c

6 years agoMerge branch 'gwe_master' into 0.10_basevideodec
Sreerenj Balachandran [Fri, 21 Sep 2012 07:03:51 +0000 (10:03 +0300)]
Merge branch 'gwe_master' into 0.10_basevideodec

Conflicts:
gst-libs/gst/vaapi/gstvaapisurfaceproxy.c
gst/vaapi/gstvaapidecode.c
gst/vaapi/gstvaapidecode.h

6 years agoh264: exclusively use GstAdapter, drop sub-buffer hack.
Gwenole Beauchesne [Thu, 20 Sep 2012 15:58:21 +0000 (17:58 +0200)]
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.

6 years agoREADME: updates.
Gwenole Beauchesne [Thu, 20 Sep 2012 14:18:27 +0000 (16:18 +0200)]
README: updates.

6 years agoNEWS: updates.
Gwenole Beauchesne [Thu, 20 Sep 2012 14:02:39 +0000 (16:02 +0200)]
NEWS: updates.

6 years agovaapisurfacememory: Fix the crash with mpeg2 interlaced decoding.
Sreerenj Balachandran [Thu, 20 Sep 2012 12:54:01 +0000 (15:54 +0300)]
vaapisurfacememory: Fix the crash with mpeg2 interlaced decoding.
,,,,known bugs:
--flickering during interlaced content rendering
--mpeg2 trasport stream is failing to decode when using playbin (after the update to gstreamer-0.11.99)
--video caps is just "video/x-raw" instead of (video/x-surface in 0.10)which wont allow playbin to automatically select vaapidecode unless manually specify "video-sink=vaapisink"

6 years agodebian: fix packaging on recent Ubuntu platforms.
Gwenole Beauchesne [Thu, 20 Sep 2012 12:38:15 +0000 (14:38 +0200)]
debian: fix packaging on recent Ubuntu platforms.

Use explicit GStreamer plugins path.

6 years agovaapipostproc: port to 1.0, Initial commit
Sreerenj Balachandran [Wed, 19 Sep 2012 12:30:38 +0000 (15:30 +0300)]
vaapipostproc: port to 1.0, Initial commit

6 years agovaapiupload: port to 1.0, Initial commit with the following known bugs,
Sreerenj Balachandran [Wed, 19 Sep 2012 07:07:38 +0000 (10:07 +0300)]
vaapiupload: port to 1.0, Initial commit with the following known bugs,
 ---- no direct rendering support
 ---- Miniobject mem leak

6 years agodocs: fix build for make dist.
Gwenole Beauchesne [Mon, 17 Sep 2012 15:55:43 +0000 (17:55 +0200)]
docs: fix build for make dist.

6 years agovaapidownload: Fix type mismatch error
Sreerenj Balachandran [Mon, 17 Sep 2012 15:16:16 +0000 (18:16 +0300)]
vaapidownload: Fix type mismatch error

6 years agowayland: set opaque region for YUV surface.
Kristian Høgsberg [Fri, 14 Sep 2012 14:30:35 +0000 (10:30 -0400)]
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>
6 years agoconfigure: fix check for libva-glx and libva-drm.
Gwenole Beauchesne [Fri, 14 Sep 2012 15:30:19 +0000 (17:30 +0200)]
configure: fix check for libva-glx and libva-drm.

6 years agoglibcompat: add replacement for g_cond_wait_until().
Gwenole Beauchesne [Wed, 12 Sep 2012 11:42:49 +0000 (13:42 +0200)]
glibcompat: add replacement for g_cond_wait_until().

6 years agoplugins: include "sysdeps.h" instead of "config.h".
Gwenole Beauchesne [Wed, 12 Sep 2012 11:41:47 +0000 (13:41 +0200)]
plugins: include "sysdeps.h" instead of "config.h".

6 years agovaapidownload: port to 1.0 - Initial commit
Sreerenj Balachandran [Wed, 12 Sep 2012 11:30:52 +0000 (14:30 +0300)]
vaapidownload: port to 1.0 - Initial commit

6 years agocodecparsers: jpeg: add missing includes.
Gwenole Beauchesne [Wed, 12 Sep 2012 08:40:06 +0000 (10:40 +0200)]
codecparsers: jpeg: add missing includes.

6 years agovaapidecode: don't reset decoder if codec type is the same.
Gwenole Beauchesne [Tue, 11 Sep 2012 15:03:33 +0000 (17:03 +0200)]
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".

6 years agovaapidecode: simplify codec lookup from caps.
Gwenole Beauchesne [Tue, 11 Sep 2012 14:41:32 +0000 (16:41 +0200)]
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.

6 years agovaapidecode: improve "no free surface" conditions.
Gwenole Beauchesne [Tue, 11 Sep 2012 13:54:20 +0000 (15:54 +0200)]
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.

6 years agodecoder: propagate buffer duration downstream.
Gwenole Beauchesne [Tue, 11 Sep 2012 08:59:33 +0000 (10:59 +0200)]
decoder: propagate buffer duration downstream.

6 years agosurfaceproxy: add "duration" property.
Gwenole Beauchesne [Tue, 11 Sep 2012 08:59:10 +0000 (10:59 +0200)]
surfaceproxy: add "duration" property.

6 years agoRe-enable vaapiimagepool to 1.0 :
Sreerenj Balachandran [Tue, 11 Sep 2012 12:41:58 +0000 (15:41 +0300)]
Re-enable vaapiimagepool to 1.0 :
..... added gstvaapiimagememory which will merge with gstvaapisurfacememory later

6 years agoFixe the coflicts during gwe_master merging:
Sreerenj Balachandran [Tue, 11 Sep 2012 08:55:59 +0000 (11:55 +0300)]
Fixe the coflicts during gwe_master merging:

6 years agoMerge branch '0.10_basevideodec' into 1.0
Sreerenj Balachandran [Tue, 11 Sep 2012 08:46:49 +0000 (11:46 +0300)]
Merge branch '0.10_basevideodec' into 1.0

Conflicts:
gst-libs/gst/vaapi/Makefile.am
gst-libs/gst/vaapi/gstvaapicontext.c
gst-libs/gst/vaapi/gstvaapivideopool.c
gst/vaapi/gstvaapidecode.c
gst/vaapi/gstvaapisink.c

6 years agoMerge branch 'gwe_master' into 0.10_basevideodec
Sreerenj Balachandran [Tue, 11 Sep 2012 08:11:41 +0000 (11:11 +0300)]
Merge branch 'gwe_master' into 0.10_basevideodec

Conflicts:
gst/vaapi/gstvaapidecode.c

6 years agodecoder: cope with new GstVaapiContextInfo based API.
Gwenole Beauchesne [Mon, 10 Sep 2012 16:26:51 +0000 (18:26 +0200)]
decoder: cope with new GstVaapiContextInfo based API.

Update decoders to report the maximum number of reference frames to use.

6 years agocontext: JPEG codec does not need any reference frame.
Gwenole Beauchesne [Mon, 10 Sep 2012 16:17:10 +0000 (18:17 +0200)]
context: JPEG codec does not need any reference frame.

6 years agocontext: allow number of reference frames to be set.
Gwenole Beauchesne [Mon, 10 Sep 2012 16:15:02 +0000 (18:15 +0200)]
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.

6 years agovaapisink: re-enable video-overlay-composition support to vaapisink.
Sreerenj Balachandran [Mon, 10 Sep 2012 14:58:27 +0000 (17:58 +0300)]
vaapisink: re-enable video-overlay-composition support to vaapisink.

6 years agoAdd GstVaapiSurfaceMeta: New metadata interface initial implementation
Sreerenj Balachandran [Mon, 10 Sep 2012 11:38:45 +0000 (14:38 +0300)]
Add GstVaapiSurfaceMeta: New metadata interface initial implementation

6 years agovaapipostproc: fix deinterlace-{mode,method} types definition.
Gwenole Beauchesne [Fri, 7 Sep 2012 14:41:16 +0000 (16:41 +0200)]
vaapipostproc: fix deinterlace-{mode,method} types definition.

6 years agompeg4: fix debug info for unsupported profile.
Gwenole Beauchesne [Fri, 7 Sep 2012 14:15:40 +0000 (16:15 +0200)]
mpeg4: fix debug info for unsupported profile.

6 years agolibs: fix build in strict ISO C mode.
Gwenole Beauchesne [Fri, 7 Sep 2012 14:14:11 +0000 (16:14 +0200)]
libs: fix build in strict ISO C mode.

6 years agoplugins: fix build in strict ISO C mode.
Gwenole Beauchesne [Fri, 7 Sep 2012 14:11:12 +0000 (16:11 +0200)]
plugins: fix build in strict ISO C mode.

6 years agogstvaapiimageformat: use GstVideoFormat efficiently .
Sreerenj Balachandran [Fri, 7 Sep 2012 14:05:20 +0000 (17:05 +0300)]
gstvaapiimageformat: use GstVideoFormat efficiently .

6 years agopkgconfig: fix dependencies and slightly improve description.
Gwenole Beauchesne [Fri, 7 Sep 2012 13:31:09 +0000 (15:31 +0200)]
pkgconfig: fix dependencies and slightly improve description.

Drop @LIBVA_EXTRA_{CFLAGS,LIBS}@ substitutions and slightly improve
descriptions with clearer renderer names.

6 years agovaapidecode: acquire lock only if the mutex exists.
Philip Lorenz [Tue, 4 Sep 2012 11:54:19 +0000 (13:54 +0200)]
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>
6 years agoAdd some code path to check whether the pool has free surfaces available.
Sreerenj Balachandran [Fri, 7 Sep 2012 09:59:48 +0000 (12:59 +0300)]
Add some code path to check whether the pool has free surfaces available.
...(not enabled for now, since it might be bit expensive to check it during parse())

6 years agodecoder: drop extraneous return for void function.
Gwenole Beauchesne [Fri, 7 Sep 2012 09:58:53 +0000 (11:58 +0200)]
decoder: drop extraneous return for void function.

6 years agoimage: don't use (void *) pointer arithmetic.
Gwenole Beauchesne [Fri, 7 Sep 2012 09:57:59 +0000 (11:57 +0200)]
image: don't use (void *) pointer arithmetic.

6 years agoDo not forward declare enums.
Philip Lorenz [Tue, 4 Sep 2012 11:40:04 +0000 (13:40 +0200)]
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>
6 years agoconfigure: fix check for VA/DRM API.
Gwenole Beauchesne [Fri, 7 Sep 2012 09:44:44 +0000 (11:44 +0200)]
configure: fix check for VA/DRM API.

6 years agovaapidecoder: set the buffer_pool config params from decide_allocation
Sreerenj Balachandran [Fri, 7 Sep 2012 08:18:07 +0000 (11:18 +0300)]
vaapidecoder: set the buffer_pool config params from decide_allocation

6 years agoMerge branch 'gwe_master' into 0.10_basevideodec
Sreerenj Balachandran [Fri, 7 Sep 2012 07:23:33 +0000 (10:23 +0300)]
Merge branch 'gwe_master' into 0.10_basevideodec

6 years agoMerge branch '0.10_basevideodec' of gitorious.org:~sreerenj/vaapi/sree-gstreamer...
Sreerenj Balachandran [Fri, 7 Sep 2012 07:21:57 +0000 (10:21 +0300)]
Merge branch '0.10_basevideodec' of gitorious.org:~sreerenj/vaapi/sree-gstreamer-vaapi into 0.10_basevideodec

6 years agovaapidecoder_object: use gst_vaapi_context_put_surface_buffer() instead of the
Sreerenj Balachandran [Thu, 6 Sep 2012 13:33:03 +0000 (16:33 +0300)]
vaapidecoder_object: use gst_vaapi_context_put_surface_buffer() instead of the
direct invocation of gst_buffer_pool_release_buffer

6 years agoset the parent context for the surface during surface_buffer acquire
Sreerenj Balachandran [Thu, 6 Sep 2012 13:26:33 +0000 (16:26 +0300)]
set the parent context for the surface during surface_buffer acquire
and set the parent context of surface to NULL during surface_buffer releasing.

6 years agoMore fixes....
Sreerenj Balachandran [Thu, 6 Sep 2012 12:19:50 +0000 (15:19 +0300)]
More fixes....

6 years agovaapisink: fix calculation of window size.
Gwenole Beauchesne [Tue, 4 Sep 2012 09:53:18 +0000 (11:53 +0200)]
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.

6 years agovaapisink: add video rotation support.
Wind Yuan [Tue, 28 Aug 2012 06:45:22 +0000 (02:45 -0400)]
vaapisink: add video rotation support.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
6 years agopluginutils: add G_PRIMITIVE_SWAP() helper macro.
Gwenole Beauchesne [Thu, 6 Sep 2012 09:47:40 +0000 (11:47 +0200)]
pluginutils: add G_PRIMITIVE_SWAP() helper macro.

This macro helps swapping variables while maintaining the correct underlying
and primitive type.

6 years agodisplay: fix display aspect ratio when display is rotated.
Gwenole Beauchesne [Thu, 6 Sep 2012 09:51:41 +0000 (11:51 +0200)]
display: fix display aspect ratio when display is rotated.

6 years agodisplay: fix physical display size when display is rotated.
Gwenole Beauchesne [Thu, 6 Sep 2012 09:50:21 +0000 (11:50 +0200)]
display: fix physical display size when display is rotated.

6 years agovaapidecode: call gst_video_decoder_negotiate() if any of the caps field changes.
Sreerenj Balachandran [Thu, 6 Sep 2012 10:09:52 +0000 (13:09 +0300)]
vaapidecode: call gst_video_decoder_negotiate() if any of the caps field changes.

6 years agovaapidecode: make the caps writable
Sreerenj Balachandran [Thu, 6 Sep 2012 08:29:58 +0000 (11:29 +0300)]
vaapidecode: make the caps writable

6 years agompeg2: implement start() and stop() virtual methods
Sreerenj Balachandran [Thu, 6 Sep 2012 07:43:57 +0000 (10:43 +0300)]
mpeg2: implement start() and stop() virtual methods

6 years agovaapidecoder: Makesure that the decoder!=NULL during start() and stop() vmethods.
Sreerenj Balachandran [Thu, 6 Sep 2012 07:31:35 +0000 (10:31 +0300)]
vaapidecoder: Makesure that the decoder!=NULL during start() and stop() vmethods.
..... current implementation is creating decoders only during set_format() invocation.

6 years agoAdd proxy for start() and stop() virtual method of basedecoder
Sreerenj Balachandran [Wed, 5 Sep 2012 15:03:32 +0000 (18:03 +0300)]
Add proxy for start() and stop() virtual method of basedecoder

-- it requires in cases like reactivating bufferpool because of pad reconfigure.

6 years agojpeg: jpeg decoding is working in 1.0 with a custom patch in basedecoder.This depende...
Sreerenj Balachandran [Wed, 5 Sep 2012 12:46:45 +0000 (15:46 +0300)]
jpeg: jpeg decoding is working in 1.0 with a custom patch in basedecoder.This dependency will go away once we implement proper structuring for decide_allocation().

6 years agoh264: some tweaks and h264 decoder is ready to test in 1.0 :)
Sreerenj Balachandran [Wed, 5 Sep 2012 08:55:18 +0000 (11:55 +0300)]
h264: some tweaks and h264 decoder is ready to test in 1.0  :)

6 years agovc1: minor fixes and vc1 decoder is ready to test in 1.0 :)
Sreerenj Balachandran [Tue, 4 Sep 2012 13:42:09 +0000 (16:42 +0300)]
vc1: minor fixes and vc1 decoder is ready to test in 1.0  :)

6 years agoProper structuring and code maturisation started:
Sreerenj Balachandran [Tue, 4 Sep 2012 12:35:28 +0000 (15:35 +0300)]
Proper structuring and code maturisation started:

-- restructing apis a bit more
-- remove g_messages()
-- and more fixes

6 years agoinitial prototype: progressive mpeg2 decoding in 1.0 environment is working now.
Sreerenj Balachandran [Tue, 4 Sep 2012 12:12:18 +0000 (15:12 +0300)]
initial prototype: progressive mpeg2 decoding in 1.0 environment is working now.

6 years agobasic structure is ready: gst-inspect-1.0 vaapidecode, vaapisink working.
Sreerenj Balachandran [Mon, 3 Sep 2012 11:00:25 +0000 (14:00 +0300)]
basic structure is ready: gst-inspect-1.0 vaapidecode, vaapisink working.

6 years agodisplay: fix GstVaapiRotation enumeration of values.
Gwenole Beauchesne [Thu, 30 Aug 2012 14:27:56 +0000 (16:27 +0200)]
display: fix GstVaapiRotation enumeration of values.

6 years agovaapisink: drop obsolete GstVaapiVideoSink interface.
Gwenole Beauchesne [Wed, 29 Aug 2012 11:18:05 +0000 (13:18 +0200)]
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.

6 years agovaapisink: automatically detect overlay rendering mode.
Gwenole Beauchesne [Mon, 27 Aug 2012 15:34:27 +0000 (18:34 +0300)]
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.

6 years agovaapisink: retain VA surface until another one is displayed.
Gwenole Beauchesne [Fri, 24 Aug 2012 13:30:33 +0000 (16:30 +0300)]
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.

6 years agovaapisink: fix build with older toolchains.
Gwenole Beauchesne [Fri, 24 Aug 2012 11:54:16 +0000 (14:54 +0300)]
vaapisink: fix build with older toolchains.

Don't re-declare GstVaapiTexture if USE_GLX mode is set.

6 years agodisplay: partially revert 8ebe4d6.
Gwenole Beauchesne [Wed, 29 Aug 2012 08:13:58 +0000 (10:13 +0200)]
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.

6 years agoMerge branch '0.10_basevideodec' into 1.0
Sreerenj Balachandran [Wed, 29 Aug 2012 06:25:56 +0000 (09:25 +0300)]
Merge branch '0.10_basevideodec' into 1.0