platform/upstream/gstreamer.git
10 years agoresindvd: guard against overflow in menu subtitle streams
Vincent Penquerc'h [Tue, 8 Apr 2014 13:19:29 +0000 (14:19 +0100)]
resindvd: guard against overflow in menu subtitle streams

There is space for a single subtitle stream, but up to 255
may be used based on a uint8_t value in a struct, which may
or may not be read from the (untrusted) data.
A comment in ifo_types.h says this value is either 0 or 1, so
we can ensure this here without drawbacks.

Coverity 1139586

10 years agomxfdemux: fix seeking, send data starting from a key unit
Tim-Philipp Müller [Tue, 8 Apr 2014 12:26:49 +0000 (13:26 +0100)]
mxfdemux: fix seeking, send data starting from a key unit

Fixes multiple seeking issues. When doing ACCURATE or normal
non-KEYUNIT seeks, mxfdemux would just send data from the
edit unit that covered the seek position, whether that's
a keyframe or not. Decoders would only output things from
the next keyframe then, which means there's a gap between
the start of the segment and the first decoded data in
some cases. In combination with gst-editing-services this
might result in a frozen picture for the duration of that
gap at the beginning (if videorate fixes up the first
buffer's start timestamp to cover the entire gap), or
a black frame (if no videorate is used and videomixer
fills the gap). Also fixes A/V sync issue when requesting
a KEYUNIT seek.

10 years agodtsdec: fix buffer overflows
Vincent Penquerc'h [Tue, 8 Apr 2014 11:37:30 +0000 (12:37 +0100)]
dtsdec: fix buffer overflows

Channels can be up to 7. Also add a guard in case more can be
returned in the future.

Coverity 1139820, 1139821

10 years agodirectsoundsrc: Fix critical due to missing debug category initialization
Xavi Artigas [Tue, 8 Apr 2014 11:20:54 +0000 (13:20 +0200)]
directsoundsrc: Fix critical due to missing debug category initialization

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

10 years agofestival: fix fd leak
Vincent Penquerc'h [Tue, 8 Apr 2014 11:20:40 +0000 (12:20 +0100)]
festival: fix fd leak

Coverity 1139831

10 years agospeed: Clarify passthrough in switch statement
Edward Hervey [Tue, 8 Apr 2014 09:26:38 +0000 (11:26 +0200)]
speed: Clarify passthrough in switch statement

We do want the caps event to be forwarded downstream

CID #1139754

10 years agosoundtouch: Add missing break in switch
Edward Hervey [Tue, 8 Apr 2014 09:23:50 +0000 (11:23 +0200)]
soundtouch: Add missing break in switch

Whoops, modifying the pitch when modifying the output rate ...

CID #1139749

10 years agorsvg: Add missing break in switch statement
Edward Hervey [Tue, 8 Apr 2014 09:21:44 +0000 (11:21 +0200)]
rsvg: Add missing break in switch statement

This wasn't fatal before (worst case it would clear an already empty
adapter).

CID #1139758

10 years agompeg2enc: Add missing break in switch
Edward Hervey [Tue, 8 Apr 2014 09:20:29 +0000 (11:20 +0200)]
mpeg2enc: Add missing break in switch

QUERY_CAPS is fully handled, we don't need to passthrough to the default
handler.

CID #1139756

10 years agobz2: Initialize variables
Edward Hervey [Tue, 8 Apr 2014 07:51:08 +0000 (09:51 +0200)]
bz2: Initialize variables

There is a small chance that we might end up in the done step without
having any output available.

Furthermore, when going through not_ready, we need to ensure gst_buffer_unmap
has a properly initialized GstMapInfo.

CID #1139923
CID #1139924
CID #1139919
CID #1139920

10 years agocheck: Fix mpegtsmux caps
Edward Hervey [Tue, 8 Apr 2014 05:48:28 +0000 (07:48 +0200)]
check: Fix mpegtsmux caps

Incoming streams need to be parsed. Doesn't fix the test completely though

10 years agompegtsmux: Initialize helper mpegts library
Edward Hervey [Tue, 8 Apr 2014 05:47:15 +0000 (07:47 +0200)]
mpegtsmux: Initialize helper mpegts library

