platform/upstream/gstreamer.git
10 years agoiosavassetsrc: Port to 1.0
Matthieu Bouron [Thu, 3 Apr 2014 13:02:18 +0000 (14:02 +0100)]
iosavassetsrc: Port to 1.0

Also enables this element on OSX >= 10.7.

https://bugzilla.gnome.org/show_bug.cgi?id=728249

10 years agoapplemedia: add new source/decoder element for iOS assets
Andoni Morales Alastruey [Sat, 11 May 2013 01:41:36 +0000 (03:41 +0200)]
applemedia: add new source/decoder element for iOS assets

https://bugzilla.gnome.org/show_bug.cgi?id=728249

10 years agocoremediabuffer: handle stride alignment
Matthieu Bouron [Wed, 9 Apr 2014 09:55:03 +0000 (10:55 +0100)]
coremediabuffer: handle stride alignment

Handle stride alignment through the use of the video meta API. The
code is based on the corevideobuffer implementation.

If the video meta API is not supported and the underlying buffer
contains padding, the core media buffer is copied to a system memory
buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=727885

10 years agoavfvideosrc: check if downstream supports the video meta API
Matthieu Bouron [Wed, 9 Apr 2014 10:47:12 +0000 (11:47 +0100)]
avfvideosrc: check if downstream supports the video meta API

Check if downstream supports the video meta API, so we can use it later
with the core media buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=727953

10 years agogl/cocoa: pass a NSView to set_window_handle instead of a NSWindow
Julien Isorce [Thu, 24 Apr 2014 09:37:00 +0000 (10:37 +0100)]
gl/cocoa: pass a NSView to set_window_handle instead of a NSWindow

Fix backwards compatibility

https://bugzilla.gnome.org/show_bug.cgi?id=728451

10 years agogl/cocoa: only draw once the window has been resized
Julien Isorce [Thu, 24 Apr 2014 08:03:32 +0000 (09:03 +0100)]
gl/cocoa: only draw once the window has been resized

It avoids to draw the first frame with an incorrect view port.

10 years agogl/cocoa: set the view to use for drawing by the context
Julien Isorce [Thu, 24 Apr 2014 07:49:54 +0000 (08:49 +0100)]
gl/cocoa: set the view to use for drawing by the context

It avoids to draw to an invalid buffer.
Withtout this the default frame buffer is undefined:
glBindFramebuffer (GL_FRAMEBUFFER, 0)

Visually you could see some white frames at the beginning
when lunching videotestsrc ! glimagesink

With OpenGL Profiler from XCode you could see some
GL_INVALID_FRAMEBUFFER_OPERATION for the first frames

10 years agogl: fix declaration-definition mismatch for _init_upload
Julien Isorce [Wed, 23 Apr 2014 13:41:21 +0000 (14:41 +0100)]
gl: fix declaration-definition mismatch for _init_upload

10 years agogl/bufferpool: do not reset upload when set_config does not change the caps
Julien Isorce [Wed, 23 Apr 2014 12:34:12 +0000 (13:34 +0100)]
gl/bufferpool: do not reset upload when set_config does not change the caps

With videotestsrc ! glimagesink it was reset 3 times

10 years agogl: use #ifdef instead of #if for __APPLE__
Julien Isorce [Wed, 23 Apr 2014 12:30:27 +0000 (13:30 +0100)]
gl: use #ifdef instead of #if for __APPLE__

warning: "__APPLE__" is not defined [-Wundef]

with gcc version 4.7.2 20120731 (prerelease)
    (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08)

10 years agoglmemory: User g_slice_new0 to ensure fully initilized structure
Nicolas Dufresne [Wed, 23 Apr 2014 16:42:32 +0000 (12:42 -0400)]
glmemory: User g_slice_new0 to ensure fully initilized structure

The pbo pointer not being initialized would trigger a use of unitilialized variable
in valgrind.

