[Bug 731204] androidmedia: Implement zerocopy rendering
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Jun 25 03:46:24 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=731204
GStreamer | gst-plugins-bad | git
--- Comment #22 from Andoni Morales <ylatuya at gmail.com> 2014-06-25 10:46:19 UTC ---
(In reply to comment #21)
> Created an attachment (id=279210)
View: https://bugzilla.gnome.org/attachment.cgi?id=279210
Review: https://bugzilla.gnome.org/review?bug=731204&attachment=279210
> androidmedia: add direct rendering support to amcvideodec
>
> New version of the patch which uses the bufferpool proposed by glimagesink.
>
> Amcvideodec takes care of rendering the surface to an external OES texture
> which is then converted to a 2D texture / RGBA.
>
> There is still some issue to be addressed:
>
> 1) playback is not smooth, it looks like some previous texture are redisplayed.
> It's even more visible when the gl bufferpool is forced to use only 2 buffers.
> Note that the whole rendering (update OES texture -> render to 2D / RGBA) is
> done within 2ms to 6ms.
The surface texture notifies when the frame is ready with
OnFrameAvailableListener, so you need to do the texture copy in this callback.
http://developer.android.com/reference/android/graphics/SurfaceTexture.OnFrameAvailableListener.html
Add an event listener with JNI is tricky, at least I don't know an easy way of
doing it. You will need a subclass of SurfaceTexture in GStreamer.java that
listens to OnFrameAvailableListener and call the real C code callback that
copies the texture from there.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list