We now use that library, we need to initialize it so that debug
categories (amongst other things) get properly initialized

10 years agomxf: fix stop date parsing using the wrong input
Vincent Penquerc'h [Mon, 7 Apr 2014 12:25:56 +0000 (13:25 +0100)]
mxf: fix stop date parsing using the wrong input

Coverity 1139645

10 years agojp2kdecimator: fix copy/paste errors in expressions
Vincent Penquerc'h [Mon, 7 Apr 2014 12:22:22 +0000 (13:22 +0100)]
jp2kdecimator: fix copy/paste errors in expressions

Correct formulae found in ITU T.800, B.12.1.[345]

Coverity 1139649, 1139650, 1139651

10 years agotests: fix shm test deadlock
Vincent Penquerc'h [Fri, 4 Apr 2014 14:30:20 +0000 (15:30 +0100)]
tests: fix shm test deadlock

The test was not bringing the source back to NULL, so its thread
could start creating a buffer while the pads were being shutdown.

10 years agoglimagesink: Create GL context and set up window from the streaming thread
Sebastian Dröge [Sun, 6 Apr 2014 09:57:12 +0000 (11:57 +0200)]
glimagesink: Create GL context and set up window from the streaming thread

gst_gl_context_create() might need to dispatch some operations to the
application's main thread, and calling this in the change_state function
can cause deadlocks.

10 years agoconfigure: Fix check for iOS for the OpenGL support
Sebastian Dröge [Fri, 4 Apr 2014 07:19:39 +0000 (09:19 +0200)]
configure: Fix check for iOS for the OpenGL support

There is also an i386 version of iOS, which is for the simulator.
Better use our already existing HAVE_IOS check instead of relying
on the host triplet.

10 years agowildmidi: fix possible uninitialized variables
Wim Taymans [Thu, 3 Apr 2014 09:54:41 +0000 (11:54 +0200)]
wildmidi: fix possible uninitialized variables

10 years agompdparse: only add location when node existed
Wim Taymans [Thu, 3 Apr 2014 09:48:07 +0000 (11:48 +0200)]
mpdparse: only add location when node existed

Actually return FALSE when the location node was non-existing
Only add the location node when it existed

10 years agompegtsmux: Require parsed/framed input for most of the supported formats
Sebastian Dröge [Wed, 2 Apr 2014 21:49:37 +0000 (23:49 +0200)]
mpegtsmux: Require parsed/framed input for most of the supported formats

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

10 years agod3dvideosink: Only pass a dest rectangle if set, otherwise pass NULL
Sebastian Dröge [Wed, 2 Apr 2014 21:08:36 +0000 (23:08 +0200)]
d3dvideosink: Only pass a dest rectangle if set, otherwise pass NULL

Call with an uninitialized rectangle will cause errors.

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

10 years agotests: fix gl unit tests for recent API changes
Tim-Philipp Müller [Wed, 2 Apr 2014 12:48:02 +0000 (13:48 +0100)]
tests: fix gl unit tests for recent API changes

10 years agogl: pass video info's by reference
Matthew Waters [Wed, 2 Apr 2014 12:05:47 +0000 (23:05 +1100)]
gl: pass video info's by reference

10 years agogl: fix array initialization
Matthew Waters [Wed, 2 Apr 2014 12:05:11 +0000 (23:05 +1100)]
gl: fix array initialization

10 years agoglbumper: remove redundant check
Matthew Waters [Wed, 2 Apr 2014 11:54:55 +0000 (22:54 +1100)]
glbumper: remove redundant check

10 years agogl/glx: use the context's display rather than asking for the window's
Matthew Waters [Wed, 2 Apr 2014 11:53:10 +0000 (22:53 +1100)]
gl/glx: use the context's display rather than asking for the window's

10 years agogl: fix assignment of temporary variables
Matthew Waters [Wed, 2 Apr 2014 11:43:41 +0000 (22:43 +1100)]
gl: fix assignment of temporary variables

10 years agogl: avoid adding a NULL pool to propose allocation
Matthew Waters [Wed, 2 Apr 2014 11:42:50 +0000 (22:42 +1100)]
gl: avoid adding a NULL pool to propose allocation