10 years agodecklink: Fix support for HW without output
Nicolas Dufresne [Sat, 29 Mar 2014 22:34:26 +0000 (18:34 -0400)]
decklink: Fix support for HW without output

Devices suitable for decklinksrc may not have any output, hence querying
the input returns NULL. Add support for all cases where
input/output/config may be missing.

https://bugzilla.gnome.org/show_bug.cgi?id=727306

10 years agoy4mdec: check for VIDEO meta instead of CROP meta
Nicolas Dufresne [Sat, 15 Mar 2014 14:17:43 +0000 (15:17 +0100)]
y4mdec: check for VIDEO meta instead of CROP meta

This element only need stride support, but checks for CROP_META, which
is a bit too much, even though this works as CROP imply having VIDEO
meta.

https://bugzilla.gnome.org/show_bug.cgi?id=726255

10 years agoglimagesink: Use the pixel-aspect-ratio adjusted width/height when centering the...
Sebastian Dröge [Wed, 23 Apr 2014 09:10:28 +0000 (11:10 +0200)]
glimagesink: Use the pixel-aspect-ratio adjusted width/height when centering the frame in the display area

Makes sure we actually keep the display aspect ratio

10 years agoglimagesink: By default keep the display aspect ratio
Sebastian Dröge [Wed, 23 Apr 2014 08:55:38 +0000 (10:55 +0200)]
glimagesink: By default keep the display aspect ratio

Also the default for the pixel-aspect-ratio should be 1/1, not 0/1.

10 years agompegpsdemux: Flush program end code bytes
Edward Hervey [Wed, 23 Apr 2014 08:42:45 +0000 (10:42 +0200)]
mpegpsdemux: Flush program end code bytes

This should not harm regular files, since those are the last 4 bytes of
a normal file.

This allows to handle playback of concatenated mpeg-ps files. Seeking and
duration reporting is still wrong though.

10 years agogltestsrc: Unref context when creation failed and guard against that in fill()
Sebastian Dröge [Wed, 23 Apr 2014 08:27:23 +0000 (10:27 +0200)]
gltestsrc: Unref context when creation failed and guard against that in fill()

10 years agoglimagesink: Call gst_object_unref() on the GstGL GObjects again
Sebastian Dröge [Wed, 23 Apr 2014 08:24:55 +0000 (10:24 +0200)]
glimagesink: Call gst_object_unref() on the GstGL GObjects again

While they're plain GObjects it does not hurt to call gst_object_unref()
on them and potentially allows to debug reference leaks a bit easier.

10 years agoglimagesink: If creating a context or upload failed, destroy it
Sebastian Dröge [Wed, 23 Apr 2014 08:00:48 +0000 (10:00 +0200)]
glimagesink: If creating a context or upload failed, destroy it

Fixes deadlocks in error cases when later code assumes the broken
context is actually usable.

https://bugzilla.gnome.org/show_bug.cgi?id=728761

10 years agompegtspacketizer: Remove dead code and simplify if statement
Sebastian Dröge [Tue, 22 Apr 2014 10:56:54 +0000 (12:56 +0200)]
mpegtspacketizer: Remove dead code and simplify if statement

CID 1204274

10 years agomxf: fix MP2 case
Vincent Penquerc'h [Mon, 21 Apr 2014 12:15:34 +0000 (13:15 +0100)]
mxf: fix MP2 case

Testing mpegversion when mpegaudioversion was likely meant.

Similar tests in sys/androidmedia/gstamcaudiodec.c also test
mpegaudioversion with the same conditional code.

Coverity 206071

10 years agovc1parse: guard against dividing by zero
Vincent Penquerc'h [Mon, 21 Apr 2014 09:36:55 +0000 (10:36 +0100)]
vc1parse: guard against dividing by zero

If framerate is unknown, we write the maximum framerate
allowed for this profile/level:

https://tools.ietf.org/html/draft-ietf-avt-rtp-vc1-06#section-6.1
http://wiki.multimedia.cx/index.php?title=VC-1#Setup_Data_.2F_Sequence_Layer

