gstreamer/sys/applemedia
Ilya Konstantinov bfa054a733 vtdec: handle non-consecutive GstBuffer input without copying
CMBlockBuffer offers a model similar to GstBuffer, as it can
consist of multiple non-consecutive memory blocks.

Prior to this change, what we were doing was:

 1) Incorrect:

   CMBlockBufferCreateWithMemoryBlock does not copy the data,
   but we gst_buffer_unmap'd right away.

 2) Inefficient:

   If the GstBuffer consisted of non-contiguous memory blocks,
   gst_buffer_map resulted in malloc / memcpy.

With this change, we construct a CMBlockBuffer out of individual mapped
GstMemory objects. CMBlockBuffer is made to retain the GstMemory
objects (through the use of CMBlockBufferCustomBlockSource), so the
original GstBuffer can be unref'd.

https://bugzilla.gnome.org/show_bug.cgi?id=751241
2015-07-13 11:11:04 -04:00
..
atdec.c atdec: Fix some compiler warnings with newer clang 2014-09-17 17:37:12 +03: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 avfassetsrc: fix huge memory leak 2015-06-09 16:36:41 +02:00
avfvideosrc.h applemedia: update contact information 2013-02-16 02:51:52 +01:00
avfvideosrc.m avfvideosrc: add frame rate range to caps 2015-06-22 18:22:57 +02: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 unconditional use of OSX 10.10 API 2015-07-13 23:26:14 +10:00
coremediabuffer.c applemedia: enable sharing of CMBlockBuffer data 2015-06-25 10:49:05 +02:00
coremediabuffer.h applemedia: don't call CVPixelBufferLockBaseAddress when doing texture sharing 2015-01-30 00:34:08 +11:00
corevideobuffer.c applemedia: corevideobuffer: make mapping the CVPixelBuffer in CPU optional 2015-01-30 00:34:08 +11:00
corevideobuffer.h applemedia: corevideobuffer: make mapping the CVPixelBuffer in CPU optional 2015-01-30 00:34:08 +11:00
corevideotexturecache.h applemedia: avoid implicit color conversions 2015-04-20 17:09:58 +10:00
corevideotexturecache.m applemedia: avoid implicit color conversions 2015-04-20 17:09:58 +10: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 docs: decodebin2 -> decodebin 2015-06-25 11:02:45 +01:00
Makefile.am applemedia: new AVSampleBufferLayerSink 2015-02-24 19:12:10 +11:00
plugin.m vtdec: fix build error with clang 2015-04-26 19:23:06 +02: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
vtdec.c vtdec: handle non-consecutive GstBuffer input without copying 2015-07-13 11:11:04 -04:00
vtdec.h vtdec: Register a hardware-only vtdec_hw on OSX and give it a higher rank 2015-03-07 10:31:26 +01:00
vtenc.c vtenc: always enqueue frames, even on error 2015-06-10 22:23:06 +02: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