10 years agogl/win32: actually build the gl plugins on win32
Matthew Waters [Wed, 2 Apr 2014 01:38:28 +0000 (12:38 +1100)]
gl/win32: actually build the gl plugins on win32

Regression from c8ff215b02ee178513e076e2dfbd14e9ce77ec49

10 years agogl/win32: fix detection of GL/wglext.h
Matthew Waters [Tue, 1 Apr 2014 22:29:56 +0000 (09:29 +1100)]
gl/win32: fix detection of GL/wglext.h

Was resulting in 'present but cannot be compiled' errors

10 years agogl: fix detection of extensions with GL versions < 3
Matthew Waters [Tue, 1 Apr 2014 10:48:26 +0000 (21:48 +1100)]
gl: fix detection of extensions with GL versions < 3

Mesa, for example returns valid pointers for glGetIntegerv and
glGetStringi even if the gl version is less than that required for
both those functions to supposedly exist.

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

10 years agompegts: fix docs
Stefan Ringel [Sun, 30 Mar 2014 19:02:45 +0000 (21:02 +0200)]
mpegts: fix docs

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727356

10 years agompegts: add dvb-t2 delivery system descriptor
Stefan Ringel [Sun, 30 Mar 2014 19:02:10 +0000 (21:02 +0200)]
mpegts: add dvb-t2 delivery system descriptor

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727356

10 years agompegts: bugfix delivery system descriptors
Stefan Ringel [Mon, 24 Mar 2014 16:44:47 +0000 (17:44 +0100)]
mpegts: bugfix delivery system descriptors

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=726979

10 years agompegts: use GST_READ_UINT32_BE
Stefan Ringel [Thu, 27 Mar 2014 20:22:32 +0000 (21:22 +0100)]
mpegts: use GST_READ_UINT32_BE

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727187

10 years agompegts: add parsing data broadcast descriptor
Stefan Ringel [Thu, 27 Mar 2014 20:21:23 +0000 (21:21 +0100)]
mpegts: add parsing data broadcast descriptor

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727187

10 years agompegts: add parsing stream identifier
Stefan Ringel [Thu, 27 Mar 2014 20:18:36 +0000 (21:18 +0100)]
mpegts: add parsing stream identifier

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727187

10 years agompegts: use glib alloc and free
Stefan Ringel [Thu, 27 Mar 2014 12:56:26 +0000 (13:56 +0100)]
mpegts: use glib alloc and free

Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727159

10 years agodashdemux: use correct print format for gint64
Matthieu Bouron [Sat, 29 Mar 2014 17:26:03 +0000 (17:26 +0000)]
dashdemux: use correct print format for gint64

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

10 years agohlsdemux: Handle errors when switching playlists properly
Sebastian Dröge [Sun, 30 Mar 2014 16:52:38 +0000 (18:52 +0200)]
hlsdemux: Handle errors when switching playlists properly

10 years agohlsdemux: Go EOS if the end of the segment is reached
Sebastian Dröge [Sun, 30 Mar 2014 16:12:07 +0000 (18:12 +0200)]
hlsdemux: Go EOS if the end of the segment is reached

10 years agohlsdemux: Store buffer end position in segment.position
Sebastian Dröge [Sun, 30 Mar 2014 16:06:51 +0000 (18:06 +0200)]
hlsdemux: Store buffer end position in segment.position

10 years agompegtspacketizer: Fix typo in debug output
Sebastian Dröge [Sat, 29 Mar 2014 09:19:52 +0000 (10:19 +0100)]
mpegtspacketizer: Fix typo in debug output

10 years agoh264parse: Copy over DISCONT flag from input buffers
Sebastian Dröge [Fri, 28 Mar 2014 17:27:16 +0000 (18:27 +0100)]
h264parse: Copy over DISCONT flag from input buffers

10 years agotsdemux: Push next buffer after a discont with the DISCONT flag
Sebastian Dröge [Fri, 28 Mar 2014 17:11:21 +0000 (18:11 +0100)]
tsdemux: Push next buffer after a discont with the DISCONT flag

10 years agotsdemux: Drain remaining data on disconts
Sebastian Dröge [Fri, 28 Mar 2014 16:32:56 +0000 (17:32 +0100)]
tsdemux: Drain remaining data on disconts