Coverity 1139694

10 years agomxfmux: guard against dividing by 0
Vincent Penquerc'h [Mon, 21 Apr 2014 09:07:06 +0000 (10:07 +0100)]
mxfmux: guard against dividing by 0

Use a placeholder value in that case, it's better than crashing.

Coverity 1139697

10 years agogl: a couple spelling/grammar fixes
Vincent Penquerc'h [Mon, 21 Apr 2014 08:51:19 +0000 (09:51 +0100)]
gl: a couple spelling/grammar fixes

10 years agogl: guard against using a NULL window pointer
Vincent Penquerc'h [Mon, 21 Apr 2014 08:50:19 +0000 (09:50 +0100)]
gl: guard against using a NULL window pointer

Coverity 1195145

10 years agogl: prevent division by 0 on unsupported texture type
Vincent Penquerc'h [Mon, 21 Apr 2014 08:47:08 +0000 (09:47 +0100)]
gl: prevent division by 0 on unsupported texture type

Coverity 1199697

10 years agoglcolorconvert: Fix bt709 conversion matrices.
Jan Schmidt [Mon, 21 Apr 2014 12:01:47 +0000 (22:01 +1000)]
glcolorconvert: Fix bt709 conversion matrices.

Fix the sign on one entry in the bt.709 YUV->RGB conversion
matrix, and the corresponding inverse matrix. Fixes really
wrong colouring of some videos.

10 years agodvbbasebin: fix test for proper use count balancing
Vincent Penquerc'h [Thu, 17 Apr 2014 08:58:47 +0000 (09:58 +0100)]
dvbbasebin: fix test for proper use count balancing

usecount is unsigned, so too many "unuse" will wrap the counter
around and the >= 0 check will always be fine.

It would be much simpler to just make the counter signed, but
moving the checks where the decrements happen allow a mistake
to be detected earlier, and thus easier to debug.

Coverity 1139791

10 years agomxfdemux: guard against NULL non source components
Vincent Penquerc'h [Thu, 17 Apr 2014 08:35:37 +0000 (09:35 +0100)]
mxfdemux: guard against NULL non source components

This component is dereferenced, and later code checking for
NULL in particular cases implies it can be NULL. This likely
does not fix the coverity warning as it was seeing another
path setting component to NULL explicitely, but this was
spotted by looking at:

Coverity 1139736

Which is actually OK from what I can see since the actual
dereference of the explicit NULL pointer will not happen
if the condition that led to the NULL pointer assignment
is met, since the assignment and defeference have mutually
exclusive tests.

10 years agorawparse: catch errors in caps manipulation
Vincent Penquerc'h [Thu, 17 Apr 2014 08:26:20 +0000 (09:26 +0100)]
rawparse: catch errors in caps manipulation

Coverity 1139622

10 years agovtenc: fix complier error using fixed lenght arrays
Andoni Morales Alastruey [Fri, 18 Apr 2014 18:12:37 +0000 (20:12 +0200)]
vtenc: fix complier error using fixed lenght arrays

10 years agoivfparse: detect and propagate resolution changes.
Gwenole Beauchesne [Fri, 18 Apr 2014 16:12:36 +0000 (18:12 +0200)]
ivfparse: detect and propagate resolution changes.

Detect resolution changes on key frames, and propagate the resulting
caps to the src pad. Only the uncompressed data chunk is decoded, so
avoid using the new VP8 bitstream parsing library for now.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agoivfparse: avoid possible division-by-zero when calculating PTS.
Gwenole Beauchesne [Fri, 18 Apr 2014 15:34:08 +0000 (17:34 +0200)]
ivfparse: avoid possible division-by-zero when calculating PTS.

Avoid possible division-by-zero while deriving the presentation timestamp
of the buffer. The base class will take care of any interpolation needs.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agoivfparse: enable build.
Halley Zhao [Thu, 24 Oct 2013 23:38:53 +0000 (07:38 +0800)]
ivfparse: enable build.

