gstreamer/sys/applemedia
Ilya Konstantinov 936b2fdfbc applemedia: implement GstAppleCoreVideoMemory
Implement a new memory type wrapping CVPixelBuffer.

There are two immediate advantages:
 a) Make the GstMemory itself retain the CVPixelBuffer. Previously,
    the containing GstBuffer was solely responsible for the lifetime of
    the backing CVPixelBuffer.

    With this change, we remove the GST_MEMORY_FLAG_NO_SHARE so that
    GstMemory objects be referenced by multiple GstBuffers (doing away
    with the need to copy.)

  b) Delay locking CVPixelBuffer into CPU memory until it's actually
     mapped -- possibly never.

The CVPixelBuffer object is shared among references, shares and
(in planar formats) planes, so a wrapper GstAppleCoreVideoPixelBuffer
structure was introduced to manage locking.

https://bugzilla.gnome.org/show_bug.cgi?id=747216
2016-01-19 12:58:43 +11:00
..
atdec.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
atdec.h atdec: Implement draining properly 2014-03-11 15:33:26 +01:00
avfassetsrc.h iosavassetsrc: rename element to avfassetsrc 2014-04-24 12:28:17 +02:00
avfassetsrc.m plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
avfvideosrc.h applemedia: update contact information 2013-02-16 02:51:52 +01:00
avfvideosrc.m applemedia: avfvideosrc: optionally get the GL context from gst_element_set_context 2016-01-12 14:36:02 +11:00
avsamplevideosink.h applemedia/avsamplesink: utilise a pull based approach of displaying video frames 2015-03-04 14:48:03 +11:00
avsamplevideosink.m applemedia/avsample: Fix racy cleanup of CA layer 2015-07-31 12:59:00 +10:00
coremediabuffer.c applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
coremediabuffer.h applemedia: don't call CVPixelBufferLockBaseAddress when doing texture sharing 2015-01-30 00:34:08 +11:00
corevideobuffer.c applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
corevideobuffer.h applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
corevideomemory.c applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
corevideomemory.h applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
iosassetsrc.h iosassetsrc: Port to 1.0 and fix some bugs on the way 2013-09-28 20:36:21 +02:00
iosassetsrc.m plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
iosurfacememory.c applemedia: iosurfacememory: alloc with g_new0 2016-01-19 12:56:40 +11:00
iosurfacememory.h applemedia: vtdec: switch to IOSurface on Mac 2015-12-16 17:03:03 +11:00
Makefile.am applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
plugin.m applemedia: implement GstAppleCoreVideoMemory 2016-01-19 12:58:43 +11:00
qtkitvideosrc.h applemedia: update contact information 2013-02-16 02:51:52 +01:00
qtkitvideosrc.m applemedia: corevideobuffer: make mapping the CVPixelBuffer in CPU optional 2015-01-30 00:34:08 +11:00
videotexturecache.h applemedia: vtdec: remove the internal GstGLColorConvert 2015-12-16 17:03:03 +11:00
videotexturecache.m glmemory: add gst_gl_memory_allocator_get_default 2015-12-18 14:25:32 +11:00
vtdec.c applemedia: vtdec: fix texture-target on iOS 2015-12-16 17:03:04 +11:00
vtdec.h applemedia: rename GstCoreVideoTextureCache to GstVideoTextureCache 2015-12-16 17:03:03 +11:00
vtenc.c applemedia: vtenc: accept UYVY on Mac 2016-01-06 11:43:37 +11:00
vtenc.h vtenc: fix keyframe request race condition 2015-06-01 13:32:03 +02:00
vtutil.c atdec: Set correct number of frames for MP3 2014-03-11 15:33:25 +01:00
vtutil.h applemedia: replace private function with its public variant 2013-05-20 13:31:02 +02:00