10 years agompegtsbase: Flush if we receive a discont buffer
Sebastian Dröge [Fri, 28 Mar 2014 16:25:02 +0000 (17:25 +0100)]
mpegtsbase: Flush if we receive a discont buffer

10 years agotsdemux: Don't dereference NULL if flushed before a program was selected
Sebastian Dröge [Fri, 28 Mar 2014 16:24:46 +0000 (17:24 +0100)]
tsdemux: Don't dereference NULL if flushed before a program was selected

10 years agotsdemux: Ensure that all pending data is pushed even if the stream was not activated...
Sebastian Dröge [Thu, 27 Mar 2014 18:42:52 +0000 (19:42 +0100)]
tsdemux: Ensure that all pending data is pushed even if the stream was not activated before

gst_ts_demux_push_pending_data() will check if it now can activate the
stream and add the pad, we don't have to check that ourselves.

Fixes playback of very short MPEG TS files.

10 years agompegtsbase: Fix pull mode scanning for PCR on small files
Sebastian Dröge [Thu, 27 Mar 2014 18:22:03 +0000 (19:22 +0100)]
mpegtsbase: Fix pull mode scanning for PCR on small files

If a file does not contain 5 PCRs until it is EOS, or does not
contain more than 655360 bytes the PCR scanning algorithm just
aborted.

10 years agohlsdemux: Don't set the segment offset
Sebastian Dröge [Wed, 26 Mar 2014 21:25:07 +0000 (22:25 +0100)]
hlsdemux: Don't set the segment offset

It's causing wrong running times after seeks or bitrate
switches.

10 years agohlsdemux: Set DISCONT flag on all buffers in reverse playback mode
Sebastian Dröge [Wed, 26 Mar 2014 06:32:43 +0000 (07:32 +0100)]
hlsdemux: Set DISCONT flag on all buffers in reverse playback mode

10 years agohlsdemux: Fix forwards and backwards searching in the files list
Sebastian Dröge [Wed, 26 Mar 2014 06:25:13 +0000 (07:25 +0100)]
hlsdemux: Fix forwards and backwards searching in the files list

10 years agohlsdemux: Unset DTS of all buffers
Sebastian Dröge [Wed, 26 Mar 2014 06:24:16 +0000 (07:24 +0100)]
hlsdemux: Unset DTS of all buffers

We won't get a valid DTS from the source.

10 years agohlsdemux: Send flush start event before waiting for the tasks to finish
Sebastian Dröge [Wed, 26 Mar 2014 06:22:54 +0000 (07:22 +0100)]
hlsdemux: Send flush start event before waiting for the tasks to finish

Otherwise we'll wait until buffers are completely processed downstream,
which might take quite some time.

10 years agohlsdemux: Implement trick modes via I-frame variant lists
Sebastian Dröge [Sun, 9 Mar 2014 18:31:31 +0000 (19:31 +0100)]
hlsdemux: Implement trick modes via I-frame variant lists

10 years agohlsdemux: Implement parsing of #EXT-X-I-FRAME-STREAM-INF
Sebastian Dröge [Sun, 9 Mar 2014 17:24:50 +0000 (18:24 +0100)]
hlsdemux: Implement parsing of #EXT-X-I-FRAME-STREAM-INF

These are I-frame-only variant lists that can be used
for trick mode playback.

10 years agogl: egl: fix distcheck and out of source build
Tim-Philipp Müller [Fri, 28 Mar 2014 20:22:43 +0000 (20:22 +0000)]
gl: egl: fix distcheck and out of source build

10 years agobuild: Fix make dist
Rico Tzschichholz [Fri, 28 Mar 2014 19:47:36 +0000 (20:47 +0100)]
build: Fix make dist

10 years agotests: fix LDADD order for insertbin test
Tim-Philipp Müller [Fri, 28 Mar 2014 19:46:33 +0000 (19:46 +0000)]
tests: fix LDADD order for insertbin test

10 years agotests: don't link codecparser tests twice to the lib
Tim-Philipp Müller [Fri, 28 Mar 2014 19:41:25 +0000 (19:41 +0000)]
tests: don't link codecparser tests twice to the lib

