Reynaldo H. Verdejo Pinochet [Fri, 3 Oct 2014 22:20:03 +0000 (19:20 -0300)]
mpegts: fix typo in GstMpegtsExtendedEventDescriptor doc
Reynaldo H. Verdejo Pinochet [Fri, 3 Oct 2014 22:06:21 +0000 (19:06 -0300)]
dvbsrc: add _MUTABLE_PLAYING to tuning props
The element can (re)tune while playing so basically
every property used at set_fe_params() can be set
in state <= PLAYING.
Sebastian Dröge [Fri, 3 Oct 2014 14:22:23 +0000 (17:22 +0300)]
openh264dec: The codec can only do baseline so simplify the code a bit
and declare this also on the srcpad caps.
With baseline profile there are no B-frames or frame reordering.
Sebastian Dröge [Fri, 3 Oct 2014 14:20:28 +0000 (17:20 +0300)]
openh264dec: On ::finish() stop trying if the decoder returned that no output is available
Sebastian Dröge [Fri, 3 Oct 2014 10:54:22 +0000 (13:54 +0300)]
openh264: Run gst-indent over everything
Sebastian Dröge [Fri, 3 Oct 2014 10:52:32 +0000 (13:52 +0300)]
openh264: Remove unused codecparsers lib
Sebastian Dröge [Thu, 2 Oct 2014 13:46:25 +0000 (16:46 +0300)]
openh264: Add FIXME comment about missing API in openh264
Sebastian Dröge [Thu, 2 Oct 2014 13:33:30 +0000 (16:33 +0300)]
openh264dec: Try to handle frame reordering
As openh264 has no way to attach any IDs to input frames that we then get on
the output frames, we have to assume that the input has valid PTS. We just
take the frame with the oldest PTS, and if there is no PTS information we take
the one with the oldest DTS.
Sebastian Dröge [Thu, 2 Oct 2014 13:23:37 +0000 (16:23 +0300)]
openh264dec: Don't drop videocodec frames if we can't decode them *yet*
Fixes jittery playback of streams with B frames.
Sebastian Dröge [Thu, 2 Oct 2014 13:21:37 +0000 (16:21 +0300)]
openh264dec: GstVideoDecoder works on frames, not sub-frames (e.g. NALs)
And we can just pass complete AUs to the decoder without problems.
Sebastian Dröge [Thu, 2 Oct 2014 13:19:46 +0000 (16:19 +0300)]
openh264dec: As we require NAL alignment from upstream we don't need to parse anything
Sebastian Dröge [Thu, 2 Oct 2014 12:48:51 +0000 (15:48 +0300)]
openh264dec: Properly drain codec on ::finish()
Sebastian Dröge [Thu, 2 Oct 2014 12:22:14 +0000 (15:22 +0300)]
openh264enc: Properly drain the encoder on ::finish()
Sebastian Dröge [Thu, 2 Oct 2014 11:36:45 +0000 (14:36 +0300)]
openh264enc: We always get a single frame as output, not a NAL
No need to accumulate NALs.
Sebastian Dröge [Thu, 2 Oct 2014 11:20:21 +0000 (14:20 +0300)]
openh264enc: Fix up caps and stride handling
Sebastian Dröge [Thu, 2 Oct 2014 11:15:49 +0000 (14:15 +0300)]
openh264enc: Add support for GstVideoMeta
This will allow upstream elements to work more efficiently.
Sebastian Dröge [Thu, 2 Oct 2014 11:12:11 +0000 (14:12 +0300)]
openh264dec: Add support for GstVideoMeta
This will make operation with various sinks faster for free.
Sebastian Dröge [Thu, 2 Oct 2014 11:08:49 +0000 (14:08 +0300)]
openh264dec: Optimize frame copying a bit
Sebastian Dröge [Thu, 2 Oct 2014 11:06:58 +0000 (14:06 +0300)]
openh264dec: Don't forget to unref the input state
Sebastian Dröge [Thu, 2 Oct 2014 11:03:43 +0000 (14:03 +0300)]
openh264dec: Fix various crashes on ::stop()
Sebastian Dröge [Thu, 2 Oct 2014 11:00:06 +0000 (14:00 +0300)]
openh264dec: Remove invalid sprops-parameter-set handling
This only exists on RTP caps, not H264 caps.
Sebastian Dröge [Thu, 2 Oct 2014 10:53:01 +0000 (13:53 +0300)]
openh264enc: Don't set caps manually
This will break the order of events in GStreamer.
Sebastian Dröge [Thu, 2 Oct 2014 10:49:14 +0000 (13:49 +0300)]
openh264dec: Fix input state handling and propagation of upstream caps fields
Sebastian Dröge [Fri, 3 Oct 2014 10:45:26 +0000 (13:45 +0300)]
openh264: Add OpenH264 based encoder/decoder elements
These are the openh264 elements released under the BSD-2 license
by Ericsson as part of the OpenWebRTC project.
https://github.com/EricssonResearch/openwebrtc-gst-plugins
https://bugzilla.gnome.org/show_bug.cgi?id=737788
Thibault Saunier [Thu, 18 Sep 2014 15:14:22 +0000 (17:14 +0200)]
videoaggregator: Do not to release VIDEO_AGGREGATOR_LOCK while setting format info
We should be able to always keep the VIDEO_AGGREGATOR_LOCK while
negotiating caps, this patch introduce that change.
That also implies that we do not need the SETCAPS_LOCK anymore because
now VIDEO_AGGREGATOR_LOCK guarantees that setcaps is not called from
several threads and the gst_aggregator_set_caps method is now
protected.
https://bugzilla.gnome.org/show_bug.cgi?id=735042
Thibault Saunier [Fri, 3 Oct 2014 10:34:15 +0000 (12:34 +0200)]
aggregator: Take lock to ensure set_caps is not called concurently
Avoiding to be in an inconsistent state where we do not have
actual negotiate caps set as srccaps and leading to point where we
try to unref ->srccaps when they have already been set to NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=735042
Vineeth T M [Mon, 29 Sep 2014 04:45:39 +0000 (10:15 +0530)]
gst: remove unnecessary GLIB_DISABLE_DEPRECATION_WARNINGS
There are unnecessary definitions for disabling deprecation warnings.
Since GLIB_DISABLE_DEPRECATION_WARNINGS is not needed anymore in these files,
removing the same.
https://bugzilla.gnome.org/show_bug.cgi?id=737559
Aurélien Zanelli [Wed, 1 Oct 2014 14:19:02 +0000 (16:19 +0200)]
vc1parse: unref caps when it is empty in renegotiate()
https://bugzilla.gnome.org/show_bug.cgi?id=737724
Sebastian Dröge [Thu, 2 Oct 2014 07:26:43 +0000 (10:26 +0300)]
androidmedia: Fix calculation of the frame size for COLOR_FormatYUV420Planar
https://bugzilla.gnome.org/show_bug.cgi?id=734156
Sebastian Dröge [Wed, 1 Oct 2014 14:22:59 +0000 (17:22 +0300)]
videoaggregator: Also copy over the chroma siting and colorimetry when deciding on a conversion
Sebastian Dröge [Wed, 1 Oct 2014 14:18:05 +0000 (17:18 +0300)]
videoaggregator: Revert the last commit and handle resolutions differences properly
This is about converting the format, not about converting any widths and
heights. Subclasses are expected to handler different resolutions themselves,
like the videomixers already do properly.
Sebastian Dröge [Wed, 1 Oct 2014 14:11:16 +0000 (17:11 +0300)]
videoaggregator: GstVideoConverter currently can't rescale and will assert
Leads to ugly assertions instead of properly erroring out:
CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed
Sebastian Dröge [Wed, 1 Oct 2014 13:04:36 +0000 (16:04 +0300)]
gl/cocoa: Always update our viewport if Cocoa tells us something has changed
The visible rect and bounds might be the same as before, but Cocoa
might've changed our viewport without us nothing. This happens if
you hide the view and show it again.
Sebastian Dröge [Wed, 1 Oct 2014 08:55:13 +0000 (11:55 +0300)]
gl/cocoa: Handle NSView::renewGState() properly
Don't update the screen until we redraw, this prevents flickering during
scrolling, clipping, resizing, etc
Tim-Philipp Müller [Tue, 30 Sep 2014 23:53:59 +0000 (00:53 +0100)]
fluiddec: don't crash on 0-sized input buffers
https://bugzilla.gnome.org/show_bug.cgi?id=737658
Lubosz Sarnecki [Tue, 30 Sep 2014 12:58:06 +0000 (14:58 +0200)]
gltransformation: requires graphene 1.0.0
Lubosz Sarnecki [Thu, 25 Sep 2014 15:01:31 +0000 (17:01 +0200)]
gltransformation: graphene multiplication order has changed
https://bugzilla.gnome.org/show_bug.cgi?id=733510
Matthew Waters [Tue, 30 Sep 2014 10:39:36 +0000 (20:39 +1000)]
glvideomixer: update element documentation
Matthew Waters [Tue, 30 Sep 2014 08:26:34 +0000 (18:26 +1000)]
tests/glcolorconvert: do reorder checking for rgba formats
Matthew Waters [Tue, 30 Sep 2014 04:46:14 +0000 (14:46 +1000)]
glcolorconvert: convert xRGB into ARGB properly
The alpha channel might not be the last component so check which one
it is in and clobber that one instead.
Matthew Waters [Mon, 29 Sep 2014 15:45:20 +0000 (01:45 +1000)]
tests/glmemory: add simple transfer test
tests transferring to/from the GL with a 1x1 RGBA pixel.
Matthew Waters [Mon, 29 Sep 2014 15:38:05 +0000 (01:38 +1000)]
glmemory: unset the opposite corresponding transfer flags when mapped with write
fixes consistency with consecutive gst_memory_map()'s with
flags & GST_MAP_WRITE
Sebastian Dröge [Mon, 29 Sep 2014 06:33:42 +0000 (09:33 +0300)]
gl/cocoa: Update viewport according to the current clipping
We have to update the GL viewport if the NSView is only partially
visible. Otherwise the content of the frame will be visibly offset.
Jesper Larsen [Mon, 29 Sep 2014 08:01:27 +0000 (10:01 +0200)]
tsdemux: do not discard on discont if PES start
If a discontinuity in the stream is detected, data is discarded until
a new PES starts. If the first packet after the discontinuity is also
the start of a PES, there is no reason to discard the packets.
https://bugzilla.gnome.org/show_bug.cgi?id=737569
David Waring [Thu, 31 Jul 2014 21:57:40 +0000 (22:57 +0100)]
dash: Use GstUri to join URIs
Sebastian Dröge [Mon, 29 Sep 2014 07:49:46 +0000 (10:49 +0300)]
gl/cocoa: Improve the NSApplication initialization
This is only for non-Cocoa apps but previously caused a 2 second
waiting during startup for Cocoa apps. This is unacceptable.
Instead we now check a bit more extensive if something actually
runs on the GLib default main context, and if not don't even
bother waiting for something to happen from there.
Sebastian Dröge [Mon, 29 Sep 2014 06:24:49 +0000 (09:24 +0300)]
gl/cocoa: NSView::drawRect() should call into reshape too
We a) need to render again because part of the window was
obscured and b) might need to reshape because of clipping
changes.
Sebastian Dröge [Fri, 26 Sep 2014 11:21:46 +0000 (14:21 +0300)]
gl/cocoa: Call UI related API from the application main thread
Sebastian Dröge [Fri, 26 Sep 2014 10:05:27 +0000 (13:05 +0300)]
gl/cocoa: Switch to a plain NSView subclass instead of NSOpenGLView
We don't and can't use NSOpenGLView as it's supposed to be used and
it gets into our way by being to clever in various situations.
Edward Hervey [Mon, 29 Sep 2014 06:54:29 +0000 (08:54 +0200)]
glcontext: Initialize variable
Avoids the following warning:
gstglcontext.c:647:58: error: 'prev' may be used uninitialized in
this function [-Werror=maybe-uninitialized]
Josep Torra [Sun, 28 Sep 2014 16:03:09 +0000 (18:03 +0200)]
video: fix build in gst-uninstalled setup
Include the base video lib appropriately and resort all of them as
thaytan suggested.
Jan Schmidt [Sun, 28 Sep 2014 14:23:57 +0000 (00:23 +1000)]
examples: Fix Qt/GL qglwtextureshare example for X11
We need to pass the X11 display to GstGL or else it will
use its own X11 Display pointer, and the GL Context won't get shared
correctly on newer X servers
Jan Schmidt [Sun, 28 Sep 2014 10:21:50 +0000 (20:21 +1000)]
examples: port GL/Qt examples to Qt5
Update the GL Qt integration examples for Qt5 changes and for GstGL
signal signature changes.
Matthew Waters [Sun, 28 Sep 2014 14:32:05 +0000 (00:32 +1000)]
glcontext: fixup error in sharegroup comment
Matthew Waters [Sun, 28 Sep 2014 14:27:30 +0000 (00:27 +1000)]
Revert accidental push: "gltestsrc: implement checkers pattern with GLSL"
This reverts commit
eae09179f0b4eb584c8fc7b6560d8fc8e86eed4c.
Matthew Waters [Sun, 28 Sep 2014 14:24:28 +0000 (00:24 +1000)]
glcontext: detect the sharegroup case where the context are in different chains
In the end they will lead to the same root context in the tree so check that
for equality.
Wang Xin-yu (王昕宇) [Sun, 28 Sep 2014 02:51:09 +0000 (10:51 +0800)]
gltestsrc: implement checkers pattern with GLSL
Matthew Waters [Sun, 28 Sep 2014 11:18:32 +0000 (21:18 +1000)]
glfilter: silence a warning with empty input caps
discovered with the doublecube example
gst_caps_get_features: assertion 'index < GST_CAPS_LEN (caps)' failed
Matthew Waters [Sun, 28 Sep 2014 10:37:04 +0000 (20:37 +1000)]
examples/gl: update for signal signature change
Matthew Waters [Sun, 28 Sep 2014 06:58:42 +0000 (16:58 +1000)]
videoaggregator: don't create converters when the subclass doesn't want them
fixes a critical with glvideomixer after
35bd1969f912cecda0fb5df9595a005e6ddf4e7a
CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed
Matthew Waters [Fri, 26 Sep 2014 12:29:56 +0000 (22:29 +1000)]
gloverlay: fix zero output frames with YUY2/UYVY
also, be nice and disable blending for other elements
Matthew Waters [Fri, 26 Sep 2014 12:22:06 +0000 (22:22 +1000)]
gloverlay: protect desktop gl specific tokens with #if
Matthew Waters [Fri, 26 Sep 2014 02:28:10 +0000 (12:28 +1000)]
gloverlay: free the image memory every time the location changes
fixes a memory leak
Sebastian Dröge [Thu, 25 Sep 2014 17:48:59 +0000 (20:48 +0300)]
gloverlay: Include into the build with GLES2 only too
Matthew Waters [Thu, 25 Sep 2014 15:45:22 +0000 (01:45 +1000)]
gltestsrc: free the shader on stop
Matthew Waters [Thu, 25 Sep 2014 15:34:54 +0000 (01:34 +1000)]
glvideomixer: fix blending with low-alpha sources
We also need to apply the blend paramaters to the alpha channel otherwise
the output of the blend will appear black at low alpha values (< 0.2).
Matthew Waters [Thu, 25 Sep 2014 15:14:35 +0000 (01:14 +1000)]
gloverlay: reimplement everything
- update for shaders
- add alpha property
- image placement properties shamelessly borrowed from gdkpixbufoverlay
- image placement properties are GstController able
- use GstGLMemory for the overlay image data
- add support for gles2
Luis de Bethencourt [Thu, 25 Sep 2014 15:04:33 +0000 (16:04 +0100)]
style: remove unnecessary break statements
Code flow never arrives to these break statements due to the gotos preceding
them. So the breaks are unnecessary, as discussed in bug 736942.
https://bugzilla.gnome.org/show_bug.cgi?id=737370
Luis de Bethencourt [Thu, 25 Sep 2014 14:45:57 +0000 (15:45 +0100)]
mpeg2enc: break statement unnecessary
Code flow never arrives to the break statements due to the goto's. So the
breaks are unnecessary.
https://bugzilla.gnome.org/show_bug.cgi?id=736942
Sebastian Dröge [Thu, 25 Sep 2014 13:13:19 +0000 (16:13 +0300)]
gl/cocoa: Switch from our custom main loop to a GMainLoop
Simplifies code a lot and makes it more similar to the other backends.
Sebastian Dröge [Thu, 25 Sep 2014 13:12:24 +0000 (16:12 +0300)]
gl/cocoa: Clear the current GL context when it should happen
Lihua Liu [Wed, 24 Sep 2014 10:42:23 +0000 (12:42 +0200)]
curlsmtpsink: Email with multipart content-type should end with a final boundary
Add final boundary for each of the sending out emails from smtpsink.
https://bugzilla.gnome.org/show_bug.cgi?id=736134
Stefan Sauer [Thu, 25 Sep 2014 08:14:41 +0000 (10:14 +0200)]
curl*sink: add more logging
Stefan Sauer [Thu, 25 Sep 2014 06:05:50 +0000 (08:05 +0200)]
curlbasesink: add a debug function
If gstreamer is build with logging enabled, add a debug function and output
verbose messages to the log instead of stderr.
Stefan Sauer [Wed, 24 Sep 2014 20:24:49 +0000 (22:24 +0200)]
curlhttpsink: only add content-disposition header if a filename is set
The header is optional and therefore we better omit it if we don't have a filename.
Stefan Sauer [Wed, 24 Sep 2014 20:06:21 +0000 (22:06 +0200)]
curlbasesink: don't replace specific error messages with a generic one
Only set an error if we haven't set one already.
Stefan Sauer [Wed, 24 Sep 2014 19:07:20 +0000 (21:07 +0200)]
curltlssink: swap check
Lets check for NULL first, as that is the default anyway.
Thibault Saunier [Tue, 29 Jul 2014 14:12:26 +0000 (16:12 +0200)]
h264parse: Return flushing if we get chained while being set to READY
Or not negotiated in the case we would be actually not negotiated
Currently we are getting assertions from
gst_pb_utils_add_codec_description_to_tag_list because of NULL
caps.
https://bugzilla.gnome.org/show_bug.cgi?id=737186
Matthieu Bouron [Tue, 9 Sep 2014 11:12:31 +0000 (13:12 +0200)]
dashdemux: mark first buffer as discont after restarting a download task
Mark first buffer as discont after restarting a download task, so
downstream can reset its state to properly handle the new fragment.
Related issue: https://bugzilla.gnome.org/show_bug.cgi?id=736318
https://bugzilla.gnome.org/show_bug.cgi?id=736319
Thiago Santos [Sat, 20 Sep 2014 01:32:39 +0000 (22:32 -0300)]
dashdemux: push a time segment when restarting streaming
This should inform demuxers/decoders downstream that the stream is
about to start from a new position and they should flush accordingly
https://bugzilla.gnome.org/show_bug.cgi?id=736319
Wim Taymans [Wed, 24 Sep 2014 14:55:49 +0000 (16:55 +0200)]
video: use video lib conversion code instead of copy
Anuj Jaiswal [Thu, 18 Sep 2014 11:56:37 +0000 (17:26 +0530)]
mplex: break statement unnecessary
One more code flow issue where it never arrives to the break statement due to
the goto. So the break is unnecessary.
Plus two coding style fixes.
https://bugzilla.gnome.org/show_bug.cgi?id=736895
Jan Schmidt [Wed, 24 Sep 2014 12:42:58 +0000 (22:42 +1000)]
chopmydata: Transfer timestamps to output buffers
Allows using chopmydata as a simple repacketizer
Anuj Jaiswal [Fri, 19 Sep 2014 04:21:48 +0000 (09:51 +0530)]
androidmedia: break statements unnecessary
Code flow never arrives to the break statements due to the goto's. So the
breaks are unecessary. Second part to commit
a3958ae65b
https://bugzilla.gnome.org/show_bug.cgi?id=736940
Anuj Jaiswal [Fri, 19 Sep 2014 04:29:41 +0000 (09:59 +0530)]
androidmedia: break statement unnecessary
Code flow never arrives to the break statements due to the goto's. So the
breaks are unecessary.
https://bugzilla.gnome.org/show_bug.cgi?id=736942
Joshua M. Doe [Thu, 18 Sep 2014 20:13:58 +0000 (16:13 -0400)]
dshowsrcwrapper: avoid error when set_caps called twice
If set_caps is called in a running state, return immediately if the caps
haven't changed. If the pins are already connected, disconnect them.
https://bugzilla.gnome.org/show_bug.cgi?id=736926
Matthew Waters [Wed, 24 Sep 2014 04:29:37 +0000 (14:29 +1000)]
glvideomixer: skip input frames with an alpha of 0
Matthew Waters [Wed, 24 Sep 2014 03:13:19 +0000 (13:13 +1000)]
gl: download whenever we have sysmem capsfeatures
Otherwise we could pass on a RGBA formatted buffer and downstream would
misinterpret that as some other video format.
Fixes pipelines of the form
gleffects ! tee ! xvimagesink
Sebastian Rasmussen [Thu, 18 Sep 2014 23:22:14 +0000 (01:22 +0200)]
gsettings: Fix typo in description
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=736933
Luis de Bethencourt [Tue, 23 Sep 2014 16:32:59 +0000 (17:32 +0100)]
mpegpsmux: refactor duplicate else branches
Unknown case should assert if reached instead of just assuming the max buffer
size.
https://bugzilla.gnome.org/show_bug.cgi?id=736460
Aurélien Zanelli [Fri, 19 Sep 2014 07:54:11 +0000 (09:54 +0200)]
vc1parse: initialize sent_codec_tag before using it
https://bugzilla.gnome.org/show_bug.cgi?id=736951
Sanjay NM [Mon, 22 Sep 2014 11:44:29 +0000 (17:14 +0530)]
videofilters: Add support for more YUV formats
https://bugzilla.gnome.org/show_bug.cgi?id=737111
Lubosz Sarnecki [Thu, 21 Aug 2014 00:14:40 +0000 (02:14 +0200)]
gltestsrc: add Mandelbrot fractal pattern.
https://bugzilla.gnome.org/show_bug.cgi?id=735131
Lubosz Sarnecki [Thu, 21 Aug 2014 00:13:58 +0000 (02:13 +0200)]
gltestsrc: implement snow pattern with GLSL.
https://bugzilla.gnome.org/show_bug.cgi?id=735131
Matthew Waters [Tue, 23 Sep 2014 02:02:18 +0000 (12:02 +1000)]
glupload: fallback to upload if contexts cannot share GL resources
Fixes pipelines of the form
gleffects ! tee ! glimagesink
as tee does not pass on the allocation query.
Matthew Waters [Tue, 23 Sep 2014 02:01:04 +0000 (12:01 +1000)]
glcontext: add gst_gl_context_can_share
Which determines whether two GstGLContext's can share sharable
OpenGL resources.
Matthew Waters [Mon, 22 Sep 2014 10:01:27 +0000 (20:01 +1000)]
gl/tests: update for upload API changes
Sebastian Dröge [Mon, 22 Sep 2014 07:08:17 +0000 (10:08 +0300)]
gl: Let gst_gl_context_get_thread() return a new reference to the GThread
Otherwise it might go away in the meantime and the caller has some random pointer.
Anuj Jaiswal [Mon, 22 Sep 2014 05:40:42 +0000 (11:10 +0530)]
gl: consecutive return, break statement
Signed-off-by: Anuj Jaiswal <anuj.jaiswal@samsung.com>
https://bugzilla.gnome.org/show_bug.cgi?id=736939
Matthew Waters [Mon, 22 Sep 2014 02:21:22 +0000 (12:21 +1000)]
gl/debug: desktop GL does not have the KHR suffixes