Drop `ivfparse' element from the non-ported set of plugins in configure.

10 years agoivfparse: port to baseparse.
Gwenole Beauchesne [Tue, 4 Mar 2014 14:46:58 +0000 (15:46 +0100)]
ivfparse: port to baseparse.

https://bugzilla.gnome.org/show_bug.cgi?id=710855

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agotests: add standalone program for VP8 parser.
Zhao, Halley [Fri, 24 Jan 2014 00:37:16 +0000 (08:37 +0800)]
tests: add standalone program for VP8 parser.

Add standalone test application that demonstrates how to use the new
VP8 bitstream parsing library, while also allowing simple debugging/
tracing of IVF files.

[clean-ups, updated to new parser API]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agotests: add test for VP8 bitstream parsing library.
Zhao, Halley [Tue, 7 Jan 2014 18:49:00 +0000 (02:49 +0800)]
tests: add test for VP8 bitstream parsing library.

[updated to new parser API]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: vp8: rename dboolhuff symbols.
Sebastian Dröge [Wed, 9 Apr 2014 07:22:02 +0000 (09:22 +0200)]
codecparsers: vp8: rename dboolhuff symbols.

Rename VP8 dboolhuff symbols so that to avoid clashes with libvpx when
static linking.

10 years agocodecparsers: vp8: add GStreamer native utilities.
Gwenole Beauchesne [Tue, 8 Apr 2014 08:30:09 +0000 (10:30 +0200)]
codecparsers: vp8: add GStreamer native utilities.

Import libvpx 1.3.0 range decoder files (dboolhuff.[ch]) to implement
the VP8 utilities native interface. Likewise, copy and use the default
libvpx generated entropy probabilities tables.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: add VP8 bitstream parser.
Zhao, Halley [Tue, 7 Jan 2014 18:49:00 +0000 (02:49 +0800)]
codecparsers: add VP8 bitstream parser.

https://bugzilla.gnome.org/show_bug.cgi?id=722760

[refactored, among other fixes]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agompegtspacketizer: Improve ts_to_offset code
Edward Hervey [Fri, 18 Apr 2014 14:23:43 +0000 (16:23 +0200)]
mpegtspacketizer: Improve ts_to_offset code

* Search in current pending values first. For CBR streams we can very
  easily end up having just one initial observations and then nothing
  else (since the bitrate doesn't change).
* Use one group whether we are in that group *OR* if there is only
  one group.
* If the group to use isn't closed (points are being accumulated in the
  PCROffsetCurrent), use the latest data available for calculation
* If in the unlikelyness that all of this *still* didn't produce more
  than one data point, just return the initial offset

10 years agotsdemux: Fix scaling macros
Edward Hervey [Fri, 18 Apr 2014 14:20:31 +0000 (16:20 +0200)]
tsdemux: Fix scaling macros

While the calculation done in these macros will work with 64bit
integers, they will fail if working with 32bit integers.

Force the scaling up to solve that.

This amazingly didn't introduce major issues up to now, but resulted
in bogus values in debug logs.

10 years agompegtsbase: Don't hard-flush the packetizer on discont buffers
Edward Hervey [Fri, 18 Apr 2014 14:18:01 +0000 (16:18 +0200)]
mpegtsbase: Don't hard-flush the packetizer on discont buffers

Doing a hard flush on the packetizer will drop all observations, which
will eventually break push-based seeking (with BYTES segment) since
we won't know where to seek to anymore (new data would always be
considered as the beginning of the stream).

10 years agomxfdemux: Fix copy/paste error
Edward Hervey [Wed, 16 Apr 2014 14:25:29 +0000 (16:25 +0200)]
mxfdemux: Fix copy/paste error

We want to check whether the rate is different. We check changes in
numerator *and* denominator.

CID #1139631
CID #1139642

10 years agomxf: Handle fraction parsing failure
Edward Hervey [Wed, 16 Apr 2014 14:19:47 +0000 (16:19 +0200)]
mxf: Handle fraction parsing failure

And properly cleanup/reset the segment before returning on errors

CID #206012

10 years agomxf: Remove useless check
Edward Hervey [Wed, 16 Apr 2014 14:12:02 +0000 (16:12 +0200)]
mxf: Remove useless check

a guint will always smaller or equal to the maximum value it can
contain

CID #206049

10 years agomxf: avoid dereferencing NULL mapping data pointer
Vincent Penquerc'h [Wed, 9 Apr 2014 11:27:16 +0000 (12:27 +0100)]
mxf: avoid dereferencing NULL mapping data pointer

Also unref buffers on error, as it seems to be done in one, but
not all, error paths.

The NULL pointer part is Coverity 206112

https://bugzilla.gnome.org/show_bug.cgi?id=727889

10 years agodvb: Fix if() check
Edward Hervey [Wed, 16 Apr 2014 14:07:17 +0000 (16:07 +0200)]
dvb: Fix if() check

introduced by my previous commit :(

10 years agoconfigure: Detect EGL header presence
Edward Hervey [Wed, 16 Apr 2014 13:43:06 +0000 (15:43 +0200)]
configure: Detect EGL header presence

Fixes the build for Android, and I suspect for other systems too...

10 years agodvb/camsession: Don't do operations on unexisting sessions
Edward Hervey [Wed, 16 Apr 2014 13:37:57 +0000 (15:37 +0200)]
dvb/camsession: Don't do operations on unexisting sessions

CID #206114

10 years agodvb: Handle socket() failure
Edward Hervey [Wed, 16 Apr 2014 13:32:32 +0000 (15:32 +0200)]
dvb: Handle socket() failure

CID #206178

10 years agodvbsrc: Handle failure to get statistics from the device
Edward Hervey [Wed, 16 Apr 2014 13:23:57 +0000 (15:23 +0200)]
dvbsrc: Handle failure to get statistics from the device

Check the ioctl return value and don't output bogus values.

CID #206016

10 years agodvbsrc: Don't close a fd that wasn't open
Edward Hervey [Wed, 16 Apr 2014 13:18:44 +0000 (15:18 +0200)]
dvbsrc: Don't close a fd that wasn't open

We are handling the failure cases in this block where the open failed

CID #206179

10 years agodvbsrc: Don't try to access NULL string
Edward Hervey [Wed, 16 Apr 2014 13:17:03 +0000 (15:17 +0200)]
dvbsrc: Don't try to access NULL string

And refactor the pid setting code to be in its own function for clarity

CID #206374

10 years agompegts: add dvb ca identifier descriptor
Stefan Ringel [Thu, 10 Apr 2014 14:04:21 +0000 (16:04 +0200)]
mpegts: add dvb ca identifier descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727560

10 years agompegts: add scrambling descriptor
Stefan Ringel [Thu, 10 Apr 2014 14:03:07 +0000 (16:03 +0200)]
mpegts: add scrambling descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727560

10 years agompegts: add frequency list descriptor
Stefan Ringel [Thu, 10 Apr 2014 14:02:09 +0000 (16:02 +0200)]
mpegts: add frequency list descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727560

10 years agompegts: add data broadcast id descriptor
Stefan Ringel [Thu, 10 Apr 2014 14:00:50 +0000 (16:00 +0200)]
mpegts: add data broadcast id descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727403

10 years agompegts: add private data specifier descriptor
Stefan Ringel [Thu, 10 Apr 2014 13:59:50 +0000 (15:59 +0200)]
mpegts: add private data specifier descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727403

10 years agodvb: Minor code style fix
Sebastian Dröge [Wed, 16 Apr 2014 07:20:37 +0000 (09:20 +0200)]
dvb: Minor code style fix

10 years agompegts: add parential rating descriptor
Stefan Ringel [Thu, 10 Apr 2014 13:58:55 +0000 (15:58 +0200)]
mpegts: add parential rating descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727403

10 years agompegts: add linkage descriptor
Stefan Ringel [Thu, 10 Apr 2014 13:58:04 +0000 (15:58 +0200)]
mpegts: add linkage descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=727403

10 years agompegts: for loop initial declarations are only allowed in C99 mode
Tim-Philipp Müller [Tue, 15 Apr 2014 23:25:51 +0000 (00:25 +0100)]
mpegts: for loop initial declarations are only allowed in C99 mode

Fixes compiler warnings.

10 years agoegl: Add libgstegl and eglgles plugin to the CRUFT directories
Sebastian Dröge [Tue, 15 Apr 2014 18:47:55 +0000 (20:47 +0200)]
egl: Add libgstegl and eglgles plugin to the CRUFT directories

10 years agoegl/eglglessink: remove since EGLImage and iOS support have been added in glimagesink
Julien Isorce [Tue, 15 Apr 2014 16:58:34 +0000 (17:58 +0100)]
egl/eglglessink: remove since EGLImage and iOS support have been added in glimagesink

https://bugzilla.gnome.org/show_bug.cgi?id=703343

10 years agogl: allow to include GLES/gl.h
Julien Isorce [Mon, 24 Mar 2014 12:08:43 +0000 (12:08 +0000)]
gl: allow to include GLES/gl.h

https://bugzilla.gnome.org/show_bug.cgi?id=703343

10 years agowayland: Remove dead assignment
Edward Hervey [Mon, 14 Apr 2014 05:56:16 +0000 (07:56 +0200)]
wayland: Remove dead assignment

We set it just after variable declaration

CID #1197709

10 years agogl/eagl: Fix compilation
Sebastian Dröge [Sun, 13 Apr 2014 17:20:32 +0000 (19:20 +0200)]
gl/eagl: Fix compilation

10 years agogl/eagl: Notify the window's resize callback about surface dimension changes
Sebastian Dröge [Sun, 13 Apr 2014 14:53:58 +0000 (16:53 +0200)]
gl/eagl: Notify the window's resize callback about surface dimension changes

https://bugzilla.gnome.org/show_bug.cgi?id=728107

10 years agogl/eagl: Remove spurious private struct pointer
Sebastian Dröge [Sun, 13 Apr 2014 14:46:11 +0000 (16:46 +0200)]
gl/eagl: Remove spurious private struct pointer

10 years agogl/android: Notify the window's resize callback about surface dimension changes
Sebastian Dröge [Sun, 13 Apr 2014 14:40:58 +0000 (16:40 +0200)]
gl/android: Notify the window's resize callback about surface dimension changes

https://bugzilla.gnome.org/show_bug.cgi?id=728107

10 years agoglimagesink: remove unused texture
Matthew Waters [Sun, 13 Apr 2014 12:16:45 +0000 (22:16 +1000)]
glimagesink: remove unused texture

10 years agoglimagesink: move upload into _prepare()
Matthew Waters [Sun, 13 Apr 2014 12:14:52 +0000 (22:14 +1000)]
glimagesink: move upload into _prepare()

10 years agogl/context: output available extensions
Matthew Waters [Sun, 13 Apr 2014 03:49:22 +0000 (13:49 +1000)]
gl/context: output available extensions

10 years agogl/context: provide get_gl_version
Matthew Waters [Sun, 13 Apr 2014 03:39:14 +0000 (13:39 +1000)]
gl/context: provide get_gl_version

10 years agogl/color: restore viewport dimensions when fbo done
Julien Isorce [Sat, 12 Apr 2014 23:21:00 +0000 (00:21 +0100)]
gl/color: restore viewport dimensions when fbo done

Regression introduced by 95abfda1399bcddbee345d4542e857d743965477.
It caused to display the wrong frame size when resizing the window.

10 years agogl: Import QuartzCore/QuartzCore.h for CAEAGLLayer on older iOS versions
Sebastian Dröge [Sat, 12 Apr 2014 20:45:30 +0000 (22:45 +0200)]
gl: Import QuartzCore/QuartzCore.h for CAEAGLLayer on older iOS versions

10 years agogl: Set glimagesink rank to SECONDARY
Sebastian Dröge [Sat, 12 Apr 2014 20:15:35 +0000 (22:15 +0200)]
gl: Set glimagesink rank to SECONDARY

This is a full-featured video sink now and especially should be
used instead of osxvideosink on OSX if available.

10 years agogl: Add support for iOS EAGL platform
Sebastian Dröge [Sat, 12 Apr 2014 19:43:50 +0000 (21:43 +0200)]
gl: Add support for iOS EAGL platform

https://bugzilla.gnome.org/show_bug.cgi?id=703341

10 years agogl/cocoa: make gst_gl_window_cocoa_send_message_async re-entrant
Julien Isorce [Sat, 12 Apr 2014 16:33:44 +0000 (17:33 +0100)]
gl/cocoa: make gst_gl_window_cocoa_send_message_async re-entrant

Backends that use g_main_context_invoke are re-entrant.

Il allows to call two nested gst_gl_context_thread_add.
ex: init_upload / init_colorconvert

10 years agoglimagesink: First handle GL window setup, then create the context and its thread
Sebastian Dröge [Sat, 12 Apr 2014 15:01:09 +0000 (17:01 +0200)]
glimagesink: First handle GL window setup, then create the context and its thread

10 years agogl/cocoa: fix NSAutoreleasePool initialization
Julien Isorce [Sat, 12 Apr 2014 14:51:47 +0000 (15:51 +0100)]
gl/cocoa: fix NSAutoreleasePool initialization

10 years agogl/cocoa: ensure to call NSApplication:sharedApplication in the main thread
Julien Isorce [Sat, 12 Apr 2014 11:42:40 +0000 (12:42 +0100)]
gl/cocoa: ensure to call NSApplication:sharedApplication in the main thread

"(NSApplication *)sharedApplication This method also makes a connection
to the window server and completes other initialization"
The implicit thing which is not mentioned is that it required
to be called in the main thread.

Fix a regression introduces by 82b7c915bb02a9790d256d599452e5a54afda633
When using with gst-launch, it was not possible to click on the close
cross of the window anymore which is a bit anoying and also because
it's was possible before.

Prior to this commit the GstGLContextCocoaClass was initialized
in the main thread because gst_gl_context_new was called in the
state change function from going from ready to paused.

From this commit this call is done from the streaming thread.
So that the call to [NSApplication sharedApplication];
was not done in the main thread anymore.

We now ensure that by assuming there is a GMainLoop running.
It's for debugging purpose so that's ok to do that. Also
note we already do this assumtion to run app itereations.

The regression had no consequence on the cocoa/videooverlay example
(that should be moved from gst-plugins-gl to -bad) because the
application is responsible for that necessary call.

10 years agogl/color: fix warning type qualifiers ignored
Julien Isorce [Sat, 12 Apr 2014 13:40:40 +0000 (14:40 +0100)]
gl/color: fix warning type qualifiers ignored

i686-apple-darwin11-llvm-gcc-4.2
"warning: type qualifiers ignored on function return type"

10 years agogl/color: remove if statement with no effect
Matthew Waters [Sat, 12 Apr 2014 08:24:43 +0000 (18:24 +1000)]
gl/color: remove if statement with no effect

Coverity 1199698

10 years agogl/color: pass large value by reference
Matthew Waters [Sat, 12 Apr 2014 08:16:29 +0000 (18:16 +1000)]
gl/color: pass large value by reference

Coverity 1199700

10 years agosrtpdec: fix assertion checking ssrc from rtcp packets
Aleix Conchillo Flaqué [Wed, 2 Apr 2014 19:59:58 +0000 (12:59 -0700)]
srtpdec: fix assertion checking ssrc from rtcp packets

rtcp_buffer_get_ssrc is called even with RTP buffers. this means we
might end up with an exception and not find any valid RTCP packet type
and thus hit GST_RTCP_TYPE_INVALID. we now take care of this.

https://bugzilla.gnome.org/show_bug.cgi?id=727512

10 years agojp2kdecimator: fix maybe-uninitialized compiler error
Andoni Morales Alastruey [Fri, 11 Apr 2014 10:29:17 +0000 (12:29 +0200)]
jp2kdecimator: fix maybe-uninitialized compiler error

10 years agompegtsmux: Remove unneeded unref
Edward Hervey [Fri, 11 Apr 2014 09:34:26 +0000 (11:34 +0200)]
mpegtsmux: Remove unneeded unref

packet_buffer has already been cleared in all code paths leading
to this point.

CID #1199696

10 years agodvbsrc: Handle symbols added in minor version 7 and 8
Edward Hervey [Fri, 11 Apr 2014 06:39:29 +0000 (08:39 +0200)]
dvbsrc: Handle symbols added in minor version 7 and 8

Some symbols were re-defined in minor v8 (GO TEAM BACKWARDS COMPATIBLE!)

Some symbols were added in minor v7

https://bugzilla.gnome.org/show_bug.cgi?id=727977

10 years agogl/mem: cache the stride/unpack length for upload
Matthew Waters [Fri, 11 Apr 2014 07:24:39 +0000 (17:24 +1000)]
gl/mem: cache the stride/unpack length for upload

10 years agogl/color: explicitly map the buffers we are copying into
Matthew Waters [Fri, 11 Apr 2014 07:23:32 +0000 (17:23 +1000)]
gl/color: explicitly map the buffers we are copying into

Otherwise it may not be downloaded at all.

10 years agodvbsrc: Add comment with all DVB API v5 minor changes
Edward Hervey [Fri, 11 Apr 2014 06:16:01 +0000 (08:16 +0200)]
dvbsrc: Add comment with all DVB API v5 minor changes

There wasn't a definite list anyway, so I just dove in the kernel
and extract all that information.

10 years agogl/color: cache the temporary textures
Matthew Waters [Fri, 11 Apr 2014 06:09:09 +0000 (16:09 +1000)]
gl/color: cache the temporary textures

10 years agogl/mem: provide defines for tokens not defined in GLES2/ancient platforms
Matthew Waters [Fri, 11 Apr 2014 01:04:43 +0000 (11:04 +1000)]
gl/mem: provide defines for tokens not defined in GLES2/ancient platforms

10 years agogl: fixup incorrect number of arguments
Matthew Waters [Fri, 11 Apr 2014 01:03:19 +0000 (11:03 +1000)]
gl: fixup incorrect number of arguments

10 years agogl: fix incorrect usage of g_return_if_fail
Matthew Waters [Fri, 11 Apr 2014 00:55:21 +0000 (10:55 +1000)]
gl: fix incorrect usage of g_return_if_fail

10 years agogl/mem: allocate the memory per plane
Matthew Waters [Wed, 2 Apr 2014 06:43:52 +0000 (17:43 +1100)]
gl/mem: allocate the memory per plane

This patch provides the basic infrastructure required for this.
Upload and Download has been ported to this.

Has the nice effect of allowing GstGLMemory to be our
refcounted texture object for any texture type (not just RGBA).

Should not lose any features/video formats.

10 years agogl/eglimage: #if 0 unused code
Matthew Waters [Tue, 1 Apr 2014 04:10:05 +0000 (15:10 +1100)]
gl/eglimage: #if 0 unused code

10 years agogl: add colorconvert object that converts between color spaces/formats
Matthew Waters [Tue, 1 Apr 2014 02:30:51 +0000 (13:30 +1100)]
gl: add colorconvert object that converts between color spaces/formats

Currently used by both upload and download objects separately.