10 years agotests: fix build of gl unit tests in uninstalled setup
Tim-Philipp Müller [Fri, 28 Mar 2014 19:30:16 +0000 (19:30 +0000)]
tests: fix build of gl unit tests in uninstalled setup

Put local .la files first, and add link to libgstvideo
for tests that use the libgstvideo API directly.

10 years agogl/win32: allow not building the gl plugins
Matthew Waters [Thu, 27 Mar 2014 11:41:02 +0000 (22:41 +1100)]
gl/win32: allow not building the gl plugins

Fixes build on windows if <GL/wglext.h> headers are not present.

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

10 years agoeglglessink: unref last buffer on DRAIN
Julien Isorce [Fri, 28 Mar 2014 11:54:45 +0000 (11:54 +0000)]
eglglessink: unref last buffer on DRAIN

Similar to 093574053fae243ec5fcfd6adae8185053b1e896
in gstbasesink

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

10 years agoeglglessink: fix wrong doc block for create_window
Reynaldo H. Verdejo Pinochet [Thu, 27 Mar 2014 21:51:59 +0000 (18:51 -0300)]
eglglessink: fix wrong doc block for create_window

Wrong since 1ad253b9 when prop name was changed from
can_create_window to create_window.

10 years agogl: don't fail configure if we do not understand the platform
Matthew Waters [Thu, 27 Mar 2014 11:02:22 +0000 (22:02 +1100)]
gl: don't fail configure if we do not understand the platform

10 years agogl: fix out-of-source builds pt2
Matthew Waters [Tue, 25 Mar 2014 04:40:14 +0000 (15:40 +1100)]
gl: fix out-of-source builds pt2

21b897de2f762bee504cbc007fd108148ee5ae24 did this for x11 and wayland.
Do it for the other backends as well.

10 years agogl: only set CAPS_FEATURE_MEMORY_EGL_IMAGE on egl platform
Julien Isorce [Wed, 26 Mar 2014 23:13:53 +0000 (23:13 +0000)]
gl: only set CAPS_FEATURE_MEMORY_EGL_IMAGE on egl platform

10 years agoconfigure.ac: fix OSX host check
Matthieu Bouron [Wed, 26 Mar 2014 17:14:40 +0000 (17:14 +0000)]
configure.ac: fix OSX host check

Makes the check works with (i386|x86_64)-apple-darwin* hosts.

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

10 years agogl: let the user includes itself our egl headers if needed
Julien Isorce [Wed, 26 Mar 2014 19:17:03 +0000 (19:17 +0000)]
gl: let the user includes itself our egl headers if needed

Forgot to address this change.

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

10 years agogl: add EGLImage support
Julien Isorce [Sat, 22 Mar 2014 22:01:49 +0000 (22:01 +0000)]
gl: add EGLImage support

* picked from old libgstegl:
  - GstEGLImageMemory
  - GstEGLImageAllocator
  - last_buffer management from removed GstEGLImageBufferPool

* add-ons:
  - GstEGLImageMemory now old a reference on GstGLContext
    so that it can delete the EGLImage and its gltexture source
    while having the associated gl context being current.
  - add EGLImage support for GstVideoGLTextureUploadMeta which
    mainly call EGLImageTargetTexture2D
  - GstGLBufferPool now supports GstEGLImageAllocator
  - glimagesink / glfilters / etc.. now propose GstEGLImageAllocator
    to upstream

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

10 years agogl: deploy egl headers in gst/gl/egl instead of gst/gl
Julien Isorce [Mon, 24 Mar 2014 12:12:42 +0000 (12:12 +0000)]
gl: deploy egl headers in gst/gl/egl instead of gst/gl

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

10 years agogl: remove commented and unsued code in x11 Makefile.am
Julien Isorce [Mon, 24 Mar 2014 12:10:00 +0000 (12:10 +0000)]
gl: remove commented and unsued code in x11 Makefile.am

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

10 years agopkgconfig: add gstreamer-gl
Julien Isorce [Sun, 23 Mar 2014 21:55:34 +0000 (21:55 +0000)]
pkgconfig: add gstreamer-gl

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

10 years agogl: fix crash if _build_extension_string is not called
Julien Isorce [Mon, 24 Mar 2014 12:04:08 +0000 (12:04 +0000)]
gl: fix crash if _build_extension_string is not called

On GLES2 then (gl->GetIntegerv && gl->GetStringi) is false
regression introduced by cc6df204e2f58fffda5cbe90f3450aeba95889c4

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

10 years agogl: Only enabled cocoa backend on osx (and not ios)
Edward Hervey [Wed, 26 Mar 2014 09:14:36 +0000 (10:14 +0100)]
gl: Only enabled cocoa backend on osx (and not ios)

ios requires using EAGL

10 years agortmpsink: Remove URL check for valid playpath.
Jan Schmidt [Tue, 25 Mar 2014 22:05:15 +0000 (09:05 +1100)]
rtmpsink: Remove URL check for valid playpath.

The playpath is an optional component of the URL - don't require it.

10 years agosrtpenc: unlock object lock before posting error
Wim Taymans [Tue, 25 Mar 2014 16:39:18 +0000 (17:39 +0100)]
srtpenc: unlock object lock before posting error

Posting an error with the object lock will deadlock. Rework the code
a bit to make things more simple.

10 years agocodecparsers: cosmetics: drop TAB characters.
Gwenole Beauchesne [Tue, 25 Mar 2014 14:04:14 +0000 (15:04 +0100)]
codecparsers: cosmetics: drop TAB characters.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agodvbsuboverlay: Clarify confusing debug message
Jan Schmidt [Tue, 25 Mar 2014 10:40:11 +0000 (21:40 +1100)]
dvbsuboverlay: Clarify confusing debug message

The message is describing the number of bytes remaining for
parsing, not 'missing'.

10 years agotsdemux: Fix mpegts_packetizer_set_current_pcr_offset()
Jan Schmidt [Tue, 25 Mar 2014 10:40:11 +0000 (21:40 +1100)]
tsdemux: Fix mpegts_packetizer_set_current_pcr_offset()

When adjusting the PCR offset of groups, adjust the correct group
entry from the list - not the current group repeatedly.

10 years agodvbsuboverlay: Remove warning for 2-bit and 8-bit subpictures
Jan Schmidt [Tue, 25 Mar 2014 10:40:11 +0000 (21:40 +1100)]
dvbsuboverlay: Remove warning for 2-bit and 8-bit subpictures

Both 2-bit and 8-bit mode now seem fine, so remove the warning
messages about them

10 years agodvbsuboverlay: Fix 8-bit subpicture rendering.
Jan Schmidt [Tue, 25 Mar 2014 10:40:10 +0000 (21:40 +1100)]
dvbsuboverlay: Fix 8-bit subpicture rendering.

Fix 2 small flaws handling 8-bit subpictures that makes
my one test file work.

10 years agocodecparsers: h264: fix slice_header() parsing for MVC.
Li Xiaowei [Fri, 8 Mar 2013 01:57:22 +0000 (09:57 +0800)]
codecparsers: h264: fix slice_header() parsing for MVC.

The idr_pic_id syntax element depends on IdrPicFlag, which is a calculated
value that does not only depend on NAL unit type (IDR), but possibly also
on MVC non_idr_flag syntax element.

The computed idr_pic_flag is already stored in GstH264NalUnit structure.

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

Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: add gst_h264_parse_nalu_header() helper.
Gwenole Beauchesne [Mon, 1 Oct 2012 07:48:06 +0000 (09:48 +0200)]
codecparsers: h264: add gst_h264_parse_nalu_header() helper.

Add helper to parse the NALU header. Move bounds checking to there.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: add gst_h264_parse_sps_data() helper.
Gwenole Beauchesne [Mon, 1 Oct 2012 07:37:21 +0000 (09:37 +0200)]
codecparsers: h264: add gst_h264_parse_sps_data() helper.

Split seq_parameter_set_data() parsing off gst_h264_parse_sps() so
that it could be re-used later on.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: complete set of NAL unit types.
Gwenole Beauchesne [Wed, 26 Sep 2012 16:46:36 +0000 (18:46 +0200)]
codecparsers: h264: complete set of NAL unit types.

Add missing NAL unit types. They are mostly related to alpha blending,
scalable video coding extensions (SVC, Annex.G), and multiview video
coding extensions (MVC, Annex.H).

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: clean-up gst_h264_parser_parse_sei_message().
Gwenole Beauchesne [Mon, 24 Mar 2014 18:27:44 +0000 (19:27 +0100)]
codecparsers: h264: clean-up gst_h264_parser_parse_sei_message().

Fix build when GST_DISABLE_GST_DEBUG is not defined. Use a switch
statement to dispatch to the various SEI payload handlers.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: fix skipping of unsupported SEI messages.
Gwenole Beauchesne [Fri, 21 Mar 2014 16:07:19 +0000 (17:07 +0100)]
codecparsers: h264: fix skipping of unsupported SEI messages.

The payloadSize does not account for emulation prevention bytes. So,
just use nal_reader_skip() for skipping payload_size bits. It should
be possible to further optimize this code since the NAL reader shall
be aligned to byte boundary already.

Kill the now unused nal_reader_skip_to_next_byte() function.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: fix SEI buffering_period() parsing.
Gwenole Beauchesne [Fri, 21 Mar 2014 16:03:36 +0000 (17:03 +0100)]
codecparsers: h264: fix SEI buffering_period() parsing.

Fix parsing of buffering_period() SEI messages. The number of bits
used to express {nal,vcl}_initial_cpb_removal_delay{,_offset} syntax
elements is not 5 but 1 + initial_cpb_removal_delay_length_minus1.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agocodecparsers: h264: fix rbsp_more_data() implementation.
Gwenole Beauchesne [Wed, 10 Oct 2012 14:19:49 +0000 (16:19 +0200)]
codecparsers: h264: fix rbsp_more_data() implementation.

Account for trailing zero bits when checking for rbsp_more_data().

In particular, fix an hypothetical stream whereby rbsp_more_data()
is called in the following conditions for PPS header: NalReader
reached position 20, 12 bits are remaining and trailing data at
current byte position is c8 00.

rbsp_more_data() used to return TRUE whereas it should obviously
return FALSE because x8 00 represents a valid rbsp_trailing_bits()
structure.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agogl: fix out-of-source builds.
Gwenole Beauchesne [Mon, 24 Mar 2014 16:33:00 +0000 (17:33 +0100)]
gl: fix out-of-source builds.

Always use the locally generated <gst/gl/gstglconfig.h> file.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
10 years agogl/download: add support for the bt709 color matrix
Matthew Waters [Mon, 24 Mar 2014 13:50:30 +0000 (00:50 +1100)]
gl/download: add support for the bt709 color matrix

10 years agogl/upload: add support for the bt709 color matrix
Matthew Waters [Mon, 24 Mar 2014 13:34:13 +0000 (00:34 +1100)]
gl/upload: add support for the bt709 color matrix

10 years agogl: remove explicit reference to X_CFLAGS
Matthew Waters [Mon, 24 Mar 2014 12:09:20 +0000 (23:09 +1100)]
gl: remove explicit reference to X_CFLAGS

They are in GL_CFLAGS if required

10 years agogl/upload: remove the legacy GL 1.x upload path
Matthew Waters [Sun, 23 Mar 2014 12:43:28 +0000 (23:43 +1100)]
gl/upload: remove the legacy GL 1.x upload path

uploading requires shaders and fbos available in GL2.

10 years agogl: fallback to glGetString if GL_NUM_EXTENSIONS fails
Julien Isorce [Sun, 23 Mar 2014 11:02:08 +0000 (11:02 +0000)]
gl: fallback to glGetString if GL_NUM_EXTENSIONS fails

Need it on MacOSX 10.7.5

10 years agogl: and update the Makefile
Matthew Waters [Sat, 22 Mar 2014 14:02:03 +0000 (01:02 +1100)]
gl: and update the Makefile

10 years agogl: reorganize the extension headers by function rather than api
Matthew Waters [Sat, 22 Mar 2014 13:38:16 +0000 (00:38 +1100)]
gl: reorganize the extension headers by function rather than api

10 years agogl/win32: use the correct include and gst-indent
Matthew Waters [Fri, 21 Mar 2014 09:29:49 +0000 (20:29 +1100)]
gl/win32: use the correct include and gst-indent