=== release 1.21.2 === 2022-11-07 23:53:59 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.21.2 2022-11-07 23:53:57 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.21.2 2022-11-07 20:31:25 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: Annotate `DiscovererInfo::get_audio_streams()` and others with the concrete stream info type Part-of: 2022-11-05 07:34:27 +0100 Edward Hervey * gst/subparse/gstsubparse.c: subparse: Fix non-closed tag handling. Unclear what the goal was, but we could end up reading way past the next_tag. Instead just move everything from after the end tag ('>') to the next_tag. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53040 Part-of: 2022-10-31 16:06:45 +0100 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Fix leak Release the reference on the collection which was given to us when extracting it from the event/message. Part-of: 2022-10-13 22:15:58 +0530 Sanchayan Maity * gst/playback/gstplaybin3.c: playbin3: Fix missing pad unref GST_TRACERS="leaks" GST_DEBUG="GST_TRACER:7,leaks:6" gst-play-1.0 --use-playbin3 test.mkv When running a pipeline like above, leaks are observed. 0:00:56.882419132 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d20a0, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string); 0:00:56.882429131 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d2be0, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string); 0:00:56.882437056 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d3720, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string); gst_element_release_request_pad does not unref the pad. It needs to be followed by gst_object_unref. Doing that fixes the above leaks. Use g_ptr_array_new_with_free_func with gst_object_unref as the free function to unref the pad after release. Part-of: 2022-10-26 13:42:59 +1100 Matthew Waters * gst-libs/gst/pbutils/codec-utils.c: pbutils: add correct mime mapping for vp9 Based on https://www.webmproject.org/vp9/mp4/#codecs-parameter-string Part-of: 2022-10-27 15:13:36 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideoencoder.c: core/base: Only post latency messages if the latency values have actually changed Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1525 Part-of: 2022-10-27 07:21:19 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Only post latency message if it changed Posting latency messages causes a full and potentially expensive latency recalculation of the pipeline. While subclasses should check whether the latency really changed or not before calling this function, we ensure that we do not post such messages if it didn't change. Part-of: 2022-10-26 10:25:43 +0200 Daniels Umanovskis * sys/ximage/ximagesink.c: * sys/xvimage/xvcontext.c: ximagesink, xvimagesink: set the _NET_WM_PID atom on the window This makes it easier for X11 window management to work with windows created by these sinks Part-of: 2022-10-25 09:39:07 +0300 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/sdp/gstmikey.c: Fix various warnings from gobject-introspection Part-of: 2022-10-21 21:50:01 +0530 Nirbheek Chauhan * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/vulkan: Fix static linking on macOS duplicate symbol '__invoke_on_main' in: /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a(cocoa_gstvkwindow_cocoa.m.o) /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstgl-1.0.a(cocoa_gstglwindow_cocoa.m.o) ld: 1 duplicate symbol for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) Also make the same change in iOS for consistency. Continuation of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1132 Part-of: 2022-10-04 05:39:51 +0100 Matthew Waters * gst-libs/gst/gl/meson.build: build/gl: fix automatic dispmanx detection for rpi4 rpi4 doesn't contain dispmanx but still contains bcm_host.pc which confuses the configure detection. Add an explicit check for EGL_DISPMANX_WINDOW_T to ensure that we only build with dispmanx when the types are available. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/893 Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/952 Part-of: 2022-10-19 22:08:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontextconfig.c: docs/glcontextconfig: rename title to not be GstGLContext Can be confusing havint two pages that both have GstGLContext as the title. Part-of: 2022-07-06 21:45:24 +0300 Jordan Petridis * ext/cdparanoia/meson.build: cdparanoia: Ignore compiler warning coming from the cdparanoia header When trying to build the plugin, GCC starts complaining about issues with one of the cdparanoia headers and it block us from being able to build the plugin with Werror. The current warning in the header look like this: ``` [1/2] Compiling C object subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so.p/gstcdparanoiasrc.c.o In file included from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.h:37, from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.c:31: /usr/include/cdda/cdda_interface.h:164:3: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 164 | "Success", | ^~~~~~~~~ ... /usr/include/cdda/cdda_interface.h:163:14: warning: ‘strerror_tr’ defined but not used [-Wunused-variable] 163 | static char *strerror_tr[]={ | ^~~~~~~~~~~ [2/2] Linking target subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so ``` Last release of cdparanoia was in 2008, so our best bet for the time is to ignore the warnings. Part-of: 2022-10-17 14:43:42 +0300 Sebastian Dröge * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Add/fix various annotations Part-of: 2022-10-17 14:51:03 +0300 Sebastian Dröge * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/tags.c: tag: Add/fix various annotations Part-of: 2022-10-17 11:31:05 +0300 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: allocators: Add/fix various annotations Part-of: 2022-10-15 12:16:01 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl_device.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl: Add/fix various annotations And fix a memory leaks in gst_gl_display_egl_new() error cases. Part-of: 2022-10-15 00:19:53 +0300 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/missing-plugins.c: pbutils: Add/fix various annotations Part-of: 2022-10-15 00:00:03 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtpmeta.c: * gst-libs/gst/rtp/gstrtppayloads.c: rtp: Add/fix various annotations Part-of: 2022-10-14 23:52:40 +0300 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: Add/fix various annotations Also initialize out parameters so that they don't have an undefined value in case of errors. Part-of: 2022-10-14 22:08:07 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: app: Add/fix various annotations Part-of: 2022-10-14 22:04:00 +0300 Sebastian Dröge * gst-libs/gst/audio/audio-channel-mixer.c: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Add/fix various annotations Part-of: 2022-10-14 21:59:43 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-multiview.c: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-sei.h: video: Add/fix various annotations Part-of: 2022-10-17 13:01:53 +0200 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Fix usage of raw and non-raw source provider The computation in analyze_source was wrong, and would state that the element has "all raw source pads" if it had at least one. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1029 Part-of: 2022-10-17 18:38:43 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: rtpbuffer: Initialize extended timestamp to the first wraparound period This allows correct handling of wrapping around backwards during the first wraparound period and avoids the infamous "Cannot unwrap, any wrapping took place yet" error message. It allows makes sure that for actual timestamp jumps a valid value is returned instead of 0, which then allows the caller to handle it properly. Not having this can have the caller see the same timestamp (0) for a very long time, which for example can cause rtpjitterbuffer to output the same timestamp for a very long time. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1500 Part-of: 2022-10-14 16:12:45 +0200 Edward Hervey * tools/gst-play.c: gst-play: Don't leak the stream collection We are given a reference to the collection when parsing it from the message. Just store it (instead of referencing it again). Part-of: 2022-10-13 11:21:42 -0400 Julian Bouzas * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/riff/riff-media.c: riff: Mark jpeg as parsed This is needed so that autoplugging works with avidemux and JPEG decoders that need parsed sink caps (eg rockchip 'mppjpegdec' decoder). It also works fine with 'jpegdec' decoder regardless. Part-of: 2022-10-07 11:46:29 -0300 Thibault Saunier * gst/videorate/gstvideorate.c: videorate: Do not close segment when getting a same segment twice Part-of: 2022-09-14 16:39:48 -0300 Thibault Saunier * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * tests/validate/meson.build: * tests/validate/videorate/fill_segment_after_caps_changed_before_eos.validatetest: * tests/validate/videorate/fill_segment_after_caps_changed_before_eos/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/fill_segment_after_caps_changed_before_eos/flow-expectations/log-videorate-src-expected: videorate: Handle closing segment on EOS right after caps event The scenario is what we try in the tests: - we have a segment with .stop set - some frame(s) flow - we get a CAPS event - we get an EOS (before getting buffers after the CAPS event) in that case, without that patch, the segment is not properly closed which is not correct. In this patch we keep track of previous caps until a new buffer arrives, this way in that situation we set previous caps again, and close the segment with the previous buffer. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1352 in this specific case Part-of: 2022-08-22 16:33:23 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: opengl: Fix usage of eglCreate/DestroyImage The implementation was inconsistent between create and destroy. EGLImage creation and destruction is requires for EGL 1.5 and up, while otherwise the KHR version is only available if EGL_KHR_image_base feature is set. Not doing these check may lead to getting a function pointer to a stub, which is notably the case when using apitrace. Fixes #1389 Part-of: 2022-10-06 16:23:56 +0200 Aleksandr Slobodeniuk * gst/playback/gstdecodebin3.c: decodebin3: allow to call "dispose" multiple times https://docs.gtk.org/gobject/concepts.html#reference-counts-and-cycles Part-of: 2022-10-06 13:03:26 +0200 Aleksandr Slobodeniuk * gst/playback/gstdecodebin3.c: decodebin3: fix mutex leaks Part-of: 2022-10-03 15:20:53 -0300 Thibault Saunier * gst/playback/gstdecodebin3-parse.c: decodebin3: Do not try to plug a decoder on raw formats Part-of: 2022-10-06 00:00:59 +0900 Seungha Yang * gst-libs/gst/video/gstvideosink.c: videosink: Don't return unknown end-time from get_times() ... in case of reverse playback. Otherwise basesink will not wait for clock Part-of: 2021-07-02 16:22:04 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: fix Y412_LE DMABuf import support This fixed the error below: GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp ! "video/x-raw(memory:DMABuf),format=Y412_LE" ! glimagesink 0:00:00.063737691 576978 0x557c11266920 ERROR gleglimage gsteglimage.c:577:_drm_rgba_fourcc_from_info: Unsupported format for DMABuf. Part-of: 2021-07-02 16:01:19 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: add Y410 DMABuf import support This fixed the error below: GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp ! \ "video/x-raw(memory:DMABuf),format=Y410" ! glimagesink 0:00:00.040553883 576732 0x55be9b35f920 ERROR gleglimage gsteglimage.c:577:_drm_rgba_fourcc_from_info: Unsupported format for DMABuf. Part-of: 2021-07-02 20:31:22 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: add Y212_LE / Y212_BE DMABuf import support This fixed the error below: GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp \ ! "video/x-raw(memory:DMABuf),format=Y212_LE" ! glimagesink 0:00:00.148086281 575148 0x562a6d36d920 ERROR gleglimage gsteglimage.c:555:_drm_rgba_fourcc_from_info: Unsupported format for DMABuf. Part-of: 2021-07-02 15:37:19 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: add Y210 DMABuf import support This fixed the error below: GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp ! \ "video/x-raw(memory:DMABuf),format=Y210" ! glimagesink 0:00:00.039881627 571365 0x56245eba6920 ERROR gleglimage gsteglimage.c:549:_drm_rgba_fourcc_from_info: Unsupported format for DMABuf Part-of: 2022-10-04 03:57:31 +0100 Tim-Philipp Müller * meson.build: Back to development Part-of: === release 1.21.1 === 2022-10-04 01:14:01 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.21.1 2022-10-04 01:13:59 +0100 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.21.1 2022-10-01 02:33:49 +1000 Jan Schmidt * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: playsink: Hold a reference to the soft volume element Always hold a reference to the soft volume element provided by the playsinkaudioconvert bin helper, the same as when volume is provided by a sink element, or the soft volume element gets unreffed too soon. Part-of: 2022-10-01 04:51:21 +1000 Jan Schmidt * sys/xvimage/xvimageallocator.c: xvimagesink: Don't leak XvShmImage If allocating an XvShmImage generates an X error, but still returns some allocated memory, make sure to free it so it doesn't leak. Part-of: 2022-10-01 04:49:16 +1000 Jan Schmidt * sys/xvimage/xvcontext.c: xvimagesink: Zero initialize mask array Clear the stack array before setting bits to pass to XISelectEvents(). Fixes spurious crash from an X error: X Error of failed request: BadValue (integer parameter out of range for operation) Part-of: 2022-10-01 04:47:31 +1000 Jan Schmidt * sys/xvimage/xvcontext.c: xvimagesink: Don't leak temporary Use a stack variable instead of a temporarily malloced variable that wasn't being freed properly. Fixes a small leak of a GstXvTouchDevice Part-of: 2022-10-01 04:41:06 +1000 Jan Schmidt * gst/playback/gstdecodebin3.c: decodebin3: Make sure event is writable before modifying Make sure we're operating on a private copy of an event when modifying it. Part-of: 2022-10-01 04:40:09 +1000 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Make sure event is writable before modifying. Make sure we're operating on a private copy of an event before modifying it. Part-of: 2022-10-01 04:37:05 +1000 Jan Schmidt * gst/playback/gstdecodebin3.c: decodebin3: Don't lose a ref on EOS event Make sure not to give away the ref on the final EOS event for which the probe handler is returning GST_PAD_PROBE_REMOVE when pushing the event manually. Part-of: 2022-09-30 00:10:25 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: add meta/x-klv Part-of: 2022-09-30 00:07:07 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: fix gst_pb_utils_get_caps_description_flags() And add a little unit test. Part-of: 2022-09-29 09:39:15 +0100 James Cowgill * gst-libs/gst/tag/gstxmptag.c: xmptag: Call gst_tag_register_musicbrainz_tags during init We need to call this to register the MusixBrainz tags before we use them in an XMP schema. Fixes this critical when attempting to run jpegparse on a JPEG containing MusicBrainz XMP tags: GStreamer-CRITICAL **: 20:41:07.885: gst_tag_get_type: assertion 'info != NULL' failed Part-of: 2022-09-29 14:36:38 +0300 Sebastian Dröge * tests/interactive/test-effect-switch.c: test-effect-switch: Fix some memory leaks and make effect element ownership clearer Part-of: 2018-03-28 17:54:15 +0200 Philipp Zabel * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: buffer: drop parent meta in deep copy/foreach_metadata The purpose of a deep buffer copy is to be able to release the source buffer and all its dependencies. Attaching the parent buffer meta to the newly created deep copy needlessly keeps holding a reference to the parent buffer. The issue this solves is the fact you need to allocate more buffers, as you have free buffers being held for no reason. In the good cases it will use more memory, in the bad case it will stall your pipeline (since codecs often need a minimum number of buffers to actually work). Fixes #283 Part-of: 2022-09-27 13:41:37 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Fix memory issues with active selection list This had a couple of issues: * The backing strings (from GstStream) could disappear * The actual list wasn't properly reset/freed when decodebin3 was re-used Part-of: 2022-09-21 19:19:45 +0530 Nirbheek Chauhan * meson.build: meson: Use implicit builtin dirs in pkgconfig generation Starting with Meson 0.62, meson automatically populates the variables list in the pkgconfig file if you reference builtin directories in the pkgconfig file (whether via a custom pkgconfig variable or elsewhere). We need this, because ${prefix}/libexec is a hard-coded value which is incorrect on, for example, Debian. Bump requirement to 0.62, and remove version compares that retained support for older Meson versions. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1245 Part-of: 2022-09-06 17:25:50 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * tests/validate/meson.build: * tests/validate/videorate/duplicate_on_eos.validatetest: * tests/validate/videorate/duplicate_on_eos/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/duplicate_on_eos/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/duplicate_on_eos_disbaled.validatetest: * tests/validate/videorate/duplicate_on_eos_disbaled/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/duplicate_on_eos_disbaled/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/duplicate_on_eos_half_sec.validatetest: * tests/validate/videorate/duplicate_on_eos_half_sec/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/duplicate_on_eos_half_sec/flow-expectations/log-videorate-src-expected: videorate: Add a `max-closing-segment-duplication-duration` property This allows users to let videorate fully fill the segments when received EOS or on new segment, removing an arbitrary limit of 25 duplicates which might not be what the user wants (for example on low FPS stream in GES, that sometimes leaded to broken behavior) Part-of: 2022-09-12 09:46:43 -0400 Xavier Claessens * tools/meson.build: meson: Set install_tag on some targets Trying to follow recommendation from Meson documentation: https://mesonbuild.com/Installing.html#installation-tags Move tools into 'bin' or 'bin-devel' categories to keep only libs and plugins in the default 'runtime' category. This simplifies distribution of GStreamer application skipping parts that are not needed, similarly to what Cerbero does by hardcoding huge list of files. Part-of: 2022-09-19 08:54:15 +0200 Edward Hervey * gst-libs/gst/video/video-converter.c: video-converter: Fix doc Argument names weren't correct Part-of: 2022-09-09 16:57:18 -0400 Thibault Saunier * gst/playback/gstdecodebin2.c: decodebin2: Do not fail if one of the decoders isn't able to output the requested format when expose-all=False When trying to find an decoder in that case, we loop over the different decoder factories, and check that it outputs a format that matches the requested one (through the :caps property), but if we find a decoder that do match but later on some other don't we end up failing autopluging. This patch ensures that we still plug the decoder that can work. Part-of: 2022-08-29 10:20:55 -0400 Thibault Saunier * gst-libs/gst/gl/meson.build: gl:meson: Minor typo fix Part-of: 2022-08-29 10:17:45 -0400 Thibault Saunier * docs/meson.build: doc: Do not build plugins to build the doc It is not actually necessary Part-of: 2022-09-07 10:36:09 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/playback/gsturidecodebin.c: discoverer: Fix discovering source that expose raw audio/video Exposes a "uridecodebin:post-stream-topology" property as the discoverer needs to have topology information about all streams so we need `uridecodebin` to always plug decodebins for that case. Part-of: 2022-09-07 17:11:08 -0400 Thibault Saunier * gst/playback/gsturidecodebin.c: uridecodebin: Fix some property documentation syntax Part-of: 2022-09-07 10:39:21 -0400 Thibault Saunier * gst/playback/gsturidecodebin.c: * tests/validate/meson.build: * tests/validate/uridecodebin/expose_raw_pad_caps.validatetest: uridecodebin: Ensure that pads caps are set before exposing them We are supposed to guarantee that pads that are exposed have the caps set, but for sources that have pad with "all raw caps" templates, we end up exposing pads that don't have caps set yet, which can break code (in GES for example). To avoid that we let uridecodebin plug a `decodebin` after such pads and let decodebin to handle that for us. In the end the only thing that decodebin does in those cases is to wait for pads to be ready and expose them, after that `uridecodebin` will expose those pads. Part-of: 2021-03-24 14:20:18 -0500 Zebediah Figura * meson.build: meson: Build with -Wl,-z,nodelete to prevent unloading of dynamic libraries and plugins GLib made the unfortunate decision to prevent libgobject from ever being unloaded, which means that now any library which registers a static type can't ever be unloaded either (and any library that depends on those, ad nauseam). Part-of: 2022-07-06 04:18:37 +0900 Seungha Yang * gst-libs/gst/video/video-format.c: video-format: Workaround MSVC build error ../gst-libs/gst/video/video-format.c(6779): error C2219: syntax error: type qualifier must be after '*' Part-of: 2022-09-07 16:35:38 +1000 Matthew Waters * gst/subparse/mpl2parse.c: subparse: fix crash when parsing invalid timestamps in mpl2 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49245 Part-of: 2022-09-01 15:11:31 -0400 Thibault Saunier * ext/alsa/meson.build: * ext/cdparanoia/meson.build: * ext/gl/meson.build: * ext/libvisual/meson.build: * ext/ogg/meson.build: * ext/opus/meson.build: * ext/pango/meson.build: * ext/theora/meson.build: * ext/vorbis/meson.build: * gst/adder/meson.build: * gst/app/meson.build: * gst/audioconvert/meson.build: * gst/audiomixer/meson.build: * gst/audiorate/meson.build: * gst/audioresample/meson.build: * gst/audiotestsrc/meson.build: * gst/compositor/meson.build: * gst/encoding/meson.build: * gst/gio/meson.build: * gst/overlaycomposition/meson.build: * gst/pbtypes/meson.build: * gst/playback/meson.build: * gst/rawparse/meson.build: * gst/subparse/meson.build: * gst/tcp/meson.build: * gst/typefind/meson.build: * gst/videoconvertscale/meson.build: * gst/videorate/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: * sys/ximage/meson.build: * sys/xvimage/meson.build: meson: Call pkgconfig.generate in the loop where we declare plugins dependencies Removing some copy pasted code Part-of: 2022-09-01 11:51:48 -0400 Thibault Saunier * docs/meson.build: * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: Namespace the plugins_doc_dep/libraries variables Part-of: 2022-08-31 18:44:14 -0400 Thibault Saunier * meson.build: meson: Rename plugins list and make them "dependency" objects Part-of: 2022-08-31 14:50:38 +0000 Ádám Balázs * gst/audioconvert/gstaudioconvert.c: gstaudioconvert: doc: Fix mix-matrix example mix-matrix should contain float elements, modify the example to do so Part-of: 2022-08-30 14:29:41 +0200 Rafael Caricio * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: fix buffer mapping to not increase refcount Part-of: 2022-08-23 19:12:17 +0300 Sebastian Dröge * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: Don't create invalid GstNavigationModifierType by simply passing through X11 event states Part-of: 2022-07-22 13:41:17 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * gst/playback/gstrawcaps.h: playback: add onvif metadata caps to raw caps + remove encoding from x-onvif-metadata caps output by qtdemux Part-of: 2022-08-23 16:02:31 +0200 Mathieu Duponchelle * gst/videoconvertscale/gstvideoconvertscale.c: videoconvert: fix passthrough on equivalent transfer When the input info and output info are equal, except for the transfer functions that are *not* equivalent, we need to set up a converter as we won't be passthrough. Fixes an assertion in that case. Part-of: 2022-08-17 12:53:02 +0200 Guillaume Desmottes * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * tests/check/libs/video.c: base: video-converter: add accessors for input and output formats Part-of: 2022-08-05 20:52:19 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/videoconvertscale/gstvideoconvert.c: * gst/videoconvertscale/gstvideoconvertscale.c: * gst/videoconvertscale/gstvideoconvertscale.h: * gst/videoconvertscale/gstvideoscale.c: videoconvert,videoscale: Do conversion in videoconvert and scaling in videoscale Keep behaving the same as before videoconvertscale port Part-of: 2022-08-05 20:16:00 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/videoconvertscale/gstvideoconvert.c: * gst/videoconvertscale/gstvideoconvertscale.c: * gst/videoconvertscale/gstvideoconvertscale.h: * gst/videoconvertscale/gstvideoscale.c: * tests/validate/convertscale/convert_disable_scale.validatetest: * tests/validate/convertscale/convert_disable_scale/flow-expectations/log-converter-src-expected: * tests/validate/convertscale/scale_disable_convert.validatetest: * tests/validate/convertscale/scale_disable_convert/flow-expectations/log-scaler-src-expected: * tests/validate/meson.build: Revert "videoconvertscale: Add properties to disable scaling/converting in videoconvert/videoscale" This reverts commit cd7a91cef1c6a2e24d440126b7f2ab543fb205c5. Reverting properties, scaling in videoconvert and converting in videoscale will be disabled by the other commit Part-of: 2022-08-12 22:42:28 -0700 Khem Raj * gst/subparse/gstssaparse.c: ssaparse: include required system headers for isspace() and sscanf() functions Newer compilers ( clang 15 ) have turned stricter and errors out instead of warning on implicit function declations Fixes gstssaparse.c:297:12: error: call to undeclared library function 'isspace' with type 'int (int)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] while (isspace(*t)) Part-of: 2022-08-12 13:16:50 +0300 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspurl.c: * tests/check/libs/rtsp.c: rtspurl: Use gst_uri_join_strings() in gst_rtsp_url_get_request_uri_with_control() instead of a hand-crafted, wrong version For example the query string of the base must not be taken over to the request URL unless there is no control path, and control paths can be absolute and must not be considered relative if they start with a /. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/971 Part-of: 2022-08-12 13:15:46 +0300 Sebastian Dröge * tests/check/libs/rtsp.c: rtspurl: Use fail_unless_equals_string() in tests Part-of: 2022-07-27 22:34:42 +1000 Jan Schmidt * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: Don't miscalculate text running times When a new segment event arrives, it immediately updates the current stored segment, which was used for calculating the running time of the current text buffer for every passing video frame. This means a segment that arrives after the text buffer might get used to (mis)calculate the running times subsequently. Instead, calculate and store the right running time using the current segment when storing the buffer. Later the stored segment can get freely updated. This fixes the case where pieces of video and text streams are seamlessly concatenated and fed through the text overlay. Previously, it could lead to the current text buffer suddenly have a massive running time and blocking all further input. Part-of: 2022-08-09 18:06:41 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/opus/gstopusenc.c: opusenc: improve inband-fec property documentation Part-of: 2022-06-30 16:14:27 +0300 Jordan Petridis * ext/alsa/gstalsaplugin.c: gstalsaplugin: return the result of the element registration Previously there were branches that would return FALSE, however it looks like we forgot to return the new result variable. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900 Part-of: 2022-01-22 02:35:36 +0100 Mathieu Duponchelle * gst/encoding/gstsmartencoder.c: smartencoder: fix detection of avc1 While avc1 is the FourCC, avc is the name used in caps Part-of: 2022-01-22 02:29:54 +0100 Mathieu Duponchelle * gst/playback/gstdecodebin2.c: decodebin2: don't reverse stream topology order This can be important for instance when a container holds multiple tracks with the same media type, with no indication (eg tags) of which track is the default one. In that case, players usually pick the first track by default. This is especially useful when using smart editing with GES, as it will result in the same ordering as the input file that was used as a template. For reference, this yields the same order as ffprobe. Part-of: 2022-01-21 01:02:52 +0100 Mathieu Duponchelle * gst/encoding/gstsmartencoder.c: gstsmartencoder: don't make calculations for invalid DTS Instead, as the current code relies on having a valid DTS (for lining up passed through and re-encoded segments), simply compute a DTS from the PTS if the DTS was invalid. Part-of: 2022-01-21 00:57:16 +0100 Mathieu Duponchelle * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: don't order profiles by stream ID .. when creating a profile from a discoverer info. There is no justification for the existing code, and talking with Thibault he cannot remember why the sort was in place. On the other hand, this allows GES users to not have to implement a callback for the select-tracks-for-object callback when using it to trim a single clip, which the output profile was built from: track elements will be placed in the appropriate track by default, that is the one that will be connected to the matching profile. For multi-clip timelines, the situation doesn't change, users will still have to implement a callback and do the leg work of placing track elements (if any) in a matching track (if any). Part-of: 2022-01-21 00:49:33 +0100 Mathieu Duponchelle * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: ignore more output caps fields chroma-format, bit-depth-chroma, bit-depth-luma are all informative fields set by the H265 and H265 parser upon receiving an SPS. They shouldn't be constrained downstream of the parser, instead if a user wants those to ultimately match certain values they should do so by constraining a profile. In this case however, we also always remove the profile constraint in order to let encoders pick a suitable one as a function of the raw input video format and their own capabilities. Part-of: 2022-08-01 17:25:56 +0200 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Avoid crash with unknown streams With the new addition of handling unknown sream types we *could* end up with a chain which doesn't have a current_pad (it's an intermediary one) Fixes #1287 Part-of: 2022-05-25 18:40:30 +0530 Nirbheek Chauhan * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp+rtmp: Forward warning added to tls-validation-flags to our users With the 2.72 release, glib-networking developers have decided that TLS certificate validation cannot be implemented correctly by them, so they've deprecated it. In a nutshell: a cert can have several validation errors, but there are no guarantees that the TLS backend will return all those errors, and things are made even more complicated by the fact that the list of errors might refer to certs that are added for backwards-compat and won't actually be used by the TLS library. Our best option is to ignore the deprecation and pass the warning onto users so they can make an appropriate security decision regarding this. We can't deprecate the tls-validation-flags property because it is very useful when connecting to RTSP cameras that will never get updates to fix certificate errors. Relevant upstream merge requests / issues: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2214 https://gitlab.gnome.org/GNOME/glib-networking/-/issues/179 https://gitlab.gnome.org/GNOME/glib-networking/-/merge_requests/193 Part-of: 2022-07-13 22:37:26 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: compositor: Update plugins cache Part-of: 2022-01-18 21:21:23 +0900 Seungha Yang * gst/compositor/compositor.c: compositor: Warn when inputs are SDR/HDR mixed Let user know that the result of mixed SDR/HDR is not guaranteed to be a good visual quality. Part-of: 2021-11-24 20:21:52 +0900 Seungha Yang * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: Add support for all formats For formats which we don't have fast-path implementation, compositor will convert it to common unpack formats (AYUV, ARGB, AYUV64 and ARGB64) then blending will happen using the intermediate formats. Finally blended image will be converted back to the selected output format if required. Part-of: 2021-11-20 00:41:52 +0900 Seungha Yang * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: compositor: Add support for Y444 high bitdepth formats Part-of: 2021-11-19 16:32:38 +0900 Seungha Yang * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: * gst/compositor/compositororc.orc: compositor: Add support for I420/I422 high bitdepth formats Implementation for {I420,I422}_{10,12}_{LE,BE} formats Part-of: 2021-11-19 21:46:43 +0900 Seungha Yang * gst/compositor/blend.c: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: Calculate background color only once ... instead of do that per fill_color() call in case of RGB format. Moreover, respect selected GstVideoColorRange Part-of: 2022-07-27 15:42:44 +1000 Matthew Waters * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: protect cancellable by a mutex It is entirely possible for the cancellable to be cancelled (and freed) in gst_rtsp_connection_flush() while there may be an ongoing read/write operation. Nothing prevents gst_rtsp_connection_flush() from waiting for the outstanding read/writes. This could lead to a crash like (where cancellable has been freed within gst_rtsp_connection_flush()): #0 0x00007ffff4351096 in g_output_stream_writev (stream=stream@entry=0x7fff30002950, vectors=vectors@entry=0x7ffe2c6afa80, n_vectors=n_vectors@entry=3, bytes_written=bytes_written@entry=0x7ffe2c6af950, cancellable=cancellable@entry=0x7fff300288a0, error=error@entry=0x7ffe2c6af958) at ../subprojects/glib/gio/goutputstream.c:377 #1 0x00007ffff44b2c38 in writev_bytes (stream=0x7fff30002950, vectors=vectors@entry=0x7ffe2c6afa80, n_vectors=n_vectors@entry=3, bytes_written=bytes_written@entry=0x7ffe2c6afb90, block=block@entry=1, cancellable=0x7fff300288a0) at ../subprojects/gst-plugins-base/gst-libs/gst/rtsp/gstrtspconnection.c:1320 #2 0x00007ffff44b583e in gst_rtsp_connection_send_messages_usec (conn=0x7fff30001370, messages=messages@entry=0x7ffe2c6afcc0, n_messages=n_messages@entry=1, timeout=timeout@entry=3000000) at ../subprojects/gst-plugins-base/gst-libs/gst/rtsp/gstrtspconnection.c:2056 #3 0x00007ffff44d2669 in gst_rtsp_client_sink_connection_send_messages (sink=0x7fffac0192c0, timeout=3000000, n_messages=1, messages=0x7ffe2c6afcc0, conninfo=0x7fffac019610) at ../subprojects/gst-rtsp-server/gst/rtsp-sink/gstrtspclientsink.c:1929 #4 gst_rtsp_client_sink_try_send (sink=sink@entry=0x7fffac0192c0, conninfo=conninfo@entry=0x7fffac019610, requests=requests@entry=0x7ffe2c6afcc0, n_requests=n_requests@entry=1, response=response@entry=0x0, code=code@entry=0x0) at ../subprojects/gst-rtsp-server/gst/rtsp-sink/gstrtspclientsink.c:2845 #5 0x00007ffff44d3077 in do_send_data (buffer=0x7fff38075c60, channel=, context=0x7fffac042640) at ../subprojects/gst-rtsp-server/gst/rtsp-sink/gstrtspclientsink.c:3896 #6 0x00007ffff4281cc6 in gst_rtsp_stream_transport_send_rtp (trans=trans@entry=0x7fff20061f80, buffer=) at ../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-stream-transport.c:632 #7 0x00007ffff4278e9b in push_data (stream=0x7fff40019bf0, is_rtp=, buffer_list=0x0, buffer=, trans=0x7fff20061f80) at ../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-stream.c:2586 #8 check_transport_backlog (stream=0x7fff40019bf0, trans=0x7fff20061f80) at ../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-stream.c:2645 #9 0x00007ffff42793b3 in send_tcp_message (idx=, stream=0x7fff40019bf0) at ../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-stream.c:2741 #10 send_func (stream=0x7fff40019bf0) at ../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-stream.c:2776 #11 0x00007ffff7d59fad in g_thread_proxy (data=0x7fffbc062920) at ../subprojects/glib/glib/gthread.c:827 #12 0x00007ffff7a8ce2d in start_thread () from /lib64/libc.so.6 #13 0x00007ffff7b12620 in clone3 () from /lib64/libc.so.6 Fix by adding a cancellable lock and returning an extra reference used across all read/write operations. gst_rtsp_connection_flush() can free the in-use cancellable and it will no longer affect any in progress read/write. Part-of: 2022-07-22 13:13:42 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiointerleave.c: audiointerleave: fix property docs Part-of: 2022-07-23 02:49:20 +1000 Jan Schmidt * gst-libs/gst/video/video-chroma.c: video: Fix scaling in 4x horizontal co-sited chroma 4x downscaling of chroma with co-sited chroma has never worked it seems. Fixes incorrect videotestsrc output and videoconvert conversions to Y41B, YUV9, YVU9 and IYU9 with co-sited chroma. e.g. gst-launch-1.0 videotestsrc ! video/x-raw,format=Y41B,width=1280,height=720 ! \ videoconvert ! autovideosink Part-of: 2022-07-02 06:08:57 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't force upstream alpha format "video/x-raw,format=RGBA ! some-video-filter ! video/x-raw,format=NV12" is a very common case and therefore such erroring at baseclass does not seem to be a desired behavior. Part-of: 2022-07-17 00:30:10 +0900 Seungha Yang * gst-libs/gst/video/video-converter.c: video-converter: Use primaries compare function Avoid conversion if both color primaries are functionally equal Part-of: 2022-07-16 23:36:22 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * tests/check/libs/video.c: video-color: Add primaries and colorimetry compare functions SMPTE 170M and 240M use the same RGB and white point coordinates and therefore both primaries can be considered functionally equivalent. Also, some transfer functions have different name but equal gamma functions. Adding another colorimetry compare function to deal with thoes cases at once Part-of: 2022-07-12 14:47:20 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: only allow setting the GL display/context if it is a valid value Otherwise, when setting the external application context, then the display may be cleared and then not used and the asharing mechanism does not work anymore. Part-of: 2022-07-07 23:40:22 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Add raw caps to sink pad when needed. When checking if the current upload method can support the requested caps filter in _transform_caps(), make sure the sink pad reports raw caps. Fixes #1311 Part-of: 2022-07-07 23:54:44 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: gstglupload: Remove raw caps from individual methods Raw memory upload should always be the least preferred input caps, only added by the raw memory uploader as the last thing in the caps. Caps negotiation should still choose raw data when it needs to, and other upload methods that can accept raw data buffers will still do so. Part-of: 2022-07-11 20:12:30 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: always convert when user provides converter-config The `converter-config` property may be used to perform cropping, conversion should always be performed when the user set the property to a non-NULL value. Part-of: 2022-07-08 20:49:21 +0200 Andoni Morales Alastruey * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow_cocoa: fix a leak of the GstNSView This leak is also causing a leak of the GstGLCAOpenGLLayer which leaks the GstGLWrappedContext and the GstGLDisplay Part-of: 2022-07-08 20:38:51 +0200 Andoni Morales Alastruey * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl: Fix leak of the whole CGL context This was leaking the CGL context and several resources allocated in the context, around 70MB for a 1080p clip Part-of: 2022-06-14 12:22:22 +0200 Marc Leeman * gst-libs/gst/video/video-format.c: base: lookup RGB format without alpha librfb requests a colour space for depth 32 and bpp 32 with alpha set to 0x0, treat this the same as depth 24 with bpp 32. Part-of: 2022-07-04 17:27:50 +1000 Matthew Waters * gst/videoconvertscale/gstvideoconvertscale.c: videoconvertscale: ensure writable caps when fixating format gst_video_convert_scale_get_fixed_format() receives 'othercaps' from basetransforms' fixate_caps() vmethod which explicitly mentions that '`othercaps` may not be writable'. The gst_caps_intersect() call just before may or may not produce new caps. Particularly in cases like EMPTY or ANY caps on either of the inputs, only a ref is taken and returned to the caller. As a result, gst_video_convert_scale_fixate_format() may have attempted to modify a non-writable caps structure. Fix by adding a gst_caps_make_writable(). Part-of: 2022-06-30 00:39:50 +0100 Tim-Philipp Müller * gst/subparse/samiparse.c: samiparse: clean up some GString usage There's no need to re-assign the return value of g_string_append_*() functions and such to the variable holding the GString. These return values are just for convenience so function calls can be chained. The actual GString pointer won't change, it's not a GList after all. Part-of: 2022-06-30 00:31:24 +0100 Tim-Philipp Müller * gst/subparse/samiparse.c: samiparse: micro-optimise entity handling Avoid relocations and hard-code entity string length in the struct, since we basically get it for free here. Part-of: 2022-06-30 00:13:19 +0100 Tim-Philipp Müller * gst/subparse/samiparse.c: * tests/check/elements/subparse.c: samiparse: fix handling of self-closing tags We would check the wrong string (rest of line rather than element) for the / suffix of self-closing tags, which is not only wrong but also has atrocious performance with certain strings like the garbled nonsense clusterfuzz feeds us, which might cause discoverer to time out when processing garbled SAMI files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=47461 Part-of: 2022-07-01 23:57:08 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: Revert "glupload: Fix caps query with no filter" This reverts commit 6f9ae5d7580763b5d18badb76f2166ff0012886a. The _transform_caps() function can't tell the difference between the caller wanting to know the output caps for the current method, or all possible output caps. If it includes caps for all possible methods, glupload can end up negotiating and sending the wrong output caps downstream. Partially reverts !2687 Fixes #1310 Part-of: 2022-06-28 09:38:34 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Only consider property changes a geometry change if there as an actual change Part-of: 2022-06-27 21:28:07 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * ext/gl/gstglvideomixer.c: glvideomixer: Add crop-{left,right,top,bottom} pad properties for cropping inputs Part-of: 2022-06-30 09:02:00 +0300 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: Don't set SDP medias from caps without media/payload/clock-rate fields Previously it would've silently failed reading the payload/clock-rate and instead would've used some random value that happened to be on the stack. Part-of: 2022-06-30 12:50:17 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Fix caps query with no filter If no filter caps are provided with a caps query, always generate a full set of all caps from all upload methods, not just the configured one. This is needed to handle renegotiation when dealing with raw sysmem caps - as the upload method might accept raw sysmem caps, but only the raw data uploader adds those to the caps query. Part-of: 2022-06-30 12:46:31 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: Revert "glupload: allow system memory for dmabuf in transform_caps" This reverts commit f3292dc1561a8d62812c3f1a2bb3de5c5bb6a807. Only the raw data uploader should add sysmem caps to the actual caps query, because we want them to be at the lowest priority. If upstream does select to send raw caps, then the correct upload method will still be chosen because the accept_caps implementation will accept them Part-of: 2022-06-30 18:41:01 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: gl: Don't use the full transform_caps() method for reconfiguration check When checking if we need to reconfigure when uploading, check specifically the output caps of the current method will result in compatible/incompatible caps, not the full set of output caps from all upload methods. Part-of: 2022-06-30 08:42:43 +0300 Sebastian Dröge * gst-libs/gst/video/video.h: video: Include new video-sei.h in video.h Part-of: 2022-06-29 10:55:13 +0100 Tim-Philipp Müller * meson.build: coding style: allow declarations after statement See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1243/ and https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/78 Part-of: 2022-06-16 10:19:17 +0000 James Hilliard * tests/validate/videorate/change_rate_reverse_playback.validatetest: * tests/validate/videorate/change_rate_while_playing.validatetest: videorate: remove property-value quotes Fixes warnings like: Received a structure string that contains '="0.5"'. Reading as a gdouble value, rather than a string value. This is undesired behaviour, and with GStreamer 1.22 onward, this will be interpreted as a string value instead because it is wrapped in '"' quotes. If you want to guarantee this value is read as a string, before this change, use '=(string)"0.5"' instead. If you want to read in a gdouble value, leave its value unquoted. Part-of: 2022-06-25 19:50:10 +0100 Tim-Philipp Müller * tests/check/meson.build: tests: skip unit tests for dependency-less elements that have been disabled Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1136 Part-of: 2022-05-13 12:57:06 -0400 Xavier Claessens * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-frame.h: * tests/check/libs/video.c: GstVideoFrame: Add g_auto() support Part-of: 2022-06-08 19:18:48 +0300 Vivia Nikolaidou * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: avviddec, video.c, h265parse: Workaround for broken field-based interlaced encoders Some encoders (e.g. Makito) have H265 field-based interlacing, but then also specify an 1:2 pixel aspect ratio. That makes it kind-of work with decoders that don't properly support field-based decoding, but makes us end up with the wrong aspect ratio if we implement everything properly. As a workaround, detect 1:2 pixel aspect ratio for field-based interlacing, and check if making that 1:1 would make the new display aspect ratio common. In that case, we override it with 1:1. Part-of: 2022-06-12 05:35:27 -0600 James Hilliard * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: fix EOS event sequence See docs: https://gstreamer.freedesktop.org/documentation/additional/design/seqnums.html?gi-language=c#seqnums-sequence-numbers Per docs: When a sink element receives an EOS event and creates a new EOS message to post, it should copy the seqnum from the event to the message because the EOS message is a consequence of the EOS event being received. Part-of: 2022-04-06 12:56:30 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * meson.build: * tests/check/elements/audioresample.c: Bump GLib requirement to >= 2.62 Can't require 2.64 yet because of https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/323 Part-of: 2022-05-16 19:29:10 +0200 Andoni Morales Alastruey * gst-libs/gst/video/meson.build: video: add new video-sei.h header to the list of video_headers Part-of: 2022-02-27 18:41:12 +0000 Andoni Morales Alastruey * gst-libs/gst/video/video-sei.c: * gst-libs/gst/video/video-sei.h: Fix documentation Part-of: 2022-02-17 15:55:19 +1100 Brad Hards * gst-libs/gst/video/video-sei.c: * gst-libs/gst/video/video-sei.h: h264parse: add unit test for Precision Time Stamp in SEI messages Part-of: 2022-02-17 15:55:19 +1100 Brad Hards * gst-libs/gst/video/video-sei.c: h264parse: fix copying of data and UUID Part-of: 2021-12-19 19:14:05 +0100 Andoni Morales Alastruey * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-sei.c: * gst-libs/gst/video/video-sei.h: h264parse: add support Precision Time Stamp in SEI messages Expose User Data Unregistered as a new Meta and add API to parse Precision Time Stamp (ST 0604). Fixes #927 Part-of: 2022-05-27 14:18:30 -0400 Nicolas Dufresne * gst-libs/gst/video/video-info.c: video: Fix NV12_16L32 size calculation The subsampling of the second plane was not taken into account, resulting in a 16bit per pixel buffers instead of 12. Part-of: 2022-05-25 02:10:30 +0900 Seungha Yang * gst/playback/gstplaybin3.c: playbin3: Configure combiner on pad-added if needed When collection is updated, decodebin3 exposes pad first and then streams-selected message is posted. The condition can cause a situation where playbin3 links non-existing combiner/playsink pads (since streams-selected is not posted yet) with new decodebin output pad. This commit will re-check selected/active streams condition on pad-added and reconfigure output if needed. Part-of: 2022-05-23 21:24:40 -0400 Eli Schwartz * gst-libs/gst/tag/meson.build: meson: use better zlib dependency fallback zlib is required, and if it isn't found it is checked several ways and then forced via subproject(). This code was added in commit b93e37592a3ccc0eaece1c8fef2d362b1e5fe685, to account for systems where zlib doesn't have pkg-config files installed. But Meson already does dependency fallback, and also, since 0.54.0, does the in-between checks for find_library('z') and has_header('zlib.h') via the "system" type dependency. Simplify dependency lookup by marking it as required, which also makes sure that the console log doesn't confusingly list "not found". Part-of: 2022-05-19 12:17:59 +0300 Sebastian Dröge * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/descriptions.h: pbutils: Add GST_PBUTILS_CAPS_DESCRIPTION_FLAG_METADATA and ONVIF XML Timed MetaData Part-of: 2022-05-15 16:53:12 +0000 Thibault Saunier * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * tests/check/libs/rtp.c: rtcpbuffer: Allow padding on first reduced size packets It is valid to have the padding set to 1 on the first packet and it happens very often from TWCC packets coming from libwebrtc. This means that we were totally ignoring many TWCC packets. Fix test that checked that a first packet with padding was not valid and instead test a single twcc packet with padding to check precisely what this patch was about. Part-of: 2022-05-13 13:31:55 +0200 Alicia Boya García * gst-libs/gst/app/gstappsink.c: * tests/check/elements/appsink.c: appsink: Fix race condition on caps handling Background: Whenever a caps event is received by appsink, the caps are stored in the same internal queue as buffers. Only when enough buffers have been popped from the queue to reach the caps, `priv->sample` gets its caps updated to match, so that they are correct for the following buffers. Note that as far as upstream elements are concerned, the caps of appsink are updated immediately when the CAPS event is sent. Samples pulled from appsink retain the old caps until a later buffer -- one that was sent by upstream elements after the new caps -- is pulled. The race condition: When a flush is received, appsink clears the entire internal queue. The caps of `priv->sample` are not updated as part of this process, and instead remain as those of the sample that was last pulled by the user. This leaves open a race condition where: 1. Upstream sends a new caps event, and possibly some buffers for the new caps. 2. Upstream sends a flush (possibly from a different thread). 3. Upstream sends a new buffer for the new caps. Since as far as upstream is concerned, appsink caps are the new caps already, no new CAPS event is sent. 4. The appsink user pulls a sample, having not pulled before enough samples to reach the buffers sent in step 1. Bug: the pulled sample has the old caps instead of the new caps. Fixing the race condition: To avoid this problem, when a buffer is received after a flush, `priv->sample`'s caps should be updated with the current caps before the buffer is added to the internal queue. Interestingly, before this patch, appsink already had code for this, in gst_app_sink_render_common(): /* queue holding caps event might have been FLUSHed, * but caps state still present in pad caps */ if (G_UNLIKELY (!priv->last_caps && gst_pad_has_current_caps (GST_BASE_SINK_PAD (psink)))) { priv->last_caps = gst_pad_get_current_caps (GST_BASE_SINK_PAD (psink)); gst_sample_set_caps (priv->sample, priv->last_caps); GST_DEBUG_OBJECT (appsink, "activating pad caps %" GST_PTR_FORMAT, priv->last_caps); } This code assumes `priv->last_caps` is reset when a flush is received, which makes sense, but unfortunately, there was no code in the flush code path resetting it. This patch adds such code, therefore fixing the race condition. A unit test demonstrating the bug and testing its behavior with the fix has also been added. Part-of: 2022-05-16 12:34:36 -0400 U. Artie Eoff * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: unref temporary caps The "possible_caps" needs unref after finished using to avoid memory leak. Part-of: 2022-05-05 02:54:37 +0900 Seungha Yang * tools/gst-play.c: tools: gst-play: Print position even if duration is unknown Gives better visual feedback regarding position information although duration is unknown, live streams for example. Part-of: 2022-05-09 16:21:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstglcontextquirks.c: * gst-libs/gst/gl/meson.build: gl/context: disable timer queries for ARM Mali-G52 Performing a timer query with a default framebuffer that is incomplete (from using a surfaceless context) will produce GL errors. Disable the timer query on this platform to avoid the errors. Part-of: 2022-05-07 04:43:49 +0900 Seungha Yang * tools/gst-device-monitor.c: tools: device-monitor: Print string property as-is without serialize gst_value_serialize() does more than what's needed to printf-ing especially when given GValue is already string. Just print string value as-is without gst_value_serialize() to avoid unreadable string print, especially for multi-bytes character encoding cases. Part-of: 2022-05-06 09:10:09 +0200 Edward Hervey * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin3: Cleanup and refactor combiner sourcecombine * Remove fields no longer used, or that can be replaced by smaller code * Rename "channels" to a more meaningful "input pads" * Directly handle/use combiner pads in the combiners instead of on the playbin3 main structure Remove the corresponding combiner sinkpad whenever a uridecodebin3 source pad goes away * If used, store the corresponding combiner sink pad in the SourcePad helper structure Part-of: 2022-05-03 16:25:19 +0200 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Don't modify inexistant GstStream When handling exposing un-handled streams, we can only replace the GstStream for those we are creating ourselves (i.e. the fallback collection). Fixes assertions when the demuxer creates those streams Part-of: 2022-05-03 16:08:39 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: playbin3: Don't use unknown types for default selection When creating a fallback default selection from a collection, don't attempt to use unknown stream types Part-of: 2022-05-03 13:37:31 +0300 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: If no channel-mask can be fixated then use a NONE channel layout Otherwise this is generating caps without a channel-mask, which is invalid for >1 channels and will always fail negotiation. Part-of: 2022-05-02 14:36:03 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache for NV12_4L4 and NV12_16LE32 gl support Part-of: 2022-04-14 15:02:11 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: opengl: Add NV12_4L4 conversion support This format is produced notably by Hantro G1/G2 HW. Using a shader instead of the Hantro embedded converter helps reduce drastrictly the memory usage at a relatively small GPU overhead. Part-of: 2022-04-12 14:18:59 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: opengl: Add NV12_16L32S conversion support This adds a first detiling shader with initial support for NV12_16L32S as produced by Mediatek decoders. Part-of: 2022-04-13 14:54:40 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglsl.c: glsl: Enable GLSL 1.30 if we have OpenGL 3.0/3.1 As implemented, we only support OpenGL 3 API from version 3.2. Though, there is no issue enabling GLSL 1.30 even if we are going to restrict our API usage to 2. This allows using texelFetch() on OpenGL 3.0 and 3.1 drivers. Part-of: 2022-04-12 12:24:03 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: opengl: Add low level support for tiled formats This adds support for tiled format in stride and plane size code. Part-of: 2022-04-12 12:16:23 -0400 Nicolas Dufresne * gst-libs/gst/video/video-frame.c: video: Port video frame to the new tile size helper This is now moved to the library, so it can be used in multiple places. Part-of: 2022-04-12 12:14:03 -0400 Nicolas Dufresne * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: Add a helper to get the tile size information Since the addition of tiling format with subsampled tile size (NV12_16L32S), getting the tile width/height shifts and tile size have become more complex. Add a helper to extract and scale this information for the selected plane and format. Part-of: 2022-04-12 12:18:06 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Add missing NV21/61 support Caps would allow that, but selecting this format would lead to an "no reached" assertion in the code. Part-of: 2022-04-27 10:18:39 +0100 Philippe Normand * gst-libs/gst/video/gstvideodecoder.c: videodecoder: release stream lock after handling gap events The stream lock is taken before handling gap events but was not released in all possible runtime situations. This issue was introduced in: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1274 Part-of: 2022-04-28 15:32:27 +1000 Matthew Waters * gst/subparse/samiparse.c: subparse: don't deref a potentially NULL variable If the html SAMI data is malformed, then retrieving the attribute name may fail. We then cannot retrieve the attribute value. Fixes: https://oss-fuzz.com/testcase-detail/4700130671984640 Part-of: 2022-04-27 09:22:40 +0200 Edward Hervey * gst/playback/gstparsebin.c: * tools/gst-play.c: parsebin: Expose streams of unknown type This actually respects the existing `expose-all-streams` property by exposing them and having them present in the stream collection (as streams of type unknown). Fixes #1179 Part-of: 2022-04-27 08:23:59 +0200 Edward Hervey * gst/playback/gstplaybin2.c: playbin2: Remove dead code blacklisted_mimes has been empty for ages. Remove the code "using" it. Part-of: 2022-04-21 02:04:57 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: timeoverlay: add support for reference timestamp time mode + update date-time mode to actually use the timestamp that was selected with the time-mode property Co-authored-by: Sebastian Dröge Part-of: 2022-04-27 02:08:00 +0200 Mathieu Duponchelle * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: always store input buffer meta before negotiation The decision to store the input buffer depends on whether extensions are to be added to the output buffer, I assume as an optimization. This creates an issue for subclasses that call negotiate(), where header_exts is actually populated, from their handle_buffer() implementation: at chain time, no header extension has been negotiated yet, which means that we don't add extensions to the first batch of buffers that comes out. Keep track of whether negotiate has been called (this is different from the negotiated field) and always store the input buffer until then. This fixes the issue while largely preserving the optimization. Part-of: 2022-04-24 23:19:00 +0800 He Junyan * gst/videoconvertscale/gstvideoconvertscale.c: videoscale: Fix the src video info error in transfer_colorimetry_from_input() Pipeline such as: gst-launch-1.0 -vf videotestsrc ! video/x-raw,format=NV12,colorimetry=\(string\)bt709 \ ! videoscale ! video/x-raw,format=I420 ! fakesink Always trigger a error: ERROR video-info video-info.c:556:gst_video_info_from_caps: no width property given Because it is called before the fixate_size(), the src caps' resolution may be absent or not fixed. That causes that the src video info can not be created correctly and we can not inherit the colorimetry and chroma-site from the input caps. Part-of: 2022-04-26 10:58:08 +0200 Guillaume Desmottes * gst/videorate/gstvideorate.c: videorate: fix assertion when pushing last and only buffer without duration Fixing this pipeline: gst-launch-1.0 filesrc location=sample.png ! pngdec ! videorate ! fakesink - videorate receives a single buffer with pts = 0, duration = invalid; - then it receives eos triggering this buffer to be pushed downstream; - the pushing code was assuming that a duration was set, which is impossible as we received a single buffer and no output framerate was set either. So the best we can do is to push the buffer without duration. Fix #1177 Part-of: 2022-04-26 09:29:39 +0200 Edward Hervey * ext/ogg/gstoggstream.c: oggdemux: Protect against invalid framerates This check wasn't done for all mappings. Part-of: 2022-03-07 08:46:57 -0500 Xavier Claessens * gst-libs/gst/gl/meson.build: Meson: Fix deprecation warnings Part-of: 2022-04-21 11:41:43 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: Revert "videorate: Update the base time on segment updates" This reverts commit 75b4809ebc23814009bebc70c775ab44d85decf2. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186 Part-of: 2022-04-21 11:41:36 +0300 Sebastian Dröge * tests/check/elements/videorate.c: Revert "videorate: Add test for segment update" This reverts commit a76f38b2c7ddbed546bb058c32ebcf8a553c003f. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186 Part-of: 2022-04-21 11:41:25 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: * tests/check/elements/videorate.c: Revert "videorate: Only "close" the segment if it is discontinous" This reverts commit 6f7922b4dbba5ed780e7b0988669a81848a9e333. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186 Part-of: 2022-04-21 11:41:15 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: Revert "videorate: Drop incoming buffers that are outside of the segment" This reverts commit 24fd80344dbc059b72e13d813ca82f414a9d6cce. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186 Part-of: 2022-04-21 11:40:47 +0300 Sebastian Dröge * tests/check/elements/videorate.c: Revert "videorate: Add unit test for closing a segment and opening a separate one" This reverts commit 98f2a84a289ed4d4cfac9bc5c73182a56eefa99c. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186 Part-of: 2020-11-26 18:18:52 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: keep old buffer when processing a MISSING_DATA gap GAP events flagged with MISSING_DATA are transformed into GAP buffers flagged with CORRUPTED. In these cases, it is preferable to simply keep rendering the previous buffer (if there was one) instead of flashing the pad in and out of view. Part-of: 2020-11-26 18:16:10 +0100 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: fix prepare_frame obscuring check A pad without a buffer or with a GAP buffer cannot obscure a pad below it. Ignore those when considering whether a pad should be drawn. Part-of: 2020-11-26 15:57:10 +0100 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: a pad without a frame can't obscure the background Skip those when considering whether the background should be drawn Part-of: 2022-04-20 16:25:49 -0500 Olivier Crête * tests/check/elements/videoscale.c: videoscale: Add test to ensure that non-scaled metas are kept Just make sure that we're not breaking non-scaled metas Part-of: 2022-02-02 15:28:15 +0000 James Cowgill * tests/check/elements/videoscale.c: videoscale: Add test for transform_meta function Part-of: 2022-02-02 15:28:21 +0000 James Cowgill * gst/videoconvertscale/gstvideoconvertscale.c: videoscale: Don't copy scaled metas Returning TRUE from the `transform_meta` function tells GstBaseTransform to copy the meta into the new buffer. If videoscale has already transformed a meta by scaling it, it should always return FALSE to avoid duplicating the meta. Part-of: 2022-04-01 15:16:20 +0530 Nirbheek Chauhan * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: Fix unused variable warnings These are emitted when XInput 2 is not available. ``` ../subprojects/gst-plugins-base/sys/ximage/ximagesink.c: In function ‘gst_x_image_sink_handle_xevents’: ../subprojects/gst-plugins-base/sys/ximage/ximagesink.c:696:29: warning: unused variable ‘state’ [-Wunused-variable] 696 | GstNavigationModifierType state = GST_NAVIGATION_MODIFIER_NONE; | ^~~~~ ../subprojects/gst-plugins-base/sys/ximage/ximagesink.c:694:35: warning: unused variable ‘touch_frame_open’ [-Wunused-variable] 694 | gboolean pointer_moved = FALSE, touch_frame_open = FALSE; | ^~~~~~~~~~~~~~~~ ../subprojects/gst-plugins-base/sys/xvimage/xvimagesink.c: In function ‘gst_xv_image_sink_handle_xevents’: ../subprojects/gst-plugins-base/sys/xvimage/xvimagesink.c:427:35: warning: unused variable ‘touch_frame_open’ [-Wunused-variable] 427 | gboolean pointer_moved = FALSE, touch_frame_open = FALSE; | ^~~~~~~~~~~~~~~~ ../subprojects/gst-plugins-base/sys/xvimage/xvimagesink.c:426:29: warning: unused variable ‘state’ [-Wunused-variable] 426 | GstNavigationModifierType state = GST_NAVIGATION_MODIFIER_NONE; | ^~~~~ ``` Part-of: 2022-04-21 10:21:37 -0400 Thibault Saunier * tests/validate/convertscale/convert_disable_scale.validatetest: * tests/validate/convertscale/convert_disable_scale/flow-expectations/log-converter-src-expected: * tests/validate/convertscale/scale_disable_convert.validatetest: * tests/validate/convertscale/scale_disable_convert/flow-expectations/log-scaler-src-expected: tests: convertscale: Do not log EOS events in validateflow We already checked that we are getting an EOS before going back to ready and adding the EOS at the end of the .validateflow is racy as the ERROR message might reach the bus before it is logged. Part-of: 2022-04-14 09:48:14 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/videoconvertscale/gstvideoconvert.c: * gst/videoconvertscale/gstvideoconvertscale.c: * gst/videoconvertscale/gstvideoconvertscale.h: * gst/videoconvertscale/gstvideoscale.c: * tests/validate/convertscale/convert_disable_scale.validatetest: * tests/validate/convertscale/convert_disable_scale/flow-expectations/log-converter-src-expected: * tests/validate/convertscale/scale_disable_convert.validatetest: * tests/validate/convertscale/scale_disable_convert/flow-expectations/log-scaler-src-expected: * tests/validate/meson.build: videoconvertscale: Add properties to disable scaling/converting in videoconvert/videoscale Part-of: 2021-05-21 18:55:25 -0400 Thibault Saunier * gst/videoconvertscale/gstvideoconvert.c: * gst/videoconvertscale/gstvideoconvertscale.c: * gst/videoconvertscale/gstvideoconvertscale.h: * gst/videoconvertscale/gstvideoscale.c: videoconvertscale: Don't claim we can support any kind of memory Since d0133a2d11566ff4c0cded7af8dfdff0046e0e8b "videoconvert: Allow passthrough for ANY caps features" videoconvert will always claim that it supports any kind of memory which is true in very specific case (when it is running in passthrough mode). To get elements that autoplug converters depending on the caps running in the pipeline (like autovideoconvert), we need to have converters no lie about what they can do when queried `accept_caps` or `query_caps`. This still accepts any caps feature as before but it introduces a restriction in the way we handle memory capsfeatures. We keep previous behaviour in videoconvert and videoscale. Part-of: 2020-04-17 15:23:03 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/meson.build: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/meson.build: * gst/videoconvertscale/README: * gst/videoconvertscale/gstvideoconvert.c: * gst/videoconvertscale/gstvideoconvert.h: * gst/videoconvertscale/gstvideoconvertscale.c: * gst/videoconvertscale/gstvideoconvertscale.h: * gst/videoconvertscale/gstvideoconvertscaleplugin.c: * gst/videoconvertscale/gstvideoscale.c: * gst/videoconvertscale/gstvideoscale.h: * gst/videoconvertscale/meson.build: * gst/videoscale/README: * gst/videoscale/meson.build: * meson_options.txt: Introduce the videocolorscale element Now that videoconvert and videoscale's are both based on GstVideoConverter and are using the exact same code, it makes much more sense to have one element doing the two operation, and it can be more efficient in some cases (one single path for both operations). This removes the `videoscale` and `videoconvert` plugins but keeps the element but makes them also do both operations (adding some APIs to each element). There is a small change in API for the `videoscale:dither` property which was previously a totally unused boolean, it is now an enum and is used. Part-of: 2022-04-07 19:36:25 +0300 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Parse the RFC5576 Source-specific media SDP attributes into caps The format of the caps fields is ssrc-(SSRC_VALUE)-(ATTRIBUTE_NAME)=(ATTRIBUTE_VALUE) . Parsing of the attributes from the caps into the SDP is not implemented as this depends not only a single stream's caps but on the whole rtpbin configuration. Part-of: 2022-04-18 18:53:45 +0900 Camilo Celis Guzman * ext/gl/gstglmixerbin.c: gstglmixerbin: minor refactor of _find_element_pad_template As suggested by @slomo, make the loop more readable and prevent returning a garbage value to the caller from the previous implementation. Part-of: 2022-03-25 10:18:34 -0400 Xavier Claessens * meson.build: Always define ENABLE_NLS GLib guarantees libintl API is always available, provided by proxy-libintl as last resort. GLib itself unconditionally define ENABLE_NLS. Part-of: 2022-03-25 10:20:24 -0400 Xavier Claessens * gst-libs/gst/gettext.h: * gst-libs/gst/gst-i18n-app.h: * gst-libs/gst/gst-i18n-plugin.h: Delete unused i18n headers Part-of: 2022-03-25 09:59:23 -0400 Xavier Claessens * ext/alsa/gstalsaelement.c: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gl/gstgltestsrc.c: * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/gl/gstglbasesrc.c: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/tags.c: * gst/encoding/gstencodebasebin.c: * gst/encoding/gstencodingelements.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybackelement.c: * gst/playback/gstplaybackplugin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstsocketsrc.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * tools/gst-device-monitor.c: * tools/gst-play.c: Replace gst-i18n-*.h with gi18n-lib.h GLib guarantees libintl is always present, using proxy-libintl as last resort. There is no need to mock gettex API any more. This fix static build on Windows because G_INTL_STATIC_COMPILATION must be defined before including libintl.h, and glib does it for us as part as including glib.h. Part-of: 2022-03-25 11:21:03 -0400 Xavier Claessens * tools/gst-play.c: gst-play: Do not split translatable string Concatenating N_() strings does not work with gi18n.h macro, was working only with GStreamer's redefinition. Part-of: 2021-12-08 11:48:08 +0000 Thibault Saunier * gst-libs/gst/gl/meson.build: cuda: Factor out a public GstCUDA library So applications and elements implemented outside GStreamer can reuse our infrastructure Part-of: 2022-04-19 11:05:05 -0400 Nicolas Dufresne * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-frame.c: video: Fix possible overrun when iterating comp[] array Fix 2 iterations that can overrun the array if the number of component is equal to the size of the array. Part-of: 2022-04-19 10:53:15 -0400 Nicolas Dufresne * gst-libs/gst/video/video-frame.c: Revert "video-frame: avoid possible out of bound memory access" This reverts commit c4255f08f787ff6a41504b538fa4c2e911d40ec7. Part-of: 2022-04-18 15:44:47 +0530 Nirbheek Chauhan * gst-libs/gst/sdp/meson.build: meson: Add -Wl,-rpath,${libdir} on macOS We made the gstreamer installation prefix relocatable by picking up plugins relative to the location of libgstreamer-1.0.dylib, similar to how it's done for Windows: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1627 This had a lot of side-effects: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1051 https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/363 https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/371 https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/362 A partial fix for the cerbero side of these was: https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/807 However, this relied on the consumers knowing that they need to add `LC_RPATH` entries to the libdir of the prefix. This is done automatically by build systems like Meson, but not by others, such as Autotools, CMake, Cargo, XCode, etc. For those, we need to add the RPATH entries to the gstreamer-1.0.pc file. This also has the side-effect of fixing the loading of gstreamer rust plugins on macOS: Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1159 Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1149 Part-of: 2022-04-18 18:14:44 +0900 Camilo Celis Guzman * gst-libs/gst/video/video-frame.c: video-frame: avoid possible out of bound memory access Although the components' initialization code would fill in -1 to all unset components, make the code a bit more defensive and check for an index bound first. Part-of: 2021-11-12 20:13:10 +0100 Ruben Gonzalez * docs/plugins/gst_plugins_cache.json: gst_plugin_load_file: force plugin reload if diff filename If a file includes a new version of a plugin that exits in the registry, the output of gst-inspect is incorrect. The output has the correct version but incorrect filename, and element description. This seems to have also fixed some documentation issues. Part-of: 2021-05-25 14:41:51 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: fix collection leak get_merged_collection() returns an owned stream collection and was leaked in the else block. Fix leak when running: GST_TRACERS=leaks GST_DEBUG="GST_TRACER:7,leaks:6" gst-play-1.0 --use-playbin3 test.mkv Part-of: 2022-04-15 14:03:08 +0900 hoonhee.lee * gst/playback/gstplaybin3.c: playbin3: fix missing lock when unknown stream type in pad-removed cb Part-of: 2022-04-14 15:21:48 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Don't duplicate stream selections Make sure that the requested stream selection isn't identical to the current one. If that's the case, just carry on as usual. This avoids multiple `streams-selected` posting ... when the selection didn't change. Part-of: 2022-04-14 18:44:48 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: fix annotations Part-of: 2022-04-15 19:55:34 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Don't write header extensions if there's no corresponding input buffer for the packet The GstRTPHeaderExtension API requires the input buffer to exist. This can happen if the output packet is generated e.g. from a caps or tags event like in the case for rtpgstpay. Part-of: 2022-04-14 20:10:46 +1000 Brad Hards * tests/interactive/audio-trickplay.c: * tests/interactive/benchmark-appsink.c: * tests/interactive/benchmark-appsrc.c: * tests/interactive/benchmark-video-conversion.c: * tests/interactive/input-selector-test.c: * tests/interactive/meson.build: * tests/interactive/output-selector-test.c: * tests/interactive/playback/decodetest.c: * tests/interactive/playback/test.c: * tests/interactive/playback/test2.c: * tests/interactive/playback/test3.c: * tests/interactive/playback/test4.c: * tests/interactive/playback/test5.c: * tests/interactive/playback/test6.c: * tests/interactive/playback/test7.c: * tests/interactive/playbin-text.c: * tests/interactive/position-formats.c: * tests/interactive/stress-playbin.c: * tests/interactive/stress-videooverlay.c: * tests/interactive/test-box.c: * tests/interactive/test-colorkey.c: * tests/interactive/test-effect-switch.c: * tests/interactive/test-header-compile: * tests/interactive/test-overlay-blending.c: * tests/interactive/test-resample.c: * tests/interactive/test-reverseplay.c: * tests/interactive/test-scale.c: * tests/interactive/test-textoverlay.c: * tests/interactive/test-videooverlay.c: * tests/meson.build: tests: rename 'icles' subdir to be more descriptive Part-of: 2022-04-12 01:35:43 +0900 Seungha Yang * tools/meson.build: meson: gst-play: Restore Windows high-resolution timer support Fix regression of the commit 2952a73f4083487f33ae83407bef5245d2f8fef2 Part-of: 2022-04-12 01:01:23 +0900 Seungha Yang * tools/gst-play.c: * tools/meson.build: win32: Enable high-resolution timer for MinGW build timeapi.h is missing in our MinGW toolchain. Include mmsystem.h header instead, which defines struct and APIs in case of our MinGW toolchain. Note that in case of native Windows10 SDK (MSVC build), mmsystem.h will include timeapi.h Part-of: 2022-04-12 15:23:08 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: Fix `transfer` gobject-introspection annotation typos Part-of: 2022-04-10 10:55:02 +1000 Matthew Waters * gst/subparse/gstsubparseelement.c: subparse: don't try to index string with -1 If the len of the string turns out to be 0, str[len - 1] resolved to str[-1] which is not a good idea. Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=46543 Part-of: 2022-04-08 11:10:49 +1000 Matthew Waters * ext/ogg/gstoggstream.c: * ext/ogg/vorbis_parse.c: * ext/ogg/vorbis_parse.h: ogg: fix possible buffer overrun If an ogg stream does not match our expectations of how the end of a buffer may be structured, it was possible to read memory past the end of the buffer parsed by libogg. Include a bounds check for this case and stop parsing. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3930 Part-of: 2022-04-08 01:52:32 +0200 Mathieu Duponchelle * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: fix transfer annotation for push and push_list Part-of: 2022-04-07 10:08:37 +0900 hoonhee.lee * gst-libs/gst/riff/riff-media.c: riff-media: fix memory leak after usage for g_strjoin This leak is observed with valgrind. Part-of: 2022-04-06 18:08:46 +0200 Bastian Krause * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: let graphene alloc its structures memory aligned With NEON instructions enabled, graphene expects the memory passed to it 16-byte-aligned. Otherwise unaligned memory access faults occur causing SIGBUS signals. graphene has alloc functions for its structures that take care of this, so use them. See also: https://github.com/ebassi/graphene/issues/215#issuecomment-794744829 Suggested-by: Sebastian Dröge Signed-off-by: Bastian Krause Part-of: 2022-04-04 10:46:24 +0530 Nirbheek Chauhan * gst-libs/gst/app/gstappsrc.c: appsrc: Clarify buffer ref semantics in signals The documentation could be read to mean that the caller continuous to 'own' the buffer, and that there is some other mechanism to find out when to unref it. Clarify that "not taking ownership" here means "taking a reference", and specify that you can unref it at any time after calling the function. Part-of: 2021-01-21 16:01:38 +0800 Zhao Zhili * tests/examples/gl/gtk/gstgtk.c: * tests/examples/playback/playback-test.c: examples: fix build on macOS with gtk+-quartz-3.0 gdk_quartz_window_get_nsview is not declared in the header file now: error: implicit declaration of function 'gdk_quartz_window_get_nsview' is invalid in C99 [-Werror,-Wimplicit-function-declaration] fixes #979 Part-of: 2022-04-01 21:47:59 +0800 Haihua Hu * ext/gl/gstglelement.c: * sys/ximage/ximage.c: * sys/xvimage/xvimage.c: * tests/check/elements/glfilter.c: * tests/check/elements/glimagesink.c: * tests/check/elements/glmixer.c: * tests/check/elements/glstereo.c: * tools/gst-play.c: ximagesink/xvimagesink: use GST_XINITTHREADS to ensure call to XInitThreads Part-of: 2022-03-30 11:06:02 -0400 Xavier Claessens * meson.build: Use gmodule-no-export-2.0 We don't need `-Wl,--export-dynamic`, that's used only for executables that needs to export an API to be used by plugins they load. Part-of: 2022-03-25 15:00:20 -0400 Xavier Claessens * ext/alsa/meson.build: * ext/cdparanoia/meson.build: * ext/libvisual/meson.build: * ext/ogg/meson.build: * ext/opus/meson.build: * ext/pango/meson.build: * ext/theora/meson.build: * ext/vorbis/meson.build: * gst-libs/gst/sdp/meson.build: * gst/tcp/meson.build: * gst/videoscale/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: * sys/ximage/meson.build: * sys/xvimage/meson.build: * tests/check/meson.build: * tests/examples/app/meson.build: * tests/examples/audio/meson.build: * tests/examples/decodebin_next/meson.build: * tests/examples/dynamic/meson.build: * tests/examples/encoding/meson.build: * tests/examples/fft/meson.build: * tests/examples/gio/meson.build: * tests/examples/overlay/meson.build: * tests/examples/playback/meson.build: * tests/examples/playrec/meson.build: * tests/examples/seek/meson.build: * tests/examples/snapshot/meson.build: * tools/meson.build: Remove glib and gobject dependencies everywhere They are part of gst_dep already and we have to make sure to always have gst_dep. The order in dependencies matters, because it is also the order in which Meson will set -I args. We want gstreamer's config.h to take precedence over glib's private config.h when it's a subproject. While at it, remove useless fallback args for gmodule/gio dependencies, only gstreamer core needs it. Part-of: 2022-03-31 12:47:06 +0200 Xabier Rodriguez Calvar * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: should copy metadatas from the incoming buffer Part-of: 2022-04-01 10:25:23 +0300 Sebastian Dröge * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: playbin/playbin3: Allow setting a NULL URI The URI is already initialized to NULL at the beginning and GstPlayer was assuming that it is possible to set to NULL at a later time too. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1124 Part-of: 2022-03-31 23:41:41 +0200 Thibault Saunier * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: navigation: Rename parse_state to parse_modifier_state `parse_state` sounds a bit weird and `parse_modifier_state` is clearer. Part-of: 2022-03-29 17:51:13 +0200 Stéphane Cerveau * gst-libs/gst/gl/meson.build: * tests/check/libs/gstglmatrix.c: * tests/check/meson.build: base:gl: add x11 deps to gstglx11_dep On MacOS with homebrew the xlib-xcb.h is in own cellar /opt/homebrew/Cellar/libx11/1.7.3.1/include Need to add the windowing dependencies to gl tests Part-of: 2020-03-30 15:16:29 -0400 Xavier Claessens * tests/examples/overlay/meson.build: overlay: Fix qt support detection On Ubuntu moc-qt5 command is called moc. This requires Meson 0.54.0 for the new has_tools() method. Part-of: 2022-03-29 22:16:14 +0900 Seungha Yang * tools/gst-play-kb.c: gst-play: Improve Win32 keyboard input handling The console HANDLE will be keep signalled state unless application reads console input buffer immediately. So we should read and flush console input buffer from the thread where the event is signalled, instead of GMain context thread. Part-of: 2021-09-11 12:17:56 -0300 Thibault Saunier * meson.build: * tools/meson.build: tools: Add support for building gstreamer tools against gst-full Part-of: 2022-03-28 18:43:27 +0200 Enrique Ocaña González * gst/playback/gstplaysink.c: playsink: improve GL context sharing Configure playsink tried element with the bus of the main pipeline. That tried element can be a gl video sink, which would benefit from being able to propagate context messages to the main pipeline and have other internal pipeline elements configured with it. Having different elements configured with the same GL context allows them to share buffers with video/x-raw(memory:GLMemory) caps and achieving zero-copy. Thanks to Alicia Boya García for her work co-debugging the issue and contributing to find a solution. Part-of: 2021-06-09 11:25:36 +0200 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: When streams-aware, remove pads immediately For the same reason we add them immediately Part-of: 2021-06-08 14:31:10 +0200 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Don't wait for pads content when streams-aware If the adaptive demux is streams-aware it can add/remove pads at any point in time without the need for no-more-pads or data blocking Part-of: 2021-05-29 07:31:15 +0200 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Don't do buffering if source already does Sources that can internally handle buffering shouldn't have yet-another buffering element after it. This can be simply detected by checking if it can answer a TIME BUFFERING query just after creation. If that is the case, we can expose the element source pads directly Part-of: 2021-05-28 07:49:10 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Handle upstream selection Detect if upstream handles stream-selection, and if so bypass all stream selection handling (streams are forwarded as-is). Part-of: 2022-03-28 12:13:12 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Fix wmv screen detection strncmp vs !strncmp :) Part-of: 2022-03-28 10:10:45 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/video/video-format.h: video-format: Move NV12_8L128 into the correct position in GST_VIDEO_FORMATS_ALL Part-of: 2022-03-16 10:31:56 +0000 Corentin Damman * gst/rawparse/gstrawvideoparse.c: rawvideoparse: set format from caps in gst_raw_video_parse_set_config_from_caps Part-of: 2022-03-27 16:35:14 +1100 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: slightly better pad/element creation Use the return value from gst_element_link_pads() and gst_bin_add() Fixes: ../ext/gl/gstglmixerbin.c:305:12: error: variable 'res' set but not used [-Werror,-Wunused-but-set-variable] gboolean res = TRUE; ^ Part-of: 2022-03-25 13:00:13 +0100 Stéphane Cerveau * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl: cocoa: fix warnings of unused variables Part-of: 2022-03-18 16:59:32 +0000 Thibault Saunier * ext/gl/gstglimagesink.c: * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/libs/navigation.c: * tests/examples/playback/playback-test.c: navigation: Add support for key Modifiers in all relevant events Part-of: 2022-03-24 13:01:52 +0100 Vivienne Watermeier * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: navigation: Add missing annotation to send_event_simple Adds the missing "transfer full" annotation for the event argument. Part-of: 2022-03-22 21:13:31 +0100 Vivienne Watermeier * sys/xvimage/meson.build: * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: * sys/xvimage/xvimagesink.c: xvimagesink: Add touch event support Send touch events for XI_TouchBegin, XI_TouchEnd, and XI_TouchUpdate events, grouping events with identical timestamps into one TOUCH_FRAME. Part-of: 2022-02-03 15:01:46 +0100 Vivienne Watermeier * meson_options.txt: * sys/meson.build: * sys/ximage/meson.build: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: ximagesink: Add touch event support Send touch events for XI_TouchBegin, XI_TouchEnd, and XI_TouchUpdate events, grouping events with identical timestamps into one TOUCH_FRAME. Part-of: 2022-01-31 20:25:23 +0100 Vivienne Watermeier * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: navigation: Add API for touchscreen events Add 5 new navigation event types for touchscreen events, with the same naming and meaning as in libinput - touch-down, touch-motion, touch-up, touch-frame and touch-cancel - as well as constructors and parse functions for them. Part-of: 2022-02-14 16:08:23 +0100 Vivienne Watermeier * ext/gl/gstglimagesink.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstgltransformation.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/videoscale/gstvideoscale.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/libs/navigation.c: * tests/examples/playback/playback-test.c: all: Use new navigation interface and API Use and implement the new navigation interface in all relevant sink elements, and use API functions everywhere instead of directy accessing the event structure. Part-of: 2022-02-14 14:22:29 +0100 Vivienne Watermeier * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: navigation: Add coordinate helper functions Add a function to get x/y coordinates from suitable navigation events, and one to create a copy with given coordinate values. For e.g. translating event coordinates, this avoids having to either switch on the event type to select the right parse function, or having to rely on implementation details of the underlying event structure. Part-of: 2022-02-14 14:06:12 +0100 Vivienne Watermeier * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * tests/check/libs/struct_aarch64.h: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_ppc32.h: * tests/check/libs/struct_ppc64.h: * tests/check/libs/struct_x86_64.h: navigation: Improve interface to avoid exposing implementation details This deprecates the current send_event interface, and the wrapper functions based on it, replacing it with a send_event_simple interface and wrapper function. Together with the new event constructors, this avoids implementations having to directly access the underlying structure. Part-of: 2022-03-18 16:34:38 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache after NV12_8L128 addition Part-of: 2021-08-12 11:00:11 +0800 Ming Qian * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * tests/check/elements/videoscale.c: * tests/check/libs/video.c: video: Add support for linear 8x128 NV12 tiles and 10bit BE tiles This adds linear 8x128 NV12 based tiles and NV12 10bit big endian tiles. These formats are used by i.MX 8QXP/8QM VPU and exposed in V4L2. Part-of: 2022-03-18 13:42:27 +0530 Nirbheek Chauhan * meson.build: meson: Bump all meson requirements to 0.60 Lots of new warnings ever since https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1934 Part-of: 2022-03-18 20:43:24 +1100 Matthew Waters * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: chain up to parent finalize methods in all our types Fixes a memory leak: Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x5ac5cd in malloc /src/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:129:3 #1 0x1007007 in g_malloc /work/glib-2.72.0/_builddir/../glib/gmem.c:125:13 #2 0xf82e82 in g_data_set_internal /work/glib-2.72.0/_builddir/../glib/gdataset.c:464:8 #3 0xf833f7 in g_datalist_id_set_data_full /work/glib-2.72.0/_builddir/../glib/gdataset.c:670:3 #4 0xef81be in g_object_notify_queue_freeze /work/glib-2.72.0/_builddir/../gobject/gobject.c:295:7 #5 0xef79c6 in g_object_unref /work/glib-2.72.0/_builddir/../gobject/gobject.c:3632:16 #6 0x5e58bf in LLVMFuzzerTestOneInput /src/gstreamer/ci/fuzzing/gst-discoverer.c:132:5 #7 0x4dd1a2 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:611:15 #8 0x4dc98a in fuzzer::Fuzzer::RunOne(unsigned char const*, unsigned long, bool, fuzzer::InputInfo*, bool, bool*) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:514:3 #9 0x4de6c4 in fuzzer::Fuzzer::ReadAndExecuteSeedCorpora(std::__Fuzzer::vector >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:809:5 #10 0x4dea29 in fuzzer::Fuzzer::Loop(std::__Fuzzer::vector >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:857:3 #11 0x4ce4a0 in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:912:6 #12 0x4f6f52 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:20:10 #13 0x7f1c709980b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x240b2) Part-of: 2022-01-17 16:10:37 +0100 Vivienne Watermeier * ext/gl/gstglvideomixer.c: * tests/check/libs/gstglvideomixerelement.c: * tests/check/meson.build: glvideomixerelement: send translated navigation events to the relevant sink pads Part-of: 2022-01-05 19:33:06 +0100 Vivienne Watermeier * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: send translated navigation events to the relevant sink pads Fixes #888 Part-of: 2022-03-15 13:59:16 +0100 Corentin Noël * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-scaler.c: gst-plugins-base: Fix several annotations Add annotations for virtual methods when possible. Part-of: 2021-12-16 18:41:38 +0000 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/opus/gstopusenc.c: opusenc: change default bitrate-type from cbr to constrained-vbr Which is the default in libopus itself as well, with a comment that constrained-vbr is considered "safer for real-time use". Unclear why CBR was the default in the first place. Part-of: 2022-03-15 12:57:49 +0530 Nirbheek Chauhan * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: The out args for rtp extension data are optional The code checks that these are != NULL before dereferencing them. Part-of: 2022-03-10 10:25:53 +0100 Bastien Nocera * gst-libs/gst/video/convertframe.c: * meson.build: convertframe: Add support for GL-memory backend GstFrame input Add "gldownload" early in the pipeline so that GL-memory backed raw frames can be downloaded and processed on the CPU. Closes: #1073 Part-of: 2022-03-11 18:08:14 -0500 Xavier Claessens * gst-libs/gst/gl/meson.build: Meson: Set install_tag on some files Meson tries to guess the tag (runtime, devel, etc) for every installed file, but it cannot guess them all. There is a list at the end of meson-log.txt of files we need to tag manually. See https://mesonbuild.com/Installing.html#installation-tags. Part-of: 2022-03-02 03:45:48 +1100 Jan Schmidt * gst/playback/gstplaybin3.c: playbin3: Remove stale code Remove now-unused get_stream_type_for_event() function. Part-of: 2022-01-21 16:23:38 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Reset parsebin when new caps arrive Check if parsebin can handle the new caps, and if not reset it so that it can reconfigure itself for the new stream format. Part-of: 2022-03-09 10:15:08 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Convert checks to assertions "decodebin.input" is never resetted and should always be present, therefore make it an assertion check Part-of: 2022-01-21 14:52:07 +0100 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Implement ACCEPT_CAPS handling The default query handler would go through typefind, which by default accepts any CAPS. But once configured, parsebin can't reconfigure itself, it should therefore pass through the ACCEPT_CAPS query to the first element after typefind (if any). Part-of: 2022-01-18 05:48:08 +1100 Jan Schmidt * gst/playback/gstplaybin3.c: playbin3: Hold playbin lock on pad-added Take the playbin lock when accessing the combiner to add a new pad to link to. Fixes races against streams-selected messages triggering reconfiguration. Part-of: 2022-01-18 02:52:47 +1100 Jan Schmidt * gst/playback/gstplaybin3.c: playbin3: Reconfigure on streams-selected message. Don't reconfigure outputs when the select-streams event is sent from the app, as the selection may not take effect for some time. Instead, wait for the pipeline to confirm the new set of selected streams when it sends the message. Part-of: 2021-11-11 03:20:23 +1100 Jan Schmidt * gst/playback/gstplaysink.c: playsink: Fix reconfiguration after removing text_sink If we previously had subtitles coming in, the video may be chained through a text overlay block. Before, the code would end up trying to link pads that were already linked and video would not get reconnected properly. To fix that, make sure that the candidate pads are actually unlinked first. If a textoverlay is present and no longer needed, it will be cleaned up later in the reconfiguration sequence. Part-of: 2021-08-06 19:27:02 +1000 Jan Schmidt * gst/playback/gstplaysink.c: playsink: Complete reconfiguration on pad release. Requesting a new pad can start a reconfiguration cycle, where playsink will block all input pads and wait for data on them before doing internal reconfiguration. If a pad is released, that reconfiguration might never trigger because it's now waiting for a pad that doesn't exist any more. In that case, complete the reconfiguration on pad release. Part-of: 2022-03-08 09:46:33 +0100 Edward Hervey * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * tests/check/libs/pbutils.c: pbutils: Add function to parse RFC 6381 codecs field This is the opposite of `gst_codec_utils_caps_get_mime_codec()`, which allows elements to get the `GstCaps` Part-of: 2022-03-09 16:02:06 +0530 Nirbheek Chauhan * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtpbasepayload: Remove dead twcc code This feature was removed in 7a53fbad68d702ca4905f7da223f4d2884548edc, but this code was left behind. Part-of: 2021-12-14 16:14:56 +0100 Edward Hervey * gst/subparse/gstsubparse.c: subparse: Handle GAP events before buffers Make sure we did initial negotiation and segment pushing if we get GAP events before buffers. Part-of: 2021-11-17 15:30:38 +0100 Edward Hervey * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Properly propagate sequence numbers If we received a time segment from upstream, we need to make sure we propagate it downstream with the same sequence number. Part-of: 2022-03-02 03:43:00 +1100 Jan Schmidt * gst/playback/gstplaybin3.c: playbin3: Add lock to protect buffering messages Fix a small race where a group can receive stream-start and post a pending buffering message just as another thread posts a different buffering message, causing them to be received by the application out of order. In the worst case, this leads the application receiving a stale 99% buffering message and going back to buffering right after the 100% buffering message. Part-of: 2022-03-02 12:15:19 +0800 Hou Qi * gst/encoding/gstencodebasebin.c: encodebasebin: Use GST_DEBUG instead of GST_ERROR when skipping muxer _get_muxer() skips the muxers that do not satisfy the requirement and select the desired one. It should not print error log, so use debug log instead. Part-of: 2022-03-04 22:21:13 +0900 Seungha Yang * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Reorder GST_GL_WINDOW check for egl-device "egl-device" should be checked before the "egl", otherwise unexpected egl will be picked Part-of: 2022-02-24 01:41:34 +1100 Jan Schmidt * tools/gst-play.c: gst-play: Allow switching to previous tracks Implement case sensitive key-press handling, and make 'V', 'A', 'S' switch to the previous video, audio, or subtitle track. The lower-case keypress cycles to the next track, as before Part-of: 2021-09-01 14:02:29 +1000 Matthew Waters * gst-libs/gst/sdp/gstsdpmessage.c: * tests/check/libs/sdp.c: sdp: support multiple rid parameters As specified formally in RFC8851 Each rid description is placed in its own caps field in the structure. This is very similar to the already existing extmap-$id sdp<->caps transformations that already exists. The mapping is as follows: a=rid:0 direction ';'-separated params where direction is either 'send' or 'recv' gets put into a caps structure like so: rid-0=(string)<"direction","param1","param2",etc> If there are no rid parameters then the caps structure is generated to only contain the direction as a single string like: rid-0=(string)direction Part-of: 2022-03-02 00:52:22 +1100 Jan Schmidt * gst/playback/gsturidecodebin3.c: uridecodebin3: Remove dead variables Leftover junk from original port Part-of: 2022-02-21 10:49:15 +0100 Sebastian Fricke * gst-libs/gst/tag/licenses.c: Remove the uninstalled term Remove the symbolic link `gst-uninstalled` which points to `gst-env`. The `uninstalled` is the old name and the project should stick to a single name for the procedure. Remove the term from all the files, exceptions are variables from dependencies like `uninstalled_variables` from pkgconfig and `meson-uninstalled`. Adjust mentions of the script in the documentation and README. Part-of: 2022-02-23 11:10:11 +0100 Sebastian Fricke * README.md: Maintain build instructions at a single location Do not maintain similar build instructions within each gst-plugins-* subproject and the subproject/gstreamer subproject. Use the build instructions from the mono-repository and link to them via hyperlink. Part-of: 2021-12-10 15:51:51 +0100 Célestin Marot * gst-libs/gst/video/video-info.c: video-info: encoded format can have RGB color-matrix (Fixes #1435) Part-of: 2022-02-27 13:19:49 +0200 Sebastian Dröge * gst-libs/gst/video/video-format.c: video-format-info: Use correct parameter name in gst_video_format_info_extrapolate_stride() docs ../subprojects/gst-plugins-base/gst-libs/gst/video/video-format.c:7570: Warning: GstVideo: gst_video_format_info_extrapolate_stride: unknown parameter 'info' in documentation comment, should be 'finfo' Part-of: 2022-02-16 18:49:52 +0200 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: audioconvert: Add dithering-threshold property By default, no dithering is applied if the target bit depth is above 20 bits. This new property allows to apply dithering nonetheless in these cases. Part-of: 2022-02-16 13:28:52 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-quantize.c: audio-quantize: Switch dither PRNG from LCG to xorshift While this is slightly more expensive (~48% slower per random number) it does not cause any measurable difference when running through a complete audio conversion pipeline. On the other hand its random numbers are of much higher quality and on spectrograms for 32 bit to 24 bit conversion the difference is clearly visible. Part-of: 2022-01-22 01:30:57 +1100 Jan Schmidt * tools/gst-play.c: gst-play: Fix trick-mode handling. The instant-rate value in the TrickMode enum is a flag, but the other values are not. Move instant-rate to the end of the enum and give it a value large enough for it to be used without modifying the trick-mode setting. Part-of: 2022-02-24 10:09:50 +0200 Sebastian Dröge * tests/check/elements/appsrc.c: appsrc: Store strong references to the expected buffers in the tests Otherwise the buffers might already be freed as they were only owned by the GstSample / appsrc and potentially don't survive until the pad probe, as observed in some CI runs of the tests. Part-of: 2022-02-22 15:08:48 +0100 Jan Alexander Steffens (heftig) * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Correct use of start_time/end_time When 29713c5d changed most uses of `start_time` and `end_time` to `start_running_time` and `end_running_time`, it missed two. Fixes: 29713c5d40a1d7d1f21dada68f55f7a97f0b7025 Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1038 Part-of: 2022-02-22 10:54:23 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Copy all buffer metadata instead of just GstMetas for the input meta buffer This gives RTP header extensions some more metadata to work from. Part-of: 2022-02-21 14:23:27 +0200 Sebastian Dröge * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: Mark GL memory GType functions as deprecated They can't be used in any useful way. The type of every GstMemory is always GST_TYPE_MEMORY and the subtyping relationship has to be implemented on top of that via the associated allocator and mem_type string. Part-of: 2022-02-21 15:12:04 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshaderstrings.c: gl: Add `#ifndef GST_REMOVE_DEPRECATED` for existing deprecated API Part-of: 2022-02-21 15:08:44 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: gl: Add versioned `Deprecated` marker to gst_gl_display_find_window Part-of: 2022-02-21 15:05:55 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshaderstrings.h: gl: Replace existing G_DEPRECATED_FOR usage with GST_GL_DEPRECATED_FOR Part-of: 2022-02-21 15:02:02 +0200 Sebastian Dröge * gst-libs/gst/gl/gl-prelude.h: gl: Add GST_GL_DEPRECATED Part-of: 2022-02-20 14:05:05 +0100 Sebastian Groß * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: shader: Fix dframe out of bound write shader_fade_and_move_horiz_out writes a complete stride at the end of its dframe data This led to SIGSEGV since the stride reached into sframe->map[0]->memory which could not be umpapped later on. This is due to `d` is increased twice. Once at the end of the upper loop and at the start of the lower loop. The corresponding dframe stride is therefore skipped. Rewind `d` and start at the correct position. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1702 Part-of: 2022-02-20 15:20:07 -0500 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Add NV12_16L32S into the cache Autogenerated by CI Part-of: 2022-02-18 15:25:17 -0500 Nicolas Dufresne * tests/check/libs/video.c: tests: video: Add a unit test for stride extrapolation This is a minimal unit test the show that the stride extrapolation can work with all pixel format we support. This minimal verify that the extrapolation match the stride we set into GstVideoInfo with 320x240 for all the pixel format we support. The tiles formats are skipped, since their stride is set as two 16bit integers, and we also skip over palette planes. Part-of: 2022-01-25 14:04:13 -0500 Nicolas Dufresne * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: Add an helper to extrapolate strides Many of the legacy APIs, specifically in the Linux Kernel, have a single stride for the pictures. In this context, it is common to extrapolate the other strides based on the selected pixel format. Such function have been copy pasted from video4linux2 plugin into wayland, kms and v4l2codecs plugins. This patch implements a generalized from of that function and make it available to everyone through the video library. Part-of: 2021-12-02 21:46:59 -0500 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-tile.h: * tests/check/elements/videoscale.c: * tests/check/libs/video.c: video: Add NV12_16L32S aka Mediatek MM21 support Unlike other simple tiled formats, the Mediatek HW use different tile size per-plane. The tile size is scaled according to the subsampling. Effectively, using the name 16L32S to represent linearly layout tiles of size 16x32 bytes in the Y plane, and 16x16 in the UV plane. In order to make this specificity discoverable, a new SUBTILES flags have been added. Part-of: 2022-02-19 01:58:20 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Use floor() to calculate current position ... instead of round(). Depending on framerate, calculated position may not be clearly represented by using uint64, 30000/1001 for example. Then the result of round() can be sliglhtly larger (1ns) than buffer timestamp. And that will cause unnecessary frame delay. Part-of: 2021-10-28 17:09:34 -0400 Nicolas Dufresne * gst-libs/gst/audio/gstaudioencoder.c: base: audioencoder: Keep serialize event behind buffers If a serialized event arrives behind a buffer, it should not be send before it. This fixes the pending event handling so that only early pending events, the one that arrrived or was generated while the adapter was empty get send before pushing buffer. All other events are not pushed after. This issue lead the latency tracer to think our audio encoder did not have any latency. This was testing with opusenc in a live pipeline. Part-of: 2022-02-06 22:54:42 +0900 Seungha Yang * gst-libs/gst/pbutils/missing-plugins.c: gstinfo,ptpclock,libcheck: Use GetCurrentProcessId() instead of getpid() on Windows getpid() shouldn't be used in case of UWP. Use GetCurrentProcessId() instead which provides exactly the same functionality and can be used with UWP as well. Part-of: 2021-10-01 20:27:28 +0900 Seungha Yang * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp: * meson.build: * tests/examples/seek/instant-rate-change.c: meson: Do hard build error for some MSVC warnings Handle various MSVC warnings as errors for development version. Part-of: 2022-02-08 23:30:00 +0900 Seungha Yang * tests/examples/seek/instant-rate-change.c: Remove some trailing white spaces Part-of: 2022-01-07 20:02:46 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: Fix for unhandled negative rate Nagative rates have been considered only in gst_video_aggregator_advance_on_timeout(). Update other places to fix broken reverse playback. Part-of: 2021-08-25 20:18:20 +0900 Seungha Yang * gst/typefind/gsttypefindfunctions.c: * tests/check/gst/typefindfunctions.c: typefindfunctions: Fix WebVTT format detection If WebVTT file consists of "WebVTT" header without body, the file size can be smaller than 10 bytes. Part-of: 2022-01-31 13:01:10 +0100 Vivienne Watermeier * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: navigation: add more constructors for navigation events Part-of: 2022-02-07 09:30:58 +0100 David Svensson Fors * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Avoid out-of-bounds error For artificial input (in unit tests), all six bytes of constraint_indicator_flags in hevc_caps_get_mime_codec() can be zero. Add a guard against an out-of-bounds error that occurred in that case. Change variables to signed int so comparison with -1 works. Part-of: 2020-07-17 14:37:14 +1000 Jan Schmidt * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: Don't re-render every frame when it's not needed. When the pattern being rendered by videotestsrc doesn't have motion, cache a rendered buffer and output it repeatedly with updated metadata. Based on a patch by Edward Hervey Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/10 Part-of: 2021-12-22 18:46:44 +0000 Thibault Saunier * gst-libs/gst/video/navigation.h: navigation: Fix Since marker for mouse scroll Part-of: 2022-02-03 01:04:40 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: video-color: Fix for missing clipping in PQ EOTF function * Add missing clipping in EOTF * Use pre-calculated values * Update variable names to specification's defined ones Part-of: 2022-02-04 11:15:47 +0000 Tim-Philipp Müller * meson.build: Back to development Part-of: === release 1.20.0 === 2022-02-03 19:53:25 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * README: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.20.0 2022-02-03 19:53:18 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.20.0 2022-02-03 18:18:03 +0000 Tim-Philipp Müller * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: fix up GstVideoOrientationMethod type registration ... in order to make older g-i happy (~1.60) which doesn't like freeform descriptions in the value_name field. Which in turn then makes hotdoc happy instead of erroring out when we bump the symbol index version. We usually only (ab)use the name field for description strings for private plugin enums, not for public API visible to bindings. This lets glib-mkenum generate the _get_type() function for the enum again, which in turn will generate the expected value names to match the enums. We might be able to add this back later once we can upgrade the g-i version requirement (and the documentation job image). This reverts most of commit b0aab48cdcf0a454d14aeb4d907209d8ee3f1add 2021-11-21 17:52:48 -0500 Jeremy Cline * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Fix crash when presented with malformed files There's a race condition in gsttagdemux.c between typefinding and the end-of-stream event. If TYPE_FIND_MAX_SIZE is exceeded, demux->priv->collect is set to NULL and an error is returned. However, the end-of-stream event causes one last attempt at typefinding to occur. This leads to gst_tag_demux_trim_buffer() being called with the NULL demux->priv->collect buffer which it attempts to dereference, resulting in a segfault. The malicious MP3 can be created by: printf "\x49\x44\x33\x04\x00\x00\x00\x00\x00\x00%s", \ "$(dd if=/dev/urandom bs=1K count=200)" > malicious.mp3 This creates a valid ID3 header which gets us as far as typefinding. The crash can then be reproduced with the following pipeline: gst-launch-1.0 -e filesrc location=malicious.mp3 ! queue ! decodebin ! audioconvert ! vorbisenc ! oggmux ! filesink location=malicious.ogg Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/967 Part-of: 2022-02-01 05:07:04 +0530 Nirbheek Chauhan * docs/meson.build: docs: Add objc and objcpp files to hotdoc gst_c_sources Hotdoc should be able to extract and parse comments out of these. Just need to be careful to only add the glob in directories that actually contain *.m (objc) and *.mm (objcpp) files. Also fix some doc comments and remove redundant ones. Part-of: === release 1.19.90 === 2022-01-28 14:28:35 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.19.90 2022-01-28 14:28:28 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.19.90 2022-01-27 14:22:26 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: Return non-floating references from `gst_rtp_header_extension_create_from_uri()` The header extension objects are never getting a parent object and using floating references only complicates usage, especially via dynamic API like signals. Part-of: 2022-01-27 14:26:26 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: Use `set_metadata()` instead of `set_static_metadata()` The latter needs a static string. Part-of: 2022-01-26 00:02:49 +0100 Mathieu Duponchelle * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: VideoInfo, AudioInfo: fix usage with python bindings * Expose an actual constructor from caps * Error out in overrides for code that was using the "manual allocation" pattern which only worked by chance. Direct the script writer to the new_from_caps constructor instead. Fixes https://gitlab.freedesktop.org/gstreamer/gst-python/-/issues/47 Part-of: 2022-01-27 01:38:12 +0000 Tim-Philipp Müller * po/de.po: * po/fr.po: * po/ro.po: gst-plugins-base: update translations Part-of: 2022-01-24 12:26:25 +0200 Vivia Nikolaidou * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Return NOT_NEGOTIATED when the configuration is invalid Otherwise we just end up outputting garbage. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957 Part-of: 2022-01-26 11:12:34 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Remove extra semicolon in macro usage This is usually necessary to allow gst-indent to treat it as a statement, but we do not run gst-indent on headers and we do not have extra semicolons in other places that this macro is used in the header. Fixes warnings when using the header: ``` In file included from gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/video.h:185, from XYZ:9001: gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.h:206:78: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic] 206 | G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstVideoAggregatorConvertPad, gst_object_unref); | ^ gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.h:214:181: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic] 214 | G_DECLARE_DERIVABLE_TYPE (GstVideoAggregatorParallelConvertPad, gst_video_aggregator_parallel_convert_pad, GST, VIDEO_AGGREGATOR_PARALLEL_CONVERT_PAD, GstVideoAggregatorConvertPad); | ^ ``` Part-of: 2022-01-24 12:57:10 +0200 Vivia Nikolaidou * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Produce a default channel mask if possible https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957 Part-of: 2021-12-10 20:09:42 +0900 Seungha Yang * gst-libs/gst/video/video-converter.c: video-converter: Fix for broken gamma remap with high bitdepth YUV output Scale down the matrix before calculating RGB -> YUV matrix otherwise offset values will be wrong Fixing pipeline videotestsrc ! video/x-raw,format=ARGB ! videoconvert gamma-mode=remap ! \ video/x-raw,format=P010_10LE,colorimetry="bt2020" Part-of: 2022-01-23 13:38:37 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix property description for new properties Part-of: 2022-01-19 02:42:35 +0100 Mathieu Duponchelle * gst/playback/gstdecodebin2.c: decodebin2: raise multiqueue max-size-bytes The earlier size of 2 MB was set back in 2009, it doesn't seem unreasonable to raise it to 8 MB these days. The use case at hand is matroskademux containing both a video stream with a very low amount of compression but no decoding latency, and a H265 stream. Part-of: 2021-12-27 03:35:29 +0900 Seungha Yang * gst-libs/gst/video/gstvideodecoder.c: Revert "videodecoder: Forward hdr-format info downstream" This reverts commit 9b852181d8a1fa2fb1bf3ba898c6ffa04eea3fd4. It's leftover commit which should've been reverted as a part of https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1148 Part-of: 2022-01-20 03:17:58 +0900 Seungha Yang * tools/gst-play.c: * tools/meson.build: tools: gst-play: Enable Windows high-resolution clock Apply https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/817 to gst-play as well, especially for better high-framerate (60fps or higher) video support, because 15ms default clock precision (actual value is system dependent) is not sufficient for such scenario. Part-of: 2022-01-15 19:03:33 +0100 Tomasz Andrzejak * gst-libs/gst/sdp/gstsdpmessage.c: * tests/check/libs/sdp.c: Add FEC SDP message test Part-of: 2022-01-15 17:02:52 +0100 Tomasz Andrzejak * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: fix mapping single char fmtp params Part-of: 2022-01-19 11:05:26 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Mark various string return values as `nullable` Part-of: 2022-01-18 23:17:49 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: increase GstRTPHeaderExtensionClass padding to LARGE https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/748#note_1223253 Part-of: 2022-01-15 10:06:23 +0000 Philippe Normand * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils.c: pbutils: Define one debug category per module Follow-up of https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505 Part-of: 2022-01-07 18:25:00 +0900 Seungha Yang * gst/compositor/compositor.c: compositor: Always draw if all input buffers are GAP Otherwise output buffers will contain random scene (previously rendered or arbitrary initial values) since we don't draw onto output buffer at all. Part-of: 2022-01-06 22:10:18 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't pass GAP buffer to prepare_frame_start() Likewise we do check the same condition in prepare_frames_finish(), ignore GAP buffer (zero size with GST_BUFFER_FLAG_GAP flag) without any further processing. Part-of: 2022-01-13 23:00:41 +0900 Seungha Yang * gst/playback/gsturidecodebin.c: uridecodebin: Fix critical warnings Don't pass non-GstObject object to there. Part-of: 2022-01-09 09:39:32 +0000 Philippe Normand * gst-libs/gst/pbutils/codec-utils.c: pbutils: Simplify h264_caps_structure_get_profile_flags_level a bit Refactoring, removing one level of indentation from the function. Part-of: 2022-01-08 14:57:00 +0000 Philippe Normand * gst-libs/gst/pbutils/codec-utils.c: * tests/check/libs/pbutils.c: pbutils: H.265 support for gst_codec_utils_caps_get_mime_codec() The codec_data caps payload is parsed and a MIME codec string is generated according to the ISO/IEC 14496-15 specification. Part-of: 2022-01-08 14:56:06 +0000 Philippe Normand * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/pbutils.c: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: pbutils: Add a pbutils debug category Part-of: 2022-01-07 14:17:46 +0200 Jordan Petridis gstglutils: introspection annotations fixups * gst_gl_ensure_element_data: specify the type for the element arg * gst_gl_handle_set_context: correctly annotate the display and gl_ctx as just (out) instead of (inout) Part-of: 2022-01-09 14:07:12 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Use nullable annotation instead of allow-none for various Opus functions Part-of: 2022-01-09 14:05:48 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Annotate out parameters for Opus functions as (optional) Part-of: 2022-01-09 14:05:11 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Add missing annotations to gst_codec_utils_h264_get_profile_flags_level() And fix some minor typos. Part-of: 2022-01-05 02:07:59 +0530 Nirbheek Chauhan * docs/meson.build: * meson.build: meson: Add explicit check: kwarg to all run_command() calls This is required since Meson 0.61.0, and causes a warning to be emitted otherwise: https://github.com/mesonbuild/meson/commit/2c079d855ed87488bdcc6c5c06f59abdb9b85b6c https://github.com/mesonbuild/meson/issues/9300 This exposed a bunch of places where we had broken run_command() calls, unnecessary run_command() calls, and places where check: true should be used. Part-of: 2021-12-20 21:43:25 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudioaggregator.c: * gst/audioresample/gstaudioresample.c: audio: Add logging that was useful in figuring out the last commit Part-of: 2021-12-20 21:37:18 +0530 Nirbheek Chauhan * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: audio-converter: Fix resampling when there's nothing to output Sometimes we can't output anything because we don't have enough incoming frames. In that case, the resampler was trying to call do_quantize() and do_resample() in a loop forever because there would never be samples to output (so chain->samples would always be NULL). Fix this by not calling chain->make_func() in a loop -- seems completely unnecessary since calling it over and over won't change anything if the make_func() can't output samples. Also add some checks for the input and / or output being NULL when doing conversion or quantization. This will happen when we have nothing to output. We can't bail early, because we need resampler->samples_avail to be updated in gst_audio_resampler_resample(), so we must call that and no-op everything along the way. Part-of: 2021-12-16 16:43:37 +0100 Mark Nauwelaerts * gst/playback/gsturidecodebin.c: uridecodebin: use non-floating object as signal argument ... as was the case with source-setup signal until change of order in commit 52bca104e447309898ca8904b3914211ec7d4114 Part-of: 2021-12-13 16:19:44 +0900 Seungha Yang * gst-libs/gst/video/video-info.c: video-info: Don't assume colorimetry of UHD resolution as BT.2020 BT.2020 color primaries are designed to cover much wider range of CIE chromaticity than BT.709, and also it's used for both SDR and HDR contents. So, the incorrect assumption (i.e., BT.709 as a BT.2020) is risky and resulting image color tends to be visually very wrong. Unless there's obvious clue, don't consider color space of high resolution video stream as BT.2020 Part-of: 2021-12-03 01:45:49 +0000 Thibault Saunier * gst-libs/gst/meson.build: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/meson.build: * tests/check/libs/sdp.c: sdp: Handle level-asymmetry-allowed for H264 streams The ["level-asymmetry-allowed"] field states that the peer wants the profile specified in the "profile-level-id" fields but doesn't care about the level. To express this in GStreamer caps term, we add a "profile" field in the caps, which reuses the usual "profile" semantics for H.264 streams and, and remove "profile-level-id" and "level-asymmetry-allowed" fields. ["level-asymmetry-allowed"]: https://www.iana.org/assignments/media-types/video/H264 Part-of: 2021-11-19 00:09:03 +0100 Thomas Klausner * gst/tcp/gstmultifdsink.c: tcp: fix build on Solaris Add missing header. From Claes Nästén via http://gnats.netbsd.org/56509 Part-of: 2021-11-16 13:14:25 +0100 Víctor Manuel Jáquez Leal * gst/playback/gsturidecodebin3.c: uridecodebin3: Nullify current item after all play items are freed. There's a potential race condition with this sort of pipelines on certain systems (depends on the processing load): GST_DEBUG_DUMP_DOT_DIR=/tmp \ gst-launch-1.0 uridecodebin3 uri=file://stream.mp4 ! glupload ! \ glimagesink --gst-debug=*:4 Right after the pipeline passes from PAUSED to READY, bin_to_dot_file dumps uridecodebin3 properties, but current uri and suburi might be already freed, causing a potential use-after-freed. This patch makes NULL the current item right after all the play items are freed. Part-of: 2021-11-12 18:26:58 +0530 Nirbheek Chauhan * gst-libs/gst/audio/audio-resampler.c: audio-resampler: Fix segfault when we can't output any frames Sometimes the resampler has enough space to store all the incoming samples without outputting anything. When this happens, gst_audio_resampler_get_out_frames() returns 0. In that case, the resampler should consume samples and just return. Otherwise, we get a segfault when gst_audio_resampler_resample() tries to resample into a NULL 'out' pointer. Part-of: 2021-11-11 19:11:25 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstpluginsbaseversion.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/videooverlay.c: docs: fix unnecessary ampersand, < and > escaping in code blocks Part-of: 2021-11-09 12:10:50 +0000 Jiri Uncovsky * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext/egl: add missing unref Part-of: 2021-11-09 12:01:13 +0100 Guillaume Desmottes * gst-libs/gst/app/gstappsrc.c: appsrc: log when segment changes We were logging when it does not change but not when it does, which is confusing when reading logs. Part-of: 2021-11-03 18:44:03 +0000 Tim-Philipp Müller * meson.build: Back to development === release 1.19.3 === 2021-11-03 15:43:36 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.19.3 2021-11-03 15:43:32 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.19.3 2021-11-01 15:48:58 -0400 Matthias Clasen * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: handle configless contexts With EGL_KHR_no_config_context, EGL contexts may just not have an EGLConfig to give you. Deal with it. Fixes: #858 Part-of: 2021-10-30 01:55:38 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay-playbin.c: examples: win32-videooverlay-playbin: Add a repeat option ... in order to test pipeline/element reuse cases. Part-of: 2021-10-30 16:22:39 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/video/video-format.h: video: Fix order of new video formats Part-of: 2021-10-30 15:50:30 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/video/video.c: base: Fix some annotations Part-of: 2021-10-30 00:34:35 +0100 Tim-Philipp Müller * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: Use g_pattern_spec_match() instead of g_pattern_match() which is deprecated since glib 2.70 Fixes compiler warnings with glib 2.70 Part-of: 2021-10-23 00:44:57 +0200 Piotrek Brzeziński * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-scaler.c: video-format: Add support for ARGB64 LE/BE and similar variants Co-authored-by: Sebastian Dröge Part-of: 2021-10-25 11:37:45 +0100 Tim-Philipp Müller * meson.build: meson: require matching GStreamer dep versions for unstable development releases Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 Part-of: 2021-10-27 22:49:44 +1100 Jan Schmidt * gst/playback/gstdecodebin3-parse.c: decodebin3: Only unblock for GAP events and buffers. An alternate fix for https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1239 and https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1236 that makes it clear the intent is to only unblock on a GAP event, and not any others. Part-of: 2021-10-26 15:12:16 +0200 Guillaume Desmottes * gst/playback/gstparsebin.c: parsebin: fix critical when sorting pads If the pad does not have a current caps, get_pad() returns the query caps which can be ANY. In such case the caps does not have any structure resulting in a critical warning when calling gst_caps_get_structure(). Part-of: 2021-10-23 16:06:54 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Use memcmp() instead of a strange macro around strncmp() Part-of: 2021-10-23 14:31:59 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add various CMAF brands to the MP4 typefinder Part-of: 2021-10-23 14:30:02 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Refactor ftyp brands checking Store known brands in arrays and add a helper function to check them. Also add all the `iso3` to `isob` ISO brands and the `hlsf` ISO fragmented brand. Part-of: 2021-10-23 14:28:35 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add various other boxes to the list of known top-level MP4 boxes styp, udta, sidx, ssix, prft, mfra, pdin and meta are in the ISOBMFF spec and emsg in the CMAF spec. Part-of: 2021-10-25 01:01:56 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: gst-plugins-base: update translations Fixes #656 Part-of: 2021-10-22 17:54:55 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: gl/egl: install required egl.h header Fixes build against using the gir. Part-of: 2021-10-20 11:56:32 +0200 Guillaume Desmottes * gst/playback/gststreamsynchronizer.c: streamsynchronizer: set running time offset on events It's cleaner and more generic than overriding the qos events. Part-of: 2021-10-18 15:47:00 +0100 Tim-Philipp Müller * tests/check/meson.build: * tests/validate/meson.build: meson: update for meson.build_root() and .build_source() deprecation -> use meson.project_build_root() or .global_build_root() instead. Part-of: 2021-10-18 00:40:14 +0100 Tim-Philipp Müller * docs/meson.build: * ext/libvisual/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/tag/meson.build: * meson.build: * tests/meson.build: meson: update for dep.get_pkgconfig_variable() deprecation ... in favour of dep.get_variable('foo', ..) which in some cases allows for further cleanups in future since we can extract variables from pkg-config dependencies as well as internal dependencies using this mechanism. Part-of: 2021-10-18 00:03:47 +0100 Tim-Philipp Müller * meson.build: meson: clean up conditional paths after version bump Part-of: 2021-02-09 19:56:49 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: Set number to stream infos The idea is that we can reference to streams using this unique number, within the context of that discoverer info. That number should always be usable to reference the streams for a specific stream. Part-of: 2021-10-20 09:37:40 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Don't ref NULL taglist Fixes warning introduced in 064f7bbbfac9610fd391c45091e35391b80e1212 Part-of: 2021-10-19 10:07:55 -0400 Xavier Claessens * gst-libs/gst/audio/meson.build: Revert "audio: Merge simd libs into the main one" This reverts commit 4d3a200358439e6c76c5dd1be2daae0cceb0e44a. Part-of: 2021-10-19 17:07:37 +0300 Sebastian Dröge * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: Fix constructor guard to actually allow NULL as parameter And don't use a NULL rectangle later. Part-of: 2021-10-19 19:46:48 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/gstgldisplay.c: gl/eagl: fix eagl display creation The GstGLDisplayType of the display was win32 instead of the required eagl. Part-of: 2021-08-31 16:21:09 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: * tests/check/libs/rtpdummyhdrextimpl.c: tests/rtp/payload: add test for shrinking extension data Part-of: 2021-08-24 21:26:54 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: rtp: also support shrinking the extension data Currently the extension data length specified in the RTP header would say it was shorter then the data serialised to a packet. When combining the resulting buffer, the underlying memory would still contain the extra (now 0-filled) padding data. This would mean that parsing the resulting RTP packet would potentially start with a number of 0-filled bytes which many RTP formats are not expecting. Such usage is found by e.g. RTP header extension when allocating the maximum buffer (which may be larger than the written size) and shrinking to the required size the data once all the rtp header extension data has been written. Part-of: 2021-10-17 13:14:38 +0100 Tim-Philipp Müller * ext/vorbis/gstvorbisdec.c: vorbisdec: don't emit g_warning() on malformed input data Part-of: 2021-10-17 13:12:11 +0100 Tim-Philipp Müller * ext/theora/gsttheoradec.c: theoradec: don't emit g_warning() on malformed input stream Part-of: 2021-10-17 13:04:14 +0100 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: don't use g_warning() for malformed input Part-of: 2021-10-17 11:39:57 +0100 Tim-Philipp Müller * tools/meson.build: tools: Define G_LOG_DOMAIN for various tools as well Part-of: 2021-10-01 15:30:27 +0100 Tim-Philipp Müller * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: gst-plugins-base: define G_LOG_DOMAIN for all libraries Fixes #634 Part-of: 2021-08-15 01:36:14 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: audio/video aggregator: make use of new aggregator inactive pad API Part-of: 2021-10-10 17:07:33 +0100 Philippe Normand * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: Advertise container-specific tags with a new API Since commit a55dafe341ac7398e7c37c30d8b760228296da92, stream-scoped tags no longer appeared as top-level tags, introducing a behaviour regression, specially for MP3 files. The `gst_discoverer_info_get_tags()` API now returns all tags detected for the given media, as documented. A new API is introduced to get container-specific tags, `gst_discoverer_container_info_get_tags()`. The discoverer tool was adapted to use it. `gst_discoverer_info_get_tags()` is now deprecated in favor of `gst_discoverer_container_info_get_tags()` and `gst_discoverer_stream_info_get_tags()`. Fixes #759 Part-of: 2021-10-14 18:38:26 +0100 Tim-Philipp Müller * meson.build: meson: bump meson requirement to >= 0.59 For monorepo build and ugly/bad, for advanced feature option API like get_option('xyz').required(..) which we use in combination with the 'gpl' option. For rest of modules for consistency (people will likely use newer features based on the top-level requirement). Part-of: 2021-10-14 23:02:36 -0300 Thibault Saunier * gst/encoding/gstsmartencoder.c: smartencoder: Force reencoding of vp9 for profiles can't support If the input file is in a profile we won't be able to output (1 or 3 in BGR format), simply reencode everything for now. Once we add support for that case we can remove that code Part-of: 2021-10-14 22:55:35 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: ignore more fields when creating for discover info Part-of: 2021-10-14 22:29:19 -0300 Thibault Saunier * gst/encoding/gstsmartencoder.c: smartencoder: Always plug a vp9parse when encoding vp9 This way we know that all relevant fields about video format are added and we avoid renegotiation issues. Part-of: 2021-10-05 10:46:26 -0300 Thibault Saunier * gst/encoding/gstsmartencoder.c: smartencoder: Fix renegotiating when reencoding parts of the stream with vpx In the encoded streams we might not have all the information about the raw video stream, but when reencoding they end up being specified, even if those are default values. As vp8 decoders always output frames in some YUV color space we can ensure that when upstream doesn't specify any value in its caps we use the default one which is what we end up doing when decoding/reencoding anyway, so this way downstream (matroskamux in that case) doesn't need to be able to renegotiate (which it doesn't). Part-of: 2021-10-16 09:29:28 -0300 Thibault Saunier * ext/ogg/meson.build: * ext/vorbis/meson.build: meson: Mark newly fdkaac/ogg/vorbis as allow fallback This way when the dep is `auto` we will fallback if the system dependency is not available. And use https to get libvorbis Part-of: 2021-10-15 22:07:39 -0300 Thibault Saunier * gst-libs/gst/gl/meson.build: meson: Fix warning building GstGLEGL We forgot to add the `GstGL` gir as a dependency which was properly done for GstGLWayland and GstGLX11. And document why we use a list for `all_libraries` Part-of: 2021-10-12 15:52:48 -0300 Thibault Saunier * docs/meson.build: meson: Streamline the way we detect when to build documentation Part-of: 2020-06-27 00:39:00 -0400 Thibault Saunier * docs/meson.build: * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: List libraries and their corresponding gir definition Introduces a `libraries` variable that contains all libraries in a list with the following format: ``` meson libraries = [ [pkg_name, { 'lib': library_object 'gir': [ {full gir definition in a dict } ] ], .... ] ``` It therefore refactors the way we build the gir so that we can reuse the same information to build them against 'gstreamer-full' in gst-build when linking statically Part-of: 2020-06-27 00:37:39 -0400 Thibault Saunier * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: Mark files as files() Making it more robust and future proof And fix issues that it creates Part-of: 2021-10-13 21:28:58 +0200 Piotrek Brzeziński * gst-libs/gst/video/video-converter.c: video-converter: Fix v210->I420 last line conversion Last line would not be converted correctly if height was an odd number. Fixed by accounting for data type (8bit vs. 16bit) differences between respective packing and unpacking functions. Part-of: 2021-10-13 16:53:41 +0200 Piotrek Brzeziński * gst-libs/gst/video/video-format.c: video-format: Clean up v210 packing code Part-of: 2021-10-13 17:25:41 +0200 Piotrek Brzeziński * gst-libs/gst/video/video-converter.c: video-converter: Add fast paths from I420/YV12, UYVY, Y42B and YUY2 to v210 Part-of: 2021-10-14 17:48:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/dmabuf: add some debug logging about why things may fail to be uploaded Part-of: 2021-09-24 15:02:27 +1000 Matthew Waters * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: playbin2/3: autoplug/caps: don't expand caps to ANY Retrieving the pad template caps from a ghost pad returns ANY which when merged with any other caps will return ANY. ANY is not very specific and may cause suboptimal code paths in e.g. decoders that assume the lowest common denominator when presented with ANY caps. Fixes negotiating dma-buf with vaapidecodebin between glupload in the video sink element. Part-of: 2021-08-02 17:46:37 +0900 Seungha Yang * tests/examples/playback/playback-test.c: examples: playback-test: Fix for UI resize scenario on Windows Application needs to notify videosink element of video widget resize via gst_video_overlay_set_render_rectangle() since WM_SIZE event wouldn't be notified. Part-of: 2020-04-15 23:41:52 -0400 Olivier Crête * gst-libs/gst/audio/meson.build: audio: Merge simd libs into the main one Actually extract the .o objects from the convience libraries and put them into the main one. Without this, they will just be referenced by the .pc file, but it will be unusable because they are not installed. Part-of: 2017-08-29 17:21:05 -0400 Olivier Crête * ext/gl/gstglimagesink.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: glutils: Export affine transformation functions for gtkglsink Also remove duplicated copy of those functions from the gl plugin With contributions from Bastien Nocera Part-of: 2021-05-04 15:55:15 -0400 Olivier Crête * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: Replace GstVideoFlipMethod -> GstVideoOrientationMethod It's the same enum, just drop the renamed copy. But keep the registered GEnum as it is part of the API. Part-of: 2021-05-04 15:51:36 -0400 Olivier Crête * ext/gl/gstglvideoflip.c: glvideoflip: Use the API to parse the image orientation This will reduce the code duplication a little. Part-of: 2021-05-04 15:51:13 -0400 Olivier Crête * ext/gl/gstglimagesink.c: glimagesink: Use the API to parse the image orientation This will reduce the code duplication a little. Part-of: 2021-05-04 15:50:59 -0400 Olivier Crête * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add API to parse the image orientation from a GstTagList Part-of: 2021-05-04 15:39:29 -0400 Olivier Crête * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Replace GstGLRotateMethod with GstVideoOrientationMethod It's the same enum, just drop the renamed copy. But keep the registered GEnum as it is part of the API. Part-of: 2021-05-04 15:28:25 -0400 Olivier Crête * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Put nicer documentation in GstVideoOrientationMethod Part-of: 2021-09-26 18:05:31 +0100 Tim-Philipp Müller * tools/gst-play.c: gst-play: pick up minus and plus also from navigation events Makes it easier to test playback rate changes with the video window being in focus. Part-of: 2021-10-09 05:39:38 +1100 Jan Schmidt * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: uridecodebin3/urisourcebin: Reusability fixes Improvements to uridecodebin3 and urisourcebin so that they are reusable across a PAUSED->READY->PAUSED transition. Disconnect and release decodebin3 request pads when urisourcebin removes src pads. In urisourcebin, make sure to remove src pads that are exposed directly (raw pads and static typefind srcpads) when cleaning up. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/768 Part-of: 2021-10-10 01:24:44 +1100 Jan Schmidt * gst/playback/gstplaybin3.c: playbin3: Always register 'playbin3' element. If the USE_PLAYBIN3=1 env var is set, we want to replace playbin with playbin3, but separate to that, we always want to register the 'playbin3' element so that applications which explicitly use playbin3 work regardless of the env var. This fixes `USE_PLAYBIN3=1 gst-validate-launcher`, for example. Part-of: 2021-10-05 05:43:13 +1100 Jan Schmidt * gst/playback/gstplaybin3.c: playbin3: Avoid group deactivation deadlock. Change locking around group deactivation to avoid deadlocks when shutting down exactly as a buffering message arrives. The PLAYBIN3_LOCK now protects the active field of the source group. Everything else is still protected by the source-group-lock. Also properly protect group switching operations with the PLAYBIN3_LOCK everywhere. Part-of: 2021-09-15 16:49:16 +0200 Ludvig Rappe * gst-libs/gst/pbutils/codec-utils.c: * tests/check/libs/pbutils.c: pbutils: Remove sample entry code "raw" Part-of: 2021-09-16 15:18:24 +0200 Stéphane Cerveau * gst/typefind/gsttypefindfunctions.c: typefindfunctions: differentiate h265 from h264 in some cases, the algo gives the same probability to h264 and h265 for h26x stream resulting in a h265 stream detected as a h264. if sps/pps/vps detected, increase the probabilty. Part-of: 2021-09-26 01:55:39 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: video: make GST_VIDEO_FORMAT_INFO_IS_*() macros booleans Spotted by Stirling Westrup. Fixes #726 Part-of: 2021-09-26 01:52:12 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio-info.h: audio: make GST_AUDIO_INFO_IS_UNPOSITIONED return a boolean Luckily this worked right since the flag we check is the only flag and its vale is 1, but feels more correct to actually check for non-zeroness. Spotted by Stirling Westrup. Part-of: 2021-09-27 16:11:33 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: Give "inherited" direction in set_attributes Part-of: 2021-09-27 10:19:51 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: Use NULL-safe case insensitive comparison Part-of: 2021-09-27 10:01:02 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: Print warnings when trying to parse caps Part-of: 2021-09-24 13:38:39 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: * tests/check/libs/rtpdummyhdrextimpl.c: rtphdrext: Pass just the attributes to the subclass Since the base class now does the parsing, there is no need to reproduce that code in all the subclasses, just pass the attributes which are the only relevant bit anyway. Also, only store the direction if the subclass accepted the caps Part-of: 2021-09-24 13:19:22 -0400 Olivier Crête * tests/check/libs/rtphdrext.c: rtphdrext: Use fail_unless_equals_string() to make tests easier to debug Part-of: 2021-09-24 13:02:13 -0400 Olivier Crête * tests/check/libs/rtpdummyhdrextimpl.c: * tests/check/libs/rtphdrext.c: rtphdrext test: Use helper function for caps Also, let the base class parse the direction for us. Part-of: 2021-09-24 12:51:01 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: Add helper function to set fields in caps Part-of: 2021-09-23 16:37:45 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: Parse direction from the caps Part-of: 2021-09-23 16:33:32 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: Set the direction in the caps from the property Part-of: 2021-09-23 16:24:04 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: Store the direction in the base class Store the direction associated wit the RTP header extension in the base class so it can use it. Part-of: 2021-09-23 16:01:40 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: Set caps without attributes as the default Most subclasses just use the simple function, so just let the base class do it. It makes less code in subclasses. Part-of: 2021-09-23 15:36:00 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: Put simple caps generation as the base class default Instead of having a helper function that gets called by almost every subclass, just let the base class set the caps fields automatically. Part-of: 2021-09-28 10:11:15 +1000 Brad Hards * README: * RELEASE: doc: update IRC links to OFTC Part-of: 2021-09-27 00:53:34 +0200 Havard Graff * gst-libs/gst/video/gstvideodecoder.c: videodecoder: request sync-points regularly on error If we are not receiving a sync-point for a very long time, we need to keep asking for them. The request-sync-point logic keeps track of how many keyunitrequests we are allowed to send, but that would not matter if we don't keep asking. Part-of: 2021-09-26 01:07:02 +0100 Tim-Philipp Müller * meson.build: Back to development Part-of: === release 1.19.2 === 2021-09-23 01:33:08 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.19.2 2021-09-21 22:39:46 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/codec-utils.h: pbutils: codec-utils: fix g-ir-scanner warning Warning: GstPbutils: gst_codec_utils_h264_get_profile_flags_level: unknown parameter 'codec_data' in documentation comment, should be 'codecs_data Part-of: 2021-08-24 15:27:32 -0400 Nicolas Dufresne * ext/alsa/gstalsasink.c: alsasink: Allow stop() function to happen during failing writes In ALSA, there is possible temporary failures that may require a retry, though in certain situation, this may leak to the write() function holding on a lock forever preventing the pipeline from going to pause or stop. Fix this by shortly dropping the lock between retries. Part-of: 2021-08-24 15:26:12 -0400 Nicolas Dufresne * ext/alsa/gstalsasink.c: alsasink: Improve logging in write() function This moves the "written X frames" lower so that we don't trace confusing negative values on errors and add the error code in the "Write error" log. Part-of: 2021-09-10 15:10:46 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/meson.build: videodecoder: Add properties to automatically request sync points and vfunc to allow subclasses to handle packet loss / missing data Subclasses could use the new vfunc to activate packet loss concealment, for example. Part-of: 2021-09-10 16:12:51 +0200 Havard Graff * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix min-force-key-unit-interval logic and logging The new keyframe is needed when the deadline of the buffer has exeeded the waiting time, not while it is within it. Also, since we look at the deadline of the frame, log that instead of PTS. Part-of: 2021-08-18 19:40:55 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: * tests/check/libs/rtpdummyhdrextimpl.c: * tests/check/libs/rtphdrext.c: rtphdrext: Make write function return a signed value Since the return value is documented to possibly be smaller than 0, then it needs to be signed. Part-of: 2021-06-16 15:07:13 -0400 Olivier Crête * tests/check/elements/videorate.c: videorate: Add unit test for closing a segment and opening a separate one Part-of: 2021-06-16 15:06:57 -0400 Olivier Crête * gst/videorate/gstvideorate.c: videorate: Drop incoming buffers that are outside of the segment Part-of: 2020-07-24 17:41:57 -0400 Olivier Crête * gst/videorate/gstvideorate.c: * tests/check/elements/videorate.c: videorate: Only "close" the segment if it is discontinous Otherwise, it will drop valid buffers on a simple segment update Part-of: 2020-07-24 17:38:58 -0400 Olivier Crête * tests/check/elements/videorate.c: videorate: Add test for segment update Continue as-is on segment update. Part-of: 2020-07-24 16:35:04 -0400 Olivier Crête * gst/videorate/gstvideorate.c: videorate: Update the base time on segment updates Dropping it to 0 makes videorate push buffers from timestamp 0 again. Part-of: 2021-09-12 10:07:49 +0100 Philippe Normand * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Prevent stream tags from leaking in global tags The PrivateStream should keep track of stream tags only. Likewise, the GstDiscovererInfo should keep track of global tags only. This patch fixes the issue where the discoverer would report duplicated tag titles, especially for Matroska media files. The Matroska demuxer emits correctly-scoped tags, but downstream was making no distinction of them. Fixes #598, #836, https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/827 Part-of: 2021-09-09 15:44:55 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/buffer_storage.h: gl/buffer_storage: re-enable GL_ARB_buffer_storage The extension version doesn't have the ARB suffix. Part-of: 2021-09-07 13:55:08 +0200 Tobias Ronge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Only reset timeout when socket is unused After sending or retrieving data, gstrtspconnection resets the socket's timeout to 0 (infinite). This could cause problems if sending and receiving at the same time. For example, if RTCP data is sent from the streaming thread while gstrtspsrc is already retrieving data. With this patch, timeout is only reset to 0 if there is no other thread using the socket. Part-of: 2021-09-02 11:55:09 +0200 Ludvig Rappe * gst-libs/gst/pbutils/codec-utils.c: * tests/check/libs/pbutils.c: pbutils: Add mjpg to MIME codecs Part-of: 2021-08-01 18:20:06 +0200 Mathieu Duponchelle * gst/playback/gstdecodebin3-parse.c: decodebin3: fix unblocking on input gap events Initial gap events should not be discarded on the input streams, but instead cause unblocking just as buffers do. Part-of: 2021-06-24 16:00:03 +0100 Philippe Normand * gst/playback/gstparsebin.c: parsebin: Guess subtitle/ caps as text streams The subtitles in ogg/kate are identified using subtitle/ caps names. Part-of: 2021-08-31 15:31:23 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * tests/check/libs/rtp.c: rtp: add some additional rtcp sdes values Matches the current list at https://www.iana.org/assignments/rtp-parameters/rtp-parameters.xhtml#rtp-parameters-5 as of 2021-September. Part-of: 2021-08-25 17:03:49 +0200 Ludvig Rappe * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * tests/check/libs/pbutils.c: pbutils: Add function to convert caps to MIME codec Part-of: 2021-08-25 17:01:19 +0200 Ludvig Rappe * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * tests/check/libs/pbutils.c: pbutils: Add function for parsing H.264 extradata Part-of: 2021-08-24 18:14:22 +0200 Olivier Blin * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: fix redefinition of EGLuint64KHR It is already defined in gst/gl/egl/gstegl.h Part-of: 2021-08-05 19:59:38 +0900 Seungha Yang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: Add support for A420 to RGB fast path Add fast path for A420 -> RGB format conversion Part-of: 2021-07-19 22:11:41 +0900 Seungha Yang * gst/compositor/blend.c: compositor: Fix crash while drawing background and/or blending for subsampled YUV Fix crash caused by out-of-bounds memory accesses when drawing background and/or blending. This fix is conceptually identical to the approach as the commit of 8ff5079e5eef37b9bd5b212350f0cefbd9546b1b Part-of: 2021-08-15 01:27:39 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: ignore more encoding private fields Part-of: 2021-08-09 21:24:34 -0400 Thibault Saunier * gst/encoding/gstencodebasebin.c: * gst/encoding/gstsmartencoder.c: smartencoder: Respect user `stream-format` when specified Part-of: 2021-08-10 02:09:09 +0200 Mathieu Duponchelle * gst/encoding/gstencodebasebin.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gstsmartencoder.h: smartencoder: clean up and extend accepted formats * Add support for H265 * Don't overwrite original codec_data / streamheader in the output caps, but instead allow them to change and send them to the combiner at the right moment: encoder caps, reencoded GOP, original caps, original GOP(s), and potentially encoder caps and rencoded last GOP. * For H264 / H265, force usage of a format with inband SPS / PPS (avc3 / hev1), this is cleaner than misadvertising avc1, hvc1 and some muxers like mp4mux will actually advertise both differently. Unfortunately, while mp4 supports updating the codec_data and using avc1 with no in-band SPS / PPS updates, it turns out some decoders (eg chrome / firefox) don't handle this particularly well and stop decoding after the reencoded GOP. We could expose a switch to force usage of avc1 / hvc1 nevertheless, but for now stick to requiring that the parser output SPS / PPS in-band with config-interval=-1 (that has not changed) Part-of: 2021-08-04 00:51:24 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: Add "max-threads" property Adding new property for user to be able to set expected the maximum number of blend task threads. This can be useful in case that user wants to restrict the number of parallel task runners for system resource management or debugging/development purpose. Part-of: 2021-07-01 12:41:11 +0300 Sebastian Dröge * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/descriptions.h: pbutils: Expose functions for getting a file extension for caps and flags for describing the format of the caps This information was available internally already but not available from the outside. Part-of: 2021-08-04 10:06:02 +0300 Sebastian Dröge * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin/uridecodebin: Emit source-setup signal early before doing the scheduling query Some elements will require the source to be set up properly before the scheduling query returns useful results, e.g. appsrc and giostreamsrc. Part-of: 2021-06-10 00:55:23 -0700 Devarsh Thakkar * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: ext: alsa: Fix fallback paths for setting buffer and period times Below fallback paths were introduced in https://github.com/GStreamer/gst-plugins-base/commit/9759810d8206b5f1aa199f98599caec3630a1813 if setting period time after buffer time failed : 1) Set period time and then buffer time if it doesn't work 2) Set only buffer time 3) Set only period time These all were not functioning properly since they were using old copy of snd_pcm_hw_params_t which already had some fields set as per previous try and this was causing issues as driver was referring to that old value while trying to set them again in fallback paths. So now we always use the initial copy of snd_pcm_hw_params_t for every fallback and same is also being done at https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/commit/557c4295107dc7374c850b0bd5331dd35e8fdd0f Also we change the sequence to set period time earlier than buffer time since period bytes being the smaller unit, most of the times if underlying alsa device has a dependency then it is of period bytes to be a multiple of some value (as per underlying DMA constraint) and rest of the parameters like buffer bytes need to be adjusted as per period bytes. The same sequence is also followed in alsa-utils at https://github.com/alsa-project/alsa-utils/commit/9b621eeac4d55c4e881f093be5b163ca07d01b63 Fix 2) and 3) scenarios by returning success if the exclusive setting is passed and not doing any further setting for buffer time or period time. Add new fallback path of not setting any buffer time and period time if all above fallback paths fail. The same is also being followed at aforementioned pulseaudio commit. In case of alsasink, remove the retry goto label, since it is not required anymore as fallback paths take care of setting default values if driver is not accepting any of the fallback paths. Use separate label for exit to free params structs and return err code. This also fixes leak in no_rate goto path in alsasink Part-of: 2021-05-25 21:16:48 +0200 Jakub Adam * gst-libs/gst/video/gstvideoencoder.c: * tests/check/libs/videoencoder.c: videoencoder: pass upstream HDR information through codec state Don't copy HDR metadata from sink pad, because its caps may not have been set yet if GstVideoEncoder::negotiate is called from GstVideoEncoder::set_format, as e.g. vpx encoder does. Part-of: 2021-05-25 21:15:53 +0200 Jakub Adam * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/gstvideoutils.h: videoutils: add HDR metadata fields to GstVideoCodecState Part-of: 2021-08-16 10:19:07 +0300 Sebastian Dröge * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: Allow empty overlay compositions Allowing to pass NULL to the constructor removes the need to special-case the first rectangle in calling code and generally simplifies application code. Part-of: 2021-06-01 15:27:31 +0200 Per Förlin * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: gstrtspconnection: Add support to ignore x-server header reply When connecting to an RTSP server in tunnled mode (HTTP) the server usually replies with a x-server header. This contains the address of the intended streaming server. However some servers return an "invalid" address. Here follows two examples when it might happen. 1. A server use Apache combined with a separate RTSP process to handle Https request on port 443. In this case Apache handle TLS and connects to the local RTSP server, which results in a local address 127.0.0.1 or ::1 in the x-server reply. This address is returned to the actual RTSP client in the x-server header. The client will receive this address and try to connect to it and fail. 2. The client use a ipv6 link local address with a specified scope id fe80::aaaa:bbbb:cccc:dddd%eth0 and connects via Http on port 80. The RTSP server receives the connection and returns the address in the x-server header. The client will receive this address and try to connect to it "as is" without the scope id and fail. In the case of streaming data from RTSP servers like 1. and 2. it's useful to have the option to simply ignore the x-server header reply and continue using the original address. Part-of: 2021-08-13 19:35:23 +0530 Nirbheek Chauhan * gst-libs/gst/sdp/gstmikey.c: sdp: Avoid using g_memdup() since it is deprecated g_memdup() is deprecated since GLib 2.68 and we want to avoid deprecation warnings with recent versions of GLib. Instead of using g_memdup2(), we can simply use the new gst_buffer_new_memdup() added in 1.19.x Part-of: 2021-06-04 18:32:07 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/buffer_storage.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/meson.build: glbuffer: support persistent buffer mappings Requires OpenGL 4.4 or EXT_buffer_storage Current mesa exposes GL_ARB_buffer_storage when retrieving the relevant functions returns no-ops and causes failures. Improves throughput of uploads by roughly 30%-60% and download throughput by roughly 10-30% across depending on the exact scenario and hardware. Part-of: 2021-07-30 23:57:20 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Add support for testing gst_video_overlay_set_render_rectangle Add keyboard handler to test gst_video_overlay_set_render_rectangle() API for Windows video elements Part-of: 2021-07-30 23:04:57 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Use d3d11videosink by default d3d11videosink was promoted to have primary rank and it's recommended videosink element on Windows Part-of: 2021-07-08 17:47:28 +0900 Seungha Yang * tests/check/elements/appsink.c: tests: appsink: Add reverse stepping test case To demonstrate reverse stepping issue of https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/848 Part-of: 2021-06-03 19:15:22 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Add test option for threading scenario Add an option to test the case where window thread and pipeline handling thread are different. Mainly to test the HWND leak fixed by https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2302 Part-of: 2021-07-27 17:44:02 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: remove object locking an extension Doing that is fraught with danger of deadlocks and is not conceptually part of the API contract. The object lock is generally intended for internal-object-use only. If another lock is needed, that should be added separately. This lock was erronously added as part of: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1118 Part-of: 2021-07-27 13:30:56 +1000 Matthew Waters * ext/gl/gstgldownloadelement.c: gldownload: use the GstGLSyncMeta in all cases fixes qmlglsrc ! gldownload ! videoconvert in some cases. Part-of: 2021-07-22 17:11:26 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: glcontext: egl: Stop comparing native surface pointer This was noticed with wayland, sometimes the newly create native handle can have the same pointer (even though its new). This lead to unwanted errors or crash. Fixes #927 Part-of: 2021-07-22 17:02:51 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglwindow.c: glwindow: Add "window-handle-changed" signal This allow other objects to clear any wrapper object that depends on the previous handle, and properly re-create the new wrappers without having to resort into doing pointer comparison. Part-of: 2021-07-23 13:39:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: Revert "glwindow: wayland: Skip redoing surfaces if window haven't changed" This reverts commit aba6bd7822f4c0f572765bfaada76f454a594317. Part-of: 2021-02-22 13:17:18 +0100 Guillaume Desmottes * gst-libs/gst/app/gstappsrc.c: * tests/check/elements/appsrc.c: appsrc: serialize custom events with buffers flow Application may want to inject events to the pipeline and keep them synchronized with the buffers flow. Fix #247 Part-of: 2021-02-19 13:32:48 +0100 Guillaume Desmottes * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * tests/check/elements/appsink.c: appsink: add API to catch events There is currently no way for users to receive incoming events from appsink while keeping them properly serialized with the buffers flow. This can be especially useful when application is injecting custom downstream events into the pipeline and needs to know when they reached appsink. Solving this by adding a new signal notifying about new incoming events and a set of action signals and method to pull those events. The API is actually pulling the samples and events all together as they are actually fetched from the same queue. Having a specific API to pull only events would have the side effect of discarding samples (and pulling samples would discard events) making this API not convenient for users. Partially fix #247 Part-of: 2021-02-19 14:45:08 +0100 Guillaume Desmottes * gst-libs/gst/app/gstappsink.c: appsink: factor out dequeue_object() No semantic change, will be used to implement new event API. Part-of: 2021-07-20 09:37:58 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: glwindow: wayland: Skip redoing surfaces if window haven't changed The problem is that EGLNativeWindowSurface and wl_egl_surface are the same object underneath, so we must recreate both together. As an optimization, the EGLNativeWindowSurface wrapper is only re-created if the window_handle changed. On Mesa, this would cause crash, which will be fixed by: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11979 And will lead to proper errors in the future or on other GL stack. This issue was encounter using a permanent GstGLDisplay after cycling one of multiple independent pipelines through NULL state. Part-of: 2021-07-20 09:36:22 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: glwindow: wayland: Remove redundant create_surfaces call The surfaces will be created in _roundtrip_async, so no need to call this early. This should cause no functional difference. Part-of: 2021-06-11 09:02:29 +0200 Michael Olbrich * gst/playback/gstdecodebin3.c: decodebin3: improve decoder selection Currently the decoder selection is very naive: The type with the highest rank that matches the current caps is used. This works well for software decoders. The exact supported caps are always known and the static caps are defined accordingly. With hardware decoders, e.g. vaapi, the situation is different. The decoder may reject the caps later during a caps query. At that point, a new decoder is created. However, the same type is chosen an after several tries, decodebin fails. To avoid this, do the caps query while adding the decoder and try again with other decoder types if the query fails: 1. create the decoder from the next matching type 2. add and link the decoder 3. change the decoder state to READY 4. do the caps query if it fails then remove the decoder again and go back to 1. 5. expose the source pad 6. sync the decoder state with the parent. This way, the decoder is already part of the pipeline when the state change to READY happens. So context handling should work as before. Exposing the source pad after the query was successful is important: Otherwise the thread from the decoder source pad may block in a blocked pad downstream in the playsink waiting for other pads to be ready. The thread now blocks trying to set the state back to NULL while holding the SELECTION_LOCK. Other streams may block on the SELECTION_LOCK and the playsink never unblocks the pad. The result is a deadlock. Part-of: 2021-07-14 16:09:41 -0400 Nicolas Dufresne * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: x11: Issue XSync to close our top level window This is similar action as when the window handle is modified, we now issue XSync whenever we destroy our internal window. This ensure that the window is properly closed before the connecgtion is dropped. Fixes #815 Part-of: 2021-07-14 11:43:10 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl: wayland: Fix hinding the window on close() When the window is called, we properly destroy all surfaces, which effectively will unmap that surface and should make it disapear on screen, but we also destroy the wl_source, a GSource that is resposibble of dispatching and executing messages to/from the Wayland server. As a side effect, the server never gets the message and the surfaces are "leaked" on the server. We fix this using wl_display_flush() before destroying the wl_source. Fixes #815 Part-of: 2021-07-15 11:09:35 -0400 Nicolas Dufresne * tests/examples/gl/sdl/meson.build: tests: example: Add missing glx_dep when building sdlshare Might be realted to some recent Mesa cleanup, but GLX is not longer visible through libOpenGL, so add the missing deps now. Part-of: 2021-05-17 12:04:50 +1000 Matthew Waters * tests/examples/gl/qt/qglwtextureshare/meson.build: examples/qt/textureshare: add explicit dep on glx_dep Fixes linking: /usr/bin/ld: subprojects/gst-plugins-base/tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.p/qglrenderer.cpp.o: undefined reference to symbol 'glXGetCurrentContext' /usr/bin/ld: /usr/lib64/libGLX.so.0: error adding symbols: DSO missing from command line Part-of: 2021-05-14 14:10:55 +0200 Haelwenn (lanodan) Monnier * gst-libs/gst/gl/meson.build: gl: Try GLVND 'opengl' and 'glx' first This fixes targetting desktop OpenGL without libGL.so Part-of: 2021-07-12 09:37:24 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Only post QoS messages if the property is enabled Previously one of the branches did not check for the property value. To avoid this in the future, check inside the QoS calculation function instead. As a side effect this now always prints the debug messages into the logs when samples are dropped, which is useful information even without the QoS messages. Part-of: 2021-07-09 09:49:15 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: * tests/check/elements/audiomixer.c: audioaggregator: Resync on the next buffer when dropping a buffer on discont resyncing If a buffer is dropped during resyncing on a discont because either its end offset is already before the current output offset of the aggregator or because it fully overlaps with the part of the current output buffer that was already filled, then don't just assume that the next buffer is going to start at exactly the expected offset. It might still require some more dropping of samples. This caused the input to be mixed with an offset to its actual position in the output stream, causing additional latency and wrong synchronization between the different input streams. Instead consider each buffer after a discont as a discont until the aggregator actually resynced and starts mixing samples from the input again. Also update the start output offset of a new input buffer if samples have to be dropped at the beginning. Otherwise it might be mixed too early into the output and overwrite part of the output buffer that already took samples from this input into account. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/912 which is a regression introduced by https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1180/ Part-of: 2021-05-26 18:20:02 -0400 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Add test for QoS message posting Part-of: 2021-05-26 10:38:18 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audio aggregator: Post QoS message when dropping audio Post a QoS message every time some audio samples are dropped. Also print log messages to make it easier to debug Part-of: 2021-05-25 18:05:05 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audio aggregator: Count samples that are dropped or processed Keep a count of samples that are dropped or processed as statistics Part-of: 2021-05-21 16:16:50 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audio aggregator: Add QoS property to pad Add a property to emit a QoS message whenever any data is dropped. Part-of: 2021-05-21 16:10:06 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audio aggregator: Rename property enum to match class name Add "CONVERT" into the property enum as we're going to add an enum specifically for the base pad. Part-of: 2019-09-24 17:14:10 +0200 Stéphane Cerveau * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoutils.h: * tests/check/libs/videodecoder.c: videodecoder: add API to receive subframes A video decoder can now receive subframes and start decoding instead of waiting for the full frame to be complete. Subframe support will reduce latency as described in the video encoder base class. A unit test illustrating this API is available in tests/check/libs/videodecoder.c. Part-of: 2021-07-03 19:36:06 +0900 Seungha Yang * gst-libs/gst/gl/wgl/gstglcontext_wgl.c: gl/context/wgl: Add missing NULL init The value of uninitialized local variable is varying depending on compiler and not guaranteed to be NULL initialized. That results in pointing random address instead of expected function pointer. Part-of: 2021-03-12 13:55:38 +0100 Francisco Javier Velázquez-García * docs/plugins/gst_plugins_cache.json: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Add SMPTE75 RP-219 color bars conformant Implement 8-bit values of SMPTE RP 2019-1:2014. The bar widths and heights are the result of fractions as integers. The remainders of widths are distributed in a way that they match the values in Table C.1 (a) in the specification. Part-of: 2021-03-12 20:58:40 +0100 Jan Alexander Steffens (heftig) * gst/videotestsrc/videotestsrc.c: videotestsrc: Add a start parameter to _blend_line Makes it easier to paint part of a line. Part-of: 2021-03-12 20:57:13 +0100 Jan Alexander Steffens (heftig) * gst/videotestsrc/videotestsrc.c: videotestsrc: Keep tmpline unchanged in_convert_tmpline This will allow us to repeatedly call it to render subsequent lines. Part-of: 2021-06-15 13:22:55 -0700 Michael de Gans <47511965+mdegans@users.noreply.github.com> * gst-libs/gst/app/gstappsink.c: appsink: fix incorrect return nullability This commit fixes the annoations for return nullability on several GstAppSink functions. This was causing bindings to be generated incorrectly. Fixes #914 Part-of: 2021-05-19 16:22:46 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: Add scaling policy to support PAR-aware scaling Adding "sizing-policy" property for user to be able to specify scaling policy (aspect-ratio for example). At the moment, supported mode is only keep-aspect-ratio, but we might be able to add more policies such as cropping, etc. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/696 Part-of: 2021-05-19 20:11:15 +0900 Seungha Yang * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: video: Deprecate gst_video_sink_center_rect() ... and add gst_video_center_rect() method as a replacement. The method is useful for outside of videosink subclasses as well but the old naming might be able to mislead people. Part-of: 2021-05-24 19:11:51 +0200 Jakub Adam * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: don't write empty extension header When some header extensions are present but none decides to write any data to the currently processed RTP buffer, remove the extension data section. Resulting RTP buffer wasn't formatted correctly. Part-of: 2021-05-24 19:02:42 +0200 Jakub Adam * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: rtpbuffer: Add gst_rtp_buffer_remove_extension_data() Part-of: 2021-05-24 19:01:24 +0200 Jakub Adam * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: map RTP buffer READWRITE when setting headers GstRTPHeaderExtension::write can map the RTP buffer for reading. If that happens on a buffer that is already mapped WRITE-only by the payloader, the payloader's mapping gets invalidated (GstRTPBuffer::map will point to a different instance of GstMemory). Part-of: 2021-06-24 14:56:11 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: Make all fields private The presence of a method and a field with the same name confuses the C# binding generator. As there are accessor functions for all the fields, let's just make them private. Part-of: 2021-06-26 12:50:58 -0400 Olivier Crête * gst-libs/gst/gl/egl/gstglmemoryegl.c: gst: don't use volatile to mean atomic volatile is not sufficient to provide atomic guarantees and real atomics should be used instead. GCC 11 has started warning about using volatile with atomic operations. https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719 Discovered in gst-plugins-good#868 Part-of: 2021-06-25 23:42:34 +1000 Jan Schmidt * gst-libs/gst/video/video-converter.c: video-converter: Set up matrix tables only once. When configuring a multi-thread converter, only allocate the shared colour conversion matrices once for the first thread, to avoid allocating multiple times and leaking memory. Part-of: 2021-05-06 19:01:41 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/video/video-converter.c: video-converter: Set up gamma tables only once When the video converter is using multiple threads, the gamma tables were created multiple times, leaking the tables set up for the previous thread. Only calculate the tables once. Part-of: 2021-05-06 18:22:45 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/audio/audio-converter.c: audio-converter: Free config when gst_audio_converter_new fails The config got leaked when parameter validation fails. Part-of: 2021-06-25 15:24:21 +0900 Seungha Yang * gst-libs/gst/gl/glprototypes/sync.h: glprototypes: Add GST_GL_API_OPENGL to available version of sync Make sync APIs usable if supported, even when GST_GL_API_OPENGL3 is not selected Part-of: 2021-04-23 18:03:20 +0200 Per Förlin * gst-libs/gst/rtsp/gstrtspconnection.c: gstrtspconnection: Add IPv6 support for tunneled mode An IPv6 address must be specified within [] brackets. Add brackets for IPv6 address used for tunneled mode, for non-tunneled this is already supported. Part-of: 2021-06-16 14:49:14 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Call drain() rather then finish() on segment-done The finish() virtual function documentation state that "Sub-classes can refuse to decode new data after." Though, it is very common to issue a non-flushing seek after that event in gapless playback uses case. This fixes potential stalls with code using segment seeks, by using drain() virtual funciton instead. Part-of: 2021-06-08 14:55:36 +1000 Matthew Waters * ext/ogg/gstoggdemux.c: oggdemux: fix a race in push mode when performing the duration seek There may be two or more threads involved here however the important interaction is the use of ogg->seeK_event_drop_till value that was only set in the push-mode seek-event thread and could race with upstream sending e.g. and EOS (or data). Scenario is this: 1. oggdemux performs a seek to near the end of the file to try and find the duration. ogg->push_state is set to PUSH_DURATION. 2. Seek is picked up by the dedicated seek event thread and sets ogg->seek_event_drop_till to the seek event's seqnum. 3. Most operations are blocked or dropped waiting on the duration to be determined and processing continues until a duration is found. 4. Two branching options for how this ultimately plays out 4a. The source is too fast and we receive an EOS event which is dropped because ogg->push_state == PUSH_DURATION. In this case everything works. 4b. We hit our 'almost at the end' check in gst_ogg_pad_handle_push_mode_state() and attempt to seek back to the beginning (or to a user-provided seek). This seek is marshalled to the seek event thread without setting ogg->seek_event_drop_till but with change ogg->push_state = PUSH_PLAYING. If an EOS event or e.g. buffers arrive from upstream before the seek event thread has picked up the seek event, then the EOS/data is processed as if it came as a result of the seek event. This is the case that fails. The fix is two-fold: 1. Preemptively set ogg->seek_event_drop_till when setting the seek event so that data and other events can be dropped correctly. 2. In addition to dropping and EOS events while ogg->push_state == PUSH_DURATION, also drop any EOS events that are received before the seek event has been processed by also tracking the seqnum of the seek. Part-of: 2021-06-21 14:06:14 +0000 Sergei Kovalev * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Fix of double lock release Add missing "return;" which prevents double lock release. Part-of: 2021-06-21 08:34:07 +0000 Corentin Damman * COPYING: Update COPYING Part-of: 2021-06-16 15:55:49 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl/context: fill a GError on platform-specific fill_info() error Fixes bindings assuming that GError is always set on error: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809#note_957493 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809#note_957494 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809#note_957498 Part-of: 2021-06-16 12:13:21 +0200 François Laignel * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudiostreamalign.c: * gst-libs/gst/pbutils/gstdiscoverer.c: Check mandatory ClockTime arguments Part-of: 2021-06-11 09:27:46 -0600 Scott Moreau * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: Use consistent wl_display when creating work queue for proxy wrapper Without this, glimagesink since wayland 727c7903 fails with gst-launch-1.0: ../src/wayland-client.c:2181: wl_proxy_set_queue: Assertion 'proxy->display == queue->display' failed. Part-of: 2021-06-07 17:54:46 +0800 Haihua Hu * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl/viv-fb: fix gl plugin hang when run with viv-fb backend below commit change the window resize thread and cause viv-fb backend hang, need move resize code after window->open is called. Otherwise, the resize message will send to a thread that not start running and window resize call will waiting forever. Commit: b887db1efe816c0c28b60a6842fa9005a26c1502 glwindow: fix racy resize updates Take locks around resize handling and marshall all resizes to the windowing thread by default. Part-of: 2021-06-10 12:41:31 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Add AV12 DMABuf import support The per plane format mapping for AV12 was missing, which would force raw upload. Part-of: 2021-06-10 12:39:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Fix wrong stride when importing DMABuf When the code was ported to use component index instead of plane index, the call to GST_VIDEO_INFO_PLANE_STRIDE() was accidently ported to use component index, but this macro takes a plane index. Part-of: 2021-06-08 17:27:55 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: When dropping buffers before handling the initial segment use the latest input segment Part-of: 2021-06-08 13:05:46 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Correctly check if this is the first buffer that was queued By checking the queue length this would also count events and caps. We already keep track of the number of buffers separately so just use that. Part-of: 2021-06-05 02:35:30 +0200 Mathieu Duponchelle * gst-libs/gst/app/gstappsrc.c: appsrc: signal enough-data even when leaking this is convenient for application that wish to monitor whether the appsrc is leaking. Part-of: 2021-06-03 21:14:42 +0200 Marijn Suijten * gst-libs/gst/rtp/gstrtphdrext.c: rtp/header: Add missing `array length` annotation to read/write methods Part-of: 2021-06-03 13:40:33 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/video/video-format.h: video: Sort video formats correctly AV12 should be right after A420 because it is the same format with just one plane less, instead of being next to I420/NV12 which don't have an alpha channel. RGBP should be before GBR because it's the same format except for the more canonical component order. See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/790 which actually checks on the CI if the algorithm defined in video-format.h is implemented correctly. Part-of: 2021-06-03 15:57:39 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: hold extra pad ref while calling parent Our subsequent cleanup needs a ref on the pad and calling the parent may release the last reference and could cause a use-after-free. Part-of: 2021-06-03 15:57:17 +1000 Matthew Waters * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: gl/stereo: fix a coupld of caps leaks Part-of: 2021-05-22 15:42:17 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: remove choosing egl fallback from GST_GL_PLATFORM If GST_GL_WINDOW is unset but GST_GL_PLATFORM=egl, then we were choosing to create an GstGLDisplayEGL directly instead of going through the any more specific windowing system implementation (X11, Wayland). The 'create an GstGLDisplayEGL when GST_GL_PLATFORM=egl' was a fallback as we did not have entries for all EGL-using window systems previously. Now that we do, the fallback can be removed. An EGLDisplay can still be created by setting GST_GL_WINDOW=egl or as one option. Fixup of https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1154 Part-of: 2021-05-23 23:51:27 +0100 Tim-Philipp Müller * ext/alsa/gstalsamidisrc.c: * ext/ogg/gstoggdemux.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/video/video-anc.c: * meson.build: Use g_memdup2() where available and add fallback for older GLib versions g_memdup() is deprecated since GLib 2.68 and we want to avoid deprecation warnings with recent versions of GLib. Part-of: 2021-06-01 15:28:24 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.19.1 === 2021-06-01 00:09:54 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * README: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.19.1 2021-05-26 16:57:28 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: Ask for an alpha channel and fallback While this was already possible through the GLContext machinary, this simply request an alpha channel by default and fallback if this is not possible. This obsolete some RPi Dispmanx hack, since this is near equivalent will allow see through when playgin WebM Alpha or other transparent files. Application are still free to pass their own EGLContext attribute, this is specially for the case the application let GStreamer chose (e.g. gst-launch). Part-of: 2021-05-31 09:14:53 +0200 Daniel Knobe * gst/rawparse/gstrawbaseparse.c: rawbaseparse: check destination format correctly Part-of: 2021-05-26 22:50:22 -0400 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Add test for discont going backwards Part-of: 2021-05-27 16:05:04 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Don't overwrite already written samples On re-sync, don't forget what has already been written. Instead, just drop any samples that overlap with parts that were already filled. Part-of: 2021-05-27 16:20:09 +0900 Seungha Yang * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Fix divide by zero assertion GstAudioRingBufferSpec can be cleared from other thread, then rate value will be zero Part-of: 2021-05-26 23:22:45 +0200 Marijn Suijten * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/video/video-format.c: audio,video-format: Make generate_raw_formats idempotent for assertions When compiling without assertions `g_assert` and its contents disappear resulting in no list being deserialized at all and the `gst_{audio,video}_formats_raw` functions to return an empty collection. Part-of: 2021-05-23 23:48:39 +0100 Tim-Philipp Müller * ext/ogg/gstoggstream.c: * tests/check/libs/rtp.c: Use new gst_buffer_new_memdup() Part-of: 2021-05-24 14:25:55 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Consider the converter-config when deciding whether one pad obscures another If the converter configuration is set to not fill any borders, or if the border fill color is not full opaque, then the pad has to be handled as potentially transparent and can't be considered to obscure another one. This prevents pads from being wrongly skipped and doing alpha-blending with uninitialized memory. Part-of: 2021-05-21 15:04:16 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache for AV12 pixel format Part-of: 2021-05-21 13:28:32 -0400 Nicolas Dufresne * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: Update video-orc-dist This adds the new symbols needed for AV12 support. Part-of: 2021-05-18 16:20:36 -0300 Daniel Almeida * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for AV12 AV12 is an internally conceived format that is actually the combination of NV12 and an alpha plane. This format is to add to gstreamer's webM transparency support for vp8 and vp9. To this end, two I420 streams are independently decoded simultaneously for the actual content and the alpha plane respectively and these are then combined into A420. This patch adds GL conversion support so that it is possible to convert from AV12 to RGBA for the purposes of rendering it on a display. The reverse conversion is also supplied. Part-of: 2021-05-21 12:24:37 -0300 Daniel Almeida * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-orc.orc: video: add support for AV12 AV12 is an internally conceived format that is actually the combination of NV12 and an alpha plane. This format is to add to gstreamer's webM transparency support for vp8 and vp9. To this end, two I420 streams are independently decoded simultaneously for the actual content and the alpha plane respectively and these are then combined into A420. Since most hardware decoders output NV12, this patch adds NV12+A to make the same workflow possible. Part-of: 2021-05-21 12:24:00 -0300 Daniel Almeida * gst-libs/gst/video/video-orc.orc: video: video-orc: remove trailing spaces Remove unnecessary trailing spaces at the end of some orc functions. Part-of: 2021-05-20 11:16:30 -0400 Thibault Saunier * tests/validate/audiotestsrc/reverse/flow-expectations/log-asink-sink-expected: * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-src-expected: tests: Update expectation files with sorted structure fields 2021-05-20 11:24:15 -0400 Thibault Saunier * gst-libs/gst/sdp/meson.build: meson: Fix the name of the `sdp_deps` variable Part-of: 2021-05-20 22:52:56 +1000 Matthew Waters * gst-libs/gst/gl/wgl/gstglcontext_wgl.c: gl/context/wgl: implement a better get_proc_address() Look in opengl32.dll first, then wglGetProcAddress(), and only then possibly from any linked in libraries. Part-of: 2021-05-20 22:50:23 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl/context: add opengl32.dll as a library to dlopen() on windows Part-of: 2021-05-20 23:27:21 +0100 Tim-Philipp Müller * gst/overlaycomposition/gstoverlaycomposition.c: overlaycomposition: fix cut-off example code in docs Include everything to the end. Part-of: 2021-05-06 17:26:50 -0300 Daniel Almeida * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for A420 conversion A420 is a four planar format similar to I420 but with an extra buffer for alpha values. A common use of the gl stack is for GPU format conversions using shaders, in which case one can use glupload, glcolorconvert and gldownload elements to upload their buffer to the GPU context, perform the conversion on the GPU itself and then retrieve the data to CPU context. A420 was not supported. This patch adds said support mainly by adding the corresponding shader to perform the conversion and updating the supported caps. Both A420->RGBA and RGBA->A420 conversions are supported. Part-of: 2021-05-19 19:44:29 +0200 Enrique Ocaña González * ext/gl/gstglcolorbalance.c: glcolorbalance: Error out on unsupported texture target types The issue can be reproduced on a computer with a Radeon graphics card when trying to force GStreamer Editing Services to use GL for video mixing in GESSmartMixer, instead of the GstCompositor that smart mixer would normally use. This change causes the resulting video stream to have "video/x-raw(memory:GLMemory) ... texture-target: 2D" caps (instead of "video/x-raw ..." caps). At the PlaySink stage of the pipeline, a GstGLImageSinkBin is plugged, with a GstGLColorBalance on it. For some reason that is still to be debugged (and out of the scope of this patch), gst_gl_filter_set_caps() is never called on that color balance element, leaving filter->in_texture_target set to its default GST_GL_TEXTURE_TARGET_NONE value. The incomplete _create_shader() logic does the rest and silently generates a shader code that doesn't build. This is the command I use to reproduce the issue (I'm not sure if I would be able to isolate the issue in a simple pipeline, though): GST_PLUGIN_FEATURE_RANK=vaapih265enc:NONE,vaapih264enc:NONE,vaapisink:NONE,vaapidecodebin:NONE,vaapipostproc:NONE,vaapih265dec:NONE,vaapivc1dec:NONE,vaapih264dec:NONE,vaapimpeg2dec:NONE,vaapijpegdec:NONE,glvideomixer:260 ges-launch-1.0 +clip /tmp/video.mp4 Part-of: 2021-05-19 16:35:01 -0400 Nicolas Dufresne * gst/compositor/blend.c: compositor: Fix NV12 blend operation The full src_height/width was being used instead of the remaining width/height for the current band. As a side effect, that value would get erroneously reset and would cause overrun. Fixes #887 Part-of: 2021-05-18 15:36:36 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-info.c: * gst/compositor/compositor.c: * gst/rawparse/gstrawvideoparse.c: video: Pass component index not plane index While so far it worked, we are about to introduce a format that break this assuming. We have a format which consist of NV12 with alpha, and this format does not have a direct mapping of the component against their plane indexes. Fix this by using gst_video_format_info_component() introduced in 1.18 for this purpose. Part-of: 2021-05-18 20:00:01 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl/context: move egl creation lower in priority on _new() e.g. if running a dual wgl/egl built library, then egl will always succeed in creating the GstGLContext because almost anything could support egl, as long as eglGetDisplay() works. wgl, however has a check for the correct display type so should move earlier in the tried list. Part-of: 2021-05-18 19:56:13 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl/display: provide a gst_gl_display_new_with_type() Allows more fine-grained control over the exact display type that is created. Part-of: 2021-05-19 16:23:43 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't try to return void warning C4098: 'gst_video_aggregator_parallel_convert_pad_finalize': 'void' function returning a value Part-of: 2021-05-16 13:31:56 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: Revert video HDR10+ support This reverts commit f76b731cbf76aa59ef462e4fd761cceda1f50a6d. This reverts commit 631489de230d5e1c43f8ded596e220561824ca1e. This reverts commit a1ed7a8f49568094f79fd76d7842d67e723229d1. This reverts commit 7d6f72e956e63a0e8c4998c730d67c52e2b69a8d. Back this out again for now for the release. Needs more discussion. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/865 Part-of: 2021-05-17 00:33:44 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: * meson.build: * scripts/meson-pkg-config-file-fixup.py: meson: fix up wrong escaping of variables in gl and plugins-base .pc file Workaround for pkg.generate() escaping spaces in pc variables that shouldn't be escaped. Perhaps going back to configure_file() would be a better option though. Really needs a fix in Meson. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/884 Part-of: 2021-05-17 11:10:49 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: * meson.build: meson: add custom pkg-config variables also to uninstalled .pc files Part-of: 2021-05-16 19:10:01 +0200 Guillaume Desmottes * ext/pango/gstbasetextoverlay.c: basetextoverlay: add debug category All logs were using 'default' category which is not handy for debugging. Part-of: 2021-04-02 16:43:02 +1100 Matthew Waters * docs/plugins/gst_plugins_cache.json: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: perform conversions in parallel Improves throughput of the total convert and blend process and allows for higher performance across slightly more threads. Also make use of video aggregator's task pool for blending as well in order to reduce the number of threads. Part-of: 2021-04-02 16:40:37 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: video/aggregator: add parallel convert pad class Each required conversion will be performed concurrently Part-of: 2021-04-02 16:39:08 +1100 Matthew Waters * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video/converter: add support for async conversion operation Allows for users to start up multiple conversions concurrently. Part-of: 2021-03-26 16:34:20 +0200 Jordan Petridis * ext/gl/meson.build: ext/gl: change graphene default options The type was changed upstream from a boolean to an autofeature https://github.com/ebassi/graphene/commit/41ebe5fa61d4bdb6c75f677942d19c6c976fd17b Part-of: 2021-05-14 23:16:32 +0100 Jose Quaresma * tests/check/meson.build: tests: use the real name of the videoscale test in GST_REGISTRY The videoscale tests uses the same name as the one used in base tests. Fix this and use the name of the videoscale test on the test environment GST_REGISTRY Part-of: 2021-04-21 22:40:35 -0400 Thibault Saunier * gst/playback/gsturisourcebin.c: playback: Handle sources with dynamic pads and pads already present In case we already have a pad but more might be added later we were ignoring the new pads added later, we should track the element new pads and expose them as they are added. Part-of: 2021-04-21 22:19:39 -0400 Thibault Saunier * gst/playback/gsturisourcebin.c: playback: Stop giving "source" as name to sources This makes it very hard to understand what source we are talking about Part-of: 2020-09-08 16:27:03 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstglcontextconfig.c: * gst-libs/gst/gl/gstglcontextconfig.h: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wgl/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: add support for influencing the backing configuration New API: - gst_gl_context_get_config() - gst_gl_context_request_config() A GL context configuration is a GstStructure that has some well-known names for common values that can also be extended in platform-specific ways if necessary. Wrapped OpenGL contexts may be able to retrieve the GL context configuration depending on the platform. If that information is available, GstGLContext will attempt to create an context that matches the shared OpenGL context config unless gst_gl_context_request_config() has been called. A new environment variable 'GST_GL_CONFIG' will be read to influence the configuration chosen. The environment variable will only be used as a fallback if gst_gl_context_request_config() has not been called. Part-of: 2021-05-13 15:55:37 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/context/egl: change header guard to be unique The header guard in gst/gl/egl/gstglcontext_egl.h was the same as gst/gl/egl/egl.h Part-of: 2020-09-08 15:53:27 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * tests/check/libs/gstglapi.c: * tests/check/meson.build: gl/api: improve the to/from string for GstGLAPI/GstGLPlatform With unit tests now! Part-of: 2020-09-08 15:09:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: gl/framebuffer: expand documentation on valid usage Part-of: 2021-05-11 14:31:59 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: * ext/opus/gstopusdec.c: opusdec: Add Converter class to hint gst-validate opusdec have minimal conversion capability, adding the Converter class allow gst-validate to behave properly and not spit an error when it notice that the number of channels or rate miss-match in and out. Related to https://gitlab.freedesktop.org/gstreamer/gst-integration-testsuites/-/merge_requests/102 Part-of: 2021-05-11 10:34:16 +0800 Haihao Xiang * docs/plugins/gst_plugins_cache.json: doc: update gst_plugins_cache.json Part-of: 2021-05-10 14:43:23 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for RGBP and BGRP formats gst-launch-1.0 videotestsrc ! video/x-raw,format=RGBP ! glimagesink gst-launch-1.0 videotestsrc ! video/x-raw,format=BGRP ! glimagesink Part-of: 2021-05-10 14:21:51 +0800 Haihao Xiang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add support for RGBP and BGRP formats The two RGB planar formats are used in OpenVino [1] gst-launch-1.0 videotestsrc ! video/x-raw,format=BGRP ! fakesink gst-launch-1.0 videotestsrc ! video/x-raw,format=RGBP ! fakesink [1] https://docs.openvinotoolkit.org/latest/openvino_docs_optimization_guide_dldt_optimization_guide.html Part-of: 2021-05-11 12:01:03 +0800 Haihao Xiang * tests/check/libs/video.c: test: enlarge the number This is to make sure the case can pass after adding new video formats. Part-of: 2021-03-02 20:09:26 -0500 Nicolas Dufresne * gst-libs/gst/video/gstvideocodecalphameta.c: * gst-libs/gst/video/gstvideocodecalphameta.h: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video.h: codec: Introduce GstVideoCodecAlphaMeta This meta hold one buffer of the same codec data as the parent memory. This extra frame luma will be used as the alpha values for the final combined frame. This is notably used to support VP8/VP9 alpha as defined in WebM and matroska specification. Part-of: 2021-03-30 14:38:25 -0400 Nicolas Dufresne * gst-libs/gst/video/video.h: video: Sort includes in video.h Part-of: 2021-05-04 18:09:07 +0300 Sebastian Dröge * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: multihandlesink: Use the monotonic clock for detecting timeouts and connection durations Otherwise real-time clock changes can wrongly trigger timeouts, or not cause timeouts to happen in time. Unfortunately real-time clock times still have to be kept track inside the elements for the statistics. Switching those over to the monotonic clock would cause behaviour changes from the application point of view. The statistics are extended with fields with monotonic times though. Part-of: 2021-05-03 17:10:20 +0300 Sebastian Dröge * tests/check/elements/appsrc.c: appsrc: Add test for testing the max-* and leaky-type properties Part-of: 2021-05-02 20:46:00 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: appsrc: Implement a leaky property similar to the queue element This allows dropping the newest or oldest buffer when the internal queue is full instead of blocking or continuing to grow. Part-of: 2021-04-30 19:22:46 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: appsrc: Add new max-buffers / max-time / current-level-buffers / current-level-time properties These work the same way as the corresponding properties on queue and allow to control the internal buffer size of the appsrc in a more flexible way. Unlike in queue the max-buffers and max-time properties are 0 (i.e. disabled) by default for backwards compatibility reasons. Part-of: 2021-04-20 19:53:01 +0200 François Laignel * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin3.c: * tests/check/elements/adder.c: * tests/check/elements/audiointerleave.c: * tests/check/elements/audiomixer.c: * tests/check/elements/compositor.c: * tests/check/elements/encodebin.c: * tests/check/elements/streamsynchronizer.c: * tests/check/elements/textoverlay.c: * tests/check/pipelines/oggmux.c: * tests/examples/compositor/crossfade.c: * tests/examples/compositor/mosaic.c: * tests/examples/decodebin_next/decodebin3.c: * tests/examples/dynamic/codec-select.c: * tests/examples/dynamic/sprinkle.c: * tests/examples/dynamic/sprinkle2.c: * tests/examples/dynamic/sprinkle3.c: * tests/icles/output-selector-test.c: Use gst_element_request_pad_simple... Instead of the deprecated gst_element_get_request_pad. 2021-05-04 15:38:18 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtphdrext.c: rtp/hdrext: correct gst_rtp_get_header_extension_list() docs The return value is a list of GstElementFactory's that when gst_element_factory_create()ed will create a GstRTPHeaderExtension. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/897 Part-of: 2021-05-02 20:45:01 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Don't leak buffer list while wrongly unreffing buffer on EOS/flushing Part-of: 2021-05-02 20:45:36 +0300 Sebastian Dröge * gst-libs/gst/app/meson.build: app: Add gstappsrc.h to the enum headers in meson.build It's already indirectly included but let's better be explicit here. Part-of: 2021-04-27 10:30:15 +0200 Stéphane Cerveau * tools/gst-play.c: gst-play: add --start-position command line argument Part-of: 2021-04-30 20:42:55 +0530 Nirbheek Chauhan * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Fix a leak when computing alpha caps Part-of: 2021-04-23 14:45:07 +0200 Stéphane Cerveau * tests/examples/playback/playback-test.c: playback-test: add window title If playbin mode, display the current uri Part-of: 2021-04-29 21:16:10 +1000 Matthew Waters * gst-libs/gst/sdp/gstsdpmessage.c: sdp/caps: support translating transport-cc rtcp-fb from caps to sdp attributes Part-of: 2021-04-11 18:43:06 -0400 Doug Nazar * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: rtp: Fix request-extension signal call Signal is registered as taking a guint however was being passed a guint64 which fails on 32-bit. Part-of: 2021-04-16 18:10:38 +0200 Víctor Manuel Jáquez Leal * sys/xvimage/xvimagesink.c: xvimagesink: Handle cropping when copying frames. Cropping was not handled properly when frames have to be copied to xvimage's buffer pool, first because the crop meta were dropped, and second because the allocated frame size in xvimage's buffer pool were smaller than the incoming frame. This patch updates xvimagesink's video info when propose_allocation() is called, and copies the GstVideoCropMeta from source frame to destination one. Part-of: 2021-04-01 15:30:41 +0200 Víctor Manuel Jáquez Leal * sys/xvimage/xvimagesink.c: xvimagesink: Delay pool creation until it's needed. Buffer pool is created every time setcaps() is called, but it's required only when upstream doesn't use it, so it's only needed to copy frames onto XV buffers. This patch delay the creation of the buffer pool until it's frame copy is required. Part-of: 2021-03-17 13:56:16 +1100 Matthew Waters * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * ext/gl/meson.build: * gst-libs/gst/gl/meson.build: gl/download: add support for output memory:NVMM buffers Currently RGBA-only. Part-of: 2021-03-17 13:54:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: gl/bufferpool: add api for retrieving the configure gl allocation params Part-of: 2021-02-26 18:48:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/meson.build: glupload: add support for uploading memory:NVMM buffers Currently RGBA-only. Part-of: 2021-03-18 14:20:34 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglupload.c: glupload: guard against glEGLImageTexture2D not existing e.g. if targetting EGL/opengl, we would attempt to use this GLES function when wrapping EGLImage's. Part-of: 2021-04-26 14:25:03 -0400 Xavier Claessens * gst-libs/gst/gl/meson.build: gstgl: Fix build when Meson >= 0.58.0rc1 "implicit_include_directories: false" now also means that current build directory is not added to include paths by default any more. We have to add it manually because we have some custom_target() that generate headers in current build directory. See https://github.com/mesonbuild/meson/issues/8700. Part-of: 2021-04-23 14:05:45 -0400 Doug Nazar * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/meson.build: * tests/examples/gl/cocoa/cocoa-videooverlay.m: * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: opengl: Silence macOS OpenGL deprecations As of macOS 10.14 the entire OpenGL system is deprecated. No need to log the general warnings about it. Specific warnings are still enabled. Part-of: 2021-04-06 14:55:39 +0200 Stéphane Cerveau * tests/examples/playback/playback-test.c: playback-test: fix seek crash check that app->seek_format exists before seeking. Part-of: 2021-04-20 23:20:19 -0400 Doug Nazar * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpelements.c: tcp: Rework client start error handling. Ensure errors are cleaned up properly at the right level. Abort connection attempts if we're cancelled. Part-of: 2021-04-21 17:18:51 +0200 Jakub Adam * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepay: fix locking of GstRTPHeaderExtension 'ext' object unlocked if gst_rtp_header_extension_read() fails was never locked in the first place. Part-of: 2021-04-21 10:27:10 +0200 Stéphane Cerveau * ext/vorbis/gstivorbisdec.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbiselement.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: vorbis: avoid duplicate symbols Use TREMOR define to avoid duplicate symbols of ivodebis and vorbis plugins when static linking GStreamer. Rearrange debug category init. Part-of: 2021-04-21 02:05:36 +0900 Seungha Yang * gst/playback/gsturidecodebin.c: uridecodebin: Don't force floating reference for future reusable decodebin uridecodebin assumes that refcount of decodebins stored in pending_decodebins are floating but it might not be true in case that refcount of the decodebin was touched in other places. To avoid the floating refcount issue, hold strong reference. Part-of: 2021-04-21 02:02:48 +0900 Seungha Yang * gst/playback/gsturidecodebin.c: uridecodebin: Use gst_object_ref instead of g_object_ref It's more debugging friendly (tracer for example) Part-of: 2021-04-20 11:06:09 +0300 Jordan Petridis * gst-libs/gst/video/gstvideoencoder.c: gstvideoencoder: make sure the buffer is writable before modifying metadata Similar to ae8d0cf3acfaf79d8479647a55bd44b8453d07df Part-of: 2021-04-19 15:54:18 -0400 Doug Nazar * gst/tcp/gsttcpclientsink.c: tcp: Convert tcpclientsink to new helpers. Part-of: 2021-04-19 15:54:04 -0400 Doug Nazar * gst/tcp/gsttcpclientsrc.c: tcp: Convert tcpclientsrc to new helpers. Part-of: 2021-04-19 15:53:36 -0400 Doug Nazar * gst/tcp/gsttcpserversink.c: tcp: Convert tcpserversink to new helpers. Part-of: 2021-04-19 15:52:35 -0400 Doug Nazar * gst/tcp/gsttcpserversrc.c: tcp: Convert tcpserversrc to new helpers. Part-of: 2021-04-19 15:48:18 -0400 Doug Nazar * gst/tcp/gsttcpelements.c: * gst/tcp/gsttcpelements.h: tcp: Add helper functions to lookup hostnames and create sockets. Lookup will now maintain the full list of possible IP address(es). We can now iterate over all available addresses in case certain address families (IPv6) are disabled or try connecting to additional addresses for the clients. Part-of: 2021-04-19 11:53:10 -0400 Doug Nazar * tests/check/pipelines/tcp.c: tests/tcp: Fail if unable to start pipelines. Part-of: 2021-04-19 13:22:16 -0400 Doug Nazar * gst/tcp/gstsocketsrc.c: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsink.h: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpelements.c: * gst/tcp/gsttcpelements.h: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/tcp/gsttcpserversrc.h: * gst/tcp/meson.build: tcp: cleanup files consolidate gsttcp.h & gsttcpelements.h rename gsttcpelement.c to match header Part-of: 2021-04-19 13:28:39 +0200 Stéphane Cerveau * gst-libs/gst/video/gstvideodecoder.c: videodecoder: use DTS if PTS unknown The buffer should be set according to DTS if exists when we are guessin the PTS instead of segment start. The decoder can receive buffers which are before the segment in case of seek for example. Part-of: 2021-03-30 11:18:17 +0200 Marijn Suijten * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-color.c: * gst/rawparse/gstrawbaseparse.c: Drop `@` documentation references from functions and external types `@` references are used to reference function parameters, struct members or enum variants _within_ the current type/function. It cannot and should not be used to reference to types outside that. Since C has no notion of member functions it makes little sense to prefix these with `@`; most of the documentation here was referencing functions on _different_ types anyway. Part-of: 2021-04-12 14:02:46 +0200 Mathieu Duponchelle * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: playbin{2,3}: fix base_time selection when flush seeking live This is a direct translation of , as playbin{2,3} insulates its sub groups state changes from the pipeline base class, it needs to track whether the subgroup is live itself, and handle RESET_TIME the same way GstPipeline does. Part-of: 2021-04-11 14:29:30 -0400 Doug Nazar * tests/check/elements/overlaycomposition.c: overlaycomposition: Fix test for big endian. Part-of: 2021-04-11 23:42:13 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: fix up Since markers for newly-added _get_type() functions Follow-up to !999 which wasn't backported into 1.18 in the end after all. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/857 Part-of: 2021-04-06 13:22:15 +0200 Robin Burchell * gst/gio/gstgiobasesink.c: gstgiobasesink: Handle incomplete writes in gst_gio_base_sink_render() As the comment asked, yes, incomplete writes can happen. I have encountered this with an sshfs mount, for example. It seems like g_output_stream_write_all() is designed to handle this case, by not returning until the requested buffer has been completely written, or an error occurs, which seems to match up with the desired behaviour. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/885 Part-of: 2021-04-05 00:34:21 +0900 Seungha Yang * ext/pango/gstclockoverlay.c: * ext/pango/gstclockoverlay.h: clockoverlay: Fix broken string formatting by strftime() on Windows Like other foobarA variant APIs on Windows, formatted string by strftime() is ANSI string, not unicode encoded one. It would be problematic for non-english locale systems. We should use unicode version API (wcsftime in this case) whenever it's possible on Windows. Part-of: 2021-04-07 04:25:47 -0400 Doug Nazar * ext/alsa/gstalsasink.c: * gst-libs/gst/audio/gstaudiosink.c: audio/alsa: Exit write loop if underlying device is already paused. If the alsasink thread starts the write loop but another thread pauses the underlying alsa device, the sink thread will endlessly loop. snd_pcm_writei() will return 0 if the state is SND_PCM_STATE_PAUSED and the loop will never make any progress. Part-of: 2021-04-07 08:28:40 -0400 Xavier Claessens * gst-libs/gst/gl/meson.build: meson: Fix gstreamer-gl-prototypes-1.0.pc This fix a warning because we were generating 2 pc files for gstgl library. Also fix missing glesv2 in Requires. Part-of: 2020-06-01 12:45:36 +0200 Matej Knopp * gst-libs/gst/pbutils/codec-utils.c: codec-utils: properly determine AAC Level Table 1.10 – "Levels for the AAC Profile" only goes to 5 max channels / 7 max channel post amendmend, so I assume the number of channels should not include LFE, otherwise there's no valid level for 5.1 resp. 7.1 (post amendmend) Part-of: 2021-04-04 21:18:59 +0700 Binh Truong * gst-libs/gst/gl/gl_mkenum.py: Fix build issue on MinGW64 Part-of: 2021-03-18 20:13:21 +0100 Jakub Adam * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: make sure header extension buffer is initialized Based upon valgrind finding: Conditional jump or move depends on uninitialised value(s) at 0x4AFF589: read_rtp_header_extensions (gstrtpbasedepayload.c:1197) by 0x4AFF9E5: gst_rtp_base_depayload_set_headers (gstrtpbasedepayload.c:1298) by 0x4AFFEE0: gst_rtp_base_depayload_do_push (gstrtpbasedepayload.c:1413) by 0x4AFFF53: gst_rtp_base_depayload_push (gstrtpbasedepayload.c:1448) by 0x4AFDEBA: gst_rtp_base_depayload_handle_buffer (gstrtpbasedepayload.c:801) by 0x4AFE41E: gst_rtp_base_depayload_chain_list (gstrtpbasedepayload.c:899) by 0x48F262C: gst_pad_chain_data_unchecked (gstpad.c:4414) by 0x48F3333: gst_pad_push_data (gstpad.c:4655) by 0x48F3DF8: gst_pad_push_list (gstpad.c:4814) by 0x4AFAD87: gst_rtp_base_payload_push_list (gstrtpbasepayload.c:1978) by 0x72B3154: gst_rtp_vp8_pay_handle_buffer (gstrtpvp8pay.c:672) by 0x4AF7031: gst_rtp_base_payload_chain (gstrtpbasepayload.c:868) Uninitialised value was created by a heap allocation at 0x483C77F: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so) by 0x4B8BA78: g_malloc (gmem.c:106) by 0x4BA3A9D: g_slice_alloc (gslice.c:1069) by 0x488D777: _sysmem_new_block (gstallocator.c:413) by 0x488DB28: default_alloc (gstallocator.c:512) by 0x488D3E8: gst_allocator_alloc (gstallocator.c:310) by 0x4AE97E3: gst_rtp_buffer_set_extension_data (gstrtpbuffer.c:856) by 0x4AF9EC6: set_headers (gstrtpbasepayload.c:1757) by 0x489FE4D: gst_buffer_list_foreach (gstbufferlist.c:287) by 0x4AFA87A: gst_rtp_base_payload_prepare_push (gstrtpbasepayload.c:1915) by 0x4AFAD06: gst_rtp_base_payload_push_list (gstrtpbasepayload.c:1970) by 0x72B3154: gst_rtp_vp8_pay_handle_buffer (gstrtpvp8pay.c:672) Part-of: 2021-04-01 21:44:10 -0400 Chris White * gst/typefind/gsttypefindfunctions.c: typefind: use new gst_type_find_suggest_empty_simple() gst_type_find_suggest_simple() now requires a NULL terminator. Use the new, simpler API for no-parameter calls. https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/774#note_861492 Part-of: 2021-03-03 18:28:54 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: allow selecting an alpha output from non-alpha inputs e.g. if we have: video-x/raw,format=I420 ! compositor ! video/x-raw,format=BGRA This will currently produce a warning as the alpha-ness of the chosen 'best' format (I420) will be different from the value restricted by the downstream caps filter. Part-of: 2021-03-29 14:10:12 +0200 Stéphane Cerveau * sys/xvimage/xvcontext.c: * sys/xvimage/xvimage.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimage: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-29 14:09:16 +0200 Stéphane Cerveau * sys/ximage/ximage.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: ximage: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-29 14:07:00 +0200 Stéphane Cerveau * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-29 14:06:30 +0200 Stéphane Cerveau * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: audioresample: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-29 14:06:00 +0200 Stéphane Cerveau * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: audiorate: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-19 10:31:58 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturidecodebin3.c: playback: Don't special-case G_SIGNAL_RUN_CLEANUP stage in signal accumulators All these signals don't run the class handler in the CLEANUP stage. Part-of: 2021-03-25 09:35:31 +1100 Luke Yelavich * tools/gst-device-monitor-1.0.1: tools: Fix incorrect argument in gst-device-monitor-1.0 manpage The --include-hidden argument was --show-hidden in a previous iteration of commit ddf3e6669fcfcaeb3205af698d66c8ec1648f4b3, and I forgot to change the example. Part-of: 2021-03-25 10:29:41 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Don't insert duplicated streams in collection Filter out the ones which are already present. Can happen with several input stream which have identical collections Part-of: 2020-12-11 10:15:32 +0100 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Put stream flags in GstStream Part-of: 2020-11-19 10:49:01 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Make input activation "atomic" When adding inputs dynamically, we need to make sure the new parsebin are added *and* activated by the same thread (by taking the state change lock). The rationale for this is that the calling thread might be an upstream streaming thread and when activating parsebin it might call back upstream. If we don't use the same thread (ex: when the application does a state change on decodebin3 between the moment we add parsebin to decodebin3 and we synchronize the state of parsebin) then we would end up in different threads trying to take upstream recursive locks. Part-of: 2021-03-20 11:16:51 +1100 Luke Yelavich * tools/gst-device-monitor-1.0.1: * tools/gst-device-monitor.c: device-monitor: Add argument to include devices from hidden providers Part-of: 2021-03-22 13:59:39 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: provide a dummy global_remove function Even if we don't care about any global objects being removed, wayland will still error if globals are removed without a corresponding listener set up for them. e.g. wl_output hotplugging Discovered by: Matthias Clasen Part-of: 2021-03-21 16:46:54 +1100 Jan Schmidt * gst/gio/gstgiosrc.c: gstgiosrc: Don't leak scheme string in gst_gio_src_query() Add a g_free() in the code path that forwards the query to the parent handler. Part-of: 2021-03-15 14:35:29 +0800 Bing Song * gst/encoding/gstencodebasebin.c: encodebin: handle video encoder preset fail. Check video encoder preset before request muxer pad as MOV/MP4 don't support addition/removal of tracks at random times. Part-of: 2021-03-18 19:18:36 +1100 Matthew Waters * ext/gl/gstgleffects.c: * ext/gl/gstglimagesink.h: * ext/opus/gstopusenc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/streamvolume.c: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: * gst-libs/gst/gl/gl_mkenum.py: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/rtp/gstrtpmeta.c: * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/xmpwriter.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-multiview.c: * gst-libs/gst/video/video-overlay-composition.c: * gst/adder/gstadder.h: * gst/encoding/gstencodebasebin.c: * gst/playback/gstplay-enum.c: * gst/videorate/gstvideorate.h: * gst/videoscale/gstvideoscale.c: gst: don't use volatile to mean atomic volatile is not sufficient to provide atomic guarantees and real atomics should be used instead. GCC 11 has started warning about using volatile with atomic operations. https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719 Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868 Part-of: 2021-03-18 15:58:01 +0100 Stéphane Cerveau * ext/vorbis/gstvorbiselement.c: vorbis: fix debug category init During the element splitting process, the debug category initialization has been dropped accidently. Part-of: 2021-03-17 14:26:54 +0100 Stéphane Cerveau * gst/audioconvert/gstaudioconvert.c: audioconvert: update doc for mix-matrix No need for specific cast in mix-matrix syntax. Part-of: 2021-03-16 17:53:54 +0100 Stéphane Cerveau * ext/ogg/gstoggdemux.c: ogg: element_init returns void no need to return boolean as it will be always TRUE. Part-of: 2021-03-16 12:59:14 +0100 Stéphane Cerveau * gst/playback/gstplaybackelement.c: * gst/playback/gstplaybackelements.h: * gst/playback/gstplaybin3.c: playback: element_init returns void no need to return boolean as it will be always TRUE. Part-of: 2021-03-16 12:56:53 +0100 Stéphane Cerveau * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: ogg: element_init returns void no need to return boolean as it will be always TRUE. Part-of: 2021-03-16 12:55:55 +0100 Stéphane Cerveau * ext/alsa/gstalsaelement.c: * ext/alsa/gstalsaelements.h: * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: element_init returns void no need to return boolean as it will be always TRUE. Part-of: 2021-02-11 11:15:10 +0100 Stéphane Cerveau * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: volume: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 11:14:31 +0100 Stéphane Cerveau * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 11:11:25 +0100 Stéphane Cerveau * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 10:59:42 +0100 Stéphane Cerveau * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 10:55:25 +0100 Stéphane Cerveau * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: videoconvert: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 10:49:48 +0100 Stéphane Cerveau * gst/overlaycomposition/gstoverlaycomposition.c: * gst/overlaycomposition/gstoverlaycomposition.h: overlaycomposition: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 10:43:14 +0100 Stéphane Cerveau * gst/encoding/gstencodebin.c: * gst/encoding/gstencodebin2.c: * gst/encoding/gstencodingelements.c: * gst/encoding/gstencodingelements.h: * gst/encoding/meson.build: * gst/encoding/plugin.c: encoding: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 09:58:59 +0100 Stéphane Cerveau * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 09:37:02 +0100 Stéphane Cerveau * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-11 09:34:13 +0100 Stéphane Cerveau * ext/cdparanoia/gstcdparanoiasrc.c: * ext/cdparanoia/gstcdparanoiasrc.h: cdparanoiasrc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 17:54:31 +0100 Stéphane Cerveau * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/plugin.c: audioconvert: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 18:47:41 +0100 Stéphane Cerveau * ext/pango/gstbasetextoverlay.c: * ext/pango/gstclockoverlay.c: * ext/pango/gstpangoelement.c: * ext/pango/gstpangoelements.h: * ext/pango/gstpangoplugin.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/pango/meson.build: pango: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 18:46:20 +0100 Stéphane Cerveau * ext/theora/gsttheora.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: * ext/theora/gsttheoraparse.c: * ext/theora/gsttheoraparse.h: theora: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 17:56:13 +0100 Stéphane Cerveau * ext/vorbis/gstivorbisdec.c: * ext/vorbis/gstvorbis.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbiselement.c: * ext/vorbis/gstvorbiselements.h: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * ext/vorbis/meson.build: vorbis: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 16:59:50 +0100 Stéphane Cerveau * ext/opus/gstopus.c: * ext/opus/gstopusdec.c: * ext/opus/gstopuselement.c: * ext/opus/gstopuselements.h: * ext/opus/gstopusenc.c: * ext/opus/meson.build: opus: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 15:42:32 +0100 Stéphane Cerveau * ext/gl/caopengllayersink.m: * ext/gl/gstglalpha.c: * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldownloadelement.c: * ext/gl/gstgleffects.c: * ext/gl/gstglelement.c: * ext/gl/gstglelements.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlaycompositorelement.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/gl/gstgluploadelement.c: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstopengl.c: * ext/gl/meson.build: gl: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 15:12:29 +0100 Stéphane Cerveau * gst/gio/gstgio.c: * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesink.h: * gst/gio/gstgiobasesrc.c: * gst/gio/gstgiobasesrc.h: * gst/gio/gstgioelement.c: * gst/gio/gstgioelements.h: * gst/gio/gstgiosink.c: * gst/gio/gstgiosink.h: * gst/gio/gstgiosrc.c: * gst/gio/gstgiosrc.h: * gst/gio/gstgiostreamsink.c: * gst/gio/gstgiostreamsink.h: * gst/gio/gstgiostreamsrc.c: * gst/gio/gstgiostreamsrc.h: * gst/gio/meson.build: gio: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 15:02:03 +0100 Stéphane Cerveau * gst/app/gstapp.c: * gst/app/gstappelements.h: * gst/app/gstappsink.c: * gst/app/gstappsrc.c: * gst/app/meson.build: app: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 12:59:32 +0100 Stéphane Cerveau * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixerelement.c: * gst/audiomixer/gstaudiomixerelements.h: * gst/audiomixer/gstaudiomixerplugin.c: * gst/audiomixer/gstliveadder.c: * gst/audiomixer/meson.build: audiomixer: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-11 12:42:03 +0100 Stéphane Cerveau * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstsocketsrc.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpelement.c: * gst/tcp/gsttcpelements.h: * gst/tcp/gsttcpplugin.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/tcp/meson.build: tcp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-01 15:14:00 +0100 Stéphane Cerveau * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawparseelements.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/plugin.c: rawparse: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-15 15:33:47 +0100 Jan Alexander Steffens (heftig) * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Consider converting for equal audio formats The converter might have a non-passthrough mix-matrix. The converter can determine whether it should pass through, so let it, then remove it if it's indeed a passthrough. FIXME: Not converting when we need to but the config is invalid (e.g. because the mix-matrix is not the right size) produces garbage. An invalid config should cause a GST_FLOW_NOT_NEGOTIATED. Part-of: 2021-03-16 12:27:31 +0100 Jan Alexander Steffens (heftig) * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Clean up _convert_pad_update_converter No functional change. Part-of: 2021-03-15 19:05:44 +0530 Nirbheek Chauhan * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Consistently translate GIOError to GstRTSPResult The users of this API need to be able to differentiate between EINTR and ERROR. For example, in rtspsrc, gst_rtsp_conninfo_connect() behaves differently when gst_rtsp_connection_connect_with_response_usec() returns an ERROR or EINTR. The former is an element error while the latter is simple a GST_ERROR since it was a user cancellation of the connection attempt. Due to this, rtspsrc was incorrectly emitting element errors while going to NULL, which would or would not reach the application in a racy manner. Part-of: 2021-03-03 01:08:25 +0000 Tim-Philipp Müller * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: fix frame size check and potential invalid reads Check the right variable when checking if there's enough data left to read the frame size. Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/876 Part-of: 2021-02-09 22:09:52 +0100 Jakub Adam * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpdummyhdrextimpl.c: rtpbasedepayload: handle caps change partway through buffer list While preparing a blist for pushing, some RTP header extension may request caps change for a specific buffer in the list. When this happens, depayloader should immediately push those buffers from the list that precede the currently processed buffer (for which the caps change was requested) and only then apply the new caps to the src pad. Part-of: 2021-02-04 17:08:04 +0100 Jakub Adam * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: allow updating depayloader src caps Add overridable method that updates depayloader's src caps based on the data from RTP header. Part-of: 2021-01-12 22:11:46 +0100 Jakub Adam * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtphdrext: allow the extension to inspect payloader's sink caps Some header extensions may need to read information from the payloader's sink caps. Introduce gst_rtp_header_extension_update_from_sinkcaps () that passes the caps to the extension, which can then use it to update its internal state. Part-of: 2021-02-09 05:16:34 -0800 Devarsh Thakkar * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: ext: alsa: Set buffer time after period time This because underlying driver may have constraint on buffer size to be dependent on period size, so period time needs to be set first. For e.g. Xilinx ASoC driver requires buffer size to be multiple of period size for it's DMA operation. alsa-utils also set period time first as seen in below commit : https://github.com/alsa-project/alsa-utils/commit/9b621eeac4d55c4e881f093be5b163ca07d01b63 Tested it on zcu106 board with HDMI based record and playback. Also tested on Intel PC using Logitech C920 Webcam mic and ALC887-VD Analog for playback. Part-of: 2021-03-08 10:45:32 +0100 Stéphane Cerveau * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybackplugin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: playback: remove useless ret test Use GST_ELEMENT_REGISTER_DEFINE_CUSTOM instead of GST_ELEMENT_REGISTER_DEFINE_WITH_CODE if a specific init needs to be tested before registering the element. Part-of: 2021-03-08 10:44:53 +0100 Stéphane Cerveau * ext/ogg/gstoggdemux.c: ogg: remove useless ret test Use GST_ELEMENT_REGISTER_DEFINE_CUSTOM instead of GST_ELEMENT_REGISTER_DEFINE_WITH_CODE if a specific init needs to be tested before registering the element. Part-of: 2021-03-08 10:44:42 +0100 Stéphane Cerveau * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: remove useless ret test Use GST_ELEMENT_REGISTER_DEFINE_CUSTOM instead of GST_ELEMENT_REGISTER_DEFINE_WITH_CODE if a specific init needs to be tested before registering the element. Part-of: 2021-03-10 14:26:22 +0100 Guillaume Desmottes * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix input_buffer ownership The way pad->priv->input_buffer reference was managed was pretty spurious: - it was overridden without unrefing it, which could potentially lead to leaks. - we were unreffing it while keeping the pointer around, which could potentially lead to use-after-free or double-free. As priv->input_buffer is actually no longer used outside of the aggregate() method, remove it from pad->priv to simplify the code and prevent the issues desribed above. Fix a single buffer leak when shutting down the pipeline as the buffer returned from gst_aggregator_pad_drop_buffer() was never unreffed. Part-of: 2021-03-10 16:22:14 +0100 Guillaume Desmottes * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix input buffer when converting This code path is meant to convert the current buffer to the new format on update. It was using priv->input_buffer as input which is either priv->buffer or a converted version of it. Use priv->buffer instead as priv->input_buffer may no longer be a valid reference. Part-of: 2021-01-22 22:24:24 +0100 david * sys/ximage/ximagesink.c: * sys/xvimage/xvcontext.c: Set _NET_WM_NAME property for xvimagesink and ximagesink Part-of: 2021-03-02 14:16:23 +0800 He Junyan * ext/gl/gstgldownloadelement.c: gl: download: Fix a caps memory leak in _try_export_dmabuf(). Part-of: 2021-03-02 13:07:04 +0800 He Junyan * ext/gl/gstgldownloadelement.c: gl: download: Fix a caps memory leak in prepare_output_buffer(). Part-of: 2021-03-01 23:33:29 +0800 He Junyan * ext/gl/gstgldownloadelement.c: gl: download: Fix the wrong transformed result from src direction in transform_caps(). The current manner in transform_caps() for src direction is not very correct. For example, when the src caps is: video/x-raw(memory:DMABuf); video/x-raw; video/x-raw(memory:GLMemory) this function returns: video/x-raw(memory:DMABuf); video/x-raw; video/x-raw(memory:GLMemory) as the sink caps. This is not correct, because DMABuf feature is not even in the sink pad's caps template. The correct answer should be: video/x-raw(memory:GLMemory); video/x-raw only. Part-of: 2021-03-01 12:23:25 +0100 Alexander Vandenbulcke * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: assign render_rect to window before window_resize If the `render_rect` for a dispmanx display is set after calling `window_resize` the resize defaults to the dp_width and dp_height to determine the location of the render rectangle instead of the correct dimensions that should be set on the window_egl. Part-of: 2021-02-18 16:16:33 +0100 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: fix drawing of transparent background When drawing the background multithreaded, y_start needs to be scaled to obtain the correct byte offset from which to start memsetting (yoffset). Fixes #871 Part-of: 2021-02-25 11:03:31 +0100 Kristofer Björkström * gst-libs/gst/rtsp/gstrtspconnection.c: gstrtspconnection: correct data_size when tunneled mode gst_rtsp_connection_send_messages_usec in tunneled mode does base64 encode messages. When calculating data_size 1 bytes is added, which results in ending the base64 with a NULL. Part-of: 2021-02-24 13:46:04 +0100 Robert Rosengren * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Use GST_BUFFER_PTS instead of deprecated GST_BUFFER_TIMESTAMP GST_BUFFER_PTS already used in audio code base (e.g. gstaudiodecoder), so migrate completely from deprecated GST_BUFFER_TIMESTAMP for better readability, as gstcompat.h defines GST_BUFFER_TIMESTAMP directly to PTS anyway. Part-of: 2021-02-24 19:51:40 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Log if the sample rate of one sinkpad is not accepted Otherwise this can silently cause not-negotiated errors without any direct hint about what went wrong. Part-of: 2021-02-23 14:40:02 +0100 Francisco Javier Velázquez-García * gst/videotestsrc/videotestsrc.c: videotestsrc.c: Correct left shift operator Use the left shift operator '<<' instead of the mistakenly typed less than operator '<'. Part-of: 2021-02-19 16:44:35 +0200 Vivia Nikolaidou * gst-libs/gst/video/video-converter.c: video-converter: Don't upsample/downsample/dither invalid lines This is a fallout from the conversion to support multiple threads. convert->upsample_p is never NULL now, it's always an allocated array of n_threads potentially-null pointers. Part-of: 2021-02-22 15:36:53 +0900 Jeongki Kim * gst/audioresample/gstaudioresample.c: audioresample: Respect buffer layout when drain Part-of: 2021-02-19 02:27:07 +1100 Jan Schmidt * gst/videoconvert/gstvideoconvert.c: videoconvert: Only prefer upstream chroma-site with same subsampling. If converting YUV formats with different chroma-subsampling, there's probably no good reason to prefer the upstream chroma-siting so just use the default for the output format. Part-of: 2021-02-16 01:24:15 +1100 Jan Schmidt * gst/videoconvert/gstvideoconvert.c: videoconvert: Implement more sophisticated colorimetry caps transfer Implement a more sophisticated transfer of colorimetry and chroma-site fields to output caps when fixating. Part-of: 2021-02-15 18:34:33 +1100 Jan Schmidt * gst/videoconvert/gstvideoconvert.c: videoconvert: Forward colorimetry and chroma-site from upstream. If downstream has expressed no preference for particular colorimetry and chroma-site configuration, transfer them from the input caps. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/614 Part-of: 2021-01-19 15:56:18 +0100 Stéphane Cerveau * gst/playback/gstdecodebin3.c: decodebin3: change stream selection message owner In order to select the streams on GST_MESSAGE_STREAM_COLLECTION, the app needs to send the select-streams event to the decodebin and not to the parsebin. The message should be always owned by the decodebin. Part-of: 2021-02-17 12:41:06 +0200 Vivia Nikolaidou * gst-libs/gst/audio/audio.c: * tests/check/libs/audio.c: libs: audio: Handle meta changes in gst_audio_buffer_truncate Set timestamp and duration to GST_CLOCK_TIME_NONE unless trim==0, because that function doesn't know the rate and therefore can't calculate them. Set offset and offset_end to appropriate values. Make it clear in the documentation that the caller is responsible for setting the timestamp and duration. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/869 Part-of: 2021-02-15 16:05:30 +0000 Tim-Philipp Müller * gst/playback/gsturidecodebin3.c: uridecodebin3: make caps property work The caps set on uridecodebin3 via the "caps" property were never passed to the internal decodebin3, so did absolutely nothing. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/837 Part-of: 2021-02-13 00:27:04 +0100 Alicia Boya García * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix racy critical when pool negotiation occurs during flush I found a rather reproducible race in a WebKit LayoutTest when a player was intantiated and a VP8/9 video was loaded, then torn down after getting the video dimensions from the caps. The crash occurs during the handling of the first frame by gstvpxdec. The following actions happen sequentially leading to a crash. (MT=Main Thread, ST=Streaming Thread) MT: Sets pipeline state to NULL, which deactivates vpxdec's srcpad, which in turn sets its FLUSHING flag. ST: gst_vpx_dec_handle_frame() -- which is still running -- calls gst_video_decoder_allocate_output_frame(); this in turn calls gst_video_decoder_negotiate_unlocked() which fails because the srcpad is FLUSHING. As a direct consequence of the negotiation failure, a pool is NOT set. gst_video_decoder_negotiate_unlocked() still assumes there is a pool, crashing in a critical in gst_buffer_pool_acquire_buffer() a couple statements later. This patch fixes the bug by returning != GST_FLOW_OK when the negotiation fails. If the srcpad is FLUSHING, GST_FLOW_FLUSHING is returned, otherwise GST_FLOW_ERROR is used. Part-of: 2021-02-15 17:22:47 +0100 Jan Alexander Steffens (heftig) * gst-libs/gst/audio/audio.c: libs: audio: Fix gst_audio_buffer_truncate meta handling In the non-interleaved case, it made `buffer` writable but then changed the meta of the non-writable buffer. Part-of: 2021-02-13 21:25:18 +0000 Alejandro González * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Fix gst_audio_encoder_get_audio_info return ownership GTK-Doc GTK-Doc specifies that, by default, the caller owns returned objects, so that the caller should free them when it is done. However, in the case of this function, the returned GstAudioInfo is owned by the decoder, so this default choice is incorrect. This creates double free problems when using GStreamer Rust bindings, because they are generated using the information contained in the docs. Fix this by correctly specifying that the caller does not own the returned object. Part-of: 2021-02-13 17:24:37 +0000 Alejandro González * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Fix gst_audio_decoder_get_audio_info return ownership GTK-Doc GTK-Doc specifies that, by default, the caller owns returned objects, so that the caller should free it when it is done. However, in the case of this function, the returned GstAudioInfo is owned by the decoder, so this default choice is incorrect. This creates double free problems when using GStreamer Rust bindings, because they are generated using the information contained in the docs. Fix this by correctly specifying that the caller does not own the returned object. Part-of: 2021-01-08 08:39:32 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Plug a leak of factory list Part-of: 2020-11-20 18:35:49 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst/encoding/gstencodebasebin.c: * tests/validate/encodebin/set-encoder-properties.validatetest: * tests/validate/meson.build: encodebin: Add APIs to set element properties on encoding profiles User often want to set encoder properties on encoding profiles, this introduces a way to easily 'preset' properties when defining the profile. This uses GstStructure to define those properties the same way it is done in `splitmux` for example as it makes simple to handle. This also defines a more complex structure type where we can map a set of properties to set depending on the muxer/encoder factory that has been picked by EncodeBin so it is quite flexible. Part-of: 2020-11-20 18:35:49 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Cleanup profile serialization documentation Part-of: 2021-01-08 11:51:36 +0100 Alexander Vandenbulcke * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: fix deadlock triggered by `set_render_rectangle` When the gstglimagesink is started with the option `glimagesink render-rectangle="<0,0,1920,1080>"`, the pipeline reaches a deadlock. The reason the deadlock occurs is that the `gst_gl_window_set_render_rectangle` takes locks on the window, in addition it calls `window_class->set_render_rectangle(...)` which executes the `_on_resize` function. Since the `_on_resize` function also takes locks on the window the deadlock is achieved. By scheduling the adjustment of the render rectangle through an async message for `gst_gl_window_dispmanx_set_render_rectangle`, the actual resize happens in another context and therefore doesn't suffers from the lock taken in `gst_gl_window_set_render_rectangle`. This solution follows the same approach as gl/wayland. The problem was introduced by b887db1. For the full discussion check #849. Part-of: 2021-02-04 18:51:27 +0200 Vivia Nikolaidou * tests/check/elements/videoconvert.c: * tests/check/elements/videoscale.c: videoconvert,videoscale: Add alternate-field negotiation tests Make sure buffers with alternate-field interlacing mode can be negotiated Part-of: 2021-02-04 18:22:15 +0200 Vivia Nikolaidou * gst/videoscale/gstvideoscale.c: videoscale: Support for alternate-field interlacing Accept the negotiation, video-converter.c is aware of the half-height already Part-of: 2021-02-02 20:33:27 +0200 Vivia Nikolaidou * gst-libs/gst/video/video-converter.c: * gst/videoconvert/gstvideoconvert.c: videoconvert: Support for alternate-field interlacing Treat the data just like normal data with half the height. Also treat it as progressive when converting from/to I420 because it requires different handling for chroma subsampling. Part-of: 2018-04-05 11:59:52 +0200 Havard Graff * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: audio: add GstAudioLevelMeta Will be used to implement RTP extension https://tools.ietf.org/html/rfc6464 Co-authored-by: Guillaume Desmottes Part-of: 2021-01-26 09:37:44 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: add auto-header-extension property Same property as the one I just added on rtpbasepayload. Part-of: 2021-01-26 09:37:44 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: add auto-header-extension property Using RTP header extensions is currently not convenient. Users have to handle signals from the RTP payloader and instantiate the extension element themselves, making it impossible to use with gst-launch. Adding a property allowing the payloader to automatically try creating extensions. This should help simple use cases and testing using gst-launch. Part-of: 2021-01-19 10:23:12 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Consider the number and types of atoms found in a row for suggesting a probability If there are 3 or more known atoms in a row, it's likely that this is actually MOV/MP4 even if we don't find any other known atoms. If 5 or more are found then this is most certainly MOV/MP4 and we can return. Also if a moov and mdat atom is found, this is definitely a MOV/MP4 file and can be used as such, independent of anything else following the mdat. Fixes typefinding of various MOV files that have no `ftyp` atom but otherwise a valid file structure followed by some garbage. Part-of: 2021-01-29 21:40:33 +0100 Marijn Suijten * gst-libs/gst/audio/gstaudiostreamalign.c: * gst-libs/gst/audio/gstaudiostreamalign.h: gstaudiostreamalign: Pass self as const pointer in getter functions It was noticed in [1] that `GstAudioStreamAlign` is a simple boxed type that is passed as const in the copy function, but not as such in the getters. These functions turn out to be the only users of `const = true` overrides in `gstreamer-rs`. Since there is no locking or other advanced caching/sharing going on (as happens with miniobjects) these functions can safely take self as const pointer. [1]: https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/683#note_783129 Part-of: 2020-04-27 20:52:34 +0200 Jakub Adam * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: video-hdr: Add API to check content light level equality Part-of: 2021-01-26 10:39:34 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: set attributes on newly requested extensions Users were supposed to configure the extension themselves but it was impossible to do so as they didn't have access to the caps. Fix #864 Part-of: 2021-01-26 10:39:34 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: * tests/check/libs/rtpdummyhdrextimpl.c: rtpbasepayload: set attributes on newly requested extensions Users were supposed to configure the extension themselves but it was impossible to do so as they didn't have access to the caps. Part-of: 2021-01-25 14:25:45 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: fix clear-extensions signal definition Typo as we were using the wrong enum. Part-of: 2021-01-26 14:05:48 +0100 Knobe, Daniel * tests/examples/overlay/meson.build: overlay/example: added qt core dependency for qt overlay example Part-of: 2021-01-25 14:25:45 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtpbasepayload.c: rtp: fix clear-extensions signal definition Typo as we were using the wrong enum. Part-of: 2021-01-22 10:10:05 +0100 Guillaume Desmottes * gst-libs/gst/rtp/gstrtphdrext.c: rtphdrext: fix typo in doc Part-of: 2021-01-22 14:02:29 +1100 Matthew Waters * tests/examples/gl/generic/recordgraphic/main.cpp: gl/examples: fix recordgraphic example Not ported to proper modern OpenGL though but that is the case for a lot of the GL examples. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/859 Part-of: 2021-01-04 23:25:10 +0100 Marijn Suijten * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gsteglimage_private.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-overlay-composition.c: * gst/compositor/compositor.c: * gst/videoscale/gstvideoscale.c: * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: * tests/check/libs/gstglmemory.c: gl,video: Make ptrs to VideoInfo and (GL)AllocationParams immutable These parameters are incorrectly regarded as mutable in G-IR making them "incompatible" with languages that are explicit about mutability like Rust. In order to clean up the code and expected API there, update the signatures here, right at the source (instead of overriding them in Gir.toml and hoping for the best). Part-of: 2021-01-14 10:09:40 +0100 Marijn Suijten * gst-libs/gst/audio/audio-buffer.c: audio/audio-buffer: @buffer in audio_buffer_map is out caller-allocates Part-of: 2021-01-13 11:07:47 +0100 Marijn Suijten * gst-libs/gst/video/video-frame.c: video/video-frame: @frame in video_frame_map is out caller-allocates Part-of: 2021-01-12 10:34:41 +0100 Marijn Suijten * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/video/video-info.c: audio,video: Add `out caller-allocates` to init and from_caps Part-of: 2021-01-11 12:25:33 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: videosink: Add new GstVideoSink::set_info() virtual method Part-of: 2020-12-26 14:16:34 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideosink.c: videosink: Implement more complete BaseSink::get_times() based on the framerate This will only make use of the framerate if the subclass is chaining up BaseSink::set_caps(). Otherwise it will have the same behaviour as the basesink default. Doing so is useful if video buffers don't contain a duration to calculate a default duration, and various video sinks already implement a custom version of this. Part-of: 2021-01-12 10:36:34 +0100 Marijn Suijten * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: video: Convert info_to_caps to take self as const ptr This requires a slight modification to the function itself because it was overwriting a member locally. However, now this side-effect cannot be observed outside the function anymore. Part-of: 2021-01-06 11:16:18 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add get_type() implementations for all of our memory types Otherwise, various bindings can't really know the type of an object as required. Part-of: 2021-01-12 22:08:14 +0100 Jakub Adam * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: fix header extension length calculation Since ternary operator has the lowest precedence in the expressions at hand, wordlen would always incorrectly yield 0 or 1. Part-of: 2021-01-07 16:27:25 -0300 Thibault Saunier * gst/gio/gstgiosrc.c: giosrc: Ensure that an error is posted when underlying file is deleted Part-of: 2020-07-14 20:44:18 +0200 Jakub Adam * gst-libs/gst/video/video-blend.c: video-blend: fix blending 8-bit and 16-bit frames together Replace hardcoded 255s with the correct max value for the given color depth. Use 64-bit integer in calculations where overflow may occur. Part-of: 2020-12-07 11:23:49 -0300 Thibault Saunier * gst/encoding/gstencodebasebin.c: encodebasebin: Ensure that parsers are compatible with selected encoders See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/845 Part-of: 2021-01-05 20:18:24 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: gl: document some GL caps specifics Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/854 Part-of: 2021-01-04 13:40:20 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: tagdemux: resize and trim buffer in place to fix interaction with oggdemux Elements operating in pull mode may optionally pass a buffer to pull_range that should be filled with the data. The only element that does that at the moment is oggdemux operating in pull mode. tagdemux currently creates a sub-buffer whenever a buffer pulled from upstream (filesrc, usually) needs to be trimmed. This creates a new buffer, however, so disregards any passed-in buffer from a downstream oggdemux. This would cause assertion failures and playback problems for ogg files that contain ID3 tags at the end. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/848 Part-of: 2020-12-31 17:25:40 +0100 Mathieu Duponchelle * gst-libs/gst/app/gstappsrc.c: appsrc: fix signal documentation Part-of: 2020-12-30 14:56:54 +0100 Edward Hervey * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Pop out old buffers on timeout This situation happens in the situation where an input stream has a framerate exceeding the timeout latency (Ex: 1fps with a latency of 500ms) and an input stream greater than output framerate (ex: 60fps in, 30 fps out). The problem that would happen is that we would timeout, but then buffers from the fast input stream would only be popped out one by one.... until a buffer reaches the low-framerate input stream at which point they would quickly be popped out/used. The resulting output would be "slow ... fast ... slow ... fast" of that input fast stream. In order to avoid this situation, whenever we detect a late buffer, check if there's a next one and re-check with that one. Part-of: 2020-12-29 23:44:42 +0100 Mathieu Duponchelle * gst/compositor/blend.c: compositor/blend.c: fix MT checker pattern When filling the checker pattern from multiple threads, y_start needs to be taken into account to determine the shade of the current pixel. Example pipeline: gst-launch-1.0 videotestsrc ! video/x-raw, width=1920, height=1080, format=I420 ! \ queue ! compositor sink_0::xpos=200 ! video/x-raw, format=I420 ! videoconvert ! \ xvimagesink Part-of: 2020-12-29 23:42:08 +0100 Mathieu Duponchelle * gst/compositor/blend.c: compositor/blend.c: fix MT fill_checker for YUY2 The initial byte offset should be calculated from the stride, not from the dest_add variable Example pipeline: gst-launch-1.0 videotestsrc ! video/x-raw, width=1920, height=1080, format=YUY2 ! \ queue ! compositor sink_0::xpos=200 ! video/x-raw, format=YUY2 ! xvimagesink Part-of: 2020-12-29 20:24:51 +0100 Mathieu Duponchelle * gst/compositor/blend.c: compositor/blend: fix blending of subsampled components The correct way to determine the byte offset at a certain yoffset in a subsampled component is to shift the yoffset by the component's hsub This fixes out-of-bounds memory accesses and visible artefacts, example pipeline with the samples from #802: gst-launch-1.0 compositor name=vmixer sink_1::xpos=1910 sink_1::ypos=1080 ! \ videoconvert ! videorate ! xvimagesink \ filesrc location=VID_20200723_203606.mp4 ! decodebin name=demux1 ! \ queue ! videoflip method=vertical-flip ! vmixer. \ filesrc location=bridgeoverstubbledwater.mp4 ! decodebin name=demux2 ! \ queue ! vmixer. Part-of: 2020-12-24 11:44:27 +0200 Sebastian Dröge * gst/playback/gstdecodebin3.c: decodebin3: When reconfiguring a slot make sure that the ghostpad is unlinked This was only taken care of previously if there was a decoder before. However if previously a decoder was not needed then the ghostpad would've been linked directly to the slot's srcpad. Reconfiguring the slot requires this to be undone so that linking can happen normally. Part-of: 2020-12-20 22:35:45 +0900 Seungha Yang * tests/examples/overlay/meson.build: * tests/examples/overlay/win32-videooverlay-playbin.c: examples: overlay: Add an example for Win32 window handle with playbin Demonstrate video overlay handling on Windows when playbin is in use Part-of: 2020-12-15 22:05:11 +0100 Stéphane Cerveau * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: hdr: update doc update GST_VIDEO_HDR10_PLUS_MAX_ROWS_MD_APL and GST_VIDEO_HDR10_PLUS_MAX_COLS_MD_APL Part-of: 2020-07-03 12:06:14 +0200 Stéphane Cerveau * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Forward hdr-format info downstream By default the hdr-format detected by a parser should be passed to the downstream element. Part-of: 2020-05-08 11:06:42 +0200 Stéphane Cerveau * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: video-hdr: add hdr formats Provide enum and helper method to set the hdr format name in caps by example. Part-of: 2020-10-19 15:36:58 +0200 Stéphane Cerveau * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: video-hdr: introduce HDR10+ parser Video can now parse a HDR10+ data structure coming from a SEI message. Part-of: 2020-01-27 10:12:05 +0100 Stéphane Cerveau * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: video-hdr: add HDR10+ structure Provides structure and GstVideoMeta Part-of: 2020-12-15 15:07:31 +0200 Sebastian Dröge * gst/audiorate/gstaudiorate.c: audiorate: Make buffer writable before changing its metadata Part-of: 2020-12-14 07:42:55 +0100 Fabrice Fontaine * gst-libs/gst/video/gstvideoaggregator.c: gst-libs/gst/video/gstvideoaggregator.c: fix build with gcc 4.8 Fix the following build failure with gcc 4.8 which has been added with https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/commit/d268c193ad39fb970351ed62898be806ebd0a71e: ../gst-libs/gst/video/gstvideoaggregator.c: In function 'gst_video_aggregator_init': ../gst-libs/gst/video/gstvideoaggregator.c:2762:3: error: 'for' loop initial declarations are only allowed in C99 mode for (gint i = 0; i < gst_caps_get_size (src_template); i++) { ^ Signed-off-by: Fabrice Fontaine Part-of: 2020-12-10 19:06:00 +0200 Jordan Petridis * ext/libvisual/plugin.c: libvisual: workaround clang warning libvisual api expects a priv data pointer to be passed, though we know its going to be `GstDebugLevel`. ``` ../subprojects/gst-plugins-base/ext/libvisual/plugin.c:33:39: error: cast to smaller integer type 'GstDebugLevel' from 'void *' [-Werror,-Wvoid-pointer-to-enum-cast] GST_CAT_LEVEL_LOG (libvisual_debug, (GstDebugLevel) (priv), NULL, "%s - %s", ``` Part-of: 2020-12-11 10:13:59 +0100 Edward Hervey * gst/playback/gstdecodebin3-parse.c: decodebin3: Release selection lock when pushing EOS We can't keep the lock otherwise this would lock other actions. In order to keep it safe, we grab a list of peer pads to send EOS to with the lock taken, then send to the peer pads with the lock released. Also make sure the selection lock is taken for another call to this function Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/847 Part-of: 2020-12-11 11:40:22 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: * gst/typefind/gsttypefindfunctionsplugin.c: * gst/typefind/gsttypefindfunctionsplugin.h: * gst/typefind/gsttypefindfunctionsstartwith.c: typefind: Fix debug category usage Only register it in one place and use it everywhere from the header. Also make sure it doesn't clash with the debug category from core. Part-of: 2020-12-04 16:55:53 +0100 Stéphane Cerveau * gst/typefind/gsttypefindfunctions.c: * gst/typefind/gsttypefindfunctionsdata.c: * gst/typefind/gsttypefindfunctionsdata.h: * gst/typefind/gsttypefindfunctionsplugin.c: * gst/typefind/gsttypefindfunctionsplugin.h: * gst/typefind/gsttypefindfunctionsriff.c: * gst/typefind/gsttypefindfunctionsstartwith.c: * gst/typefind/meson.build: typefindfunctions: allow per features registration Split plugin into features including typefind functions which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-01 13:34:15 +0100 Stéphane Cerveau * gst/pbtypes/gstpbtypes.c: * gst/pbtypes/gstpbtypes.h: pbtypes: allow per features registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-11-30 11:00:30 +0100 Stéphane Cerveau * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * gst/subparse/gstsubparseelement.c: * gst/subparse/gstsubparseelements.h: * gst/subparse/gstsubparseplugin.c: * gst/subparse/meson.build: subparse: allow per feature registration Split plugin into features including elements and device providers which can be indiviually registered during a static build. More details here: i https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-08-11 11:47:02 -0400 Julian Bouzas * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggelements.h: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstoggplugin.c: * ext/ogg/gstogmparse.c: * ext/ogg/meson.build: ogg: allow per feature registration Split plugin into features including elements and device providers which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-10-22 11:07:26 +0200 Stéphane Cerveau * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybackelement.c: * gst/playback/gstplaybackelements.h: * gst/playback/gstplaybackplugin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: * gst/playback/gsturidecodebin.c: * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: * gst/playback/meson.build: playback: allow per feature registration Split plugin into features including elements and device providers which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-10-16 14:35:04 +0200 Stéphane Cerveau * ext/alsa/gstalsaelement.c: * ext/alsa/gstalsaelements.h: * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/alsa/meson.build: alsa: allow per feature registration Split plugin into features including elements and device providers which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-12-09 10:40:40 -0300 Thibault Saunier * tests/validate/giosrc/read-growing-file.validatetest: tests: Fix races in the read-growing-file test First: the buffer is pushed on the encoding filesink only *after* the checkpoints, leading to wrong ordering in expectations. The second one is about EOS being posted on the bus *before* the stop action is executed, leading to the action never being executed. That action was plain useless as the default behavior of validate scenario is to internally create a "stop" action on EOS (unless disabled by user). Part-of: 2020-11-19 19:17:18 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/gio/gstgio.h: * gst/gio/gstgiobasesrc.c: * gst/gio/gstgiobasesrc.h: * gst/gio/gstgiosrc.c: * gst/gio/gstgiosrc.h: * tests/validate/giosrc/read-growing-file.validatetest: * tests/validate/giosrc/read-growing-file/flow-expectations/log-filesink-sink-expected: * tests/validate/giosrc/read-growing-file/flow-expectations/log-growing-file-sink-sink-expected: * tests/validate/meson.build: giosrc: Add support for growing source files Add a way for applications to specify that the underlying file is growing which implies that the source won't EOS when reaching the end of the file but instead start monitoring it and start reading it again whenever a change is detected. Also add a validate test to check the behavior Part-of: 2020-11-26 04:04:48 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/video-info.c: video: Make use of gst_video_chroma_site_{from,to}_string() API Replace deprecated gst_video_chroma_{from,to}_string() to newly added gst_video_chroma_site_{from,to}_string() Part-of: 2020-11-10 18:01:12 +0900 Seungha Yang * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-chroma.h: * tests/check/libs/video.c: video-chroma: Add support for any combination of chroma-site flags We've been allowing only a few known chroma-site values such as jpeg (not co-sited), mpeg2 (horizontally co-sited) and dv (co-sited on alternate lines). That's insufficient for representing all possible chroma-site values. By this commit, we can represent any combination of chroma-site flags. But, an exception here is that any combination with GST_VIDEO_CHROMA_SITE_NONE will be considered as invalid value. For any combination of chroma-site flags, gst_video_chroma_to_string() method is deprecated in order to return newly allocated string via a new gst_video_chroma_site_to_string() method. And for consistent API naming, gst_video_chroma_from_string() is also deprecated. Newly written code should use gst_video_chroma_site_from_string() instead. Part-of: 2020-11-30 21:38:08 +0100 Jakub Adam * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.h: rtpbasepayload: pass optional caps fields in a GstStructure For more flexibility, allow to pass the extra output caps fields as a GstStructure. Part-of: 2019-12-05 20:08:36 +0700 Ratchanan Srirattanamet * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: always acquire if not acquired in _setcaps audiobasesrc's setcaps contains an optimization that makes it not re- acquire the ringbuffer if the caps have not changed. However, it doesn't check if it has successfully acquired it or not. It's possible to have the caps set but not having ringbuffer acquired if the previous attempt to acquire fails. This commit replaces the caps existence check with whether the ringbuffer is acquired or not. There's no need to check for caps existence because 1.) it's unlikely to be NULL if the ringbuffer is acquired, and 2.) _setcaps shouldn't be called with a NULL caps. This should also let the element retry on acquiring ringbuffer after an error by re-setting the element's state to READY and back to PLAYING. Whether this behavior is correct is up for debate. Part-of: 2020-11-06 14:05:39 +0800 He Junyan * ext/gl/gstglimagesink.c: glimagesink: Avoid assert in query. The sink_query just uses context, other_context and display to query info. But all these objects can be changed or distroyed in state_change() func and other places. This patch is not very perfect. The condition race still exists in other places in this element. All the functions directly access these objects without protection. Most of them are executed when the data is pushing and draw context/window have already been established, so they should not have problems. But the sink_query and propose_allocation functions are the query -like functions and executed in query context, which can be called in any state of the element. So it can cause some crash issues because of destroyed context object. Part-of: 2020-11-06 16:18:14 +0800 He Junyan * ext/gl/gstglcolorconvertelement.c: glcolorconver: Return empty caps in transform_caps if fails. We should not return a NULL in transform_caps() function. The NULL will generate a assert of: "transform_caps returned caps which are not a real subset of the filter caps" in transform base class. Part-of: 2020-11-06 15:36:01 +0800 He Junyan * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: Need to check the display before lock it. In find_gl_context_unlocked(), the display of filter may be NULL and can cause crash if we directly access and lock it. Part-of: 2020-11-06 15:36:21 +0800 He Junyan * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: Delete the un-paired unlock in change_state(). Part-of: 2020-12-03 06:50:07 -0500 Arun Raghavan * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Fix incorrect GST_LOG_OBJECT usage GstBuffer is not a GstObject, so this causes a warning to be emitted. Part-of: 2020-07-10 15:33:46 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtp/basepayload: implement support for rtp header extensions New signals are added for managing the internal list of rtp header extension implementations read by a specific depayloader instance. If the 'extmap-$NUM' field is present in the src caps, then an extension implementation will be requested but is not required to be able to negotiate correctly. An extension will be requested using the 'request-extension' signal if none could be found internally. Part-of: 2020-07-10 15:30:57 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtp/basedepayload: implement support for rtp header extensions New signals are added for managing the internal list of rtp header extension implementations read by a specific depayloader instance. If the 'extmap-$NUM' field is present in the sink caps, then an extension implementation will be requested but is not requited to be able to negotiate correctly. An extension will be requested using the 'request-extension' signal if none could be found internally. Part-of: 2020-07-10 15:14:09 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: * tests/check/libs/rtpdummyhdrextimpl.c: * tests/check/libs/rtphdrext.c: * tests/check/meson.build: rtp: add base object for reading/writing rtp header extensions (RFC5285) Facilitates the creation of rtp header extension implementations that can be reused across applications. Implementations are registered into the GStreamer registry as elements (idea from GstRTSPExtension) and can be retrieved by URI or filtered manually. RTP header extensions must have the classification "Network/Extension/RTPHeader" to be considered as a RTP Header extension. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/777 Part-of: 2020-11-26 14:52:26 +0200 Mart Raudsepp * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Fix automatic resize behaviour https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/681 added a layoutSubViews, which never gets called, because it should have been called layoutSubviews (non-capital "v"). However after fixing that, it still doesn't work correctly, because window_width/height values are immediately updated and then draw_cb will never trigger the resize path, because the values are already up to date. Update the values inside the resize path again instead, so the check for entering the resize path is logically always correct. This makes the layoutSubviews unnecessary, as it only updated the internal size values prematurely, so it is deleted instead of method naming fixed. These changes were originally done to avoid accessing UIKit objects on the main thread, but no additional accesses are added here, only internal private variable assignments under the same draw_lock, so there should be no threading issues reintroduced. Part-of: 2020-11-26 14:45:05 +0200 Mart Raudsepp * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Fix resize condition check in draw_cb to not get called unnecessarily A CGSize contains CGFloat values (a typedef to double or float), which means that the values aren't equal, despite it being equal after they are cast to int by assigning them to window_height/width private members. This leads to excessive gst_gl_window_resize calls on each frame, at least if the CGFloat value has a .5 decimal value, e.g. 103.5. Fix it by storing them as CGFloat instead of gint. Part-of: 2020-11-20 16:51:09 +1100 Matthew Waters * gst-libs/gst/video/video-converter.c: video/converter: increase the number of cache lines for resampling The exising hardcoded max default does not account for the possible -1 offset when retrieving lines for resampling. As a result, when another chain has the same number of cache lines (4), the resample operation would be attempting to generate 5 lines with a cache size of 4 and would overwrite the first cache line. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/821 Part-of: 2020-12-01 13:13:40 +0200 Sebastian Dröge * gst/compositor/compositor.c: compositor: Don't crash in prepare_frame() if the pad was just removed Part-of: 2020-12-01 09:31:48 +0100 Guillaume Desmottes * gst-libs/gst/video/gstvideometa.c: videometa: gir annotate the size of plane array in new API Fix #838 Part-of: 2020-11-19 19:06:12 -0300 Thibault Saunier * gst/encoding/gstencodebasebin.c: encodebin: Enhance algorithm to check if profiles can be plugged to muxer In particular muxing sinks have specific set of sinkpads and we need to handle that. 2020-11-19 19:03:29 -0300 Thibault Saunier * gst/encoding/gstencodebasebin.c: encodebin: Ignore element classification when a muxer name specified Instead of going through the list of known muxers go ahead and instantiate the muxer specified as 'preset name' as this specifies the exact element factory name to use. 2020-11-13 16:32:45 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Add support for muxing sinks usage in encoding profiles 2020-11-13 16:32:45 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/encoding/gstencodebasebin.c: * gst/encoding/gstencodebasebin.h: * gst/encoding/gstencodebin2.c: * gst/encoding/gstencodebin2.h: * gst/encoding/meson.build: * gst/encoding/plugin.c: encoding: Implement encodebin2 with an ON_REQUEST src pad Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/304 2020-11-13 13:06:32 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/encoding/gstencodebasebin.c: * gst/encoding/gstencodebasebin.h: * gst/encoding/gstencodebin.c: * gst/encoding/gstencodebin.h: * gst/encoding/meson.build: * gst/encoding/plugin.c: encodebin: Split implementation into a base class Create EncodeBaseBin as a base class for the existing encodebin to allow other implementations. Co-authored with Jan Schmidt 2020-11-28 04:14:14 +0900 Seungha Yang * gst-libs/gst/gl/wgl/gstglcontext_wgl.c: glcontext: wgl: Implement check_feature vfunc There are several WGL specific extenstions such as WGL_NV_DX_interop. Currently we have no WGL specific extension support and this commit is also only for debugging purpose. Part-of: 2020-11-27 11:41:36 +0530 Sanchayan Maity * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Move max_errors out of GstAudioDecoderContext Currently max-errors gets set during init to default or via property. However, if a decoder element calls gst_audio_decoder_reset with 'full' argument set to TRUE, it would result in all the fields of context being zeroed with memset. This effectively results in max-errors getting a value of 0 overriding the default or user requested value set during init. This would result in calls to GST_AUDIO_DECODER_ERROR which track error counts and allow max-errors, to be ineffective. To fix this move max-errors out of GstAudioDecoderContext, as changes to context should not affect this. The error_count is anyways also in GstAudioDecoderPrivate and not in context. Part-of: 2020-11-26 17:37:01 +0100 Stéphane Cerveau * ext/opus/meson.build: opus: disable docs option in meson fallback As the docs are not necessary, no need to keep it enabled. Part-of: 2020-11-25 20:16:53 +0100 Marijn Suijten * gst-libs/gst/video/video-color.c: video: Provide "deprecated in" version for gst_video_color_transfer fns As requested in [1]. [1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/940#note_706437 Fixes: d0f36c7e1 ("video: Rename video_color_transfer to video_transfer_function") 2020-11-24 20:54:49 +0100 Marijn Suijten * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * tests/check/libs/audio.c: audio: Move fill_silence into audio_format_info With the function named gst_audio_format_fill_silence it would get associated to the GstAudioFormat type in .gir which is incorrect and confusing. See [1] for the discussion sparking this change. https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/630#note_694795 Part-of: 2020-11-25 23:54:08 +1100 Jan Schmidt * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: xvimagesink: Add support for the XV_COLORSPACE attribute. The XV_COLORSPACE attribute exists on some Xv adapters, with the same semantics as the XV_ITURBT_709 attribute that was already supported. A value of 0 is bt601, and 1 is for bt709 colorspace. Fixes color shifting issues displaying bt709 content on some Xv adapters. Part-of: 2020-11-13 17:45:12 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Take into account decoder latency for interleave size Some decoders might introduce quite large latencies, which would result in multiqueue draining out on some streams. In order to avoid that, check the latency of decoders and adjust the minimum interleave time of multiqueue accordingly. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/800 Part-of: 2020-11-19 14:35:32 +0100 Edward Hervey * gst/playback/gstdecodebin3-parse.c: decodebin3: Don't leak filter caps Introduced by previous commit See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/933 Part-of: 2020-11-14 09:43:59 +0100 Edward Hervey * gst/playback/gstdecodebin3-parse.c: decodebin3: Properly handle caps query with no filter There's no guarantee that upstream elements will do queries with specified filter caps. If that's the case, just return GST_CAPS_ANY Part-of: 2020-11-07 17:30:19 +0000 Tim-Philipp Müller * ext/opus/meson.build: opus: add subproject fallback Part-of: 2020-11-07 02:59:09 +0100 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: expose zero-size-is-unscaled property When that property is left to its default, the width and height property considers frames from input pads with width or height <= 0 should be left unscaled in that dimension. Setting this property to FALSE changes that behaviour to < 0, as when animating these properties, 0 should be a valid end value (eg. shrinking an input stream until it disappears). The default value of the width and height properties is set to -1, so that the default behaviour stays consistent whether that new property is set or not. Part-of: 2020-10-28 00:01:16 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * tests/check/libs/video.c: video-converter: switch to using a task pool .. .. and make use of that API in videoaggregator. When setting certain properties, such as cropping or the scaled size of pads, a new converter is created by videoaggregator. Before that patch, this implied spawning new threads, potentially at each aggregate cycle when interpolating pad properties. This is obviously wasteful, and re-using a task pool removes that overhead. Part-of: 2020-11-10 23:26:39 +0100 David Keijser * gst-libs/gst/pbutils/encoding-profile.c: Fix segfault when using invalid encoding profile Trying to use gst_encoding_profile_get_file_extension on a GstEncodingProfile with a cap containing a typo would result in strcmp being called with NULL. Instead use g_strcmp0 that handles this case. Part-of: 2020-11-03 17:00:53 +0100 Jan Alexander Steffens (heftig) * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix locking around vagg->info Take `GST_OBJECT_LOCK` when writing `vagg->info`, so that reading in subclasses is protected against races, as documented in the struct. /*< public >*/ /* read-only, with OBJECT_LOCK */ GstVideoInfo info; `gst_video_aggregator_default_negotiated_src_caps` should take the `GST_VIDEO_AGGREGATOR_LOCK` to avoid racing with `gst_video_aggregator_reset` called by `gst_video_aggregator_release_pad` of the last sinkpad. Otherwise it can happen that `latency = gst_util_uint64_scale (...` gets called with a zero framerate. There doesn't seem to be any reason not to use the local `info` instead of `vagg->info`, so do that. Part-of: 2020-10-26 08:59:34 +0100 Guillaume Desmottes * gst-libs/gst/video/gstvideodecoder.h: video: fix doc warning @mode has been renamed to gst_video_decoder_set_interlaced_output_state() but not in the header file, raising a doc warning. Part-of: 2020-11-05 04:43:47 +1100 Jan Schmidt * gst-libs/gst/video/video-converter.c: video-converter: Skip input lines where possible. There is a case where there are no lines in the temp cache, and it's possible to skip straight to the request line and not generate intermediate ones. This is really only beneficial when doing nearest-neighbour downscaling, as other methods generally require all input lines sequentially to generate the output. In that case, this change has no effect and all lines are generated and cached as before. As a side effect however, this fixes corruption when downscaling using nearest-neighbour, as interactions with the pass_alloc flag and reuse of temporary lines causes the unecessarily-generated cache lines to overwrite the final output. Part-of: 2020-11-04 02:11:30 +1100 Jan Schmidt * tests/examples/compositor/meson.build: * tests/examples/compositor/mosaic.c: examples: Add a compositor mosaic example. Add an example of configuring compositor to display 2 videos side-by-side in a mosaic, and additionally configure some video-converter properties to demonstrate how that works.. Part-of: 2020-11-04 23:05:27 +0800 He Junyan * ext/gl/gstgluploadelement.c: gluploadelement: Avoid race condition in propose_allocation(). The inside upload and context may have race condition in the function of propose_allocation(). They may be destroyed while this function is stilling using it. Part-of: 2020-11-04 17:02:13 +0800 He Junyan * ext/gl/gstgluploadelement.c: gluploadelement: Avoid race condition of base class' context. The base class' context may change, we should use the common API with lock to access it, rather than the just directly access the struct field. Part-of: 2020-11-04 18:42:11 +0530 Nirbheek Chauhan * meson.build: meson: Enable some MSVC warnings for parity with GCC/Clang This makes it easier to do development with MSVC by making it warn on common issues that GCC/Clang error out for in our CI configuration. Continuation from https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223 Part-of: 2020-11-03 20:19:16 +0800 He Junyan * ext/gl/gstgluploadelement.c: gluploadelement: Avoid race condition of inside upload creation. The operations for the inside GstGLUploadElement->upload have race condition. The _transform_caps() will creates this object if it does not exist, while the _stop() and change_state() can destroy this object. The _transform_caps() is called by the gst_base_transform_query(), so it does not hold the stream lock. It may use the upload while the _stop() and change_state() has already destroy that object, and then crash. Fix: #645 Part-of: 2020-11-03 16:40:38 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/sync.h: gl: Fix prototype of glGetSynciv() Part-of: 2020-10-30 13:56:16 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: * tests/check/elements/compositor.c: * tests/validate/compositor/renogotiate_failing_unsupported_src_format.validatetest: * tests/validate/meson.build: videoaggregator: Guarantee that the output format is supported In the case `videoaggregator` is set as allowing format conversions, and as we convert only on the sinkpads, we should ensure that the chosen format is usable by the subclass. This in turns implies that the format is usable on the srcpad. When doing conversion *any* format can be used on the sinkpads, and this is the only way that we can avoid race conditions during renegotiations so we can not change that fact, we just need to ensure that the chosen intermediary format is usable, which was not actually ensured before that patch. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/834 Part-of: 2020-10-31 03:14:20 +0900 Seungha Yang * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't assume GstVideoChromaSite and GstVideoColorimetry Even if given GstVideoChromaSite and/or GstVideoColorimetry has unknown value(s), assumption for an unknown value should be done by subclass or downstream element, not a role of video decoder. And subclass might want to output unknown value as is. Part-of: 2020-10-31 03:16:00 +0900 Seungha Yang * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Remove trailing whitespace Part-of: 2020-10-30 13:52:29 +0100 Jan Alexander Steffens (heftig) * gst/tcp/gsttcpserversink.c: tcpserversink: Don't assume g_socket_get_remote_address succeeds When the client disconnects immediately after connecting, the remote address is no longer available. Part-of: 2020-10-29 16:38:44 -0300 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: video-aggregator: Fix renegotiation when using convert pads Since 23189c60f4cff998c7880e1768cee2f6d1b719d0 we started using the useless result of `modified_caps` which, was never used since it was introduced 7 years ago (in videomixer2). The intersection is useless and we should just avoid doing it at all (which was always the case before) as it can end up failing renegotiation for bad reasons. Part-of: 2020-05-27 23:20:25 +0900 Seungha Yang * tools/gst-play.c: gst-play: Add support for audio mute control Assign 'm' keyboard input to control audio mute state Part-of: 2020-10-28 15:51:27 -0400 Nicolas Dufresne * tests/check/libs/allocators.c: tests: allocator: Fix FDMemory portability issue This fixes few issues in the test but mainly some portability issue reported on Ubutun. The test now uses a randomly name tempory file located into system default tempory location and uses glib wrappers when available. Fixes !895 Part-of: 2020-10-24 23:45:19 +0530 Dinesh Manajipet * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorbalance.h: gl: optimize glcolorbalance by precomputing shader math Precompute the rgb -> yuv conversion and color balance adjustment math so that the shader does minimal work per pixel. Merging these 15+ steps into 3 steps let us jump from choppy 360p video to smooth 720p video on our underpowered embedded system. If we can remove the clamp() step inside the shader, or apply it after rgba conversion, there are more performance benefits to reap. But I am not sure what the side effects will be in that case. Part-of: 2020-10-28 23:26:27 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: gl/build: use the brcm GL libraries on the rpi Upstream RPi has moved to a completely separate GL library names now due to conflicts. See https://github.com/RPi-Distro/repo/issues/134 Part-of: 2020-10-27 14:12:42 +0100 Tobias Ronge * gst-libs/gst/allocators/gstfdmemory.c: * tests/check/libs/allocators.c: fdmemory: Allow for change of protection mode After a memory has been unmapped, protection mode can now be changed when mapping it again. See https://bugzilla.gnome.org/show_bug.cgi?id=789952. Part-of: 2020-10-28 01:19:37 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: document and fix locking in convert pad Part-of: 2020-10-28 13:22:09 +0000 Tim-Philipp Müller * ext/gl/gstgldeinterlace.c: gldeinterlace: fix doc blurb Part-of: 2018-04-07 20:52:12 -0400 Xavier Claessens * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: * pkgconfig/gstreamer-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-allocators.pc.in: * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-app.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-fft.pc.in: * pkgconfig/gstreamer-gl-egl-uninstalled.pc.in: * pkgconfig/gstreamer-gl-egl.pc.in: * pkgconfig/gstreamer-gl-prototypes-uninstalled.pc.in: * pkgconfig/gstreamer-gl-prototypes.pc.in: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-gl-wayland.pc.in: * pkgconfig/gstreamer-gl-x11-uninstalled.pc.in: * pkgconfig/gstreamer-gl-x11.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-riff.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtp.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-tag.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: * pkgconfig/gstreamer-video.pc.in: * pkgconfig/meson.build: Meson: Use pkg-config generator 2020-10-22 19:16:42 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Fix crash caused by use after free OutputSlotInfo doesn't hold ref of queue, so gst_bin_remove() will free the queue memory. Part-of: 2020-10-21 14:55:40 -0500 Zebediah Figura * ext/theora/gsttheoradec.c: theoradec: Set telemetry options only if they are nonzero Setting telemetry options, even to zero, causes libtheora to enable an expensive code path. For large enough videos (e.g. 1920x1080) this can increase the time to decode each frame by 30-40 ms, which can be enough to cause noticeable stutter. Part-of: 2020-10-21 11:42:54 +0200 Michael Tretter * gst-libs/gst/gl/gstglslstage.c: glslstage: delete shader on finalize of stage GLSLstage creates the glShader using glCreateShader, but never calls glDeleteShader if the glShader is not used anymore. This forces the GL library to keep the compiled shader around, because it might be used in the future. Therefore, the glShader is leaked whenever a GLSLStage is destroyed. Fix the leak by deleting the glShader when finishing the GLSLStage. Part-of: 2020-10-20 12:44:21 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: audio/videodecoder: Initialize max_errors in instance_init() Part-of: 2020-10-20 11:51:08 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: audio/videodecoder: Don't reset max-errors in reset() Otherwise setting the property on the elements has no effect at all because it's immediately reset during startup. Part-of: 2020-10-13 03:34:07 +0900 Seungha Yang * tests/examples/decodebin_next/meson.build: * tests/examples/decodebin_next/uridecodebin3-select-all.c: examples: Add an uridecodebin3 example Demonstrate a way to select multiple streams Part-of: 2020-10-19 20:03:40 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: * gst/playback/gsturidecodebin3.c: decodebin3: Store stream-start event on output pad before exposing it It's required for users to be able to figure out associated GstStream object with a pad on pad-added callback. Part-of: 2020-10-17 12:35:16 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: Add some missing nullable annotations Part-of: 2020-10-17 10:42:49 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind/xdgmime: Validate mimetypes to be valid GstStructure names before using them On macOS, for example, "text/*" can be returned as mimetype for plaintext files but we don't allow '*' in structure names and this would cause critical warnings. It's a valid mimetype but not a valid structure name. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/616 Part-of: 2020-10-15 18:20:37 +0200 Stéphane Cerveau * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-hdr.c: * meson.build: meson: update glib minimum version to 2.56 In order to support the symbol g_enum_to_string in various project using GStreamer ( gst-validate etc.), the glib minimum version should be 2.56.0. Remove compat code as glib requirement is now > 2.56 Version used by Ubuntu 18.04 LTS Part-of: 2020-09-20 19:47:08 +0900 Seungha Yang * gst/videoconvert/gstvideoconvert.c: videoconvert: Enhance debug message to be more human readable Numerical representation of GstVideoFormat is not debugging friendly Part-of: 2020-10-13 17:57:53 +0900 Seungha Yang * gst/playback/gsturidecodebin3.c: uridecodebin3: Forward upstream events to decodebin3 directly Otherwise default handler will try to forward it to sink element or srcpad which might not be available at that moment. Part-of: 2020-09-14 20:01:18 +0900 Seungha Yang * tests/check/elements/appsrc.c: tests: appsrc: Fix unstable test case Wait all buffers to be consumed before sending flush seek event, so that checking timestamp and segment as expected. Part-of: 2020-10-13 15:31:41 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Limit accepted caps by template caps This seems like an obvious mistake, since `modified_caps` was created but not used. Part-of: 2020-10-13 15:28:54 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Log the format name instead of index Part-of: 2020-10-12 12:21:17 +0100 Will Miller * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: gstrtpbuffer: fix header extension length validation We validate the header extensions length of an RTP buffer by comparing it against the block size. Since we multiply the length in words by 4 to get the length in bytes, a suitably large length could cause a wrapround of the uint16, giving a lower length which erroneously passes the check and allows the buffer to be mapped. Part-of: 2020-09-11 20:28:55 +0200 Marijn Suijten * gst-libs/gst/gl/gstglslstage.c: gl: glslstage: Sync new_default_{fragment,vertex} documentation name Documentation for the parameter and return value don't show up when this header mismatches the function it tries to describe. Part-of: 2020-10-10 17:26:42 +0200 François Laignel * gst/playback/gstdecodebin3.c: decodebin3: only force streams-selected seqnum after a select-streams The initial streams-selected message might not match any select-streams, in which case it is currently overriden with GST_SEQNUM_INVALID. Related to: - https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/601 Part-of: 2020-10-09 17:15:37 +0200 Jan Alexander Steffens (heftig) * tests/examples/gl/gtk/meson.build: examples/gl/gtk: Add missing dependency on gstgl Occasionally, a clean build would fail like this: In file included from ../subprojects/gst-plugins-base/tests/examples/gl/gtk/gstgtk.c:24: ../subprojects/gst-plugins-base/gst-libs/gst/gl/gl.h:25:10: fatal error: gst/gl/gl-enumtypes.h: No such file or directory 25 | #include | ^~~~~~~~~~~~~~~~~~~~~~~ Add the missing dependency so that the headers are generated beforehand. Part-of: 2020-09-04 21:09:17 +0200 Mathieu Duponchelle * gst-libs/gst/rtsp/gstrtsptransport.c: rtsptransport: support single port for client_port and server_port This is explicitly specified as valid in the RFC, where the syntax for both parameters is: ";" "client_port" "=" port [ "-" port ] ";" "server_port" "=" port [ "-" port ] This is useful for applications where RTCP is either not necessary or not possible. Part-of: 2020-10-09 12:02:14 +0200 Guillaume Desmottes * gst-libs/gst/video/video-info.h: video-info: clarify GST_VIDEO_INTERLACE_MODE_ALTERNATE doc Fields really should alternate in this mode. Part-of: 2020-10-05 12:07:22 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix output state interlace-mode When user is passing the actual interlace-mode when calling gst_video_decoder_set_interlaced_output_state() it should not be overidden by the input interlace-mode. Needed to fix #825 as we want to keep interlace-mode=interleaved from parsers and have the OMX decoder producing interlace-mode=alternate. Part-of: 2020-10-05 11:38:09 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideodecoder.c: videodecoder: add interlace-mode to debug output when setting output state Part-of: 2020-07-16 18:10:45 +1000 Matthew Waters * tests/check/libs/gstgl-public-headers.h: * tests/check/libs/gstglheaders.c: * tests/check/libs/libsabi.c: * tests/check/libs/struct_aarch64.h: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_ppc32.h: * tests/check/libs/struct_ppc64.h: * tests/check/libs/struct_x86_64.h: * tests/check/meson.build: tests: add gl structs to abi check Tested on x86, x86_64, armv7l, aarch64. Part-of: 2020-10-09 12:25:21 +1100 Matthew Waters * meson.build: build: use cpu_family for arch checks e.g. on 32-bit arm, we may have armv6, armv7l, armv7hf, etc which all generally have the same layouts. cpu_family() groups all of these into just 'arm' that the ABI check table is expecting. Part-of: 2020-10-01 11:22:51 +0200 Jan Alexander Steffens (heftig) * gst/tcp/gstmultihandlesink.c: multihandlesink: Don't pass NULL caps to gst_caps_is_equal Apparently the sinkpad caps can get cleared when shutting down the pipeline while the sink is working, provoking a critical warning. Part-of: 2020-10-08 17:10:30 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: timeoverlay: Add elapsed-running-time mode This takes the first running time and the first after each flush-stop as an offset for the running time that is rendered. Part-of: 2020-10-08 13:52:33 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/video/gstvideofilter.c: * gst/videoscale/gstvideoscale.c: audio: video: Fix in/outbuf confusion of transform_meta There are three instances where in- and outbuf have been swapped. This didn't affect the correctness of the libs *filter code, but the videoscale implementation swapped the arguments of meta->transform_func. Part-of: 2020-10-01 14:45:24 -0400 Xavier Claessens * ext/pango/meson.build: pango: Add fallback dependency When we'll depend on Meson >=0.55 this can be replaced by [provide] section in gst-build's pango.wrap file. The dependency variable name can also be dropped when pango is updated to use override_dependency: https://gitlab.gnome.org/GNOME/pango/-/merge_requests/250 Part-of: 2020-09-16 04:30:40 +0900 Seungha Yang * meson.build: meson: Always wrap "prefix" option with join_paths() to make Windows happy Both "\" and "/" separators are allowed on Windows but the problem is that "\" is not converted to "\\" in this case. It will result to unknown/unrecognized character escape sequence. Part-of: 2020-09-25 14:05:09 -0400 Xavier Claessens * gst-libs/gst/gl/meson.build: meson: Add GL summary Part-of: 2020-09-21 23:50:03 +1000 Matthew Waters * gst/compositor/blend.c: compositor: fix YUY2/UYVY/VYUY blending Don't overead memory. Fixup for https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/755 Part-of: 2020-09-15 14:15:36 -0400 Nicolas Dufresne * meson_options.txt: * tests/examples/gl/qt/meson.build: * tests/examples/overlay/meson.build: meson: Add a qt5 feature This allow opting out items of the builds the depends on QT5 library. Auto-detection of QT5 in cross-build requires host tools to match with the sysroot, and detection of mis-match is not fully reliable. Part-of: 2020-09-14 17:56:07 +0900 sohwan.park * meson.build: meson: add abi configuration for meson build Part-of: 2020-07-15 15:46:56 +1000 Matthew Waters * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: blend with multiple threads Increases the throughput of compositing by using more CPU cycles across multiple threads. Simple cases (the output contains one pixel from at most one input) can have up to a 70% increase in throughput. Not so simple cases are limited by the region with the most number of composite operations. Part-of: 2020-09-11 20:15:14 +0200 Marijn Suijten * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-converter.c: * tests/check/libs/video.c: video: Rename video_color_transfer to video_transfer_function Rename remaining `gst_video_color_transfer_{encode,decode}` functions on the `GstVideoTransferFunction` enumeration to `gst_video_transfer_function_{encode,decode}` permitting gobject-introspection to turn these into associated functions and place them under the respective `` block in gir XML files. Part-of: 2020-09-11 21:40:26 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: ensure peek_next_sample() uses the correct caps gst_pad_get_current_caps() may be wrong when there is a renegotiation in progress for the pad and we have not yet received or selected the buffer with different caps yet. Fix by storing the caps through in a similar way to the existing code for buffer/video-info selection machinery. Part-of: 2017-08-18 17:01:02 +0200 Stian Selnes * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Bump log level of marking a sync point Sync points are often important when debugging and deserves DEBUG level. Part-of: 2020-07-01 18:19:09 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add API for subclasses to request a new sync point This allows subclasses that notice missing reference frames to request a new sync point to allow seamless decoding again. While doing so the subclass can also signal whether it wants a) all following input frames until the sync point to be discarded or b) all output frames until the sync point to be marked as corrupt. Sending of force-keyunit events for this can be throttled by the application via the "min-force-keyunit-interval" property. This replaces custom behaviour for the same in various decoders, for example openh264dec. Based on patches by Haakon Sporsheim and Stian Selnes . Part-of: 2020-07-01 18:14:40 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add API for subclasses to signal that they need the stream to start with a sync point If the first frame(s) at the very beginning or after a flush are not a sync point then the base class would discard them before passing them to the subclass. This also fixes the previously broken distance_from_sync handling: it was never reset at sync points. Part-of: 2020-07-01 18:11:25 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Add "discard-corrupted-frames" property This can be used by applications to configure decoders so that corrupted frames are directly discarded instead of being forwarded inside the pipeline. It is a replacement for the "output-corrupt" property of the ffmpeg decoders. Part-of: 2020-07-01 18:09:22 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoutils.h: videodecoder: Add API for marking output frames as corrupted This can be used by subclasses to mark output frames as known to be corrupted, for example if reference frames were missing. ffmpeg's decoders can signal this. In addition this flag is propagated downstream if the input frame had it set. Part-of: 2020-06-23 18:40:07 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Remove unused reorder_depth variable Part-of: 2020-07-01 19:18:36 +0300 Mikhail Fludkov * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Mark GAP events sent because of packet loss as such This allows downstream to distinguish packet loss from normal GAP events that are sent simply because of gaps in the timeline. Part-of: 2020-09-08 15:41:55 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: Actually build gstgl without implicit include dirs Fixes a typo from https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/800 Part-of: 2020-09-10 14:19:04 +0300 Sebastian Dröge * tests/check/elements/glmixer.c: glmixer: Fix unit test to actually work reliably Don't run the harness in live mode, or otherwise it would output frames already in the very beginning before a buffer was provided to it due to timeout. Also send EOS/a second buffer before pulling a buffer as videoaggregator has one frame of latency. Part-of: 2020-08-13 12:49:19 +0800 Haihao Xiang * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for GBR and GBRA example pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=GBR ! glimagesink Part-of: 2020-08-20 09:06:04 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't require any pads to be configured for negotiating source pad caps This is not actually required (anymore?). Source pad caps can be negotiated at any time regardless of any configured (or existing) sink pads and videoaggregator comes up with some fixated caps based on the downstream caps. Subclasses can override this behaviour as needed by overriding update_src_caps(). Part-of: 2020-09-03 21:19:29 +0200 Marijn Suijten * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/video/video-color.c: gst-libs: gl: Fix documentation typo and clarify gl_memory_texsubimage `gst_gl_memory_read_pixels` reads pixels from `GLMemory` into the pointer, effectively writing to it. This is opposite from `gst_gl_memory_texsubimage` which reads texture data from `read_pointer` into `GLMemory`. Both cases are clarified by changing `read_pointer` to `write_pointer`, and explaining what `gst_gl_memory_texsubimage` does in addition to referring back to `gst_gl_memory_read_pixels`. Part-of: 2020-08-20 16:31:38 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Reset offset if the output rate is renegotiated On next aggregation the new offset will be calculated based on the segment position. Without this a rate change would cause a jump forwards or backwards in the output timeline. Part-of: 2020-08-18 10:42:09 +0300 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: Implement transform functions for AFD/Bar metas If the transformation is just a copy, copy over the metadata. For AFD also copy over the metadata if the aspect ratio stays the same in scaling transformations. In all other cases fail the transformation. Part-of: 2020-08-24 19:37:15 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Wake up the create() function on caps changes This allows the new caps to be sent downstream as soon as possible instead of having to wait for the next buffer/buffer list. Part-of: 2020-09-08 20:45:53 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Be less restrictive on muxer caps when preset name is specified This way the user can simply define its caps by only providing the structure name which is what we do in the encoding profile deserialization function for example. Part-of: 2020-07-30 18:49:52 -0400 Thibault Saunier * gst/encoding/gstsmartencoder.c: encodebin: Add vp8 and vp9 smart encoding support Part-of: 2020-07-30 18:49:18 -0400 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Fix refcount mishandling Part-of: 2020-08-21 03:06:04 +0200 Mathieu Duponchelle * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: do not forget delayed segment when forwarding gaps Part-of: 2020-08-04 12:53:18 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Add fast paths from v210 to I420/YV12, Y42B, UYVY and YUY2 These then don't require going through the generic code path via AYUV64 first but can be converted directly. This speeds up processing of videotestsrc ! v210 ! videoconvert ! other_format ! fakesink by a factor of 1.55 for I420/YV12 and 1.40 for the other destination formats and reduces memory pressure considerably. Part-of: 2020-09-08 17:30:31 +0100 Tim-Philipp Müller * .gitlab-ci.yml: ci: include template from gst-ci master branch again 2020-09-08 16:58:29 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.18.0 === 2020-09-08 00:03:33 +0100 Tim-Philipp Müller * .gitlab-ci.yml: * ChangeLog: * NEWS: * README: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.18.0 2020-09-07 22:36:54 +0100 Tim-Philipp Müller * meson.build: * scripts/dist-translations.py: * scripts/meson.build: meson: dist pot file in tarball Part-of: 2020-09-07 12:10:16 +0300 Sebastian Dröge * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-converter.c: * gst/videoconvert/gstvideoconvert.c: * tests/check/libs/video.c: video: Rename gst_video_color_transfer_*() to gst_video_transfer_function_*() in new API The type is called GstVideoTransferFunction so the function names should match, otherwise gobject-introspection is keeping the functions as global functions instead of methods on the type. The same mistake was also made in lots of other APIs over the years, but here we can at least fix it for 1.18 still. Thanks to Marijn Suijten for noticing. Part-of: 2020-09-02 21:53:51 +0530 Nirbheek Chauhan * pkgconfig/meson.build: meson: Fix gstreamer-gl-prototypes pkgconfig file on Windows When we're using wgl, we have to link to `-lopengl32`, not `-lGL`. Fixes building of anything that uses this pc file, such as the nvcodec plugin. Part-of: 2020-08-28 12:56:38 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: audio/video: Copy more metas by default in the codec base classes For audio we copy metas that have no tags at all, or that only have the "audio" and/or "audio-channels" tag. Audio codecs don't change the audio aspect of the stream and in almost all cases don't change the number of channels. They might however change the sample rate (e.g. Opus). Subclasses that change the number of channels will have to override ::transform_meta() accordingly. For video we copy metas that have no tags at all, or that only have the "video" and/or "video-size" and/or "video-orientation" tag. Video codecs don't change the "video" aspect of the stream and in almost all cases don't change the resolution or orientation. Subclasses that rescale or change the orientation will have to override ::transform_meta() accordingly. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/576#note_610581 Part-of: 2020-08-28 12:30:43 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscale.c: videoscale: make local quark vars static Part-of: 2020-08-26 19:15:19 +1000 Matthew Waters * gst-libs/gst/gl/gl_mkenum.py: * gst-libs/gst/gl/meson.build: gl/build: build with implicit_include_directories : false Fixes case-insensitive file systems confusing gst-libs/gst/gl/egl/egl.h with EGL/egl.h when the source directory gst-libs/gst/gl is automatically added to the compiler's search path. Due to https://github.com/mesonbuild/meson/issues/7582 we also need to perform manual enumtype generation. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/814 2020-08-20 05:44:46 +1000 Jan Schmidt * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc.orc: compositor: fix off-by-1 error in blending ARGB Use a more naive blend formulation that avoids off-by-one errors at the 0x00 and 0xff alpha endpoints. Fixes #810 Part-of: 2020-08-25 12:56:21 +0300 Sebastian Dröge * gst/audioresample/gstaudioresample.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: videorate/videoscale/audioresample: Ensure that the caps returned from fixate_caps() are actually fixated If there is some other field than the ones we care about left and not fixated yet then basetransform will just error out. So instead just pass the result through gst_caps_fixate() in the very end. Part-of: 2019-04-16 12:08:30 +0100 Marcin Kolny * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: minor fix in documentation Part-of: === release 1.17.90 === 2020-08-20 16:10:18 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.17.90 2020-08-18 10:26:48 +0300 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: Don't call NULL GstMeta transform function It's optional and if it does not exist then no transformation is possible. Part-of: 2020-08-11 22:54:50 +0200 Mathieu Duponchelle * gst-libs/gst/tag/lang-tables.dat: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/mklangtables.c: tags: update to latest iso-code and support more languages Some languages have an ISO 639-2 representation but no 639-1 representation, for example where "eng" has a two-letter equivalent in "en", "enm" doesn't have one. Discarding those languages from our static table caused functions such as gst_tag_get_language_code_iso_639_2T() or gst_tag_get_language_code_iso_639_2B() to return NULL for valid language codes such as "enm", potentially causing users of these API such as mpegtsmux to discard language code tags as invalid. Part-of: 2020-08-11 17:15:50 -0400 Nicolas Dufresne * gst-libs/gst/pbutils/codec-utils.c: pbutils: Add latest H.264 level values The spec now list 6, 6.1 and 6.2. Part-of: 2020-08-11 03:45:32 +1000 Jan Schmidt * gst-libs/gst/app/gstappsrc.c: appsrc: Post a bus error if a segment can't be applied When applying segments from the input samples, post a bus error and fail loudly if the segment fails to configure, instead of just posting debug output. Part-of: 2020-08-11 16:53:51 +1000 Matthew Waters * gst-libs/gst/gl/egl/egl.h: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/wayland.h: * gst-libs/gst/gl/x11/x11.h: build/gl: add top-level include files for sub-libraries Makes gir happy Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/809 Part-of: 2020-08-10 16:18:31 +0000 Josh Matthews * tests/examples/gl/cocoa/meson.build: Add required dependencies of cocoa GL example for linking. Part-of: 2020-08-10 09:59:09 +0300 Sebastian Dröge * pkgconfig/gstreamer-gl-egl-uninstalled.pc.in: * pkgconfig/gstreamer-gl-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-gl-x11-uninstalled.pc.in: pkg-config: Fix dependency typo in uninstalled gstreamer-gl-* pc files Part-of: 2020-08-07 10:18:34 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Add support for new sample selection API Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/805 Part-of: 2020-08-07 09:34:37 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: * tests/examples/compositor/signals.c: videoaggregator: Update for additional info parameter to the "samples-selected" signal See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/590 Part-of: 2020-08-06 14:22:27 +0000 Josh Matthews * pkgconfig/gstreamer-gl-egl.pc.in: Fix incorrect pkgconfig description. Part-of: 2020-07-23 19:48:55 +1000 Guillaume Desmottes * docs/libs/gl-egl/index.md: * docs/libs/gl-egl/sitemap.txt: * docs/libs/gl-wayland/index.md: * docs/libs/gl-wayland/sitemap.txt: * docs/libs/gl-x11/index.md: * docs/libs/gl-x11/sitemap.txt: * docs/meson.build: * ext/gl/meson.build: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/meson.build: * pkgconfig/gstreamer-gl-egl-uninstalled.pc.in: * pkgconfig/gstreamer-gl-egl.pc.in: * pkgconfig/gstreamer-gl-prototypes-uninstalled.pc.in: * pkgconfig/gstreamer-gl-prototypes.pc.in: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-gl-wayland.pc.in: * pkgconfig/gstreamer-gl-x11-uninstalled.pc.in: * pkgconfig/gstreamer-gl-x11.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/meson.build: * tests/check/meson.build: * tests/examples/gl/generic/cube/meson.build: * tests/examples/gl/generic/cubeyuv/meson.build: * tests/examples/gl/generic/doublecube/meson.build: * tests/examples/gl/generic/recordgraphic/meson.build: * tests/examples/gl/qt/meson.build: * tests/examples/gl/qt/mousevideooverlay/meson.build: * tests/examples/gl/qt/qglwidgetvideooverlay/meson.build: * tests/examples/gl/qt/qglwtextureshare/meson.build: gl: move each gl platform specific API to its own gir With contributions from: Thibault Saunier Matthew Waters Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/651 Part-of: 2020-05-13 10:08:25 +0200 Guillaume Desmottes * gst-libs/gst/gl/egl/gsteglimage.c: gl: egl: add missing gir annotations Part-of: 2020-08-05 16:54:19 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: * tests/examples/compositor/signals.c: videoaggregator: update to new samples selection API Part-of: 2020-08-03 19:53:58 +0300 Jordan Petridis * tests/check/elements/audioresample.c: tests/check/elements/audioresample.c: avoid implict int ot float conversion Also use doubles instead so the calculation won't overflow Part-of: 2020-08-04 15:17:35 +0300 Jordan Petridis * ext/alsa/gstalsamidisrc.c: alsamidisrc: fix compiler warning with clang 10 ``` ../subprojects/gst-plugins-base/ext/alsa/gstalsamidisrc.c:201:54: error: converting the result of '<<' to a boolean always evaluates to false [-Werror,-Wtautological-constant-compare] snd_seq_ev_schedule_real (&ev, alsamidisrc->queue, SND_SEQ_TIME_MODE_ABS, ^ /usr/include/alsa/seq_event.h:215:34: note: expanded from macro 'SND_SEQ_TIME_MODE_ABS' ``` The ALSA API expects 0 or 1 here and will then add the flags accordingly, and that's also what other code using this API does. Part-of: 2020-08-04 07:11:54 -0400 Xavier Claessens * tests/validate/meson.build: Meson: find_program() will return gst-tester from subproject gstreamer now use override_find_program() so it won't return the system version. Part-of: 2020-08-04 05:32:08 +0530 Nirbheek Chauhan * meson.build: meson: Only look for Objective-C compiler on macOS/iOS On Windows, MinGW-GCC Objective-C compilers can be in PATH and mess up the build since they may not match the CPU family of the C/C++ compilers we are using. Also require them on macOS/iOS, because they should always be present. Fixes https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/88 Part-of: 2020-08-01 00:22:28 +0100 Tim-Philipp Müller * tests/examples/compositor/signals.c: examples: compositor: fix build with older GLib versions Don't use g_hash_table_steal_extended() which was only added in 2.58. Fixes #801 Part-of: 2020-07-16 21:56:47 -0400 Thibault Saunier * gst/compositor/compositor.c: compositor: Frames where we introduce alpha can't obscure anything When a pad has alpha != 1.0 it means that the resulting frames will contain alpha and thus can't fully obscure with a lower zorder. Also simplifies the other checks as blending with an OVER or on a transparent is not a no-op as previously assumed. Part-of: 2020-07-01 03:47:00 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: * tests/examples/compositor/meson.build: * tests/examples/compositor/signals.c: videoaggregator: implement samples selection API Call gst_aggregator_selected_samples() after filling the queues (but before preparing frames). Implement GstAggregator.peek_next_sample. Add an example that demonstrates usage of the new API in combination with the existing buffer-consumed signal. Part-of: 2020-07-24 08:33:23 -0400 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding: Support more topologies in profile_from_discoverer() Previous implementation was only working when the stream was inside a container, this refactoring allows using virtually any stream as input. Part-of: 2020-07-30 19:16:06 +0900 Seungha Yang * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp: glwindow/winrt: Increase timeout value to 15 seconds 5 seconds might not be enough value for timeout in case an application is running on a device with very limited computing power. Note that ANGLE uses 10 seconds timeout value. So even if a timeout happens here, it's also ANGLE's timeout condition as well (meaning that bad things will happen either way) Part-of: 2020-07-27 18:55:35 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Only check downstream caps when handling CAPS events if we didn't negotiate with downstream yet If we already negotiated with downstream there is not point in checking if the caps are supported. We already know that this is the case. Part-of: 2020-07-27 18:49:48 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Check all downstream allowed caps structures if they support the upstream rate Otherwise it might happen that downstream prefers a different rate (i.e. puts it into the first structure) and also supports other rates, but audioaggregator would then fail negotiation. Also this now correctly handles downstream returning a range of supported rates. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/795 Part-of: 2020-07-23 16:52:11 +0200 Stéphane Cerveau * meson.build: meson: add a plugin summary This summary displays a list of plugins which have been enabled. Part-of: 2020-07-04 12:33:20 -0400 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst/encoding/gstencodebin.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gstsmartencoder.h: encodebin: Fix and refactor smart encoding It was not working properly and the implementation of the smartencoder element was weird. This introduce a number of changes (which are all in one single commit because they basically all work together and lead to basically reimplementing the element): * Make smartencoder a bin so that the reencoding chain of elements are inside of it instead of not having any parent. Those elements were not be visible when dumping the pipeline which was very confusing. * Make encodebin create the right encoder with a capsfilter (and parser) to properly enforce the format specified by the user, and so that the encoder properties specified in the encoding profile are respected. * Use `decodebin` to do the decoding instead of selecting a decoder ourself and not plug any parser etc... * Ensure that negotiated format in the sinkpad of smart encoder is fixed through time when the user requested a non dynamic output * Add a parser at the beginning of the smart encoder * Handle errors when reencoding Part-of: 2020-07-04 12:32:26 -0400 Thibault Saunier * gst/encoding/gststreamsplitter.c: streamsplitter: Forward STREAM_START to all branchs Otherwise the branch that get selected later won't receive it ever. Part-of: 2020-07-04 12:29:06 -0400 Thibault Saunier * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamcombiner.h: * gst/encoding/gststreamsplitter.c: streamsplitter/combiner: Drain encoder before switching branch Otherwise we miht have frames queued in the encoder from the old branch that do not get encoded/muxed when they should. The implementation is a bit 'weird' but the rational and solution is documented in the code. Part-of: 2020-07-04 12:20:44 -0400 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Rebuilt internal state when swicthing to avoid-reencoding Part-of: 2020-07-15 17:51:18 +1000 Matthew Waters * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtpbasepayload: place twcc-ext-id behind environment variable Adding properties for each and every rtp header extension is not scalable and a new interface will be implemented for the general case (https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/777). Set the environment variable "GST_RTP_ENABLE_EXPERIMENTAL_TWCC_PROPERTY" to any value to reenable the short-lived twcc-ext-id property. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/761 Part-of: 2020-07-16 16:25:15 -0400 Olivier Crête * gst/videorate/gstvideorate.c: * tests/check/elements/videorate.c: videorate: Error out on streams with no way to guess framerate This is better than going into an infinite loop. Part-of: 2020-07-16 16:04:23 -0400 Olivier Crête * gst/videorate/gstvideorate.c: videorate: Assert on invalid result from internal code Letting this through instead results in an infinite loop where the exact same buffer gets pushed out ad infinitum. Part-of: 2020-07-15 22:54:55 -0400 Olivier Crête * tests/check/elements/videorate.c: videorate: Add test that reproduces infinite loop Part-of: 2020-07-06 14:46:33 -0400 Olivier Crête * ext/alsa/gstalsadeviceprovider.c: alsadeviceprovider: Remove redundant start function The ALSA provider doesn't provider live monitoring, so don't pretend otherwise. Part-of: 2020-07-16 16:31:28 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: Revert "gstgldisplay: Add public foreign_display property" This introduced a possible regression where the EGL display connection could be leaked when a foreign native display (x11, wayland, etc) could create a non-foreign EGL display that would never be destroyed. The underlying problem needed to be solved in a different way. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/640 for more details. This reverts commit 2e686b0dad9700b10d91da5e91f34849fa7d32ae. Part-of: 2020-07-16 14:34:51 +0200 Silvio Lazzeretti * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudioutilsprivate.c: * gst-libs/gst/audio/gstaudioutilsprivate.h: audioutilsprivate: restore thread priority before ending The priority of the thread that executes audioringbuffer_thread_func is incremented on Windows by the usage of the AvSetMmThreadCharacteristics API. This change has to be restored, as described on the documentation of the API (https://docs.microsoft.com/en-us/windows/win32/api/avrt/nf-avrt-avsetmmthreadcharacteristicsw#remarks), with a call to the AvRevertMmThreadCharacteristics. If this is not done, a handle will be leaked. Part-of: 2020-07-17 18:48:15 +0900 Seungha Yang * gst-libs/gst/audio/gstaudioutilsprivate.c: audioutilsprivate: Don't try to load avrt for UWP application All APIs in avrt.h are desktop only. Part-of: 2020-07-16 18:07:34 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: build/gl: remove unused cocoa/win32 header variables We don't install any cocoa/win32 specific headers. Part-of: 2020-04-07 11:00:39 +0200 Havard Graff * tests/check/libs/rtp.c: test/rtp: use the proper _INIT for initializing rtp/rtcp buffer structs. Fixes -Wmissing-field-initializers in Clang. Part-of: 2020-02-12 14:48:36 +0100 Havard Graff * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: test warning fixes Part-of: 2020-07-14 22:03:39 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache with new raw pixel format Part-of: 2020-07-14 21:43:56 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * tests/check/elements/videoscale.c: * tests/check/libs/video.c: video: Add support for linear 32x32 NV12 tiles This adds linear 32x32 NV12 based tiles. This format is notably used by Allwinner VCU and exposed in V4L2 as being "SUNXI Tiled" format. In this patch we generalize the plane info calculation so we can share this part with the 4L4 variant. Part-of: 2020-07-14 11:29:57 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache after adding a new pixel format Part-of: 2020-07-14 10:42:01 -0400 Nicolas Dufresne * gst/rawparse/gstrawvideoparse.c: rawvideoparse: Fix tiling support When using tile format, the stride has a different meaning. It used the MSB and LSB 16bits to encode respectively the width and height in number of tiles. This issue was introduce with commit e5b70d384c which was fixing missing size recalculation when strides and offset is updated. Part-of: 2020-07-13 16:18:29 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-tile.c: * gst-libs/gst/video/video-tile.h: * tests/check/elements/videoscale.c: * tests/check/libs/video.c: video: Add NV12_4L4 tile format This format is produced by Verisillicon VC8000D VPU decoder, it is a simple 4x4 tiling layout in a linear way. Part-of: 2020-06-16 11:44:08 -0400 Aaron Boxer * gst-libs/gst/video/video-frame.c: video: allow frame copy destination to have dimensions smaller than source Part-of: 2020-07-14 14:06:58 +1000 Matthew Waters * tests/examples/gl/qt/gl-compat-defines.h: * tests/examples/gl/qt/meson.build: * tests/examples/gl/qt/mousevideooverlay/meson.build: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/meson.build: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.h: * tests/examples/gl/qt/qglwtextureshare/meson.build: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.h: examples/gl/qt: silence compiler warnings -Waggregate-return: used by some Qt clases extensively and not super useful for this example. Supress it. warning: "GL_GLEXT_VERSION" redefined: Perform the same workaround as qmlglsink by defining the old gl/GL.h header guard if the new GL/gl.h guard exists. Part-of: 2019-11-27 16:51:55 +0100 Santiago Carot-Nemesio * gst-libs/gst/rtp/gstrtcpbuffer.c: * tests/check/libs/rtp.c: rtcpbuffer: Notify error in case packet can not be added to an RTCP compound packet Part-of: 2020-07-10 14:57:53 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Add scaling fast-path for GBRA format Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/684 Part-of: 2020-07-10 19:49:56 +0900 Seungha Yang * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp: glwindow/winrt: Add warning message if window is being closed from a UI thread All UI elements will follow Single-Threaded Apartments (STA) model. As a result, we should access them from dedicated UI thread. Due to the nature of the threading model, ANGLE will wait the UI thread while closing internal window/swapchain objects. A problem here is that when destroying GstGLWindow from the UI thread, it will wait GstGLContext's internal thread. Meanwhile, the GstGLContext's internal thread will be blocked because ANGLE wants to access the UI thread. That will cause a deadlock or exceptions. In short, application should not try to call gst_element_set_state(pipeline, GST_STATE_NULL) from a UI thread. That's a limitation of current implementation. Part-of: 2020-07-09 22:23:33 +0900 Seungha Yang * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp: * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.h: glwindow/winrt: Add window resize event handler GstGLWindow implmentaion should be able to report native window size and also it need to handle resize event for glimagesink. Note that GstD3D11Window implementation was referenced for this change. Part-of: 2020-07-09 19:51:57 +0900 Seungha Yang * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp: glwindow/winrt: Move to c++ For native window size query, c++ API is much convenient than c API Part-of: 2020-07-10 02:46:56 +0900 Seungha Yang * gst-libs/gst/app/gstappsrc.c: appsrc: Fix annotations Don't put double ':' there Part-of: 2020-05-17 02:44:42 +0900 Seungha Yang * tests/check/elements/appsrc.c: tests: appsrc: Add unit test for custom segment Part-of: 2020-05-17 02:29:39 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/app/gstappsrc.c: appsrc: Add support for custom GstSegment Add property "handle-segment-change" for user to allow pushing custom segment event. For now, this property can work only for time format GstSegment. This property can be useful in case application controls timeline of stream such as there is timestamp discontinuity but playback is expected to be continuous. Multi-period scenario of MPEG-DASH is an example of this use case. Part-of: 2020-07-09 11:05:35 -0400 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Do not restrict number of similar profiles in a container We have the notion of presence, and when the user want to be in control it is totally legitimate for him to have several occurrences of a similar profile Part-of: 2020-07-09 13:13:14 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: videoconverter: Relax frame size checks Since we are using VideoMeta, the converter (similarly to the video_frame_copy utility) should have no issue dealing with frames that are slightly larger. This situation occure as some element will use padded width/height for allocation, which results in a VideoMeta width/height being larger then the display width/height found in the negotiated caps. Fixes #790 Part-of: 2020-07-09 12:45:27 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Fix negotiation with downstream if there is no peer yet get_allowed_caps() will return NULL, which is not a problem in itself. Just take the template caps for negotiation in that case instead of erroring out. Part-of: 2020-07-08 16:48:30 +0100 Tim-Philipp Müller * gst-plugins-base.doap: * meson.build: * scripts/extract-release-date-from-doap-file.py: meson: set release date from .doap file for releases And fix up DOAP file XML. Parser would complain about unknown entity ! here. Part-of: 2020-07-08 15:15:34 +0100 Tim-Philipp Müller * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * pkgconfig/meson.build: pkgconfig: fix gstreamer-plugins-base-1.0 .pc files for no OpenGL case Don't put gl into the libraries list if the gst-gl library isn't being built, and also don't include it in the list of linker flags then. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/613 Part-of: 2020-07-02 22:33:44 +0900 Seungha Yang * gst-libs/gst/gl/win32/gstglwindow_win32.c: glwindow/win32: Fix possible deadlock around key/mouse event handling Calling gst_gl_window_send_{key,mouse}_event() from GstGLContext thread might cause a deadlock. Instead, use the dedicated event handling thread in GstGLDisplay. Part-of: 2020-06-23 16:41:31 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Add test for fullscreen mode switch Add test option "--fullscreen" for testing fullscreen mode switch. When enabled, user can switch fullscreen mode via SPACE key or right mouse button click. Part-of: 2020-07-08 09:53:42 +0100 Tim-Philipp Müller * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: pkgconfig: fix meson warnings about GL_CFLAGS in gstreamer-gl .pc files We added GL_CFLAGS in autotools because we unconditionally included OpenGL headers. We do not do that anymore for a standard #include . OpenGL headers are only included for the platform specific files e.g. #include which must always be hidden behind a #if GST_GL_HAVE_WINDOW_X11, or #include to gain access to the contents of the GstGLFuncs object. Users of our headers must include the necessary include paths for the platforms they are intending to support. We might introduce extra .pc files for what GstGL was built against though. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/735 Part-of: 2020-07-08 04:08:33 +0900 Seungha Yang * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: examples/gl/qt: Don't include GL/glx.h unconditionally The header file might not be available on non-*nix platform. Part-of: 2020-07-07 20:01:33 +0100 Tim-Philipp Müller * tests/validate/meson.build: tests: validate: fix meson warning meson.build:4: WARNING: Trying to compare values of different types (ExecutableHolder, bool) using ==. Part-of: 2020-07-07 14:55:06 +0200 Edward Hervey * docs/plugins/gst_plugins_cache.json: docs: Update cache for removed properties Part-of: 2020-07-07 10:57:38 +0200 Edward Hervey * docs/plugins/gst_plugins_cache.json: * gst/playback/gstplay-enum.c: playback: Clarify flag usage for playbin3 Forcing software-decoder has no effect on playbin3 now. Part-of: 2020-07-07 10:52:40 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: * gst/playback/gsturidecodebin3.c: Revert "playbin3: handle GST_PLAY_FLAG_FORCE_SW_DECODERS" This reverts commit f4bcf8290b3568690dacf0dac95af7f7036f7110. Part-of: 2020-07-02 14:25:27 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: * gst/playback/gsturidecodebin3.c: decodebin3: Only override the selection if needed Whenever a new collection is calculated, the internal `select_streams_seqnum` variable is reset. This ensures that we reliably know whether a select-streams event has been received for that new collection. Use that to decide whether we should add previously un-selected streams or new streams in the current selection Fixes #784 Part-of: 2020-06-29 18:21:23 -0400 Olivier Crête * ext/alsa/gstalsaplugin.c: alsadeviceprovider: Rank down to secondary so PulseAudio can hide it Part-of: 2020-07-04 12:13:14 +0100 Tim-Philipp Müller * gst/compositor/compositororc-dist.c: Update disted generated orc backup files Part-of: 2020-07-04 00:31:49 +0100 Tim-Philipp Müller * gst-libs/gst/audio/meson.build: * gst-libs/gst/video/meson.build: * gst/adder/meson.build: * gst/audiomixer/meson.build: * gst/compositor/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: * scripts/update-orc-dist-files.py: meson: add update-orc-dist target Add target to update backup orc -dist.[ch] files. Part-of: 2020-07-04 00:39:18 +0200 Mathieu Duponchelle * gst-libs/gst/video/video-color.h: video-color.h: fix comment syntax 2020-06-26 12:22:08 +0300 Vivia Nikolaidou * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-converter.c: * gst/videoconvert/gstvideoconvert.c: video-converter: Make fast path work for equivalent transfer functions For example, BT709, BT601, and BT2020_10 all have theoretically different transfer functions, but the same function in practice. In these cases, we should use the fast path for negotiating. Also, BT2020_12 is essentially the same as the other three, just with one more decimal point, so it gives the same result for fewer bits. This is now also aliased to the former three. Also make videoconvert do passthrough if the caps have equivalent transfer functions but are otherwise matching. As of the previous commit, we write the correct transfer function for BT601, instead of the (functionally identical but different ISO code) transfer function for BT709. Files created using GStreamer prior to that commit write the wrong transfer function for BT601 and are, strictly speaking, 2:4:5:4 instead. However, this commit takes care of negotiation, so that conversions from/to the same transfer function are done using the fast path. Fixes #783 Part-of: 2020-06-25 20:56:48 +0300 Vivia Nikolaidou * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-info.c: * tests/check/libs/video.c: video-color: Add bt601 transfer function Functionally the same as 709 but technically has a different value, and external software (e.g. ffmpeg) finds "wrong" values produced by GStreamer. Part-of: 2020-07-03 02:03:24 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.17.2 === 2020-07-03 00:24:57 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: * meson.build: Release 1.17.2 2020-07-01 20:14:57 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/video/video-anc.h: video-anc: Fix gst_buffer_get_video_(afd|bar)_meta The macros were not passing the meta GType to gst_buffer_get_meta, rendering them unusable. Also, the doc comments were specifying parameters meant for the add_video_X_meta functions. Part-of: 2020-06-24 15:59:03 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/pango/gstbasetextoverlay.c: basetextoverlay: mark valign and halign props as DOC_SHOW_DEFAULT To document it, we instantiate a subclass and inspect the properties on the created object. Subclasses (in that case textrender) may initialize those properties with a different default, we do not want to expose that in the base class documentation. Part-of: 2019-06-14 10:14:23 +0200 Havard Graff * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideofilter.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: audio: video: Optimize by using cached quark for meta tag Avoid taking the global quark lock for every single buffer. Part-of: 2020-05-14 15:49:54 +0200 Havard Graff * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: improve logging around negative gaps When warning, it is important that the log will contain information to help debug the problem. Sequence-numbers are crucial here. Part-of: 2020-06-20 00:37:09 +0530 Ayush Mittal * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: Added the path property in encoding-target Part-of: 2020-06-23 17:31:52 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: docs: add GstVisual to plugins cache 2020-06-23 02:49:44 +0200 Mathieu Duponchelle * ext/libvisual/visual.c: docs: mark more plugin API 2020-06-22 20:10:10 -0400 Thibault Saunier * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultisocketsink.c: doc: Fix link in tcp multi*sinks. 2020-06-23 00:01:13 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: plugins_cache: add base classes 2020-06-23 00:00:40 +0200 Mathieu Duponchelle * docs/meson.build: meson: mark plugins cache target as always stale 2020-06-21 01:33:50 +0200 Mathieu Duponchelle * ext/gl/gstglbasemixer.c: * ext/gl/gstgleffects.c: * ext/gl/gstglmixer.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesrc.c: * gst/rawparse/gstrawbaseparse.c: * gst/tcp/gstmultihandlesink.c: docs: mark more types as plugin API 2020-06-19 22:49:44 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: doc: Stop documenting properties from parents 2020-06-24 01:57:57 +0900 Seungha Yang * gst-libs/gst/video/gstvideometa.h: videometa: Fix documentation Fix gst_video_region_of_interest_meta_add_params to gst_video_region_of_interest_meta_add_param and add newline to be more readable. Part-of: 2020-06-22 21:43:44 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Add max-errors property The number of consecutive decode errors that should be tolerated before returning flow error should be up to the application, not the element. Hence max-error should be exposed as a property. Part-of: 2020-06-22 21:36:02 +0300 Haakon Sporsheim * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Add max-errors property The number of consecutive decode errors that should be tolerated before returning flow error should be up to the application, not the element. Hence max-error should be exposed as a property. Part-of: 2020-06-22 19:35:57 +0900 Seungha Yang * gst-libs/gst/gl/win32/gstglwindow_win32.c: glwindow/win32: Chain up mouse event to parent window Fix a regression of the commit 940c9998e5cfffd90fade8a7f39f29a426e20460 Unlike key event, mouse event will not be chained up to parent window by DefWindowProc Part-of: 2020-06-22 12:32:03 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstparsebin.c: Don't call gst_ghost_pad_construct() anymore It's deprecated, unneeded and doesn't do anything anymore. Part-of: 2020-06-22 12:19:28 +0900 Jimmy Ohn * tools/gst-discoverer.c: tools:discoverer: Remove short name for use-cache There is no need to add short name for 'use-cache'. The 'async' option already has 'a' short name. Part-of: 2020-06-17 09:03:51 +0900 Hosang Lee * gst/subparse/gstsubparse.c: subparse: lower text buffer threshold It is possible for subtitle files to have a string length less than 30. WebVTT for example may contain only the 'WEBVTT' string in the file without any cues. As an example in hls streams, since WEBVTT files can be segmented like video/audio, some subtitle segments may only contain just the header string. Part-of: 2020-06-20 00:28:04 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.17.1 === 2020-06-19 19:16:01 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * docs/plugins/gst_plugins_cache.json: * gst-plugins-base.doap: * meson.build: Release 1.17.1 2020-06-19 12:17:55 +0300 Sebastian Dröge * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtsp/gstrtspmessage.h: Fix up and add various "Since" markers and other related docs fixes Part-of: 2020-06-18 12:15:57 +0200 Guillaume Desmottes * gst-libs/gst/sdp/gstsdpmessage.c: sdp: fix gst_sdp_message_new_from_text() doc Arguments were in the wrong order in the doc. Part-of: 2020-06-18 10:40:14 +0100 Tim-Philipp Müller * tests/validate/meson.build: tests: validate: Add workaround for older meson versions subproject.get_variable() only has fallback since 0.51 Part-of: 2020-06-18 09:01:34 +0900 Hosang Lee * tests/check/elements/subparse.c: tests: subparse: add test for webvtt without hour component Test for webvtt without hour component. mm:ss.000 2020-06-15 13:22:38 -0400 Thibault Saunier * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Do not try to answer the duration query before negotiation We have no idea at that moment and this code was trying to divide by 0! Part-of: 2020-06-15 09:46:17 -0400 Aaron Boxer * gst-libs/gst/video/video-frame.c: video: allow frame copy where destination dimensions are smaller than source Part-of: 2020-06-12 13:04:23 +1000 Matthew Waters * tests/examples/gl/meson.build: * tests/examples/gl/qt/meson.build: * tests/examples/gl/qt/mousevideooverlay/meson.build: * tests/examples/gl/qt/qglwidgetvideooverlay/meson.build: * tests/examples/gl/qt/qglwtextureshare/meson.build: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_gstthread.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_pipeline.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_qrenderer.cpp: * tests/examples/gl/qt/videooverlay/meson.build: * tests/examples/gl/qt/videooverlay/videooverlay.pri: * tests/examples/gl/qt/videooverlay/videooverlay.pro: gl/examples/qt: hook up to meson build Part-of: 2020-06-06 01:22:21 +1000 Jan Schmidt * gst-libs/gst/video/video-converter.c: * tests/check/libs/video.c: video-converter: Add checks for configuration sanity. If the cropping or scaling input or output rects put us completely outside the input/output frame respectively, we can't draw anything except black safely. Check for those conditions and don't set up a configuration that attempts to access out of bounds memory outside the input/output framebuffers. Part-of: 2020-06-05 23:34:44 +1000 Jan Schmidt * gst-libs/gst/video/video-converter.c: * tests/check/libs/video.c: video-converter: Guard against invalid frame input If the frames passed in to gst_video_converter_frame() have a different layout than was configured for, the conversion code might go out of bounds and crash. Do a sanity check on each frame passed in, and in the absence of a return value in the API, just refuse the conversion in invalid cases and leave the destination frame untouched so it's obvious to users that it was broken. Part-of: 2020-06-12 00:21:56 +0200 David Bender * gst-libs/gst/gl/x11/gstglwindow_x11.c: gstglwindow_x11: fix resize This patch was taken from #629#note_178766, the comment made at the time was: The root issue is a mismatch between the initialization of render_rect in GstGLWindowX11Private and what's expected in the draw_cb function. Because render_rect is not explicitly initialized to a width and height of -1 (unlike gstglwindow_wayland_egl.c which does initialize to -1), the less-than check for explicitly-set render_rect at gstglwindow_x11.c:453-454 always fails, even when the parent_win has been set and the render rectangle has never been set. Maybe this came from copying the similar check in the wayland code? Regardless, I think the correct inequality should be '<= 0' (on both lines). Alternatively initialization could be changed, but other sinks, e.g. xvimagesink don't appear to use -1 to mean "unset" render_rect this way. The issue can be reproduced by running the example in tests/examples/gl/qt/videooverlay/ on X11, and resizing the output window Part-of: 2020-06-12 00:17:24 +0200 Mathieu Duponchelle * gst-libs/gst/video/videooverlay.c: videooverlay: chevrons don't need to be escaped in code examples Part-of: 2020-06-11 16:39:23 -0400 Thibault Saunier * gst/playback/gstdecodebin3.c: decodebin3: Lower error message to debug Debugging leftover Part-of: 2020-06-11 20:57:58 +0300 Jordan Petridis * ext/libvisual/visual.c: libvisual: use gst_element_class_set_metadata when passing dynamic strings gst_element_class_set_metadata is meant to only be used with static or inlined strings, which isn't the case for this element resulting in use-after-free later on. https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c#gst_element_class_set_static_metadata Part-of: 2020-06-11 13:16:40 +0530 Nirbheek Chauhan * meson_options.txt: * tests/meson.build: * tests/validate/meson.build: meson: Use the tests option for validate This is what gstreamer core does too, and avoids a configure error when tests are disabled globally. Also print a useful error when gst_tester is not found from the gstreamer subproject. This broke in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/667 Part-of: 2020-06-09 15:18:43 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Update plugins cache 2020-06-10 10:43:42 +0200 Guillaume Desmottes * gst-libs/gst/audio/audio-format.h: audio: add missing space in GST_AUDIO_FORMATS_ALL Part-of: 2020-06-08 10:40:15 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Update plugins cache 2020-06-04 16:40:44 +0200 Guillaume Desmottes * gst-libs/gst/video/video-format.h: video: sort formats by quality Will ensure that we pick the "best" format when negotiating caps. Fix #649 Part-of: 2020-06-04 16:40:44 +0200 Guillaume Desmottes * gst-libs/gst/audio/audio-format.h: audio: sort formats by quality Will ensure that we pick the "best" format when negotiating caps. Fix #649 Part-of: 2020-06-05 15:26:58 +0200 Guillaume Desmottes * tests/check/elements/compositor.c: * tests/validate/videorate/change_rate_reverse_playback.validatetest: * tests/validate/videorate/change_rate_while_playing.validatetest: * tests/validate/videorate/check-rate-prop.meta: tests: enforce I420 format Tests are assuming video is I420 but are not actually enforcing it. Part-of: 2020-05-22 00:35:03 -0400 Thibault Saunier * gst/playback/gsturidecodebin3.c: uridecodebin3: Let decodebin do its stream selection if no one answers If no one answers our `select-stream` signal, uridecodebin3 should behave the same way as `decodebin3` and let decodebin do its own stream selection. Part-of: 2020-05-22 00:32:15 -0400 Thibault Saunier * gst/playback/gstdecodebin3.c: decodebin3: Avoid overriding explicit user selection In case the user set a list of streams to select or answer explicitly to all 'select-stream' event, we should respect his choice and not try to add a stream per type. Part-of: 2020-06-08 08:11:00 +0200 Edward Hervey * tests/check/elements/decodebin.c: tests: Avoid hang with decodebin test When adding elements dynamically to a pipeline one should never guess what the curren/target state is, and instead use `gst_element_sync_state_with_parent()`. Fixes racy hang when running within valgrind Part-of: 2020-06-06 20:22:28 +0900 Seungha Yang * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: playbin: Fix wrong AV element pair selection when rank is very large value If user set very high rank to an element (e.g., integer max), integer overflow can happen while multiplication operation Part-of: 2020-06-06 00:41:17 +0200 Mathieu Duponchelle * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gl/gstglalpha.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglstereomix.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideomixer.c: * ext/opus/gstopusenc.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/gsttheoraenc.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/compositor/compositor.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/rawparse/gstrawaudioparse.c: * gst/tcp/gstmultihandlesink.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-04 16:25:12 +0300 Sebastian Dröge * tests/check/libs/videoencoder.c: videoencoder: Add test for min-force-key-unit-interval property Part-of: 2020-06-04 15:19:18 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * tests/check/libs/videoencoder.c: videoencoder: Also don't request a new key-unit if we already got one after the requested running time Part-of: 2020-06-04 15:10:12 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Don't request another keyunit if another one is pending or we requested one for a future time already Part-of: 2020-06-03 21:46:38 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add min-force-key-unit-interval property This allows configuring the minimum interval between subsequent force-key-unit requests and prevents a big bitrate increase if a lot of key-units are requested. Part-of: 2020-06-03 20:49:12 +0300 Sebastian Dröge * tests/check/libs/videoencoder.c: videoencoder: Add test for correct force-keyunit event handling Part-of: 2020-06-03 20:26:33 +0300 Sebastian Dröge * tests/check/libs/videoencoder.c: videoencoder: Fix force-keyunit handling in test This now behaves according to the videoencoder API instead of some other signalling. Part-of: 2020-06-03 22:38:07 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: When pushing headers as part of a keyframe mark the first header as keyframe Part-of: 2020-06-03 20:17:06 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Handle all matching force-keyunit events at once Previously we only handled one event at a time, which could lead to the following two suboptimal situations: - frame 0 at 20ms, frame 1 at 40ms and two force-keyunit events at 10ms and 15ms. We would create a new keyframe for both of the frames. - 100 force-keyunit events with running-time NONE would cause all following 100 frames to be made into a keyframe. Part-of: 2020-06-03 19:59:03 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Sort force-keyunit-events by their running time That way we can more easily work with the whole list without iterating over all of the elements. Part-of: 2020-06-03 11:29:09 +0200 Edward Hervey * gst/playback/gsturidecodebin.c: uridecodebin: Dont link random pads When linking source pads to decodebin, make sure we use the *specified* new source pad and not some random one. This avoids ending up with source pads being unlinked. Main cause of random timeouts with rtsp change_state_intensive validate tests Part-of: 2020-06-04 10:41:13 +0200 Stéphane Cerveau * gst-libs/gst/video/video-hdr.c: video-hdr: fix memset warning Fix warning on fedora arm64 target Part-of: 2020-06-04 11:22:00 -0400 Nicolas Dufresne * gst-libs/gst/video/video-format.c: video: Fix NV12_64Z32 number of component This format has 3 components, just like NV12. Part-of: 2020-06-03 20:50:05 -0400 Thibault Saunier * gst-libs/gst/video/video-multiview.h: doc: Add a minimal GstVideoMultiviewFlagsSet documentation 2020-06-03 18:38:38 -0400 Thibault Saunier * docs/meson.build: doc: Require hotdoc >= 0.11.0 2020-05-27 16:00:48 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: docs: Update gst_plugins_cache.json 2020-05-29 02:43:59 +0200 Mathieu Duponchelle * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gl/gstglalpha.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglstereomix.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideomixer.c: * ext/opus/gstopusenc.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/gsttheoraenc.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/compositor/compositor.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/tcp/gstmultihandlesink.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types 2020-06-03 15:06:08 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Simplify header buffer metadata updating Instead of doing a shallow copy of the list just to call make_writable() on each buffer, do that inline in the same loop and modify the list contents. Part-of: 2020-06-03 14:37:00 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.h: video: Use GQueue instead of plain GList in a few places Also not optimal but at least simplifies the code a bit and doesn't require g_list_length() and g_list_append() in a few places. For 2.0 there are some more candidates to change but unfortunately they're currently part of the API. Part-of: 2020-06-02 16:56:44 +0300 Sebastian Dröge * gst-libs/gst/video/video-format.c: video-format: RGB16/15 are not 16 bit per component but only 5.333 and 5 Part-of: 2020-05-27 15:41:43 +0200 Guillaume Desmottes * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-info.h: * tests/check/libs/audio.c: audio: add gst_audio_make_raw_caps() More binding friendly version of GST_AUDIO_CAPS_MAKE(). Part-of: 2020-06-01 15:24:32 +0200 Guillaume Desmottes * gst-libs/gst/audio/audio-format.h: audio-format: remove empty space prefix from GST_AUDIO_FORMATS_ALL This space prevent deserialization using gst_value_deserialize(). Part-of: 2020-05-27 15:05:37 +0200 Guillaume Desmottes * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: audio-format: add gst_audio_formats_raw() The existing GST_AUDIO_FORMATS_ALL macro is not binding friendly. Part-of: 2020-05-27 15:41:43 +0200 Guillaume Desmottes * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * tests/check/libs/video.c: video: add gst_video_make_raw_caps() More binding friendly version of GST_VIDEO_CAPS_MAKE(). Part-of: 2020-05-27 15:05:37 +0200 Guillaume Desmottes * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video-format: add gst_video_formats_raw() The existing GST_VIDEO_FORMATS_ALL macro is not binding friendly. Part-of: 2020-05-29 19:08:51 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: glcontext/eagl: handle sending one message during shutdown gst_gl_window_quit() will attempt to send a message but will be called from GstGLContext's finalize handler and so the weak ref that backs gst_gl_window_get_context will return NULL as it has already been cleared. We need that context in send_message_async to decide whether to run the provided callback immediately or queue in GCD This is the equivalent commit for iOS as: 7f59cefafb1cd733cf527fb935b2cd32418fcbe2 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/618 Part-of: 2020-05-29 15:44:55 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglios_utils.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/meson.build: gl/eagl: don't access UIkit objects on the main thread This means we cannot access [view layer] or view.bounds from the OpenGL thread. This also means that we need to call the main thread when setting the window handle. However, we cannot perform that synchronously as that may deadlock with the application performing the set_window_handle() call. We need to defer the actual update and run it asynchronously and wait for the window handle update internally at each point it is needed. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/372 Part-of: 2020-05-29 14:12:38 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/ios: fix typo GS_GL -> GST_GL Part-of: 2020-05-29 16:21:11 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: * tests/validate/meson.build: * tests/validate/videorate/check-rate-prop.meta: * tests/validate/videorate/rate_0_5.validatetest: * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_0_5_with_decoder.validatetest: * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_2_0.validatetest: * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/rate_2_0_with_decoder.validatetest: * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-src-expected: videorate: Update QoS events taking into account our rate Otherwise there is a mismatch between the QoS values and what upstream would expect, leading to too much buffer dropping in video decoders in case rate < 1.0 or not enough buffer dropping in case rate > 1.0 Adding validate tests with and without decoders. Part-of: 2020-05-31 00:27:14 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * tests/validate/meson.build: * tests/validate/videorate/change_rate_reverse_playback.validatetest: * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/change_rate_while_playing.validatetest: * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-src-expected: videorate: Fix changing `rate` property during playback We need to take into account the base_ts to compute next_ts and it needs to be updated on rate change. This introduces `pending_rate` so that change rate is properly handled in the streaming thread in a safe way. Added tests Part-of: 2020-05-28 13:42:22 -0400 Thibault Saunier * tests/validate/meson.build: * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.variable_to_10fps.validatetest: * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/videorate-test.meta: tests:validate: Run all test using a simple fakesink `fakevideosink` is in -bad and thus not available here. Update the expectation files as video metas are not negotiated anymore. Part-of: 2020-05-29 11:39:57 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.h: libs: gl: silence gir compiler There were a couple complains of the gir compiler on these gstgl files. * Added namespace to public macros, even if they are helpers. * Removed a misused private tag Part-of: 2020-01-23 12:38:44 -0600 Michael Gruner * gst/videoscale/gstvideoscale.c: videoscale: reorder code to avoid indent missmatches Part-of: 2020-01-23 11:02:52 -0600 Michael Gruner * gst/videoscale/gstvideoscale.c: videoscale: transform size sensitive metas Currently, videoscale just drops all metas that have other tags besides video. However videoscale wont change the colorspace or the orientation of the video so metas tagged as such may be copied safely. Additionaly, given that videoscale will change the frame size, we invoke the meta transform implementation to give it the opportunity to scale accordingly. Part-of: 2020-01-22 22:30:11 +0900 Seungha Yang * tests/check/libs/audiosink.c: * tests/check/meson.build: tests: audiosink: Test class extension struct Test a vfunc which belongs to GstAudioSinkExtension struct. Part-of: 2020-01-22 00:14:14 +0900 Seungha Yang * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: audiosink: Keep baseclass extensible Add a structure for future extension. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/716 Part-of: 2020-05-27 15:11:17 +0200 uno20001 * gst/playback/gstdecodebin2.c: decodebin: only emit 'drained' signal when top chain is drained Without this, decodebin emits 'drained' multiple times which then causes (uri)playbin to emit 'about-to-finish' multiple times for for file types. Fixes #751 Part-of: 2020-05-27 19:59:56 +0300 Sebastian Dröge * tests/check/elements/audioresample.c: audioresample: Add new test that checks for downstream renegotiation This test always consumes 48kHz and outputs different sample rates based on downstream renegotiation. Previously this would produce completely wrong timestamps and not output all samples. Part-of: 2020-05-27 19:08:45 +0300 Sebastian Dröge * tests/check/elements/audioresample.c: audioresample: Fix up test_live_switch Actually check that we get back all samples, which we didn't before because no draining was happening. Also remove commented out 0.10 code and related comments. Part-of: 2020-05-26 22:51:06 +0300 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Drain resampler on discontinuities Otherwise we would lose the last few samples when resetting the resampler. Part-of: 2020-05-26 22:49:44 +0300 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Drain resampler and reset timestamp tracking on stream-start event too And also reset timestamp tracking on EOS events as more data might come afterwards with a new stream-start event. This keeps the code the same. Part-of: 2020-05-26 22:45:41 +0300 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Drain the resampler and reset timestamp tracking on caps changes Especially when changing the sample rate our timestamp tracking will be completely off, but even otherwise we would usually lose the last few samples if we don't drain here as the resampler gets reset if anything but the sample rate changes. This is usually not a problem as the first buffer after a caps event usually has the discont flag set, but can cause problems if - the caps event is followed by a segment event, which then causes draining according to the new sample rate - the caps were changed because of rengotiation due to a reconfigure event and there is not discontinuity from upstream In both cases we would output buffers with completely wrong timestamps. Part-of: 2020-05-08 11:19:24 +0200 Stéphane Cerveau * gst-libs/gst/video/video-anc.c: video-anc: init type before g_once_init_enter Part-of: 2020-05-08 11:03:52 +0200 Stéphane Cerveau * gst-libs/gst/video/video-hdr.c: video-hdr: fix typo fix typo in video_hdr_ascii_string_to_unsigned method name. Part-of: 2020-05-26 18:51:03 +0200 Niels De Graef * ext/gl/gstglimagesink.c: glimagesink: Correct signals gtkdoc Part-of: 2020-05-25 16:59:53 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: * tests/validate/meson.build: * tests/validate/videorate/reverse.10_to_1fps.validatetest: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.10_to_30fps.validatetest: * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.1_to_10fps.validatetest: * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.30fps.validatetest: * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.variable_to_10fps.validatetest: * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-src-expected: videorate: Fix buffer selection logic in reverse playback Stop comparing all timestamps from buffers that are before the segment with the segment.stop and compare with the actual end times. Comparing to segment.stop for all the buffers that where before the segment.stop was incorrect and leading to consuming wrong buffers and not respecting segment.stop, this is now properly tested. Expectations for `reverse.10_to_1fps.validatetest` have been fixed to take that into account and comparing the checksums of the sinkpad and srcpad expectations makes pretty clear how wrong that was. (we can see in the expectations that videotestsrc outputs an extra buffer with pts == segment.stop and this one is now properly dropped by videorate as bec7f4ad5ed4bb1abfb92db946e654338766562b aimed at doing) Part-of: 2020-05-25 16:29:15 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: videorate: Factor out a method for the`max-duplication-time` property Sensibly simplifying gst_video_rate_transform_ip Part-of: 2020-05-25 14:48:04 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: videorate: Use CLOCK_TIME_IS_VALID instead of checking CLOCK_TIME_NONE Making it more consistency with the rest of the code. Part-of: 2020-05-25 14:33:54 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: videorate: Factor out a method to reset mode Working on simplifying gst_video_rate_transform_ip Part-of: 2020-05-25 12:31:32 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: * tests/validate/meson.build: * tests/validate/videorate/10_to_1fps.validatetest: * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/reverse.10_to_1fps.validatetest: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected: * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected: * tests/validate/videorate/videorate-test.meta: videorate: Do not push an extra buffer on EOS when we are done pushing already There is no reason that when we have already pushed all the buffers in a segment we push a new one on EOS Part-of: 2020-05-22 23:24:55 -0400 Thibault Saunier * gst/audiotestsrc/gstaudiotestsrc.c: * meson_options.txt: * tests/check/meson.build: * tests/meson.build: * tests/validate/audiotestsrc/reverse.validatetest: * tests/validate/audiotestsrc/reverse/flow-expectations/log-asink-sink-expected: * tests/validate/meson.build: audiotestsrc: Fix the way we compute EOS in reverse playback In reverse playback we were not taking into account the current buffer samples to check if we had reached EOS which was leading to a buffer with PTS = CLOCK_TIME_NONE containing too many frames followed by a useless buffer with pts=0 duration=0, and a g_critical issue in gst_object_sync_values. Also add a validate based test case. Without that patch this is how the expectation fails: ``` diff --- log-asink-sink-expected 2020-05-22 23:22:42.654384579 -0400 +++ log-asink-sink-actual 2020-05-22 23:29:35.671586380 -0400 @@ -27,5 +27,6 @@ buffer: pts=0:00:00.058820861, due=0:00:00.023219955, flags=discont buffer: pts=0:00:00.035600907, due=0:00:00.023219954, flags=discont buffer: pts=0:00:00.012380952, due=0:00:00.023219955, flags=discont -buffer: pts=0:00:00.000000000, due=0:00:00.012380952, flags=discont +buffer: due=0:00:00.012380953, flags=discont +buffer: pts=0:00:00.000000000, flags=discont event eos: (no structure) ``` Part-of: 2020-05-13 15:28:33 +0200 Guillaume Desmottes * gst-libs/gst/gl/egl/gsteglimage.c: gl: egl: fix gtk-doc doc start code Part-of: 2020-05-13 14:50:22 +0200 Guillaume Desmottes * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: workaround gir warning The gir generator wrongly assume that the vfunc GstGLFilterClass.filter() and the method gst_gl_filter_filter_texture() are related. As a result it complains about not matching argument names. Workaround this by naming both of their arguments input and output. Part-of: 2020-05-13 10:08:25 +0200 Guillaume Desmottes * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: gl: egl: add missing gir annotations Part-of: 2020-05-13 10:13:04 +0200 Guillaume Desmottes * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl: x11: skip gst_gl_display_x11_new_with_display() from gir The X11 Display type is not usable in gir. Part-of: 2019-01-25 22:48:17 +0100 Nicola Murino * gst-libs/gst/riff/riff-media.c: riff-media: add H.265 Closes #359 Part-of: 2020-05-05 17:39:04 +0200 Mathieu Duponchelle * ext/gl/gstglcolorscale.c: glcolorscale: fix documentation Part-of: 2020-05-14 14:00:22 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstgldisplay_egl.c: gl/display/egl: ensure debug category is initialized Part-of: 2020-05-12 04:58:24 +0530 Nirbheek Chauhan * meson.build: meson: Pass native: false to add_languages() This is needed for cross-compiling without a build machine compiler available. The option was added in 0.54, but we only need this in Cerbero and it doesn't affect older versions so it should be ok. Will only cause a spurious warning. Part-of: 2020-05-09 07:31:04 +0200 Edward Hervey * tests/check/elements/glfilter.c: * tests/check/elements/glmixer.c: check: verify gst_gl_display_add_context() As is done almost everywhere else. Doesn't cost anything. CID #1462817 Part-of: 2020-05-08 15:10:17 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: tests/gl: add test for GL context removal Tests functionality fixed by: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/654 Part-of: 2020-04-27 09:57:30 -0400 Thibault Saunier * gst/videorate/gstvideorate.c: videorate: Fix buffer timestamp underflow in reverse playback And fix reverse playback buffer duration computation as in reverse playback, buffer duration is prev_buffer.pts - buffer.pts not pts - next_pts (buffers are displayed from buffer.pts + buffer.duration for a duration of buffers.duration). This is now tested with the `validate.test.clock_sync.videorate.*` tests in the default integration testsuite where we check the exact data flow and the synchronization on the clock behaviour with a TestClock. Part-of: 2020-04-23 20:35:39 -0400 Thibault Saunier * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Fix buffer duration in reverse playback In reverse playback, buffers have to be displayed at buffer.stop running time, meaning: buffer.pts + buffer.duration = prev_buffer.pts => buffer.duration = prev_buffer.pts - buffer.pts We were setting buffer.duration = next_buffer.pts - buffer.pts which is not correct. Part-of: 2020-05-06 16:13:11 +0300 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Fix context leak when removing a context from the display Part-of: 2020-05-06 09:26:35 +0200 Edward Hervey * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Fix list iteration We were never moving past the first entry it seems... CID #1461275 Part-of: 2020-02-27 00:05:52 +0000 Tim-Philipp Müller * tests/check/meson.build: tests: fix meson test env setup to make sure we use the right gst-plugin-scanner If core is built as a subproject (e.g. as in gst-build), make sure to use the gst-plugin-scanner from the built subproject. Without this, gstreamer might accidentally use the gst-plugin-scanner from the install prefix if that exists, which in turn might drag in gst library versions we didn't mean to drag in. Those gst library versions might then be older than what our current build needs, and might cause our newly-built plugins to get blacklisted in the test registry because they rely on a symbol that the wrongly-pulled in gst lib doesn't have. This should fix running of unit tests in gst-build when invoking meson test or ninja test from outside the devenv for the case where there is an older or different-version gst-plugin-scanner installed in the install prefix. In case no gst-plugin-scanner is installed in the install prefix, this will fix "GStreamer-WARNING: External plugin loader failed. This most likely means that the plugin loader helper binary was not found or could not be run. You might need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual." warnings when running the unit tests. In the case where we find GStreamer core via pkg-config we use a newly-added pkg-config var "pluginscannerdir" to get the right directory. This has the benefit of working transparently for both installed and uninstalled pkg-config files/setups. Part-of: 2020-02-26 23:46:57 +0000 Tim-Philipp Müller * tests/check/meson.build: tests: don't look for plugins in -base installdir for tests -base plugins will always be found in the build directory, and core plugins will be found either also via the build directory (if both core and -base are a subproject) or by getting the pluginsdir via pkg-config if core is installed. The GST_PLUGIN_LOADING_WHITELIST env var will make sure we only pick up plugins from core/base and base plugins only from the builddir. There is no reason to look for -base plugins in the install dir. Part-of: 2020-03-12 09:38:58 +0200 Vivia Nikolaidou * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * gst/tcp/gsttcpserversrc.h: * gst/tcp/gsttcpsrcstats.c: * gst/tcp/gsttcpsrcstats.h: * gst/tcp/meson.build: tcpserversrc: Add stats property Like in tcpclientsrc Part-of: 2020-05-06 11:52:20 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Check sinkpad existence before retrieving caps Otherwise we would error out without releasing the caps first. Part-of: 2020-05-06 11:44:39 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Ensure that we have fixed, non-empty caps before passing passing to is_subtitle_caps() Part-of: 2020-05-06 11:42:05 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Try to get negotiated caps first on pad-added and only then fall back to a caps query The negotiated caps will be more accurate and are fixed caps in any case. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/498 Part-of: 2020-05-05 17:17:57 +0200 Edward Hervey * ext/gl/gstgloverlaycompositorelement.c: gloverlaycompositor: Don't leak caps feature Only copy it if we really are going to modify and use it CID #1439873 Part-of: 2020-05-01 11:27:46 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't crash when setting pad properties after the aggregator was finalized The application might still have a strong reference to a pad and change properties, which should work without crashing. Part-of: 2020-05-01 10:08:40 +0300 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/video/video-anc.h: Add missing colons to Since markers in the docs Part-of: 2020-04-30 17:59:45 +0100 Philippe Normand * gst-libs/gst/gl/gstglbasesrc.c: * gst-libs/gst/gl/gstglbasesrc.h: gl: Add since tags for new glbasesrc base class Part-of: 2020-04-30 17:59:24 +0100 Philippe Normand * gst-libs/gst/gl/gstglwindow.c: gst/gl: Add documentation for new scroll API Part-of: 2020-04-30 17:58:43 +0100 Philippe Normand * gst-libs/gst/video/navigation.h: navigation: Add since tag for new API Part-of: 2020-04-28 21:27:36 +0800 He Junyan * tests/check/libs/pbutils.c: test: pbutils: Add check for high throughput scc. Part-of: 2020-04-28 21:14:07 +0800 He Junyan * gst-libs/gst/pbutils/codec-utils.c: libs: pbutils: Add High throughput scc extensions profile idc(IDC 11) It is compitable with scc and we can use scc's function to identify it. Part-of: 2020-04-28 19:10:05 +0800 He Junyan * gst-libs/gst/pbutils/codec-utils.c: libs: pbutils: select extension profile by profile idc. the old manner does not consider the profile idc. The profile idc should play an more important role in recognizing the profile than the other information. And there is no need to mix profiles of different extensions together to find the closest profile when the bits stream is not standard, different extensions support different features and should not be mixed. The correct way should be recognize the extension category by profile idc firstly, and then find the closest profile. Part-of: 2020-04-28 18:17:30 +0800 He Junyan * gst-libs/gst/pbutils/codec-utils.c: libs: pbutils: rename the GstH265FormatRangeExtensionProfile. GstH265FormatRangeExtensionProfile declares the common bits used for not only format range extensions profiles, but also for several different h265 extension profiles, such as high throughput, screen content coding extensions, etc. And So the old name is not proper. Part-of: 2020-04-27 09:40:23 +0200 Guillaume Desmottes * gst-libs/gst/pbutils/codec-utils.c: opusdec: prevent 'channels=0' in caps gst_opus_channel_positions() should fail if caps contains "channels=0". Prevent index underflow when indexing gst_opus_channel_positions[] (CID 1462590). Part-of: 2020-04-24 22:40:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasesrc.c: glbasesrc: avoid deadlock when querying for OpenGL context Continuation of: a4e49ba8c9657e2230aad32b6988bbda7a755440 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/642 Part-of: 2020-04-24 22:38:32 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: fix application context querying between elements Fixes error introduced by: a4e49ba8c9657e2230aad32b6988bbda7a755440 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/642 Using the application GL context as the local GL context is not going to work very well. Part-of: 2020-04-23 10:17:31 +0200 Guillaume Desmottes * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: add 'stats' property Allow users to retrieve the number of samples, and their duration, generated using PLC. Part-of: 2020-04-24 14:44:46 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasesrc.c: * tests/check/elements/glmixer.c: * tests/check/meson.build: gl: avoid deadlock querying for OpenGL context If there are two elements and threads attempting to query each other for an OpenGL context. The locking may result in a deadlock. We need to unlock each element's context_lock when querying another element for the OpenGL context in order to allow any other element to take the lock when the other element is querying for an OpenGL context. Part-of: 2020-04-21 20:09:41 +1000 Matthew Waters * tests/check/elements/glstereo.c: * tests/check/meson.build: tests: add glviewconvert users integration unit test Catch all smoke test for ensuring a basic pipeline can negotiate successfully. Part-of: 2020-04-21 22:56:49 +1000 Jan Schmidt * ext/pango/gsttextrender.c: textrender: Don't calculate caps on every buffer Only renegotiate with downstream when the srcpad has a pending reconfigure flag, instead of querying, fixating and sending caps for every buffer. Part-of: 2020-04-19 18:29:18 +0300 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: Register an init function for Bar meta The init function is mandatory and we keep around uninitialized memory otherwise. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/747 2020-04-10 14:08:15 +1000 Matthew Waters * ext/gl/gstglmixer.c: glvideomixer: fix black output after display changes Partial revert of 55e80b550e4ad02aaf44b30ec8b03da9ee485ac6 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/743 2020-04-10 14:05:08 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: intersect with template caps when updating Downstream may provide extra things when we ask it for caps that we may need to remove. Fixes the following pipeline warning: gltestsrc ! glvideomixerelement ! glimagesinkelement ** (gst-launch-1.0:908581): WARNING **: 13:53:28.518: glvideomixer0: update_src_caps returned caps which are not a real subset of the filter caps 2020-04-10 22:45:26 +1000 Jan Schmidt * gst/typefind/gsttypefindfunctions.c: typefind: Consider MPEG-PS PSM to be a PES type Include the Program Stream Map packet type 0xBC in the set of packets we treat as PES. This fixes typefinding on MPEG-PS streams with PSM, where the PSM would previously be considered a loss-of-sync and cause the typefind to require more data. 2019-08-12 10:41:31 +0100 Philippe Normand * gst/playback/gsturidecodebin3.c: uridecodebin3: Activate suburi playback item The suburi playback item has to be activated after the main playback item so that playsink can properly enable text rendering. Fixes #451 2020-04-10 04:24:03 +1000 Jan Schmidt * ext/pango/gsttextrender.c: textrender: Fix AYUV output. Fix the check for whether the element is operating in ARGB mode. It was incorrectly checking if the output format has an alpha channel, which is true for both ARGB and AYUV, leading to the element incorrectly outputting ARGB values into AYUV caps. 2020-04-08 15:26:23 +0800 He Junyan * gst-libs/gst/gl/gstgldisplay.c: libs: gl: Fix a context leak when display_create_context failed 2020-04-03 10:36:02 -0300 Thibault Saunier * tools/gst-discoverer.c: discoverer: Enhance printed information when not verbose Basically print information about media tracks making without tags nor buffers in caps making still quite small but containing all information infos. Stop making 'Topology' section and just print the info before: ``` Topology: container: MPEG-2 Transport Stream audio: AC-3 (ATSC A/52) video: H.264 (High Profile) Properties: Duration: 0:00:05.512394259 Seekable: yes Live: no Tags: audio codec: AC-3 (ATSC A/52) bitrate: 192000 video codec: H.264 (High Profile) minimum bitrate: 12947 maximum bitrate: 12947 ``` After: ``` Properties: Duration: 0:00:05.512394259 Seekable: yes Live: no container: MPEG-2 Transport Stream audio: AC-3 (ATSC A/52) Stream ID: b076403d73e0c5fc13985832e8d585945603993437ba14b0799f422f9495e8ef:1/00001100 Language: Channels: 2 (front-left, front-right) Sample rate: 48000 Depth: 32 Bitrate: 192000 Max bitrate: 0 video: H.264 (High Profile) Stream ID: b076403d73e0c5fc13985832e8d585945603993437ba14b0799f422f9495e8ef:1/00001011 Width: 1920 Height: 1080 Depth: 24 Frame rate: 30000/1001 Pixel aspect ratio: 1/1 Interlaced: true Bitrate: 10363396 Max bitrate: 12947 ``` 2020-04-06 15:20:39 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Fix otio typefinder to actually detect otio files The string "\"OTIO_SCHEMA\":" is 14 characters and not 15. Checking for 15 characters would also check for the final '\0', which does not exist in any otio file as the string is the key of a JSON map. 2020-04-06 15:14:41 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Fix otio typefinder detecting anything with curly braces at the start memcmp() returns 0 (aka FALSE) on match and a difference otherwise. Previously the typefinder was matching on anything but otio files that happened to have some curly braces in the beginning of the file. Fixes a false positive with a MOV file. 2020-03-20 10:58:19 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Add EncodingProfile serialization support 2020-03-19 17:02:57 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Support for variable framerate in the encoding serialization 2020-04-02 23:30:57 +1100 Jan Schmidt * gst-libs/gst/video/video-hdr.h: video-hdr: Fix a docs typo (x -> y) 2018-11-30 23:10:55 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Handle instant-rate-change event When receiving an instant-rate-change event, store the updated seek flags and replace the flags in any input segments with them to allow for instant switching between trickmodes and not. 2018-11-30 22:56:11 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Handle instant-rate-change event When receiving an instant-rate-change event, store the updated seek flags and replace the flags in any input segments with them to allow for instant switching between trickmodes and not. 2018-09-29 00:49:46 +1000 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Handle an extra case of buffers being out of segment It's possible that a buffer might be within the segment proper, but not within the "valid" part we're playing, which is only things after the 'offset' part of the segment. In that case, the running-times of the buffer-start and buffer-stop will be GST_CLOCK_TIME_NONE, and we'd better not schedule playback that far in the future. 2018-08-21 02:21:23 +1000 Jan Schmidt * tools/gst-play.c: gst-play: Add -i parameter for instant rate changes Add a command line flag that enables use of the instant rate changes flag when doing rate changes. 2018-08-18 03:37:09 +1000 Jan Schmidt * tests/examples/seek/instant-rate-change.c: * tests/examples/seek/meson.build: tests/examples/seek/instant-rate-change: Add example app Add an example app to exercise instant rate changes in a few scenarios. Currently it deadlocks a lot sending rate changes to paused pipelines. 2018-06-18 08:51:05 +0300 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Add support for start_type=stop_type=NONE seeks 2018-05-25 11:01:58 +0300 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Add support for sending instant-rate-change seeks 2020-04-01 17:47:04 +0200 Stéphane Cerveau * gst-libs/gst/video/gstvideoencoder.c: videoencoder: subclass 'set_format' should be optional Aligns documentation with the code to make the subclass 'set_format' call optional. 2020-03-10 20:36:16 +0900 Seungha Yang * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: * tests/check/libs/video.c: video-hdr: Rework for GstVideoMasteringDisplayInfo and GstVideoContentLightLevel struct This commit modifies GstVideoMasteringDisplayInfo and GstVideoContentLightLevel structs so that each value is to be more like hdr_metadata_infoframe struct of linux drm header and DXGI_HDR_METADATA_HDR10 struct of Windows. So each value is no more fraction but normalized one as per CTA 861.G spec. Also the unit of each value will be consistent with H.264, H.265 specifications, hdr_metadata_infoframe struct for linux and DXGI_HDR_METADATA_HDR10 struct for Windows. 2020-04-01 20:05:06 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix gir warning about invalid doc comment [38/1301] Generating GstVideo-1.0.gir with a custom command. ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.c:231: Error: GstVideo: identifier not found on the first line: * ^ 2020-04-01 13:55:50 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for Y412_LE / Y412_BE format Reuse Y410 code for Y412_LE / Y412_BE except gl format. The gl format is RGBA16 for Y412_LE / Y412_BE. Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=Y412_LE ! glimagesink 2020-03-30 14:37:26 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for Y212_LE / Y212_BE format Because the color value is stored in MSB, so we can reuse the Y210 code for P012_LE / P012_BE Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=Y212_LE ! glimagesink 2020-03-27 02:48:39 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: gstvideoaggregator: expose max-last-buffer-repeat property on pads This can be used to have compositor display either the background or a stream on a lower zorder after a live input stream freezes for a certain amount of time, for example because of network issues. 2020-03-20 19:09:17 +0100 Mathieu Duponchelle * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * tests/check/elements/subparse.c: subparse: convert from pango-markup to utf8 .. when downstream requires it 2020-03-12 10:27:34 +0800 Haihao Xiang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add support for Y412 format Y412 is a packed 12 bits 4:4:4:4 format in the order U, Y, V, A, 2 bytes per component with the color value stored in the 12 most significant bits Refer to https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L182 for the LE variant 2020-03-11 10:58:00 +0800 Haihao Xiang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add support for Y212 format Y212 is a packed 12 bits 4:2:2 format in the order Y, U, Y, V, 2 bytes per component with the color value stored in the 12 most significant bits Refer to https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L174 for the LE variant 2020-03-12 15:18:22 +0200 Sebastian Dröge * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-overlay-composition.h: video-blend: Add support for blending on top of 16 bit per component formats With this we can support every currently supported video format for blending. 2020-03-26 13:51:24 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glcontext/cocoa: handle sending one message during shutdown gst_gl_window_quit() will attempt to send a message but will be called from GstGLContext's finalize handler and so the weak ref that backs gst_gl_window_get_context will return NULL as it has already been cleared. We need that context in send_message_async to decide whether to run the provided callback immediately or queue in GCD 2020-03-26 13:50:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: add context is valid precondition to get_thread() 2020-03-26 13:50:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: remove unused private alive variable 2020-03-26 13:46:56 +0800 Haihao Xiang * gst-libs/gst/gl/gstglupload.c: glupload: fix segfault Without this fix, it is possible that outbuf is not initialized, which will result in segfault when call gst_buffer_replace (&outbuf, NULL). In addition, the patch fixes potential memory leak in restart path. The segfault can be reproduced by the pipeline below: GST_GL_PLATFORM=egl \ gst-launch-1.0 videotestsrc ! msdkh265enc ! msdkh265dec ! \ 'video/x-raw(memory:DMABuf)' ! glimagesink 2020-03-24 12:39:50 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: add support for P012_LE / P012_BE format Because the color value is stored in MSB, so we can reuse the P016_LE / P016_BE code for P012_LE / P012_BE 2020-03-09 10:21:53 +0000 Chris Lord * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage_private.h: * gst-libs/gst/gl/gstglupload.c: glupload: Fix fallback from direct dmabuf to dmabuf upload method In the situation that the direct dmabuf path is chosen, but with an unsupported texture format, this causes accept to fail rather than continue and fail at the upload stage. It is also possibly necessary to reconfigure after falling back from direct to non-direct dmabuf upload paths. 2020-03-23 18:42:19 +0900 Seungha Yang * gst/videorate/gstvideorate.c: videorate: Signalling reconfigure to upstream whenever updating downstream caps Previously configured bufferpool can be expired/inactivate by the updated caps. Therefore new reconfigure event should be signalled in order to do allocation query dancing between upstream and downstream again. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/730 2020-03-14 20:22:50 +0100 Loïc Minier * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils.pc.in: pkgconfig: fix missing gst-tag Requires Promote deps gstreamer-tag to Requires for pbutils and add missing gstreamer-tag Requires for gst-audio. Uninstalled builds would fail with: stage/usr/local/lib/x86_64-linux-gnu/libgstpbutils-1.0.so: undefined reference to `gst_tag_list_to_vorbiscomment_buffer' [...] stage/usr/local/lib/x86_64-linux-gnu/libgstaudio-1.0.so: undefined reference to `gst_tag_register_musicbrainz_tags' 2020-03-14 19:42:24 +0100 Loïc Minier * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp.pc.in: pkgconfig: add missing gst-rtp dep to gst-sdp Uninstalled builds using rtp would fail with: stage/usr/local/lib/x86_64-linux-gnu/libgstsdp-1.0.so: undefined reference to `gst_rtp_payload_info_for_pt' 2020-03-21 14:03:44 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix documentation Fix list indentation, othewise it is interpreted as verbatim. 2020-03-17 18:40:26 +0100 Niels De Graef * gst-libs/gst/video/navigation.c: navigation: Use G_DEFINE_INTERFACE 2020-03-17 18:20:59 +0100 Niels De Graef * gst-libs/gst/audio/streamvolume.h: streamvolume: Use G_DECLARE_INTERFACE 2020-03-17 17:51:36 +0100 Niels De Graef * gst-libs/gst/allocators/gstphysmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: gstphysmemory: Use G_DECLARE_INTERFACE 2020-03-17 17:47:47 +0100 Niels De Graef * gst-libs/gst/pbutils/gstaudiovisualizer.h: audiovisualizer: Add support for g_autoptr() Ideally, we would use something like `G_DECLARE_DERIVABLE_TYPE`, but that would break API. 2020-02-20 17:25:19 +0100 Miguel Paris * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: rtpbuffer: add_extension_onebyte_header: fix the proper wordlen The wordlen ("length") MUST represent the total "number of 32-bit words in the extension, excluding the four-octet extension header" (rfc3550). There are cases where already existent padding is reused for adding the new extension. So the new wordlen should be updated if the new added extension makes it to increase. 2019-12-13 16:06:44 +0100 Miguel Paris * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: get_onebyte_header_end_offset: allow 0 offset There are some cases where the full extension data could be padding. In order to make the GstRtpBuffer robust enough, this change supports this case. 2020-02-10 18:17:42 +0000 Philippe Normand * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: Mouse events handling 2020-02-10 18:05:01 +0000 Philippe Normand * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: gl/navigation: Scroll events dispatch support 2020-02-10 17:55:24 +0000 Philippe Normand * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * tests/check/libs/navigation.c: navigation: Mouse scroll events support This patch introduces a new API to send and parse mouse scroll events. Mouse event coordinates are sent relative to the display space of the related output area. This is usually the size in pixels of the window associated with the element implementing the GstNavigation interface. 2020-03-18 15:38:25 +0100 Guillaume Desmottes * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: annotate @buf in finish_frame methods 2020-02-27 17:52:20 +0800 Haihao Xiang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add support for P012 format P012 is a semi-planar 4:2:0 format, 2bytes per component with the value stored in the 12 most significant bits 2020-03-12 13:32:23 +0100 Niels De Graef * gst/volume/gstvolume.h: volume: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:31:22 +0100 Niels De Graef * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:29:22 +0100 Niels De Graef * gst/videoscale/gstvideoscale.h: videoscale: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:27:40 +0100 Niels De Graef * gst/videorate/gstvideorate.h: videorate: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:25:47 +0100 Niels De Graef * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: videoconvert: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:23:36 +0100 Niels De Graef * gst/subparse/gstssaparse.h: * gst/subparse/gstsubparse.h: subparse: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:20:51 +0100 Niels De Graef * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedaudioparse.h: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstunalignedvideoparse.h: rawparse: Use G_DECLARE_FINAL_TYPE 2020-03-12 13:20:31 +0100 Niels De Graef * gst/overlaycomposition/gstoverlaycomposition.h: overlaycomposition: Use G_DECLARE_FINAL_TYPE 2020-03-12 08:02:02 +0100 Niels De Graef * gst/gio/gstgiobasesink.h: * gst/gio/gstgiobasesrc.h: * gst/gio/gstgiosink.h: * gst/gio/gstgiosrc.h: * gst/gio/gstgiostreamsink.h: * gst/gio/gstgiostreamsrc.h: gio: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:55:52 +0100 Niels De Graef * gst/encoding/gstsmartencoder.h: * gst/encoding/gststreamcombiner.h: * gst/encoding/gststreamcombinerpad.h: * gst/encoding/gststreamsplitter.h: encoding: Use G_DECLARE_FINAL_TYPE Note that we didn't do it for encodebin, as it has a class struct. We _could_ techincally use `G_DECLARE_DERIVABLE_TYPE()` for that one, but that would mean also using a private struct, which is even more work for no gain. 2020-03-12 07:51:24 +0100 Niels De Graef * gst/adder/gstadder.h: adder: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:49:45 +0100 Niels De Graef * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/plugin.c: * gst/audioconvert/plugin.h: audioconvert: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:46:47 +0100 Niels De Graef * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.h: audiomixer: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:44:28 +0100 Niels De Graef * gst/audiorate/gstaudiorate.h: audiorate: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:42:52 +0100 Niels De Graef * gst/audioresample/gstaudioresample.h: audioresample: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:41:16 +0100 Niels De Graef * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: Use G_DECLARE_FINAL_TYPE 2020-03-12 07:39:09 +0100 Niels De Graef * gst/compositor/compositor.h: compositor: Use G_DECLARE_FINAL_TYPE 2020-03-14 14:42:12 +0100 Niels De Graef * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/video/gstvideoaggregator.h: *aggregator: Add g_autoptr support for *ConvertPad 2020-03-09 15:26:42 +0100 Tobias Ronge * gst-libs/gst/rtp/gstrtpbasepayload.c: gstrtpbasepayloader: Add property for scaling RTP timestamp This patch introduces a property which, if set to FALSE, prevents RTP basepayloader from scaling the RTP time when a segment's rate is not equal to 1.0. The specification is ambiguous on this subject and some clients expect the timestamps not to be scaled. 2020-03-16 15:32:47 +1100 Matthew Waters * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: constify tc argument to add_video_time_meta() We don't modify the argument. 2019-12-16 19:49:09 +0100 Peter Seiderer * gst-libs/gst/gl/meson.build: * meson_options.txt: meson: add window system egl 2020-03-12 13:44:10 +0530 Guillaume Desmottes * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: remove documentation link on GTimeVal Looks like it's been removed from glib.devhelp2 on Fedora 31. Fix #508 2020-03-05 12:29:49 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: gl/wayland: use wayland's roundtrip_queue() There's no need to roll our own anymore 2020-03-11 01:01:34 +0100 Mathieu Duponchelle * gst/subparse/gstsubparse.c: subparse: accept WebVTT timestamps without an hour component https://www.w3.org/TR/webvtt1/#webvtt-timestamp mm:ss,000 is a valid WebVTT timestamp 2020-03-09 20:16:47 +0200 Sebastian Dröge * gst/compositor/blend.c: compositor: Create a square checkerboard for UYVY/YUY2/YVYU too Previously the "squares" were twice as wide. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/732 2020-03-09 20:12:12 +0200 Sebastian Dröge * gst/compositor/blend.c: * gst/compositor/blend.h: compositor: Define a separate checker fill function for BGRx/RGBx than for xBGR/xRGB Otherwise we'll create a cyan or yellow checkerboard. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/736 2020-03-03 15:19:21 +0200 Vivia Nikolaidou * gst/tcp/gsttcpclientsrc.c: * meson.build: tcpclientsrc: Fix compilation on FreeBSD The members of the tcp_info struct are prefixed with a double underscore, as reported in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/584#note_423487 2020-03-06 00:03:49 +0100 Philipp Zabel * gst-libs/gst/gl/gstglupload.c: glupload: dmabuf: only accept uploads to external-oes if supported by the context This keeps the DirectDmabufExternal uploader from accepting buffers if texture-target=external-oes is not supported by the GL context. 2019-11-28 17:31:57 +0100 Edward Hervey * ext/gl/gstgloverlaycompositorelement.c: gloverlay: Fix various issues in allocation handling * A copy-paste error was getting the information from the wrong query * The 'allocation_meta' GstStructure was being leaked * No check was done on whether the query existed (to try to set the resulting allocation meta on) CID: 1439872 CID: 1439873 CID: 1439874 CID: 1439875 CID: 1439876 CID: 1439877 2020-03-03 17:07:24 +0100 Peter Seiderer * tools/meson.build: meson: static linkig of tools needs gmodule_dep Add gmodule_dep (analog to gstreamer/tools/meson.build). Fixes: .../bin/ld: .../usr/lib/libgstreamer-1.0.a(gstplugin.c.o): in function `gst_plugin_register_func': gstplugin.c:(.text+0x3bc): undefined reference to `g_module_make_resident' .../bin/ld: .../usr/lib/libgstreamer-1.0.a(gstplugin.c.o): in function `_priv_gst_plugin_load_file_for_registry': gstplugin.c:(.text+0x1228): undefined reference to `g_module_supported' .../bin/ld: gstplugin.c:(.text+0x126c): undefined reference to `g_module_open' .../bin/ld: gstplugin.c:(.text+0x1368): undefined reference to `g_module_symbol' .../bin/ld: gstplugin.c:(.text+0x1494): undefined reference to `g_module_supported' .../bin/ld: gstplugin.c:(.text+0x17f4): undefined reference to `g_module_close' .../bin/ld: gstplugin.c:(.text+0x1a2c): undefined reference to `g_module_error' 2020-03-03 11:53:53 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland_private.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: gl/wayland: use a proxy wrapper for the wl_display This allows us to remove races when setting the wl_queue on wayland objects with wl_proxy_set_queue() as each created object is created with the queue already set. We can also move all our initilization code into the window as we can retrieve all wayland objects from each window instance. This removes a possible race when integrating with external API's as we would always attempt to immediately retrieve a small set of wayland objects. That is no longer the case with the objects from each window instance. 2020-03-03 11:43:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: use gst_object_unref/ref functions Allows better visibility into ref/unref points with the leaks tracer 2020-03-03 11:42:11 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: fix xdg shell close notification Don't segfault by not calling the appropriate callback that destroys resources in the correct order. 2020-02-12 12:44:54 +1100 Matthew Waters * ext/gl/gstglstereomix.c: glstereomix: support gl display changes 2020-02-05 12:26:54 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * tests/check/elements/glfilter.c: * tests/check/meson.build: glbasefilter: add support for changing the display Each element will remove its usage of the old display and context and try to retrieve a new GL context. 2020-02-04 14:19:21 +1100 Matthew Waters * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: glstereosplit: support gl display changes 2020-02-04 14:06:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasesrc.c: glbasesrc: add support for changing display's 2020-02-04 14:04:21 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add support removing a context from the internal list 2020-02-04 13:58:06 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl/mixer: support GstGLDisplay changes 2020-02-18 13:46:08 +0100 Philipp Zabel * gst-libs/gst/gl/gstglupload.c: glupload: dmabuf: add DirectDmabufExternal uploader Automatic negotiation of texture-target=external-oes does not work without separating the external-oes support out of the DirectDmabuf uploader into a separate DirectDmabufExternal uploader. 2020-02-24 16:38:56 +0100 Philipp Zabel * gst-libs/gst/gl/gstglupload.c: glupload: fix transform_caps NULL pointer dereference gst_gl_upload_transform_caps() is missing a NULL pointer check in case the current upload method's transform_caps returns a NULL pointer. In the following loop over all upload methods, NULL pointer return values are already handled correctly. 2020-02-12 18:25:54 +0100 Philipp Zabel * gst-libs/gst/gl/gstglupload.c: glupload: dmabuf: support direct upload into external-oes textures Some drivers support directly importing DMA buffers in some formats into external-oes textures only, for example because the hardware contains native YUV samplers. Note that in these cases colorimetry can only be passed as hints and there is no feedback whether the driver supports the required YUV encoding matrix and quantization range. 2020-02-13 10:28:40 +0100 Philipp Zabel * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl: support direct dmabuf import with external-oes only formats Allow creating EGL images from DMA buffers in formats that the driver only supports for the external-oes texture target. Pass the intended texture target to gst_egl_image_from_dmabuf_direct so that _gst_egl_image_check_dmabuf_direct can decide whether to create an EGL image for a format that can only be targeted at external-oes textures by the driver. Allow creating GstGLMemoryEGL objects from these DMA buffers. 2020-03-02 19:35:16 +1100 Matthew Waters * gst-libs/gst/gl/gstglquery.c: glquery: fix a possible unintialized value A GL driver may not fill the resulting value so initialize it to 0 ourselves. 2020-02-26 14:33:16 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl/context/glx: dump GLXFBConfig information to debug logs 2020-02-24 16:44:12 +0200 Vivia Nikolaidou * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpclientsrc.h: * meson.build: tcpclientsrc: Expose connection stats as property Unfortunately the OS takes care of bad connections for us, so we can't get the stats in a platform-independent way. Count total bytes received as well, platform-independently. 2020-02-10 10:29:25 +0530 Guillaume Desmottes * gst-libs/gst/video/video-info.h: video-info: fix typo in doc 2020-02-07 11:18:24 +0530 Guillaume Desmottes * gst-libs/gst/video/video-frame.h: * tests/check/libs/video.c: video: fix GST_VIDEO_FRAME_IS_BOTTOM_FIELD() GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD is a subset of GST_VIDEO_FRAME_FLAG_TOP_FIELD so needs to be checked accordingly. Fix #726 2020-02-06 14:35:47 +0530 Guillaume Desmottes * gst-libs/gst/video/video-frame.h: * tests/check/libs/video.c: video: add macros checking for GST_VIDEO_BUFFER_FLAG_TOP/BOTTOM_FIELD flags The GST_VIDEO_BUFFER_FLAG_TOP_FIELD flag is a superset of GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD as they are defined using other flags. As a result we can't use GST_BUFFER_FLAG_IS_SET() to check for those flags. 2020-02-06 09:52:31 +0100 Stéphane Cerveau * gst-libs/gst/video/gstvideoencoder.c: videoencoder: protect the use of num_subframes change stream lock location to protect the use of frame->abidata.ABI.num_subframes 2020-02-05 02:58:14 -0800 Devarsh Thakkar * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Release stream lock in finish_subframe before pad_push Derived from 780d635dadc0723e39a8ba90cfe0903a2de346fd for https://bugzilla.gnome.org/show_bug.cgi?id=715192 which was for finish_frame. 2020-02-18 20:36:38 +0900 Seungha Yang * gst-libs/gst/gl/meson.build: meson: gl: Update to support when egl and win32 window system are explicitly requested 2020-02-18 20:09:19 +0900 Seungha Yang * gst-libs/gst/gl/win32/gstglwindow_win32.c: glwindow/win32: Accept both win32 and egl display EGL would be the case where we use ANGLE. 2020-02-18 19:40:34 +0900 Seungha Yang * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/meson.build: glcontext: egl: Fix build with win32 window system 2020-02-18 19:33:18 +0900 Seungha Yang * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wgl/gstglcontext_wgl.c: * gst-libs/gst/gl/wgl/gstglcontext_wgl.h: gl: Decouple win32 window and wgl context With ANGLE, win32 window can be used with gles and egl 2020-02-18 13:03:00 +0900 Seungha Yang * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: glcontext/egl: Fix build with upstream ANGLE ANGLE_surface_d3d_render_to_back_buffer extension is only available with Microsoft fork of ANGLE. Note that Microsoft's ANGLE repository has been deprecated. 2020-02-13 21:33:11 +0900 Seungha Yang * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/window/win32: Handle mouse and key events This is at least useful for the gst-play-1.0 use case. 2020-02-15 01:19:29 +0800 He Junyan * gst-libs/gst/allocators/gstdmabuf.c: libs: dmabuf: init the GST_CAT_DEFAULT in type define. To avoid `gst_debug_log_valist: assertion 'category != NULL' failed` if we do not call gst_dmabuf_allocator_new 2020-02-12 13:11:43 +0200 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: appsrc/appsink: Make setting/replacing callbacks thread-safe Previously we would simply use them without any locking at all, while using the object lock for setting them. Nothing prevented new callbacks to be set in the meantime, potentially calling a callback with already freed user_data. To prevent this move the callbacks into a reference counted struct and use the appsrc/appsink mutex to protect access to it, which is used in all functions calling the callbacks already anyway. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/729 2020-02-14 09:40:59 +0000 Håvard Graff * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtpbasepayload: add property for embedding twcc sequencenumbers By setting the extension-ID for TWCC (Transport Wide Congestion Control), the payloader will embed sequencenumbers as a RTP header-extension according to https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01#section-2 The negotiation of this being enabled with downstream elements is done with caps reflecting the way this is communicated using SDP. 2020-02-13 10:41:29 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/window/win32: implement get_window_handle() Some other frameworks need the HWND to retrieve information from. 2020-02-10 17:39:57 +0100 Havard Graff * tests/check/libs/rtpbasepayload.c: rtpbasepayload: fix test warnings Compiling with MSVC and Clang. 2020-01-23 16:11:28 +0100 Kristofer Björkström * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtpbasepayload: timestamp bug, if rate control=no With commit "basepayload: Expose onvif-no-rate-control property" the rtp timestamp changed behaviour when rate control is disabled. When disabling rate control, we must take care of the stream time to avoid the timestamps to begin from zero again. 2020-02-10 17:15:13 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Start discovering next URI from right thread When using the cache, we were not using the right GMainContext to setup next URI to discovery, fix that. 2020-02-04 14:14:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: error out if memory context is different than ours 2020-02-04 14:06:36 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: NULL out the functions used Fixes segfault when the display changes 2020-02-04 14:01:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix reset context for GL context change We need to remove GL resources from the old context instead of the new GL context. The two GL context may not even be shared. 2020-02-04 14:00:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix a use-after-free with allocation params _free(params) followed by a params->align is a bad idea :) 2020-02-04 13:59:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: also remove GL buffers on a reset Fixes a possible memory leak on renegotiation 2019-12-12 18:59:10 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasesrc.c: gl/basesrc: call gl_stop when shutting down Fixes multiple leaks 2020-01-28 18:17:47 +0100 Havard Graff * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: add gst_rtp_buffer_get_extension_onebyte_header_from_bytes So that one can parse the GBytes returned by gst_rtp_buffer_get_extension_bytes 2020-01-30 19:00:07 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: handle gap buffers properly This simply implies not trying to "prepare" those buffers, as mapping an empty buffer to a video frame does not make much sense. This also adds a simple test in compositor that performs some trivial checking of the handling of gap events, the test was not failing before, but an error was logged, this is no longer the case. Fixes #717 2020-01-28 22:07:44 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't configure NULL chroma-site/colorimetry If there's no known value in the best caps then the functions to convert them to strings will return NULL. Having the fields not in the caps is not a problem, having them with a NULL value however will cause negotiation failures. 2020-01-17 14:26:29 +0100 Dimitrios Katsaros * gst/playback/gstdecodebin3.c: decodebin3: Reset main group id on PAUSED->READY state change The main_input stream-id would not get reset when going to READY state. This would cause warnings when trying to reuse the same decodebin3, since you would get a new STREAM_START event with a new stream-id, which would collide with the now stale stream-id 2020-01-17 14:16:23 +0100 Dimitrios Katsaros * gst/playback/gstdecodebin3.c: decodebin3: Reduced logging level of messages The logging is set to warning for a drain event, which is part of the normal functionality of the parsebin. 2020-01-23 18:03:13 +0000 Tim-Philipp Müller * ext/pango/gstclockoverlay.c: clockoverlay: fix bogus time display caused by previous commit Fixes regression introduced by "clean-up" done as part of commit 98ebcb4. dummy must live as long as use the return value of localtime_r() since that's just a pointer to it, and by putting it inside the block we made dummy go out of scope right after localtime_r() returned, which messed up the time values since when we poked at the struct the contents might already have been overwritten. Fixes #722 2020-01-17 11:22:48 +0100 Dimitrios Katsaros * gst/playback/gsturidecodebin3.c: uridecodebin3: Fixed defauts not being set on initialization The default values were not being set on element initialization. This was a problem for buffer_duration and buffer_size since they would be zero initialized, rather then being set to -1. This would cause the underlaying queue2 element to have no limits and depending on the streamed file, could cause queue2 to allocate massive amounts of memory. 2020-01-13 18:32:59 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encodebin: Add missing 'Since' marker 2020-01-13 09:06:02 +0000 Philippe Normand * ext/ogg/gstoggstream.c: oggstream: Workaround for broken PAR in VP8 BOS Similarily to the Theora mapping, process 0:N, N:0 and 0:0 pixel aspect ratios as 1:1. Fixes #719 2020-01-11 19:26:24 -0500 Nicolas Dufresne * tests/check/libs/rtpbasedepayload.c: tests: rtpbasedepayload: Test flow return whith push/push_list This validate that the base class properly save and return the flow return value received when gst_rtp_base_depay_push/push_list() helper is being used. 2019-11-21 21:04:14 -0500 Nicolas Dufresne * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasepayload: Save and forward the push flow return Save push/push_list helper flow return and in case of failure, return it in the process function. This allow forwarding downstream flow return even if the subclass is using the push/push_list helper. 2019-11-03 15:52:28 +0100 Víctor Manuel Jáquez Leal * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: * gst/playback/gsturidecodebin3.c: playbin3: handle GST_PLAY_FLAG_FORCE_SW_DECODERS In decodebin3 and uridecodebin3 the `force-sw-decoders` boolean property is added. In uridecodebin3 it is only a proxy property which will forward the value to decodebin3. When decodebin3 has `force-sw-decoders` disabled, it will filter out in its decoder and decodable factories those elements within the 'Hardware' class, at reconfiguring output stream. playbin3 adds by default GST_PLAY_FLAG_FORCE_SW_DECODERS, and sets `force-sw-decoders` property accordingly to its internal uridecodebin, also filters out the 'Hardware' class decoder elements when caps negotiation. 2019-11-03 15:37:44 +0100 Víctor Manuel Jáquez Leal * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin2: handle GST_PLAY_FLAG_FORCE_SW_DECODERS Added `force-sw-decoders` boolean property in decodebin2 and uridecodebin. By default the property is %FALSE and it bypass the new code. Otherwise the factory list is filtered removing decoders within 'Hardware' class. uridecodebin sets the `force-sw-decoders` property in its internal decodebin, and also filters out Hardware class in the autoplug-factories default signal handler. playbin2 adds by default GST_PLAY_FLAG_FORCE_SW_DECODERS it its flags property, and depending on it playbin2 sets the `force-sw-decoders` property on its internal uridecodebin, also filters out the Hardware class decoding decoders at the autoplug-factories signal handler. 2019-11-03 15:16:04 +0100 Víctor Manuel Jáquez Leal * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: playback: add GST_PLAY_FLAG_FORCE_SW_DECODERS enum This flag would be common either for playbin2 and playbin3. 2020-01-08 17:28:46 +0000 Tim-Philipp Müller * ext/gl/meson.build: * subprojects/graphene.wrap: meson: add graphene subproject So we can build all the OpenGL elements. 2020-01-08 08:29:18 +0200 Sebastian Dröge * gst/compositor/blend.c: compositor: memcpy() lines directly for alpha formats with SOURCE operator and alpha=1.0 2020-01-08 02:34:17 +0000 Randy Li * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: rawvideoparse: allow setting the colorimetry You can neither guess nor parse the colorimetry from the input stream. Signed-off-by: Randy Li 2020-01-07 20:01:14 +0200 Sebastian Dröge * gst/compositor/compositor.c: compositor: Alpha inputs with the SOURCE operator can be considered opaque We don't have to look at each pixel's alpha component because we will directly write it over the background. 2019-12-30 23:08:05 -0800 Ryan Huang * gst-libs/gst/video/video-format.h: Fix link to raw video format design document 2019-08-11 11:25:50 +0100 Philippe Normand * gst/playback/gstplaybin3.c: playbin3: Propagate sink context When the playsink's sink is activated its state is set to READY but it remains unlinked. So, in order for decodebin3 to potentially reuse the context later on, the whole playbin3 needs to have it internally stored. 2019-12-31 15:49:05 +0900 Seungha Yang * gst/playback/gstplaybin2.c: playbin: Propagate sink context Any contexts created by sink during activation need to be propagated to whole elements of playbin. 2019-12-06 08:47:14 -0500 Aaron Boxer * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/rtsp/gstrtspurl.h: * tests/check/libs/rtsp.c: rtspurl: add API method to create request uri combined with control url code logic very similar to gst_rtsp_url_get_request_uri () 2019-12-27 12:53:41 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: gstvideoaggregator: always update converter when needed In prepare_frame, it is not enough for the target info (conversion_info) to not have changed to decide not to update the converter, as the vpad info may have changed as well. Fixes #714 2019-12-27 11:34:26 +0200 Sebastian Dröge * gst-libs/gst/fft/_kiss_fft_guts_f32.h: * gst-libs/gst/fft/_kiss_fft_guts_f64.h: * gst-libs/gst/fft/_kiss_fft_guts_s16.h: * gst-libs/gst/fft/_kiss_fft_guts_s32.h: * gst-libs/gst/fft/kiss_fft_f32.c: * gst-libs/gst/fft/kiss_fft_f32.h: * gst-libs/gst/fft/kiss_fft_f64.c: * gst-libs/gst/fft/kiss_fft_f64.h: * gst-libs/gst/fft/kiss_fft_s16.c: * gst-libs/gst/fft/kiss_fft_s16.h: * gst-libs/gst/fft/kiss_fft_s32.c: * gst-libs/gst/fft/kiss_fft_s32.h: * gst-libs/gst/fft/kiss_fftr_f32.c: * gst-libs/gst/fft/kiss_fftr_f32.h: * gst-libs/gst/fft/kiss_fftr_f64.c: * gst-libs/gst/fft/kiss_fftr_f64.h: * gst-libs/gst/fft/kiss_fftr_s16.c: * gst-libs/gst/fft/kiss_fftr_s16.h: * gst-libs/gst/fft/kiss_fftr_s32.c: * gst-libs/gst/fft/kiss_fftr_s32.h: * gst-libs/gst/fft/kiss_version: fft: Update our kiss fft version This fixes thread-safety issues and various other minor issues. Our previous version was about 13 years old. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/715 2019-12-20 12:27:57 +0900 Seungha Yang * gst-libs/gst/gl/win32/gstglwindow_win32.c: glwindow/win32: Don't post any WinProc message to parent window Posting any message to parent seems to be pointless. That might break parent window. Regardless of the posting, parent window can catch mouse event and also any keyboard events will be handled by parent window by default. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/634 2019-12-19 14:48:43 -0500 Aaron Boxer * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin: remove deprecated raw audio and raw video sink flags These flags were deprecated in 2011 with commit 105da803ade859fb299ed3c5265d6acdd168ca8f Removing these flags will simplify the logic in playbin. 2019-09-06 18:07:48 +0200 Stéphane Cerveau * tests/check/libs/videoencoder.c: tests: add video encoder test with subframes API 2019-09-12 12:07:08 +0200 Stéphane Cerveau * gst-libs/gst/video/gstvideoencoder.c: videoencoder: send new headers in finish_frame If headers have been set by subclass, this headers should be sent for a first time or on demand with a key-unit 2019-09-25 10:45:28 +0200 Stéphane Cerveau * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/video-frame.h: videoencoder: Use video marker flag to signal end of frame This marker is optional, its name refer to RTP marker bit. This mark can be use to reduce latency in various use cases. With the split between finish_frame() and finish_subframe() we will now be able to identitfy the last subframe with no latency. In order to detail the use of GST_BUFFER_FLAG_MARKER in a video use case, the flag GST_VIDEO_BUFFER_FLAG_MARKER has been introduced with a proper documentation clarifying marker's role. 2018-08-31 12:09:57 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideoutils.h: videoencoder: add API to push subframes Introduce a new API so encoders can split the encoding in subframes. This can be useful to reduce the overall latency as we no longer need to wait for the full frame to be encoded to start decoding or sending it. 2018-08-31 10:55:30 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideoencoder.c: videoencoder: factor out logic from gst_video_encoder_finish_frame() No semantic change, I'm going to reuse all those functions in a new finish_slice() methods. 2019-12-20 13:35:53 +0100 Jonas Holmberg * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: fix segment event leak Segment event was leaked if format != _TIME. 2019-12-19 17:52:12 -0500 Olivier Crête * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-frame.h: * tests/check/libs/videoencoder.c: Revert "videoencoder: factor out logic from gst_video_encoder_finish_frame()" This reverts commit b1ec312b8ed39ffaeeca1f5a8a014acd4b74d5f9. 2019-12-19 21:59:10 +0000 Stéphane Cerveau * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-frame.h: * tests/check/libs/videoencoder.c: videoencoder: factor out logic from gst_video_encoder_finish_frame() No semantic change, I'm going to reuse all those functions in a new finish_slice() methods. 2019-12-10 18:03:05 -0500 Olivier Crête * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * tests/check/libs/rtspconnection.c: rtspconnection: Add functions without GTimeVal deprecate existing GTimeVal is now deprecated in GLib, so let's deprecate it here too 2019-12-10 17:09:57 -0500 Olivier Crête * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: tests: Remove deprecated GTimeVal GTimeVal won't work past 2038 2019-12-18 16:03:54 +0100 Stéphane Cerveau * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * sys/xvimage/xvimagesink.c: base: use of g_value_dup_string Use helper method to get string from GValue. 2019-12-11 10:07:12 +0100 Stéphane Cerveau * ext/alsa/gstalsamidisrc.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglshader.c: remove various useless linefeed in logs 2019-12-08 01:17:31 +0000 Tim-Philipp Müller * tests/check/meson.build: tests: actually define HAVE_VALGRIND This stuff should probably be done differently, but for now just define it like we used to. 2019-12-08 00:52:17 +0000 Tim-Philipp Müller * sys/xvimage/meson.build: xvimage: remove unused HAVE_XVIDEO define 2019-12-08 00:50:03 +0000 Tim-Philipp Müller * meson.build: * tests/examples/seek/jsseek.c: test: fix up HAVE_X11 / HAVE_X defines Only HAVE_X was defined, while both HAVE_X11 and HAVE_X were used. 2019-12-08 00:00:37 +0000 Tim-Philipp Müller * gst/typefind/meson.build: * meson_options.txt: typefindfunctions: build gio xdgmime typefinder again And add gio-typefinder option to disable it. HAVE_GIO was never set, at least not in the Meson build. 2019-12-07 21:13:09 +0000 Tim-Philipp Müller * tests/check/pipelines/simple-launch-lines.c: tests: simple-launch-lines: remove use of unused HAVE_LIBVISUAL define This is not set anywhere, and it's pretty clear the pipeline in question has not been tested in a long time. Disable test with a FIXME, test needs to be rewritten to not use real output devices. 2019-12-07 21:02:53 +0000 Tim-Philipp Müller * tests/check/pipelines/gl-launch-lines.c: tests: gl-launch-lines: check for features at runtime Instead of using HAVE_PNG and HAVE_JPEG defines. 2019-12-07 20:47:01 +0000 Tim-Philipp Müller * gst/tcp/gstmultifdsink.c: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: multifdsink: remove defunct include guarded by unused HAVE_FIONREAD_IN_SYS_FILIO The configure check for this went away in 2012 in commit cd3eee. 2019-12-07 14:36:36 +0000 Tim-Philipp Müller * ext/theora/meson.build: * tests/check/pipelines/oggmux.c: tests: oggmux: check vorbisenc + theoraenc availability at runtime HAVE_VORBIS was used but never set, so only 3 out of 7 tests actually ran. Drop now-unused HAVE_THEORA define. 2019-12-07 14:22:06 +0000 Tim-Philipp Müller * meson.build: * tests/icles/playback/test4.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: * tests/icles/playback/test7.c: tests: playback: include stdlib.h unconditionally Like we do elsewhere. And drop the check for the header. Also remove some superfluous unistd.h includes. 2019-12-07 14:12:04 +0000 Tim-Philipp Müller * ext/vorbis/gstvorbisdec.c: * ext/vorbis/meson.build: vorbis: drop unneeded check for vorbis_synthesis_restart() This was added in 1.0.1 more than 16 years ago, I think we can safely assume this is always present now. Also in tremor. While at it, bump vorbis requirement to 1.3.1 from 2010. 2019-12-07 14:04:00 +0000 Tim-Philipp Müller * ext/pango/gstclockoverlay.c: * meson.build: pango: check if localtime_r is available HAVE_LOCALTIME_R was used, but never defined. 2019-12-08 18:13:55 +0900 Seungha Yang * tests/examples/overlaycomposition/overlaycomposition.c: examples: overlaycomposition: Fix implicit declaration warning overlaycomposition.c:276:5: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration] overlaycomposition.c(263): warning C4090: 'initializing': different 'const' qualifiers 2019-12-08 18:12:00 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Remove unused variable win32-videooverlay.c:34:20: warning: 'msg_io_channel' defined but not used [-Wunused-variable] 2019-12-03 23:35:23 +0000 Stéphane Cerveau * gst-libs/gst/pbutils/codec-utils.c: * tests/check/libs/pbutils.c: codec-utils: add h264 constrained and progressive profiles Those profiles have been added in the version 2012-01 and 2011-06 of the AVC spec. Aligned code with https://bugzilla.gnome.org/show_bug.cgi?id=794127 2019-12-03 14:16:06 +1100 Matthew Waters * meson.build: build: use -fvisibility=hidden for objc code 2019-12-03 14:15:58 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: gl/macos+ios: privatise _invoke_on_main() https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1132 2019-11-27 20:42:34 +0200 Mart Raudsepp * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: don't let a repeat-after-eos pad prevent EOS .. if there are pads present that are not repeating after EOS. Fixes #664 2019-11-27 15:54:57 +0200 Mart Raudsepp * tests/check/elements/compositor.c: tests: expand compositor repeat-after-eos tests for multiple pads If there are any pads with repeat-after-eos NOT set, then the compositor should EOS after all of those pads have gone EOS, but not before all repeat-after-eos pads have as well. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/664 2019-06-04 10:05:54 -0400 Thibault Saunier * tools/gst-device-monitor.c: tools: Add support for CameraSource pipeline description 2019-11-08 15:13:59 +0100 Edward Hervey * gst-libs/gst/video/video-converter.c: video-converter: Fix RGB-XYZ-RGB conversion The matrices were in the wrong order. Instead of the conversion matrix being _ XYZ_TO_RGB_output * RGB_TO_XYZ_input * input_RGB It was _ RGB_TO_XYZ_input * XYZ_TO_RGB_output * input_RGB 2019-05-21 21:59:23 +0900 Akinobu Mita * sys/ximage/meson.build: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/meson.build: * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: * sys/xvimage/xvimagesink.c: ximagesink, xvimagesink: don't use XkbKeycodeToKeysym if Xkb is unavailable ximagesink and xvimagesink use XkbKeycodeToKeysym when the key event is received. However, this function returns NoSymbol if Xkb is unavailable. This causes all key events to be translated to "unknown" key when running ximagsink under some VNC. Fix it by using XKeycodeToKeysym if Xkb is unavailable. 2019-09-27 20:08:39 +0900 Seungha Yang * tools/gst-play-kb.c: gst-play: Handle KeyDown event instead of KeyUp on Win32 keyboard handler To handle long press case, KeyDown input should be handled instead of KeyUp. Note that OS will take care of the sensitivity of KeyDown event, so we can safely assume one KeyDown as one input. That will not break user experience. 2019-09-27 19:26:03 +0900 Seungha Yang * tools/gst-play-kb.c: gst-play: Remove timer GSource from Win32 keyboard handler Use WaitForMultipleObjects to handle keyboard input only if pending keyboard input exists. 2019-11-13 19:37:29 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Add an option for testing reuse of external window Adding "repeat" option to test a case where external window is reused. 2019-11-07 22:00:03 +0900 Seungha Yang * gst/audiorate/gstaudiorate.c: audiorate: Update next_offset per rate change To support runtime audio samplerate change, re-calculate next target offset per caps. Calculating the next buffer offset using the previous offset seems to be tricky and rounding error prone. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/693 2019-11-07 21:42:25 +0900 Seungha Yang * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: Revert "audiorate: accumulate offset by time diff" This reverts commit 4fa850e3e6c039000fc7f648de238af6c2278469. The commit would break an constant rate audio stream with gap. 2019-11-08 17:28:44 +0900 Seungha Yang * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: xvimagepool: Update size, stride, and offset with allocated XvImage Memory layout of XvImage might be different from that of GstVideoInfo. If so, the image size, stride, and offset would be wrongly informed. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/677 2019-11-08 17:33:17 +0900 Seungha Yang * sys/xvimage/xvimagepool.c: xvimagepool: Fix confusing debug message for padding size 2019-11-17 18:23:59 +0000 Ambareesh "Amby" Balaji * ext/opus/gstopusenc.c: opusenc: Add low delay option Fixes #681 2019-08-26 15:03:48 +0200 Jochen Henneberg * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Reset reorder flag before check This function might be revisited with different channel position mapping while audio source goes into play so the reorder flag needs to be reset before the checks happen. 2019-11-15 18:06:13 +0900 Wonchul Lee * gst-libs/gst/gl/gstglupload.c: glupload: Fix allocator leak It fixes allocator leak in failure case 2019-11-15 12:19:56 +0900 Seungha Yang * tests/examples/overlaycomposition/overlaycomposition.c: examples: overlaycomposition: Fix typo Sorry for the noise. Default should be autovideosink 2019-11-13 15:28:20 +0530 Guillaume Desmottes * gst-libs/gst/video/video-info.h: video-info: improve GST_CAPS_FEATURE_FORMAT_INTERLACED documentation Copied the description from gst-doc written by Tim. Fix #606 2019-11-12 12:17:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: marshall quit to the window thread Fixes a possible deadlock where we're waiting for the window thread to quit but it never does. 2019-11-14 12:37:58 +0100 Sebastian Dröge * gst-libs/gst/audio/audio-buffer.c: audio-buffer: Don't fail to map buffers with zero samples Instead initialize the map infos, etc to NULL like gst_buffer_map() would be doing on a zero-sized buffer. This fixes a crash in audioresample if the first output buffer would contain zero samples. 2019-11-12 21:15:38 +0900 Seungha Yang * tests/examples/overlaycomposition/overlaycomposition.c: examples: overlaycomposition: Add option for videosink element selection It would be useful for testing overlaycomposition with specific videosink element. 2019-11-13 17:31:29 +0900 Wonchul Lee * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext/egl: Fix window leak Fixed to do unref after use of window get by gst_gl_context_get_window() 2019-11-10 20:05:59 -0500 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: gldownload: Fix renegotiation loop When DMABuf was tried, we would renegotiate back and fourth between DMABuf and system memory if the export failed. This would happen for every single frame. This patch introduces try_dmabuf_exports boolean, which is unset when an export failed. This boolean is then put back to TRUE when upstream pushes new caps, or downstream pushes a reconfigure event. 2019-11-10 20:02:09 -0500 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: gldownload: Refactor download mode selection This introduces an enum in order to cleanup how we select the transfer mode. It also fixes the case where we callback to PBO but we didn't execute the PBO. That was not causing any issue, just that the processing latency would be delayed to the next element, which can be confusing. 2019-07-14 16:42:17 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Fix extension names in dmabuf import check There was a typo in the extension name which resulted in the modifiers to never be set when doing DMABuf import. That triggered the modifiers lookup in Intel driver, which was in fact hiding bugs in the gldownload to glupload path when doing DMABuf. Note, this changes breaks pipeline the following pipeline on Intel and some other drivers: gltestsrc ! gldownload ! video/x-raw\(memory:DMABuf\) ! glimagsink A fix for this was added to Mesa recently: Related to https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1338 Fixes 5d0e191710 2019-07-14 16:33:35 -0400 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Fix exported DMABuf size All we know is the height and the stride, so make sure not to expose the DMABuf larger then the size we know about. 2018-04-25 13:09:05 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Fail exportation if a modififer is used We don't support modififers and that would result in bad image being displayed. Note that this was fixes recently in Mesa MR 1138, prior to that, the reported modifier is always 0, which makes this change a no-op. Fixes #441 Related to https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1338 2019-08-03 13:14:53 -0400 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: gldownload: Wait on sync meta if any This is possibly not strictly needed when pixels are being downloaded to CPU memory, but would cause issue when exporting DMABuf, as the data may not be yet ready when the DMABuf reaches the consumer. 2019-09-03 16:03:49 -0400 Thibault Saunier * gst/playback/gstplaybin2.c: playbin: Handle error message with redirection indication There are in the wild (mp4) streams that basically contain no tracks but do have a redirect info[0], in which case, qtdemux won't be able to expose any pad (there are no tracks) so can't post anything but an error on the bus, as: - it can't send EOS downstream, it has no pad, - posting an EOS message will be useless as PAUSED state can't be reached and there is no sink in the pipeline meaning GstBin will simply ignore it In that case, currently the application could try to handle that but it is pretty complex as it will get the REDIRECT message on the bus at which point it could set the URL but playbin will ignore it, as it will only be for the next EOS, it thus need to set the pipeline to NULL (READY won't do as it is already in READY at that point). And it needs to figure out the following ERROR message on the bus needs to be ignored, which is not really simple. The approach here is to allow element to add details to the ERROR message with a `redirect-location` field which elements like playbin handle and use right away. We could also use the element 'redirect' message in playbin, but the issue with that approach is that the element will still emit the ERROR message on the bus, leading to wrong behaviour. That can't be avoided since in the case the app/parent pipeline is not handling the redirect instruction, the ERROR message is necessary (and there is no way to detect that the message has been "handled" from the element emitting the redirect). [0]: http://movietrailers.apple.com/movies/paramount/terminator-dark-fate/terminator-dark-fate-trailer-2_480p.mov 2019-09-19 15:12:25 -0600 Aaron Boxer * gst/overlaycomposition/gstoverlaycomposition.c: overlaycomposition: set sink pad to proxy allocation queries 2019-11-03 00:46:49 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: display: add a specific lock for the list of windows It's either this or replacing all the object lock usage in gldisplay with a recursive mutex which is not backwards compatible The failure case is effectively: 1. The user has locked the display object lock 2. a glcontext loses it's last ref and attempts to quit the window 3. gst_gl_window_quit() attempts to remove the window from the display 4. gst_gl_display_remove_window attempts to take the display object lock The only concern with changing the locking for the window list in the display is that gst_gl_display_create_window() has documentation requiring the object lock to be held which must continue to work correctly. 2019-03-08 17:43:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: fix racy resize updates Take locks around resize handling and marshall all resizes to the windowing thread by default. 2019-03-08 17:40:52 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: glwindow: remove window from display list on quit/finalize Fixes a possible use-after-free in the X11 backend. 2019-11-02 22:58:42 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl/display: Add thread-safe retrieve_window Returning a transfer none value for a value checked by a lock is not thread safe as the reference could disappear before the caller can take its reference. 2019-08-30 17:16:35 -0400 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst/encoding/gstencodebin.c: encodebin: Ensure that a single segment is pushed into encoders Following the [design document] encodebin needs to handle sources that output multiple streams, for that purpose and to make it simpler, we ensure that a single segment is outputted to the encoders by using an `identity single-segment=true` at the beginning of streams chains. Added API to enable or disable the use of that new feature. Added support for the encoding profile parser for that new property, keeping backward compatibility [design document]: https://gstreamer.freedesktop.org/documentation/additional/design/encoding.html?gi-language=c#rendering-timelines 2019-03-19 16:20:01 +0100 Havard Graff * gst-libs/gst/rtp/gstrtcpbuffer.h: rtcpbuffer: add RTPFB_TYPE_TWCC for Transport-Wide Congestion Control 2019-11-03 10:25:55 +0000 Jochen Henneberg * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: audioconvert: Fixed changing mix-matrix at runtime Setting the property again after it had already been set ran g_value_unset() but did not initialize it again to g_value_copy() failed afterwards. Removed the unset as cleanup is done implicitely from g_value_copy(). Changing the mix-matrix property did not trigger reconfiguration of the caps, this has been added. If the matrix is set to an empty matrix, instead of copying this the matrix is simply disabled by setting mix_matrix_is_set (formerly mix_matrix_was_set) to FALSE so the mix-matrix is ignored from now on. 2019-10-28 14:43:50 +0200 Sebastian Dröge * gst/videorate/gstvideorate.c: * tests/check/elements/videorate.c: videorate: Fix max-duplication-time handling Previously this would've only set discont=TRUE and then for all future buffers simply returned immediately. Instead we also need to a) drain previous input until its buffer time b) update next_ts and base_ts accordingly for the gap c) actually store the new buffer after the gap so it can be used in the future and so the old buffer before the gap is gone Also update the unit test accordingly so that it actually tests for this behaviour. Previously it only tested that after the gap we got no output at all. 2019-08-20 23:12:22 +0900 Seungha Yang * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: Add support for VUYA format Reversed order of AYUV format. Most of core methods are prepared already. 2019-05-25 19:23:35 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideometa.h: videometa: document how the meta can be used to negotiate buffers layout I'm going to use this new API in gst-omx so an encoder can request v4l2src to produce buffers matching the encoder stride and slice heights preventing copies of incoming buffers. 2019-11-04 00:38:18 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: gl/gbm: ensure we call the resize callback before attempting to draw Without this, sinks will not be notified about size changes or even the initial size and would render at 0x0. 2019-11-02 16:24:39 +0100 Sebastian Dröge * gst-libs/gst/video/video-scaler.c: video-scaler: Ensure we're always using the correct lines for scaling in gst_video_scaler_2d() Especially for interlaced input make sure to a) never mix both fields b) never read lines after the end of the input frame c) allocate enough space in the temporary lines to not write outside the allocated memory area This fixes various memory corruptions and rescaling artefacts. 2018-10-02 12:04:14 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Add a property to disable dropping on QoS 2018-10-02 11:09:33 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Post QoS when we drop because of QoS At the moment, we only posted QoS messages when frame_drop() was called, but not in finish_frame() when QoS triggered a late push. This should fix applications that tries to account the dropped frames. We also emit a warning on drops so it's more clear what is happening. 2019-07-23 11:49:07 +0530 Guillaume Desmottes * ext/gl/gstgldownloadelement.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: use gst_video_meta_set_alignment() 2019-07-22 16:55:04 +0530 Guillaume Desmottes * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x(v)image: use gst_video_meta_set_alignment() Use the new API to tell buffer consumers about alignment details. This change is backward compatible as non ported elements can safely ignore the alignment information and keep processing buffers as they use to, copying if necessary. 2019-07-09 12:17:44 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * tests/check/libs/video.c: videometa: add alignment field By adding this field, buffer producers can now explicitly set the exact geometry of planes, allowing users to easily know the padded size and height of each plane. GstVideoMeta is always heap allocated by GStreamer itself so we can safely extend it. 2019-06-03 16:26:08 +0530 Guillaume Desmottes * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * tests/check/libs/video.c: video-info: add gst_video_info_align_full() When using gst_video_info_align() user had no easy way to retrieve the padded size and height of each plane. This can easily be implemented in fill_planes() as it's already called in align() with the padded height. Ideally we'd add a plane_size field to GstVideoInfo but the remaining padding is too small so that would be an ABI break. Fix #618 2019-11-02 12:15:15 +0100 Guillaume Desmottes * gst-libs/gst/video/video-info.h: video-info: fix GST_VIDEO_INFO_FIELD_HEIGHT() with frame odd height We want to round up when halfing height. I do have a test for this but it relies on my new video-align tests so it's part of the next commit. Recording the fix separately if we want to backport this fix to the stable branch. 2019-10-30 14:59:40 +0100 Nicola Murino * ext/gl/gstglimagesink.c: glimagesink: fix upper-left and upper-right rotate matrices 2019-10-25 20:44:27 +0900 Seungha Yang * tests/check/libs/audio.c: tests: audio: Add test for gst_audio_info_from_caps() method Test gst_audio_info_from_caps() with raw and encoded formats. 2019-10-25 12:05:54 +0900 Seungha Yang * gst-libs/gst/audio/audio-info.c: audio-info: Allow from_caps() with encoded audio format Similar to gst_video_info_from_caps() which allows encoded video format, don't error gst_audio_info_from_caps() with encoded audio format. Because gst_audio_info_set_format() supports encoded format, current behavior does not seem to be consistent. 2019-10-21 16:43:32 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Use G_N_ELEMENTS instead of writing it out manually 2019-10-21 17:40:35 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Scaling-only fast-paths for planar formats are keeping interlacing So we can also use them for interlaced content and speed up scaling a bit. 2019-10-21 17:28:46 +0300 Sebastian Dröge * gst-libs/gst/video/video-scaler.c: video-scaler: Correctly handle interlaced vertical scalers in gst_video_scaler_2d() We need to provide twice as many lines as usual to the scaling function as every second lines would be skipped. Without this we read from random memory and produce colorful output and crashes. 2019-10-21 16:43:02 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Don't use fast-path halfing/doubling rescalers for interlaced planar formats They will mix lines from the top and bottom field and by that effectively deinterlace the video, badly. 2019-10-21 16:43:02 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Use interlaced scalers for vertical scaling if needed Without this, scaling e.g. interlaced UYVY causes corrupted output with lines as follows: f1 f1 f2 f2, i.e. two lines of each field and only then the other field. 2019-10-03 12:03:09 +0200 Joakim Johansson * gst-libs/gst/rtsp/gstrtspconnection.c: gstrtspconnection: messages_bytes not decreased The watch->messages_bytes is not decreased when the write operation from the backlog is only partly successfull. This commit decreases the watch->messages_bytes for the successfully sent messages. Fixes #679 2019-10-17 20:06:24 +0100 Tim-Philipp Müller * meson.build: meson: build gir even when cross-compiling if introspection was enabled explicitly This can be made to work in certain circumstances when cross-compiling, so default to not building g-i stuff when cross-compiling, but allow it if introspection was enabled explicitly via -Dintrospection=enabled. See gstreamer/gstreamer#454 and gstreamer/gstreamer#381. 2019-10-12 12:00:46 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: glimagesink: add support for Y210 format Y210 is a 10-bit YUY2, so we may re-use the YUY2 shaders but gl format is set to RG16 Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=Y210 ! glimagesink 2019-10-11 10:14:49 +0200 David Trussel * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: glcolorconvert: add support for the NV16 and NV61 formats NV16/NV61 is basically the same as NV12/NV21 with a higher chroma resolution. Since only the size of the UV plane/texture is different, the same shaders are used as for NV12/NV21. 2019-10-11 22:54:02 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: glimagesink: add support for Y410 format Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=Y410 ! glimagesink 2019-10-14 10:02:59 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: merge shaders for AYUV and VUYA formats The shaders can be used for AYUV and varieties. 2019-06-09 00:57:47 +0100 Tim-Philipp Müller * .gitignore: * .gitmodules: * Makefile.am: * README: * autogen.sh: * common: * configure.ac: * docs/.gitignore: * ext/Makefile.am: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gl/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/opus/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/.gitignore: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/gl/.gitignore: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/gbm/Makefile.am: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/pbutils/.gitignore: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/.gitignore: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/.gitignore: * gst-libs/gst/video/Makefile.am: * gst/Makefile.am: * gst/adder/.gitignore: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/.gitignore: * gst/audioconvert/Makefile.am: * gst/audiomixer/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/compositor/.gitignore: * gst/compositor/Makefile.am: * gst/encoding/Makefile.am: * gst/gio/Makefile.am: * gst/overlaycomposition/Makefile.am: * gst/pbtypes/Makefile.am: * gst/playback/.gitignore: * gst/playback/Makefile.am: * gst/rawparse/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/.gitignore: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/.gitignore: * gst/videoscale/Makefile.am: * gst/videotestsrc/.gitignore: * gst/videotestsrc/Makefile.am: * gst/volume/.gitignore: * gst/volume/Makefile.am: * m4/.gitignore: * m4/Makefile.am: * m4/README: * m4/check-libheader.m4: * m4/gst-alsa.m4: * m4/gst-gl.m4: * m4/gst-ivorbis.m4: * m4/lrint.m4: * m4/lrintf.m4: * m4/ogg.m4: * m4/vorbis.m4: * pkgconfig/.gitignore: * pkgconfig/Makefile.am: * po/.gitignore: * po/Makevars: * po/POTFILES: * sys/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: * tests/Makefile.am: * tests/check/.gitignore: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/generic/.gitignore: * tests/check/gst/.gitignore: * tests/check/libs/.gitignore: * tests/check/pipelines/.gitignore: * tests/examples/Makefile.am: * tests/examples/app/.gitignore: * tests/examples/app/Makefile.am: * tests/examples/audio/.gitignore: * tests/examples/audio/Makefile.am: * tests/examples/compositor/Makefile.am: * tests/examples/decodebin_next/.gitignore: * tests/examples/decodebin_next/Makefile.am: * tests/examples/dynamic/.gitignore: * tests/examples/dynamic/Makefile.am: * tests/examples/encoding/.gitignore: * tests/examples/encoding/Makefile.am: * tests/examples/fft/.gitignore: * tests/examples/fft/Makefile.am: * tests/examples/gio/.gitignore: * tests/examples/gio/Makefile.am: * tests/examples/gl/Makefile.am: * tests/examples/gl/cocoa/.gitignore: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/generic/Makefile.am: * tests/examples/gl/generic/cube/.gitignore: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/.gitignore: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/.gitignore: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/recordgraphic/.gitignore: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/gtk/3dvideo/.gitignore: * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/.gitignore: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/.gitignore: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/fxtest/.gitignore: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/.gitignore: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/qt/.gitignore: * tests/examples/gl/qt/Makefile.am: * tests/examples/gl/qt/qglwtextureshare/.gitignore: * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/overlay/.gitignore: * tests/examples/overlay/Makefile.am: * tests/examples/overlaycomposition/.gitignore: * tests/examples/overlaycomposition/Makefile.am: * tests/examples/playback/Makefile.am: * tests/examples/playrec/.gitignore: * tests/examples/playrec/Makefile.am: * tests/examples/seek/.gitignore: * tests/examples/seek/Makefile.am: * tests/examples/snapshot/.gitignore: * tests/examples/snapshot/Makefile.am: * tests/files/Makefile.am: * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/playback/.gitignore: * tests/icles/playback/Makefile.am: * tools/.gitignore: * tools/Makefile.am: Remove autotools build system 2019-10-10 17:18:34 +0200 Edward Hervey * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultisocketsink.c: * gst/videotestsrc/videotestsrc.c: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/seek/scrubby.c: base: Avoid usage of deprecated API GTimeval and related functions are now deprecated in glib. Replacement APIs have been present since 2.26 2019-10-10 16:58:26 +0200 Edward Hervey * tests/check/elements/adder.c: * tests/check/elements/audiomixer.c: check: Don't use real audio devices for tests When checking the behaviour of live seeking on audiomixer or adder we don't *really* need real audio devices. audiotestsrc in live mode is enough to test the behaviour of those elements. Also avoids people repeatedly wasting hours trying to figure out whether that failing behaviour is due to their code or not. 2019-10-08 19:35:49 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for CineForm codec 2019-10-08 19:35:23 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: riff: add mapping for CineForm codec Makes CineForm-in-AVI work. 2019-09-07 04:28:46 +0200 Mathieu Duponchelle * tests/examples/device-provider/example-device-provider.c: * tests/examples/device-provider/meson.build: * tests/examples/meson.build: examples: add device provider example 2019-10-02 23:21:09 +0300 Sebastian Dröge * ext/gl/effects/gstgleffectblur.c: * ext/gl/gstglbumper.c: * ext/gl/gstglbumper.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: glfilters: Don't use static variables for storing per-element state 2019-09-27 11:10:43 -0300 Thibault Saunier * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglupload.c: glupload: Add VideoMetas and GLSyncMeta to the raw uploaded buffers This is done by reusing `gst_gl_memory_setup_buffer` avoiding to duplicate code. Without a VideoMeta, mapping those buffers lead to GstBuffer mapping the buffer in system memory even when specifying the GL flags (through the buffer merging mechanism) making the result totally broken. 2019-10-02 23:35:36 +1000 Matthew Waters * tests/examples/gl/sdl/sdlshare.c: examples/gl/sdlshare: port to OpenGL 3.0 core profile 2019-10-01 00:00:57 +1000 Matthew Waters * tools/gst-play-kb.c: build: fix werror build on windows _isatty() is in the io.h header 2019-09-30 16:11:18 +0200 Mathieu Duponchelle * tools/gst-device-monitor.c: device-monitor: fix device listing without --follow In !427, I removed the call to get_devices in order to always print added devices from the bus handler, however this requires the main loop to run until all pending messages have been consumed. This commit achieves this by always running the main loop, and simply adding an idle source to quit it in the non --follow case. 2019-09-30 10:27:03 +0800 Haihao Xiang * gst-libs/gst/video/video-format.c: video-format: correct the pixel stride for Y410 The stride for Y410 is 4 bytes, not 0 byte 2019-03-14 16:24:11 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: examples/sdlshare: Map video frames as early as possible and wait via GL sync meta before using texture ids 2019-03-13 08:28:58 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: examples/sdlshare: Initialize GL as part of the event loop And unref additional buffers we never use for rendering directly instead of going via the output queue. 2019-03-13 08:20:57 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: examples/sdlshare: Activate and initialize our wrapped GL context This allows us to e.g. use the GL functions vtable on it later. 2019-03-13 07:31:43 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: examples/sdlshare: Call gst_init() a bit earlier in main() Let's not accidentally call other GStreamer API before that. 2019-03-13 07:21:12 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: examples/sdlshare: Create an OpenGL context for OpenGL 2.0 2019-03-12 22:37:48 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: examples/sdlshare: Switch from a GLib main loop to a normal SDL event loop 2019-03-12 22:09:18 +0100 Sebastian Dröge * m4/gst-gl.m4: * tests/examples/gl/sdl/meson.build: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: examples/sdlshare: Port to SDL2 2019-03-12 21:31:24 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: examples/sdlshare: Move from a fakesink to an appsink 2019-03-12 21:29:07 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: examples/sdlshare: Store buffer queues and loop in a global variable There's no point storing them in GObject data, we already have other global variables anyway. 2019-03-12 21:24:03 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: examples/sdlshare: Bus sync handlers return no value 2019-03-12 21:20:24 +0100 Sebastian Dröge * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: examples/sdlshare: Fix various memory leaks 2018-06-18 10:49:28 +0200 Axel Mårtensson * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: alsasink: pause/resume alsasink can now detect a resume, stop and pause. The sink is now properly paused using snd_pcm_pause(), and without losing any data 2018-06-18 10:44:55 +0200 Axel Mårtensson * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: audiosink: fix resuming after pause For resuming after paused, gst_audio_sink_ring_buffer_start() needs to be called to notify the ringbuffer to continue to play. 2017-10-10 20:41:31 +0200 Philippe Renon * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: audiosink: expose more audioringbuffer vmethods to child sinks The newly exposed vmethods are pause, resume, stop and clear_all. The existing reset vmethod is deprecated. The audio sink will fallback to calling reset if pause or stop are not provided and will fallback to calling start if resume is not provided. There is no default clear_all implementation. Existing audio sinks continue to work as before. This change is useful for sinks that need to distinguish between a pause and a stop (currently both are handled by a reset) and is needed for https://bugzilla.gnome.org/show_bug.cgi?id=788362 https://bugzilla.gnome.org/show_bug.cgi?id=788361 2019-09-24 15:05:30 +0900 Seungha Yang * tools/gst-play-kb.c: gst-play: Add support for interacting console input on Windows Add Windows keyboard input handler. This could make gst-play UX consistent between *nix and Windows. 2019-09-20 09:48:30 +0100 Charlie Turner * gst/playback/gststreamsynchronizer.c: streamsynchronizer: avoid pad destruction races. Due to the use of {set/get}-element_private methods being used to store the GstSyncStream in the src and sink pads, and the racey nature of pad destruction, there are numerous ways we can be bitten by race conditions in the stream synchronizer. Fix that by tying the pads toghether with references. 2019-05-10 07:32:21 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudioutilsprivate.c: audio: Use LoadPackagedLibrary when building for UWP Universal Windows Platform apps are not allowed to use LoadLibrary to load arbitrary DLLs from the filesystem. They can only use LoadPackagedLibrary to load DLLs that have been packaged with the app as assets. See also: https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/190 2019-09-24 15:32:33 +0900 Seungha Yang * tools/gst-play.c: gst-play: Use gst_print* to avoid broken stdout string on Windows Equvalant to https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/258 When debug enabled, the debug string might be broken on Windows. 2019-09-23 15:39:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gstxmptag.c: * tools/gst-discoverer.c: build: fix debug output werror build with newer gcc In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55, from ../gst-libs/gst/tag/tag.h:25, from ../gst-libs/gst/tag/gsttageditingprivate.h:24, from ../gst-libs/gst/tag/gsttageditingprivate.c:23: ../gst-libs/gst/tag/gsttageditingprivate.c: In function ‘__exif_tag_capturing_white_balance_to_exif_value’: ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 646 | (GObject *) (object), __VA_ARGS__); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~ ../gst-libs/gst/tag/gsttageditingprivate.c:265:3: note: in expansion of macro ‘GST_WARNING’ 265 | GST_WARNING ("Invalid white balance: %s", str); | ^~~~~~~~~~~ ../gst-libs/gst/tag/gsttageditingprivate.c:265:40: note: format string is defined here 265 | GST_WARNING ("Invalid white balance: %s", str); | ^~ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55, from ../gst-libs/gst/tag/tag.h:25, from ../gst-libs/gst/tag/gstxmptag.c:39: ../gst-libs/gst/tag/gstxmptag.c: In function ‘deserialize_exif_gps_direction’: ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 646 | (GObject *) (object), __VA_ARGS__); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~ ../gst-libs/gst/tag/gstxmptag.c:818:5: note: in expansion of macro ‘GST_WARNING’ 818 | GST_WARNING ("Missing %s tag", dirref_str); | ^~~~~~~~~~~ ../gst-libs/gst/tag/gstxmptag.c:818:27: note: format string is defined here 818 | GST_WARNING ("Missing %s tag", dirref_str); | ^~ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55, from ../gst-libs/gst/tag/tag.h:25, from ../gst-libs/gst/tag/gstxmptag.c:39: ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 646 | (GObject *) (object), __VA_ARGS__); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~ ../gst-libs/gst/tag/gstxmptag.c:814:5: note: in expansion of macro ‘GST_WARNING’ 814 | GST_WARNING ("Missing %s tag", dir_str); | ^~~~~~~~~~~ ../gst-libs/gst/tag/gstxmptag.c:814:27: note: format string is defined here 814 | GST_WARNING ("Missing %s tag", dir_str); | ^~ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55, from ../gst-libs/gst/gl/gstgl_fwd.h:24, from ../gst-libs/gst/gl/gl.h:24, from ../gst-libs/gst/gl/gstglsl.c:25: ../gst-libs/gst/gl/gstglsl.c: In function ‘gst_glsl_version_profile_from_string’: ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 646 | (GObject *) (object), __VA_ARGS__); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~ ../gst-libs/gst/gl/gstglsl.c:333:7: note: in expansion of macro ‘GST_WARNING’ 333 | GST_WARNING ("Invalid preprocesser directive detected: %s", version_s); | ^~~~~~~~~~~ ../gst-libs/gst/gl/gstglsl.c:333:62: note: format string is defined here 333 | GST_WARNING ("Invalid preprocesser directive detected: %s", version_s); | ^~ In function ‘print_stream_info’, inlined from ‘print_topology’ at ../tools/gst-discoverer.c:352:3: ../tools/gst-discoverer.c:316:3: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 316 | g_print ("%*s%s: %s\n", 2 * GPOINTER_TO_INT (depth), " ", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 317 | gst_discoverer_stream_info_get_stream_type_nick (info), desc); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2019-09-11 01:29:23 +0200 Mathieu Duponchelle * tools/gst-device-monitor.c: gst-device-monitor: stop calling gst_device_monitor_get_devices() See https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/280 2019-09-17 21:33:49 +1000 Matthew Waters * tools/gst-device-monitor.c: device-monitor: print caps features in the caps 2019-09-16 11:03:59 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: glimagesink: Fix VUYA in memory:DMABuf Sample pipeline: gst-launch-1.0 videotestsrc ! msdkvpp ! \ video/x-raw\(memory:DMABuf\),format=VUYA ! glimagesink 2019-08-28 14:50:24 +0900 Seungha Yang * gst-libs/gst/gl/egl/gstgldisplay_egl_device.c: egldevice: Fix undeclared type build error Not all eglext.h defines EGLDeviceEXT type. That's implementation and egl extension version dependent. 2019-09-08 01:03:57 +0100 Tim-Philipp Müller * tests/check/gst-plugins-base.supp: tests: fix up valgrind suppressions for glibc getaddrinfo leaks Make more flexible. There is an extra gethostbyname2_r@@GLIBC_2.2.5 (getXXbyYY_r.c:217) in the trace on the build bots (F30). Fixes the -base and -good valgrind jobs on the 1.16 branch CI. 2019-08-29 11:16:39 -0400 Thibault Saunier * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: Move seeking in pull mode to the streaming thread Flushing and teering down the streaming thread from the seeking thread and simply letting the streaming thread handle the seek event in its loop function. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/639 2018-04-15 19:19:34 +0900 Seungha Yang * gst/encoding/gststreamsplitter.c: * gst/encoding/gststreamsplitter.h: streamsplitter: Drop duplicated force-key-unit events Forward force-key-unit event only once for the corresponding sequence number. 2018-04-15 19:15:28 +0900 Seungha Yang * gst/encoding/gststreamcombiner.c: streamcombiner: Forward upstream force-key-unit events to all sinkpads streamcombiner element forwards a upstream event only to one sinkpad. When the streamcombiner is used with encodebin, the sinkpad corresponding to pass-through path is configured before that of encoder, and therefore streamcombiner forwards upstream events only to the firstly configured one (i.e., pass-through path). 2019-09-02 16:20:07 -0400 Doug Nazar * meson.build: meson: Reenable NEON support 2019-09-02 23:25:39 -0400 Doug Nazar * gst-libs/gst/audio/audio-resampler-neon.h: audio-resampler: Update NEON to handle remainders not multiples of 4 If the remainder is not evenly divisable by 4, we'd miss the check for zero and continue the loop until crashing. Change the branch to take into account negatives as well. This more closely matches the SSE loop. 2019-08-29 13:42:39 -0400 Thibault Saunier * configure.ac: * ext/alsa/gstalsasrc.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglalpha.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereomix.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/vorbis/gstvorbistag.c: * gst-libs/gst/allocators/gstdmabuf.h: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiostreamalign.c: * gst-libs/gst/fft/kiss_fft_f32.c: * gst-libs/gst/fft/kiss_fft_f64.c: * gst-libs/gst/fft/kiss_fft_s16.c: * gst-libs/gst/fft/kiss_fft_s32.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gbm/gstgl_gbm_utils.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/rtp/README: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtppayloads.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.3.0.txt: * gst-libs/gst/tag/lang.c: * gst-libs/gst/video/TODO: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/video-anc.h: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-dither.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/videooverlay.c: * gst/adder/gstadder.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/compositor/compositor.c: * gst/encoding/gststreamcombiner.c: * gst/gio/gstgiobasesrc.c: * gst/overlaycomposition/gstoverlaycomposition.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.h: * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultisocketsink.c: * gst/typefind/gsttypefindfunctions.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.c: * hooks/pre-commit.hook: * m4/ogg.m4: * m4/vorbis.m4: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvcontext.h: * tests/check/Makefile.am: * tests/check/elements/decodebin.c: * tests/check/elements/glimagesink.c: * tests/check/elements/multifdsink.c: * tests/check/elements/rawvideoparse.c: * tests/check/elements/videorate.c: * tests/check/gst-plugins-base.supp: * tests/check/libs/gstglmatrix.c: * tests/check/libs/gstglupload.c: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpbasepayload.c: * tests/check/libs/rtspconnection.c: * tests/check/libs/tag.c: * tests/check/libs/videodecoder.c: * tests/examples/decodebin_next/playbin-test.c: * tests/examples/dynamic/addstream.c: * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: * tests/examples/snapshot/snapshot.c: * tests/icles/stress-playbin.c: Pass the code through codespell 2019-08-30 13:27:28 +1000 Matthew Waters * ext/ogg/gstoggdemux.c: oggdemux: fix werror build on macos ../ext/ogg/gstoggdemux.c:1071:7: error: format specifies type 'long' but the argument has type 'ogg_int64_t' (aka 'long long') [-Werror,-Wformat] packet->granulepos); ^~~~~~~~~~~~~~~~~~~ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1062:96: note: expanded from macro 'GST_DEBUG_OBJECT' #define GST_DEBUG_OBJECT(obj,...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_DEBUG, obj, __VA_ARGS__) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:646:31: note: expanded from macro 'GST_CAT_LEVEL_LOG' (GObject *) (object), __VA_ARGS__); \ ^~~~~~~~~~~ ../ext/ogg/gstoggdemux.c:1312:15: error: format specifies type 'long' but the argument has type 'ogg_int64_t' (aka 'long long') [-Werror,-Wformat] packet.granulepos); ^~~~~~~~~~~~~~~~~~ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1060:98: note: expanded from macro 'GST_WARNING_OBJECT' #define GST_WARNING_OBJECT(obj,...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, obj, __VA_ARGS__) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:646:31: note: expanded from macro 'GST_CAT_LEVEL_LOG' (GObject *) (object), __VA_ARGS__); \ ^~~~~~~~~~~ 2019-08-30 13:13:54 +1000 Matthew Waters * ext/gl/meson.build: gl: also build plugin with -fobjc-arc Fixes macos werror build ../ext/gl/caopengllayersink.m:336:23: error: '__bridge_retained' casts have no effect when not using ARC [-Werror,-Warc-bridge-casts-disallowed-in-nonarc] ca_sink->layer = (__bridge_retained gpointer)layer; ^~~~~~~~~~~~~~~~~~ 2019-08-30 13:00:14 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: silence unused-variable warning We are using ARC to cleanup after ourselves. ../gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:159:20: error: unused variable 'queue' [-Werror,-Wunused-variable] dispatch_queue_t queue = (__bridge_transfer dispatch_queue_t) window->priv->gl_queue; ^ 2019-08-29 00:48:16 +1000 Jan Schmidt * m4/gst-gl.m4: m4/gst-gl: Add dummy GST_GL_HAVE_WINDOW_WINRT Add a dummy define to make fix the autotools build for now. To actually build WinRT support, use the meson build. 2019-08-29 01:21:12 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext/egl: fallback to WINDOW_BIT if PBUFFER_BIT fails There are some drivers that do not advertise any PBUFFER EGLConfig's. 2019-08-28 11:24:01 -0700 Jonas Larsson * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Fix memory leak Also free the GstEGLImage struct allocated by g_new0. Fixes #661 2019-08-27 00:10:32 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/video/gstvideoaggregator.h: {audio,video}aggregator: define autoptr cleanup functions 2019-08-21 19:04:56 +0800 Hou Qi * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix ctitical info assertion 'GST_IS_CAPS (dec->priv->ctx.caps)' failed Matroskademux will send gap event when lag of video and audio is over 3 seconds. audiodecoder needs to handle gap event and set default output caps. Only audio info is set, while output caps is ignored. This cause the assertion failed. Need to fill output caps in gst_audio_decoder_negotiate_default_caps() with negotiated caps to avoid critical info printed when check it later. 2019-05-21 11:44:39 +0530 Nirbheek Chauhan * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.c: * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.h: * meson_options.txt: gstgl: Add a new window type for WinRT This is needed for using GstGL with ANGLE as the GLES implementation in Universal Windows Platform apps that use the Windows Runtime (WinRT) instead of Win32, which is deprecated and not allowed in Windows Store apps. This has been tested with Servo on the Microsoft HoloLens 2, and seems to work quite well. 2019-08-27 01:03:40 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/encoding-target.c: encoding-target: fix SECTION comment syntax See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/658 2019-08-26 07:54:48 +0200 Niels De Graef * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/rtsp/gstrtspextension.c: * gst/encoding/gstencodebin.c: * gst/overlaycomposition/gstoverlaycomposition.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultisocketsink.c: Don't pass default GLib marshallers for signals By passing NULL to `g_signal_new` instead of a marshaller, GLib will actually internally optimize the signal (if the marshaller is available in GLib itself) by also setting the valist marshaller. This makes the signal emission a bit more performant than the regular marshalling, which still needs to box into `GValue` and call libffi in case of a generic marshaller. Note that for custom marshallers, one would use `g_signal_set_va_marshaller()` with the valist marshaller instead. 2019-08-23 18:28:16 +0200 Mathieu Duponchelle * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: docstrings: port ulinks to markdown links 2019-08-21 14:50:12 +0000 Piotr Drąg * po/POTFILES.in: po: update POTFILES 2019-04-04 17:41:13 +0900 Seungha Yang * docs/meson.build: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl_device.c: * gst-libs/gst/gl/egl/gstgldisplay_egl_device.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/meson.build: gl/egl/display: Add support EGLDevice display type Simple addition for supporting EXT_platform_device typed display. It's a kind of special display type (part of EGL specification) which has no window at all. To use EGLDevice explicitly, set environment "GST_GL_WINDOW=egl-device" See also https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_platform_device.txt 2019-04-05 00:43:02 +0900 Seungha Yang * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: Introduce new vfunc for querying output surface availability Only dummy window will return FALSE for now. 2019-08-20 21:10:45 +0900 Seungha Yang * gst-libs/gst/video/video-hdr.c: * gst-libs/gst/video/video-hdr.h: video-hdr: Update documentation * Fix typo s/nunormalized/normalized/g * Update GstVideoMasteringDisplayInfo description Each values are not array. * Add missing newline between arguments description and detailed comment. 2019-08-07 16:15:40 +0100 Philippe Normand * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasesrc.c: * gst-libs/gst/gl/gstglbasesrc.h: * gst-libs/gst/gl/meson.build: gl: New pushsrc-based glbasesrc base class The gltestsrc element was refactored to inherit from this base class which handles the GL context. The sub-class only needs to implement the gl_start, gl_stop and fill_gl_memory vfuncs, along with properly advertizing the GL APIs it supports through the supported_gl_api GstGLBaseSrc class attribute. 2019-08-16 11:58:28 +0300 Sebastian Dröge * gst-libs/gst/video/video-frame.c: video-frame: Take TFF flag from the video info if it was set in there The caps and thus the video info have preference. If the field order is set in there then it applies to all frames. This works around issues where the tff field order is only set in the caps but not additionally in the buffer flags. 2019-08-12 18:00:34 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: add missing Since tag 2019-08-09 16:04:03 -0400 Xavier Claessens * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix external-oes shader The #extention must come before 'precision highp float;'. Closes: #650 2019-08-12 22:42:10 +0900 Seungha Yang * gst-libs/gst/video/video-hdr.h: video-hdr: Fix document typo Fix missing document update. GstVideoContentLightMeta was changed to GstVideoContentLightLevel during code review. 2019-08-11 14:16:51 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-color.c: video-color: keep UNKNOWN colorimetry define automatically up-to-date Follow-up to !310 and helps with backport commits like !360 2019-08-08 11:43:03 +0900 Seungha Yang * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: gl: Add support for P016 format All implementation for P010_10LE/BE can be reused. 2019-08-08 01:06:57 +0900 Seungha Yang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add P016 LE/BE formats Add semi-planar 4:2:0 16 bits format. 2019-08-07 20:18:34 +0200 Mathieu Duponchelle * ext/pango/gsttimeoverlay.c: timeoverlay: chain up finalize Mistakenly forgot to amend this in for !325 2019-08-06 21:49:04 +0900 Seungha Yang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add Y444_16LE and Y444_16BE formats Add 16 bits planar 4:4:4 YUV formats. 2019-08-07 13:01:07 +0300 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: Fix ADF detection when trying to extract data from vanc Previously we were checking offset 1 twice, but the second check should've been for offset 2. 2019-07-10 14:00:56 +0200 Mathieu Duponchelle * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: timeoverlay: add a property to show times as dates In this mode, buffer timestamps are displayed as an absolute date since a user-specifiable epoch. The format is also specifiable as a string property, that will be passed to g_date_time_format(). 2019-08-02 10:26:24 -0400 Aaron Boxer * tests/examples/playback/playback-test.c: playback-test: plug some memory leaks 2019-07-30 04:01:55 +1000 Jan Schmidt * gst-libs/gst/tag/gstexiftag.c: exiftag: Don't output rational numbers with denominator = 0 2019-05-28 17:43:25 +0200 Lucas Stach * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: fix wayland event source burning CPU Commit c71dd72b "gl/wayland: fix glib mainloop integration" was overeager in removing the poll result test from the check function. This caused dispatch to be called even if no new events are available on the Wayland connection, which in turn would wake up the glib mainloop, causing effectively a tight loop without ever blocking on the poll. Fixes #603 2019-07-24 10:12:17 +0200 Martin Liska * configure.ac: Add used attribute in order to make NEON detection working with -flto. 2019-07-24 14:25:19 +1000 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: don't passthrough on same caps If we do, then multiple disjoint OpenGL contexts will not perform the necessary download and reupload of data that is necessary to cross between each OpenGL context sharegroup. 2019-07-23 13:54:24 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Check for NULL return of gst_type_find_peek() instead of segfaulting in otio typefinder See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/329#note_194943 2019-07-23 09:09:35 +0900 Wonchul Lee * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix g-i warning 2019-07-12 16:37:10 -0400 Thibault Saunier * gst/typefind/gsttypefindfunctions.c: typefind: Add typefind functions for fcpxml, xmel and otio file formats 2019-07-19 18:52:02 +0200 Mathieu Duponchelle * tests/check/elements/audiomixer.c: * tests/check/elements/compositor.c: aggregator tests: fix seek event seqnums In https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/207, aggregator starts ignoring seek events with duplicate seqnums. We thus need to update the seqnum of events when reusing them multiple times. 2019-07-16 12:23:01 +0200 Guillaume Desmottes * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * tests/check/libs/video.c: video-format: add gst_video_format_info_component() New API to find out which components are packed in a given plane. Will prevent us from assuming a 1-1 mapping between planes and components. 2019-07-12 16:56:52 +0200 Mathieu Duponchelle * gst-libs/gst/rtp/gstrtpbasedepayload.c: basedepayload: do not create segment in onvif mode basedepayload generates its own segment in a pretty unconventional manner, relying on information in the caps such as npt-start or npt-stop, usually set by rtspsrc. In ONVIF mode, rtspsrc will generate the correct segment and this logic in rtpbasedepayload will not be needed, this commit allows rtspsrc to signal that through the caps. 2019-07-18 08:46:42 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Split getcaps() function into two One for convert pads and one for normal sink pads. 2019-07-16 10:40:16 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: We can only convert the format if a GstVideoAggregatorConvertPad is used Otherwise assume that we can at least support any framerate. 2019-07-16 10:34:24 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Always take first configure pad's rate and downstream caps into account when calculating allow sink caps While we can convert between all formats apart from the rate, we actually need to make sure that we comply with a) the rate of the first configured pad and b) also all the allowed rates from downstream. 2019-07-16 10:02:08 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: If we don't have a GstAudioAggregatorConvertPad, don't assume that we can actually convert 2019-07-15 16:08:34 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: always use downstream's rate requirements We were previously only fixating the rate in the getcaps implementation when downstream was requiring a discrete value, causing negotiation to fail when upstream was capable of rate conversion, but not made aware that it had to occur. Instead of fixating the rate, we can simply update our sink template caps with whatever GValue the downstream caps are holding as their rate field. Allows negotiation to successfully complete with pipelines such as: audiotestsrc ! audio/x-raw, rate=48000 ! audioresample ! audiomixer name=m ! \ audio/x-raw, rate={800, 1000} ! autoaudiosink \ audiotestsrc ! audio/x-raw, rate=44100 ! audioresample ! m. 2019-07-17 19:11:12 +0530 Nirbheek Chauhan * docs/meson.build: meson: Don't generate doc cache when no plugins are enabled Fixes gst-build with -Dauto-features=disabled 2019-07-17 02:44:12 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: video-color: Enhance documentation of gst_video_colorimetry_to_string() It could return null string. So need to clarify when it will be null. 2019-07-10 12:46:17 +0900 Seungha Yang * tests/check/libs/video.c: tests: video: Add test conversion between colorimetry and ISO/IEC 23001-8 values Test forward/backword conversion of color{matrix,transfer,primaries}. 2019-07-10 00:16:58 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: Add util functions for conversion from/to ISO/IEC 23001-8 ... and also as known as ITU-T H.273. The conversion has been handled per plugin for now. That causes code duplication a lot also some plugins might not be updated with newly introduced color{matrix,transfer,primaries} enum value(s). Instead of handling it per plugin, centralized handling can remove such code duplication and make plugins be up-to-dated. 2019-07-09 14:28:46 +0300 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: * tests/check/libs/sdp.c: sdp: Add support for parsing the extmap attribute from caps and storing inside caps The extmap attribute allows mapping RTP extension header IDs to well-known RTP extension header specifications. See RFC8285 for details. We store the extmap attribute either as string in the caps extmap-X=extensionname where X is the integer extension header ID, or as 3-tuple of strings extmap-X= where direction or extensionattributes are allowed to be the empty string. Both formats are allowed because usually only the extension name is given and it's much simpler to handle in caps. 2019-07-10 21:57:13 +0000 Thibault Saunier * gst/typefind/gsttypefindfunctions.c: Revert "typefind: Hold off making suggestions too early for MPEG based formats" This reverts commit 36319169d06f778acee2b33d728d2089d15370d6 2019-06-26 15:53:11 -0600 Thomas Bluemel * gst/typefind/gsttypefindfunctions.c: typefind: Hold off making suggestions too early for MPEG based formats By suggesting possible detection too early, it's possible that the wrong format is detected. Hold off making suggestions until one of the following conditions is met: * Probability > GST_TYPE_FIND_LIKELY * At least MPEG_MIN_PROBE_LENGTH bytes have been examined * EOS, in which case the best guess wins Fixes #628 2019-07-10 01:27:43 +0900 Seungha Yang * tests/examples/overlay/win32-videooverlay.c: examples: win32-videooverlay: Fix C2440 build error Follow WNDPROC define to avoid implicit type conversion. 2019-06-25 19:15:29 -0700 Dylan McCall * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gstgldisplay: Add public foreign_display property We use this property in gst_gl_display_egl_from_gl_display, to set foreign_display for the new GstGLDisplayEGL instance. This fixes a problem where gst_gl_display_egl_finalize calls EglTerminate on a pre-existing EGL connection. 2019-07-05 20:14:34 +0530 Sumaid Syed * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * tests/check/libs/tag.c: tag: Add tags for acoustid id & acoustid fingerprint Mapping followed: https://picard.musicbrainz.org/docs/mappings/ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/612 2019-05-22 14:26:42 +0530 Sumaid * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * tests/check/libs/tag.c: tag: Repair support for MusicBrainz IDs Add missing release group ID and track ID Mapping Followed: https://picard.musicbrainz.org/docs/mappings/ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/612 2019-07-06 17:02:27 +0900 Seungha Yang * tests/examples/overlay/meson.build: * tests/examples/overlay/win32-videooverlay.c: examples: Add a video overlay example for WIN32 videosink elements User can set the target WIN32 video element via "videosink" command line option. Default is glimagesink. 2019-07-03 09:07:06 +0000 Marc Leeman * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: egl: wl_egl_window is not wl_proxy It seems that eglCreatePlatformWindowSurfaceEXT is failing (with EGL_BAD_ALLOC) because it thinks an EGL surface has already been created for the wl_egl_window. The reason is that the "driver_private" field of the wl_egl_window is getting clobbered by the function wl_proxy_set_queue(). Since a wl_egl_window is not a wl_proxy, it shouldn't be passed to wl_proxy_set_queue(). It just wraps a wl_surface (which is a wl_proxy). And it looks like the queue for that surface is getting set earlier on in the function anyway. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/621#note_184582 2019-06-30 13:10:50 +0900 Seungha Yang * tools/gst-play.c: gst-play: Handle "space" key event correctly on Windows The key name string given by GetKeyNameText() can have uppercase letter. 2019-06-28 07:22:17 +0200 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: data-offset increase not set 2019-06-27 08:04:07 +0200 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtpsconnection: Fix number of n_vectors Body_offset mean that so much data have been written. Without this patch n_vectors somtimes becomes one more than it should and then there will be an vector that have a random size causing writev_bytes to cause a "Bad address" error. 2019-06-26 17:05:04 +0530 Nirbheek Chauhan * gst-libs/gst/video/video-color.c: video-color: Add compile-time assert for ColorimetryInfo enum A comment is not sufficient because this will break when cherry-picking or backporting commits. 2019-06-26 03:39:54 -0400 Doug Nazar * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Fix leak on failed audio gaps If we fail to process the gap event we need to unref the event or we end up with a leak. 2019-06-24 09:44:29 +0000 Tim-Philipp Müller * gst/compositor/compositor.c: compositor: fix compiler warning due to c99-ism 2019-06-23 11:34:49 +0100 Philippe Normand * gst-libs/gst/gl/gstglupload.c: glupload: Keep track of cached EGLImage texture format This patch fixes the following critical warning: CRITICAL **: 11:33:32.843: Unknown GL format 0x0 provided It would happen during the setup of a second pipeline involving the DMABuf uploader, typically with a v4l2src element. The warning was raised because the uploader had a cached EGLImage already filled but the formats were not synchronized accordingly. 2018-11-19 17:19:33 +0100 Marco Felsch * gst-libs/gst/video/video-info.c: video-info: parse field-order for all interleaved formats The "field-order" is related for all interlace_mode modes except the "progressive" mode. So instead of or'ing each mode we can use the already supported GST_VIDEO_INFO_IS_INTERLACED macro. 2019-06-13 13:07:06 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.h: glimagesink: add support for P010 variants This makes a pipeline below works: little endian: gst-launch-1.0 videotestsrc ! video/x-raw,format=P010_10LE ! glimagesink big endian: gst-launch-1.0 videotestsrc ! video/x-raw,format=P010_10BE ! glimagesink 2019-06-18 16:14:33 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: rename the NV12/NV12 shader to semi planar This shader can be used for other semi planar formats, e.g. P010_10LE 2019-06-17 16:46:21 -0700 Song Bing * gst/playback/gstplaysink.c: playsink: Set ts-offset to text sink. Find right text sink to set the ts-offset. 2019-06-05 09:26:08 +0800 Haihao Xiang * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.h: glimagesink: add support for BGR10A2_LE / RGB10A2_LE This makes a pipeline below work: gst-launch-1.0 videotestsrc ! video/x-raw,format={BGR10A2_LE, \ RGB10A2_LE} ! glimagesink 2019-06-14 14:53:56 +0800 Haihao Xiang * gst-libs/gst/gl/gstglformat.c: glformat: removde dead break after return 2019-06-17 21:57:33 -0400 Roman Sivriver * gst-libs/gst/video/video-anc.c: video-and: Fix buffer overflow detected by asan gst_meta_api_type_register() assumes that the last tags element is null, but it wasn't ==17422==ERROR: AddressSanitizer: global-buffer-overflow on address 0x7f4e2a67c998 at pc 0x7f4e2a0c92ac bp 0x7ffcc41f80b0 sp 0x7ffcc41f80a0 READ of size 8 at 0x7f4e2a67c998 thread T0 #0 0x7f4e2a0c92ab in gst_meta_api_type_register ../subprojects/gstreamer/gst/gstmeta.c:94 #1 0x7f4e2a5582c3 in gst_video_afd_meta_api_get_type ../subprojects/gst-plugins-base/gst-libs/gst/video/video-anc.c:1146 #2 0x404c7c in invoke_get_type (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x404c7c) #3 0x406b5c in dump_irepository (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x406b5c) #4 0x407089 in main (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x407089) #5 0x7f4e295b4b6a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x26b6a) #6 0x404479 in _start (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x404479) 0x7f4e2a67c998 is located 40 bytes to the left of global variable 'tags' defined in '../subprojects/gst-plugins-base/gst-libs/gst/video/video-anc.c:1232:25' (0x7f4e2a67c9c0) of size 24 0x7f4e2a67c998 is located 0 bytes to the right of global variable 'tags' defined in '../subprojects/gst-plugins-base/gst-libs/gst/video/video-anc.c:1141:25' (0x7f4e2a67c980) of size 24 SUMMARY: AddressSanitizer: global-buffer-overflow ../subprojects/gstreamer/gst/gstmeta.c:94 in gst_meta_api_type_register 2018-10-15 22:35:09 +0900 Seungha Yang * tests/check/libs/pbutils.c: tests: pbutils: Add test parsing H265 profiles 2018-10-15 21:16:56 +0900 Seungha Yang * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Add parsing H265 range extensions profiles Add support all h265 profiles defined by ITU-T H.264 (02/2018) revision 2019-06-15 14:33:32 +0900 Wonchul Lee * gst-libs/gst/app/gstappsrc.c: appsrc: Fix typo in documentation 2019-06-15 10:41:29 +0900 Wonchul Lee * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix typo in documentation 2017-10-10 15:45:14 +0200 Håvard Graff * pkgconfig/meson.build: meson.build: use join_paths() on prefix So that "/" are correct on Windows. 2019-05-29 13:24:04 +0300 Adrian Negreanu * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext_egl: check if eglChooseConfig has a matching config The specs recommends to also check the num_config parameter. 2019-06-14 02:32:50 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Copy frames as-is when possible The blend functions for alpha formats need to do more work than just doing a memcpy, so we can do a memcpy when we know that a blend is not actually needed. 1080p AYUV ! compositor background=transparent ! fakesink - 56% faster Specifically, when we don't draw the background and the first pad we draw completely covers the output frame, we can just copy it as-is. The rest of the pads (if any) will get composited on top normally. 2019-06-13 10:36:05 +0200 Stian Selnes * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: Add max-reorder property Add max-reorder property to make the old hard coded reordering limit of 100 configurable. It's particularly useful in some scenarios to set max-reorder=0 to disable the behavior that the depayloader will drop packets. Note that although the default value is 100, the default limit has increased with one because of the changed if-test. This was done to allow the max-reorder value to be more intuitive. See tests. 2019-06-13 20:30:03 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Sprinkle some const in prototypes These helper functions don't edit the rectangles passed in. 2019-05-26 17:47:20 +0200 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Skip background if transparent and obscured If the background is transparent and obscured by a pad that may or may not have alpha, we can still skip drawing it entirely AYUV 1080p ! compositor background=transparent ! fakesink - 75% faster 2019-05-26 17:30:12 +0200 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Skip the background when not visible We don't need to waste time drawing the background when one of the pads completely covers the output and there's no alpha on the pad or in the video format. Speedups: I420 1080p ! compositor ! fakesink - 72% faster I420 1080p ! compositor background=black ! fakesink - 45% faster 2019-05-26 18:28:18 +0200 Nirbheek Chauhan * gst/compositor/blend.c: compositor: Don't log per-frame under GST_INFO 2019-05-26 17:29:23 +0200 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Factor-out rectangle-obscuring check We're going to use this for checking if one of the pads obscures the background. 2019-05-26 15:23:25 +0200 Nirbheek Chauhan * gst/compositor/compositor.c: * gst/compositor/compositor.h: compositor: Add some comments, remove outdated ones 2019-05-26 15:23:06 +0200 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Remove unused function argument 2019-06-05 18:23:16 +1000 Matthew Waters * tests/check/pipelines/gl-launch-lines.c: tests/gl-launch-lines: gltestsrc works on gles2/opengl3 now There's no need to feature gate the gltestsrc pipelines anymore 2019-06-05 18:17:35 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: perform _get_highest_precision on the GL thread gst_gl_shader_string_get_highest_precision needs to make an OpenGL call so execution outside the OpenGL thread and context results in undefined behaviour. 2019-06-05 18:06:57 +1000 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * tests/check/pipelines/gl-launch-lines.c: glmosaic: port to opengl3/gles2 Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/543 2019-06-13 15:36:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: add a couple of preconditions of invalid usage 2019-06-12 17:20:10 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/gstglcontext.c: gl: detect possible GL version prefix Instead of checking if the requested GL API is GLES2 (because ANY can be set) the string is matched with the GLES2 prefix, and if so, then the string is offset. 2018-10-16 16:56:26 +0200 Havard Graff * tests/check/meson.build: meson: add rtpmeta-tests 2019-06-12 14:32:03 +0200 Havard Graff * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: don't use GINT_TO_POINTER with GType GType can (and will) be 64bit. GINT_TO_POINTER is not. This will result in the api-type checked for being a different one than it actually is... 2019-06-12 14:31:09 +0200 Havard Graff * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: don't consider existing GstRTPSourceMeta The meta should always be generated based on what is present in the rtp-header. 2019-06-12 12:32:33 +0000 Marc Leeman * gst-libs/gst/rtp/gstrtppayloads.c: gstrtppayloads: add vp8/vp9/opus encoding-name Adding these encoding names allows easy lookup of the caps based on the encoding-name. 2019-06-12 04:45:09 +0900 Eike Hein * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Start CSeq at 1 RFC 7826 recommends (but does not require) starting at 0, but at least one known server implementation fails to copy request sequence numbers <1 into responses due to an incorrect null check. The server known to exhibit this behavior is the Parrot Streaming Server, serving video from their UAV devices. A fix has been submitted upstream as well: https://github.com/Parrot-Developers/librtsp/pull/2 The Parrot developers are known to have tested with LibVLC. In WireShark debugging, LibVLC appears to start with a CSeq of 2, which is likely why this bug went unnoticed. This reverts 487595a7d6e2d, which set this to 0 citing the RFC. The switch to 0 was thus a recent one; it's therefore possible server implementors relied on the previous GStreamer client behavior in their tests as well. Fixes #624. 2019-06-03 15:51:02 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: viv-fb: fix build break for GST_GL_API Need include config.h in gstglwindow_viv_fb_egl.c 2019-06-07 22:29:10 -0400 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Plug some leaks in the cache loading path 2019-06-08 02:57:37 +1000 Matthew Waters * tests/check/libs/gstglheaders.c: gl/tests: fix shader creation tests part 2 Continuation of 4fd7a2c783e96e5ebec513f8fd178ba34b2a527f We check the availability of the high precision floats in GLSL shaders which involves an OpenGL call and thus is required to be executed on the OpenGL thread. The tests were not respecting that and could fail on more strict drivers. Tests update for 675415bf2ea9ddc75ea5e5b6eae9ae942c19d6dc Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/590 2019-06-07 20:51:39 +1000 Matthew Waters * tests/check/libs/gstglheaders.c: * tests/check/libs/gstglslstage.c: gl/tests: fix shader creation tests We check the availability of the high precision floats in GLSL shaders which involves an OpenGL call and thus is required to be executed on the OpenGL thread. The tests were not respecting that and could fail on more strict drivers. Tests update for 675415bf2ea9ddc75ea5e5b6eae9ae942c19d6dc Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/590 2019-06-05 22:25:45 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind: suppress incorrect conditional error in orc backup code 2019-06-05 22:20:43 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: unref "next" variant when parsing from variant 2019-06-05 22:10:47 +0200 Mathieu Duponchelle * tests/check/elements/audiorate.c: valgrind: free buffer list in audiorate test 2019-06-05 22:06:26 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind: suppress conditional jump or move error valgrind gets confused with the following piece of code: var37.i = ORC_CLAMP_SL((orc_int64)var33.i + (orc_int64)var34.i); Where all variables are orc_int32 2019-06-05 13:25:34 +0100 Fernando Herrrera * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: wayland: set the event queue also for the xdg_wm_base object 2019-06-04 09:01:47 +0200 Niels De Graef * gst-libs/gst/allocators/gstdmabuf.h: * gst-libs/gst/allocators/gstfdmemory.h: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.h: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gsttagmux.h: * gst-libs/gst/video/colorbalancechannel.h: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-overlay-composition.h: Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally Since we started depending on GLib 2.44, we can be sure this macro is defined (it will be a no-op on compilers that don't support it). For plugins we should just start using `G_DECLARE_FINAL_TYPE` which means we no longer need the macro there, but for most types in base/gst-libs we don't want to break ABI, which means it's better to just keep it like it is (and use the `#ifdef` instead). 2018-08-31 18:33:43 -0300 Thibault Saunier * ext/alsa/Makefile.am: * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsadeviceprobe.h: * ext/alsa/gstalsadeviceprovider.c: * ext/alsa/gstalsadeviceprovider.h: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/alsa/meson.build: alsa: Implement a DeviceProvider Removing gstalsadeviceprobe.[ch] as it was a relique from the 0.10 century. This doesn't implement device monitoring but only probing, monitoring should be implemented in its own commit. 2019-06-04 15:04:03 +0200 Mathieu Duponchelle * docs/meson.build: docs: override rtsp library project name .. to avoid conflicts with the rtsp plugin 2019-06-04 14:58:45 +0200 Mathieu Duponchelle * docs/meson.build: docs: override rtp library project name .. to avoid conflicts with the rtp plugin 2019-05-31 23:02:53 +0200 Niels De Graef * configure.ac: * meson.build: meson: Bump minimal GLib version to 2.44 This means we can use some newer features and get rid of some boilerplate code using the G_DECLARE_* macros. As discussed on IRC, 2.44 is old enough by now to start depending on it. 2019-05-30 18:43:14 +0200 Mathieu Duponchelle * tests/check/elements/compositor.c: compositor: remove invalid test With https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/159, a single flush start on an aggregator sinkpad will start the flushing process if the aggregator isn't already flushing. The behaviour that this test was checking for is thus no longer correct 2019-05-28 17:04:51 +0200 Daniel Klamt * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: Added GI annotation for gstvideoaffinetransformationmeta apply_matrix The problem is that Gobject Introspections does not understand the const gfloat matrix[16] as an matrix but as an array of gfloasts but as just one gfloat. To fix this i added the annotation to the parameter descriptions. 2019-06-01 01:00:06 +0200 Mathieu Duponchelle * docs/meson.build: docs: unprefix subproject paths special case for app, renamed to applib to not conflict with the plugin 2019-05-30 01:12:59 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/encoding-target.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybin3.c: * gst/playback/gsturisourcebin.c: * gst/rawparse/gstrawbaseparse.c: doc: remove xml from comments 2019-05-29 14:41:10 -0400 Thibault Saunier * gst/overlaycomposition/gstoverlaycomposition.c: overlaycompositor: Show the full example instead of a stripped down version 2019-05-29 11:14:05 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: update plugin docs cache 2019-05-13 21:11:12 -0400 Nicolas Dufresne * gst/overlaycomposition/meson.build: doc: Add gstoverlaycomposition to the plugins list 2019-05-25 19:43:33 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: Update plugin cache 2019-05-25 17:26:52 +0200 Mathieu Duponchelle * ext/gl/gstglfiltershader.c: gstglfiltershader: don't try to link to "version" in doc 2019-05-25 16:54:39 +0200 Mathieu Duponchelle * ext/pango/gstclockoverlay.c: * ext/pango/gsttimeoverlay.c: * gst/audiomixer/gstaudiomixer.c: * gst/gio/gstgiostreamsink.c: * gst/playback/gstdecodebin3.c: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawvideoparse.c: * gst/tcp/gstmultisocketsink.c: doc: fix element section documentations Element sections were not rendered anymore after the hotdoc port, fixing this revealed a few incorrect links. 2019-05-24 15:54:50 +0200 Sebastian Dröge * gst/compositor/compositororc.orc: compositor: Replace shift and conv opcodes by convh in BGRA SOURCE operator Potentially speeds up processing a bit. 2019-05-24 15:53:55 +0200 Sebastian Dröge * gst/compositor/compositororc.orc: compositor: Remove unneeded left shift for ARGB/AYUV SOURCE operator The alpha value is already in the lower 8 bits from the beginning in this case. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/610 2019-05-24 15:22:58 +0200 Arun Raghavan * gst-libs/gst/video/video-color.c: video-color: Deal with NULL colorimetry while converting from string This came up in the case where v4l2 sets caps with colorimetry=NULL, and then tries to parse back the colorimetry, causing a crash in gst_video_get_colorimetry() because of g_str_equal(). We fix this by making sure the only caller of the function never calls it with a null colorimetry string. 2019-05-24 16:35:08 +0200 Arun Raghavan * gst-libs/gst/video/video-color.c: video-color: Fix unknown colorimetry checking Also drop some deadcode #defines. 2019-05-05 21:02:46 +0900 Seungha Yang * tests/check/libs/video.c: tests: video: Enable PQ and HLG transfer en/decode tests 2019-05-05 21:02:55 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: Add ARIB STD-B67 transfer chracteristic function It's known also as Rec. ITU-R BT.2100-1 hybrid log-gamma (HLG) used for both SDR and HDR rendering. 2019-05-05 19:22:13 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: Add SMPTE ST 2084 support and BT 2100 colorimetry SMPTE ST 2084 transfer characteristics (a.k.a ITU-R BT.2100-1 perceptual quantization, PQ) is used for various HDR standard. With ST 2084, we can represent BT 2100 (Rec. 2100). BT 2100 defines various aspect of HDR such as resolution, transfer functions, matrix, primaries and etc. It uses BT2020 color space (primaries and matrix) with PQ or HLG transfer functions. 2019-05-05 19:08:55 +0900 Seungha Yang * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: Define bt2020-10 transfer characteristics for clarity bt707, bt2020-10, and bt2020-12 transfer characteristics are functionally identical but have their own unique values by specification. 2019-05-16 08:53:51 +0100 Tim-Philipp Müller * gst/playback/gsturidecodebin.c: * gst/playback/gsturisourcebin.c: uridecodebin, urisourcebin: fix buffering for ssh:// URIs Protocols that are in the stream_uris list should always be streams, no matter what they respond to the scheduling query. The flag in the scheduling query is just another way to declare something that needs buffering without the whitelist, the absence of the flag shouldn't make us ignore our known protocol list. Also set is_stream always to a boolean and not a mask value. 2019-05-20 11:14:27 +1000 Matthew Waters * docs/libs/gl/index.md: * docs/libs/gl/sitemap.txt: * docs/meson.build: * ext/gl/gstglalpha.h: * ext/gl/gstglcolorbalance.h: * ext/gl/gstgldownloadelement.h: * ext/gl/gstgloverlay.h: * ext/gl/gstgluploadelement.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gbm/gstgldisplay_gbm.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl/docs: add to new docs system 2018-02-26 14:25:40 +0100 Georg Lippitsch * ext/alsa/gstalsasrc.c: alsasrc: Don't use driver timestamp if it's zero Some alsa interfaces don't provide timestamps and thus always set the timestamp to zero. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/453 2019-05-17 16:35:40 +0300 Vivia Nikolaidou * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Max audio frequency is half the rate, not 1/4 https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem 2019-05-17 12:26:40 +0100 Tim-Philipp Müller * docs/meson.build: docs: don't build plugins doc cache by default https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36 2019-05-13 22:53:24 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Update plugins documentation cache Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36 2019-05-14 01:56:58 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: gstaudioaggregator: expose output-buffer-duration-fraction The code for this is mostly lifted from audiobuffersplit, it allows use cases such as keeping the buffers output by compositor on one branch and audiomixer on another perfectly aligned, by requiring the compositor to output a n/d frame rate, and setting output-buffer-duration to d/n on the audiomixer. The old output-buffer-duration property now simply maps to its fractional counterpart, the last set property wins. 2019-05-14 13:34:13 +0200 Guillaume Desmottes * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: fix crash if buffer doesn't have video meta Fix #501 2019-05-12 18:33:32 +0900 Seungha Yang * meson.build: meson: Don't try to find gio-unix on Windows 2019-04-23 17:51:25 -0400 Thibault Saunier * gst-libs/gst/video/gstvideoutils.c: video:doc: Remove duplicated gstvideoutils SECTION 2018-11-11 19:03:33 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: Mark some properties as DOC_SHOW_DEFAULT 2018-09-21 13:54:39 -0300 Thibault Saunier * ext/gl/gstglsinkbin.c: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/tag/tags.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: * gst-libs/gst/video/videooverlay.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplayback.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultisocketsink.c: doc: Fix some gtk-doc comments 2018-10-22 08:17:24 +0200 Thibault Saunier * docs/gst_api_version.in: * docs/index.md: * docs/libs/allocators/index.md: * docs/libs/allocators/sitemap.txt: * docs/libs/app/index.md: * docs/libs/app/sitemap.txt: * docs/libs/audio/index.md: * docs/libs/audio/sitemap.txt: * docs/libs/ext/sitemap.txt: * docs/libs/fft/index.md: * docs/libs/fft/sitemap.txt: * docs/libs/pbutils/index.md: * docs/libs/pbutils/sitemap.txt: * docs/libs/riff/index.md: * docs/libs/riff/sitemap.txt: * docs/libs/rtp/index.md: * docs/libs/rtp/sitemap.txt: * docs/libs/rtsp/index.md: * docs/libs/rtsp/sitemap.txt: * docs/libs/sdp/index.md: * docs/libs/sdp/sitemap.txt: * docs/libs/tag/index.md: * docs/libs/tag/sitemap.txt: * docs/libs/video/index.md: * docs/libs/video/sitemap.txt: * docs/meson.build: * docs/plugins/all_index.md: * docs/plugins/gst_plugins_cache.json: * docs/plugins/index.md: * docs/plugins/sitemap.txt: * docs/sitemap.txt: * docs/version.in: * ext/alsa/meson.build: * ext/cdparanoia/meson.build: * ext/gl/meson.build: * ext/libvisual/meson.build: * ext/ogg/meson.build: * ext/opus/meson.build: * ext/pango/meson.build: * ext/theora/gsttheoraenc.c: * ext/theora/meson.build: * ext/vorbis/meson.build: * gst-libs/gst/pbutils/encoding-profile.c: * gst/adder/meson.build: * gst/app/meson.build: * gst/audioconvert/meson.build: * gst/audiomixer/meson.build: * gst/audiorate/meson.build: * gst/audioresample/meson.build: * gst/audiotestsrc/meson.build: * gst/compositor/meson.build: * gst/encoding/meson.build: * gst/gio/meson.build: * gst/pbtypes/meson.build: * gst/playback/meson.build: * gst/rawparse/meson.build: * gst/subparse/meson.build: * gst/tcp/meson.build: * gst/typefind/meson.build: * gst/videoconvert/meson.build: * gst/videorate/meson.build: * gst/videoscale/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: * meson_options.txt: * sys/ximage/meson.build: * sys/xvimage/meson.build: doc: Port to hotdoc 2018-09-14 09:33:35 -0300 Thibault Saunier * Makefile.am: * configure.ac: * docs/Makefile.am: * docs/libs/.gitignore: * docs/libs/Makefile.am: * docs/libs/compiling.sgml: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-overrides.txt: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * docs/libs/meson.build: * docs/meson.build: * docs/plugins/.gitignore: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/gst-plugins-base-plugins.types: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * docs/plugins/scanobj-build.stamp: * docs/version.entities.in: doc: Remove gtk-doc support 2018-10-22 11:44:37 +0200 Thibault Saunier * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: meson: Add variables for gir files And flatten list of sources for dependencies 2018-10-22 11:37:44 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst/playback/gstplayback.c: docs: Add some missing sections documentation 2018-10-22 11:37:41 +0200 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: docs: Enhance GstEncodingProfile and GstEncodingTarget doc 2019-05-07 18:36:01 +1000 Matthew Waters * gst-libs/gst/gl/gstglshaderstrings.c: glshader: fix default external-oes shaders In glsl, #extension directives need to before other non-preprocesser directives. We were placing the precision qualifier before that. Fix by moving the #extension to the first line in the shader. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/601 2019-05-06 13:23:22 +0200 Antonio Ospite * tests/check/elements/subparse.c: test: add subparse test for SRT subtitles with no newline at the end Add a test to verify that SRT subtitles work even if the last chunk does not have an empty line after it. 2019-05-06 12:48:49 +0200 Antonio Ospite * gst/subparse/gstsubparse.c: * tests/check/elements/subparse.c: subparse: fix pushing WebVTT cue when last is not an empty line If the last WebVTT cue does not have an empty line after it, or if it does not end with a newline at all, it does not get pushed out and it won't be displayed. gst_sub_parse_sink_event() already handles the issue for other subtitle formats, enable handling it for GST_SUB_PARSE_FORMAT_VTT too. While at it also add a test for this case. 2019-05-04 23:48:27 +0900 Seungha Yang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add RGB10A2_LE pixel format Packed 10 bits per each R, G and B channel with MSB 2bits alpha channel. This format is mapped to Windows' DXGI_FORMAT_R10G10B10A2_UNORM format which is required for 10bits HDR rendering. Note that this RGB10A2_LE format is R - B channel swapped version of BGR10A2_LE 2019-05-03 14:31:03 -0400 Xavier Claessens * meson_options.txt: Missing "android" choice in gl_winsys 2019-05-01 17:22:46 -0400 Thibault Saunier * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/meson.build: video: Generate GTypes for videotimecode enums 2019-05-01 17:22:24 -0400 Thibault Saunier * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Mark latest_daily_jame as allow-none in init\() 2019-05-01 11:25:31 -0500 A. Wilcox * tests/check/libs/video.c: video test: Keep BE test inline with LE test 2019-04-30 17:21:38 -0400 Aaron Boxer * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: video-anc: add AFD/Bar support 2019-05-01 15:44:44 -0400 Aaron Boxer * gst-libs/gst/video/video-frame.h: video-frame: update docs mention closed caption caps as valid caps for video buffer flags 2019-04-12 12:09:31 +0900 Seungha Yang * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add support HEIF file format finding A HEIF compatiable file (i.e., mif1 brand) needs special concern since 'moov' atom is not mandatory for the file although HEIF is a variant of ISOBMFF See http://standards.iso.org/ittf/PubliclyAvailableStandards/c066067_ISO_IEC_23008-12_2017.zip 2019-05-02 14:24:27 +0900 Seungha Yang * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Forward upstream HDR information to downstream ... if subclass didn't update values. Note that the mastering-display-info and content-light-level might be updated by user defined value (e.g., encoding option). 2019-04-27 22:29:25 +0900 Seungha Yang * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Forward upstream HDR information to downstream The HDR related information is not part of GstVideoInfo but should be passed to downstream. 2019-02-18 19:54:35 +0900 Seungha Yang * tests/check/libs/video.c: tests: video: Add test for video-hdr 2019-02-18 13:20:33 +0900 Seungha Yang video: Add new APIs for HDR information representation Introduce HDR signalling methods * GstVideoMasteringDisplayInfo: Representing display color volume info. Defined by SMPTE ST 2086 * GstVideoContentLightLevel: Representing content light level specified in CEA-861.3, Appendix A. Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/400 2019-04-29 11:25:02 +0200 Robert Rosengren * ext/alsa/gstalsasrc.c: alsasrc: driver timestamps only to be considered if system clock The system clock check when considering to use driver timestamp should not include sub-classes of system clock (such as the net clocks). 2018-06-08 11:03:03 +0200 Danny Smith * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: alsasrc: added option for chosing timestamps Added an option for chosing if driver or pipeline timestamps shall be used. 2019-04-26 09:44:07 +0300 Sebastian Dröge * gst-libs/gst/tag/gstid3tag.c: id3tag: Correctly validate the year from v1 tags before passing to GstDateTime By using strtoul(), invalid values will get mapped to MAXULONG and we would have to check errno. They won't get mapped to 0. To solve this, use the signed g_ascii_strtoll(). This will map errors to 0 or G_MAXINT64 or G_MININT64, and the valid range for GstDateTime is > 0 and <= 9999 so we can directly check for this here. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/384 2019-04-24 10:41:24 +0200 Niels De Graef * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: Don't prefix wl_shell struct field As part of commit 808e7127, we prefixed the `GstWlWindow`'s `shell` field with wl_, to differentiate it from the other types of shells a Wayland compositor might support. However, this is apparently a struct that we expose to our users, so changing it means we have an API break. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/592 2019-04-23 17:10:47 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Add compatibility define for DRM_FORMAT_NV24 2019-04-23 15:05:43 +0300 Sebastian Dröge * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/navigation.h: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-resampler.h: * gst-libs/gst/video/videooverlay.c: libs: Fix various Since markers 2019-04-23 14:52:28 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.h: audioaggregator: Add Since: 1.14 markers to all public structs 2019-04-23 14:42:17 +0300 Sebastian Dröge * gst-libs/gst/video/video-anc.h: video-anc: Add Since: 1.16 marker 2019-04-23 14:42:03 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Add Since: 1.16 markers to all public structs 2019-04-23 14:31:45 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglwindow.c: gl: Add various missing Since: 1.16 markers And add some missing function documentation. 2019-04-22 18:33:20 +0300 Sebastian Dröge * gst-libs/gst/video/video-anc.h: video-anc: Add DID16 value for SMPTE 2016-3 AFD/Bar data 2019-04-22 17:06:09 +0300 Sebastian Dröge * gst-libs/gst/video/video-anc.c: * tests/check/libs/videoanc.c: video-anc: Handle SD formats correctly VANC is stored linearly in SD formats instead of separating the Y and YV components from each other and having first all Y and then all UV values. 2019-03-27 12:30:00 +0100 Kristofer Bjorkstrom * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * tests/check/libs/rtspconnection.c: rtspconnection: add Content-Length limit Add the possible to limit the Content-Length Define an appropriate request size limit and reject requests exceeding the limit (413 Request Entity Too Large) 2019-04-19 10:24:36 +0100 Tim-Philipp Müller * README: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * meson.build: Back to development === release 1.16.0 === 2019-04-19 00:19:55 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * README: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.16.0 2019-04-19 00:19:55 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2019-04-19 00:19:53 +0100 Tim-Philipp Müller * po/zh_CN.po: Update translations 2019-01-23 12:50:40 +0100 Michael Tretter * gst-libs/gst/gl/gstglupload.c: glupload: prevent segfault when updating caps When the glupload element renegotiates the caps, set_caps will reset the method_impl to NULL, but the method will be kept. transform_caps tries to use the method_impl to transform the caps, because a method is set, but will segfault. === release 1.15.90 === 2019-04-11 00:23:25 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.15.90 2019-04-11 00:23:24 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2019-04-10 16:09:19 -0400 Aaron Boxer * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: video-anc: revert "add support for Bar and AFD meta-data" This reverts commit 8759c368515464193b0b1e119667f64c214d2c49. GstMeta may not be the appropriate vehicle for this information 2019-04-10 15:08:02 -0400 Nicolas Dufresne * gst-libs/gst/sdp/gstmikey.h: sdp: mikey: Add missing Since marker Two new enums value where added without a since mark, adding it. @GST_MIKEY_ENC_AES_GCM_128 @GST_MIKEY_SP_SRTP_AEAD_AUTH_TAG_LEN 2019-04-10 08:45:53 +0200 Kristofer Bjorkstrom * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: CSeq initial value set to 0 RFC 7826: "it is RECOMMENDED to start at 0. 2019-04-02 10:01:47 +0200 Kristofer Bjorkstrom * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: CSeq validation Make rtspconnection a little more strict to RFC2326. Make sure that CSeq is in every RTSP message and that CSeq is valid. Also break the build_next loop if any parsing fails, By acting on the builder->status code. 2019-04-03 08:51:16 +0200 Ulf Olsson * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: mikey: Add support for GCM (RFC 7714) The MIKEY details can be found in RFC 7714 section "14.3. MIKEY" 2019-03-26 10:12:55 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Lower down some debugging We do try to load target with 'random' string internally to load EncodingProfiles 2019-03-25 19:11:54 -0300 Thibault Saunier * gst/playback/gsturidecodebin.c: decodebin: Protect ->source with the object lock As expected by the property getter. Basically there are cases where we can be getting the source from any thread and in another thread bring back the element from PAUSED to READY, which leads to a critical warning (or worse). The only place where we use `->source` outside the property getter is the change_state function so the current way of setting/reading it should be safe. 2019-03-25 13:49:39 +0100 Guillaume Desmottes * gst-libs/gst/video/video-info.c: video-info: explain in logs why colorimetry are rejected It wasn't clear from the logs why some colorimetry format were rejected. 2019-04-08 21:52:52 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideometa.c: gstvideometa: fix annotation 2019-04-03 18:52:50 +0200 Víctor Manuel Jáquez Leal * gst/playback/gsturisourcebin.c: urisourcebin: don't set watermarks when download downloadbuffer element doesn't handle the properties low-watermark and high-watermark, those are handled by queue2. Currently hi and low watermarks are set regardless queue2 or downloadbuffer are used. Thus, when the later is set, a warning is raised. This patch sets the watermark properties first, if no download. 2019-04-07 22:08:37 +0100 Tim-Philipp Müller video-anc: fix g-i complaints video-anc.h:100: Error: GstVideo: identifier not found on the first line: * Active Format Description (AFD) support ^ video-anc.h:207: Error: GstVideo: identifier not found on the first line: * Bar data support ^ video-anc.h:228: Warning: GstVideo: "@top_bar_flag" parameter unexpected at this location: * @top_bar_flag : flag indicating presence of top bar field ^ 2019-04-07 13:29:15 -0400 Aaron Boxer * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: video-anc: add support for Bar and AFD meta-data 2018-11-19 23:42:14 +0100 Mathieu Duponchelle * gst-libs/gst/rtp/gstrtpbasepayload.c: basepayload: Expose onvif-no-rate-control property The ONVIF spec mandates that when Rate-Control=no, the RTP timestamps match the original sampling times, as opposed to the intended playback time. 2018-11-19 23:40:14 +0100 Mathieu Duponchelle * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspdefs: Add Onvif Rate-Control header 2018-11-12 20:11:59 +0100 Mathieu Duponchelle * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspdefs: Add Onvif Frames header 2019-04-04 23:15:50 +1100 Matthew Waters * tests/examples/gl/sdl/meson.build: examples/gl/sdl: only build on glx/wgl systems The code will not work anywhere else. FIxes https://gitlab.freedesktop.org/gstreamer/gst-build/issues/22 2019-03-15 13:06:53 +0800 Haihao Xiang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add BGR10A2_LE pixel format This pixel format is a packed 4:4:4 RGB with alpha channel (B-G-R-A), R/G/B channel has 10 bits and alpha channel is the MSB 2 bits. 2019-04-03 17:34:00 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideometa.c: gstvideometa: do not emit criticals when adding timecode metas This is inconsistent with other add_meta methods such as gst_buffer_add_video_meta , which will return NULL without logging when gst_video_info_set_format fails. It is up to the caller to check the return value of the function, and log if appropriate. 2019-04-01 12:06:02 -0400 Aaron Boxer * tests/check/libs/discoverer.c: discoverer: set 30 second for long-running tests 2019-04-01 11:10:21 -0400 Aaron Boxer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: async_timeout_cb: don't clean up timeout_source discoverer_collect() already does this. So, the second unref triggers an assert. 2019-04-01 09:53:19 -0400 Aaron Boxer * tests/check/libs/discoverer.c: discoverer: fix a race bug in disco test 2019-04-01 22:34:28 +0900 Jimmy Ohn * tests/check/libs/rtpmeta.c: tests: rtpmeta: Avoid C99 declaration in 'for' loop Avoid C99 declaration in for loop 2019-03-31 17:39:07 +0900 Seungha Yang * tools/gst-play-1.0.1: tools: gst-play: Update man page Add some missing option descriptions including the newly introduced one by https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/185 2019-03-29 13:17:55 +0900 Seungha Yang * tools/gst-play.c: gst-play: Add wait-on-eos option for image file playback Since gst-play is stopping playback on EOS message, image file playback is almost impossible until now. Not only for image file, this option seems to helpful if an user wants to see the last frame. 2019-03-29 12:42:45 +0900 Seungha Yang * ext/gl/gstgluploadelement.c: gluploadelement: Fix caps leak gst_event_new_caps() does not take ownership of the caps Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/885 2019-03-25 15:05:48 +0800 Haihao Xiang * gst-libs/gst/video/video-format.c: video: fix unpack_Y410 It should handle data starting from x 2019-03-25 14:07:08 +0800 Haihao Xiang * gst-libs/gst/video/video-format.c: video: fix unpack_Y210 It should handle data starting from x and width may be an odd 2018-12-11 11:37:36 +0100 Guillaume Desmottes * gst-libs/gst/video/video-info.c: * tests/check/libs/video.c: video-info: check if alternate caps has the feature as well It's invalid to have a 'interlace-mode=alternate' without the Interlaced caps feature as well. Modify gst_video_info_from_caps() to reject such case so we can easily spot them in bugged elements. 2018-11-22 12:13:06 +0100 Guillaume Desmottes * gst-libs/gst/video/video-info.c: * tests/check/libs/video.c: video-info: handle 'field-order' in alternate mode The alternate interlace mode may also use the 'field-order' field in caps. 2019-03-24 20:45:03 +0000 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: decodebin2: fix pad leak and problem with GWeakRef code Follow-up to !160 and commit 6a99ad2c. Firstly, don't leak the sinkpad. g_weak_ref_get() returns a strong reference (unless it returns NULL), so that must be unrefed, as detected by the playbin-complex and discoverer unit tests. Next, if we do that we get invalid memory access when the final pad ref is dropped a few lines below after the request pad is released. The reason for this is that GWeakRefs are not movable once they're in use, because their address will be stored inside the object. In this case the GWeakRef was embedded inside the GstDemuxerPad struct which in turn was embedded inside the GArray data section, and when the GArray gets resized, the structs move. Just KISS and use a list with individual allocations for each DemuxerPad instead. 2019-03-23 12:27:24 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: video: speed up test_video_color_convert This test takes a long time. It tests ca. 8900 conversion combinations, and then it also runs each conversion for at least 100ms in order to come up with some kind of benchmark. Remove the benchmarking from the unit test, we have a separate benchmarking tool for that now. Also split the conversions into groups and run those as separate checks, which allows better parallelisation at the runner level (normal runs and when using valgrind). 2019-03-23 12:25:37 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: video: reduce debug log spam This shouldn't be logged at info level. 2019-03-23 12:24:04 +0000 Tim-Philipp Müller * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/benchmark-video-conversion.c: * tests/icles/meson.build: tests: icles: add video conversion benchmark Split out the benchmarking code from the unit test and make it a bit more useful. 2019-03-23 23:46:28 +0000 Tim-Philipp Müller * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/gstglmemory.c: gl: suppress some g-i warnings gst_gl_memory_setup_buffer() was marked as introspectable=0 anyway, so might just as well mark it as '(skip)' and suppress the warning. Reason is the (element-type gpointer) on wrapped_data. gstglmemory.c:1426: Warning: GstGL: gst_gl_memory_setup_buffer: argument wrapped_data: Missing (element-type) annotation gstglmemory.c:1426: Warning: GstGL: gst_gl_memory_setup_buffer: argument wrapped_data: Missing (element-type) annotation egl/gstegl.h:40: Warning: GstGL: symbol='EGL_EGLEXT_PROTOTYPES': Unknown namespace for symbol 'EGL_EGLEXT_PROTOTYPES' 2019-03-23 21:51:37 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: gl: don't pass generated xdg shell header and source file to g-i They're private, g-i doesn't need to know about them. Avoids lots of spammy g-i warnings. 2019-03-23 20:08:56 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiometa.c: audiometa: fix g-i warning gstaudiometa.c:382: Warning: GstAudio: gst_buffer_add_audio_meta: return value: Invalid non-constant return of bare structure or union; register as boxed type or (skip) 2019-03-23 18:47:57 +0000 Tim-Philipp Müller * meson.build: g-i: pass --quiet to g-ir-scanner This suppresses the annoying 'g-ir-scanner: link: cc ..' output that we get even if everything works just fine. We still get g-ir-scanner warnings and compiler warnings if we pass this option. 2019-03-22 10:28:16 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Remove unneeded bytes_written >= 0 conditions It's unsigned and always >= 0. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/569 2019-03-21 12:35:06 +0800 Haihao Xiang * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update orc generated files for new functions 2019-03-20 15:52:53 +0800 Haihao Xiang * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.h: glimagesink: add support for VUYA format 2019-03-15 13:13:52 +0800 Haihao Xiang * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-orc.orc: video: add VUYA pixel format AYUV in gstreamer was defined in A-Y-U-V order in memory[1], however Microsoft defined another AYUV format in V-U-Y-A order in memory[2]. Add VUYA format for the latter in order to distinguish the two formats [1] https://gstreamer.freedesktop.org/documentation/design/mediatype-video-raw.html#formats [2] https://docs.microsoft.com/en-us/windows/desktop/medfound/recommended-8-bit-yuv-formats-for-video-rendering#ayuv) 2019-03-21 17:50:34 +0100 Josep Torra * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: test for len instead of type The function rtcp_packet_min_length() returns a length for each known type and -1 for unknown types. This change fixes the test accordingly and silences the following warning. gstrtcpbuffer.c:567:12: error: comparison of constant -1 with expression of type 'GstRTCPType' is always false [-Werror,-Wtautological-constant-out-of-range-compare] if (type == -1) 2019-03-21 11:36:44 -0400 Nicolas Dufresne * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/pbutils.c: * gst-libs/gst/rtp/README: * tests/examples/dynamic/sprinkle2.c: * tests/examples/dynamic/sprinkle3.c: Remove some left over 0.10 references 2019-03-21 17:21:30 +0100 Josep Torra * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: add casts to avoid warnings in osx builds Fix the following warnings by adding casts. gstdiscoverer.c:1801:17: error: format specifies type 'unsigned long' but the argument has type 'off_t' (aka 'long long') [-Werror,-Wformat] location, file_status.st_size, file_status.st_mtime); ^~~~~~~~~~~~~~~~~~~ gstdiscoverer.c:1801:38: error: format specifies type 'long long' but the argument has type '__darwin_time_t' (aka 'long') [-Werror,-Wformat] location, file_status.st_size, file_status.st_mtime); https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/570 2016-08-30 13:48:00 +0200 Stian Selnes * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: Drop gap events before first buffer Before a gap event is pushed downstream a segment event must be pushed since the gap event can cause packet concealment downstream and hence data flow. Since concealment before receiving any data packets usually doesn't make any sense, the gap event is not sent downstream. Alternatively one could generate a default caps and segment event, but no need to complicate things until it's proven necessary. https://bugzilla.gnome.org/show_bug.cgi?id=773104 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/301 2019-03-20 18:44:12 +0700 Roman Shpuntov * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: macOS gst-plugins-base/gl/cocoa: UI API called on a background thread: -[NSView removeFromSuperview] The problem inside gstglwindow_cocoa.m, all UI operations must be called from main UI thread. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/568 Fixes #568 2019-03-15 18:21:37 -0300 Thibault Saunier * gst/playback/gstdecodebin2.c: decodebin2: Make sure to remove probes when free GstDecodeGroup Nothing guarantees that when we free a DecodeGroup the demuxer pads have already been freed and thus the probes have been removed meaning that in some case it is possible that the pad probes still get called *after* the GstDecodeGroup is freed, leading to segfaults (as we use the freed group in that function). Sample stack trace when that happens: #0 sink_pad_query_probe (pad=pad@entry=0x7fe654027180, info=info@entry=0x7ffe433bf270, user_data=0x7fe668076f80) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3004 3004 if (last_group->reqpads) { [Current thread is 1 (Thread 0x7fe69d8a0880 (LWP 24366))] Missing separate debuginfos, use: dnf debuginfo-install elfutils-libelf-0.176-1.fc29.x86_64 elfutils-libs-0.176-1.fc29.x86_64 libXcursor-1.1.15-4.fc29.x86_64 libXi-1.7.9-8.fc29.x86_64 libgpg-error-1.33-1.fc29.x86_64 libvpx-1.7.0-7.fc29.x86_64 soundtouch-2.1.1-1.fc29.x86_64 (gdb) bt #0 0x00007fe68f7f3430 in sink_pad_query_probe (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], info=info@entry=0x7ffe433bf270, user_data=0x7fe668076f80) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3004 #1 0x00007fe69e79815e in probe_hook_marshal (hook=0x7fe63003a840, data=0x7ffe433bf160) at ../subprojects/gstreamer/gst/gstpad.c:3565 #2 0x00007fe69e5774cc in g_hook_list_marshal (hook_list=hook_list@entry=0x7fe654027218, may_recurse=may_recurse@entry=1, marshaller=marshaller@entry=0x7fe69e797d40 , data=data@entry=0x7ffe433bf160) at ghook.c:672 #3 0x00007fe69e797823 in do_probe_callbacks (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], info=info@entry=0x7ffe433bf270, defaultval=defaultval@entry=GST_FLOW_OK) at ../subprojects/gstreamer/gst/gstpad.c:3727 #4 0x00007fe69e7a25fd in gst_pad_peer_query (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4194 #5 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], data=data@entry=0x7ffe433bf3c0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #6 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6540273d0 [GstPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433bf3c0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #7 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6540273d0 [GstPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #8 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe6540273d0 [GstPad], parent=0x7fe61c035e00 [GstMultiQueue], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #9 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6540273d0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #10 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe648019620 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #11 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe648019620 [GstPad], data=data@entry=0x7ffe433bf6f0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #12 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe62000a9b0 [GstPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433bf6f0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #13 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0x7fe62000a9b0 [GstPad], parent=, query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #14 0x00007fe69e0594d6 in gst_video_decoder_src_query_default (dec=0x7fe63001e290 [GstVP8Dec], query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1684 #15 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe62000a9b0 [GstPad], parent=0x7fe63001e290 [GstVP8Dec], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #16 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe62000a9b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #17 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe630054300 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #18 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe630054300 [GstProxyPad], data=data@entry=0x7ffe433bfa80) at ../subprojects/gstreamer/gst/gstpad.c:3376 #19 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe660047810 [GstDecodePad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433bfa80) at ../subprojects/gstreamer/gst/gstpad.c:3008 #20 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe660047810 [GstDecodePad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #21 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe660047810 [GstDecodePad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #22 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe654076cf0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #23 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe654076cf0 [GstProxyPad], data=data@entry=0x7ffe433bfce0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #24 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe668037720 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433bfce0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #25 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe668037720 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #26 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe668037720 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #27 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa762c0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #28 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa762c0 [GstPad], data=data@entry=0x7ffe433bff40) at ../subprojects/gstreamer/gst/gstpad.c:3376 #29 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa76510 [GstPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433bff40) at ../subprojects/gstreamer/gst/gstpad.c:3008 #30 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0xa76510 [GstPad], parent=parent@entry=0x7fe67002b240 [GstQueue], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #31 0x00007fe68f7bd321 in gst_queue_handle_src_query (pad=0xa76510 [GstPad], parent=0x7fe67002b240 [GstQueue], query=0x7fe67803f140) at ../subprojects/gstreamer/plugins/elements/gstqueue.c:1619 #32 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa76510 [GstPad], parent=0x7fe67002b240 [GstQueue], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #33 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa76510 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #34 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa770a0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #35 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa6f4d0 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #36 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa772f0 [GstPad], parent=0xa6f4d0 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #37 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa772f0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #38 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa779e0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #39 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa779e0 [GstPad], data=data@entry=0x7ffe433c0550) at ../subprojects/gstreamer/gst/gstpad.c:3376 #40 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa77c30 [GstPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c0550) at ../subprojects/gstreamer/gst/gstpad.c:3008 #41 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0xa77c30 [GstPad], parent=parent@entry=0xa7f800 [GstDeinterlace], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #42 0x00007fe68c0449a7 in gst_deinterlace_src_query (pad=0xa77c30 [GstPad], parent=0xa7f800 [GstDeinterlace], query=0x7fe67803f140) at ../subprojects/gst-plugins-good/gst/deinterlace/gstdeinterlace.c:3265 #43 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa77c30 [GstPad], parent=0xa7f800 [GstDeinterlace], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #44 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa77c30 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #45 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa76760 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #46 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa46860 [GstFramePositioner], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #47 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa769b0 [GstPad], parent=0xa46860 [GstFramePositioner], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #48 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa769b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #49 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa76c00 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #50 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa7eb20 [GstVideoScale], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #51 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa76e50 [GstPad], parent=0xa7eb20 [GstVideoScale], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #52 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa76e50 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #53 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa77540 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #54 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa6f980 [GstVideoRate], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #55 0x00007fe68f7369f0 in gst_video_rate_query (trans=0xa6f980 [GstVideoRate], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst/videorate/gstvideorate.c:1115 #56 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa77790 [GstPad], parent=0xa6f980 [GstVideoRate], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #57 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa77790 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #58 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa82120 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #59 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa172a0 [GstCapsFilter], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #60 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa82370 [GstPad], parent=0xa172a0 [GstCapsFilter], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #61 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa82370 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #62 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa44c70 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #63 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa44c70 [GstProxyPad], data=data@entry=0x7ffe433c13a0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #64 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6700271e0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c13a0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #65 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6700271e0 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #66 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6700271e0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #67 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa447b0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #68 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa447b0 [GstProxyPad], data=data@entry=0x7ffe433c1600) at ../subprojects/gstreamer/gst/gstpad.c:3376 #69 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe670026f60 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c1600) at ../subprojects/gstreamer/gst/gstpad.c:3008 #70 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe670026f60 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #71 0x00007fe68f54bb18 in ghostpad_query_function (ghostpad=0x7fe670026f60 [GstGhostPad], parent=0xa2a870 [NleSource], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:556 #72 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe670026f60 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #73 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe61c00ab30 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #74 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe61c00ab30 [GstGhostPad], data=data@entry=0x7ffe433c18c0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #75 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680ccab0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c18c0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #76 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680ccab0 [GstProxyPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #77 0x00007fe68f54b6a9 in internalpad_query_function (internal=0x7fe6680ccab0 [GstProxyPad], parent=0x7fe61c00ab30 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:448 #78 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680ccab0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #79 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe66800e510 [GESSmartMixerPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #80 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe66800e510 [GESSmartMixerPad], data=data@entry=0x7ffe433c1b80) at ../subprojects/gstreamer/gst/gstpad.c:3376 #81 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680cc5f0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c1b80) at ../subprojects/gstreamer/gst/gstpad.c:3008 #82 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680cc5f0 [GstProxyPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #83 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680cc5f0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #84 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe66805ee60 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #85 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe66805ee60 [GstGhostPad], data=data@entry=0x7ffe433c1de0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #86 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe654077d90 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c1de0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #87 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe654077d90 [GstProxyPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #88 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe654077d90 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #89 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe654027ac0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #90 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe6680c71d0 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #91 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe654026a90 [GstPad], parent=0x7fe6680c71d0 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #92 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe654026a90 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #93 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6680cc850 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #94 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe6680cc850 [GstProxyPad], data=data@entry=0x7ffe433c22d0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #95 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680374a0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c22d0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #96 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680374a0 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #97 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680374a0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #98 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6680c7e20 [GstCompositorPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #99 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe6680c7e20 [GstCompositorPad], data=data@entry=0x7ffe433c2530) at ../subprojects/gstreamer/gst/gstpad.c:3376 #100 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa24170 [GstAggregatorPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c2530) at ../subprojects/gstreamer/gst/gstpad.c:3008 #101 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0xa24170 [GstAggregatorPad], parent=, query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #102 0x00007fe69e0e5512 in gst_aggregator_default_src_query (self=0xa21e90 [GstCompositor], query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstaggregator.c:1909 #103 0x00007fe69e0547be in gst_video_aggregator_src_query (agg=0xa21e90 [GstCompositor], query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.c:2022 #104 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa24170 [GstAggregatorPad], parent=0xa21e90 [GstCompositor], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #105 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa24170 [GstAggregatorPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #106 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x9aac10 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #107 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa28280 [GstIdentity], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #108 0x00007fe68f79dfc4 in gst_identity_query (base=0xa28280 [GstIdentity], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/plugins/elements/gstidentity.c:957 #109 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x9aae60 [GstPad], parent=0xa28280 [GstIdentity], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #110 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aae60 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #111 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99cc40 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #112 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99cc40 [GstProxyPad], data=data@entry=0x7ffe433c2c00) at ../subprojects/gstreamer/gst/gstpad.c:3376 #113 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9aee40 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c2c00) at ../subprojects/gstreamer/gst/gstpad.c:3008 #114 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9aee40 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #115 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aee40 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #116 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99d100 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #117 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99d100 [GstProxyPad], data=data@entry=0x7ffe433c2e60) at ../subprojects/gstreamer/gst/gstpad.c:3376 #118 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9af0c0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c2e60) at ../subprojects/gstreamer/gst/gstpad.c:3008 #119 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9af0c0 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #120 0x00007fe68f54bb18 in ghostpad_query_function (ghostpad=0x9af0c0 [GstGhostPad], parent=0x99ce70 [NleOperation], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:556 #121 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9af0c0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #122 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99c2c0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #123 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99c2c0 [GstProxyPad], data=data@entry=0x7ffe433c3120) at ../subprojects/gstreamer/gst/gstpad.c:3376 #124 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9ae1c0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c3120) at ../subprojects/gstreamer/gst/gstpad.c:3008 #125 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9ae1c0 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #126 0x00007fe68f54bb18 in ghostpad_query_function (ghostpad=0x9ae1c0 [GstGhostPad], parent=0xa16290 [NleComposition], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:556 #127 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9ae1c0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #128 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x9aa080 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #129 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa165a0 [GstCapsFilter], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #130 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x9aa9c0 [GstPad], parent=0xa165a0 [GstCapsFilter], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #131 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aa9c0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #132 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99c9e0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #133 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99c9e0 [GstProxyPad], data=data@entry=0x7ffe433c3670) at ../subprojects/gstreamer/gst/gstpad.c:3376 #134 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9aebc0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c3670) at ../subprojects/gstreamer/gst/gstpad.c:3008 #135 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9aebc0 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #136 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aebc0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #137 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99d820 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #138 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99d820 [GstProxyPad], data=data@entry=0x7ffe433c38d0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #139 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9af840 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c38d0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #140 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9af840 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #141 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9af840 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #142 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6780247d0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #143 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe6780247d0 [GstPad], data=data@entry=0x7ffe433c3b30) at ../subprojects/gstreamer/gst/gstpad.c:3376 #144 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe684032780 [GstTeePad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c3b30) at ../subprojects/gstreamer/gst/gstpad.c:3008 #145 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe684032780 [GstTeePad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #146 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe684032780 [GstTeePad], parent=0x7383f0 [GstTee], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #147 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe684032780 [GstTeePad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #148 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe670026060 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #149 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe670026060 [GstGhostPad], data=data@entry=0x7ffe433c3e60) at ../subprojects/gstreamer/gst/gstpad.c:3376 #150 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x99dce0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c3e60) at ../subprojects/gstreamer/gst/gstpad.c:3008 #151 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x99dce0 [GstProxyPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #152 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x99dce0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #153 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa8d6b0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #154 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa8d6b0 [GstPad], data=data@entry=0x7ffe433c40c0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #155 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa8d900 [GstPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c40c0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #156 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0xa8d900 [GstPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #157 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa8d900 [GstPad], parent=0x9f6060 [GstStreamSynchronizer], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #158 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa8d900 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #159 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xad5a80 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #160 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xad5a80 [GstGhostPad], data=data@entry=0x7ffe433c43f0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #161 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680275b0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c43f0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #162 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680275b0 [GstProxyPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #163 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680275b0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #164 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa39580 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #165 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa39580 [GstPad], data=data@entry=0x7ffe433c4650) at ../subprojects/gstreamer/gst/gstpad.c:3376 #166 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6780240e0 [GstPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c4650) at ../subprojects/gstreamer/gst/gstpad.c:3008 #167 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0x7fe6780240e0 [GstPad], parent=parent@entry=0x7fe66800e7b0 [GstQueue], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #168 0x00007fe68f7bd321 in gst_queue_handle_src_query (pad=0x7fe6780240e0 [GstPad], parent=0x7fe66800e7b0 [GstQueue], query=0x7fe67803f140) at ../subprojects/gstreamer/plugins/elements/gstqueue.c:1619 #169 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe6780240e0 [GstPad], parent=0x7fe66800e7b0 [GstQueue], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #170 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6780240e0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #171 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xad5580 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #172 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xad5580 [GstGhostPad], data=data@entry=0x7ffe433c49d0) at ../subprojects/gstreamer/gst/gstpad.c:3376 #173 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680270f0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c49d0) at ../subprojects/gstreamer/gst/gstpad.c:3008 #174 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680270f0 [GstProxyPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #175 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680270f0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #176 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6780255b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #177 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe674032fa0 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #178 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678025a50 [GstPad], parent=0x7fe674032fa0 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #179 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678025a50 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #180 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe678025800 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #181 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe6740346d0 [GstVideoScale], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #182 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678025360 [GstPad], parent=0x7fe6740346d0 [GstVideoScale], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #183 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678025360 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #184 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe678024580 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #185 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe674011950 [GstVideoBalance], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #186 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678025110 [GstPad], parent=0x7fe674011950 [GstVideoBalance], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #187 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678025110 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #188 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa8d460 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #189 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe674037330 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557 #190 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678024ec0 [GstPad], parent=0x7fe674037330 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378 #191 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678024ec0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #192 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe668027350 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #193 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe668027350 [GstProxyPad], data=data@entry=0x7ffe433c5670) at ../subprojects/gstreamer/gst/gstpad.c:3376 #194 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xad5800 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 , user_data=user_data@entry=0x7ffe433c5670) at ../subprojects/gstreamer/gst/gstpad.c:3008 #195 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0xad5800 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447 #196 0x00007fe68f84ad95 in gst_play_sink_convert_bin_query (pad=0xad5800 [GstGhostPad], parent=, query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst/playback/gstplaysinkconvertbin.c:525 #197 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xad5800 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071 #198 0x00007fe69e7a263b in gst_pad_peer_query (pad=0xa380b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203 #199 0x00007fe69e10564c in default_element_query (element=0xa369f0 [GstFakeSink], query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasesink.c:5034 #200 0x00007fe69e77f8f0 in gst_element_query (element=0xa369f0 [GstFakeSink], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959 #201 0x00007fe69e7584f7 in bin_query_generic_fold (vitem=, ret=0x7ffe433c59d0, fold=0x7ffe433c5a60) at ../subprojects/gstreamer/gst/gstbin.c:4232 #202 0x00007fe69e78ffcc in gst_iterator_fold (it=it@entry=0x744820, func=func@entry=0x7fe69e758460 , ret=ret@entry=0x7ffe433c59d0, user_data=user_data@entry=0x7ffe433c5a60) at ../subprojects/gstreamer/gst/gstiterator.c:617 #203 0x00007fe69e758b82 in bin_iterate_fold (bin=bin@entry=0xa19d80 [GstBin], iter=iter@entry=0x744820, fold_init=fold_init@entry=0x0, fold_done=fold_done@entry=0x0, fold_func=fold_func@entry=0x7fe69e758460 , fold_data=fold_data@entry=0x7ffe433c5a60, default_return=0) at ../subprojects/gstreamer/gst/gstbin.c:4259 #204 0x00007fe69e75e776 in gst_bin_query (element=0xa19d80 [GstBin], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstbin.c:4379 #205 0x00007fe69e77f8f0 in gst_element_query (element=0xa19d80 [GstBin], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959 #206 0x00007fe69e7584f7 in bin_query_generic_fold (vitem=, ret=0x7ffe433c5ba0, fold=0x7ffe433c5c30) at ../subprojects/gstreamer/gst/gstbin.c:4232 #207 0x00007fe69e78ffcc in gst_iterator_fold (it=it@entry=0x744cf0, func=func@entry=0x7fe69e758460 , ret=ret@entry=0x7ffe433c5ba0, user_data=user_data@entry=0x7ffe433c5c30) at ../subprojects/gstreamer/gst/gstiterator.c:617 #208 0x00007fe69e758b82 in bin_iterate_fold (bin=bin@entry=0x9f42e0 [GstPlaySink], iter=iter@entry=0x744cf0, fold_init=fold_init@entry=0x0, fold_done=fold_done@entry=0x0, fold_func=fold_func@entry=0x7fe69e758460 , fold_data=fold_data@entry=0x7ffe433c5c30, default_return=0) at ../subprojects/gstreamer/gst/gstbin.c:4259 #209 0x00007fe69e75e776 in gst_bin_query (element=0x9f42e0 [GstPlaySink], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstbin.c:4379 #210 0x00007fe69e77f8f0 in gst_element_query (element=0x9f42e0 [GstPlaySink], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959 #211 0x00007fe69e7584f7 in bin_query_generic_fold (vitem=, ret=0x7ffe433c5d70, fold=0x7ffe433c5e00) at ../subprojects/gstreamer/gst/gstbin.c:4232 #212 0x00007fe69e78ffcc in gst_iterator_fold (it=it@entry=0x7448d0, func=func@entry=0x7fe69e758460 , ret=ret@entry=0x7ffe433c5d70, user_data=user_data@entry=0x7ffe433c5e00) at ../subprojects/gstreamer/gst/gstiterator.c:617 #213 0x00007fe69e758b82 in bin_iterate_fold (bin=bin@entry=0x9ee0a0 [GESPipeline], iter=iter@entry=0x7448d0, fold_init=fold_init@entry=0x0, fold_done=fold_done@entry=0x0, fold_func=fold_func@entry=0x7fe69e758460 , fold_data=fold_data@entry=0x7ffe433c5e00, default_return=0) at ../subprojects/gstreamer/gst/gstbin.c:4259 #214 0x00007fe69e75e776 in gst_bin_query (element=0x9ee0a0 [GESPipeline], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstbin.c:4379 #215 0x00007fe69e77f8f0 in gst_element_query (element=0x9ee0a0 [GESPipeline], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959 #216 0x00007fe69e6b5d01 in _check_position (rate=0x7ffe433c5ee0, position=0x7ffe433c5ee8, act=0xaa82a0, scenario=0x9fe250 [GstValidateScenario]) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-scenario.c:1658 #217 0x00007fe69e6b5d01 in execute_next_action (scenario=scenario@entry=0x9fe250 [GstValidateScenario]) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-scenario.c:2107 #218 0x00007fe69e587b31 in g_timeout_dispatch (source=0xaa7da0, callback=0x7fe69e6b5830 , user_data=0x9fe250) at gmain.c:4667 #219 0x00007fe69e58706d in g_main_dispatch (context=0x71bc50) at gmain.c:3182 #220 0x00007fe69e58706d in g_main_context_dispatch (context=context@entry=0x71bc50) at gmain.c:3847 #221 0x00007fe69e587438 in g_main_context_iterate (context=context@entry=0x71bc50, block=block@entry=1, dispatch=dispatch@entry=1, self=) at gmain.c:3920 #222 0x00007fe69e5874d0 in g_main_context_iteration (context=context@entry=0x71bc50, may_block=may_block@entry=1) at gmain.c:3981 #223 0x00007fe69e3dfd25 in g_application_run (application=0x71c1f0 [GESLauncher], argc=argc@entry=6, argv=argv@entry=0x7ffe433c61c8) at gapplication.c:2470 #224 0x000000000040393c in main (argc=6, argv=0x7ffe433c61c8) at ../subprojects/gst-editing-services/tools/ges-launch.c:88 (gdb) p last_group $1 = (GstDecodeGroup *) 0x52c (gdb) p group $2 = (GstDecodeGroup *) 0x7fe668076f80 (gdb) p group->parent $3 = (GstDecodeChain *) 0x7fe6680774c0 (gdb) p group->parent->next_group There is no member named next_group. (gdb) group->parent->next_groups Undefined command: "group->parent->next_groups". Try "help". (gdb) p group->parent->next_groups $4 = 0x7fe660004280 = {0x528, 0x529, 0x52a, 0x52b, 0x52c} (gdb) p *group->parent->next_groups $5 = {data=0x528, next=0x7fe668077500, prev=0x7fe64c04ab80} (gdb) p *group $6 = {dbin = 0x52a, parent = 0x7fe6680774c0, multiqueue = 0x7fe668077500, overrunsig = 167503724544, overrun = 1, no_more_pads = 0, drained = 1745725152, children = 0xa19220 = {0x73d400, (gdb) Quit (gdb) 2019-03-16 14:57:56 +0000 Wonchul Lee * gst-libs/gst/app/gstappsrc.c: appsrc: Fix docs typo Fix typo empty-percent to min-percent 2019-03-15 17:38:58 +0100 Antonio Ospite * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: print list size in log output instead of -1 It is weird to see "Preparing to push packet with size 4294967295" in the logs, so print the list length in case of a buffer list. 2019-03-14 10:12:27 +0100 Tobias Ronge * gst-libs/gst/rtsp/gstrtspconnection.c: gstrtspconnection: Security loophole making heap overflow The former code allowed an attacker to create a heap overflow by sending a longer than allowed session id in a response and including a semicolon to change the maximum length. With this change, the parser will never go beyond 512 bytes. 2019-03-12 16:42:11 +0100 Guillaume Desmottes * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: add more color primaries formats They correspond to index 10, 11, 12 and 22 from ITU-T H.273, Table 2 – Interpretation of colour primaries (ColourPrimaries) value 2019-03-11 16:59:36 +0530 Nirbheek Chauhan * gst-libs/gst/gl/win32/gstglwindow_win32.c: glwindow/win32: Don't use condition variables for message synchronization Using a single condition variable for synchronization across all GL messages is very slow on Windows and uses up to 20% CPU usage in some workloads due to lock contention and false broadcasts. Using per-message event handles reduces the CPU usage to negligible amounts despite having to allocate a new event handle for each message. 2019-03-11 18:09:30 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglmemory.c: glmemory: Disable GL timing queries when debugging This can be very expensive in some workloads, taking up to 11% of the total execution time. 2019-02-28 15:01:40 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: Don't do expensive checks with low gst debug levels Framebuffer checks can be very expensive, taking up to 3-5% of the total CPU consumed by the application. 2019-03-08 19:52:25 +0100 Lucas Stach * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: fix glib mainloop integration Implement the prepare and check functions according to the documentation by returning TRUE when events should be dispatched via the dispatch function. As wl_display_read_events never blocks we can call it unconditionally without looking at the poll status. This simplifies the implementation and gets rid of a race where the mainloop could get blocked due to nobody actually reading the events from the wayland connection. 2019-03-09 17:17:11 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: tests: audiodecoder: speed up audiodecoder_buffer_after_segment test We're creating buffers with one sample here for some reason. The actual value of the segment stop is irrelevant for what we're testing here, so lower it to 10ms so that we create fewer buffers which speeds things up on slow machines and in valgrind. 2019-03-07 18:55:33 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix buffer skipping with pad offsets The ->skip_buffer implementation in videoaggregator replicates the behaviour of the aggregate method to determine whether a buffer can be skipped (https://bugzilla.gnome.org/show_bug.cgi?id=781928). This fixes a typo that made it so the start time of the buffer was calculated against the output segment, not the segment of the relevant sinkpad, which caused buffers to be skipped when for example a sinkpad had received a segment which base had been modified by a pad offset somewhere along the way. This simply makes the calculation of the buffer start time identical to the calculation in aggregate() 2019-03-05 16:13:15 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl: Don't restore the viewport on function exit Doing so involves retrieving the current viewport from OpenGL which as with any glGet operation, is expensive. This means that the various sinks need to reset the viewport on draw. In the process, fix resizing on cocoa. 2019-03-07 19:49:51 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: Revert "Revert "discoverer: Serialize/load "next" StreamInfo in GVariants"" This reverts commit 747f5a75c391ef18a587a1c064d512340872f32d. This was never meant to be reverted in the first place but sliped in during developement 2019-02-20 14:58:36 -0300 Thibault Saunier * tools/gst-discoverer.c: tools:discoverer: Add an option to print the cache directory 2019-02-20 11:57:08 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: Revert "discoverer: Serialize/load "next" StreamInfo in GVariants" This reverts commit 6ca357f5b67590c694a95013f5eb5fdd04cf46a9. 2019-02-20 11:41:57 -0300 Thibault Saunier * gst-libs/gst/pbutils/pbutils-private.h: discoverer: Remove padding from private headers 2017-11-10 12:29:05 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: dicoverer: Do not add container infos to the stream list They are not added on actual discovery See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/398 2017-11-08 13:25:08 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Serialize/load "next" StreamInfo in GVariants See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/398 2017-11-08 10:38:57 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: Implement GstDiscovererInfo caching This uses the gst_discoverer_info_from/to_variant API and saves the variants on disc (in the user data cache dir) allowing much faster retrieval of the information after the cache has been built. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/398 2019-03-07 14:43:06 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: video-aggregator: Sync property values to output timestamp The properties need to be change at every output frame based on the output time because they may change even though the input frame is not changing. 2019-03-07 02:01:09 +1100 Matthew Waters * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: fix a few other leaks when not getting to PAUSED 2019-03-06 23:29:56 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Ensure we free the internal convert object If we only ever make it to READY, transform_caps can create an internal convert object that will never be freed by basetransform's stop vmethod (PAUSED->READY). 2019-03-06 23:27:11 +1100 Matthew Waters * tests/check/elements/glbin.c: tests/glbin: setting a full reference means we need to unref Fixes the element leaks in the full variants of the glbin test. 2019-03-06 09:23:47 +0000 Tim-Philipp Müller * tests/check/elements/vorbisdec.c: tests: vorbisec: fix leaks in unit test 2019-03-06 09:23:22 +0000 Tim-Philipp Müller * tests/check/libs/gstglmatrix.c: tests: glmatrix: fix leaks in unit test 2019-03-06 09:23:15 +0000 Tim-Philipp Müller * tests/check/libs/gstglmemory.c: tests: glmemory: fix leaks in unit test 2019-03-06 09:22:52 +0000 Tim-Philipp Müller * tests/check/libs/videoencoder.c: tests: videoencoder: fix leaks in unit test 2019-03-06 09:22:44 +0000 Tim-Philipp Müller * tests/check/libs/audio.c: tests: audio: fix leaks in unit test 2019-03-06 09:22:28 +0000 Tim-Philipp Müller * tests/check/elements/audiomixer.c: tests: audiomixer: fix leaks in unit test 2019-03-06 09:22:17 +0000 Tim-Philipp Müller * tests/check/elements/audioconvert.c: tests: audioconvert: fix leaks in unit test 2019-02-23 10:04:27 +0000 Tim-Philipp Müller * gst-libs/gst/gl/.gitignore: gl: .gitignore generated wayland xdg shell files 2019-03-06 09:17:02 +0000 Tim-Philipp Müller * gst-libs/gst/video/convertframe.c: video: fix pipeline leak in gst_video_convert_sample_async() 2019-03-06 09:14:04 +0000 Tim-Philipp Müller * ext/vorbis/gstvorbisdec.c: vorbisdec: fix leak of header buffers handle_header_buffer() does no take ownership of the buffer passed. Fixes leaks in various unit tests. 2019-03-06 00:59:35 +1100 Matthew Waters * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Also free the texcoord GL buffer Fix a typo that was attempting to free the position GL buffer twice (without any consequences as there was a if (buffer) check) Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/561 2019-02-25 23:57:13 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add _finish_subframe() method This allows us to output audio samples without discarding any input frames, which is useful for some formats/codecs (e.g. the MonkeysAudio decoder implementation in ffmpeg which will might return e.g. 16 output buffers for an input buffer for certain files). In the past decoder implementations just concatenated the returned audio buffers until a full frame had been decoded, but that's no longer possible to do efficiently when the decoder returns audio samples in non-interleaved layout. Allowing subframes to be output before the entire input frame is decoded can also be useful to decrease startup latency/delay. https://gitlab.freedesktop.org/gstreamer/gst-libav/issues/49 2019-03-05 14:32:37 +0100 Marc Leeman * gst-libs/gst/rtp/gstrtppayloads.c: rtp: add H265 to lookup for media info 2019-03-04 17:05:04 -0500 Nicolas Dufresne * gst-libs/gst/video/videooverlay.c: videooverlay: Fix render-rectangle range The range was set to -1 to MAXINT, but the x,y value can be negative. Relax the restriction so that we can now have negative coordinates. 2019-03-04 22:49:23 +0900 Seungha Yang * tests/check/elements/audiorate.c: tests: audiorate: Don't compare string with enum ../subprojects/gst-plugins-base/tests/check/elements/audiorate.c(192): warning C4047 Meaningful validation at that point seems to checking output GstAudioFormat of gst_audio_format_from_string() 2019-03-04 09:05:02 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * meson.build: Back to development 2019-02-28 16:10:35 +0000 Tim-Philipp Müller * subprojects/gl-headers.wrap: meson: subprojects: use gl-headers from gstreamer gitlab 2019-02-28 15:46:02 +0000 Tim-Philipp Müller * tests/meson.build: meson: don't build icles when tests are disabled They are manual tests, so let them be controlled via the tests option. 2019-02-28 23:38:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglshaderstrings.c: gl: actually use the highp specifier 675415bf2ea9ddc75ea5e5b6eae9ae942c19d6dc contained a typo that incorrectly used the mediump specifier instead of highp. 2019-02-28 16:17:37 +1100 Matthew Waters * docs/libs/gst-plugins-base-libs-sections.txt: * ext/gl/effects/gstgleffectssources.c: * ext/gl/gltestsrc.c: * ext/gl/gstglalpha.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: try to use highp precision where supported The use of mediump as a specifier in GLSL shaders will have limited resolution and when used as texture coordinates may become inaccurate over texture sizes of 1024. === release 1.15.2 === 2019-02-26 11:43:43 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.15.2 2019-02-26 11:43:42 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2019-02-26 11:43:40 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update translations 2019-02-19 16:59:34 +0200 Vivia Nikolaidou * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * tests/check/elements/videorate.c: videorate: Add max-duplication-time property This will only duplicate buffers if the gap between two consecutive buffers is up to fill-until nsec. If it's larger, it will only output the new buffer and mark it as discont. 2019-02-21 19:18:18 +0530 Nirbheek Chauhan * ext/meson.build: meson: Remove outdated msvc-specific disabling code This was done ages ago when the meson build files were newly added but now we do the appropriate disabling in Cerbero instead since this does not apply to gst-build. https://gitlab.freedesktop.org/gstreamer/cerbero/issues/121 2019-02-20 09:46:30 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: video: add basic sanity check of pstrides for formats https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/117 2019-02-09 17:21:13 +0000 James Cowgill * gst-libs/gst/video/video-format.c: video-format: Fix GBRA_10/12 alpha channel pixel strides These formats have 4 components, so they should also have 4 components of pixel stride. 2019-01-17 15:38:40 +0100 Victor Toso * tests/check/libs/video.c: tests: use GPOINTER_TO_INT to avoid warnings with mingw New casts to avoid the the warnings mentioned below. While at it, move some existing casts (introduced at 61bc9091894062b9) to use GPOINTER_TO_INT too. [458/673] Compiling C object 'tests/check/7d01337@@libs_video@exe/libs_video.c.obj'. ../tests/check/libs/video.c: In function 'fourcc_get_size': ../tests/check/libs/video.c:160:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] return (unsigned long) p->endptr; ^ In file included from ../tests/check/libs/video.c:32: ../tests/check/libs/video.c: In function 'test_video_formats': ../tests/check/libs/video.c:563:39: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] fail_unless_equals_int (size, (unsigned long) paintinfo.endptr); ^ And more. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/94 2019-01-17 15:25:58 +0100 Victor Toso * tests/check/libs/profile.c: tests: fix compiler warnings on Windows with mingw With commit 3f184c3abc55, the gst_dir variable becomes unusable in windows build. Moving it to linux scope to avoid warning: [433/673] Compiling C object 'tests/check/7d01337@@libs_profile@exe/libs_profile.c.obj'. ../tests/check/libs/profile.c: In function 'profile_suite': ../tests/check/libs/profile.c:688:10: warning: unused variable 'gst_dir' [-Wunused-variable] gchar *gst_dir; ^~~~~~~ Also fix a typo in the comment. 2019-02-18 15:24:18 +0100 Kristofer Bjorkstrom * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix GError set over the top of a previous GError The function fill_bytes could sometimes return a value greater than zero and in the same time set the GError. Function read_bytes calls fill_bytes in a while loop. In the special case above it would call fill_bytes with error already set. Thus resulting in "GError set over the top of a previous GError". Solved this by clearing GError when return value is greater than zero. Actions are taken depending on error type by caller of read_bytes. Eg. with EWOULDBLOCK gst_rtsp_source_dispatch_read will try to read the missing bytes again (GST_RTSP_EINTR ) https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/445 2019-02-18 13:28:49 +0000 Tim-Philipp Müller * gst-libs/gst/gl/egl/gsteglimage.c: gl: eglimage: fix build on RPi by adding more fallback defines for EGL_*_EXT 2018-11-16 23:51:44 -0500 Nicolas Dufresne * tests/check/libs/video.c: tests: video: Test video format enum stability It is really easy to break the API and insert a new video format in the middle of the enum instead of at the end. This minimal test should catch the most obvious errors. Ideally, this test should be updated after new format have been added, so that it won't allow further modification to the enumeration API. 2019-02-16 15:29:57 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for AV1 codec Fixes #558 2019-02-15 16:45:09 -0500 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Don't call set_property helper in get_property 2019-02-13 11:59:10 +0100 Edward Hervey * gst-libs/gst/gl/wayland/Makefile.am: wayland: Also dist the private header 2019-02-11 10:01:55 -0500 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Add some more defines This allow building on advertised version of libdrm drm_fourcc.h files. Fixes #549 2019-02-11 10:01:50 -0500 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimage.c: Revert "fix issue" This reverts commit 5e0c458e0ef544f1afae13c5eb047bc0826b011a. 2019-02-11 16:13:15 +0800 yanle.zhang * gst-libs/gst/gl/egl/gsteglimage.c: fix issue 549."https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/549". 2019-01-30 10:49:37 -0300 Thibault Saunier * tools/gst-device-monitor.c: tools: device-monitor: Add support for modified devices 2019-02-08 21:38:04 +0900 Seungha Yang * gst-libs/gst/gl/gstglupload.c: glupload: Don't leak caps features Create caps features when it is required. 2018-12-14 16:33:50 +0100 Niels De Graef * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland_private.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * m4/gst-gl.m4: gl/wayland: add support for XDG-shell [wl_shell] is officially [deprecated], so provide support for the XDG-shell protocol should be provided by all desktop-like compositors. (In case they don't, we can of course fall back to wl_shell). Note that the [XML spec] is provided by the `wayland-protocols` git repository, which is provided by the Wayland project. [wl_shell]: https://people.freedesktop.org/~whot/wayland-doxygen/wayland/Client/group__iface__wl__shell.html [deprecated]: https://github.com/wayland-project/wayland/commit/698dde195837f3d0844b2725ba4ea8ce9ee7518c [XML spec]: https://github.com/wayland-project/wayland-protocols/blob/master/stable/xdg-shell/xdg-shell.xml 2018-12-14 14:54:24 +0100 Niels De Graef * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: extract code to create wl_shell_surface This is just a cosmetic change that will make it easier to differentiate between wl_shell and xdg_wm_base later. 2018-12-14 14:28:26 +0100 Niels De Graef * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: prefix shell(_surface) with wl_ This will help us make the distinction later with xdg-shell and other possible protocols that need to be supported. 2019-02-05 22:06:15 +0530 Nirbheek Chauhan * tests/check/elements/videoscale.c: * tests/check/libs/profile.c: * tests/check/libs/rtpbasedepayload.c: misc: Fix compiler warnings on Cerbero's MinGW rtpbasedepayload.c:126:5: error: unknown conversion type character 'z' in format [-Werror=format] profile.c:688:10: error: unused variable 'gst_dir' [-Werror=unused-variable] 2019-02-04 11:48:25 +0100 Guillaume Desmottes * gst-libs/gst/video/gstvideodecoder.c: videodecoder: remove useless code in negotiate_default_caps() gst_video_decoder_negotiate_default_caps() is meant to pick a default output format when we need one earlier because of an incoming GAP. It tries to use the input caps as a base if available and fallback to a default format (I420 1280x720@30) for the missing fields. But the framerate and pixel-aspect were not explicitly passed to gst_video_decoder_set_output_state() which is solely relying on the input format as reference to get the framerate anx pixel-aspect-ratio. So there is no need to manually handling those two fields as gst_video_decoder_set_output_state() will already use the ones from upstream if available, and they will be ignored anyway if there are not. This also prevent confusing debugging output where we claim to use a specific framerate while actually none was set. 2019-01-31 15:22:21 +0530 Nirbheek Chauhan * tests/check/meson.build: meson: orc-test is not required This is especially never available on iOS. 2019-01-30 14:32:50 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix uninitialized variable warning when compiling with pre-2.59.1 GLib gstrtspconnection.c: In function ‘writev_bytes’: gstrtspconnection.c:1348:10: error: ‘res’ may be used uninitialized in this function [-Werror=maybe-uninitialized] return res; ^ 2019-01-30 20:41:13 +0900 Seungha Yang * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix broken build on GLib 2.59.0 GPollableReturn enum was introduced after GLib 2.59.0 release. 2019-01-29 10:38:15 +0900 Seungha Yang * meson.build: * tests/check/meson.build: meson: Add support orc fallback Allow fallback to orc subproject if any. Additionally 'dependencies' keyword is removed from find_library, because it's invalid keyword for find_library. 2019-01-17 18:04:11 -0300 Thibault Saunier * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add a function to typefind xges files 2019-01-27 12:35:12 +0900 mrk501 * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Fix wrong memcpy address when reordering channels When using multichannel audio data and being needed to reorder channels, audio data is not copied correctly because destination address of memcpy is wrong. For example, the following command $ gst-launch-1.0 pulsesrc ! audio/x-raw,channels=6,format=S16LE ! filesink location=test.raw will reproduce this issue if there is 6-ch audio input device. This commit fixes that. The detailed process of this issue is as follows: 1. gst-launch-1.0 calls gst_pulsesrc_prepare (gst-plugins-good/ext/pulse/pulsesrc.c) 1466 gst_pulsesrc_prepare (GstAudioSrc * asrc, GstAudioRingBufferSpec * spec) 1467 { (skip...) 1480 { 1481 GstAudioRingBufferSpec s = *spec; 1482 const pa_channel_map *m; 1483 1484 m = pa_stream_get_channel_map (pulsesrc->stream); 1485 gst_pulse_channel_map_to_gst (m, &s); 1486 gst_audio_ring_buffer_set_channel_positions (GST_AUDIO_BASE_SRC 1487 (pulsesrc)->ringbuffer, s.info.position); 1488 } In my environment, after line 1485 is processed, position of spec and s are spec->info.position[0] = 0 spec->info.position[1] = 1 spec->info.position[2] = 2 spec->info.position[3] = 6 spec->info.position[4] = 7 spec->info.position[5] = 8 s.info.position[0] = 0 s.info.position[1] = 6 s.info.position[2] = 2 s.info.position[3] = 1 s.info.position[4] = 7 s.info.position[5] = 8 The values of spec->info.positions equal GST_AUDIO_BASE_SRC(pulsesrc)->ringbuffer->spec->info.positions. 2. gst_audio_ring_buffer_set_channel_positions calls gst_audio_get_channel_reorder_map. 3. Arguments of gst_audio_get_channel_reorder_map are from = s.info.position to = GST_AUDIO_BASE_SRC(pulsesrc)->ringbuffer->spec->info.positions At the end of this function, reorder_map is set to reorder_map[0] = 0 reorder_map[1] = 3 reorder_map[2] = 2 reorder_map[3] = 1 reorder_map[4] = 4 reorder_map[5] = 5 4. Go back to gst_audio_ring_buffer_set_channel_positions and 2065 buf->need_reorder = TRUE; is processed. 5. Finally, in gst_audio_ring_buffer_read, 1821 if (need_reorder) { (skip...) 1829 memcpy (data + i * bpf + reorder_map[j] * bps, ptr + j * bps, bps); is processed and makes this issue. 2019-01-24 17:52:50 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Update to merged GOutputStream::writev() API 2018-11-30 12:47:57 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Handle EOF on writev() after checking for all other error conditions Otherwise we would return EOF if nothing was written in any case, even if this was actually a case of TIMEOUT or EWOULDBLOCK for example. Thanks to Edward Hervey for debugging and finding this issue. 2018-10-24 11:32:22 +0200 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fixes for corrupt RTP packets in dispatch_write() Fixes 2 problems: 1) Number of unmapped memories does not always match number of mmaped ones in dispatch_write(). 2) When dispatch_write() is dispatched second time after an incomplete write, already set offsets will not be taken into account, thus corrupt RTP data will be sent. 2018-09-17 17:03:45 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp-connection: Make use of new GstRTSPMessage API for directly storing a body buffer and add API for writing multiple messages By doing so we can send a whole GstBufferList and each memory in the contained buffers without copying into a single memory area and with a single writev() call. This improves performance considerably for high-packet-rate streams. This depends on https://gitlab.gnome.org/GNOME/glib/merge_requests/333 to be efficient, otherwise each chunk of memory is a separate write() call. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/370 2018-08-17 12:51:31 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: rtsp-message: Add support for storing GstBuffers directly as body payload of messages This makes it unnecessary for callers to first merge together all memories, and it allows API like GstRTSPConnection to write them out without first copying all memories together or using writev()-style API to write multiple memories out in one go. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/370 2019-01-28 15:16:06 +0100 Andrew Gall * gst-libs/gst/video/video-anc.c: video-anc: Fix glib version check for G_GNUC_CHECK_VERSION macro Fixes #544 2019-01-28 13:54:43 +0900 Seungha Yang * tests/check/libs/discoverer.c: tests: discoverer: Add async API test cases Add more test cases for async APIs such as gst_discoverer_{start,stop}, and gst_discoverer_discover_uri_async() 2019-01-28 18:13:27 +0900 Seungha Yang * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Hold GSource object instead of source id g_source_remove() works only for a GSource which was attached to default GMainContext, but the GSource might be attached to custom context depending on how gst_discoverer_start() was called. Whatever the attached context was, g_source_destroy() can clean it up. 2019-01-24 10:14:36 +0200 Sebastian Dröge * ext/gl/gstglcolorbalance.c: glcolorbalance: Copy caps in transform_internal_caps() We don't get ownership of the caps that are passed in, and doing so causes crashes at a later time. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/546 2019-01-22 13:24:29 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: opengl: fix enabled_gl_apis in pkg-config file Make consistent with what autotools puts into enabled_gl_apis variable. Autotools puts 'gl' in there instead of 'opengl'. This would cause problems when building -bad glmixers plugin in meson against a -base that was built with autotools. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/871 2018-12-19 10:59:09 +0800 Haihao Xiang * gst-libs/gst/gl/x11/gstglwindow_x11.c: gstglwindow_x11: require a resize event at once after XResizeWindow Otherwise surface_width/surface_height stored in GstGLWindowPrivate isn't changed, sometimes an unnecessary reconfigure event is sent on sinkpad, then result in upstream reconfiguring. Example pipeline: gst-launch-1.0 videotestsrc ! msdkvpp ! glimagesink 2019-01-18 11:39:02 -0500 Nicolas Dufresne * ext/alsa/Makefile.am: * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsadeviceprobe.h: * ext/alsa/gstalsadeviceprovider.c: * ext/alsa/gstalsadeviceprovider.h: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/alsa/meson.build: Revert "alsa: Implement a DeviceProvider" This reverts commit 69c3c31608ecebfadd9717e950d8c708988563e3. All devices have the same name, they are duplicated with pulseaudio one and the provided does not respond to HW being plugged/unplugged. I think it's not ready for 1.16. 2018-08-31 18:33:43 -0300 Thibault Saunier * ext/alsa/Makefile.am: * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsadeviceprobe.h: * ext/alsa/gstalsadeviceprovider.c: * ext/alsa/gstalsadeviceprovider.h: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/alsa/meson.build: alsa: Implement a DeviceProvider Removing gstalsadeviceprobe.[ch] as it was a relique from the 0.10 century. 2018-12-07 18:07:42 +0200 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: remove broken rate adjustment The start_time and end_time in this context have already been adjusted for the input's rate by converting them to running time above. What is needed afterwards is to compare these with the output's start/stop running time, which also takes into account the rate, so we are comparing equal things. Multiplying these with the output's rate here is only breaking this logic. In most cases the input and output rate is the same, so this multiplication effectively reverses the rate adjustment that happened while converting to running time, which is why we see the video playing with the original rate in tests. Fixes #541 === release 1.15.1 === 2019-01-17 01:50:25 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.15.1 2019-01-17 01:50:25 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-overlaycomposition.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2019-01-17 01:50:16 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update translations 2019-01-16 14:09:18 +0200 Sebastian Dröge * ext/gl/caopengllayersink.m: * ext/gl/gltestsrc.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl: Only unbind buffers/vertex attrib arrays if we can't directly bind the vertex array to 0 Binding the vertex array to 0 will unbind everything else already. In the previous order older versions of the Intel GL driver caused errors to be printed for every single call when disabling the vertex attrib arrays after binding the vertex array to 0. 2019-01-16 00:37:48 +0000 Tim-Philipp Müller * tests/check/meson.build: meson: enable tests for orc code 2019-01-16 00:28:16 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: video-format: minor docs improvement 2019-01-11 17:43:03 +0200 Jordan Petridis * gst/subparse/gstsubparse.c: * tests/check/elements/subparse.c: subparse: do not assert when failing to parse subrip timestamp If a badly formatted was passed into `parse_subrip_time` it would assert instead of exiting gracefully. This is problematic since the input is provided by the user, and will trigger a crash. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/532 2019-01-09 14:39:11 +0100 Jan Alexander Steffens (heftig) * tests/check/elements/videoscale.c: videoscale: Add a test to verify stepped dimensions work 2019-01-09 14:42:31 +0100 Jan Alexander Steffens (heftig) * gst/videoscale/gstvideoscale.c: videoscale: Round when fixating to nearest ints to reduce error 2019-01-09 14:24:35 +0100 Jan Alexander Steffens (heftig) * gst/videoscale/gstvideoscale.c: videoscale: Choose the best dimensions for fixed PAR We might not get an exact match for width or height if stepped ranges are involved. 2019-01-14 10:29:54 +0200 Sebastian Dröge * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils.pc.in: pbutils: Add audio, base and video library to Requires line in the pkg-config file We use all those libraries internally and include headers from them in the public headers. And add the tag library to Requires.private as we use it internally and it would be needed when doing static linking. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/537 2018-12-30 18:01:30 +0900 Seungha Yang * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: gl: Fix some type conversion warnings with MSVC MSVC complained about implicit conversion between GstGLFormat* and guint* 2019-01-12 12:27:27 +0100 Víctor Manuel Jáquez Leal * ext/gl/gstglsinkbin.c: glsinkbin: validate property in internal sink It might be the case that glgsinkbin would try to set a property to its internal sink which doesn't exist in it, leading to a glib's warning. For example, when playsink sets 'force-aspect-ratio' property and glsinkbin has, as internal sink, appsink, which doesn't handle that property. The patch validates the incoming property to forward to internal sink if it exists in the internal sink and both properties has the same type. 2019-01-11 16:37:40 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix number of allocated lines We make an allocator for temporary lines and then use this for all the steps in the conversion that can do in-place processing. Keep track of the number of lines each step needs and use this to allocate the right number of lines. Previously we would not always allocate enough lines and we would end up with conversion errors as lines would be reused prematurely. Fixes #350 2018-07-05 13:45:14 +0100 Alex Ashley * gst-libs/gst/pbutils/codec-utils.c: * tests/check/libs/pbutils.c: codec-utils: support extension audio object type and sample rate ISO 14496-3 defines that audioObjectType 5 is a special case that indicates SBR is present and that an additional field has to be parsed to find the true audioObjectType. There are two ways of signaling SBR within an AAC stream - implicit and explicit (see [1] section 4.2). When explicit signaling is used, the presence of SBR data is signaled by means of the SBR audioObjectType in the AudioSpecificConfig data. Normally the sample rate is specified by an index into a table of common sample rates. However index 0x0f is a special case that indicates that the next 24 bits contain the real sample rate. [1] https://www.telosalliance.com/support/A-closer-look-into-MPEG-4-High-Efficiency-AAC Fixes #39 2019-01-11 11:26:26 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: * gst/overlaycomposition/gstoverlaycomposition.c: Fix some typos in code comments And don't use gtk-doc chunk markers for internal functions. 2019-01-11 11:24:50 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: video: link to design docs in GstVideoFormat docs Which is where the memory layout of the various pixel formats is explained in detail. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/538 2018-12-29 11:28:10 +0200 Carlos Rafael Giani * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: Improvements to the "ticks" wave (Initially discussed in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/305) The ticks waveform can be useful for audio synchronization diagnostics and other cases where the time offset between waveforms is important. However, in its current form, it is too limited, and has problems with discontinuities, which result in severe artifacts when this waveform is output by a DAC. This patch fixes some discontinuities and considerably expand the ticks waveform's flexibility. They also introduce the notion of a "marker tick"; every Nth tick can have a different amplitude (usually one that is larger than the others). This is useful for combining frequent oscilloscope triggering with large time offset detection. For example, without marker ticks, the tick intervals must not be too small, otherwise the maximum time offset that can be unambiguously detected is quite small (for example, if the interval is 50ms, then no time offset larger than 25ms can be unambiguously recognized). If the tick intervals are too far apart, then no sudden changes can be clearly observed, since the oscilloscope is not updated quickly enough. But with marker ticks, this is not an issue: If there's for example a tick every 100 ms, then the oscilloscope can be triggered every 100 ms. And, if every 20th tick is a marker tick, then time offsets of up to 1 second can be discovered, even though the time between ticks is 100 ms. The patch also applies some minor cleanup to the audiotestsrc documentation. 2019-01-05 00:16:36 +0100 Andoni Morales Alastruey * ext/gl/gstgloverlay.c: gl: fix build with more recent versions of MinGW 2019-01-06 16:32:34 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: add new interlaced video API to docs 2019-01-06 00:48:56 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiometa.h: audiometa: fix docs typo 2018-12-30 18:49:52 +0900 Seungha Yang * tests/check/meson.build: tests: Enable more tests on Windows Enable libs_rtp, libs_video and elements_compositor 2018-12-30 20:10:58 +0900 Seungha Yang * tests/check/elements/compositor.c: tests: compositor: Drop needless unistd.h 2018-12-30 19:49:56 +0900 Seungha Yang * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: Remove invalid sanity check Checking the address distance between given begin/end sequence doesn't make sense. They are output params. This is to fix weird failure of libs_rtp on Windows 2018-12-30 18:05:18 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: rtcpbuffer: fix typo 2018-12-30 17:26:04 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: fix function guards with side effects Code in g_return_*() must not have side effects, as it might be compiled out if -DG_DISABLE_CHECKS is used, in which case we would read garbage off the stack. 2018-12-27 17:35:00 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/gl/Makefile.am: * ext/gl/gstopengl.c: * ext/gl/meson.build: gl: build gl mixer elements, moved from -base 2018-12-27 13:34:29 +0100 Tim-Philipp Müller * .gitignore: * configure.ac: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/inspect/plugin-compositor.xml: * gst/compositor/Makefile.am: * gst/compositor/meson.build: * gst/meson.build: * meson_options.txt: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/meson.build: * tests/examples/Makefile.am: * tests/examples/compositor/Makefile.am: * tests/examples/compositor/meson.build: * tests/examples/meson.build: compositor: add to build after move from -bad This replaces videomixer. Fixes #138 2018-12-26 18:02:42 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video.h: video: build GstVideoAggregator which was moved from -bad 2018-12-28 12:15:39 +0100 Tim-Philipp Müller Move GstVideoAggregator, compositor and OpenGL mixers from -bad Merge branch 'videoaggregator-compositor-glmixers-move' Fixes #137 and #138. 2018-12-27 11:41:54 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Extend MCC typefinder to also cover version 2.0 Both versions are basically the same, but version 2.0 also allows 60000/1001 as framerate and allows to specify the field and line number for each payload. Put the major version into the caps so that elements can limit via caps negotiation which versions they can support. 2018-12-27 14:55:28 +0100 Philippe Normand * tests/examples/gl/gtk/meson.build: * tests/examples/gl/meson.build: examples/gl/gtk: Fix build on macOS The gdkquartz.h include pulls into Apple Obj-C frameworks so the compiler needs to handle the gstgtkhelper library as such. Fixes #518 2018-12-23 20:27:27 +0100 Philippe Normand * tests/examples/gl/cocoa/meson.build: * tests/examples/gl/meson.build: examples/gl: Cocoa example Meson build definitions 2018-12-19 15:18:41 +0200 Jordan Petridis * gst/typefind/gsttypefindfunctions.c: typefind: Add SCC and MCC files support 2018-12-17 19:41:26 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: * tests/check/libs/videotimecode.c: videotimecode: Set the DROP_FRAME flag when parsing timecodes with a ,/; from a string And also add a test for parsing a few valid and invalid timecodes 2018-12-14 21:24:27 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Allow serializing invalid timecodes 2018-12-14 21:18:34 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Allow deserializing invalid timecodes Timecode strings don't contain a framerate and that has to be provided first separately before it can be converted into a valid timecode. 2018-12-14 21:04:36 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Don't consider 0/1 a valid framerate for timecodes It breaks all the calculations. While it can make sense during initialization, there's very little API that can be called with such timecodes without ending up with wrong results. 2018-12-14 21:00:03 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Remove various unneeded checks 2018-12-14 20:59:11 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Fix handling of timecodes without daily jam in gst_video_time_code_to_date_time() So that it behaves according to documentation. 2018-12-14 20:58:40 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Various documentation and annotation fixes 2018-12-14 18:10:23 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Add some more guards for function parameters 2018-12-14 17:56:45 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/gstvideotimecode.h: * tests/check/libs/videotimecode.c: videotimecode: Add API for initializing from a GDateTime with validation The old API would only assert or return an invalid timecode, the new API returns a boolean or NULL. We can't change the existing API unfortunately but can at least deprecate it. 2018-12-14 14:13:18 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: We only support 30000/1001 and 60000/1001 as drop-frame framerates 24000/1001 is *not* a drop-frame framerate. 2018-12-14 13:56:28 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Fix division by zero in timecode validation function And add some comments about what exactly we're testing in the non-trivial cases. 2018-12-14 13:43:22 +0200 Sebastian Dröge * gst-libs/gst/video/video-prelude.h: video: Add deprecation macros 2018-12-07 21:02:45 +0900 Seungha Yang * tests/check/meson.build: tests: Disable some tests for Windows Disable some tests which are unstable on windows or need fix 2018-12-07 20:35:37 +0900 Seungha Yang * tests/check/meson.build: tests: Use OS-specific seperator for whitelist ... instead of hardcoded ':', since G_SEARCHPATH_SEPARATOR_S varies depending on OS (e.g., ':' for *nix and ';' for Windows). Note that, when the seperator is not specified explicitly, Meson will use ';' for Windows and ':' for *nix respectively. 2018-12-07 20:30:23 +0900 Seungha Yang * meson.build: * tests/check/meson.build: meson: Use join_paths() instead of '/' Let Meson decide correct seperator such as '\' for Windows and '/' for others 2018-12-07 20:10:10 +0900 Seungha Yang * meson.build: * tests/meson.build: tests: Enable testing on Windows 2018-12-17 13:33:56 +0100 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: audio-converter: add API to determine passthrough mode audioconvert's passthrough status can no longer be determined strictly from input / output caps equality, as a mix-matrix can now be specified. We now call gst_base_transform_set_passthrough dynamically, based on the return from the new gst_audio_converter_is_passthrough() API, which takes the mix matrix into account. 2018-12-16 21:19:18 +0100 Mathieu Duponchelle * gst/audioconvert/gstaudioconvert.c: audioconvert: disable passthrough_on_same_caps Now that audioconvert exposes a mix-matrix property, input and output caps may be equal, but the mix-matrix still needs to be applied. Fixes #521 2018-12-17 09:21:57 +0100 Edward Hervey * gst-libs/gst/video/video-converter.c: video-converter: Remove unused variable/calculation Since the refactoring in cdd86d025a7c2e1c00e7a86731168793e6104276 calculating the stride was no longer needed in setup_scale. 2018-12-17 09:10:36 +0100 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Remove dead assignment structure is never used afterwards 2018-12-17 09:07:26 +0100 Edward Hervey * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: Remove dead assignment p is overridden before being used (as the for() loop iterator) 2018-12-17 09:03:36 +0100 Edward Hervey * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: Remove dead assignment The presence of `key-mgmt` attribute will set the mikey appropriately. We therefore don't need to check the return value (which will be overwritten afterwards). 2018-12-17 08:58:21 +0100 Edward Hervey * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Properly exit infinite loop In the unlikeliness the builder state is invalid, exit the top-level while(TRUE) loop. 2018-12-17 08:50:44 +0100 Edward Hervey * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Remove dead assignment out_samples is set and used in the 'no_align' block. Dead assignment since 3e312e6e162638d8e07f0edb3859980dabb089da 2018-12-16 11:14:47 +0100 Edward Hervey * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Don't leak bytewriter data In error cases, don't forget to reset it. 2018-12-16 23:15:57 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpmeta.h: rtp: fix g-i warnings Use same variable name in function declaration as in function definition and gtk-doc/g-i blurb. 2018-12-11 14:10:36 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: video-anc: Add API for converting GstVideoCaptionType from/to GstCaps 2018-12-10 15:55:49 +0200 Sebastian Dröge * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: video-anc: Replace GST_VIDEO_CAPTION_TYPE_CEA608_IN_CEA708_RAW with CEA608_S334_1A CEA608_IN_CEA708_RAW is the same format as CEA708_RAW. It's only difference is that it must contain only CEA608 and a format like this does not exist in practice. In practice every element that handles raw cc_data triplets must check each triplet for their actual content and handle them accordingly. For CC-only streams a parser could signal the existence of CEA608 and/or CEA708 inside the caps but for metas this can only potentially be signalled via the ALLOCATION query for negotiation purposes. A separate format for this is not very useful and instead it should be a format qualifier. CEA608_S334_1A is the format defined by SMPTE S334-1 Annex A and which is used for transferring CEA608 over SDI instead of CEA708 CDP packets. 2018-12-14 14:07:47 +0100 Niels De Graef * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gl/wayland: destroy wl_shell instance at finalize 2018-12-14 12:04:43 +0900 Justin Kim * tests/examples/gl/meson.build: tests: examples: gl: gtk: Disabled on MacOS X It fails to build on MacOS X. This example should be disabled until fixed. Issue: #518 2018-12-14 12:03:07 +0900 Justin Kim * tests/examples/gl/generic/recordgraphic/main.cpp: examples: gl: generic: recordgraphic: Use gst/gl/gstglfuncs.h https://gitlab.freedesktop.org/gstreamer/gst-build/issues/11 2018-12-14 12:02:36 +0900 Justin Kim * gst-libs/gst/gl/meson.build: gl/meson: Add OpenGL dependency by OSX way Otherwise, it fails to link with the message below: ``` ld: can't map file, errno=22 file '...' ``` https://gitlab.freedesktop.org/gstreamer/gst-build/issues/13 2018-12-13 11:20:03 -0500 Olivier Crête * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: Validate the length of RTCP packets 2017-11-01 10:54:06 +0900 Justin Kim * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * tests/check/libs/rtp.c: rtcpbuffer: add support XR packet parsing According to RFC3611, the extended report blocks in XR packet can have variable length. To visit each block, the iterator should look into block header. Once XR type is extracted, users can parse the detailed information by given functions. Loss/Duplicate RLE The Loss RLE and the Duplicate RLE have same format so they can share parsers. For unit test, randomly generated pseudo packet is used. Packet Receipt Times The packet receipt times report block has a list of receipt times which are in [begin_seq, end_seq). Receiver Reference Time paser for XR packet The receiver reference time has ntptime which is 64 bit type. DLRR The DLRR report block consists of sub-blocks which has ssrc, last RR, and delay since last RR. The number of sub-blocks should be calculated from block length. Statistics Summary The Statistics Summary report block provides fixed length information. VoIP Metrics VoIP Metrics consists of several metrics even though they are in a report block. Data retrieving functions are added per metrics. https://bugzilla.gnome.org/show_bug.cgi?id=789822 2018-12-12 15:48:09 +0100 Philipp Zabel * gst-libs/gst/gl/gstglupload.c: glupload: dmabuf: use out_info to create allocation params for non-direct dmabuf uploads as well Non-direct dmabuf uploads, just as direct dmabuf uploads, create EGL images and thus GL textures of the same width as the imported image. The input dmabuf line stride is not relevant to the resulting texture in both cases. This fixes the case where non-direct uploads of input dmabufs with line stride larger than the width will for example cause glcolorconvert to sample only the left part (width * bytes per pixel / stride) of the image, causing a horizontally stretched and cropped output image. 2018-12-12 23:25:58 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: normalize the internal format we pass into glTex* functions Passing unsized formats sometimes breaks on embedded platforms Take 2 at 694e30f858ebddae8c39cf934ff1b21ba7aa08e7, https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/49 2018-12-12 23:14:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: Revert "glformat: return sized formats in from_video_info" This broke videotestsrc ! video/x-raw,format=NV12 ! glimagesink on the desktop Reverts: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/49 This reverts commit 694e30f858ebddae8c39cf934ff1b21ba7aa08e7. 2018-12-07 19:13:59 +0200 Sebastian Dröge * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: Optimize premultiplication/unpremultiplication loops Pull in video frame fields into local variables. Without this the compiler must assume that they could've changed on every use and read them from memory again. This reduces the inner loop from 6 memory reads per pixels to 4, and the number of writes stays at 3. 2018-11-30 13:37:26 +0100 Per Forlin * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Replace Auth header instead of append gst_rtsp_connection_send() adds the Authorization header to the request. If this function is being called multiple times with the same request it will add one more Authorization header every time. To fix to this issue do not append a new Authorization header on top of an existing ones. Remove any existing Authorization headers first and then add the new one. Fixes gst-plugins-good#425 2018-12-05 10:35:33 +0100 Jan Alexander Steffens (heftig) * ext/ogg/gstoggmux.c: oggmux: Fix a maybe-uninitialized warning Arch Linux, GCC 8.2.1+20181127, CFLAGS='-Og -g3' 2018-12-05 10:35:33 +0100 Jan Alexander Steffens (heftig) * gst/typefind/gsttypefindfunctions.c: typefind: Fix a maybe-uninitialized warning Arch Linux, GCC 8.2.1+20181127, CFLAGS='-Og -g3' 2018-12-05 17:24:06 -0300 Thibault Saunier * common: Automatic update of common submodule From cd1dee0 to 59cb678 2018-12-05 12:11:25 -0500 Nicolas Dufresne * ext/gl/gstgldeinterlace.c: gldeinterlace: Indentation fix 2018-12-01 20:45:31 -0500 Nicolas Dufresne * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: gl: window-gbm: Restore CRTC on close This simply try and restore the state of the CRTC when the window is closed. This is a bit cosmetic, but it allow resuming fbcon when we exit. 2018-12-01 20:41:10 -0500 Nicolas Dufresne * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: gl: window-gbm: Remove unused private class member The display class member is not used, not set and rather confusing. 2018-12-01 20:30:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: gl: window-gbm: Remove unneeded extra function The cleanup function was only called in _close() which was only calling that function. This indirection didn't make much sense. 2018-11-23 14:40:27 +0800 Wangfei * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add Y410 pixel format. This pixel format is packed format with 4:4:4 sample. And 10 available bits of Y/U/V and 2 available bits of alpha stored in 4 Bytes. Format defined in: https://docs.microsoft.com/en-us/windows/desktop/medfound/10-bit-and-16-bit-yuv-video-formats 2018-10-04 00:27:42 +0200 Carlos Rafael Giani * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: gl/gbm: Add GST_GL_GBM_DRM_CONNECTOR environment variable If multiple DRM connectors are connected, currently the first one is picked. Improve this by adding an environment variable that allows for choosing a connector by name. The connector name has been made so they are compatible with modetest/modeprint DRM utilities. Related to #490 2018-10-04 00:22:02 +0200 Carlos Rafael Giani * gst-libs/gst/gl/gbm/gstgl_gbm_utils.c: * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: gl/gbm: Improve logging output * List all connectors, modes, and encoders, even after picking one * Add missing DRM_MODE_CONNECTOR_DPI string for logging and improve existing strings * Make sure the names matches modetest/modeprint from DRM utilities Related to #490 2018-11-30 12:40:19 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: video: convertframe: Shut down pipeline asynchronously via the thread pool If we use the main loop it might happen that the caller (e.g. our unit test) already shut down the loop once the result was received and in that case the pipeline would never ever be shut down (and our unit test would hang). 2018-11-30 12:39:43 +0200 Sebastian Dröge * tests/check/libs/video.c: video: Split the success and error convert_frame_async() test into two tests To make it more obvious which of the two is actually failing. 2018-11-29 12:55:28 +0100 Marouen Ghodhbane * gst-libs/gst/audio/audio-converter.c: audio-convert: Fix endianness conversion function init Endianness conversion should be based on the sample width instead of the sample depth. Fixes #510 2018-11-30 17:50:14 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: glformat: return sized formats in from_video_info Fixes green output on e.g. Android when converting between YUV->RGBA 2018-11-23 16:41:38 +0300 Freyr666 * ext/gl/gstgldeinterlace.c: opengl: gldeinterlace: remove interlace-mode from srcpad's caps This fixes output caps format, so the output frames are not interlaced anymore 2018-11-28 11:13:39 +0000 Philippe Normand * ext/gl/gstgltestsrc.c: gltestsrc: Run context query only during decide_allocation Running the context query in _start and during the NULL->READY state transition can fail because downstream elements might not be able to answer and thus the source element would not be able to reuse downstream GLContext and GLDisplay. This issue happened specifically when trying to use gltestsrc in playbin. 2018-11-29 20:51:18 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-anc.h: video: fix typo in GstVideoCaptionType docs 2018-11-28 20:46:05 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: Allow for the use of libGL as well as OpenGL OpenGL.framework and libGL are two different providers of a GL implementation that can be linked into an application together. 2018-11-26 11:29:41 +0100 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: G_GNUC_CHECK_VERSION was added in GLib 2.42 Define our own version if compiling with older versions. We currently only require GLib 2.40. 2018-11-19 15:09:25 +0000 Maciej Wolny * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstglfuncs.h: gst-gl: Remove duplicate declarations This causes 'redefinition of typedef ...' errors on GCC 4.5.3 2018-11-28 05:51:53 +0200 Jordan Petridis * ext/gl/gstgldownloadelement.c: * ext/opus/gstopusenc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * tests/check/elements/audioconvert.c: * tests/check/pipelines/simple-launch-lines.c: Run gst-indent through the files This is required before we enabled an indent test in the CI. https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33 2018-11-23 16:30:30 +0300 Freyr666 * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: opengl: gbm: Adds missing unrefs for gl context and drm node release in finalizer This adds a few missing gst_object_unref calls for the opengl context in gstglwindow_gbm_egl.c, as well as the missing close call for the drm node fd in gst_gl_display_gbm_finalize. 2018-11-23 13:25:43 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: convertframe: Error out directly in the sync variant if the state change to PAUSED failed 2018-11-23 13:22:44 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: convertframe: Only go to PAUSED state for the async variant We only care for the pre-roll sample. 2018-11-23 13:21:23 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: convertframe: Error out directly if changing the pipeline state to PLAYING failed 2018-11-23 13:16:43 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: convertframe: Use refcounting for the context While this creates a circular reference between the pipeline and the context, this ensures that the context stays alive for as long as any callbacks could be called on it. The circular reference is broken once the conversion is finished (or error, or timeout), which will then cause everything to be freed. Previously it was possible that a callback could be called on the context right after it was freed already. Also use only a single context structure, the second structure does not simplify anything and duplicates storage. 2018-11-22 11:10:53 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglshader.c: gl: libs: glib might not define G_HAVE_ISO_VARARGS This will fix the compiler warning "G_HAVE_ISO_VARARGS" is not defined, evaluates to 0 [-Wundef] 2018-11-21 15:08:42 -0500 Xavier Claessens * gst-libs/gst/tag/meson.build: Check for zlib header 2018-11-21 16:12:20 -0500 Xavier Claessens * tests/examples/gl/generic/meson.build: Disable gl examples when we don't have OpenGL 2018-11-19 16:31:20 -0500 Xavier Claessens * gst-libs/gst/tag/meson.build: Fix zlib detection when there is no pkg-config file 2018-11-13 17:40:23 +0100 Tomasz Andrzejak * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add API for setting caps on the source pad This patch adds API in the audio decoder base class for setting the arbitrary caps on the source pad. Previously only caps converted from audio info were possible. This is particularly useful when subclass wants to set caps features for audio decoder producing metadata. 2018-10-17 15:58:40 -0400 Xavier Claessens * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl: Fix subclassing of GstGLContextEGL 2018-11-15 11:28:11 +0200 Philippe Normand * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video-format: Move Y210 format declaration to avoid ABI break The Y210 format was added in the middle of the formats enum and list, introducing an ABI break. This issue was detected thanks to the gstreamer-rs test harness. 2018-10-16 12:31:57 +0200 Linus Svensson * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Update current seqnum for buffer lists The current sequence number will be the one from the first RTP buffer when a buffer list is pushed, but should be the last one. Fixes #495 2018-10-28 13:47:04 +0000 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: Cleanup old FIXMEs that relied on meson bugfixes 2018-11-07 16:45:21 +0200 Sebastian Dröge * tests/check/libs/videoanc.c: video-anc: Add test for VBI encoder 2018-11-07 15:12:13 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-anc.h: video-anc: Implement a VBI encoder This allows writing out data from caption meta and similar to VBI 2018-11-09 10:54:57 +0200 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: Add comment about our assumption of the ADF user data format We assume here the same data format for the user data as for the DID/SDID: 10 bits with parity in the upper 2 bits. In theory some standards could define this differently and even have full 10 bits of user data but there does not seem to be a single such standard after all these years. 2018-11-08 18:15:58 +0200 Sebastian Dröge * gst-libs/gst/video/video-anc.c: * tests/check/libs/videoanc.c: video-anc: Add support for parsing composite ADF and check the packets' checksum And add the checksum to the data we test in the unit test. 2018-11-07 14:20:19 +0200 Sebastian Dröge * gst-libs/gst/video/video-anc.h: video-anc: Fix documentation about SDID_block_number field It was giving type 2 for both variants. 2018-11-07 13:58:17 +0200 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: Add invalid-argument guards to public GstVideoVBIParser API 2018-11-12 13:55:24 +0200 Jordan Petridis * .gitlab-ci.yml: Add Gitlab CI configuration This commit adds a .gitlab-ci.yml file, which uses a feature to fetch the config from a centralized repository. The intent is to have all the gstreamer modules use the same configuration. The configuration is currently hosted at the gst-ci repository under the gitlab/ci_template.yml path. Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 2018-11-11 08:52:27 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglsl.h: gl: Make sure that GST_GLSL_PROFILE_ANY gets the correct value in introspection Currently in Python it would become a signed 64 bit value but should actually be an unsigned 32 bit value with all bits set. This is the same problem as with GST_MESSAGE_TYPE_ANY. See https://bugzilla.gnome.org/show_bug.cgi?id=732633 2018-11-09 09:32:49 +0100 Sjoerd Simons * gst-libs/gst/gl/gstglupload.c: glupload: dmabuf: be explicit about gl formats used Rather then letting gst_gl_memory_setup_buffer guess the GL format used for an eglimage after importing a dmabuf be explicit about it. This fixes issues where dmabuf import may have used another format then gst_gl_format_from_video_info would guess on the basis of the available GL extensions. In particular on etnaviv the gst_gl_format_from_video_info would assuming a luminance + alpha GL format is used for YUY2, but the dmabuf import will always use RG88. Which causes images to end up somewhat pink when displayed on the screen. 2018-11-09 10:30:06 +0100 Sjoerd Simons * gst-libs/gst/gl/egl/gsteglimage.c: gl/egl: Determine correct format on dmabuf import When importing an egl image from dmabuf gst_gl_format_from_video_info was used to work what the result GL format will be. Unfortunately that will only work if the conventional format and the choosen DRM fourcc for the format match up. On etnaviv platforms there is no support for GL_EXT_texture_rg, so the GL format chosen for YUY2 ends up being GST_GL_LUMINANCE_ALPHA. However DRM does not do luminance + alpha as it's a legacy GL thing, so the dmabuf import ends up using DRM_FORMAT_GR88. To fix this, tie the DRM_FORMAT and the GL format together so they always match up. 2018-11-09 12:22:31 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Avoid potential unitialized/wrong bitrate value Only calculate and set the bitrate if all conditions are met. 2018-11-07 16:28:28 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Fix previous commit rebase wasn't correct :) 2018-07-30 17:56:18 +1000 Matthew Waters * tests/check/elements/urisourcebin.c: tests/urisourcebin: add get/set watermark test https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 2018-07-30 14:57:23 +1000 Matthew Waters * gst/playback/gsturisourcebin.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/urisourcebin.c: * tests/check/meson.build: urisourcebin: add a statistics property for queueing It contains the minimum/maximum/average byte and time levels of the queues inside this urisourcebin https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 2018-07-30 14:56:40 +1000 Matthew Waters * gst/playback/gsturisourcebin.c: uisourcebin: update forwarded properties on change Allows changing queueing properties at runtime https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 2018-07-30 14:48:35 +1000 Matthew Waters * gst/playback/gsturisourcebin.c: urisourcebin: add low/high-watermark properties These are forwarded to the contained queues. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 2018-07-23 14:14:32 +1000 Matthew Waters * gst/playback/gsturisourcebin.c: urisourcebin: limit the byte size of the queue based on the buffer-size Use the bitrate advertised by queue2 to determine the limits to set across possibly multiple queue2/downloadbuffer elements. e.g. with two queue2's and a max-bytes based on the ratio of the bitrate/cumulative_bitrate multiplied by the buffer_size set on urisourcebin. This allows finer grained control over the buffer used by all the queue elements inside urisourcebin. Instead of a maximum of n_streams*buffer_size being used, only buffer_size will be used however we will fallback to n_streams*buffer_size if one of the queue2's does not have bitrate information. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 2018-06-27 20:17:08 +1000 Matthew Waters * gst/playback/gsturisourcebin.c: urisourcebin: remove unused instance variable streams 2018-11-05 12:00:55 +0100 Edward Hervey * tests/examples/overlaycomposition/Makefile.am: examples: Fix libgstvideo linking Use the local libgstvideo (and not the system wide one) 2018-11-04 21:17:28 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: audio: const gpointer is not the same as gconstpointer/const void * See https://bugzilla.gnome.org/show_bug.cgi?id=664491 2018-11-05 05:35:12 +0000 Matthew Waters * .gitmodules: Update common submodule location without /git/ directory 2018-11-05 12:06:15 +0800 Haihao Xiang * .gitmodules: * gst-plugins-base.doap: Clone the code from gitlab This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/503 2018-11-02 20:31:54 +0000 Tim-Philipp Müller * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: compositor: update disted orc backup files 2018-11-01 19:19:51 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/videoanc.c: * tests/check/meson.build: video-anc: Add unit tests for VBI parsing https://bugzilla.gnome.org/show_bug.cgi?id=797363 2018-11-01 19:19:03 +0200 Sebastian Dröge * gst-libs/gst/video/video-anc.c: video-anc: Fix bounds checks when parsing VBI data We were reading more bytes than we allocated. https://bugzilla.gnome.org/show_bug.cgi?id=797363 2018-10-31 18:30:14 +0000 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Only renegotiate if the caps are incompatible There is new code that ensures that we renegotiate after an uploader transition if the negotiated caps have changed. The problem is that the raw uploader will not really try and fixate the input caps, but instead of return a subset with the only the supported target texture. This had two effect, raw uploads was always done renegotiated once and the raw upload unit test was now failing as it didn't expect a renegotiation. As it's a valid check, simply relax the gst_caps_is_equal() check and use a gst_caps_is_subset() instead. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-31 18:26:42 +0000 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Do prepend the preferred caps The direct dmabuf upload does color conversion, so when it transforms the caps, it replaces the format with all formats found through the format query. When this uploader can't be used, it makes the upstream source pick a unsupported format. To fix this, we only append the caps with a list of format. So the source will only pick one of these formats if the downstream preferred format is not supported. A negotiation failure after this would be normal. This fixes pipelines without a glcolorconvert element. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-31 18:24:33 +0000 Nicolas Dufresne * tests/check/libs/gstglupload.c: glupload-test: Don't use gboolean to store enums The unit test makes mixed usage of ret value. Sometimes its does stores an enum and at other moment a boolean. Also fix test using boolean instead of the correct enum value. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-28 14:46:15 +0000 Philippe Normand * tests/examples/playback/playback-test.c: examples/playback-test: New entry for text-offset updates https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-28 14:45:26 +0000 Philippe Normand * gst/playback/gstplaybin3.c: playbin3: New text-offset property This new property controls the synchronisation offset between the text and video streams. Positive values make the text ahead of the video and negative values make the text go behind the video. https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-28 14:43:01 +0000 Philippe Normand * gst/playback/gstplaybin2.c: playbin: New text-offset property This new property controls the synchronisation offset between the text and video streams. Positive values make the text ahead of the video and negative values make the text go behind the video. https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-28 14:42:31 +0000 Philippe Normand * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playsink: Add text-offset property When the playsink contains a text chain this property controls the synchronisation of the subtitles and video by controlling the underlying subtitleoverlay::subtitle-ts-offset property. https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-28 14:35:17 +0000 Philippe Normand * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Add a subtitle-ts-offset property This property controls the synchronisation offset between text and video in nanoseconds, by updating the parser src pad offset. https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-31 19:20:20 +0100 Víctor Manuel Jáquez Leal * gst/compositor/compositor.c: compositor: Fix enum type mismatch The variable blend_mode is GstCompositorBlendMode but it is assigned to a GstCompositorOperator enum value. 2018-10-09 15:25:37 +0800 Wangfei * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add Y210 pixel format. This pixel format is packed format with 4:2:2 sample and 10 available bits of each channel. https://bugzilla.gnome.org/show_bug.cgi?id=797267 2018-10-30 10:05:03 +0100 Johan Bjäreholt * gst/compositor/compositororc-dist.h: compositor: fix undeclared functions 2018-10-17 17:22:10 +0200 Philipp Zabel * gst-libs/gst/gl/egl/gsteglimage.c: glupload: dmabuf-direct: report driver limitations to debug log Report in the DEBUG log if the driver does not support importing a given format with linear modifiers non-externally. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-17 17:11:20 +0200 Philipp Zabel * gst-libs/gst/gl/egl/gsteglimage.c: glupload: dmabuf-direct: query formats before modifiers The EXT_image_dma_buf_import_modifiers extension [1] states regarding eglQueryDmaBufModifiersEXT: The format must be one of those returned by the eglQueryDmaBufFormatsEXT command. To comply with this requirement eglQueryDmaBufFormatsEXT must be called before eglQueryDmaBufModifiersEXT. [1] https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_image_dma_buf_import_modifiers.txt https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-17 17:09:26 +0200 Philipp Zabel * gst-libs/gst/gl/gstglupload.c: glupload: debug output from dmabuf and dmabuf_direct upload transform_caps https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-17 15:47:07 +0200 Philipp Zabel * gst-libs/gst/gl/egl/gsteglimage.c: glupload: calculate DRM fourcc once for direct dmabuf upload Calculate DRM fourcc and report to the DEBUG log about it only once instead of three times in gst_egl_image_from_dmabuf_direct(). https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-05 10:17:27 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: Implement direct dmabuf uploader The idea is that some GPUs (like the Vivante series) can actually perform the YUV->RGB conversion internally, so no custom conversion shaders are needed. To make use of this feature, we need an additional uploader that can import DMABUF FDs and also directly pass the pixel format, relying on the GPU to do the conversion. Based on patches from Nicolas Dufresne and Carlos Rafael Giani . https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-04 09:29:57 +0200 Michael Olbrich * ext/gl/gstgluploadelement.c: gluploadelement: try to avoid dropping buffers Without this, a buffer is dropped if glupload indicates that it is necessary to reconfigure. Avoid this by explicitly reconfiguring immediately and uploading the buffer again. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-04 09:21:00 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: handle upload methods with different caps If a upload method is selected then use it exclusively in transform_caps(). Also, reconfigure if the current caps don't match the current upload method. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-05 15:17:30 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: allow system memory for dmabuf in transform_caps This should not be necessary, but currently not all plugins that provide dmabuf memory announce this with caps features, e.g. v4l2. The static caps already contain the system memory. It didn't break before because other upload methods provide the necessary transformation. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-04 09:17:11 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: try to use the last method after reconfigure Reconfigure will trigger a set_caps which clears the upload method. Remember the method in this case and start with it. Wrap around once to try all methods if necessary. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-30 12:25:02 +0100 Michael Olbrich * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: gl/egl: Add gst_egl_image_from_dmabuf_direct() function The colorspace conversion happens during the upload so the necessary hints must be provided to ensure that the conversion works correctly. At least the Mesa Intel driver will create a texture without error but produces an incorrect result. Use eglQueryDmaBufModifiersEXT() to check if non-external upload is supported for the given format. Based on a patch from Carlos Rafael Giani . https://bugzilla.gnome.org/show_bug.cgi?id=783521 2017-06-07 18:00:08 +0200 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Fix n_wrapped_pointers usage gst_gl_memory_setup_buffer() was not properly using the number of pointers to wrapped. This also fixes the validation, as we only support 1 wrapper per view, or num_planes * views wrapper. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-10-29 09:18:35 +0100 Johan Bjäreholt * gst/overlaycomposition/gstoverlaycomposition.c: overlaycomposition: Fix implicit use of memset https://bugzilla.gnome.org/show_bug.cgi?id=797353 2018-10-28 17:41:38 +0000 Sebastian Dröge * docs/plugins/inspect/plugin-overlaycomposition.xml: overlaycomposition: Add plugin inspect file 2018-10-28 17:21:08 +0000 Philippe Normand * tests/examples/overlaycomposition/meson.build: examples: overlaycomposition: Fix Meson build 2018-10-27 16:44:27 +0100 Sebastian Dröge * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc.orc: * tests/examples/compositor/crossfade.c: compositor: Implement different operators via per-pad property This removes the crossfade-ratio property and replaces it with an operator property. Currently this implements the following operators: - SOURCE: Copy over the source and don't look at the destination - OVER: Default blending of the source over the destination - ADD: Like OVER but simply adding the alpha instead See the example for how to implement crossfading with this. https://bugzilla.gnome.org/show_bug.cgi?id=797169 2018-10-01 18:10:34 +0300 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * gst/meson.build: * gst/overlaycomposition/Makefile.am: * gst/overlaycomposition/gstoverlaycomposition.c: * gst/overlaycomposition/gstoverlaycomposition.h: * gst/overlaycomposition/meson.build: * meson_options.txt: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/overlaycomposition.c: * tests/check/meson.build: * tests/examples/Makefile.am: * tests/examples/meson.build: * tests/examples/overlaycomposition/.gitignore: * tests/examples/overlaycomposition/Makefile.am: * tests/examples/overlaycomposition/meson.build: * tests/examples/overlaycomposition/overlaycomposition.c: overlaycomposition: New element that allows applications to draw GstVideoOverlayComposition on a stream https://bugzilla.gnome.org/show_bug.cgi?id=797234 2018-08-08 17:35:08 +0200 Sebastian Dröge * gst/playback/gstparsebin.c: parsebin: Add missing locks/unlocks of the chain mutex Before freeing pending pads it is required to hold the mutex, that's what is protecting the list of pending pads in other places. https://bugzilla.gnome.org/show_bug.cgi?id=796935 2018-10-27 15:48:13 +0200 Edward Hervey * tests/check/pipelines/tcp.c: tests: Solidify tcp connection check The previous failure was a timeout which was due to the sending pipeline pushing test buffer *before* the remote client was accepted. We would therefore never get the buffer on the other side. While the client socket would indeed appear as "connected", this doesn't mean that the remote server side did "accept" it (which is where we then add it to the list of remote parties to which data will be sent). The problem isn't with the element implementation, but to the nature of TCP 3-way handshake. In order to make the test reliable, wait for the sink to have accepted the remote client (by checking the number of handles) before sending out test buffers. 2018-10-27 12:37:07 +0100 Sebastian Dröge * gst/compositor/Makefile.am: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositorpad.h: compositor: Remove extra header for the pad declaration There's no reason for having this separate apart from making things less discoverable. 2018-07-24 18:40:36 +0800 Roland Jon * gst/playback/gstdecodebin3.c: decodebin3: fix eos event leak https://bugzilla.gnome.org/show_bug.cgi?id=796860 2018-10-17 19:43:51 +0300 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Answer POSITION query 2018-10-17 21:09:22 +0900 Seungha Yang * gst/compositor/meson.build: meson: Replace empty configuration_data() with copy keyword Use 'copy' keyword to avoid meson warning message. Note that 'copy' keyword in configure_file() is available since meson 0.47.0 https://bugzilla.gnome.org/show_bug.cgi?id=797298 2018-09-27 21:21:14 +0900 Seungha Yang * gst-libs/gst/audio/meson.build: * gst-libs/gst/video/meson.build: * gst/adder/meson.build: * gst/audiomixer/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: meson: Replace empty configuration_data() with copy keyword Use 'copy' keyword to avoid meson warning message. Note that 'copy' keyword in configure_file() is available since meson 0.47.0 https://bugzilla.gnome.org/show_bug.cgi?id=797298 2018-10-15 19:45:46 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideometa.c: videometa: Log map errors with GST_ERROR, not DEBUG Otherwise it's very easy to miss them when gst_video_frame_map() fails 2018-10-10 23:15:49 +0200 Mathieu Duponchelle * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: do not duplicate authentication headers rtsp_connection_send takes care of adding those already, and some reverse proxies such as nginx will reject the request altogether if the Authorization header is present twice, even with the same value. https://bugzilla.gnome.org/show_bug.cgi?id=797272 2018-10-10 14:16:12 -0400 Stian Selnes * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtp/gstrtpmeta.c: * gst-libs/gst/rtp/gstrtpmeta.h: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtp/rtp.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpbasepayload.c: * tests/check/libs/rtpmeta.c: rtpbasepayload: rtpbasedepayload: Add source-info property Add a source-info property that will read/write meta to the buffers about RTP source information. The GstRTPSourceMeta can be used to transport information about the origin of a buffer, e.g. the sources that is included in a mixed audio buffer. A new function gst_rtp_base_payload_allocate_output_buffer() is added for payloaders to use to allocate the output RTP buffer with the correct number of CSRCs according to the meta and fill it. RTPSourceMeta does not make sense on RTP buffers since the information is in the RTP header. So the payloader will strip the meta from the output buffer. https://bugzilla.gnome.org/show_bug.cgi?id=761947 2018-10-08 01:07:45 +0100 Tim-Philipp Müller * meson.build: meson: use new 'python' module instead of deprecated https://github.com/mesonbuild/meson/pull/4169 2018-10-07 19:09:24 +0100 Tim-Philipp Müller * configure.ac: * m4/gst-gl.m4: * tests/examples/gl/Makefile.am: * tests/examples/gl/clutter/.gitignore: * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/clutter/cluttershare.c: * tests/examples/gl/clutter/cluttershare.cbp: * tests/examples/gl/clutter/meson.build: * tests/examples/gl/meson.build: examples: gl: remove bitrotten clutter examples https://bugzilla.gnome.org/show_bug.cgi?id=797173 2018-10-05 15:37:45 +0300 George Kiagiadakis * tests/check/elements/audioconvert.c: tests: audioconvert: test caps fixate with layout conversion https://bugzilla.gnome.org/show_bug.cgi?id=797225 2018-09-29 10:39:46 +0200 Matej Knopp * gst/audioconvert/gstaudioconvert.c: audioconvert: remove layout from structure when fixating caps otherwise caps intersection always fails when converting non-interleaved to interleaved audio https://bugzilla.gnome.org/show_bug.cgi?id=797225 2018-10-05 01:19:29 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: Revert "Revert "gl: use correct blend functions for unpremultiplied alpha"" This reverts commit 452d90a88c6e68a3daa38e02213782836788236a. This was actually correct. sorry for the noise! 2018-10-04 23:45:49 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix the default blend modes for unpremultipled alpha Alpha in GStreamer is unpremultiplied 2018-10-05 00:48:58 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: make multiview none equivalent to mono Fixes the internal viewconvert to not scale buffers for output with the following pipeline: gltestsrc ! glimagesink It also fixes overlay composition with a resized output with an OpenGL upstream: gltestsrc ! timeoverlay ! glimagesink 2018-10-05 00:03:09 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: Revert "gl: use correct blend functions for unpremultiplied alpha" This reverts commit 779d028f27b7bc6eb7abe841fe2cda97de3be983. 2018-10-04 23:43:19 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: gl: use correct blend functions for unpremultiplied alpha Fallback to the closest but incorrect values we had before if we can't do this correctly. 2018-10-04 23:23:03 +1000 Matthew Waters * gst-libs/gst/gl/gstgloverlaycompositor.c: gl/overlaycompositor: don't force unpremultiplied alpha Remove testing code from 23159365618409011745b554b4ad371700961121 2018-10-04 23:02:05 +1000 Matthew Waters * gst-libs/gst/gl/gstgloverlaycompositor.c: gl/overlaycompositor: support both (un)premultiplied alpha Using the correct blend modes for each case or converting to premultipled in the very unlikely case that separate blend modes are unavailable on ancient opengl hardware. 2018-10-04 14:50:43 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglapi.h: gl: GstGLAPI should be gst_gl_api_ in lower-case 2018-10-04 13:38:59 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: Add backwards compatibility gst_gl_stereo_downmix_mode_get_type() It's proper new name is gst_gl_stereo_downmix_get_type(). 2018-10-04 13:33:30 +0300 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Add gl-enumtypes.[ch] to CLEANFILES 2018-10-04 11:36:09 +0300 Sebastian Dröge * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-overlay-composition.h: video-overlay-composition: Correctly mark GstVideoOverlayFormatFlags as flags And register a GType for it. 2018-10-04 16:45:34 +1000 Matthew Waters * ext/gl/meson.build: gl/meson: fix wrong overlay filename 2018-09-27 16:37:28 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: add gloverlaycompositor to each input stream Flattens the overlay compositions into the stream before the mixer will mix them. https://bugzilla.gnome.org/show_bug.cgi?id=759867 2018-09-28 12:09:16 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: only update the output info iff there's a valid display_rect Attempting to use the MAX(1, display_rect) would result in the overlay composition attempting to draw into 1x1 buffer and calculate some grossly incorrect sizes. previously failing case: gltestsrc ! textoverlay text=GStreamer ! glimagesinkelement 2018-09-27 13:35:15 +1000 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgloverlaycompositorelement.c: * ext/gl/gstgloverlaycompositorelement.h: * ext/gl/gstopengl.c: * ext/gl/meson.build: gl: add a new overlay compositor element Flattens all the overlays from the GstVideoOverlayCompositionMeta into the video stream. https://bugzilla.gnome.org/show_bug.cgi?id=759867 2018-09-27 13:31:09 +1000 Matthew Waters * gst-libs/gst/gl/gstgloverlaycompositor.c: gl/overlaycompositor: add support for flipping the output This is required to use gloverlaycompositor outside of glimagesink where the output is not automatically flipped 2018-09-27 13:30:35 +1000 Matthew Waters * gst-libs/gst/gl/gstgloverlaycompositor.c: gl/overlaycompositor: handle ANY caps features gracefully 2018-09-27 13:29:03 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: don't complete overwrite caps features from the subclass We can get away with ensuring that the memory:GLMemory caps feature is present in the output caps 2018-10-03 23:27:32 +0300 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Add gl-enumtypes.h to nodist_HEADERS 2018-10-03 23:17:56 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: Create an anonymous enum for GstGLStereoDownmix Older glib-mkenums completely fails to parse it otherwise. 2018-10-03 16:00:23 +0300 Sebastian Dröge * ext/gl/gstglstereomix.c: glstereomix: Fix build after deprecating misnamed GST_TYPE_GL_STEREO_DOWNMIX_MODE_TYPE 2018-10-03 14:49:32 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglviewconvert.c: * tests/examples/gl/gtk/3dvideo/mviewwidget.c: gl: Rename GST_TYPE_GL_STEREO_DOWNMIX GType macro everywhere The old one still exists but behind GST_DISABLE_DEPRECATED 2018-10-03 13:06:42 +0300 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/meson.build: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: gl: Generate enum GTypes via glib-mkenums https://bugzilla.gnome.org/show_bug.cgi?id=797240 https://bugzilla.gnome.org/show_bug.cgi?id=797144 2018-10-02 21:01:31 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglsl.c: glsl: Fix error quark string to be more consistent 2018-10-02 20:59:01 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: Fix error quark string and move documentation to the right place 2018-10-01 17:51:26 -0700 Thiago Santos * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: set_restriction should accept null as valid It was checking for GST_IS_CAPS only and that would fail if the new restriction caps was NULL and its documentation says it accepts NULL as valid input. 2018-10-01 19:13:39 +0300 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: basetextoverlay: Append our rectangle to the upstream composition, not the other way around Upstream is supposed to be painted first, and only then our rectangle. 2018-10-01 18:27:22 +0300 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: basetextoverlay: Minor cleanup of negotiation functions 2018-10-01 12:17:42 +0300 Sebastian Dröge * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: Handle miniobject writability correctly By tracking parents and using the proper GstMiniObject API for detecting writability instead of just the reference count. https://bugzilla.gnome.org/show_bug.cgi?id=797230 2018-09-29 11:26:27 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: video: Fix annotations for gst_buffer_add_video_meta_full() 2018-09-27 15:03:10 +0200 Edward Hervey * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Use upstream GST_EVENT_STREAM_START if present If we have an upstream GST_EVENT_STREAM_START, use that one instead of creating a new one which could be completely different from the upstream one and drop information (like the stream flags and stream object). Only create a new event if we don't already have one from upstream https://bugzilla.gnome.org/show_bug.cgi?id=797215 2018-09-26 13:22:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: wait and set the gl sync meta on buffers This may be a cause of out-of-place frames when transforming multiview buffers. 2018-09-25 16:56:24 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Copy composition meta from the primary buffer to both outputs Without this, glviewconvert (and thus glimagesink) will drop all overlay composition metas. 2018-09-25 16:56:07 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Don't copy overlay composition meta over to NULL outbufs 2018-09-24 23:26:10 +0300 Sebastian Dröge * ext/gl/gstglmixerbin.c: glmixerbin: "latency" property on aggregator is uint64, not int64 Also update the property description and range with aggregator's values. 2018-09-24 19:25:28 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudioutilsprivate.c: * gst-libs/gst/audio/gstaudioutilsprivate.h: gstaudioutilsprivate: Fix warnings while setting thread priority Also use G_OS_WIN32 instead of _WIN32 for clarity. 2018-04-28 14:50:11 +0100 Tim-Philipp Müller * common: * configure.ac: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/allocators-prelude.h: * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/app-prelude.h: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-prelude.h: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/fft-prelude.h: * gst-libs/gst/fft/meson.build: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/gbm/Makefile.am: * gst-libs/gst/gl/gl-prelude.h: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/pbutils/pbutils-prelude.h: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/meson.build: * gst-libs/gst/riff/riff-prelude.h: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtp/rtp-prelude.h: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/rtsp/rtsp-prelude.h: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/sdp/sdp-prelude.h: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/meson.build: * gst-libs/gst/tag/tag-prelude.h: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-prelude.h: * meson.build: libs: fix API export/import and 'inconsistent linkage' on MSVC For each lib we build export its own API in headers when we're building it, otherwise import the API from the headers. This fixes linker warnings on Windows when building with MSVC. The problem was that we had defined all GST_*_API decorators unconditionally to GST_EXPORT. This was intentional and only supposed to be temporary, but caused linker warnings because we tell the linker that we want to export all symbols even those from externall DLLs, and when the linker notices that they were in external DLLS and not present locally it warns. What we need to do when building each library is: export the library's own symbols and import all other symbols. To this end we define e.g. BUILDING_GST_FOO and then we define the GST_FOO_API decorator either to export or to import symbols depending on whether BUILDING_GST_FOO is set or not. That way external users of each library API automatically get the import. While we're at it, add new GST_API_EXPORT in config.h and use that for GST_*_API decorators instead of GST_EXPORT. The right export define depends on the toolchain and whether we're using -fvisibility=hidden or not, so it's better to set it to the right thing directly than hard-coding a compiler whitelist in the public header. We put the export define into config.h instead of passing it via the command line to the compiler because it might contain spaces and brackets and in the autotools scenario we'd have to pass that through multiple layers of plumbing and Makefile/shell escaping and we're just not going to be *that* lucky. The export define is only used if we're compiling our lib, not by external users of the lib headers, so it's not a problem to put it into config.h Also, this means all .c files of libs need to include config.h to get the export marker defined, so fix up a few that didn't include config.h. This commit depends on a common submodule commit that makes gst-glib-gen.mak add an #include "config.h" to generated enum/marshal .c files for the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=797185 2018-09-21 22:31:33 +0900 Seungha Yang * meson.build: meson: Specify encoding to UTF-8 when building with MSVC Fix build on some non-US locale Windows systems Error: gst-plugins-base/tools/gst-device-monitor.c(278): error C2001 https://bugzilla.gnome.org/show_bug.cgi?id=797186 2018-09-19 18:01:26 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix constant alpha enum value for constant alpha 2018-09-21 11:29:42 +0300 Sebastian Dröge * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/win32_message_source.c: * gst-libs/gst/gl/win32/win32_message_source.h: gl/win32: Use g_io_channel_win32_new_messages() instead of our custom GSource Removes some unneeded code duplication between here and GLib. https://bugzilla.gnome.org/show_bug.cgi?id=797184 2018-09-20 14:04:39 +0300 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: vorbisdec: Initialize decoder directly once we have the 3 headers ... instead of waiting for the first non-header buffer. Also drop non-identification headers arriving after initialization or before the identification header. We don't do anything with them and they would just accumulate. https://bugzilla.gnome.org/show_bug.cgi?id=796980 2018-09-19 23:43:10 +0100 Tim-Philipp Müller * tests/examples/gl/generic/recordgraphic/main.cpp: examples: gl: generic: recordgraphic: fix build with MSVC 2018-06-27 10:34:09 +0200 Johan Bjäreholt * gst/audioresample/gstaudioresample.c: Removed unused GST_CAT_PERFORMANCE https://bugzilla.gnome.org/show_bug.cgi?id=797175 2018-09-19 11:42:14 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add glib-checks option to disable API guards and such We want this enabled by default, also in releases, but people may want to disable this for performance-critical workloads or on embedded devices. 2018-09-19 11:34:37 +0100 Tim-Philipp Müller * meson_options.txt: meson: fix missing closing bracket in option descriptions 2018-09-19 11:16:17 +0100 Tim-Philipp Müller * tests/examples/gl/clutter/meson.build: * tests/examples/gl/meson.build: meson: add clutter gl examples to Meson build 2018-09-19 10:52:40 +0100 Tim-Philipp Müller * tests/examples/gl/generic/generic.sln: * tests/examples/gl/gtk/README: * tests/examples/gl/gtk/gtk.sln: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.sln: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.sln: * tests/examples/gl/qt/videooverlay/videooverlay.sln: * tests/examples/gl/sdl/sdl.sln: examples: gl: remove old and broken vs solution files 2018-09-19 10:49:56 +0100 Tim-Philipp Müller * tests/examples/gl/generic/cube/meson.build: * tests/examples/gl/generic/cubeyuv/meson.build: * tests/examples/gl/generic/doublecube/meson.build: * tests/examples/gl/generic/meson.build: * tests/examples/gl/generic/recordgraphic/meson.build: * tests/examples/gl/meson.build: meson: add generic gl examples to Meson build 2018-09-19 10:28:56 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Fix typo in property description 2018-09-17 18:36:03 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gsteglimage.c: gl/egl: fix annotation for gst_egl_image_new_wrapped() https://bugzilla.gnome.org/show_bug.cgi?id=797158 2018-09-17 17:45:42 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/meson.build: gl: meson: add missing headers for gir generations There are a lot of symbols in GstGL-1.0.gir generated by automake that are not when it is generated by meson, because a lot of headers were not included in meson's gir generation. https://bugzilla.gnome.org/show_bug.cgi?id=797158 2018-09-03 16:20:33 +1000 Matthew Waters * docs/libs/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/meson.build: gl/build: don't pass OpenGL headers to GIR g-ir-scanner does not have a good enough C parser to parse the GL system headers 2018-09-03 16:06:45 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: macro out all the extremely similar uniform setting 2018-09-14 14:12:40 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix GEnumValue declaration The purpose of value_name in GEnumValue structure is to express in text format the name of the enum, not a description of the value, so it can be use later for the gir file generation. https://bugzilla.gnome.org/show_bug.cgi?id=797144 2018-09-13 20:02:43 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: Revert "glmemory: Fix n_wrapped_pointers usage" This reverts commit b1299c179bb185bc78df58dd3af9988e6e1f5490. 2018-09-13 20:02:41 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: allow system memory for dmabuf in transform_caps" This reverts commit d7eb48cce7ddb2b9f0d0bee84f66516c8113d167. 2018-09-13 20:02:40 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: handle upload methods with different caps" This reverts commit 87336b19577b7677c0574e8cb4c4914f6d934b81. 2018-09-13 20:02:39 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: Revert "gl/egl: Add gst_egl_image_from_dmabuf_direct() function" This reverts commit 8f0d75d4d6f622483302e689653ec1d8c90bcaa4. 2018-09-13 20:02:38 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: Implement direct dmabuf uploader" This reverts commit 3b1ae6262b99b45095c6aca02af0d7bbf88cfbbc. 2018-09-13 20:02:37 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: try to use the last method after reconfigure" This reverts commit c1053e17d58c44f5509aaf9949c02b82332cb193. 2018-09-13 20:02:34 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: Revert "gluploadelement: try to avoid dropping buffers" This reverts commit 75f2532da784731190d44f118f01a12841ecb683. 2018-09-13 20:34:08 -0300 Marcos Kintschner * ext/opus/gstopusenc.c: opusenc: fix segmentation fault at x86 version The argument 0x0 is interpreted by the x86 compiler as a 32-bit int, but it is consumed as a 64-bit uint causing a segmentation fault. We need to explicit cast it to guint64 in order for the va_list to be built correctly. https://bugzilla.gnome.org/show_bug.cgi?id=797092 2018-07-04 09:29:57 +0200 Michael Olbrich * ext/gl/gstgluploadelement.c: gluploadelement: try to avoid dropping buffers Without this, a buffer is dropped if glupload indicates that it is necessary to reconfigure. Avoid this by explicitly reconfiguring immediately and uploading the buffer again. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-04 09:17:11 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: try to use the last method after reconfigure Reconfigure will trigger a set_caps which clears the upload method. Remember the method in this case and start with it. Wrap around once to try all methods if necessary. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-05 10:17:27 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: Implement direct dmabuf uploader The idea is that some GPUs (like the Vivante series) can actually perform the YUV->RGB conversion internally, so no custom conversion shaders are needed. To make use of this feature, we need an additional uploader that can import DMABUF FDs and also directly pass the pixel format, relying on the GPU to do the conversion. Based on patches from Nicolas Dufresne and Carlos Rafael Giani . https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-09-10 23:28:30 -0400 Nicolas Dufresne * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: gl/egl: Add gst_egl_image_from_dmabuf_direct() function The colorspace conversion happens during the upload so the necessary hints must be provided to ensure that the conversion works correctly. At least the Mesa Intel driver will create a texture without error but produces an incorrect result. Use eglQueryDmaBufModifiersEXT() to check if non-external upload is supported for the given format. Based on a patch from Carlos Rafael Giani . https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-04 09:21:00 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: handle upload methods with different caps If a upload method is selected then use it exclusively in transform_caps(). Also, reconfigure if the current caps don't match the current upload method. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-07-05 15:17:30 +0200 Michael Olbrich * gst-libs/gst/gl/gstglupload.c: glupload: allow system memory for dmabuf in transform_caps This should not be necessary, but currently not all plugins that provide dmabuf memory announce this with caps features, e.g. v4l2. The static caps already contain the system memory. It didn't break before because other upload methods provide the necessary transformation. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2017-06-07 18:00:08 +0200 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Fix n_wrapped_pointers usage gst_gl_memory_setup_buffer() was not properly using the number of pointers to wrapped. This also fixes the validation, as we only support 1 wrapper per view, or num_planes * views wrapper. https://bugzilla.gnome.org/show_bug.cgi?id=783521 2018-09-07 22:15:35 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Delete the link before pushing The gst_video_decoder_clip_and_push_buf() now drops the internal stream lock while pushing. This means, the output_queued list could be modififed during that time. To make the code safe again, we delete the link before pushing the data. The walk pointer will later be updated with the list head, which makes it safe in case the list was modififed. https://bugzilla.gnome.org/show_bug.cgi?id=715192 2018-09-11 00:41:59 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudioutilsprivate.c: * gst-libs/gst/audio/gstaudioutilsprivate.h: gstaudiosrc/sink: Set audio ringbuffer thread priority On Windows, the ringbuffer thread function must have the "Pro Audio" priority set, otherwise it sometimes doesn't get scheduled for 200-300ms, which will immediately cause an underrun unless you set a very high latency-time and buffer-time. This has no compile-time deps since it tries to load avrt.dll at runtime to set the thread priority. 2018-09-10 22:22:16 +0530 Nirbheek Chauhan * ext/vorbis/gstivorbisdec.c: * ext/vorbis/meson.build: * meson_options.txt: meson: Add an option for the 'Tremor' Vorbis implementation It makes sense to control it explicitly to allow us to enable it on platforms that don't have hardware floating-point, and to allow people to enable the 'vorbis' plugin without having to also provide the Tremor dependency which is useless on most devices. 2018-09-05 18:34:06 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: check for EGL headers before allowing use of EGL For distros that provide headers in seperate dev/devel packages this won't build egl support without the necessary EGL headers. 2018-09-04 11:55:03 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Consider closedcaption/ as subtitles and improve subtitle caps detection Generally all subtitle/, subpicture/, text/, closedcaption/ and application/x-subtitle caps instead of hardcoding a small set of caps. https://bugzilla.gnome.org/show_bug.cgi?id=797072 2013-11-25 20:49:50 +0400 Alexey Chernov * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Release STREAM_LOCK during gst_pad_push() Release STREAM_LOCK before calling gst_pad_push() and take it back afterward so that upstream isn't blocked while output buffer is being pushed downstream. https://bugzilla.gnome.org/show_bug.cgi?id=715192 2013-11-25 20:45:18 +0400 Alexey Chernov * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Release STREAM_LOCK during gst_pad_push() Release STREAM_LOCK before calling gst_pad_push() and take it back afterward so that upstream isn't blocked while output buffer is being pushed downstream. https://bugzilla.gnome.org/show_bug.cgi?id=715192 2018-08-31 14:36:30 +0530 Nirbheek Chauhan * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/gl/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: Maintain macOS ABI through dylib versioning Requires Meson 0.48, but the feature will be ignored on older versions so it's safe to add it without bumping the requirement. Documentation: https://github.com/mesonbuild/meson/blob/master/docs/markdown/Reference-manual.md#shared_library 2018-08-31 18:14:13 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: fix gbm option to enable rather than disable This change matches what the other winsys/platforms are doing 2018-08-31 00:15:35 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: add Android build definitions 2018-08-02 15:59:20 +1000 Matthew Waters * ext/gl/meson.build: * gst-libs/gst/gl/meson.build: gl/meson: add build for iOS 2018-07-02 23:48:04 +0200 Zeeshan Ali * gst-libs/gst/video/video-info.h: video: Add GST_VIDEO_INFO_FIELD_RATE_N() macro Add a new macro that gives you the rate of the fields, which is the numerator of the field-rate for ALTERNATE interlacing video and FPS for progressive and other interlacing formats. https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-07-06 15:48:35 +0200 Zeeshan Ali * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: video: Add gst_video_decoder_set_interlaced_output_state() Add a variant of gst_video_decoder_set_output_state() that allows the user to pass an interlacing mode as well. This is needed to ensure that gst_video_info_set_interlaced_format() is used instead so that GstVideoInfo.size is correctly initialized. https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-07-02 23:48:04 +0200 Zeeshan Ali * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: video: Add GST_VIDEO_INFO_FIELD_HEIGHT() macro Add a new macro that gives you the height of a field. It returns the height of the full frame unless split-field (alternate) interlacing is in use. Also GST_VIDEO_INFO_COMP_HEIGHT macro now uses this new macro to get the height for its calculation. https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-07-02 17:51:06 +0200 Zeeshan Ali * tests/check/libs/video.c: test: Ensure gst_video_info_set_format() calls succeed https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-07-02 16:48:30 +0200 Zeeshan Ali * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * tests/check/libs/video.c: video: Add gst_video_info_set_interlaced_format() Add a helper to set the interlacing mode while creating the GstVideoInfo in addition to format and resolution. Using this helper will ensure that size is correctly calculated for split-field interlacing mode. https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-05-04 16:16:28 +0200 Zeeshan Ali * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * tests/check/libs/video.c: video: Add GST_VIDEO_INTERLACE_MODE_ALTERNATE Add a new interlace mode enum to represent buffers containing a single field of an interlaced video in a buffer. The name is based on the equivalent video format in the V4L2 API, V4L2_FIELD_ALTERNATE: https://01.org/linuxgraphics/gfx-docs/drm/media/uapi/v4l/field-order.html Since caps fields are optional, we also introduce a new caps feature, "format:Interlaced" that always goes with "alternate" interlace mode to ensure that caps for this incompatible format are incompatible with other interlaced and progressive video caps. https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-05-04 15:19:11 +0200 Zeeshan Ali * gst-libs/gst/video/video-frame.h: video: Add format for single fields of interlaced video in a buffer https://bugzilla.gnome.org/show_bug.cgi?id=796106 2018-08-29 10:38:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglbasefilter.c: doc: glbasefilter: Add missing Since for gst_gl_base_filter_find_gl_context() 2018-08-16 19:37:33 +0300 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: vorbisdec: Always handle in-band header packets once the first non-header packet arrives And clean up any old pending headers if we receive a new identification header, or if we receive a new set of headers via caps. Otherwise it might happen that we receive one or more header but not all, and then afterwards all headers again, and libvorbis does not like getting headers passed multiple times and would error out. It only makes sense to pass the very latest headers to the decoder at the time we can actually make use of them. https://bugzilla.gnome.org/show_bug.cgi?id=796980 2018-08-28 13:35:28 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: Always define gstgl_dep to a valid dependency object Fixes configure error when gl support was auto-detected as not being available: ext/gl/meson.build:50:20: ERROR: Unknown variable "gstgl_dep". 2017-09-21 14:03:28 +0900 Yuji Kuwabara * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: fix removing foreign window handle gst_gl_window_dispmanx_egl_set_window_handle() removes native window handle (dispmanx element), regardless it was foreign window handle (set via gst_video_overlay_set_window_handle()) or not. This problem prevents glimagesink reusable. (PAUSED -> READY -> PAUSED does not work) This patch corrects it comparing the native window handle with foreign window handle. This behavior is same as gst_gl_window_dispmanx_egl_close(). https://bugzilla.gnome.org/show_bug.cgi?id=785199 2018-08-28 14:31:43 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: correctly use the set_render_rectangle size first https://bugzilla.gnome.org/show_bug.cgi?id=789384 2017-10-24 17:39:50 +1030 memeka * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: add preferred window size, and set it according to video size The glimagesink wayland backend lacks the implementation of gst_gl_window_wayland_egl_set_preferred_size. Because of this, glimagesink windows on wayland are created with a fixed window size of 320x240. [Matthew Waters]: gst-indent sources https://bugzilla.gnome.org/show_bug.cgi?id=789384 2018-08-27 15:41:31 +0300 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttextrender.h: * ext/pango/gsttimeoverlay.c: pango: Create one context per instance and remove class mutex PangoCairo is thread-safe as long as the context and fontmap are not shared between threads. Previously each subclass had its own context and a class mutex for this reason, but apart from hurting performance this was also not completely safe yet: the same fontmap might've been used by different classes from different threads as the thread-default fontmap (at time of class initialization) was used. 2018-08-27 11:07:47 +0300 Sebastian Dröge * ext/ogg/gstoggstream.c: oggdemux: Ensure that no pad values are set when setting up the mapper Otherwise we might have arbitrary values set that are used later and can cause undefined behaviour, as found by ossfuzz. 2018-08-26 01:52:41 +0200 Tim-Philipp Müller * ext/gl/gstglcolorscale.c: glcolorscale: fix compiler warning gstglcolorscale.c(173): warning C4098: 'gst_gl_colorscale_gl_stop': 'void' function returning a value 2018-08-26 01:41:42 +0200 Tim-Philipp Müller * gst-libs/gst/gl/gstglbasefilter.h: gl: use right export decorator 2018-08-26 01:40:57 +0200 Tim-Philipp Müller * gst-libs/gst/audio/audio.h: audio: use right export decorator 2018-08-18 12:37:48 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: * tests/examples/meson.build: meson: gl: return not-found dependency instead of disabler if opengl is disabled This allows consumers of the gstgl dependency where gstgl is optional to do things like: config_data.set('HAVE_GST_GL', gstgl_dep.found()) deps = [gstvideo_dep, gstgl_dep] meaning they can still use the dep unconditionally. With the disabler we would just disable the whole target even if the gstgl part was an optional extra. We can add an option to dependency() later to let users/consumers of the dep decide if they want a not-found dependency or a disabler instead. 2018-08-17 02:59:14 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: host_system is 'ios' when building for iOS The cross file sets this value, and we use 'ios' in Cerbero. 2018-06-16 14:27:20 +0100 Philippe Normand * gst/playback/gstplaysink.c: playsink: audio visualization support fixes The queue between the audiotee and the audio chain wasn't properly added to the bin, leading to streamsynchronizer locks on EOS. Reconfiguration of the visualization chain wasn't working as expected either. It is now possible to dynamically enable/disable the audio visualization support. https://bugzilla.gnome.org/show_bug.cgi?id=796553 2018-08-16 18:03:37 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Also run the audio-specific caps fixation for audio aggregator subclasses that can't convert 2018-08-16 17:54:00 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Fixate to some meaningful values if no sinkpad is configured yet The default caps fixation code would select a rate of 1 for example, which is not really ideal. 2018-08-16 17:07:06 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Define crossfade-ratio to have range [0.0,1.0] Previously negative values had the same effect as 0.0, which was confusing. https://bugzilla.gnome.org/show_bug.cgi?id=796845 2018-08-16 11:35:33 +0100 Tim-Philipp Müller * ext/meson.build: meson: remove obsolete FIXME 2018-08-16 11:08:38 +0100 Tim-Philipp Müller * ext/gl/meson.build: meson: gl: find libjpeg via pkg-config This effectively (but optionally) requires libjpeg-turbo which ships with a .pc file and is what pretty much everyone these days uses anyway for libjpeg, so shouldn't be a problem hopefully. https://bugzilla.gnome.org/show_bug.cgi?id=796947 2018-08-16 10:58:47 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: * meson.build: meson: move gmodule check to top-level It's also needed by the generic/states test and the variable is currently checked as part of the opengl lib tests so wouldn't be available if opengl was disabled. 2018-08-16 10:28:48 +0100 Tim-Philipp Müller * ext/gl/meson.build: * gst-libs/gst/gl/meson.build: * meson_options.txt: meson: add option for opengl and the misc optional gl plugin deps Finer control over the opengl integration library dependencies is already implemented via the gl_api, gl_platform, and gl_winsys options. https://bugzilla.gnome.org/show_bug.cgi?id=796947 2018-08-16 10:13:39 +0100 Tim-Philipp Müller * meson_options.txt: meson: options: move gl options into separate section 2018-08-16 10:02:42 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Make sure to hold object lock while iterating sink pads They might otherwise just change while we iterate. 2018-08-13 14:50:09 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Properly propagate caps negotiation failures Otherwise we'll end up doing a division by zero when clipping buffers, and might even accept buffers for which we don't know the caps. https://bugzilla.gnome.org/show_bug.cgi?id=796951 2018-04-28 14:50:11 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio-quantize.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: * gst-libs/gst/pbutils/gstpluginsbaseversion.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtppayloads.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/video-dither.c: * gst-libs/gst/video/video-event.c: * gst-libs/gst/video/video-tile.c: gst-libs: include config.h in all source files This will be needed later when we get our export define from config.h 2018-04-29 00:18:58 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-prelude.h: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/rtsp-prelude.h: pbutils, rtsp: fix deprecation guards Function body must only be removed if compiling with GST_REMOVE_DEPRECATED. Function declaration must not be skipped if GST_DISABLE_DEPRECATED is defined, since it contains our export decorator and we wouldn't export the symbol as public API any more then since we compile with GST_DISABLE_DEPRECATED. 2018-04-28 13:41:11 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: remove unused build definition 2018-08-12 18:12:35 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: * tests/meson.build: meson: add build options to disable tools and tests 2018-08-12 13:19:44 +0100 Tim-Philipp Müller * gst-libs/gst/tag/lang-tables.dat: * gst-libs/gst/tag/mklangtables.c: tag: add license to generated backup language name table and update It's LGPL same as iso-codes 2018-08-12 12:55:00 +0100 Tim-Philipp Müller * gst-libs/gst/tag/meson.build: * meson_options.txt: meson: use iso-codes in gsttag if available 2018-08-12 00:21:58 +0100 Tim-Philipp Müller * pkgconfig/meson.build: meson: add zlib to gstreamer-1.0.pc if found https://bugzilla.gnome.org/show_bug.cgi?id=793995 2018-08-12 00:13:31 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add options to disable gobject cast checks and glib asserts and define G_DISABLE_DEPRECATED for development versions, like we do in autotools. 2018-08-12 00:09:20 +0100 Tim-Philipp Müller * meson_options.txt: meson: update available gl_winsys in options list 2018-08-11 18:49:10 +0100 Tim-Philipp Müller * gst-libs/gst/tag/meson.build: meson: tag: check for zlib and support compressed id3v2 tag if found https://bugzilla.gnome.org/show_bug.cgi?id=793995 2018-08-10 22:44:12 +1000 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix output when a transformation matrix is used If we have a transformation matrix, we have no idea where in the output the video is going to endup. It might also be different and not cover the entire output. We need to clear the output to remove any previous data in the backing texture. Found from https://stackoverflow.com/questions/51707229/python-gstreamer-for-dynamic-control-of-element-properties 2018-08-10 12:43:38 +0100 Bastian Köcher * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: meson: fix install dir for generated header files Nixos installs into a non-standard includedir, so need to take account of the 'includedir' option instead of just hard-coding 'include' here. https://bugzilla.gnome.org/show_bug.cgi?id=794856 2018-08-08 19:18:22 +0100 Tim-Philipp Müller * tools/gst-play.c: gst-play: use Fisher-Yates shuffle for shuffling the playlist 2018-08-08 12:44:55 +0200 Sebastian Dröge * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Propagate flow returns from gst_type_find_helper_get_range() properly Instead of considering every failed typefinding as an error, even in case of e.g. GST_FLOW_FLUSHING. 2018-08-06 14:17:09 -0400 Thibault Saunier * gst-libs/gst/rtsp/Makefile.am: rtsp: Include gstreamer-base gir dir in autotools 2018-08-03 19:06:00 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: fix macos additions for non-macos platforms "gst-libs/gst/gl/meson.build:655:20: ERROR: Unknown variable "quartzcore_dep"." 2017-07-21 16:59:28 +1000 Alessandro Decina * ext/gl/meson.build: * gst-libs/gst/gl/meson.build: * meson.build: gl/meson: OSX support (CGL and Cocoa) [Matthew Waters]: minor additions such as -fobjc-arc and relying on dependency rather than cc.find_library() 2018-08-01 13:59:45 +0200 Norbert Wesp * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * m4/gst-gl.m4: Add GBM_CFLAGS and define EGL_PLATFORM_GBM_MESA Building an image with yocto for an 'am335x' processor will fail, because 'gbm.h' can not be found and 'EGL_PLATFORM_GBM_MESA' is not defined. So simply adding define of 'EGL_PLATFORM_GBM_MESA' in 'gstgldisplay_egl.c' and adding 'GBM_CFLAGS' in 'gst-gl.m4' to get rid of this errors and complete a full build process. ERRORs were: ----------- gst-plugins-base-1.14.1/gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h:24:10: fatal error: gbm.h: No such file or directory #include ^~~~~~~ gst-plugins-base-1.14.1/gst-libs/gst/gl/egl/gstgldisplay_egl.c:157:39: error: 'EGL_PLATFORM_GBM_MESA' undeclared (first use in this function); did you mean 'EGL_PLATFORM_WAYLAND'? ret = _gst_eglGetPlatformDisplay (EGL_PLATFORM_GBM_MESA, (gpointer) display, ^~~~~~~~~~~~~~~~~~~~~ https://bugzilla.gnome.org/show_bug.cgi?id=796885 2018-07-31 22:41:16 -0400 Nicolas Dufresne * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: Add property to control phase inversion When enabled, phase-inversion slightly increase stereo quality, but produce a stream that when downmixed to mono will present important audio distortion. This patch disables this feature by default and introduce a property that let user enable it if desired. https://bugzilla.gnome.org/show_bug.cgi?id=791771 2018-07-30 10:03:11 +0300 freyr * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: gl/gbm: allow headless mode Don't require an output for the GBM backend. https://bugzilla.gnome.org/show_bug.cgi?id=794716 2018-07-19 11:16:05 +0200 Carlos Rafael Giani * m4/gst-gl.m4: gl: Add switches for explicitely enabling/disabling PNG and JPEG support https://bugzilla.gnome.org/show_bug.cgi?id=796833 2018-07-19 10:30:54 +0200 Carlos Rafael Giani * m4/gst-gl.m4: gl: Add switch for explicitely enabling/disabling GBM support https://bugzilla.gnome.org/show_bug.cgi?id=796833 2018-07-31 23:32:42 +0530 Nirbheek Chauhan * meson.build: meson: Fix build with x11 dependency is disabled gtk_x11_dep is used unconditionally in tests/icles/meson.build 2018-07-31 13:28:59 +0530 Nirbheek Chauhan * ext/cdparanoia/meson.build: meson: Fix detection of cdparanoia library Without this the pkg-config file is required when the plugin is enabled. 2018-07-27 15:15:34 +0300 Sebastian Dröge * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Properly propagate gst_pad_pull_range() errors And don't consider FLUSHING an actual error, just stop in that case. https://bugzilla.gnome.org/show_bug.cgi?id=796883 2018-07-25 07:35:05 +0530 Nirbheek Chauhan * docs/libs/meson.build: * ext/alsa/meson.build: * ext/cdparanoia/meson.build: * ext/libvisual/meson.build: * ext/meson.build: * ext/ogg/meson.build: * ext/opus/meson.build: * ext/pango/meson.build: * ext/theora/meson.build: * ext/vorbis/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/tag/meson.build: * gst/meson.build: * meson.build: * meson_options.txt: * sys/meson.build: * sys/xvimage/meson.build: * tests/examples/gl/sdl/meson.build: * tests/examples/overlay/meson.build: * tests/meson.build: meson: Add feature options for all plugins GL dependency detection is still automagic. https://bugzilla.gnome.org/show_bug.cgi?id=795107 2018-07-26 00:20:02 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Don't leak all buffers while crossfading and not all pads are crossfading 2018-07-25 15:03:59 +0300 Sebastian Dröge * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: gl: Also don't leak floating references to elements set via properties Fixup for 58ac815eae6ed468d1db60a54a1bd34d6324c28c. Floating references are such a mess. 2018-07-25 14:23:36 +0300 Sebastian Dröge * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: gl: Don't steal callers reference when setting non-floating elements via properties Introduced by fbef9220d3dc2f785081c4766901aab2ecfaed10. The code there is only correct for elements we get from signals. 2018-07-24 15:09:25 +0300 George Kiagiadakis * gst-libs/gst/audio/audio-buffer.c: audio-buffer: fix typo in assignment that causes buggy behavior 2018-07-20 16:25:02 +0300 Sebastian Dröge * gst/compositor/blend.c: compositor: Use 255 as maximum alpha instead of 256 255 will easily become 0 in the blending function as they expect the maximum value to be 255. Can be reproduce with gst-launch-1.0 videotestsrc pattern=ball ! c.sink_0 \ videotestsrc pattern=snow ! c.sink_1 \ compositor name=c \ sink_0::zorder=0 sink_1::zorder=1 sink_0::crossfade-ratio=0.5 \ background=black ! \ videoconvert ! xvimagesink crossfade-ratio +/- 0.001 makes it work correctly and the same happens at e.g. 0.25, 0.75, N*0.0625 https://bugzilla.gnome.org/show_bug.cgi?id=796846 2018-02-14 13:55:06 +0200 George Kiagiadakis * gst-libs/gst/audio/gstaudiodecoder.c: gstaudiodecoder: take into account GstAudioMeta::samples on the output buffers This is useful if the output buffers are planar and have extra padding on each plane, in which case size/bpf does not represent the number of valid samples. https://bugzilla.gnome.org/show_bug.cgi?id=705977 2018-02-14 13:11:37 +0200 George Kiagiadakis * gst-libs/gst/audio/gstaudiodecoder.c: gstaudiodecoder: do not aggregate output if buffers are planar Aggregation will break the layout, as it concatenates buffers, and fixing it here would be much more inefficient than configuring the actual decoder implementation to output larger buffers. https://bugzilla.gnome.org/show_bug.cgi?id=705977 2018-07-21 09:13:27 -0400 Nicolas Dufresne * tests/examples/gl/gtk/3dvideo/meson.build: * tests/examples/gl/gtk/filtervideooverlay/meson.build: * tests/examples/gl/gtk/fxtest/meson.build: * tests/examples/gl/gtk/meson.build: * tests/examples/gl/gtk/switchvideooverlay/meson.build: meson: gl/gtk tests: Add video_dep to the helper The gtk helper library includes videooverlay.h hence must have a dependency on video_dep, this allow removing the dep from the dependant executables. 2018-07-21 11:12:09 +0100 Tim-Philipp Müller * tests/examples/gl/meson.build: meson: examples: fix wrong keyword for gtk examples 2018-07-20 22:07:04 -0400 Nicolas Dufresne * tests/examples/gl/gtk/3dvideo/meson.build: * tests/examples/gl/gtk/filternovideooverlay/meson.build: * tests/examples/gl/gtk/filtervideooverlay/meson.build: * tests/examples/gl/gtk/fxtest/meson.build: * tests/examples/gl/gtk/meson.build: * tests/examples/gl/gtk/switchvideooverlay/meson.build: * tests/examples/gl/meson.build: meson: Build gl/gtk examples 2018-01-05 16:07:54 +0900 Justin Kim * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: * tests/check/Makefile.am: * tests/check/elements/audiorate.c: audiorate: accumulate offset by time diff The fomula, 'offset = time / rate', is correct only if the rate is never changed. When the rate is changed, the offset should be re-calculated based on the previous offset. https://bugzilla.gnome.org/show_bug.cgi?id=791269 2018-07-18 19:53:26 +0900 Seungha Yang * sys/xvimage/xvimage.c: * sys/xvimage/xvimagesink.c: xvimage: Fix symbol redefine build error https://bugzilla.gnome.org/show_bug.cgi?id=796827 2018-07-17 11:43:40 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Only offer DMABuf caps feature if using EGL This was miss-leading VAAPI which was not forcing linear back buffers, would still export DMABuf. That caused bad rendering as the buffers are tiled and most likely compressed. https://bugzilla.gnome.org/show_bug.cgi?id=796822 2018-07-18 20:05:26 +0900 Seungha Yang * gst/compositor/compositor.c: compositor: Update conversion info in property setter ... not in getter. Otherwise, video-converter will not be updated with new width/height https://bugzilla.gnome.org/show_bug.cgi?id=796828 2016-09-01 15:14:37 +0900 Wonchul Lee * gst/playback/gsturisourcebin.c: urisourcebin: Rename urisourcebin variable and query functions https://bugzilla.gnome.org/show_bug.cgi?id=770693 2018-05-11 20:25:34 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Set streams-aware flag https://bugzilla.gnome.org/show_bug.cgi?id=777213 https://bugzilla.gnome.org/show_bug.cgi?id=775132 2018-07-16 16:01:34 +0200 Iñigo Huguet * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: * m4/gst-gl.m4: gl/build: fixed failed compilation due to missing EGLuint64KHR typedef [Matthew Waters]: add meson differences https://bugzilla.gnome.org/show_bug.cgi?id=796820 2018-07-17 11:51:49 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: Only offer DMABuf caps feature if using EGL" This reverts commit bc9afe724360cbbe5489ca1e1ea44f077810aca4. 2018-07-17 11:43:40 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Only offer DMABuf caps feature if using EGL This was miss-leading VAAPI which was not forcing linear back buffers, would still export DMABuf. That caused bad rendering as the buffers are tiled and most likely compressed. 2018-07-16 17:09:02 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: docs: libs: Add new symbols to section file 2018-07-16 13:12:50 +0200 Guillaume Desmottes * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typo in 'plane-offsets' description The property is 'plane-offsets', not 'plane-offset' so the example in the description was wrong. https://bugzilla.gnome.org/show_bug.cgi?id=796817 2018-07-09 14:03:04 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't always drain on gaps/discont V4L2 and OMX decoder don't support draining and keeping reference frames. As a side effect, these decoder just stops working on gaps/discont. When this drain was introduced, the commit stated that this was for TRICKMODE_KEY_UNITS, so only drain if running in this mode. https://bugzilla.gnome.org/show_bug.cgi?id=796771 2018-02-13 15:04:04 +0200 George Kiagiadakis * tests/check/libs/audio.c: tests: audio: test gst_audio_buffer_reorder_channels() also with non-interleaved buffers https://bugzilla.gnome.org/show_bug.cgi?id=796743 2018-02-13 13:24:32 +0200 George Kiagiadakis * gst-libs/gst/audio/audio-channels.c: libs: audio: implement planar buffer support in gst_audio_buffer_reorder_channels() https://bugzilla.gnome.org/show_bug.cgi?id=796743 2018-02-12 14:45:44 +0200 George Kiagiadakis * gst/audiorate/gstaudiorate.c: audiorate: fix support for non-interleaved buffers https://bugzilla.gnome.org/show_bug.cgi?id=796741 2018-05-18 16:22:47 +0300 George Kiagiadakis * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: libs: audio: add a new gst_audio_buffer_truncate() function Essentially this moves the truncation logic out of gst_audio_buffer_clip() so that it can be used in other places, like in audiorate. https://bugzilla.gnome.org/show_bug.cgi?id=796740 2018-05-18 16:22:32 +0300 George Kiagiadakis * tests/check/libs/audio.c: tests: audio: add unit tests for planar audio support in gst_audio_buffer_clip() https://bugzilla.gnome.org/show_bug.cgi?id=796740 2018-02-08 14:34:23 +0200 George Kiagiadakis * gst-libs/gst/audio/audio.c: libs: audio: implement support for non-interleaved audio in gst_audio_buffer_clip() https://bugzilla.gnome.org/show_bug.cgi?id=796740 2018-07-12 13:13:04 +1000 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: also set the context in decide_allocation If downstream doesn't perform allocation queries, the context would never be set and criticals would occur. 2018-07-12 12:48:39 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix default placement when different sized output i.e. when expanding from 320x240 to 800x600, the resulting frame should appear in the top left corner, not the middle. https://bugzilla.gnome.org/show_bug.cgi?id=794401 2018-04-25 16:36:21 +0200 Daniel Klamt * ext/gl/gstglvideomixer.c: glvideomixer: Moves the objects to zero on z axis Matches the output from a similar glimagesink pipeline when rotating from an upstream gltransformation passed through the affine transformation meta with xpos/ypos being set. https://bugzilla.gnome.org/show_bug.cgi?id=794401 2018-07-11 18:29:52 +0300 George Kiagiadakis * tests/check/pipelines/simple-launch-lines.c: tests: simple-launch-lines: fixate audioconvert caps now that the layout is also convertable Because audioconvert can now convert between interleaved and non-interleaved, this pipeline fails on the upstream capsfilter not being able to fixate its output caps. This is unavoidable. 2018-02-12 15:33:49 +0200 George Kiagiadakis * gst/adder/gstadder.c: adder: remove non-interleaved layout from caps adder needs more than just trivial work to support planar buffers properly because it currently reads sub-buffers from GstCollectPads in order for all of them to have matching sizes. In planar mode, this means it would truncate some channels and mix them up in strange ways. It only works if all input buffers in all sink pads have matching sizes. 2018-02-07 18:17:07 +0200 George Kiagiadakis * gst/audioresample/gstaudioresample.c: audioresample: implement support for non-interleaved buffers https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-02-09 17:07:48 +0200 George Kiagiadakis * tests/check/elements/audioconvert.c: tests: audioconvert: add tests for planar audio https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-02-09 14:29:57 +0200 George Kiagiadakis * tests/check/elements/audioconvert.c: tests: audioconvert: add support for specifying the layout on tests https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-02-01 18:08:51 +0200 George Kiagiadakis * gst/audioconvert/gstaudioconvert.c: audioconvert: implement support for converting between interleaved and non-interleaved layouts https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-02-01 17:00:06 +0200 George Kiagiadakis * gst-libs/gst/audio/audio-converter.c: libs: audio-converter: complete code to support non-interleaved audio buffers https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-02-01 13:23:53 +0200 George Kiagiadakis * gst-libs/gst/audio/audio-resampler.c: libs: audio-resampler: add support for consuming non-interleaved input buffers https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-01-31 19:28:57 +0200 George Kiagiadakis * gst-libs/gst/audio/audio-channel-mixer.c: libs: audio-channel-mixer: add support for non-interleaved audio buffers https://bugzilla.gnome.org/show_bug.cgi?id=705986 2018-07-11 14:48:57 +0300 George Kiagiadakis * tests/check/Makefile.am: tests/check/Makefile.am: link audiotestsrc test with libgstaudio Needed for the new planar audio unit test 2018-01-31 17:41:32 +0200 George Kiagiadakis * tests/check/elements/audiotestsrc.c: tests: audiotestsrc: add unit test for non-interleaved audio output https://bugzilla.gnome.org/show_bug.cgi?id=796739 2018-01-31 17:39:05 +0200 George Kiagiadakis * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: implement producing non-interleaved audio buffers https://bugzilla.gnome.org/show_bug.cgi?id=796739 2018-07-10 09:45:31 -0400 Nicolas Dufresne * ext/gl/gstglvideomixer.c: glvideomixer: Fix coding style 2018-07-10 09:42:47 -0400 Nicolas Dufresne * ext/gl/gstglvideomixer.c: glvideomixer: Add missing string.h include 2018-04-25 16:39:34 +0200 Daniel Klamt * ext/gl/gstglvideomixer.c: Moved the pad offset and aspect ratio to a matrix so it will be added in view space and not in world space https://bugzilla.gnome.org/show_bug.cgi?id=794401 2018-07-10 20:03:12 +1000 Matthew Waters * ext/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.c: * tests/check/libs/gstglmatrix.c: gl/utils: fixup matrix math again for column major e4bf9ed8f060021151cd57e2b00493ed696cb47b was not quite right and changed the wrong thing. Intead we needed to change the multiplication order and should have kept the previous to/from matrices as is done in this patch. 2018-07-09 10:48:54 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideopool.c: videopool: display expected size in warning message Display the size computed from the caps when rejecting a pool configuration because the buffer size is too small. https://bugzilla.gnome.org/show_bug.cgi?id=796768 2017-10-20 18:36:55 +0200 Olivier Crête * gst-libs/gst/video/gstvideosink.c: videosink: Set processing deadline to 15ms This roughly corresponds to one frame at 60fps, and leave 5ms of max_lateness to not change the existing behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=640610 2018-07-06 10:51:37 +0300 Sebastian Dröge * gst/playback/gstparsebin.c: parsebin: Don't try to continue autoplugging a parser if we got raw caps Otherwise we'll fail with an unhelpful message that no decoder for the raw caps was found if a container contains raw media. 2018-07-06 13:48:09 +0200 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Bail out on huge EBML chunks We can't handle/store more than guint32 anyway 2018-07-06 13:46:17 +0200 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Use guint32 for sizes This brings it in sync with the type used with gst_type_find_*() API 2018-07-06 13:12:51 +0200 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Use types of same size/signedness Where applicable/possible 2018-02-08 15:20:09 +0200 George Kiagiadakis * tests/check/libs/audio.c: tests: audio: add unit test for GstAudioBuffer & GstAudioMeta https://bugzilla.gnome.org/show_bug.cgi?id=751605 2018-02-07 14:36:01 +0200 George Kiagiadakis * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-buffer.c: * gst-libs/gst/audio/audio-buffer.h: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: * gst-libs/gst/audio/meson.build: libs: audio: Implement GstAudioBuffer & GstAudioMeta Library bits to support non-interleaved audio https://bugzilla.gnome.org/show_bug.cgi?id=751605 2018-06-29 10:54:36 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/meson.build: meson: rtsp now also depends on libgstbase 2018-06-29 08:53:48 +0200 Edward Hervey * gst-libs/gst/rtsp/Makefile.am: rtsp: Also use libgstbase for introspection module 2018-06-29 08:08:46 +0200 Sebastian Dröge * gst-libs/gst/rtsp/Makefile.am: rtsp: Link to libgstbase for GstDataQueue 2018-06-28 20:13:04 +0800 wangzq * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Round down segsize to an integer number of samples https://bugzilla.gnome.org/show_bug.cgi?id=796704 2018-06-28 10:19:19 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Use GstQueueArray instead of GQueue for the queued messages 2018-06-26 12:18:27 +0930 memeka * gst-libs/gst/gl/egl/gstgldisplay_egl.c: gl: check for EGL_KHR_platform_gbm for non-MESA gbm implementations https://bugzilla.gnome.org/show_bug.cgi?id=796694 2018-06-24 13:35:20 +0200 Tim-Philipp Müller * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl: fix build on iOS 2018-06-24 13:19:21 +0200 Tim-Philipp Müller * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: fix build on Windows 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: gl: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: rtp: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagmux.c: tag: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideosink.c: video: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-23 21:33:16 +0200 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: app: Update for g_type_class_add_private() deprecation in recent GLib https://gitlab.gnome.org/GNOME/glib/merge_requests/7 2018-06-22 22:43:08 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontextegl: only dump configs once 2018-06-22 22:40:55 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontextegl: Fix android build without ES3 tokens 2018-06-20 04:41:24 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspdefs: Add gst_rtsp_generate_digest_auth_response_from_md5 Passwords are usually not stored in clear text, usually the A1 section of the response is stored as is in .htdigest files. https://bugzilla.gnome.org/show_bug.cgi?id=796636 2018-06-21 17:47:09 +1000 Matthew Waters * tests/check/libs/gstglmatrix.c: gl/tests: matrix use the affine matrix setter to convert matrices Removes some duplicated matrices that didn't really need to be hardcoded. 2018-06-21 17:36:39 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontextegl: dump the list of EGLConfig's available 2018-06-18 22:24:13 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl: use dependency fallbacks to get at a possible gl-headers subproject We would make the subproject conditional on the wrap-mode=nodownload however get_option('wrap-mode') or similar is not available from meson.build files as the wrap-mode is meant to be used automatically. Instead use the dependency fallback mechanism to get at the subproject where possible i.e. when downloading is allows and only add the compat includes when we have a valid internal dependency from the gl-headers subproject. https://bugzilla.gnome.org/show_bug.cgi?id=796534 2018-06-18 13:28:15 +0300 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Make sure that events are writable before changing their seqnum 2018-06-15 22:48:42 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix string leak gst_video_colorimetry_to_string() returns allocated memory which must be freed. https://bugzilla.gnome.org/show_bug.cgi?id=796596 2018-06-15 13:14:12 +1000 Matthew Waters * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglfeature.c: * tests/check/meson.build: gl/tests: add extension/version parsing checks 2018-06-13 15:29:46 +0300 Vivia Nikolaidou * tools/gst-discoverer.c: discoverer: Don't crash when running with -v if channel-mask==0 and >7 channels For e.g. 16-channel audio, if the channel mask is 0 (which it usually is), gst_audio_channel_positions_from_mask would get confused, ultimately leading into a crash. https://bugzilla.gnome.org/show_bug.cgi?id=796578 2018-06-13 13:19:54 +0200 Edward Hervey * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Keep the segment position in sync If the start of the segment is modified, the position should be modified accordingly https://bugzilla.gnome.org/show_bug.cgi?id=796576 2018-06-11 18:32:28 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: sdp: Add new constructor, sdp_message_from_text Helper function for bindings, in python for example users can now replace: res, msg = GstSdp.SDPMessage.new() GstSdp.sdp_message_parse_buffer(bytes(text.encode()), msg) with: res, msg = GstSdp.SDPMessage.new_from_text(text) https://bugzilla.gnome.org/show_bug.cgi?id=796563 2018-06-11 13:51:47 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideopool.c: videopool: Removed unused private caps member 2018-06-11 13:48:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: log an ERROR if we're going to return a flow error 2018-06-07 17:42:35 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: Revert "gl/meson: add support for using bundled headers in a subproject" This reverts commit 82c43ff9a32f1c1d113cd6e1e8d046b7ab64422d. Reverting for the time being, since it trips up build bots that don't have network connectivity. We ideally shouldn't have a subproject that's used unconditionally. 2018-06-07 13:58:43 +1000 Matthew Waters * ext/gl/gstglalpha.c: glalpha: fix compilation with msvc It doesn't define M_PI 2018-06-06 17:27:15 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: add support for using bundled headers in a subproject This is most useful when building on windows which does not ship the necessary OpenGL headers. 2018-06-07 13:48:10 +1000 Matthew Waters * subprojects/gl-headers.wrap: gl: add subproject for necessary GL headers for building Originally for windows with the GL/glext.h and GL/wglext.h but can be extended for other headers 2017-11-01 10:25:49 -0600 Thomas Bluemel * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Improve clock skew corrections. The external time should be moved only as much as needed to get back to the ideal center point, so that the clock is still allowed to drift both directions after the correction. This reduces excessive back and forth corrections that were caused by the assumption of a linear drift. https://bugzilla.gnome.org/show_bug.cgi?id=788006 2018-06-06 17:24:26 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: force the gl dependency to use pkg-config Meson has an internal override for dependency('gl') which we do not want to use as it assumes too many things. Force meson to only search for gl.pc. 2018-06-04 22:34:04 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: don't define GST_EXPORTS The intended use (msvc) doesn't currently like it and will fail to resolve symbols at runtime. 2018-06-04 22:32:03 +1000 Matthew Waters * ext/gl/gstgldownloadelement.c: gldownloadelement: fix build with msvc msvc doesn't like #ifdef inside macro expansion 2018-05-24 02:49:54 +1000 Matthew Waters * ext/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.c: * tests/check/libs/gstglmatrix.c: gl/utils: Fix NDC conversion matrices for column-majorness The matrices were converting the wrong values with non-diagonal-only matrices. e.g. a typical yflip matrix in [-1,1]^3 such as 1 0 0 0 0 -1 0 0 0 0 1 0 0 0 0 1 Would have actually required a matrix like this in [0,1]^3 1 0 0 0 0 -1 0 0 0 0 1 0 0 -2 0 1 Which is 1. not consistent with our multiplication convention and would require transposing matrices or changing our multiplication order (from what is generally used on opengl matrix guides/tutorials). 2. Produces incorrect values when input with actual vertices accounting for the difference in multiplication order. e.g. some vertices multiplied by the yflip matrix using vertex * yflip(== transpose(yflip) * vertex): vertex: -> result: expected: vec4(1,0,1,1) -> vec4(1,-2,1,1) vec4(1,1,1,1) vec4(1,1,1,1) -> vec4(1,-3,1,1) vec4(1,0,1,1) With the updated values, we now get the expected values. Includes a test for this behaviour and the example above 2018-06-05 17:30:47 +0200 Edward Hervey * gst/playback/gstplaysink.c: playsink: Properly propagate SEGMENT seqnum When flushing chains, make sure the FLUSH events have seqnum that are consistent with the current SEGMENT seqnum 2018-06-05 17:29:53 +0200 Edward Hervey * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Properly propagate seqnum on EOS event 2018-06-05 17:24:55 +0200 Edward Hervey * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Properly propagate segment seqnum This wasn't done previously and the outgoing SEGMENT events had seqnums which weren't consistent with the upstream ones 2018-06-05 17:24:05 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Properly relay seqnum of segments Not all cases were handled regarding properly propagating the seqnum of SEGMENT events on all downstream segment-related events 2018-05-30 11:39:40 +0200 Edward Hervey * gst/subparse/gstsubparse.c: subparse: Don't read beyond array If num_open_tags is 0, we shouldn't try to get the "last" open tag since there isn't any. 2018-05-30 10:56:12 +0200 Edward Hervey * ext/ogg/gstoggstream.c: ogg: Avoid undefined granule shift A granule is a 64bit signed integer, shifting by 63 or more is undefined and most likely an indication that the stream is corrupted or invalid. Detected by oss-fuzz 2018-05-22 13:59:58 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: * gst/playback/gstparsebin.c: * gst/playback/gsturidecodebin.c: docs: Fix typos 2014-04-18 10:37:57 +0200 Antoine Jacoutot * gst-libs/gst/gl/Makefile.am: libs: g-ir-scanner: do not hardcode libtool path https://bugzilla.gnome.org/show_bug.cgi?id=726571 2018-05-21 23:12:22 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: rename gtkdoc option to gtk_doc 2018-05-21 11:35:05 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add install_plugins_helper option 2018-05-21 09:18:24 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-color.c: video: fix some GIR array annotations 2018-05-21 09:18:09 +0200 Mark Nauwelaerts * gst-libs/gst/audio/audio-channels.c: audio: fix some GIR array annotations 2018-05-20 13:37:07 +0200 Christoph Reiter * gst-libs/gst/gl/meson.build: meson: gl: remove non-headers from gl_prototype_headers This made the meson build install those files, while they aren't installed with the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=796274 2018-05-20 14:38:37 +0100 Tim-Philipp Müller * meson.build: meson: use cdata.set_quoted() in more places 2018-05-20 14:27:18 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add 'nls' option to disable translations And enable by default. Was implicitly disabled because ENABLE_NLS was not defined. 2018-05-20 13:33:13 +0200 Christoph Reiter * gst-libs/gst/tag/meson.build: meson: install license-translations.dict and set LICENSE_TRANSLATIONS_PATH The autotools build installs the file and sets the LICENSE_TRANSLATIONS_PATH macro which licences.c uses as a fallback path. Do the same with meson. https://bugzilla.gnome.org/show_bug.cgi?id=796274 2018-05-20 13:35:52 +0200 Christoph Reiter * tools/meson.build: meson: install the man pages for the command line tools https://bugzilla.gnome.org/show_bug.cgi?id=796274 2018-04-28 20:22:31 -0400 ayaka * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add NV12_10LE40 pixel format This pixel format is a fully packed variant of NV12_10LE32, a luma pixel would take 10bits in memory, without any filled bits between pixels in a stride. The color range follows the BT.2020 standard. In order to get a better performance in hardware memory operation, it may expend the stride, append zero data at the end of echo lines. Pack function by Nicolas Dufresne. https://bugzilla.gnome.org/show_bug.cgi?id=795462 Signed-off-by: Nicolas Dufresne Signed-off-by: ayaka 2014-04-18 10:37:57 +0200 Antoine Jacoutot * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: libs: g-ir-scanner: do not hardcode libtool path https://bugzilla.gnome.org/show_bug.cgi?id=726571 2018-05-17 13:54:35 +0900 hoonhee.lee * gst/playback/gstplaybin3.c: playbin3: Collect appropriate stream-type when doing stream selection https://bugzilla.gnome.org/show_bug.cgi?id=796193 2018-04-23 13:30:38 -0400 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove custom get_next_time implementation GstAggregator now has the same thing in the simple implementation. https://bugzilla.gnome.org/show_bug.cgi?id=795486 2018-04-23 13:27:39 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Remove custom get_next_time implementation GstAggregator now offers same thing in a common implementation. https://bugzilla.gnome.org/show_bug.cgi?id=795486 2017-12-13 12:30:54 +0100 Georg Lippitsch * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Allow 24000/1001 frame rate https://bugzilla.gnome.org/show_bug.cgi?id=796107 2018-05-13 23:33:14 +0100 Tim-Philipp Müller * tests/examples/gl/Makefile.am: examples: gl: subdirs can be built independently in parallel 2018-05-13 23:31:22 +0100 Pierre Labastie * tests/examples/gl/sdl/Makefile.am: examples: gl: sdl: link to the right in-tree libgstvideo https://bugzilla.gnome.org/show_bug.cgi?id=796082 2018-05-12 17:19:50 +0100 Philippe Normand * gst/subparse/gstsubparse.c: subparse: follow-up build fix after d871b1205 2018-05-12 13:53:02 +0100 Philippe Normand * gst/subparse/gstsubparse.c: * tests/check/elements/subparse.c: subparse: support for more than 32 unclosed markup tags https://bugzilla.gnome.org/show_bug.cgi?id=796043 2018-05-12 10:05:38 +0800 Roland Jon * gst/playback/gstparsebin.c: parsebin: remove unused macro definitions https://bugzilla.gnome.org/show_bug.cgi?id=796039 2018-05-11 09:44:58 +0200 Edward Hervey * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: examples: Disable a specific warning gcc 8 checks more cases in the "parentheses" checks, and unfortunately upstream gtk headers fails with that warning. Make that warning non-fatal 2018-05-10 01:54:36 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: Do not modify structure of EOS event https://bugzilla.gnome.org/show_bug.cgi?id=795981 2018-05-10 01:33:55 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Do not modify structure of EOS event https://bugzilla.gnome.org/show_bug.cgi?id=795981 2018-05-09 10:39:23 +0900 Seungha Yang * gst/playback/gsturidecodebin3.c: uridecodebin3: Fix GList leak https://bugzilla.gnome.org/show_bug.cgi?id=795937 2018-05-08 23:44:38 +0900 Seungha Yang * gst/playback/gsturidecodebin3.c: uridecodebin3: Fix string leak uri and suburi should be free'd https://bugzilla.gnome.org/show_bug.cgi?id=795932 2018-05-07 17:53:32 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Set video-meta option on buffer pool configuration correctly CID 1435451 2018-05-07 09:17:16 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: First override set/get_property vfuncs, then install properties Gives assertions otherwise. 2016-02-02 18:19:30 +0200 Kyrylo Polezhaiev * gst-libs/gst/tag/gsttagdemux.c: tagdemux: avoid timestamp field initialisation for tag event This field is not used and will be removed in 2.0 API. https://bugzilla.gnome.org/show_bug.cgi?id=761462 2018-02-27 23:22:24 +1100 Jan Schmidt * ext/gl/gstglcolorbalance.c: glcolorbalance: Support OES textures for input/passthrough glcolorbalance is in the default GL path inside glimagesink, so has been causing an possibly-unnecessary extra texture copy on Android for a while now. If we're just doing passthrough, we can support OES directly. If not, they'll be transformed to 2D textures and colourbalanced. 2018-05-06 16:49:43 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Some more documentation fixes 2018-05-06 16:44:47 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: expose converter-config on convert pads This in order to allow users control over the conversion process, for example the scaling method. 2018-05-06 16:43:32 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix up documentation some more 2017-04-25 16:35:45 +0900 hoonhee.lee * gst/playback/gstdecodebin3.c: decodebin3: Re-order all streams and add to collection Sort all streams from parsebins by stream type and SELECT flag and stream-id. First video, then audio, then others. https://bugzilla.gnome.org/show_bug.cgi?id=775615 2018-05-06 16:22:01 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Clean up header and update docs a bit 2018-05-06 16:05:28 +0200 Sebastian Dröge * ext/gl/gstglstereomix.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Rename get_output_buffer() to create_output_buffer() For consistency with GstAudioAggregator. 2018-05-06 15:49:36 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Validate pool configuration and create a new pool if it just does not work Also pass the given allocator to the pool if one is set. 2018-05-06 15:21:24 +0200 Sebastian Dröge * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: * gst/compositor/compositorpad.h: videoaggregator: Switch to a GstVideoAggregatorConvertPad subclass This moves all the conversion related code to a single place, allows less code-duplication inside compositor and makes the glmixer code less awkward. It's also the same pattern as used by GstAudioAggregator. 2018-05-06 11:09:45 +0200 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: fix tap typefinder If we memcmp() 12 bytes we should make sure to get at least 12 bytes as well, and not just 8 bytes. Thanks oss-fuzz! 2018-05-06 18:51:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix negotiation for a non list video format in caps For a single format in the caps, we were returning some weird answers, like only RGB formats for a RGB input when we can also support YUV from RGB. Fixup of 3cfff727b19d450898dbe7931c53ea05bc2a9ac3 where I thought my previous (~6month) self had got this right. Don't trust your previous self people! 2018-05-05 18:02:16 +0200 Tim-Philipp Müller * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: tcp: fix markup for example pipelines in docs gtk-doc doesn't like the # it seems. https://bugzilla.gnome.org/show_bug.cgi?id=795548 2018-05-05 17:47:55 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Include string.h for memset() gstglmixer.c:143:5: error: implicit declaration of function ‘memset’ [-Werror=implicit-function-declaration] memset (prepared_frame, 0, sizeof (GstVideoFrame)); ^~~~~~ gstglmixer.c:143:5: error: incompatible implicit declaration of built-in function ‘memset’ [-Werror] 2013-11-16 16:13:00 +0000 Fabrizio Gennari * gst/typefind/gsttypefindfunctions.c: typefind: Add TAP and DMP files support https://bugzilla.gnome.org/show_bug.cgi?id=661137 2018-05-05 19:25:20 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: * meson.build: * meson_options.txt: * tests/check/meson.build: * tests/meson.build: meson: Update option names to omit disable_ and with- prefixes Also yield common options to the outer project (gst-build in our case) so that they don't have to be set manually and use array types for some options. 2018-05-05 11:29:05 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Update converters after updating with the new audioinfo/caps Otherwise subclasses might accidentially use the old audioinfo/caps. None of the subclasses currently uses the audioinfo/caps, but future subclasses might. https://bugzilla.gnome.org/show_bug.cgi?id=795827 2018-05-05 16:31:13 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Remove sink_non_alpha_caps class field This is only used for caching reasons and should never actually be in the public API. If this is ever a bottleneck later, caching around a class private struct could be implemented. 2018-05-05 16:14:14 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: Move needs_alpha pad field to the private struct And also trigger renegotiation if the value has changed. https://bugzilla.gnome.org/show_bug.cgi?id=795836 2018-05-05 15:49:17 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: Move aggregated_frame and the pad buffer into the private struct The aggregated_frame is now called prepared_frame and passed to the prepare_frame and cleanup_frame virtual methods directly. For the currently queued buffer there is a method on the video aggregator pad now. 2018-03-16 18:57:36 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl: allow for high resolution EAGLLayer's 2018-05-05 21:29:40 +1000 Matthew Waters * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglformat.c: * tests/check/meson.build: glformat: add test for formats 2018-05-05 21:21:13 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.h: glcolorconvert: add support for ARGB64 conversion 2018-05-05 21:03:25 +1000 Matthew Waters * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: gl/format: add a function to retrieve if a format is supported 2018-05-03 13:59:07 +1000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstgluploadelement.c: * ext/gl/gstgluploadelement.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: glbasefilter: expose finding the local GL context And use it to attempt to find the GL context sooner for upload and color conversion caps transformations. 2018-03-14 18:12:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: gl/memory: store the internal format as the texture format Instead of having special cases at each GL texture creation, upload, readback or copy for all non-8-bits-per-components. Simply store the more specific format and retrieve the generic component/type tuple from that. Introduce a helper function for retrieving the generic GL format (RGBA, RGB, RG, R, L, A) and type (BYTE, SHORT, SHORT_5_6_5) from a sized GL format enum (RGBA8, RGB565, RG8, etc). 2018-03-14 18:20:54 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: gl/memory/tests: split test into separate subtests Allows for more fine-grained notification of failures 2018-03-05 17:58:11 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglalpha.c: * ext/gl/gstglalpha.h: * ext/gl/gstopengl.c: * ext/gl/meson.build: gl: add glalpha element that is similar to the alpha element It performs similarly to the existing alpha element however performs calculations in floating point rather than with small (guint8) integers so some differences are to be expected. https://bugzilla.gnome.org/show_bug.cgi?id=794070 2018-05-05 12:16:35 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Move frame/texture mapping/unmapping into prepare/clean_frame Previously we assumed that the texture ID is going to be valid even after unmapping the frame, as it was immediately unmapped before even being used. Now we only unmap once we're done with the texture. 2018-05-04 10:35:36 +0200 Edward Hervey * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-converter.c: video: Silence "restrict" issues with ORC code The problem is that even though the functions we are calling are in-place transformation, orc automatically puts the restrict keyword on all arguments. To silence that warning just create yet-another variable containing the same value. https://bugzilla.gnome.org/show_bug.cgi?id=795765 2018-05-04 17:18:12 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Move property storage to private pad struct 2018-05-04 16:46:00 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * tests/check/elements/compositor.c: videoaggregator: Rename ignore-eos pad property to repeat-after-eos What it does is to repeat the last frame forever after EOS, it does not literally ignore EOS. 2018-05-04 16:13:16 +0200 Sebastian Dröge * ext/gl/gstglmosaic.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: videoaggregator: Move GstChildProxy implementations into leaf classes Not every subclass will want to expose the pads via the interface. https://bugzilla.gnome.org/show_bug.cgi?id=739011 2018-05-04 14:53:21 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Get rid of separate header for the aggregator pad 2018-05-04 13:36:36 +0200 Olivier Crête * COPYING: * COPYING.LIB: * Makefile.am: COPYING: Put LGPLv2 in there There is no GPLv2 code in this repo. https://bugzilla.gnome.org/show_bug.cgi?id=674852 2018-05-02 18:39:31 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: appsink: Handle unlock in drain query handling too And also handle flushing, we might otherwise wait here forever when flushing too. 2018-05-02 18:35:23 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: appsink: Make sure to also handle unlock when waiting for EOS to be handled Otherwise shutting down during EOS waiting will cause a deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=795551 2018-05-02 18:11:58 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: appsrc/sink: Fix optimization for only signalling waiters if someone is actually waiting It is possible that both application and the stream are waiting currently, if for example the following happens: 1) app is waiting because no buffer in appsink 2) appsink providing a buffer and waking up app 3) appsink getting another buffer and waiting because it's full now 4) app thread getting back control Previously step 4 would overwrite that the appsink is currently waiting, so it would never be signalled again. https://bugzilla.gnome.org/show_bug.cgi?id=795551 2018-04-30 17:17:22 +0200 Thibault Saunier * gst-libs/gst/pbutils/descriptions.c: pbutils: Avoid assertion describing raw audio caps without format We used to get: gst_audio_format_from_string: assertion 'format != NULL' failed 2018-04-23 16:50:26 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Fix deserialization of a single profile Instead of trying to guess what profile to build, just get the possible elements to use with the specified caps and determine the EncodingProfile from it. https://bugzilla.gnome.org/show_bug.cgi?id=795490 2018-04-22 10:49:29 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Also lock input caps when dynamic output is disabled With the way caps negotiation work in encoders, the only way to ensure that no downstream renegotiation is done in the encoder is to also lock upstream caps. Anyway with the current behavior upstream of encoders *require* to handle any file format so locking upstream format should be safe. https://bugzilla.gnome.org/show_bug.cgi?id=795464 2018-04-30 19:49:20 +0900 Seungha Yang * gst-libs/gst/tag/gsttagmux.c: tagmux: Reset final tags for reusing element If the output tag had been exposed, it never ever updated even if we reset the tagmux using state change. https://bugzilla.gnome.org/show_bug.cgi?id=795691 2018-04-25 09:28:53 +0900 hoonhee.lee * gst/playback/gsturidecodebin3.c: uridecodebin3: don't segfault if a pad is not a source pad when it is removed Ignore to handling a pad of decodebin3 which doesn't have corresponding output when it is removed. https://bugzilla.gnome.org/show_bug.cgi?id=795529 2018-04-20 12:30:22 +0200 Michael Olbrich * tests/check/libs/videodecoder.c: videodecoder: add test for event order When frames are dropped or reordered then the serialized events are collected and pushed with the next frame. This test verifies that the order is preserved. https://bugzilla.gnome.org/show_bug.cgi?id=794192 2018-03-08 11:28:58 +0100 Matthias Fend * gst-libs/gst/video/gstvideodecoder.c: videodecoder: keep event order Since events are pushed out in reverse order, newer events need to be added at the front of event lists https://bugzilla.gnome.org/show_bug.cgi?id=794192 2018-03-30 15:41:15 +0900 Hyunjun Ko * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstdmabuf.h: dmabufallocator: adds gst_dmabuf_allocator_alloc_with_flags If we can guarantee the lifetime of the fd is longer than the memory, we can use DONT_CLOSE flag not to close when release. But it's not provided in gstdmabuf yet while gstfdmemory does. For example, in case of using VA-API or MSDK, we would need this api. Otherwise we should call dup to duplicate the fd. https://bugzilla.gnome.org/show_bug.cgi?id=794829 2018-04-26 13:01:05 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: viv-fb: export viv-fb display api qmlgl plugin will use this api https://bugzilla.gnome.org/show_bug.cgi?id=795562 2018-04-24 13:48:53 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/Makefile.am: viv-fb: install gstgldisplay_viv_fb.h into build result gstgldisplay_viv_fb.h is need by qmlgl plugin in gst-good package https://bugzilla.gnome.org/show_bug.cgi?id=795499 2018-04-25 11:26:17 +0100 Tim-Philipp Müller * gst/app/meson.build: meson: fix copy'n'paste-o in app plugin build description 2018-04-24 14:05:30 -0400 Xavier Claessens * gst/compositor/meson.build: Meson: Generate pc file for all plugins in bad https://bugzilla.gnome.org/show_bug.cgi?id=794568 2018-04-24 14:05:57 -0400 Xavier Claessens * ext/alsa/meson.build: * ext/cdparanoia/meson.build: * ext/gl/meson.build: * ext/libvisual/meson.build: * ext/ogg/meson.build: * ext/opus/meson.build: * ext/pango/meson.build: * ext/theora/meson.build: * ext/vorbis/meson.build: * gst/adder/meson.build: * gst/app/meson.build: * gst/audioconvert/meson.build: * gst/audiomixer/meson.build: * gst/audiorate/meson.build: * gst/audioresample/meson.build: * gst/audiotestsrc/meson.build: * gst/encoding/meson.build: * gst/gio/meson.build: * gst/pbtypes/meson.build: * gst/playback/meson.build: * gst/rawparse/meson.build: * gst/subparse/meson.build: * gst/tcp/meson.build: * gst/typefind/meson.build: * gst/videoconvert/meson.build: * gst/videorate/meson.build: * gst/videoscale/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: * sys/ximage/meson.build: * sys/xvimage/meson.build: Meson: Generate pc file for all plugins in base https://bugzilla.gnome.org/show_bug.cgi?id=794568 2018-04-25 10:57:48 +0100 Tim-Philipp Müller * meson.build: meson: use -Wl,-Bsymbolic-functions where supported Just like the autotools build. 2018-04-25 01:33:43 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Let ARC clean up our dispatch queue if ARC is used, and otherwise do it manually Also don't use __bridge casts if ARC is not used, as is the case on 32 bit systems. 2018-04-25 01:08:58 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Use NSRect instead of CGRect On 64 bit systems they're typedefs of each other but on 32 bit systems not, and we pass the rect to an API that expects a NSRect 2018-04-24 17:05:17 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: Revert "video: Add NV12_10LE40 pixel format" This reverts commit 35d0783fca504997e1be30cfebfa8de042ea49ab. 2017-03-26 04:54:42 +0800 ayaka * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add NV12_10LE40 pixel format This pixel format is a fully packed variant of NV12, a luma pixel would take 10bits in memory, without any filled bits between pixels in a stride. The color range follows the BT.2020 standard. In order to get a performance in hardware memory operation, it may expend the stride, append zero data at the end of echo lines. Signed-off-by: ayaka https://bugzilla.gnome.org/show_bug.cgi?id=795462 2018-04-20 21:54:23 +0200 Mark Nauwelaerts * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglupload.c: gl: fix some GIR annotations Mostly related to out and array parameters 2018-04-20 21:53:17 +0200 Mark Nauwelaerts * gst-libs/gst/pbutils/codec-utils.c: pbutils: fix some GIR annotations Mostly related to out and array parameters 2018-04-20 21:53:16 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-anc.c: * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-event.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/videoorientation.c: video: fix some GIR annotations Mostly related to out and array parameters 2018-04-20 21:53:16 +0200 Mark Nauwelaerts * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioringbuffer.c: audio: fix some GIR annotations Mostly related to out and array parameters 2018-04-20 21:53:15 +0200 Mark Nauwelaerts * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: fix some GIR annotations Mostly related to out and array parameters. 2018-04-20 21:53:10 +0200 Mark Nauwelaerts * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtphdrext.c: rtp: fix some GIR annotations Mostly related to out and array parameters. 2018-04-23 16:32:41 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix filtered getcaps In the situation described in https://bugzilla.gnome.org/show_bug.cgi?id=795397, downstream_caps consists of two structures, the first with the preferred rate, if at all possible (44100), the second containing the full range of allowed rates, as audioresample correctly tries to negotiate passthrough caps. As audioaggregator cannot perform rate conversion, it wants to return a fixated rate in its getcaps implementation, however it previously directly used the first structure in the caps allowed downstream, without taking the filter into consideration, to determine the rate to fixate to. With this, we first intersect our downstream caps with the filter, in order not to fixate to an unsupported rate. 2018-04-23 12:23:41 +0200 Zeeshan Ali * tests/check/libs/videodecoder.c: tests: videodecoder: Fix a minor c&p mistake This completes what commit 0de0f3b2c should have already done. :) https://bugzilla.gnome.org/show_bug.cgi?id=795483 2018-04-23 12:23:41 +0200 Zeeshan Ali * tests/check/libs/videodecoder.c: tests: videodecoder: Fix a minor c&p mistake https://bugzilla.gnome.org/show_bug.cgi?id=795483 2018-04-21 01:00:28 -0300 Thibault Saunier * gst-libs/gst/video/video-frame.c: video: Safe guard info->finfo when mapping a frame Not sure how that slept through but that case is possible and leads to segfaults in any code path of the function right now. https://bugzilla.gnome.org/show_bug.cgi?id=795436 2018-04-20 11:04:44 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Handle escaped '\:' in caps describing profiles Otherwise it won't be possible to specify some profiles such as video/x-h264,profile=(string)high-4:4:4 With this patch, we can do video/x-h264,profile=(string)high-4\:4\:4 2018-04-20 11:42:16 +0100 Tim-Philipp Müller * ext/gl/meson.build: * gst-libs/gst/gl/meson.build: meson: gl: fix 'invalid keyword argument' meson warnings Required is not a valid kwarg for cc.has_header() 2018-04-06 20:02:13 +0200 Mathieu Duponchelle * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: condition the sending of gap events The default implementation for packet loss handling previously always sent a gap event. While this is correct as long as we know the packet that was lost was actually a media packet, with ULPFEC this becomes a bit more complicated, as we do not know whether the packet that was lost was a FEC packet, in which case it is better to not actually send any gap events in the default implementation. Some payloaders can be more clever about, for example VP8 can use the picture-id, and the M and S bits to determine whether the missing packet was inside an encoded frame or outside, and thus whether if it was a media packet or a FEC packet, which is why ulpfecdec still lets these lost events go through, though stripping them of their seqnum, and appending a new "might-have-been-fec" field to them. This is all a bit terrible, but necessary to have ULPFEC integrate properly with the rest of our RTP stack. https://bugzilla.gnome.org/show_bug.cgi?id=794909 2018-04-11 00:57:43 +0200 Mathieu Duponchelle * gst-libs/gst/app/gstappsink.c: * tests/check/elements/appsink.c: appsink: Reuse sample object in pull_sample if possible Simple optimization to reduce memory allocations. https://bugzilla.gnome.org/show_bug.cgi?id=795145 2018-04-18 16:06:07 -0300 Thibault Saunier * gst/playback/gstparsebin.c: parsebin: Post STREAM_COLLECTION on EVENT_STREAM_COLLECTION Otherwise decodebin won't get notified about STREAM_COLLECTION comming from the sources and thus will never get informored about it. Without being informed about the stream collection decodebin won't be able to select any streams. It ends up not creating any output for the streams defined from outside parserbin. https://bugzilla.gnome.org/show_bug.cgi?id=795364 2018-04-18 10:28:42 -0400 Omar Akkila * gst-libs/gst/gl/egl/gsteglimage.c: egl: fix build when using RPi EGL https://bugzilla.gnome.org/show_bug.cgi?id=795336 2018-04-18 17:22:45 +0200 Mathieu Duponchelle * meson.build: * tests/examples/meson.build: meson: move some dependency checks to the top level The newly-added build definitions for test/icles relied on dependencies that were only defined when the examples are enabled, thus breaking meson build -Ddisable_examples=true 2018-04-16 17:04:06 +0200 Edward Hervey * gst-libs/gst/video/video-anc.c: video: Don't corrupt caption GstMeta the meta initialization function is provided *after* the base implementation fields have been set so do *NOT* reset them otherwise it would result in corrupted GstMeta. Instead explicitely set our fields to the default values we actually want. 2018-04-16 10:52:51 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From f0c2dc9 to ed78bee 2018-04-16 11:10:45 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/meson.build: gl: Define default value for GST_GL_HAVE_WINDOW_GBM Thus, silent compiler's warning: "GST_GL_HAVE_WINDOW_GBM" is not defined, evaluates to 0 [-Wundef] 2018-04-13 20:18:56 +0200 Mark Nauwelaerts * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/tags.c: tag: fix some GIR annotations Mostly related to out and array parameters. 2018-04-13 01:23:38 +0100 Tim-Philipp Müller * tests/check/gst-plugins-base.supp: tests: make getaddrinfo suppression more generic So it works for me on debian sid. 2018-04-13 01:05:23 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind supps: ignore leaks where pango is the first frame 2018-04-13 01:02:27 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind supps: ignore intentional leak in GL test 2018-04-12 22:34:22 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind supps: conditional moves in nvidia-glcore Not much we can do here 2018-04-12 22:33:27 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind supps: getaddrinfo leaks when resolving addresses https://lists.debian.org/debian-glibc/2016/03/msg00243.html 2018-04-12 22:24:26 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: unref converted buffer after gst_buffer_replace 2018-04-12 22:23:50 +0200 Mathieu Duponchelle * ext/alsa/gstalsamidisrc.c: alsamidisrc: unref buffer_list before early return 2018-04-12 21:49:40 +0200 Mathieu Duponchelle * tests/check/elements/audiomixer.c: tests/audiomixer: fix caps leak 2018-04-12 20:15:01 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind supps: ignore bash leaks gst_install_plugins_* can instantiate bash 2018-04-10 09:31:32 -0300 Thibault Saunier * gst/playback/gsturisourcebin.c: urisourcebin: Avoid unreffing a pad we are not owning expose_output_pad takes ownership of the pad. 2018-04-12 19:33:18 +0200 Mathieu Duponchelle * gst/playback/gsturidecodebin3.c: uridecodebin3: free_play_items when READY_TO_PAUSED failed. We will never go through the PAUSED_TO_READY transition if that is the case, and thus never free the play items. 2018-04-12 18:12:49 +0100 Tim-Philipp Müller * gst/playback/gstplaybin3.c: playbin3: fix leak of recursive mutex 2018-04-12 18:50:35 +0200 Mathieu Duponchelle * tests/check/generic/states.c: * tests/check/gst-plugins-base.supp: valgrind suppressions: ignore XInitThreads leaks As we load that symbol dynamically, valgrind gets confused when it leaks and reports the leak against an unrelated library and an unknown (??) symbol. To address that, put the loading and calling of that symbol in a separate function, and ignore any malloc leak happening in that function. 2018-04-12 18:44:12 +0200 Mathieu Duponchelle * tests/check/gst-plugins-base.supp: valgrind supps: ignore leak in XextCreateExtension Searching for that specific function in other suppression files on the Internet shows a few projects ignoring it eg: https://github.com/XCSoar/XCSoar/blob/master/valgrind.suppressions 2018-04-11 22:56:34 +0200 Mathieu Duponchelle * ext/vorbis/gstvorbisenc.c: vorbisenc: do not map input buffer in WRITE mode 2018-04-12 15:02:51 +0200 Mathieu Duponchelle * tests/icles/meson.build: * tests/meson.build: meson: port tests/icles https://bugzilla.gnome.org/show_bug.cgi?id=795198 2018-04-11 21:40:23 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: Only fixate pixel-aspect-ratio if the field exists It's optional. 2018-04-11 12:18:55 +0300 Vivia Nikolaidou * gst-libs/gst/app/gstappsrc.c: appsrc: Documentation fix in gst_app_src_push_sample_internal Make it clear that it doesn't take ownership of the sample. https://bugzilla.gnome.org/show_bug.cgi?id=795150 2018-04-10 21:18:11 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: Fixate pixel-aspect-ratio to the closest value to 1/1 2018-03-12 10:53:05 +0100 Edward Hervey * gst/playback/gstparsebin.c: * gst/playback/gstrawcaps.h: * gst/playback/gstsubtitleoverlay.c: playback: Add support for CEA 608/708 CC overlay elements https://bugzilla.gnome.org/show_bug.cgi?id=794901 2018-02-15 13:59:56 +0100 Edward Hervey video: Add support for VANC and Closed Caption This commits add common elements for Ancillary Data and Closed Caption support in GStreamer: * A VBI (Video Blanking Interval) parser that supports detection and extraction of Ancillary data according to the SMPTE S291M specification. Currently supports the v210 and UYVY video formats. * A new GstMeta for Closed Caption : GstVideoCaptionMeta. This supports the two types of CC : CEA-608 and CEA-708, along with the 4 different ways they can be transported (other systems are super-set of those). https://bugzilla.gnome.org/show_bug.cgi?id=794901 2018-01-31 15:09:36 +0100 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add Closed Caption caps description https://bugzilla.gnome.org/show_bug.cgi?id=794901 2018-04-09 17:24:30 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: posting errors should be always be safe Don't try to signal an error in the ringbuffer if it hasn't been allocated yet. https://bugzilla.gnome.org/show_bug.cgi?id=794611 2018-04-07 11:07:45 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Don't spam INFO for every buffer This makes GST_DEBUG=4 outputs too spammy, and such frequent messages are meant to go into DEBUG or TRACE anyway. 2018-04-05 16:41:57 +0200 Zeeshan Ali * tests/check/meson.build: tests: Enable tests for videodecoder The tests pass fine here so don't see any reason to keep them disabled. https://bugzilla.gnome.org/show_bug.cgi?id=795005 2018-04-04 19:30:55 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Always respect encoding profile preset factory name And fail if it is not present. 2018-03-24 15:51:20 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Inform about missing elements in the "text" error field Instead of the debug field, that information should be directly exposed to end users. https://bugzilla.gnome.org/show_bug.cgi?id=794663 2018-04-02 15:08:48 +0200 Edward Hervey * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/video.c: video: Fix/Add section documentation 2018-04-02 08:45:04 +0200 Edward Hervey docs/libs: The big spring cleanup * Explicitely specify which headers aren't to be included in gtkdoc-scan This is essentially all the headers that are not installed and only for internal/local usage. This also includes the orc-generated headers. * Remove all symbols/sections that are no longer present (due to accurately scanning only the headers we need). * Add or expose sections which weren't previously exposed * Make sure the "unified" library headers (ex: gst/video/video.h) are used everywhere applicable. Only use the specific headers where applicable (such as the GL-implementation-specific objects) * Add all documentation which was not previously exposed in the right sections * Update 'types' file to get as many runtime information as possible This brings down the number of unused symbols to 15 (from over 300). 2018-04-02 08:34:58 +0200 Edward Hervey * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiostreamalign.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/pbutils/gstaudiovisualizer.h: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpdefs.h: * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-multiview.c: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-tile.c: * gst-libs/gst/video/videooverlay.h: libs: Documentation cleanup * Fix wrong naming, wrong types and typos * Add missing sections * Add missing documentation for entries * Explicitely mark private structure entries * Remove items that never existed 2018-04-02 08:43:17 +0200 Edward Hervey * tests/check/libs/discoverer.c: * tools/gst-discoverer.c: tools: Fix discoverer deprecation The only information provided by "misc" was the missing plugins which is already handled with another API 2018-04-02 08:42:01 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: libs: Add deprecation guard Those functions have been marked as deprecated 2018-04-02 08:33:58 +0200 Edward Hervey * tests/check/libs/struct_i386_osx.h: check: Remove old structures from ABI check Just in case someone still tries to run it on 32bit osx 2017-04-28 15:24:43 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: In reverse playback mode, don't output the first buffer with ts=segment.stop Instead go backwards before segment.stop based on the framerate or the next buffers end timestamp. Otherwise the first buffer will usually be dropped because outside the segment. https://bugzilla.gnome.org/show_bug.cgi?id=781899 2018-03-27 10:43:16 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: gl: pick up GstVideo-1.0.gir from local build dir https://bugzilla.gnome.org/show_bug.cgi?id=794708 2018-03-22 11:12:20 +0100 Antonio Ospite * tools/gst-play-kb.c: tools: play: fix leaving STDIN in non-blocking mode after exit gst-play-1.0 sets STDIN to non-blocking mode to have the input characters read as soon as they arrive. However, when gst_play_kb_set_key_handler() gets called from restore_terminal() it forgets to restore the STDIN blocking status. This can result in broken behavior for cli command executed in the same terminal after gst-play-1.0 exited. It turns out that putting STDIN in non-blocking mode is not even the proper way to achieve the desired effect, instead VMIN and VTIME in struct termios should be set to 0. Let's do that, and don't mess with the STDIN blocking mode now that it's not necessary. https://bugzilla.gnome.org/show_bug.cgi?id=794591 2018-03-18 11:15:55 -0700 Thiago Santos * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: fix gi annotation for gst_encoding_profile_find 2018-03-25 12:48:12 +0300 Sebastian Dröge * ext/gl/Makefile.am: gl: Disable glmixerbin for the time being too Otherwise we have one copy in gst-plugins-bad and one (unused) here, which makes static linking unhappy. 2018-03-24 21:35:07 +0900 Seungha Yang * gst/encoding/gstencodebin.c: encodebin: Use gst_object_unref() instead of g_object_unref() ... for better debugging (e.g., tracing refcount) https://bugzilla.gnome.org/show_bug.cgi?id=794654 2018-03-23 14:24:38 +0100 Edward Hervey * gst-libs/gst/audio/gstaudioaggregator.c: audio-aggregator: Check return values And copy over already-parsed information CID #1427140 2017-07-20 14:15:30 +1000 Alessandro Decina * Makefile.am: * gst-libs/gst/app/app_mkenum.py: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/audio_mkenum.py: * gst-libs/gst/audio/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/pbutils/pbutils_mkenum.py: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtp/rtp_mkenum.py: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/rtsp/rtsp_mkenum.py: * gst-libs/gst/tag/meson.build: * gst-libs/gst/tag/tag_mkenum.py: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video_mkenum.py: * meson.build: meson: libs: use gnome.mkenums_simple() to generate enumtypes files This way we no longer need custom wrapper scripts or template files. 2018-03-04 16:41:14 +0100 Carlos Rafael Giani * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: gl/gbm: Initialize window handle (= gbm surface) like other window systems https://bugzilla.gnome.org/show_bug.cgi?id=793997 2018-03-22 07:56:28 +0100 Carlos Rafael Giani * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: viv-fb: Include gstglfuncs.h to fix cross compilation errors https://bugzilla.gnome.org/show_bug.cgi?id=794589 2018-03-21 18:15:49 -0400 Nicolas Dufresne * gst-libs/gst/allocators/gstdmabuf.c: dmabufallocator: Fix build if LINUX_DMA_BUF_H is missing 2018-03-09 21:24:52 -0500 Nicolas Dufresne * configure.ac: * gst-libs/gst/allocators/gstdmabuf.c: * meson.build: allocators: Add DMABuf synchronization When doing CPU Access, some architecture may require caches to be synchronize before use. Otherwise, some visual artifact may be visible, as the CPU modification may still resides in cache. https://bugzilla.gnome.org/show_bug.cgi?id=794216 2018-03-21 10:27:04 +0200 Sebastian Dröge * gst-libs/gst/video/video-tile.h: video: Set correct value in g-i annotations for tile related mask constants 2018-03-21 10:25:43 +0200 Sebastian Dröge * gst-libs/gst/video/video.h: video: Include gstvideoaffinetransformationmeta.h in video.h 2018-03-21 10:21:41 +0200 Sebastian Dröge * gst-libs/gst/pbutils/pbutils.h: pbutils: Include gstaudiovisualizer.h in pbutils.h 2018-03-20 09:15:37 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * meson.build: Back to development === release 1.14.0 === 2018-03-19 20:15:02 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.14.0 2018-03-19 20:15:02 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2018-03-17 06:33:38 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: protect against out-of-bounds read We need at least 17 bytes of data for a valid flac header oss-fuzz #6974 2018-03-16 09:28:44 +0000 Tim-Philipp Müller * tests/check/elements/audiomixer.c: tests: audiomixer: remove unistd.h include Not needed and breaks the build with MVSC. 2018-03-15 09:58:11 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiostreamalign.h: audiostreamalign: Mark the whole type as new in 1.14 2018-03-13 23:09:58 +0200 Sebastian Dröge * configure.ac: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: * pkgconfig/gstreamer-video.pc.in: * pkgconfig/meson.build: pkg-config: Add orc-0.4 to Requires.private of gstreamer-audio and gstreamer-video https://bugzilla.gnome.org/show_bug.cgi?id=794307 === release 1.13.91 === 2018-03-13 19:13:18 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.13.91 2018-03-13 19:13:18 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2018-03-13 13:49:42 +0000 Tim-Philipp Müller * gst-libs/gst/audio/meson.build: meson: install new audio-prelude.h 2018-03-13 13:07:52 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: video: GST_EXPORT -> GST_URI_VIDEO_BAD_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:56:59 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: * docs/libs/meson.build: docs: update api decorators to ignore 2018-03-13 11:48:31 +0000 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/colorbalance.h: * gst-libs/gst/video/colorbalancechannel.h: * gst-libs/gst/video/gstvideoaffinetransformationmeta.h: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/gstvideotimecode.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/navigation.h: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/video-chroma.h: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-dither.h: * gst-libs/gst/video/video-event.h: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-multiview.h: * gst-libs/gst/video/video-overlay-composition.h: * gst-libs/gst/video/video-prelude.h: * gst-libs/gst/video/video-resampler.h: * gst-libs/gst/video/video-scaler.h: * gst-libs/gst/video/video-tile.h: * gst-libs/gst/video/video.h: * gst-libs/gst/video/video_mkenum.py: * gst-libs/gst/video/videodirection.h: * gst-libs/gst/video/videoorientation.h: * gst-libs/gst/video/videooverlay.h: video: GST_EXPORT -> GST_VIDEO_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:32:02 +0000 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gsttagmux.h: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/meson.build: * gst-libs/gst/tag/tag-prelude.h: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tag_mkenum.py: * gst-libs/gst/tag/xmpwriter.h: tag: GST_EXPORT -> GST_TAG_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:27:11 +0000 Tim-Philipp Müller * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.h: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/sdp/sdp-prelude.h: * gst-libs/gst/sdp/sdp.h: sdp: GST_EXPORT -> GST_SDP_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:23:21 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.h: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/rtsp/rtsp-prelude.h: * gst-libs/gst/rtsp/rtsp.h: * gst-libs/gst/rtsp/rtsp_mkenum.py: rtsp: GST_EXPORT -> GST_RTSP_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:17:58 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/rtp/gstrtpdefs.h: * gst-libs/gst/rtp/gstrtphdrext.h: * gst-libs/gst/rtp/gstrtppayloads.h: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtp/rtp-prelude.h: * gst-libs/gst/rtp/rtp_mkenum.py: rtp: GST_EXPORT -> GST_RTP_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:13:08 +0000 Tim-Philipp Müller * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/meson.build: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.h: * gst-libs/gst/riff/riff-prelude.h: * gst-libs/gst/riff/riff-read.h: * gst-libs/gst/riff/riff.h: riff: GST_EXPORT -> GST_RIFF_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 11:08:34 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/codec-utils.h: * gst-libs/gst/pbutils/descriptions.h: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstaudiovisualizer.h: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/pbutils/missing-plugins.h: * gst-libs/gst/pbutils/pbutils-prelude.h: * gst-libs/gst/pbutils/pbutils.h: * gst-libs/gst/pbutils/pbutils_mkenum.py: pbutils: GST_EXPORT -> GST_PBUTILS_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 10:57:15 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gl-prelude.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: gl: GST_EXPORT -> GST_GL_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 10:43:20 +0000 Tim-Philipp Müller * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/fft-prelude.h: * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.h: * gst-libs/gst/fft/meson.build: fft: GST_EXPORT -> GST_FFT_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 10:36:56 +0000 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-channel-mixer.h: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/audio-prelude.h: * gst-libs/gst/audio/audio-quantize.h: * gst-libs/gst/audio/audio-resampler.h: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/audio_mkenum.py: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioiec61937.h: * gst-libs/gst/audio/gstaudiometa.h: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/gstaudiostreamalign.h: * gst-libs/gst/audio/streamvolume.h: audio: GST_EXPORT -> GST_AUDIO_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 10:28:21 +0000 Tim-Philipp Müller * common: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/app-prelude.h: * gst-libs/gst/app/app_mkenum.py: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/app/meson.build: app: GST_EXPORT -> GST_APP_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 10:19:16 +0000 Tim-Philipp Müller * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/allocators-prelude.h: * gst-libs/gst/allocators/allocators.h: * gst-libs/gst/allocators/gstdmabuf.h: * gst-libs/gst/allocators/gstfdmemory.h: * gst-libs/gst/allocators/gstphysmemory.h: * gst-libs/gst/allocators/meson.build: allocators: GST_EXPORT -> GST_ALLOCATORS_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-12 16:23:02 +0100 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix channel-mask negotiation When outputting more than two channels, a channel-mask has to be specified in the output caps. We follow the same heuristic as other cases, when downstream does not specify a channel-mask, we use that of the first configured pad, and if there was none we generate a fallback mask. https://bugzilla.gnome.org/show_bug.cgi?id=794257 2018-03-12 13:38:07 +0100 Edward Hervey * gst/playback/gsturidecodebin3.c: playback: Remove subtitle-encoding property on uridecodebin3 For now, until we found a more future-proof solution 2018-03-11 22:57:02 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: docs: video: fix typo and add since marker 2018-03-11 22:45:32 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: libs: add another missing symbol 2018-03-11 19:06:45 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: add video region of interest add/get parameter api to docs 2018-03-11 12:13:32 -0300 Thibault Saunier * gst-libs/gst/audio/audio.h: audio: Add audioaggregator.h in audio.h 2018-03-08 01:01:53 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstphysmemory.c: docs: add GstPhysMemoryAllocator to docs 2018-03-07 18:50:05 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: Revert "alsasrc: lock calls to snd_pcm_delay() with mutex as in alsasink" This reverts commit 4f88125b3ddc15367d528e850cc27739f5bb27fa. This seems to have undesirable side-effects and needs more investigation first. https://bugzilla.gnome.org/show_bug.cgi?id=746015 2018-03-05 19:57:55 +0000 Tim-Philipp Müller * configure.ac: * m4/gst-gl.m4: gl: only enable gbm backend if gudev is available gudev/gudev.h is included unconditionally, so only enable the gbm backend if gudev was actually found. This also matches the meson build behaviour. Should fix build on GNOME SDK builder. === release 1.13.90 === 2018-03-03 22:07:15 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.13.90 2018-03-03 22:07:15 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2018-03-02 15:21:25 +0100 Edward Hervey * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-tag.pc.in: pkgconfig: Add private zlib dependency for libgsttag Fixes issues with static application builds (which might not know they need to link with zlib when using a libgsttag that was compiled with it). https://bugzilla.gnome.org/show_bug.cgi?id=793989 2018-03-01 18:07:37 +0100 Mathieu Duponchelle * meson.build: meson: enable more warnings https://bugzilla.gnome.org/show_bug.cgi?id=793960 2018-02-28 23:12:39 -0500 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Reset QoS time after pushing segment This fixes playbin gapless playback. An ancient QoS time was used and would lead to all frames being dropped. https://bugzilla.gnome.org/show_bug.cgi?id=668995 2018-03-01 00:34:40 +0100 Mathieu Duponchelle * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: Port to latest GstAggregator segment API The aggregator segment is now exposed on the src pad https://bugzilla.gnome.org/show_bug.cgi?id=793946 2018-03-01 00:34:06 +0100 Mathieu Duponchelle * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * gst-libs/gst/audio/gstaudioaggregator.c: Port to latest GstAggregator segment API The aggregator segment is now exposed on the src pad https://bugzilla.gnome.org/show_bug.cgi?id=793944 2018-02-28 22:12:57 +0100 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: audioaggregator: remove GstAudioAggregator->info As we now require subclasses to use a subclass of GstAudioAggregatorPad, we can reuse its info field https://bugzilla.gnome.org/show_bug.cgi?id=793943 2018-03-01 12:43:25 +0000 Tim-Philipp Müller * tests/check/libs/tag.c: tests: tags: add unit test for ID3 v2.4 extended headers https://bugzilla.gnome.org/show_bug.cgi?id=792983 2018-02-12 16:26:01 +0100 Edward Hervey * gst-libs/gst/tag/id3v2.c: id3v2: re-fix handling of v2.4 extended headers The various id3v2 specs handle the extended header sizes differently (because hey, it wouldn't be fun otherwise). http://id3.org/id3v2.3.0 states: "Where the 'Extended header size', currently 6 or 10 bytes, excludes itself." http://id3.org/id3v2.4.0-structure states: Extended header size 4 * %0xxxxxxx Number of flag bytes $01 Extended Flags $xx Where the 'Extended header size' is the size of the whole extended header, stored as a 32 bit synchsafe integer. An extended header can thus never have a size of fewer than six bytes. So in id3v2.4.0 it's the *whole* extended header size (a-la ISOBMFF atom), whereas in id3v2.3.0 it's the extended header size *excluding* those 4 initial bytes. And for other versions, god knows.. Fixes regression introduced in commit da607005. https://bugzilla.gnome.org/show_bug.cgi?id=792983 2018-02-28 18:13:10 +0100 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * tests/check/elements/audiomixer.c: audioaggregator: refactor conversion API For the rationale, see: https://bugzilla.gnome.org/show_bug.cgi?id=793917 Also test audiomixer conversion of current output buffer 2018-02-27 23:34:03 +1100 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix a typo in a debug message 2018-02-27 18:28:16 +1100 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Support non-2D texture targets Allow for sub-classes to change pad templates to support other texture targets, and bind input textures accordingly. When setting the caps, also store the texture target. By default, glfilter only reports 2D texture targets in the default caps, but sub-classes can change that and it would be nice if they could easily find out which texture targets were negotiated. This adds 2 fields to the public struct, but since it's unreleased -base API, it's not an ABI break. 2018-02-28 15:22:38 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.h: audioaggregator: Document that the pad's audio info is read-only and needs the object lock Also fix indentation in the header a bit. 2018-02-27 14:07:33 -0600 Víctor Manuel Jáquez Leal * m4/gst-gl.m4: m4: fix variable value access 2018-02-27 09:48:23 -0600 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideometa.c: roi-meta: duplicate params when copying meta When copying the meta the params list should be copy too into the new meta. https://bugzilla.gnome.org/show_bug.cgi?id=793883 2018-02-27 13:14:26 -0500 Nicolas Dufresne * gst-libs/gst/gl/meson.build: meson: Don't install GL GBM headers 2018-02-27 13:12:59 -0500 Nicolas Dufresne * configure.ac: * gst-libs/gst/gl/Makefile.am: * m4/gst-gl.m4: gl: Move DRM_CFLAGS into gst-gl.m4 2018-02-26 07:46:26 -0500 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: gl: Add missing gbm directory to dist dir This fixes make distcheck 2018-02-25 14:16:44 +0100 Carlos Rafael Giani * gst-libs/gst/gl/Makefile.am: gl: Add DRM cflags This prevents cross compilation errors like: usr/include/xf86drm.h:40:10: fatal error: drm.h: No such file or directory These are caused because gstgldisplay_gbm.h includes xf86drm.h . https://bugzilla.gnome.org/show_bug.cgi?id=793837 2018-02-26 11:55:46 +0200 Sebastian Dröge * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/pbutils.c: pbutils: Fix compilation of last commit 2018-02-25 10:52:46 -0800 Thiago Santos * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/pbutils-private.h: * gst-libs/gst/pbutils/pbutils.c: pbutils: Move locale dir initialization to a separate function and do lazy initialization It is the only thing gst_pb_utils_init() does and it could be automatically called from the places in pbutils it is needed. After 1.14 we should deprecate gst_pb_utils_init(). https://bugzilla.gnome.org/show_bug.cgi?id=793611 2018-02-23 16:39:32 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: gl: Add meson support for GBM backend https://bugzilla.gnome.org/show_bug.cgi?id=782923 2018-02-23 19:59:45 +0100 Carlos Rafael Giani * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/gbm/Makefile.am: * gst-libs/gst/gl/gbm/gstgl_gbm_utils.c: * gst-libs/gst/gl/gbm/gstgl_gbm_utils.h: * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: * gst-libs/gst/gl/gbm/gstgldisplay_gbm.h: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * m4/gst-gl.m4: gl: Add Mesa3D GBM backend This makes it possible to use the GStreamer OpenGL elements without a windowing system if a libdrm- and Mesa3D-supported GPU is present https://bugzilla.gnome.org/show_bug.cgi?id=782923 2018-02-23 17:09:49 +0100 Carlos Rafael Giani * configure.ac: configure: Add configure checks for libdrm and gudev https://bugzilla.gnome.org/show_bug.cgi?id=782923 2018-02-23 19:36:42 +1100 Jan Schmidt * ext/gl/gstglimagesink.c: glimagesink: Correct PAR in output caps when transforming When doing a 3D/multiview transformation and rescaling to match the output window size, the resulting PAR may not match the input any more and needs recalculating, or else the GstSample reported to client-draw has the wrong PAR. 2018-02-22 16:11:20 -0500 Nicolas Dufresne * gst-libs/gst/video/gstvideometa.c: roi-meta: Fix bad doc comment syntax 2018-02-09 14:45:08 +0100 Guillaume Desmottes * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: add support for downstream parameters to ROI meta The current GstVideoRegionOfInterestMeta API allows elements to detect and name ROI but doesn't tell anything about how this information is meant to be consumed by downstream elements. Typically, encoders may want to tweak their encoding settings for a given ROI to increase or decrease their quality. Each encoder has its own set of settings so that's not something that can be standardized. This patch adds encoder-specific parameters to the meta which can be used to configure the encoding of a specific ROI. A typical use case would be: source ! roi-detector ! encoder with a buffer probe on the encoder sink pad set by the application. Thanks to the probe the application will be able to tell to the encoder how this specific region should be encoded. Users could also develop their specific roi detectors meant to be used with a specific encoder and directly putting the encoder parameters when detecting the ROI. https://bugzilla.gnome.org/show_bug.cgi?id=793338 2017-11-17 02:05:33 +0100 Mikhail Fludkov * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer.h: Add new RTPBuffer flags These flags will be used for Forward Error Correction purposes https://bugzilla.gnome.org/show_bug.cgi?id=792695 2018-02-20 11:52:43 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: fix multi-line string https://bugzilla.gnome.org/show_bug.cgi?id=793629 2018-02-19 09:57:48 -0800 Thiago Santos * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: add some missing gi annotations For allow-none parameters 2018-02-19 17:50:51 +0000 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: videoscale: simplify test and make it more robust test_negotiation would occasionally time out, for unknown reasons. Simplify the test setup and get rid of the main loop, busses, and notify signals. With this I can no longer easily reproduce the timeout. Fingers crossed. 2018-02-01 19:25:49 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: don't signal the GCond if no one is waiting on it Performance optimisation: Keep track whenever the streaming thread or the application thread are waiting on the GCond for more space or new data, and only signal on the GCond if someone is actually waiting. Avoids unnecessary syscalls and thus context switches. 2018-02-01 01:22:21 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: use GstQueueArray instead of GQueue for internal item queue Performance optimisation. Avoids alloc/free churn for the queue's list nodes. Depends on new API in GstQueueArray in core. 2018-01-31 20:19:47 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: appsink: don't signal the GCond if no one is waiting on it Performance optimisation: Keep track whenever the streaming thread or the application thread are waiting on the GCond for more space or new data, and only signal on the GCond if someone is actually waiting. Avoids unnecessary syscalls and thus context switches. 2018-01-31 20:11:41 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: appsink: use GstQueueArray instead of GQueue for internal item queue Performance optimisation. Avoids alloc/free churn for the queue's list nodes. 2018-01-31 20:07:06 +0000 Tim-Philipp Müller * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/benchmark-appsink.c: * tests/icles/benchmark-appsrc.c: icles: add appsink and appsrc benchmarks These are very much artificial of course, but got to measure something. appsink one contains lots of buffer creation/free overhead, while appsrc one does not. 2018-02-18 11:38:25 +0200 Sebastian Dröge * m4/gst-gl.m4: m4: gmodule-no-export-2.0 is needed for everything using the g_module_*() API While it is pulled in via the GLib check, GLIB_LIBS is not pulled into any of the places using the API. 2018-02-17 18:34:58 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: Link to libgstallocators for the dmabuf allocator 2018-02-15 11:21:34 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gl/wayland: Memory leak when display couldn't connect When trying to create a wayland display, it may fail because there is not actually display to connect. It this case NULL is returned but the created instance is not freed. This patch unrefs the failed display. https://bugzilla.gnome.org/show_bug.cgi?id=793483 2018-02-15 21:08:08 +0100 Mathieu Duponchelle * gst-libs/gst/audio/audio-converter.c: audio-converter: fix declaration-after-statement 2018-02-15 20:00:42 +0100 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: audio-converter: add a convenience conversion method This is useful from python bindings https://bugzilla.gnome.org/show_bug.cgi?id=793492 2018-02-15 19:57:44 +0100 Mathieu Duponchelle * gst-libs/gst/audio/audio-converter.c: gst_audio_converter_new: update annotations https://bugzilla.gnome.org/show_bug.cgi?id=793492 2018-02-15 19:56:46 +0100 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: AudioConverter: register as boxed type https://bugzilla.gnome.org/show_bug.cgi?id=793492 2018-02-15 19:54:34 +0100 Mathieu Duponchelle * gst-libs/gst/audio/audio-info.c: audio-info: annotate gst_audio_info_set_format https://bugzilla.gnome.org/show_bug.cgi?id=793492 2018-02-15 19:44:17 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * meson.build: Back to development 2018-02-15 18:50:51 +0000 Tim-Philipp Müller * tests/examples/compositor/crossfade.c: Dist compositor crossfade example and pythons script for meson build And add to autotools build so it gets disted. === release 1.13.1 === 2018-02-15 17:01:15 +0000 Tim-Philipp Müller * NEWS: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.13.1 2018-02-15 16:58:17 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update plugin docs 2018-02-15 12:51:10 +0000 Tim-Philipp Müller * configure.ac: configure: fix build with --disable-external 2018-02-15 11:37:46 +0000 Tim-Philipp Müller * po/cs.po: * po/sv.po: * po/tr.po: po: update translations 2018-02-15 07:14:20 +0100 Edward Hervey * gst-libs/gst/audio/gstaudiopack-dist.c: * gst/audiomixer/gstaudiomixerorc-dist.c: Update disted backup ORC files 2018-02-15 01:14:52 +0100 Mathieu Duponchelle * gst-libs/gst/audio/gstaudiopack.orc: gstaudiopack.orc: pack_u32be_swap: actually swap Fixes: gst-launch-1.0 audiotestsrc ! audio/x-raw, format=U32BE ! \ audioconvert ! autoaudiosink 2018-02-14 14:39:32 -0500 Nicolas Dufresne * gst/playback/gsturidecodebin.c: doc: Remove obsolete Since 0.10.X marks 2018-02-14 14:37:52 -0500 Nicolas Dufresne * docs/libs/gst-plugins-base-libs-docs.sgml: doc: Add per version newly added API indexes 2018-02-14 14:16:14 -0500 Nicolas Dufresne * gst-libs/gst/allocators/gstdmabuf.h: doc: Fix since marker in dmabuf to match a stable release 2018-02-14 14:11:47 -0500 Nicolas Dufresne * gst-libs/gst/allocators/gstfdmemory.h: * gst-libs/gst/video/video-color.h: doc: Remove extra . after Since marker 2018-02-14 14:10:22 -0500 Nicolas Dufresne * gst-libs/gst/video/video-format.h: doc: Fix Since 1.X marker on new video formats 2018-02-14 14:07:54 -0500 Nicolas Dufresne * docs/libs/gst-plugins-base-libs-sections.txt: doc: Include new GstVideoOverlay API 2018-02-14 14:36:00 +0100 Edward Hervey * gst/compositor/compositororc-dist.c: Update ORC fallback disted code 2018-02-14 10:21:49 +0000 Philippe Normand * gst/playback/gstplaybin3.c: playbin3: fix source-setup signal emission Previous code would pass 0 as source element. 2018-02-14 00:22:38 +0000 Tim-Philipp Müller * ext/vorbis/gstvorbisparse.c: vorbisparse: error out when headers are missing https://bugzilla.gnome.org/show_bug.cgi?id=791606 2018-02-13 17:16:53 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: audioaggregator: remove declaration for function that doesn't exist 2018-02-13 17:10:22 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/audio/gstaudioaggregator.c: docs: add GstAudioAggregator to docs 2018-02-13 16:43:44 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-audiomixer.xml: docs: add audiomixer + audiointerleave to plugin docs 2018-02-13 16:40:19 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: docs: update plugin docs for recent changes 2018-02-13 16:38:32 +0000 Tim-Philipp Müller * configure.ac: * gst/audiomixer/Makefile.am: * gst/audiomixer/meson.build: * gst/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/meson.build: audiomixer, audiointerleave: add to build https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-13 16:09:09 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs.types: * docs/plugins/gst-plugins-base-plugins.hierarchy: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/meson.build: GstAudioAggregator: hook up to build https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-13 15:56:49 +0000 Tim-Philipp Müller audioaggregator, audiomixer, audiointerleave: move from -bad to -base https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-13 08:36:30 +0100 Edward Hervey * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: vorbisdec: Improve "new headers while initialized" handling If new headers arrive after we are initialized, we need to make sure that they are indeed valid. A vorbis bitstream always begins with three header packets and must be in order. Also some streams have unframed (invalid?) headers that might confuse and disrupt the decoding process. Therefore if ever we see new headers, we accumulate them and once we get a non-header packet we check them to make sure that: * We have at least 3 headers * They are the expected ones (identification, comments and setup) * They are in order * Any other "header" is ignored If those conditions are met, we reset and reconfigure the decoder https://bugzilla.gnome.org/show_bug.cgi?id=784530 2018-02-10 15:41:10 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Re-enable buffering message handling Buffering messages are only sent for the active group (in case there is more than one). If the inactive group posts buffering messages we keep the last one around and will post it once it becomes the playing one. 2018-01-19 18:40:53 +0100 François Laignel * gst/playback/gstdecodebin3.c: decodebin3: high cpu usage after eos After eos, decodebin3 enters a loop sending eos events which causes high cpu usage. https://bugzilla.gnome.org/show_bug.cgi?id=792693 2017-12-08 16:46:21 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Handle dual-output of STREAM_START/EOS In order to flush out multiqueue, we send again a STREAM_START and then a EOS event. The problem was that was that we might end up pushing out on the output of multiqueue (and therefore decodebin3) a series of: * EOS / STREAM_START / EOS Apart from the uglyness of such output, If decodebin3 is used with elements such as concat on their output, they might potentially block on that second STREAM_START. In order to make sure we don't end up in that situation we send a custom STREAM_START event when refreshing multiqueue (which we drop on the output) and we don't special case EOS events on streams on which we already got EOS. At worst we now end up sending at most two EOS on the output of multiqueue (and decodebin3). 2017-11-10 14:32:13 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Implement gapless playback Similar in vein to the playbin2 architecture except that uridecodebin3 are prerolled much earlier and all streams of the same type are fed through a 'concat' element. This keeps the philosphy of having all elements connected as soon as possible. The 'about-to-finish' signal is emitted whenever one of the uridecodebin is about to finish, allowing the users to set the next uri/suburi. The notion of a group being active has changed. It now means that the uridecodebin3 has been activated, but doesn't mean it is the one currently being outputted by the sinks (i.e. curr_group and next_group). This is done via detecting GST_MESSAGE_STREAM_START emission by playsink and figuring out which group is really playing. When the current group changes, a new thread is started to deactivate the previous one and optionnaly fire 'about-to-finish'. 2017-11-09 11:17:13 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Use uridecodebin3 and link/reconfigure immediately Apologies for the big commit, but it wasn't really possible to split it in anything smaller. * Switch to uridecodebin3 instead of managing urisourcebin and decodebin3 ourselves. No major architectural change with this. * Reconfigure sinks/outputs when needed. This is possible thanks to the various streams-related API. Instead of blocking new pads and waiting for a (fake) no-more-pads to decide what to connect, we instead reconfigure playsink and the combiners to whatever types are currently selected. All of this is done in reconfigure_output(). New pads are immediately connected to (combiners and) sinks, allowing immediate negotiation and usage. * Since elements are always connected, the "cached-duration" feature is gone and queries can reach the target elements. * The auto-plugging related code is currently disabled entirely until we get the new proper API. * Store collections at the GstSourceGroup level and not globally * And more comments a bit everywhere NOTE: gapless is still not functional, but this opens the way to be able to handle it in a streams-aware fashion (where several uridecodebin3 can be active at the same time). 2017-11-09 10:53:24 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Add 'about-to-finish' signal With push-based sources, urisourcebin will emit this signal when the stream has been fully consumed. This signal can be used to know when the source is done providing data. 2017-11-09 10:45:37 +0100 Edward Hervey * gst/playback/Makefile.am: * gst/playback/gstplayback.c: * gst/playback/gstplayback.h: * gst/playback/gsturidecodebin3.c: * gst/playback/meson.build: playback: New uridecodebin3 element In the same vein as old uridecodebin except that it also accepts a suburi and uses urisourcebin and decodebin3 internally 2017-11-09 11:16:20 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove wrong 'notify' Those properties doesn't exist on playbin3, don't emit a notify for that 2017-11-09 11:14:29 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove setting 'subtitle-encoding' on decodebin That property doesn't exist 2017-11-09 11:12:08 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Clarify documentation of combiner properties 2017-11-09 11:11:12 +0100 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove unused define 2017-12-07 15:23:17 +0100 Edward Hervey * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: Use GST_GROUP_ID_INVALID 2017-11-10 15:01:04 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Don't forward already-handling SELECT_STREAMS Upstream might respond negatively to the event, whereas we actually handled it. 2017-12-08 17:01:05 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Add new about-to-finish signal 2017-11-09 10:46:31 +0100 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Remove unused definition 2017-10-04 17:42:45 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Don't take the lock when creating a new input We only need to take the input lock when adding/removing inputs from the list. 2017-09-25 15:24:08 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove unused variable The lock is never used 2017-11-09 10:52:38 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Remove auto-plugging signals They were never used and we need a better system 2017-11-09 10:50:30 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Remove ASYNC behaviour It is not needed in the new streams-aware world 2017-09-22 17:20:35 +0200 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Remove 'unknown-type' signal It was never used and makes no sense in the new streams-based world 2017-09-22 17:13:14 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Disable autoplug-related code The signals were never emitted from decodebin3. This needs switching to a new signalling system 2017-09-22 17:09:43 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: fix "no-more-pads" handling That signal is never emitted by decodebin3 and is handled differently 2017-09-22 17:04:54 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove duration caching This is now handled directly via sinks and queries through pads 2017-10-04 17:41:16 +0200 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Remove async behaviour There's no reason to do async changing 2018-02-02 13:02:14 +1100 Jan Schmidt * ext/gl/gstglimagesink.c: glimagesink: Always display with requested stereo display mode Even if the input is monoscopic, the app might want to display it in a different layout, to do side-by-side for VR for example, so if the app changes the output-multiview-mode always use that. 2018-01-26 22:44:24 +1100 Jan Schmidt * gst/tcp/gstmultihandlesink.c: tcp/multihandlesink: Handle the case of no caps Pass data with no caps and no streamheaders without throwing a bunch of criticals 2018-02-09 17:15:30 +1100 Matthew Waters * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/glbin.c: * tests/check/meson.build: gl*bin: fix transfer semantics for the create-element signal We can either receive an element that is floating or not and need to accomodate that in the signal return values. Do so by removing the floating flag. https://bugzilla.gnome.org/show_bug.cgi?id=792597 2018-02-09 12:32:52 +1100 Matthew Waters * ext/gl/gstgldownloadelement.c: gldownload: remove texture-target field from dmabuf/sysmem caps https://bugzilla.gnome.org/show_bug.cgi?id=792342 2018-02-08 17:17:51 +0000 Tim-Philipp Müller * meson.build: meson: make version numbers ints and fix int/string comparison WARNING: Trying to compare values of different types (str, int). The result of this is undefined and will become a hard error in a future Meson release. 2018-02-08 16:57:53 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: gl: g-i: expose platform-specific display API in bindings https://bugzilla.gnome.org/show_bug.cgi?id=786391 2018-02-02 00:00:23 +0000 Sebastian Cote * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: also add Content-Type to HTTP POST request when tunnelling When the GstRTSPConnection class sends a RTSP over HTTP tunnelling request, the HTTP Content-Type header is missing from the HTTP POST request. This isn't a problem with most servers, but there are servers that rejects the request without there also being a Content-Type header. RFC 1945: Any HTTP/1.0 message containing an entity body should include a Content-Type header field defining the media type of that body. Apple Dispatch 28: QuickTime Streaming uses the "application/x-rtsp-tunnelled" MIME type in both the Content-Type and Accept headers. This reflects the data type that is expected and delivered by the client and server. https://bugzilla.gnome.org/show_bug.cgi?id=793110 2018-02-08 21:14:56 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: remove more deprecated type aliases Additions on top of https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=32a17f313494cbadaf8ec4e337d742e8d7e1b67b https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=c8b99139b1ef3f8891548b0f2607a135917c338e 2018-02-08 16:13:23 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstgldisplay_egl.c: gl/display/egl: Fix precondition in display_egl_get_from_native We don't really want type=NONE as input and it was already impossible for that to occur with the other condtions. CID #1427144 2018-02-07 14:48:00 -0500 Nicolas Dufresne * gst-libs/gst/video/video-format.c: video: Fix GRAY10_LE32 depth information 2018-02-07 18:40:49 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideoutils.h: video: Change struct padding from void* to gpointer gobject-introspection causes inconsistent type information for the former and we use gpointer everywhere else. 2018-02-06 16:29:11 -0500 Nicolas Dufresne * tests/check/meson.build: meson: Enable libs_video unit test It does not timeout anymore, even though it's a very slow test. For the context, this test runs routines for a fixes amount of time and prints the throughput. Which means the test takes more time everytime a pixel format is added. If that becomes a problem again, we should disable the benchmarks by default. 2018-02-06 16:16:15 -0500 Nicolas Dufresne * gst-libs/gst/video/video-format.c: video-format: Fix 10LE32 formats packing function The source offset (soff) was not incremented for each component and then each group of 3 components were inverted. This was causing a staircase effect combined with some noise. https://bugzilla.gnome.org/show_bug.cgi?id=789876 2018-02-06 16:13:07 +0000 Philippe Normand * gst-libs/gst/gl/gstglcontext.h: glcontext: remove deprecated type alias Now for real without un-needed comments... 2018-02-06 16:08:47 +0000 Philippe Normand * gst-libs/gst/gl/gstglcontext.h: glcontext: remove deprecated type alias 2018-02-04 11:22:36 +0100 Tim-Philipp Müller * configure.ac: autotools: use -fno-strict-aliasing where supported https://bugzilla.gnome.org/show_bug.cgi?id=769183 2018-02-05 14:58:06 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglsl.h: gl: some annotation fixes 2018-02-05 14:56:07 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: gl/build/meson: fix gl_api variable names 2017-02-22 10:48:55 +0000 Tim-Philipp Müller * tests/check/libs/sdp.c: tests: sdp: relicense code snippet from GPLv3 to LGPLv2.1+ Relicense with approval from Jose and Miguel. Code snippet was supposed to be LGPL from the beginning. https://bugzilla.gnome.org/show_bug.cgi?id=697808#c14 https://bugzilla.gnome.org/show_bug.cgi?id=697808#c15 2018-01-17 15:24:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: fixup GL_RGB565 usage when performing texsubimage An additional change for the texsubimage use case on top of https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=c2b2c68beaddbea0ec4fe7b099507cc492f6dd7c https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=ea6bed111bab9b394d787f7760c6a3b953630d3a https://bugzilla.gnome.org/show_bug.cgi?id=783066 https://bugzilla.gnome.org/show_bug.cgi?id=792584 2018-02-01 11:21:19 +0000 Tim-Philipp Müller * pkgconfig/Makefile.am: pkgconfig: only install gstreamer-gl-1.0.pc if OpenGL support was built https://bugzilla.gnome.org/show_bug.cgi?id=793039 2018-02-01 10:40:28 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Handle invalid-sized packets On invalid packets there is the possibility we might end up wanting to trim/offset more than what is available. oss-fuzz issue #5866 2018-01-30 20:33:36 +0000 Tim-Philipp Müller * meson.build: meson: use -fno-strict-aliasing if supported https://bugzilla.gnome.org/show_bug.cgi?id=769183 2018-01-30 20:32:44 +0000 Tim-Philipp Müller * gst-libs/gst/audio/meson.build: * meson.build: meson: use built-in pic kwarg when building static helper libs instead of passing -fPIC manually. 2018-01-29 12:57:56 +0000 Nicolas Dufresne * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglwindow.c: glimagesink: Allow resetting render rectangle As documented, passing -1 to x and/or y should reset the render rectangle to the window/display size. https://bugzilla.gnome.org/show_bug.cgi?id=792798 2018-01-29 12:45:06 +0000 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Add render-rectangle property This allow controlling the render rectangle from gst-launch-1.0. https://bugzilla.gnome.org/show_bug.cgi?id=792798 2018-01-23 15:04:21 -0500 Nicolas Dufresne * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimagesink: Allow changing render-rectangle through property This also enables setting the render rectangle before the window is provided or created. https://bugzilla.gnome.org/show_bug.cgi?id=792798 2018-01-22 15:40:32 -0500 Nicolas Dufresne * gst-libs/gst/video/videooverlay.c: * gst-libs/gst/video/videooverlay.h: video-overlay: Add helpers for render-rectangle property This is a set of helper that makes it easy to enable the render rectangle to be controllable through a property. https://bugzilla.gnome.org/show_bug.cgi?id=792798 2017-11-03 12:18:27 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add NV16_10LE32 support This adds a 10 bit variant for NV16 packed into 32 bits little endian words. The MSB 2 bits are padding. This format is used on Xilinx SoC and identified with the FOURCC XV20. https://bugzilla.gnome.org/show_bug.cgi?id=789876 2017-11-03 12:11:58 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add GRAY10_LE32 support This add a 10bit variant of gray scale packed into 32bits little endian words. The MSB 2 bits are padding and should be ignored. This format is used on Xilinx SoC and is identified with the FOURCC XV10. https://bugzilla.gnome.org/show_bug.cgi?id=789876 2017-11-01 17:26:31 -0400 Nicolas Dufresne * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add NV12_10LE32 support This adds a 10bit variant for NV12 which packs 3 10bit components into little endian 32bit words. The MSB 2 bits are padding and should be ignored. This format is used on Xilinx SoC and is identified with there with the FOURCC XV15 https://bugzilla.gnome.org/show_bug.cgi?id=789876 2016-10-03 13:11:07 +0100 Vincent Penquerc'h * ext/gl/gstglvideomixer.c: glvideomixer: fix vertex_buffer leak We call the base class first as this will remove the pad from the aggregator, thus stopping misc callbacks from being called, one of which (process_textures) will recreate the vertex_buffer if it is destroyed https://bugzilla.gnome.org/show_bug.cgi?id=760873 2018-01-25 18:39:11 +0000 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: fix pushing out of last chunk if last line has no newline With playbin the last subtitle chunk would not get displayed if the last chunk was missing a newline at the end. This is because streamsynchronizer will hold back the EOS event until the audio and video streams are finished too, so subparse would never forcefully push out the last chunk until the very end when it is too late. We get a STREAM_GROUP_DONE event from streamsynchronizer however, so handle that like EOS and force out any remaining text then. https://bugzilla.gnome.org/show_bug.cgi?id=771853 2017-04-07 10:33:40 +0100 Vincent Penquerc'h * tests/check/gst-plugins-base.supp: gst-plugins-base.supp: add gl suppressions for one off init allocations Add to valgrind suppressions file. https://bugzilla.gnome.org/show_bug.cgi?id=781021 2017-12-28 12:15:21 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregatorpad: implement skip_buffer Skip buffers from sources with a framerate higher than the output framerate. https://bugzilla.gnome.org/show_bug.cgi?id=781928 2018-01-23 09:01:00 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: Update for renamed aggregator pad API https://bugzilla.gnome.org/show_bug.cgi?id=791204 2018-01-23 09:01:00 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: Update for renamed aggregator pad API https://bugzilla.gnome.org/show_bug.cgi?id=791204 2015-03-20 09:41:05 +0100 Branislav Katreniak * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: alsasrc: lock calls to snd_pcm_delay() with mutex as in alsasink Alsasrc introduced delay_lock in commit 519f85a43e73efb8f3fb2c7be45226e because alsa-lib is not thread safe for the same handle. Alsasrc uses the same threading pattern, it should be locked too. https://bugzilla.gnome.org/show_bug.cgi?id=746015 2018-01-19 20:43:57 +0000 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: id3v2: don't leak stack pointer outside of block where it's valid https://bugzilla.gnome.org/show_bug.cgi?id=788548 2018-01-19 18:50:07 +0000 Tim-Philipp Müller * tests/check/elements/audioconvert.c: tests: audioconvert: fix up check for lost channel positions The caps field is channel-mask these days, so that code path was never active. 2017-06-05 14:08:33 +0900 Jimmy Ohn * tests/check/elements/audioconvert.c: tests: audioconvert: Fix memory leak in failure path Don't set a bad example by leaking things, even if calling g_error() will make the process abort. https://bugzilla.gnome.org/show_bug.cgi?id=783418 2018-01-17 14:35:11 +0100 Edward Hervey * ext/theora/gsttheoradec.c: theoradec: Check for valid width/height If width or height are zero ... there's no video :) 2017-10-31 15:04:47 +0530 Ashish Kumar * gst/playback/gstplaybackutils.c: playback-utils: Fix caps leak on failure https://bugzilla.gnome.org/show_bug.cgi?id=789358 2018-01-16 20:13:45 +0000 Tim-Philipp Müller * tests/check/libs/profile.c: * tests/check/libs/rtpbasepayload.c: tests: fix build on Windows with MSVC 2018-01-16 19:22:16 +0000 Tim-Philipp Müller * tests/check/meson.build: meson: tests: fix build of tcp test on unix Need to add gio-unix-2.0 dep to pipelines/tcp test otherwise it won't find the gio/gunixfdmessage.h header which is not in the same dir as the other gio headers. This issue was masked before because we didn't include config.h so HAVE_GIO_UNIX_2_0 wasn't defined. 2018-01-16 19:21:53 +0000 Tim-Philipp Müller * tests/check/meson.build: meson: tests: skip allocators dmabuf test on non-Linux 2018-01-16 18:14:59 +0000 Tim-Philipp Müller * tests/check/elements/adder.c: * tests/check/elements/appsink.c: * tests/check/elements/audioconvert.c: * tests/check/elements/audioresample.c: * tests/check/elements/audiotestsrc.c: * tests/check/elements/decodebin.c: * tests/check/elements/libvisual.c: * tests/check/elements/multisocketsink.c: * tests/check/elements/opus.c: * tests/check/elements/playbin.c: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/check/elements/vorbisdec.c: * tests/check/elements/vorbistag.c: * tests/check/generic/clock-selection.c: * tests/check/generic/states.c: * tests/check/libs/audiocdsrc.c: * tests/check/libs/libsabi.c: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpbasepayload.c: * tests/check/libs/rtspconnection.c: * tests/check/libs/video.c: * tests/check/meson.build: * tests/check/pipelines/capsfilter-renegotiation.c: * tests/check/pipelines/gio.c: * tests/check/pipelines/streamsynchronizer.c: * tests/check/pipelines/tcp.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: tests: include config.h and don't include unix headers In many cases the unistd.h includes weren't actually needed. Don't build tests that need it on windows with MSVC (multifdsink, multisocketsink, pipelines/tcp). Preparation for making tests work on Windows with MSVC. 2018-01-16 13:59:08 +0000 Roland Peffer * gst-libs/gst/gl/meson.build: meson: gl: fix build on windows https://bugzilla.gnome.org/show_bug.cgi?id=791772 2018-01-16 11:25:29 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: fix check whether both gles2 and opengl headers can be included cc.compiles() doesn't support the prefix: kwarg currently, so it never had any effect. https://github.com/mesonbuild/meson/issues/2364 https://bugzilla.gnome.org/show_bug.cgi?id=787964 2017-01-23 14:30:20 +0000 Sam Thursfield * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Document the num-buffers property It's not obvious from the existing docs that this option exists, nor that it can be used to give a pipeline an exact length in video frames. https://bugzilla.gnome.org/show_bug.cgi?id=777647 2018-01-08 14:21:29 +0000 Tim-Philipp Müller * tests/examples/playback/playback-test.c: examples: playback: don't use deprecated font button API playback-test.c:2587:3: error: "gtk_font_button_get_font_name" is deprecated 2018-01-04 15:33:33 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: move roundtrip on show to window thread This makes it thread safe and fixes a possible deadlock. Keeping the roundtrip off the window thread will result in two different threads call wl_display_dispatch_queue() for the same queue which violates the assumption for _dispatch_queue()'s thread-safety guarantees. https://bugzilla.gnome.org/show_bug.cgi?id=788754 https://bugzilla.gnome.org/show_bug.cgi?id=792156 https://bugzilla.gnome.org/show_bug.cgi?id=758984 2018-01-03 15:31:04 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Fix mp3 typefinding with multiple different headers (yes, this has never worked since it was introduced, don't worry) If we want to actually detect layer/channels/samplerate changes, it would be better to: * not reset the various prev_* variables at every iteration. * and actually store the values when they change CID #206079 CID #206080 CID #206081 2018-01-03 23:11:54 +1100 Matthew Waters * tests/check/libs/gstglheaders.c: libs/glheaders: move object creation to the gl thread where necessary Some GL platforms (EGL, WGL) require deactivating the OpenGL context in one thread before it can be used in another thread which this test currently violates and would e.g. result in EGL_BAD_ACCESS errors from gst_gl_context_activate(). Fix by moving the object creation into the GL thread instead and not requiring additional gst_gl_context_activate() calls. https://bugzilla.gnome.org/show_bug.cgi?id=792158 2018-01-03 23:09:20 +1100 Matthew Waters * tests/check/libs/gstglheaders.c: tests/glheaders: use #if for platform selection GST_GL_HAVE_* are always defined to 0 or 1 so an #ifdef will always succeed which is not the intention here. 2017-12-22 23:11:42 +0100 Tim-Philipp Müller * configure.ac: * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: re-enable -Wformat-nonliteral warning We can pass string constants here to g_strdup_printf(), so do so and re-enable the -Wformat-nonliteral warning we had to disable when merging the opengl libs. 2018-01-03 09:15:34 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix missing printf arg for apple rectangular texture case Found by -Wformat-nonliteral (to be re-enabled in a separate commit). 2018-01-03 08:47:58 +0100 Edward Hervey * configure.ac: * m4/gst-gl.m4: configure: Fix build without gl plugins The AM_CONDITIONAL always need to be evaluated, regardless of whether we are building with or without gl plugins (the actual checks are only called in AG_GST_GL_PLUGIN_CHECKS). 2017-12-30 12:29:13 +0000 Philippe Normand * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl: cocoa: fix formatting for function definition This is a follow-up of 5d35e1fa15744b48c406fffa98695478fc8c9969 2017-12-26 13:23:11 +0000 Philippe Normand * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl: cocoa: Implement set_render_rectangle Resize the internal NSView according to the provided render rectangle. https://bugzilla.gnome.org/show_bug.cgi?id=791445 2017-12-26 15:35:35 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: gl: don't link to system gstallocators We already link to the in-tree gstallocators, no need to link to it again here, which also ends up being the system gstallocators lib. https://bugzilla.gnome.org/show_bug.cgi?id=791956 2017-12-26 13:49:25 +0100 Tim-Philipp Müller * meson.build: meson: skip translations if gettext is not available 2017-12-22 22:28:20 +0100 Tim-Philipp Müller * ext/gl/meson.build: * tests/check/meson.build: meson: gl: define HAVE_PNG etc. in config.h instead of c_args So that the tests have access to them as well (gl-launch-lines.c) 2017-06-05 18:11:42 +0200 Miguel Paris * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/Makefile.am: * tests/check/libs/rtp.c: rtp: fix gst_rtp_buffer_ext_timestamp taking into account backwards If timestamp goes forwards more than allowed, we consider that the timestamp belongs to the previous counting, so the extended timestamp is unwrapped. https://bugzilla.gnome.org/show_bug.cgi?id=783443 2017-12-21 19:32:03 +0100 Mathieu Duponchelle * tests/check/meson.build: tests: add missing comma 2017-12-21 19:28:00 +0100 Mathieu Duponchelle * tests/check/meson.build: tests: conditionally define the glimagesink test as well Forgotten in previous commit 2017-12-21 19:24:20 +0100 Mathieu Duponchelle * tests/check/meson.build: tests: fix build when not building gstgl gstgl_dep is only defined when build_gstgl is true 2017-12-20 23:47:33 +0000 Tim-Philipp Müller * docs/libs/meson.build: meson: docs: link gtk-doc scanner with gstgl 2017-12-20 16:01:38 +0000 Tim-Philipp Müller * m4/gst-gl.m4: gl: fix build if libjpeg is not available If libjpeg is not available, leave HAVE_JPEG undefined in config.h, instead of defining it to 0. Fixes mismatch between autotools conditional and ifdefs in the code. 2017-12-20 15:02:30 +0100 Edward Hervey * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Don't leak pads all audioaggregator subclasses were leaking the first sink pad :) 2017-07-22 20:32:20 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audioaggregator: implement input conversion https://bugzilla.gnome.org/show_bug.cgi?id=786344 2017-12-19 16:51:24 +0000 Tim-Philipp Müller * ext/gl/effects/gstgleffectssources.c: * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * tests/check/pipelines/gl-launch-lines.c: gl: fix up a few more #if HAVE_FOO error: "HAVE_PNG" is not defined, evaluates to 0 [-Werror=undef] 2017-12-19 15:48:19 +0000 Tim-Philipp Müller * m4/gst-gl.m4: autotools: gl: don't check for gstreamer-allocators via pkg-config It's in -base too after all, so this doesn't make sense and is no longer needed. 2017-12-19 12:44:35 +0000 Tim-Philipp Müller * gst-libs/gst/allocators/meson.build: allocators: fix meson build after physmem move from -bad 2017-12-12 08:31:47 +0100 Josep Torra * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl: cocoa: fix a warning when building in MacOS 10.12 gstglwindow_cocoa.m:186:60: error: incompatible pointer types sending 'GstGLContextCocoa *' (aka 'struct _GstGLContextCocoa *') to parameter of type 'GstGLContext *' (aka 'struct _GstGLContext *') 2017-12-08 14:46:35 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl: display: demote error level at display creation error https://bugzilla.gnome.org/show_bug.cgi?id=791391 2017-12-17 20:48:11 +0000 Tim-Philipp Müller * pkgconfig/meson.build: meson: set info variables in gstreamer-gl .pc file 2017-12-17 15:21:19 +0000 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-opengl.xml: docs: plugins: add opengl plugin to docs 2017-12-17 15:18:49 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update for git master 2017-12-15 00:40:25 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: docs: add moved gl lib to documentation 2017-12-11 11:59:57 +0000 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/generic/states.c: * tests/check/libs/.gitignore: * tests/check/libs/gstglheaders.c: * tests/check/meson.build: * tests/check/pipelines/.gitignore: * tests/check/pipelines/gl-launch-lines.c: gl: hook up tests Also move over simple gl launch line test. 2017-12-10 20:02:26 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * ext/Makefile.am: * ext/gl/Makefile.am: * ext/gl/gstopengl.c: * ext/gl/meson.build: * ext/meson.build: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/meson.build: * gst-libs/gst/meson.build: * m4/gst-gl.m4: * meson_options.txt: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * pkgconfig/meson.build: * po/POTFILES.in: * tests/check/Makefile.am: * tests/examples/Makefile.am: * tests/examples/gl/Makefile.am: * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/sdl/meson.build: * tests/examples/meson.build: gl: hook up to build system Tests and documentation will follow separately. The mixer elements in the opengl plugin need to stay in -bad for now since they use GstVideoAggregator. https://bugzilla.gnome.org/show_bug.cgi?id=754094 2017-12-11 00:26:36 +0000 Tim-Philipp Müller * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: gl: examples: fix c++ code for -Wreturn-aggregate .. and use #ifdef instead of #if 2017-12-10 22:27:31 +0000 Tim-Philipp Müller * ext/gl/gstglfiltershader.c: * ext/gl/gstopengl.c: gl: use #ifdef HAVE_* instead of #if HAVE_FOO 2017-12-09 20:16:48 +0000 Tim-Philipp Müller * ext/gl/meson.build: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/meson.build: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: * tests/examples/gl/sdl/meson.build: gl: remove GST_USE_UNSTABLE_API bits 2017-12-10 21:08:28 +0000 Tim-Philipp Müller * ext/opus/Makefile.am: opus: remove unused build variable and define 2017-02-17 19:26:41 +0200 Sebastian Dröge * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/allocators.h: * gst-libs/gst/allocators/gstphysmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: allocators: move GstPhysMemoryAllocator abstraction from -bad to -base This can be used in a generic way as common interface by all platforms that, in one way or another, pass around physical memory addresses. This is used by the gl lib and seems useful enough, so might just as well move it next to the other allocators. https://bugzilla.gnome.org/show_bug.cgi?id=779067 2017-12-19 12:00:43 +0000 Tim-Philipp Müller Move OpenGL library and plugin from -bad Merge branch 'opengl-move' https://bugzilla.gnome.org/show_bug.cgi?id=754094 2017-12-10 14:59:54 -0500 Nicolas Dufresne * gst/videoconvert/gstvideoconvert.c: videoconvert: Filter-out crop meta To passthrough crop-meta, the converter would need to allocate and convert buffers of the size of the originating buffer. This is currently made difficult by GstBaseTransform since we cannot alter the caps passed though the allocation query. We would also need to wait for the first input buffer to be received in order to make the decision around that size. So the short and safe solution is just to stop pretending we can passthrought that meta. https://bugzilla.gnome.org/show_bug.cgi?id=791412 2017-12-15 10:50:44 +0900 Dongil Park * gst/playback/gstplaybin3.c: playbin3: Fix accessing invalid index in GstStream when received select-stream event If select-stream event was send to playbin3 as missing any GstStream of ES type (V or A or TEX) of collection then, playbin will access to invalid address of GstStream due to invalid index limit. This caused SIGSEGV. https://bugzilla.gnome.org/show_bug.cgi?id=791638 2017-12-14 14:48:54 +1100 Matthew Waters * common: Automatic update of common submodule From e8c7a71 to 3fa2c9e 2017-12-11 11:45:37 +0800 Jun Xie * sys/xvimage/xvimagesink.c: xvimagesink: fix inaccurate error message It's about not being able to calculate the display size, not the display ratio. https://bugzilla.gnome.org/show_bug.cgi?id=791463 2017-12-05 10:37:40 +0100 Víctor Manuel Jáquez Leal * ext/gl/gstgldownloadelement.c: gldownload: fix wrong enum When compiling with clang, an enum conversion error is triggered since GstVideoFrameFlags are not GstVideoFlags. This patch sets GST_VIDEO_FRAME_FLAG_NONE to the added video meta. https://bugzilla.gnome.org/show_bug.cgi?id=791251 2017-12-02 19:28:30 -0500 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: gldownload: Add missing ifdef for dmabuf and egl This fixes the build for platforms that don't support one or the other. 2017-12-02 15:25:38 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Prefer wayland over X11 As most Wayland compositors supports XWayland, X11 backend get selected. This also realign better GStreamer decision to what happens with GTK and other stack out there. 2017-12-02 15:25:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Add missing GL API to the doc 2017-01-10 19:23:58 -0600 Matt Fischer * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: gldownload: Add dmabuf exporting This patch adds code to gldownload to export the image as a dmabuf if requested. The element now exposes memory:DMABuf as a cap feature, and if it is selected, the element exports the texture to an EGL image and then a dmabuf. It also implements a fallback to system memory download in case the exportation failed. https://bugzilla.gnome.org/show_bug.cgi?id=776927 2017-12-02 16:01:25 +0000 Tim-Philipp Müller * ext/gl/Makefile.am: * ext/gl/meson.build: Remove GstAggregator from -bad, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=739010 2017-11-27 14:44:58 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: use public GstGLContext instead of Cocoa-specific one Allows keeping the GstGLCAOpenGLLayer public but not the winsys-specific context/display/window. 2017-11-27 14:44:24 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: Revert "gl: cocoa: sprinkle some GST_EXPORT" This reverts commit 94d798c3337013bd902c0fd0a66f7f6842243eeb. cocoac headers don't need to be public as all the functionality can be provided by the base class 2017-11-26 22:36:35 +0000 Tim-Philipp Müller * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: gl: cocoa: sprinkle some GST_EXPORT Undefined symbols for architecture x86_64: "_gst_gl_context_cocoa_get_type", referenced from: __create_layer in libgstopengl_la-caopengllayersink.o Might need some more in other headers, but first need to clarify what exactly should be exported, there are some inconsistencies (installed header files vs. funcs in docs). 2017-11-24 17:06:22 -0500 Nicolas Dufresne * tests/examples/gl/sdl/sdlshare.c: sdlshare: Destroy GL backend buffer before the GL Context This was otherwise leading to a deadlock in the GL library. 2017-11-24 16:58:21 -0500 Nicolas Dufresne * tests/examples/gl/sdl/sdlshare2.c: sdlshare2: Fix race conditions The client-draw callback is running on the GL Thread, which will be required to map the buffer. Map early, and pass the mapped frame instead. On top of that, make sure to signal any pending draw before trying to push EOS, as some pad locks might be taken. This is the cost of using the same thread to control GStreamer and to render GL. 2017-11-24 16:58:01 -0500 Nicolas Dufresne * tests/examples/gl/meson.build: * tests/examples/gl/sdl/meson.build: meson: Build gl/sdl examples 2017-11-23 23:01:52 +1100 Jan Schmidt * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: viv-fb: Don't destroy the native FB display It causes crashes in applications because the result of fbGetDisplay() might be in use elsewhere in the application and Vivante doesn't seem to do any refcounting 2017-11-23 22:58:40 +1100 Jan Schmidt * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: Revert "gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass" This reverts commit 47fd4d391e775c11f529705bb0f457a9d25ba5e7. This patch is incorrect. It doesn't actually compile, and causes a crash because the viv-fb window implementation needs a native EGL handle to pass to fbCreateWindow, but the GstGLDisplayEGL handleis actually an EGLDisplay now (and gets cast to the wrong type) 2017-11-24 01:37:48 +1100 Jan Schmidt * tests/examples/gl/gtk/3dvideo/main.cpp: 3dvideo example: Correct video overlay for HiDPI Use the GTK scaling factor to scale the video allocation so video displays correctly on hi-dpi screens 2017-11-23 11:15:49 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: remove outdated comment in build file 2017-11-06 21:07:51 +0100 Mathieu Duponchelle * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: aggregator: Remove klass->sinkpads_type This posed problems for the python bindings (and possibly others). Instead, subclasses now use add_pad_template_with_gtype. https://bugzilla.gnome.org/show_bug.cgi?id=789986 2017-11-20 17:06:07 +0100 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: all: Fix left-shift undefined behaviour Cast to the target type before shifting (or use macro if available) 2017-11-07 15:21:43 +1100 Matthew Waters * tests/check/libs/gstglshader.c: * tests/check/libs/gstglslstage.c: gl/tests: add some simple shader testing Making sure that the default shaders compile and are usable 2017-11-07 12:39:58 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: guard stop in gl thread So we don't result in a critical when we've never created the GL context: gst_gl_context_thread_add: assertion 'GST_IS_GL_CONTEXT (context)' failed 2017-11-07 00:07:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: actually indicate start internally Otherwise when we stop, the necessary stop functions will not be called and things may be leaked. https://bugzilla.gnome.org/show_bug.cgi?id=788280 2017-11-06 23:19:15 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: free in the GL thread on stop Calling GL functions not on the GL thread may crash in some GL implementations. https://bugzilla.gnome.org/show_bug.cgi?id=789665 2017-11-02 12:17:38 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-10-28 21:34:08 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: gl/shader: allow setting non-square matrices as uniforms on gles platforms It is possible with GLES3 2017-10-28 18:33:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglquery.c: * tests/check/libs/gstglquery.c: gl/query: split tests and fix some corresponding issues in usage 2017-10-01 19:04:15 +0200 Jérôme Laheurte * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: Use value instead of version macro when testing for mac OS version https://bugzilla.gnome.org/show_bug.cgi?id=788404 2017-10-02 12:35:48 -0700 Cassandra Rommel * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass This simplifies the code a lot without any functional changes apart from not closing the display connection. Closing the display connection is not safe to do as it is shared between all other code in the same process and no reference counting or anything happens at the platform layer. 2017-10-02 16:22:26 +0900 Justin Kim * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext_egl: Add gstglwindow header Otherwise, compiler complains implicit function declaration warning. https://bugzilla.gnome.org/show_bug.cgi?id=788413 2017-09-28 16:20:53 +0530 Ponnam Srinivas * gst-libs/gst/gl/gstglfilter.c: glfilter: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788194 2017-09-25 17:20:58 +0530 Ponnam Srinivas * ext/gl/gstglmixer.c: glmixer: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788127 2017-09-20 20:00:03 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvidemixer: need reconfigure output gemotry after caps renegotiated 2017-09-21 11:59:22 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: Revert "glvideomixer: need update output geometry after src caps reconfigure" This reverts commit d6e538dc5651fb03c85d7c7614bcf6c689f2db2f. 2017-09-18 15:42:00 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: need update output geometry after src caps reconfigure Need update output geometry when sink caps changed and use gst_structure_set to update caps if structure is fixed https://bugzilla.gnome.org/show_bug.cgi?id=787820 2017-09-11 16:00:24 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl/viv-fb: transform screen coordinate to viewport coordinate In y direction, screen coordinate are opposite to viewport coordinate. https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-11 15:12:53 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl/viv-fb: fix wrong pos (x,y) calculate in queue_resize queue_resize viewport coordinate calculate is wrong and force queue_resize when do _set_render_rectangle in case user input pos changed https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-11 16:11:19 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: expose should do redisplay all the time when using internal window, window resize should work when pause state, but expose only do redisplay when window_id is valid. So expose should do redisplay all the time. https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-05 16:20:44 -0400 Nicolas Dufresne * ext/gl/caopengllayersink.m: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: Request minimum buffer even if need_pool is FALSE When tee is used, it will not request a pool, but still it wants to know how many buffers are required. https://bugzilla.gnome.org/show_bug.cgi?id=730758 2017-09-05 16:14:02 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gl/wayland: call eglTerminate() before wl_display_disconnect() Calling these two functions in the wrong order will result in use-after-free inside wayland. https://bugzilla.gnome.org/show_bug.cgi?id=787293 2017-09-01 15:00:12 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gtkglsink: expose the created display and context correctly 1. Propagate the GstGLDisplay we create 2. Add the created GstGLContext to the propagated GstGLDisplay Otherwise with multi-branch GL pipelines involving gtkglsink, things will fall apart and errors will be genarated somewhere. 2017-08-30 15:18:58 +0100 Philippe Normand * tests/examples/gl/gtk/3dvideo/main.cpp: examples/gl/gtk: build fix for the 3dvideo example on macOS 2017-08-30 15:16:39 +0100 Philippe Normand * tests/examples/gl/gtk/gstgtk.c: examples/gl/gtk: fix overlay handling for macOS The GTK+ window requires a NSView sub-view, not an NSWindow. 2017-08-28 12:56:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: fix build for ios/win32/android after 2fd84a6c Some missing GL includes. 2017-08-25 20:37:39 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/meson.build: gl: install new glfuncs.h header 2017-08-24 01:18:40 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/checks: fix build 2017-08-23 16:36:09 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: add build for the vivante fb backend 2017-08-23 16:32:57 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: detect valid configuration from enabled apis/platform/winsys 2017-08-23 16:23:07 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/build: also check for the GL/gl.h header In order to successfully build against a detected libGL library we also need headers 2017-08-17 13:46:04 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils_private.h: * tests/check/libs/gstglmatrix.c: glutils: fix matrix operations everywhere - correct the matrix multiplication - Use column-major matrices - reverse order of matrix multiplications https://bugzilla.gnome.org/show_bug.cgi?id=785980 2017-08-17 13:42:21 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: draw with GL_TRIANGLES Drawing 5 vertices with GL_TRIANGLE_STRIP will draw an extra unneeded triangle. 2017-08-22 16:16:24 +0100 Philippe Normand * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: gl/cocoa: fix build after commit 2fd84a6c 2017-08-22 12:39:43 +0100 Julien Isorce * ext/gl/caopengllayersink.h: * ext/gl/gstgltransformation.h: gl: fix broken build due to previous commit 2fd84a6c Can reproduce after installing libgraphene-dev Also fixes caopengllayersink.h to anticipate build error on osx. https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-07-07 16:15:12 +0100 Julien Isorce * ext/gl/gltestsrc.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.h: * ext/gl/gstgloverlay.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstglutils.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglheaders.c: * tests/check/libs/gstglupload.c: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: gl: do not include GL headers in public gstgl headers Except for gst/gl/gstglfuncs.h It is up to the client app to include these headers. It is coherent with the fact that gstreamer-gl.pc does not require any egl.pc/gles.pc. I.e. it is the responsability of the app to search these headers within its build setup. For example gstreamer-vaapi includes explicitly EGL/egl.h and search for it in its configure.ac. For example with this patch, if an app includes the headers gst/gl/egl/gstglcontext_egl.h gst/gl/egl/gstgldisplay_egl.h gst/gl/egl/gstglmemoryegl.h it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h. Which is good because the app might want to use the gstgl api only without the need to bother about gl headers. Also added a test: cd tests/check && make libs/gstglheaders.check https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-08-21 06:49:02 -0700 Jan Schmidt * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: gldownload: Micro-optimisation. Don't check output caps on every buffer The output caps will only change on a set_caps() call, so check if they contain the SystemMemory feature then and save some per-buffer CPU. 2017-08-14 12:12:34 +0100 Tim-Philipp Müller * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: fix build Include private headers for parent class debug categories. 2017-08-14 10:11:00 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstglwindow_private.h: gl: add missing new header files https://bugzilla.gnome.org/show_bug.cgi?id=786170 2017-08-14 09:33:38 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: make some debug categories private They weren't supposed to be public. https://bugzilla.gnome.org/show_bug.cgi?id=786170 2017-08-11 18:38:41 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/xcb_event_source.c: gl: don't export symbols that are not supposed to be public Make a bunch of symbols private that are currently leaked accidentally because they have a gst_* prefix and are used internally. We mark those we can't make static with G_GNUC_INTERNAL so that they get hidden with the autotools build as well (although we could just pass -fvisibility=hidden there too). 2017-08-11 14:55:48 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbasememory.h: gl: sprinkle more GST_EXPORT 2017-08-10 09:09:22 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: gl, wayland: mark more declared functions with GST_EXPORT 2017-08-01 10:21:51 +0100 Julien Isorce * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl: return NULL mem if eglCreateImage failed Found on rpi when gpu_mem is too low so there is not enough memory to create the eglimage. But still gst_buffer_pool_acquire_buffer succeeded. And it leads to a CRITICAL assert: gst_egl_image_get_image: assertion 'GST_IS_EGL_IMAGE (image)' failed https://bugzilla.gnome.org/show_bug.cgi?id=785518 2017-07-28 16:58:38 +0100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: gl: document missing GstGLShader functions 2017-07-28 11:00:12 +0100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.h: gl/docs: some documentation updates Add some missing/incomplete docs 2017-07-26 19:04:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: gl/docs: correctly name our objects in the documentation GstGl -> GstGL 2017-07-26 19:03:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglformat.h: gl/docs: document GstGLFormat enum 2017-07-21 08:43:45 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglframebuffer.c: gl: fix g-i annotations for glframebuffer gstglframebuffer.c:176: Error: GstGL: annotations not supported for tag "Since:". 2017-07-20 17:49:59 +1000 Alessandro Decina * gst-libs/gst/gl/meson.build: meson: specify fallback for libgmodule_dep Fixes build with glib built as a subproject. 2017-07-17 08:06:22 +0200 Edward Hervey * gst-libs/gst/gl/meson.build: meson: Fix GLES2 check On systems without pkg-config, we have the the library present but not the headers https://bugzilla.gnome.org/show_bug.cgi?id=785010 2017-07-15 17:25:36 +0100 Philippe Normand * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow_cocoa: fix video overlay support Make sure the window handle is configured after the NSWindow was created. https://bugzilla.gnome.org/show_bug.cgi?id=767462 2017-07-16 01:17:04 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: keep refs over async operations Avoids dereferencing dead objects What happens in the autovideosink case is that context 1 is created and destroyed before all the async operations hae executed on the associated window. When the delayed operations execute, they then reference dead objects and crash. We fix this by keeping refs over all async operations so the object cannot be deleted while async operations are in flight. https://bugzilla.gnome.org/show_bug.cgi?id=782379 2017-07-15 01:24:52 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: implement set_render_rectangle support https://bugzilla.gnome.org/show_bug.cgi?id=782959 2017-07-07 16:33:42 +0100 Julien Isorce * pkgconfig/gstreamer-gl-uninstalled.pc.in: pkgconfig: missing GL_CFLAGS in gstreamer-gl-uninstalled.pc.in Already present in gstreamer-gl.pc.in https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-07-06 21:09:50 +1000 Jan Schmidt * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Remove hard-coded pad templates Add a function to install the default RGBA pad templates, but don't make them required so that there can be GstGLFilter sub-classes with different input/output caps if they want. Remove the hard-coded RGBA restriction in the set_caps_features call, as it will be taken care of by intersecting with the pad templates. Update all the sub-classes to match 2017-07-07 14:41:17 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Don't throw assertions on invalid allocation query basesrc can send an allocation query with no caps, in which case we should just fail it without throwing assertions. 2016-03-09 22:01:12 +0000 Julien Isorce * gst-libs/gst/gl/gstglupload.c: glupload: add GST_CAPS_FEATURE_MEMORY_DMABUF Insert before SystemMemory to advice upstream elements that it is preferable for them to push dmabuf with the caps feature. Examples: /* Discard memory:DMABuf caps feature */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ capsfilter caps="video/x-raw(memory:SystemMemory)" ! glimagesink /* Force memory:DMABuf caps feature. */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ capsfilter caps="video/x-raw(memory:DMABuf)" ! glimagesink /* Auto select memory:DMABuf caps feature. */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=774649 2017-06-28 14:45:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: reset gl->DrawBuffer to the necessary values GL_COLOR_ATTACHMENT0 when a framebuffer is bound GL_BACK if no framebuffer is bound https://bugzilla.gnome.org/show_bug.cgi?id=784210 2017-06-28 12:17:37 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglmemory.c: glmemory: reset the draw buffer to GL_BACK The draw buffer should be reset to GL_BACK since the framebuffer is already unbound. https://bugzilla.gnome.org/show_bug.cgi?id=784210 2017-06-22 10:34:04 -0400 Nicolas Dufresne * gst-libs/gst/gl/meson.build: meson: Re-add pkg-config support for bcm_host Now we just fallback to find_library for Rasbian jessy and older. https://bugzilla.gnome.org/show_bug.cgi?id=784026 2017-06-21 11:18:43 +0200 Guillaume Desmottes * gst-libs/gst/gl/meson.build: gl: meson: use cc.find_library() to detect 'bcm_host' On the raspberry pi no pkg-config file is provided for the bcm_host library. We are using AC_CHECK_LIB to detect this lib with autotools, cc.find_library() library is a closer meson equivalent. https://bugzilla.gnome.org/show_bug.cgi?id=784026 2017-06-20 19:19:51 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again And remove gstgldisplay_cocoa.h instead, which got moved to the installed headers earlier. 2017-06-12 22:29:01 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix DirectVIV uploader for formats with a single plane We have to pass the "height" as height = vmeta->offset[1] / width to the API, which of course does not work well for formats with only a single plane. Use the whole memory size instead of the offset in that case. 2017-05-29 12:22:17 -0400 Nicolas Dufresne * ext/gl/meson.build: gl: Add dependency to gstallocators 2017-06-01 01:15:05 +0000 Jeremy Hiatt * gst-libs/gst/gl/gstglutils.c: glutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask() 2017-05-25 13:06:03 +0300 Sebastian Dröge * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: gl: Fix indentation 2017-05-25 13:05:23 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: #define GL_READ_FRAMEBUFFER / GL_DRAW_FRAMEBUFFER if not defined yet Just like we do elsewhere already. 2017-05-25 11:05:47 +0800 Haihua Hu * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglrenderbuffer.c: glformat: fix the usage of GST_GL_RGB565 GL_RGB565 is sized internal glformat, the corresponding glformat should be GL_RGB and type is GL_UNSIGNED_SHORT_565. Otherwise will return GL_INVALID_ENUM when creating texture. https://bugzilla.gnome.org/show_bug.cgi?id=783066 2017-05-25 10:09:04 +0800 Haihua Hu * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: glframebuffer: check frame buffer status need use specific fbo target https://bugzilla.gnome.org/show_bug.cgi?id=783065 2017-05-22 13:46:36 +0200 Anders Jonsson * ext/gl/gstgltestsrc.c: gltestsrc: Fix typo (occured->occurred) https://bugzilla.gnome.org/show_bug.cgi?id=782947 2017-05-21 18:31:59 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: Remove unused negotiated member This is now all handled in GstAggregator, so this code is not called anymore. 2017-05-21 15:30:10 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl*mixer: Use propose_allocation from the GstAggregator base class https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-09 23:59:04 +0200 Carlos Rafael Giani * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: gl/viv-fb: Fix user-choice string comparisons https://bugzilla.gnome.org/show_bug.cgi?id=782921 2017-05-20 17:35:43 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: glbasemixer: Remove own decide_allocation, use GstAggregator's https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:30:06 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: glbasemixer: Use aggregator for allocation handling https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:25:16 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: videoaggregator: Get the buffer from the pool if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-21 11:44:37 +0100 Tim-Philipp Müller * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: x11: fix compiler warning 2017-05-21 12:03:01 +0200 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glcontext: add public swap_buffers function That simply calls the implementation 2017-05-21 10:57:18 +0100 Tim-Philipp Müller * tests/examples/gl/generic/cube/cube.vcproj: * tests/examples/gl/generic/cubeyuv/cubeyuv.vcproj: * tests/examples/gl/generic/doublecube/doublecube.vcproj: * tests/examples/gl/generic/recordgraphic/recordgraphic.vcproj: * tests/examples/gl/gtk/3dvideo/3dvideo.vcproj: * tests/examples/gl/gtk/filternovideooverlay/filternovideooverlay.vcproj: * tests/examples/gl/gtk/filtervideooverlay/filtervideooverlay.vcproj: * tests/examples/gl/gtk/fxtest/fxtest.vcproj: * tests/examples/gl/gtk/pixbufdrop/pixbufdrop.vcproj: * tests/examples/gl/gtk/switchvideooverlay/switchvideooverlay.vcproj: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.vcproj: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.vcproj: * tests/examples/gl/qt/videooverlay/videooverlay.vcproj: * tests/examples/gl/sdl/sdlshare.vcproj: examples: gl: remove ancient bitrotten .vcproj files 2017-05-20 14:24:57 +0200 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: aggregator: add simple support for caps handling Modelled off the videoaggregator caps handling as that seems the most mature aggregtor-using implementation that has caps handling there is. https://bugzilla.gnome.org/show_bug.cgi?id=776931 2017-02-23 15:42:08 -0800 fvanzile * gst-libs/gst/gl/gstglcontext.c: glcontext: keep a ref to the active thread With the macOS/iOS implementations, the active thread can change multiple times over the life of a pipeline which would expose a race in the thread tracking. Fix by taking a ref on the active thread while the context is active. https://bugzilla.gnome.org/show_bug.cgi?id=779202 2017-05-20 12:34:27 +0200 Josep Torra * tests/examples/gl/cocoa/cocoa-videooverlay.m: examples: fix macOS 9.12 deprecation warnings Add #defines to allow older versions of macOS to use the new constant names. 2017-05-20 12:19:08 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: cocoa: fix a recently introduced typo Fixes gstgldisplay_cocoa.m:175:26: error: use of undeclared identifier 'singletone'. 2017-05-20 12:16:50 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cocoa: fix macOS 10.12 deprecation warnings Add #defines to allow older versions of macOS to use the new constant names. 2017-05-17 16:26:38 +0800 Haihua Hu * gst-libs/gst/gl/gstglformat.c: glformat: Add missing GST_GL_RGB565 in some switch statement https://bugzilla.gnome.org/show_bug.cgi?id=782736 2017-05-17 17:38:01 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/Makefile.am: cocoa: Install gstgldisplay_cocoa.h It's needed by e.g. qmlglsink. 2017-05-15 20:31:31 +0300 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-16 14:05:52 -0400 Nicolas Dufresne * ext/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient. 2017-05-15 12:00:50 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: glshader: Make reference counting of attach() consistent https://bugzilla.gnome.org/show_bug.cgi?id=747990 https://bugzilla.gnome.org/show_bug.cgi?id=702960 2017-05-11 20:05:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: build/gl/meson: check for GLES3/gl3ext.h existence 791e7522ebcb75beb31fcace271dee1342d3505d for meson https://bugzilla.gnome.org/show_bug.cgi?id=781885 2017-05-11 10:29:58 +0200 Jens Georg * gst-libs/gst/gl/gstglapi.h: build: Check for GLES3/gl3ext.h existence Some OpenGL drivers do not ship this but use GLES2/gl2ext.h instead. This is also in line with Khronos's recommendations https://bugzilla.gnome.org/show_bug.cgi?id=781885 2017-05-09 11:25:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Only use glDrawBuffer if available Otherwise fall back to glDrawBuffers. Also check if glReadBuffer exists before using it. glDrawBuffer does not exist for GLES, only glDrawBuffers does. https://bugzilla.gnome.org/show_bug.cgi?id=782376 2017-05-07 11:47:40 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: fix whole example launch line actually 2017-05-07 11:41:06 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: remove extraneous \ from example launch line in docs 2017-05-02 13:24:30 +0800 Haihua Hu * gst-libs/gst/gl/gstglupload.c: glupload: passthrough composition caps features in directviv upload https://bugzilla.gnome.org/show_bug.cgi?id=782046 2017-03-08 15:01:13 -0300 Thibault Saunier * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: docs: Port all docstring to gtk-doc markdown 2017-04-12 09:35:16 -0300 Thibault Saunier * gst-libs/gst/gl/gstglsl.h: docs: Stop linking to inexistant symbols 2017-04-11 15:46:19 +0300 Claudio Saavedra * gst-libs/gst/gl/meson.build: meson: add missing gstglrenderbuffer.h header https://bugzilla.gnome.org/show_bug.cgi?id=781179 2017-04-07 12:19:27 -0700 Scott D Phillips * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: meson: gl: set default value of 0 for glconf vars meson's configure_file emits only a comment like /* #undef ... */ for values which are unset in the configuration_data. For gstglconfig.h, this differs from the autotools build where the preprocessor definitions are always either 0 or 1. So loop over a list of variables to set to zero as default. Also sync up the gstglconfig.h.meson file with the additional macros defined by the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=781043 2017-04-07 10:30:09 +0100 Vincent Penquerc'h * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: fix display leak https://bugzilla.gnome.org/show_bug.cgi?id=781019 2017-04-07 10:24:19 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix list leak Windows aren't always removed in time, and it turns out to be very, very hard to remove a window in a way that's not racy and not deadlocky. Since the window itself doesn't leak, freeing the list on object destruction is enough. https://bugzilla.gnome.org/show_bug.cgi?id=781018 2017-04-08 21:28:58 +1000 Jan Schmidt * gst-libs/gst/gl/gstglframebuffer.h: gl: Remove duplicate typedef of GstGLFramebufferClass The GstGLFramebufferClass struct is typedeffed in gstgl_fwd.h, and having a duplicate elsewhere is breaking the cerbero build on my OSX machine, even though it seems to be working in CI. 2017-04-01 16:49:15 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: fix warnings reported by XCode 8.1.0 gstglwindow_cocoa.m:345:16: error: unused variable 'window' [-Werror,-Wunused-variable] GstGLWindow *window = GST_GL_WINDOW (window_cocoa); ^ gstglwindow_cocoa.m:445:11: error: unused variable 'external_view' [-Werror,-Wunused-variable] NSView *external_view = (__bridge NSView *)priv->external_view; ^ 2017-03-29 23:45:21 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gldisplay: Fix assert caused by missing debug category 2017-03-14 14:18:17 -0700 Scott D Phillips * gst-libs/gst/gl/gstglformat.c: gl/format: correct return enums in gst_gl_format_from_video_info In commit > 956c4d0 gl/format: use our own GL format enum's instead of gstvideo's the name and return type of gst_gl_format_from_video_info changed, but some returns of the old type were missed. Here they are updated to the correct type. https://bugzilla.gnome.org/show_bug.cgi?id=780064 2017-03-13 15:48:33 +0200 George Kiagiadakis * gst-libs/gst/gl/gstglupload.c: glupload: adjust memory offset calculation for dmabuf buffers The data in the dmabuf fd may not start from byte 0, therefore we need to inform EGL about this additional offset. https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-14 14:15:00 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gltestsrc.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl: GL_ARRAY_BUFFER is not a part of VAO state As a result we need to bind it on every draw in order to have the correct state in the GL state machine. 2017-03-13 14:28:47 +1100 Matthew Waters * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/format: use our own GL format enum's instead of gstvideo's They can describe in more detail (such as component sizes) the requested format. 2017-03-10 16:57:51 +0000 Vincent Penquerc'h * gst-libs/gst/gl/gstglupload.c: glupload: fix GValue leak https://bugzilla.gnome.org/show_bug.cgi?id=779869 2017-03-08 14:16:43 +0100 Nick Kallen * ext/gl/Makefile.am: applemedia/gl: Fix compile issues for OSX https://bugzilla.gnome.org/show_bug.cgi?id=778333 2017-03-08 15:13:45 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/Makefile.am: gl/eagl: It's -fobjc-arc not -fobj-arc 2017-02-03 14:46:39 +0100 Nick Kallen * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: applemedia/gl: Update code to use ARC All code interacting with Objective-C objects should now use Automated Reference Counting rather than manual memory management or Garbage Collection. Because ARC prohibits C-structs from containing references to Objective-C objects, all such fields are now typed 'gpointer'. Setting and gettings Objective-C fields on such a struct now uses explicit __bridge_* calls to tell ARC about object lifetimes. https://bugzilla.gnome.org/show_bug.cgi?id=777847 2017-03-06 17:51:32 +0530 Arun Raghavan * gst-libs/gst/gl/gstglcontext.h: gl: Missed one backwards compat define in GST_GL_TYPE_CONTEXT Continued from 296b4251e3042fe95a9cce1ad7674b708ba92599 2017-03-04 11:47:04 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: Fixup for last commit 2017-03-04 11:15:58 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: Fix backwards compat GST_GL_TYPE_* functions/macros These have to be macros instead of inline function as they must behave more or less like an integer literal, i.e. include the function call. 2017-03-04 11:09:39 +0200 Sebastian Dröge * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl/viv-fb: Don't use deprecated symbols and make macros more consistent https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-02-28 15:22:43 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: gltestsrc: Fix potential NULL pointer dereference if we fail without GError Which can happen here if we just propagate an error that happened elsewhere, e.g. FBO failed. CID 1364604 2017-02-28 13:06:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer/compositor: Correctly error out if calculating DAR fails CID 1320700 2017-02-28 12:34:30 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Check return value of gst_gl_context_check_framebuffer_status() CID 1401588 2017-02-28 12:31:54 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Add viv-fb to DIST_SUBDIRS to fix "make distcheck" 2017-02-28 10:53:04 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * ext/gl/gstglvideomixer.c: gl: Rename gst_gl_get_affine_transformation_meta_as_ndc_ext() to prevent symbol conflict The same symbol also exists in libgstgl, although marked as private and internal. This has no effect when doing static linking and there's a symbol conflict. 2017-02-28 10:50:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglutils_private.h: glutils: Mark private functions as G_GNUC_INTERNAL 2017-02-22 14:55:58 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglupload.c: glupload: Add support for Vivante DirectTexture uploads Together with the upcoming gstreamer-imx patch, this allows zerocopy between imxvpudec and other elements and glimagesink. This is losely based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779067 2017-02-17 12:24:58 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl: Add support for Vivante EGL FB windowing system This is very similar to how dispmanx on the Raspberry Pi works. Based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/tree/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-02-22 14:09:45 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/gstglmemory.c: glmemory: Use glBlitFramebuffer() instead of glCopyTexImage2D() if available glBlitFramebuffer() is new GLES3/GL3 API. They are probably often implemented in terms of each other, and glBlitFramebuffer() can potentially be implemented more flexible. Let's use it if available. Also it actually works on imx6 with DirectVIV textures. Based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779070 2017-02-16 20:08:35 +0200 Sebastian Dröge * gst-libs/gst/gl/meson.build: configure: Remove unused Mali EGL/fbdev_window support This existed a long time ago but there's no actual code for this anymore. 2017-02-10 10:29:49 -0300 Juan Pablo Ugarte * ext/gl/gstglsinkbin.c: GstGLSinkBin: fixed sink property leak No need to keep an extra reference to sink since an indirect one is added by gst_bin_add() https://bugzilla.gnome.org/show_bug.cgi?id=778452 2017-01-23 12:12:06 -0300 Thibault Saunier * gst-libs/gst/gl/meson.build: meson: Build GIR files 2017-01-18 15:03:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: ensure caps are writable after intersection gst_caps_intersect () may return an increased reference of one of the input caps. Fixes critical in the simple-launch-lines test: Unexpected critical/warning: gst_caps_set_features: assertion 'IS_WRITABLE (caps)' failed 2017-01-13 12:49:37 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/Makefile.am: gl: update sys dependants for function removals 4315a4b54d9 forgot to change the androidmedia/videotoolbox/caopengllayer sources as required. 2017-01-11 10:37:34 -0300 Juan Pablo Ugarte * gst-libs/gst/gl/gstglslstage.c: glslstage: define GL constants if needed instead of using #ifdef https://bugzilla.gnome.org/show_bug.cgi?id=777144 2017-01-13 11:08:10 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglutils.c: glutils: document functions 2017-01-13 11:06:39 +1100 Matthew Waters * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glutils: privatise matrix multiplication/videoaffinetransformation retrieval 2017-01-12 21:35:25 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: gl/utils: also take care of the local GL context in query functions Simplifies a deduplicates a lot of code in elements retrieving/setting the local OpenGL context. 2017-01-12 01:57:29 +1100 Matthew Waters * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: remove trivial helper function gst_gl_caps_replace_all_caps_features() is only used in two places and can be trivially reproduced. 2017-01-11 16:09:31 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/docs: add symbols from -unused.txt 2017-01-11 16:09:03 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: gl/docs: some type fixes of type names 2017-01-10 20:07:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: use the same parameter names between vfuncs and functions of the same name Silences GI warnings about symbol's not being used from source code comment block 2017-01-10 20:06:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.h: glbasememory: type fix for GstGLBaseMemoryAllocatorAllocFunction 2017-01-10 20:05:42 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: add missing transfer annotations 2017-01-10 20:04:30 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglquery.c: gl: add skip annotations to non-GI possible struct constructors 2017-01-10 20:03:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.h: glbasememory: remove unused and #if 0'ed function definitions 2017-01-10 19:58:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add necessary get_type() functions for allocation params structures All using the existing GstGLAllocationParams infrastructure 2017-01-10 15:35:52 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: some annotation updates/typo fixes 2017-01-10 14:29:46 +1100 Matthew Waters * gst-libs/gst/gl/gl.h: gl: remove reference to non-existant header ../../../../gst-libs/gst/gl/gl.h:57:45: fatal error: gst/gl/gstglcontrolbindingproxy.h: No such file or directory #include ^ 2017-01-10 12:51:51 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsinkbin.c: * ext/gl/gstglvideomixer.c: * ext/gl/meson.build: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglcontrolbindingproxy.c: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: * gst-libs/gst/gl/meson.build: gl: remove custom control binding proxy Use the existing GstProxyControlBinding instead. 2016-11-17 17:15:55 +1100 Matthew Waters * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: gl/pkg-config: add the configured platform/api/winsys Allows users to query this from pkg-config instead of requiring them to compile mini programs checking defines in gstglconfig.h 2016-11-18 01:06:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.h: gl: remove unneeded gst_gl_buffer_alloc from header file There's no implementation anymore! 2016-11-17 18:00:39 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: gl/egl: remove use of texture orientation 2016-11-17 17:51:54 +1100 Matthew Waters * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: gl/pkg-config: don't advertise all our dependent libraries as deps If an application/library explicitly needs a library, it needs to link against it itself. 2017-01-10 01:00:12 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext/egl: don't overwrite set GError Doing so is an error and will cause a glib warning to be printed. https://bugzilla.gnome.org/show_bug.cgi?id=776722 2017-01-04 16:51:10 +0100 Guillaume Desmottes * pkgconfig/gstreamer-gl-uninstalled.pc.in: meson: generate pkg-config -uninstalled pc files Generating those files is useful for users building the GStreamer stack using meson and having to link it to another project which is still using the autotools. While doing so, fix some -uninstalled pc files which were using a suspicious 'pcfiledir' which was never replaced or defined. https://bugzilla.gnome.org/show_bug.cgi?id=776810 2016-12-17 01:00:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: gl/format: use the unsized format for RGB on GLES2 In GLES2 GL_RGB8 doesn't exist so we cannot use it, use GL_RGB instead. https://bugzilla.gnome.org/show_bug.cgi?id=776141 2016-12-16 00:22:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: remove unused priv variable https://ci.gstreamer.net/job/GStreamer-master/7989/console 2016-12-15 00:59:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/window: remove use of main_context_push/pop_thread_default() No-one's using/depending on it (it would have criticalled and not worked) and it's causing more problems than it's solving. Store the GMainContext in the public struct instead for subclasses to optionally use instead of relying on the push/pop state to be correct. https://bugzilla.gnome.org/show_bug.cgi?id=775970 2016-12-07 16:51:27 +0800 Haihua Hu * ext/gl/gstgleffects.c: gl/effects: use non-PBO GLMemory for internal textures middle textures in gleffects do not need to use GstGLMemoryPBO as they aren't transfering data to/from the GPU. This will cost too much DMA memory and cause performance issue. Change the allocator to use non-PBO GstGLMemory. https://bugzilla.gnome.org/show_bug.cgi?id=776072 2016-12-14 15:53:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Reject multiview video glvideomixer does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-13 22:39:01 +0200 Sebastian Dröge * ext/gl/gltestsrc.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglupload.c: gst: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-01 09:24:18 +0000 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gstglupload: relax EGL context check Check for GST_GL_PLATFORM_EGL enum instead of type GstGLContextEGL. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-30 09:22:17 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gstglcontext: is_shared should return FALSE if no group If a sub class of GstGLContext does not create a group then it currently crashes: 0 g_atomic_int_get (&share->refcount) 1 _context_share_group_is_shared (context->priv->sharegroup) 2 gst_gl_context_is_shared 3 _default_set_sync_gl https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-30 19:26:51 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: glmemoryegl: remove spurious #if GST_GL_HAVE_DMABUF conditions 8c2118823b3d42840cc6f48cbdc0e1b342f90b80 had some incorrect preprocessor conditions that aren't actually needed. Remove them. https://bugzilla.gnome.org/show_bug.cgi?id=775248 2016-11-28 14:22:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: move g_main_context_push/pop_thread_default() to run() Calling g_main_context_push_thread and then g_main_context_invoke() (used by gst_gl_window_send_message_async()) in the same thread will cause the invoked function to run immediately instead of being delayed. This had implications for the creation of the OpenGL context not waiting until the main loop had completely started up and as a result would sometimes deadlock in short create/destroy scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=775171 2016-11-28 14:19:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix race between creation/shutdown 626bcccff96f624f59c5212b3e21e472240171fd removed some locks that allowed the main loop quit to occur before the context was fully created. 2776cef25d2a98668b73272aecfe77e684e6627e attempted to readd them but missed the scop of the quit() call. Also remove the use of g_thread_join() as that's not safe to use when it's possible to lose the last reference from the GL thread. https://bugzilla.gnome.org/show_bug.cgi?id=775171 2016-11-25 23:44:25 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Remove unused static function 2016-11-22 18:06:52 +0100 Florent Thiéry * ext/gl/gstgldownloadelement.c: gldownload: fix element description (was "OpenGL uploader") 2016-11-23 17:04:34 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl/contextglx: error out on more invalid display/window combinations https://bugzilla.gnome.org/show_bug.cgi?id=774851 2016-11-23 15:57:05 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglupload.c: gl: add necessary context_egl.h #includes to the source files 2016-11-23 13:32:38 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.h: gl/memoryegl: remove access to private header gstglcontext_egl.h It's been removed and thus compiling anything against GstGLMemoryEGL would error with: In file included from gstomxvideodec.c:41:0: usr/include/gstreamer-1.0/gst/gl/egl/gstglmemoryegl.h:32:41: fatal error: gst/gl/egl/gstglcontext_egl.h: No such file or directory #include ^ https://bugzilla.gnome.org/show_bug.cgi?id=774886 2016-11-17 15:41:00 +0000 David Evans * gst-libs/gst/gl/Makefile.am: gl: add gstreamer-video to pkg-config path https://bugzilla.gnome.org/show_bug.cgi?id=774624 2016-11-17 14:35:26 +1100 Matthew Waters * tests/check/elements/glimagesink.c: gl/tests: fix glimagesink element test on OSX It was suffering a race starting up the thread that could cause the main loop to quit before the main loop had started. 2016-11-17 14:32:10 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl/egl: add missing source file d42145e8c1ba3bc0445506b92bb7ac04ae98f4dd didn't add the necessary meson build changes. 2016-11-17 02:41:14 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl: remove EGLImage functions from egl context By adding the necessary GstEGLImage entry points to create a GstEGLImage from a GstGLMemory. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-17 01:45:38 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext: add vfunc to retrieve the OpenGL platform version i.e. the version of EGL, GLX, etc implemented. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-17 01:38:32 +1100 Matthew Waters * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/egl: move get_error_string() into gstegl So others can use it without #include-ing a private header https://bugzilla.gnome.org/show_bug.cgi?id=774518 2014-11-27 15:50:04 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: display/egl: implement getting the EGLDisplay of a specific platform https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-16 13:05:11 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/egl: check the feature in the extensions list https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-16 17:30:54 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/tests: don't use the default framebuffer Create our own instead as the default framebuffer may require special fiddling (like having a visible window) to correctly display/be renderable. Fixes the remaining GL library tests on OS X 2016-11-16 13:39:32 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: implement empty swap_buffers Fixes some GL tests on OS X. 2016-11-16 16:41:59 +1100 Matthew Waters * ext/gl/BUGS: gl: remove empty BUGS file We use bugzilla for bug tracking 2016-11-16 00:01:00 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: remove unneeded window code in NSWindow This is all taken care of by GstGLWindowCocoa/GstGLNSView now. 2016-11-15 22:56:25 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: remove our view from the parent when closing Otherwise, when the application reuses the same UIView, we were getting draw notifications on the previous view/layer's which weren't valid anymore and were referencing pointers that had been freed. https://bugzilla.gnome.org/show_bug.cgi?id=753003 2016-11-15 21:43:59 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: add a debug category 2016-11-15 14:36:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: introduce check for GLMemory allocators The last missing piece of EGLImage support has been pushed. 2016-11-11 01:05:55 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: gl: x11-xcb is not a required dependency Don't fail if it's not found.. 2016-11-10 20:34:53 +1100 Matthew Waters * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: gl/build: add missing build files 3f7b54988186de17ec4e5b5566074cfaa392819a was incomplete :( 2016-11-10 19:14:24 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * ext/gl/meson.build: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: gl/utils: move gen_shader() to the plugin and remove del_shader() gst_gl_context_del_shader() can be replaced by a g_object_unref(). gst_gl_context_gen_shader() should be replaced by using GstGLSLStage. 2016-10-26 16:53:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: remove unused field in public struct 2016-10-26 16:30:43 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove is_running() function It isn't necessary in correctly written programs. 2016-11-08 17:50:51 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson/gl: XCB changes also need x11-xcb as a dependency https://ci.gstreamer.net/job/GStreamer-master-meson/380/console [...] gst-libs/gst/gl/x11/xcb_event_source.c:98: undefined reference to `xcb_get_file_descriptor' 2016-11-08 09:52:48 +0100 Philippe Normand * gst-libs/gst/gl/meson.build: gl/x11: fix meson build The x11_event_source.[ch] files were renamed in 4f6c226bd24ae3ef66bd8f4c17b001444c9b0bf1. 2016-11-08 15:04:29 +1100 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: examples/gl/qt: fix the examples for the use of newer API gstgl doesn't undo/overwrite what GL state the examples are changing anymore. As such, the examples need to reset the GL state themselves to be able to play nice with libgstgl 2016-11-08 13:35:33 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glfiltershader: expand the docs slightly Add an example OpenGL shader 2016-07-01 00:31:07 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: remove the navigation thread This functionality can now effectively be implemented with the display event thread. 2016-07-01 00:07:23 +1000 Matthew Waters * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/xcb_event_source.c: * gst-libs/gst/gl/x11/xcb_event_source.h: gl/x11: use xcb instead of libX11 - xcb is supposedly thread-safe! videotestsrc ! glimagesink now doesn't spuriously result in a 'call XInitThreads()' error however if anybody else is using X11, then XInitThreads() still needs to be called and multiple glimagesink's still need XInitThreads(). Everything still takes libX11 handles as they are compatible with the xcb variants. Unfortunately we cannot move fully over to xcb due to GLX being entirely based on Xlib. It's also impossible to transform a xcb_connection to a Display which means we require X11 handles. 2016-06-30 23:12:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add a list of glwindow's With the event thread on the display, for a particular winsys event we need to be able to retreive the window that the event matches. 2016-06-30 23:04:16 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add a dedicated event thread Will take the place of the navigation event thread for dealing with winsys events. 2016-11-08 12:44:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.h: gl: don't expose OpenGL prototypes We roll our own to avoid depending a certain OpenGL header version 2016-11-08 02:56:44 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: don't install the gstglcontext_cocoa.h header It's not needed to be exposed 2016-11-08 02:52:37 +1100 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: gl/android: don't install the android window header It's not needed 2016-11-08 02:50:41 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: gl: add padding to all exposed winsys/platform-specific structs 2016-11-08 02:47:36 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/Makefile.am: gl/wayland: install the gstgldisplay_wayland.h header As it is used by other OpenGL sinks (gtkglsink, qmlglsink) 2016-11-08 02:44:30 +1100 Matthew Waters * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/meson.build: gl/egl: don't install the gstglcontext_egl.h header It's not needed to be exposed and there are no users of the API. 2016-11-08 02:21:20 +1100 Matthew Waters * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: remove display_init/reset They are mirrors of GstGLBaseFilter's gl_start() and gl_stop() virtual methods so use them instead. 2016-11-03 18:19:58 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Fix inverted precondition A GError argument must either be null or point to a NULL GError. https://developer.gnome.org/glib/stable/glib-Error-Reporting.html 2016-11-03 16:14:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglwindow.c: gl/gi: some annotation updates for called functions With scope, closure, destroy annotations 2016-11-03 16:12:32 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl/gi: also include GstVideo Removes all the unknown type GstVideo* warnings while building the GIR file. 2016-10-27 16:19:04 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfeature_private.h: glfeature: move internal functions into a private header Don't expose them to the outside world 2016-10-05 12:19:12 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gstglbasemixer.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: gl: GST_GL_TYPE -> GST_TYPE_GL Some deprecated symbols are kept for backwards compatibility 2016-11-03 12:03:24 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: gl/docs: massive update - add Since: markers where necessary. - document structs - add documentation headers for each module (short_description, see_also, etc) - reduce the number of warnings gtk-doc outputs - fix spelling mistakes 2016-11-02 21:21:33 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: gl/docs: document new API added in 1.10 GstGLRenderbuffer GstGLFramebuffer GstGLQuery GstEGLImage GstGLMemoryEGL 2016-11-01 17:30:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglsl.c: * tests/check/libs/gstglsl.c: glsl: fix #version 150 not working with profiles The spec allows the core/compatibility profiles to be used with #version 150. Also tighten up the tests to check for default profiles being chosen correctly. 2016-10-28 07:17:56 +0530 Nirbheek Chauhan * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: build: Also need to define GST_EXPORTS for Autotools The change to use GST_EXPORT for symbols under Windows requires GST_EXPORTS for internal use, and that is also needed under Autotools. The same thing is done for gstreamer-1.0.dll in -core. 2016-10-28 06:23:02 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl_private.h: gstgl: Re-enable WINAPI on _MSC_VER The calling convention may be deprecated, but we still need it for OpenGL. The build issue was caused by an incorrect syntax being used for the WINAPI (__stdcall) prototype in function pointers which was accepted by GCC but is rejected by MSVC. 2016-10-27 09:25:20 +0530 Nirbheek Chauhan * ext/gl/gstglstereosplit.c: plugins: Use explicit type conversion from enums MSVC warns about this because it's a C++ compiler, and this actually results in useful things such as the incorrect 'gboolean' return value for functions that return GstFlowReturn, so let's do explicit conversions to reduce the noise and increase its efficacy. 2016-10-27 09:11:26 +0530 Nirbheek Chauhan * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglviewconvert.c: Explicitly define float constants as float With MSVC, this gives the following warning: warning C4305: 'function': truncation from 'double' to 'gfloat' Apparently, MSVC does not figure out what type to use for constants based on the assignment. This warning is very spammy, so let's try to fix it. 2016-10-27 09:08:41 +0530 Nirbheek Chauhan * ext/gl/gstglviewconvert.c: Fix incorrect return type in several functions All these should return GstFlowReturn, not gboolean 2016-10-27 08:17:58 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: gstgl: Add GST_EXPORT to all symbols used on Windows This is a requirement for those symbols to be exported in gstgl-1.0.dll when building with the MSVC compiler 2016-10-27 07:29:36 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: Add support for building WGL on Windows Currently only tested with MSVC. 2016-10-27 09:10:03 +0530 Nirbheek Chauhan * ext/gl/gstgloverlay.c: ext/gl: Don't define boolean on Windows with MSVC The headers we include already define boolean on Windows with MSVC, and it leads to a typedef redefinition error with jpeglib.h which tries to redefine it in jmorecfg.h 2016-10-27 07:30:19 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: gstgl: Porting fixes for MSVC with Meson GL/gl.h needs windows.h on MSVC WINAPI should not be used with MSVC. It also causes a build error. 2016-10-21 13:10:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: don't glFinish() everytime a sync point is set At minimum, we only need to glFlush() if we are in a shared GL context environment. Move the glFinish() to when the actual wait is requested which may be never. Improves the throughput on older GL systems without GL3/GLES3 and/or fence sync objects. 2016-10-19 16:11:58 +1100 Matthew Waters * ext/gl/gstopengl.c: * ext/gl/meson.build: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/meson.build: meson: gl: add support for building with dispmanx on the rpi 2016-10-18 22:29:19 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/eglimage: Fix passing the destroy function to gst_egl_image_new_wrapped The function pointer and the user data arguments were swapped in both uses. https://bugzilla.gnome.org/show_bug.cgi?id=769382 2016-10-11 17:06:23 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: Implemented gst_video_overlay_set_window_handle() https://bugzilla.gnome.org/show_bug.cgi?id=772608 2016-10-18 14:11:26 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl: fix detection of glx without gl We need to check for libGL if we may use desktop OpenGL *or* GLX. 2016-10-18 14:10:32 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl: fix incorrect error string Use the winsys variable for an incorrect winsys provided 2016-10-11 16:58:48 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: egl_show should resize the window only if there is no render rectangle set https://bugzilla.gnome.org/show_bug.cgi?id=772699 2016-10-11 16:55:17 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: Fix set_render_rectangle typo https://bugzilla.gnome.org/show_bug.cgi?id=772698 2016-10-05 18:32:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: don't use g_thread_join() to join the navigation thread Using g_thread_join() in _finalize() handlers may result in a deadlock joining the current thread when the last reference is held by a signal handler. e.g.: error 'Resource deadlock avoided' during 'pthread_join (pt->system_thread, NULL)' The backtrace looks like this: [...] g_thread_join () gst_gl_window_finalize () gst_gl_window_x11_finalize () g_object_unref () g_value_unset () g_signal_emit_valist () g_signal_emit () gst_gl_window_send_mouse_event () gst_gl_window_mouse_event_cb () g_main_dispatch () [..] g_main_loop_run () gst_gl_window_navigation_thread () g_thread_proxy () start_thread () clone () 2016-10-05 18:28:48 +1100 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: fix leak of upload library object When only linking the element, the upload object will be created from _transform_caps() but will never be unreffed as the only case is in _stop(). Add an unref if non-NULL to a new finalize handler for this case. 2016-09-29 11:45:57 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglupload.c: tests/gl: make sure all GL commands are executed on the GL thread e.g. the final glGetError() must also be completed on the GL thread 2016-09-28 18:04:21 +1000 Matthew Waters * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: gl/win32: remove egl implementation It hasn't been used in ages and is dead code. 2016-05-05 15:53:57 +0900 Gwang Yoon Hwang * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: gl/dispmanx: Implements set_render_rectangle to adjust the position of window We cannot set the x, y coordinate of the video frame at the dispmanx at this point. We need to teach dispmanx backend to understand about set_render_rectangle API to draw a video with other UI. This patch keeps the current behavior which places video frame at the center of the display if there is no set_render_rectangle call to the dispmanx window. https://bugzilla.gnome.org/show_bug.cgi?id=766018 2016-09-28 15:20:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglviewconvert.h: gl: add necessary padding bytes to all public structs 2016-09-22 18:19:36 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: also free the GWeakRef when removing dead contexts Otherwise we leak GWeakRef's. Found with make -C tests/check libs/gstglcontext.valgrind 2016-09-19 16:54:43 +1000 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: reconfigure on passthrough changes Fixes an assertion when moving from passthrough to non-passthrough Without an explicit reconfigure, glfiter won't have created the GL resources such as the FBO, GL bufferpool, etc and basetransform will allocate sysmem buffers instead. 2016-09-09 23:24:01 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: meson/gl: use separate deps for gl and glx e.g. passing with_gl_api=gles2 would still build the glx code but not be linking against the libGL library which is where the glX* functions are located and would result in a linker error. Solved by checking for the libGL library if either opengl or glx may be needed and then disabling the corresponding deps as requested. 2016-09-09 11:08:53 +1000 Matthew Waters * ext/gl/meson.build: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: meson: add some starting build files for GL Currently only works on linux with egl/glx + wayland/x11 but the general principals have been layed out for adding the other GL platforms/winsys'. 2016-09-07 20:11:55 +0100 Alistair Buxton * tests/examples/gl/clutter/Makefile.am: gl/examples: Really remove references to $(GST_PLUGINS_GL_*). These seem to have been missed in the previous commit to this file. https://bugzilla.gnome.org/show_bug.cgi?id=771023 2016-09-07 20:07:26 +0100 Alistair Buxton * gst-libs/gst/gl/Makefile.am: gl: Remove duplicate GL_CFLAGS in Makefile.am. https://bugzilla.gnome.org/show_bug.cgi?id=771021 2016-09-05 14:44:24 +1000 Alessandro Decina * ext/gl/gstgluploadelement.c: glupload: create the GstGLUpload object in ::transform_caps Previously it was created in the init function and destroyed in ::stop, which lead to segfaults when reusing the element. Now the upload object is created in ::transform_caps if it is NULL, which is the earliest we need it. The other vfuncs already bail out if the upload object is NULL, which means that negotiation wasn't done. 2016-08-31 04:26:43 +1000 Jan Schmidt * gst-libs/gst/gl/gstglframebuffer.h: gl: Remove extra duplicate typedef of GstGLFramebuffer It's triggering a warning building git master on OSX 2016-08-29 16:57:42 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests/glupload: support opengl3 properly instead of spewing GL errors 2016-08-29 16:52:44 +1000 Matthew Waters * pkgconfig/gstreamer-gl.pc.in: gl/pkgconfig: add the lib include dir to the list of includes 714d8aa in core removed this include dir from it's pkgconfig file. https://bugzilla.gnome.org/show_bug.cgi?id=770523 2016-08-29 15:43:10 +1000 Alessandro Decina * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglupload.c: glupload: fix tests and check for the new RECONFIGURE behaviour The tests were broken since 91fea30, which changed glupload to return GST_GL_UPLOAD_RECONFIGURE if the texture target in the input buffers doesn't match the texture-target configured in the output caps. This commit fixes that and adds more checks for the new behaviour. 2016-08-22 17:18:27 +1000 Alessandro Decina * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gstglupload: make the GLMemoryUpload method output the correct texture-target Now when used with video/x-raw as input, the GLMemoryUpload method checks for ->tex_target in input GLMemory(es) and sets the output texture-target accordingly. Fixes video corruption with a pipeline like avfvideosrc ! video/x-raw ! glimagesink where on macos avfvideosrc pushes RECTANGLE textures but glupload was configuring texture-target=2D as output. 2016-08-26 02:07:27 +1000 Jan Schmidt * ext/gl/gstglvideomixer.c: gl: Update glvideomixer doc 2016-08-26 02:06:00 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglviewconvert.c: gl: Add/update docs for glviewconvert, glstereomix Add some example pipelines for glstereomix, and fix up the example pipelines for glviewconvert 2016-08-26 00:29:34 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: glstereomix: Fix caps negotiation The videoaggregator negotiation sequence changed some time back and broke glstereomix. Instead of doing nego incorrectly in the find_best_format() vfunc, do it directly in the update_caps() method. 2016-08-25 15:26:49 +1000 Jan Schmidt * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix texture target fixation Don't set the chosen texture-target into the wrong structure. The input caps may not be writable, and in any case - the intention was to configure the othercaps. Also, remove an extra unref - the othercaps ref is consumed by gst_caps_make_writable already. 2016-07-26 19:55:13 +0200 Xabier Rodriguez Calvar * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: implement GstVideoDirection interface It implements now this interface with its video-direction property. Values are changed to GstVideoOrientationMethod but they have the same value than the originals. https://bugzilla.gnome.org/show_bug.cgi?id=768687 2016-08-12 21:21:45 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: Add support for Meson as alternative/parallel build system https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller Matej Knopp Jussi Pakkanen (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. 2016-08-19 15:35:49 +1000 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: rewrite the inverse transformation logic It now returns the correct values for both orthographic and perspective projections and takes into account the aspect ratio of the video, handles the Y-flipping in GL and by us and uses some more helpers from graphene. 2016-07-01 16:18:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: marshal gst_gl_window_resize through the window loop saves having every caller do it themselves. 2016-06-30 23:06:43 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: use multi-threaded safe event wayland API Multiple threads may be accessing the wayland fd at the same time which requires the use of special wayland API to deal with to ensure nobody will steal reads and cause a stall for anyone else. 2016-07-01 00:15:55 +1000 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: gl/examples/fxtest: fix up for wayland support - Pass the wayland display to gst - Redrawing on resize is no longer needed. 2016-08-16 20:33:21 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstegl.h: gl/egl: fix inverted typedef 2b6841d had an inverted typedef defining ginptr and EGLAttrib. Fix that. 2016-08-16 16:51:02 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstegl.h: gl/build: add configure check for possibly missing EGLAttrib Fixes the build on older android targets. 2016-07-13 17:15:44 +0800 Song Bing * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl/dmabuf: Wrong attribute list type for EGL 1.5 For EGL 1.5 spec, the attribute list type should be EGLAttrib. https://bugzilla.gnome.org/show_bug.cgi?id=768602 2016-08-15 16:14:25 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstglcontext.c: glcontext: fix race joining thread on finalize https://bugzilla.gnome.org/show_bug.cgi?id=769939 2016-08-04 23:14:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: add missing rgb16 and bgr16 video formats in switch Fixes an assertion that code should not be reached https://bugzilla.gnome.org/show_bug.cgi?id=769462 2016-07-27 10:55:01 +0800 Haihua Hu * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: Fix glimagesink cannot show frame when connect to qmlglsrc When connect to qmlglsrc, x11 event loop will be replace by qt event loop which will cause the window cannot receive event from xserver, such as resize https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-08-02 17:21:20 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglupload.c: glupload: Use bufferpool to allocate new buffer in GLTextureUploadMeta To improve performace of upload with GLTextureUploadMeta, use bufferpool instead of allocating new buffer every time. https://bugzilla.gnome.org/show_bug.cgi?id=769293 2016-07-27 14:48:50 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: move unsetting queue_resize to _resize() instead of _draw() Makes infinitely more sense and implementation were expecting that behaviour anyway and would enter a resize, draw, resize, draw, ... cycle instead of only resizing once. 2016-08-01 14:12:35 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: Fix horizontal/vertical flip matrizes They were swapped. https://bugzilla.gnome.org/show_bug.cgi?id=769371 2016-07-26 16:01:19 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: remove unused to_quit variable It was always 0 and never set to anything meaningful. 2016-07-26 15:57:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: add compatibility definition for GL_DEPTH_STENCIL_ATTACHMENT GLES2 doesn't have it defined... 2016-07-15 13:39:54 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglpixelformat.c: * gst-libs/gst/gl/gstglutils.h: glfilter: rewrite subclasses for filter_texture() occuring on GL thread There's no need for the jump to an extra thread in most cases, especially when relying solely on a shader to render. We can use the provided render_to_target() functions to simplify filter writing. 2016-07-12 15:34:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.h: glutils: remove unused GstGLDisplayProjection 2016-07-12 15:29:29 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glcontext: remove not thread-safe get/set_error() Use GError's instead if necessary. 2016-07-12 12:59:57 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * tests/check/libs/gstglcontext.c: glframebuffer: rewrite for a more consistent API Facilities are given to create fbo's and attach GL memory (renderbuffers or textures). It also keeps track of the renderable size for use with effective use with glViewport(). 2016-07-12 00:30:22 +1000 Matthew Waters * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: use GLMemory for accessing textures everywhere This simplifies and consolidates a lot of duplicated code creating and modifying textures. 2016-07-11 22:44:16 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: rename draw_texture to draw_fullscreen_quad And remove unused arguments. 2016-07-11 22:31:04 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add memory type for renderbuffer's Soon to be used for framebuffers for e.g. depth buffers or throwaway color buffers. 2016-07-11 22:28:42 +1000 Matthew Waters * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: glformat: define our own set of formats from the GL defines also add some depth/stencil formats 2016-07-11 22:24:43 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: fix xray to use the correct function Instead of duplicating the sin effect 2016-07-11 21:29:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: assert for a valid allocator instead of segfaulting 2016-07-18 17:43:23 +0100 Tim-Philipp Müller * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl: wayland: improve debug message when connecting to display And another copy'n'paste-o. https://bugzilla.gnome.org/show_bug.cgi?id=768929 2016-06-30 21:50:12 +1000 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix transformation matrix usage Calling glUniformMatrix before the shader is bound is invalid and would result in errors like: GL_INVALID_OPERATION in glUniformMatrix(program not linked) Move glUniformMatrix() to after the gst_gl_shader_use() call. 2016-06-30 14:04:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: fix raw data uploader with addition of GstVideoGLTextureType Fixes regression from 989200820d43c78fb179d7984827800d83787390 https://bugzilla.gnome.org/show_bug.cgi?id=768217 2016-06-29 23:55:18 -0400 Olivier Crête * gst-libs/gst/gl/gstglcolorconvert.c: glvideoconvert: RG/LA is available in OpenGL ES 3, so let that through 2016-06-24 13:41:11 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "Revert "gl/eagl: try getting a gles3 context"" This reverts commit eb142736318463e6e553c21707ba0d716f85a46f. vtdec now successfully outputs textures that can be converted by glcolorconvert in GLES3 contexts. 2016-06-28 13:51:22 +1000 Matthew Waters * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glmemory: add the texture type to allocate to parameters Rather than assuming something. e.g. zerocopy on iOS with GLES3 requires the use of Luminance/Luminance Alpha formats and does not work with Red/RG textures. 2016-06-28 13:09:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't assume Red/RG textures will be used Take the used texture type from the memory instead. Fixes conversion from multi-planar YUV formats with two components per plane (NV12, NV21, YUY2, UYVY, GRAY16_*, etc) with Luminance Alpha input textures. This is also needed for zerocopy decoding on iOS with GLES 3.x. 2016-06-28 13:02:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: correct precondition for get_gl_version The intention was to assert if both maj and min were NULL (as there would be no point calling the function). Instead if either maj or min were NULL, the assert would occur. Fix that. 2016-06-23 15:57:58 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Only register debug category if dmabuf support is enabled It's not used otherwise currently and causes compiler warnings. 2016-03-22 16:51:53 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/win32/gstglcontext_wgl.c: glcontext/wgl: try wglCreateContextAttribsARB even not gl3 core profile https://bugzilla.gnome.org/show_bug.cgi?id=764018 2016-06-21 18:28:46 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix get_current_gl_api() on win32 Another case of incorrect calling conventions. Using this function on win32 would corrupt the stack pointer and end in massive hilarity. 2016-06-15 12:47:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glsl: fixup external-oes shaders by mangling the required extension Newer devices require using a different GLSL extension for accessing external-oes textures in a shader using the texture() functions. While the GL_OES_EGL_image_external_essl3 should supposedly be supported on a any GLES3 android device, the extension was defined after a lot of the older drivers were built so they will not know about it. Thus there are two possible interpretations of which of texture[2D]() should be supported for external-oes textures. Strict adherence to the GL_OES_EGL_image_external extension spec which uses texture2D() or following GLES3's pattern, also allowing texture() as a function for accessing external-oes textures This adds another mangling pass to convert #extension GL_OES_EGL_image_external : ... into #extension GL_OES_EGL_image_external_essl3 : ... on GLES3 and when the GL_OES_EGL_image_external_essl3 extension is supported. Only uses texture() when the GLES3 and the GL_OES_EGL_image_external_essl3 extension is supported for external-oes textures. Uses GLES2 + texture2D() + GL_OES_EGL_image_external in all other external-oes cases. https://bugzilla.gnome.org/show_bug.cgi?id=766993 2016-05-19 13:31:56 +0300 Guillaume Desmottes * tests/check/elements/glimagesink.c: glimagesink: fix query leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 13:29:15 +0300 Guillaume Desmottes * tests/check/elements/glimagesink.c: glimagesink: properly setup/teardown tests tcase_add_checked_fixture() is suppose to call the setup and teardown functions so the tests don't have to do it manually. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 13:09:41 +0300 Guillaume Desmottes * tests/check/libs/gstglupload.c: glupload: fix shader leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-04-14 18:14:32 +0300 Sergey Borovkov * gst-libs/gst/gl/egl/gstegl.h: qml: Enable qmlglsink for eglfs https://bugzilla.gnome.org/show_bug.cgi?id=763044 2016-06-16 00:46:57 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: tests/glcontext: update test for gen,del_texture removal 2016-06-14 13:48:09 +0800 Haihua Hu * ext/gl/effects/gstgleffectssources.c: gleffects: fix little rectangle that appears at the center of squeeze and tunnel effects These two shader will calculate the vector length and use it as denominator. But length could be zero which will cause undefine behaviour. Add protection for this condition https://bugzilla.gnome.org/show_bug.cgi?id=767635 2016-06-15 18:10:59 +1000 Matthew Waters * gst-libs/gst/gl/gstglsl.c: glsl: add some debugging 2016-06-15 16:08:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: remove unused functions for texture creation/deletion Everyone uses GstGLMemory now and any future code should as well. 2016-06-15 15:47:47 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.h: glfilter: remove unused class fields in/out_tex_id The functionality is not used by any subclass nor are the values set anywhere. 2016-06-15 15:08:39 +1000 Matthew Waters * ext/gl/gstgldeinterlace.c: gldeinterlace: remove dead code accessing filter->in_tex_id It's not set by anyone or anything and gldeinterlace is the only user of it now. 2016-06-15 14:40:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload/meta: remove unneeded texture deletion The textures are managed by the GstGLMemory inside the output buffer. Freeing them prematurely may result in a use-after-free. 2016-05-17 17:14:49 +0300 Guillaume Desmottes * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemorypbo.c: gst-libs: gl, video: use MAY_BE_LEAKED flag https://bugzilla.gnome.org/show_bug.cgi?id=767162 2016-05-28 21:36:04 +0200 Havard Graff * gst-libs/gst/gl/gstglquery.c: gl: glquery: cast to silence compiler warning https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 21:35:37 +0200 Havard Graff * ext/gl/gstgltestsrc.h: gltestsrc: gltestsrc.h already defines GstGLTestSrc And redefinition is not allowed. https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-26 20:16:07 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: always unref the context on a collision Otherwise we will leak GstGLContext's when adding the same context more than once. Fixes a regression caused by 5f9d10f6036068502ad23e1ec86a73e341801ae1 in the gstglcontext unit test that failed with: Assertion 'tmp == NULL' failed 2016-05-20 14:34:37 -0400 Nicolas Dufresne * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: Don't cache buffer pool Pools cannot be used by the two elements at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=766611 2016-05-25 09:09:01 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: win32: Add debug category in gstglcontext_wgl.c https://bugzilla.gnome.org/show_bug.cgi?id=766867 2016-05-16 20:02:28 +0800 Haihua Hu * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glimagesink: support video rotation using transform matrix Add "rotate-method" to glimagesink and apply transform matrix to vertex coordinate to control rotation. https://bugzilla.gnome.org/show_bug.cgi?id=765795 2016-05-24 23:39:27 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: glvideomixer: fix race retrieving the GL context from the display _get_gl_context() can be called concurrently from either propose_allocation() or decide_allocation(). If it so happens that this happens at the same time, the check for whether we already had a GL context was outside the lock. Inside the lock and loop, the first thing that happens is that we unref the current GL context (if valid) as if there was a conflict adding it to the display. If the timing was unlucky, subsequent use of the GL context would be referencing an already unreffed GL context object resulting in a critical: g_object_ref: assertion 'object->ref_count > 0' failed https://bugzilla.gnome.org/show_bug.cgi?id=766703 2016-05-24 23:38:22 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: add some debugging about retrieving GL contexts 2016-05-25 10:01:38 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Re-add accidentially removed GST_DEFINE_MINI_OBJECT_TYPE() 2016-05-23 20:11:17 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Ensure that the debug category is always initalized Before the initializer was only run if dmabuf support was used. https://bugzilla.gnome.org/show_bug.cgi?id=766794 2016-05-24 23:30:09 +1000 Arjen Veenhuizen * ext/gl/gstgltransformation.c: gltransformation: make the pivot-z property READWRITE Instead of just being READABLE. https://bugzilla.gnome.org/show_bug.cgi?id=766818 2016-05-23 10:40:58 +0300 Guillaume Desmottes * ext/gl/gstgltestsrc.c: gltestsrc: fix src_impl leak https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-24 00:55:11 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: g-i: pass compiler env to g-ir-scanner It's what introspection.mak does as well. Should fix spurious build failures on gnome-continuous. 2016-05-19 17:05:33 +0300 Guillaume Desmottes * ext/gl/gltestsrc.c: gltestsrc: fix shaders ref counting The gltestsrc element uses two shaders: color_shader and snow_shader. Those are alternatively assigned to the SrcShader->shader pointer and their reference was transferred to it. Only the SrcShader->shader was unreffed (in _src_shader_deinit()) so only one shader was properly freed, the other one was leaked. Fixed this by giving an extra ref to SrcShader->shader and unreffing the 2 shaders in _src_smpte_free(). https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-19 16:55:31 +0300 Guillaume Desmottes * ext/gl/gstglmosaic.c: glmosaic: fix shader leak gst_gl_mosaic_init_shader() is called twice with test_glmosaic so the first shader was leaked. https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-16 17:11:53 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Unparent internal window before destroying it For some reason DestroyWindow() deadlock if it's called from parent window's KeyPress event. https://bugzilla.gnome.org/show_bug.cgi?id=766533 2016-05-16 15:26:53 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Don't steal parent focus when creating internal window This fix regression introduced by 0acc18c60f6f962cc6553f6047fdb64891bab544. https://bugzilla.gnome.org/show_bug.cgi?id=766520 2016-05-15 13:14:41 +0300 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: demote no platform display debug to info Avoids confusing everyone with a warning that's not always fatal. https://bugzilla.gnome.org/show_bug.cgi?id=746933 2016-05-14 16:32:06 +0300 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: use the affine transformation meta if available downstream We can avoid a render pass if downstream supports the affine transformation meta and increase the performance of some pipelines involving gltransformation. Implemented by checking for the affine transformation in the allocation query from downstream and combining our matrix with that of upstream's (or creating our own). 2016-05-14 16:27:26 +0300 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: gl: take the affine transformation in NDC Provide a function to get the affine matrix in the meta in terms of NDC coordinates and use as a standard opengl matrix. Also advertise support for the affine transformation meta in the allocation query. 2016-05-14 15:50:57 +0300 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: actually attempt to propose an allocation upstream We were always failing the allocation query as a flag was never being set to signal a successful negotiation. Fix by setting the required flag on a successful caps event from upstream. 2016-05-04 12:17:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: gl/egl: replace gsteglimagememory with an EGLImage wrapper That can be passed to GstGLMemoryEGL. This also ports the dmabuf uploader to GstEGLImage and GstGLMemoryEGL. 2016-01-21 22:18:17 +0900 Gwang Yoon Hwang * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglupload.c: gl: implement GstGLMemoryEGL Because current GstEGLImageMemory does not inherit GstGLMemory, GLUpload allocates additional GLMemory and upload the decoded contents from the decoder which uses EGLImage (e.g. gst-omx in RPi). This work adds GstGLMemoryEGL to avoid this overhead. Decoders allocate GstGLMemoryEGL and decode its contents to the EGLImage of GstGLMemoryEGL. And GLUpload uses this memory without allocation of additional textures and blit operations. [Matthew Waters]: gst-indent the sources and fix a critical retreiving the egl display from the memory. https://bugzilla.gnome.org/show_bug.cgi?id=760916 2016-05-04 01:16:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: glmemory: add wrapped data pointers to setup_buffer Allows creating wrapped memories with GstGLAllocationParams. The wrapped pointers will be set in the parameters before being passed to the memory allocation function. 2016-05-04 00:19:44 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: glbasememory: take a pointer as the wrapped gpu handle Allows passing arbitrary data to wrap the the specific memory implementation which is required for some memory implementations. 2016-05-03 19:58:00 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.h: gl: fix gles3 header usage for older platforms Some platforms provide an old version of GLES2/gl2.h and GLES2/gl2ext.h that will fail when including GLES3/gl3.h due to missing typedef's. Seen on the RPi. 2016-04-08 16:47:15 +0800 Haihua Hu * ext/gl/Makefile.am: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstopengl.c: gl: enable gldeinterlace on OpenGL ES 1.Porting the exist deinterlace shader and OpenGL callback to be compatible with OpenGL ES. 2.Add a our blur vertical shader to gldeinterlace. 3.Add a property named “method” to let user choose which deinterlace function to use. Default to choose blur vertical method for better performance. [Matthew Waters]: fix name of greedyh in method property (was greedhy) and port to git master. https://bugzilla.gnome.org/show_bug.cgi?id=764873 2016-04-19 19:43:03 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Port more things to GLES/GL 3 compatibility And move the shader mangling code into a single place instead of having a copy in glcolorconvert and glviewconvert. https://bugzilla.gnome.org/show_bug.cgi?id=765266 2016-04-19 19:27:33 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: GLES3 deprecates texture2D() and it does not work at all in newer versions than 3.3 Use the newer texture() function instead. This fixes glimagesink and other things on various Android devices. https://bugzilla.gnome.org/show_bug.cgi?id=765266 2016-04-20 16:19:55 +0900 Hyunjun Ko * ext/gl/caopengllayersink.m: gl: caopengllayersink: fix a minor warning Fix "unused variable" warning https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 16:00:36 +0900 Hyunjun Ko * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/cocoa: Fix incompatible type warning https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-19 09:30:39 +0300 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Fix indentation 2016-04-19 10:51:14 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: need to clean window_id when state change form READY to NULL When application change pipeline state NULL->READY and then READY->NULL, glimagesink will not clear glsink->window_id. After that, when application change state NULL->READY, the new_window_id is equal to window_id, glimagesink will not set window handle. It will use the internal window but not the window create by application. https://bugzilla.gnome.org/show_bug.cgi?id=765241 2016-04-17 15:45:41 +0100 Heinrich Fink * ext/gl/caopengllayersink.m: gl/caopengllayersink: Actually unset caps_change flag after resize Otherwise, the sink would execute "on_resize" for each frame. https://bugzilla.gnome.org/show_bug.cgi?id=765194 2016-04-17 15:43:20 +0100 Heinrich Fink * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: Apply layer.contentsScale to viewport dims Fixes blurry content on HiDPI screens https://bugzilla.gnome.org/show_bug.cgi?id=765194 2016-04-13 00:43:18 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/cocoa/eagl: don't leak GThread's when dispatching messages gst_gl_context_get_thread() returns a refed pointer, we need to unref it. 2016-04-12 11:14:22 +0100 Luis de Bethencourt * ext/gl/gstgltestsrc.c: gltestsrc: don't dereference null pointer funcs can be NULL, it is one of the two conditions of the OR statement above, so confirm it isn't before dereferencing with funcs->free. CID 1358388 2016-04-06 04:15:40 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: keep the parent buffer around when converting EGLImage to 2D textures e.g. receiving and releasing a buffer from OMX too early will potentially cause textures to be overwritten while/before they are displayed. 2016-04-11 16:43:45 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: glbasemixer: chain up to the parent implementation 2016-04-11 08:34:00 +1000 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: cocoa, eagl: use libdispatch to schedule GL calls Use libdispatch instead of GMainLoop to dispatch GL calls. libdispatch is more optimized and cuts a lot of poll()/pthread_* overhead. 2016-04-11 08:02:45 +1000 Alessandro Decina * gst-libs/gst/gl/gstglwindow.c: glwindow: reduce the number of GMutexes and GConds in send_message() Don't create many short lived locks/conds in gst_gl_window_send_message. This is a micro optimization to save a bunch of pthread_* calls which are expensive on OSX/iOS and possibly other platforms. 2016-04-04 20:55:51 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: videoaggregator: repect the result of find_best_format in the default update_caps We weren't using the result of find_best_format at all. Also, move the find_best_format usage to the default update_caps() to make sure that it is also overridable. https://bugzilla.gnome.org/show_bug.cgi?id=764363 2016-03-23 03:16:11 +0000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: add support for the affine transformation meta 2016-03-23 03:14:40 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: support the affine transformation meta for any texture target 2016-04-05 16:22:49 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: set the current texture to 0 before mapping If we fail mapping, we don't want to use undefined video data in the subclass. 2016-04-04 13:43:30 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: proxy the start-time-* properties from aggregator 2016-03-22 07:19:03 +0000 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimage: perform eglCreateImage in the gl thread while calling eglCreateImage without a GL context current in the executing thread works on the RPi, some other implementations will return errors. Marshall the eglCreateImage to the GL thread to appease these implementations. 2016-04-01 14:58:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: support outputting to multiple draw buffers on GLES3 A similar change that was done to glcolorconvert adding the necessary shader mangling. 2016-03-31 19:50:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: implement multiple render targets for GLES3 There are numerous slight differences required between Desktop GL and GLES3 for multiple render targets. 1. gl_FragData doesn't exist at all and one is required to use 'layout (location = ?) out ...' instead. 2. gl_FragColor doesn't exist, same as 1 3. texture2D() has been deprecated Fortunately most of these have been taken care of with GL3 and the shader mangling already exists so just expand the conditions they are used in. The gl_FragData issue requires a new mangle pass though. We also use this new pass on desktop GL for consistency. 2016-04-01 00:23:25 +1100 Matthew Waters * ext/gl/Makefile.am: gl/build: add missing '\' at the end of the line in MakeFile.am Otherwise the following elements aren't included in the correct variable. Fixes error in 'make distcheck' failing to find gstgltestsrc.h 2016-03-31 20:00:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't use the predefined variable name sample Using 'sample' as a variable name is an error in GLES3 2016-03-22 23:10:24 +1100 Matthew Waters * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: gl/examples: fix switchvideooverlay for wayland and call XInitThreads() for X11 2016-03-21 15:25:21 +1100 Matthew Waters * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/.gitignore: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/gtkvideooverlay.vcproj: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: gl/examples: remove duplicated videooverlay example filtervideooverlay proved the exact same example (only with a extra glfiltercube). 2016-03-21 15:23:41 +1100 Matthew Waters * tests/examples/gl/gtk/3dvideo/main.cpp: gl/examples/3d: additions for wayland support 2016-03-17 23:50:00 +1100 Matthew Waters * ext/gl/effects/gstgleffectssources.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: gldifferencematte: port to gl3/gles2 2016-02-26 20:55:47 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstopengl.c: gltestsrc: port to gles2/gl3 This makes gltestsrc work everywhere \o/ - workaround RPi returning invalid values for positive coords in the checker shader - reduce the number of iterations in the mandelbrot shader for gles2 https://bugzilla.gnome.org/show_bug.cgi?id=751540 2016-02-26 16:57:47 +1100 Matthew Waters * ext/gl/gltestsrc.c: gltestsrc: port smpte pattern to shaders Loosely based on patch by Lubosz Sarnecki https://bugzilla.gnome.org/show_bug.cgi?id=751540 2016-02-26 12:02:15 +1100 Matthew Waters * ext/gl/gltestsrc.c: gltestsrc: implement the circular method https://bugzilla.gnome.org/show_bug.cgi?id=759801 2016-02-25 21:18:31 +1100 Matthew Waters * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: add a generic src framework Any unsupported pattern (circular) results in an error 2016-02-29 20:15:24 +1100 Matthew Waters * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: glsterosplit: remove internal glupload/glcolorconvert They are provided separately as elements and no other element contains the internal references to glupload/glcolorconvert. 2016-03-31 19:43:04 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: gl: add support for building against GLES3 headers with a fallback to GLES2 headers if available. 2016-03-31 19:38:12 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add checking the read implementation format/type on gles2 platforms By default, reading GL_RED or GL_RG us unsupported by glReadPixels unless exposed through GL_COLOR_READ_IMPLEMENTATION_FORMAT/TYPE. This allows downloading multiple-planar video frames where possible. 2016-03-31 19:35:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: rollback map state when subclass map fails Otherwise our state doesn't reflect reality. 2016-03-31 19:31:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: unmap pbo memory on pbo read error Otherwise we are returning failure with a dangling map! Also only unset the NEED_DOWNLOAD flag in download_transfer() if the read actually succeeds. 2016-03-31 19:25:32 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: add glBindFragDataLocation There are some cases where it's needed for binding in/out variables in shaders. e.g. glsl 150 (gl 3.2) doesn't support the 'layout (location = ?)' specifiers in the shader source so we have to bind them ourselves. 2016-03-04 15:50:26 +0900 Vineeth TM * ext/gl/caopengllayersink.m: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgldownloadelement.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsrcbin.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgluploadelement.c: * ext/gl/gstglvideoflip.c: * gst-libs/gst/gl/gstglfilter.c: bad: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763081 2016-03-24 14:08:46 +0200 Sebastian Dröge * tests/examples/gl/gtk/fxtest/fxtest.c: gl/gtk: Fix compiler warning in example fxtest.c: In function ‘main’: fxtest.c:190:3: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] GtkWidget *window; ^~~~~~~~~ 2016-03-22 07:20:59 +0000 Matthew Waters * gst-libs/gst/gl/glprototypes/sync.h: gl/proto: sync operations are available on GLES 3.0 Without the GST_GL_API_GLES2 bit set, we will not even attempt to look for the function pointers in the core library and will fallback to glFlush/glFinish. 2016-03-17 22:43:12 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: unset GL_UNPACK_ROW_LENGTH in opengl3 If the user uploads their own texture without setting the unpack length, then then the result will have the appearance of stride mismanagement due to an incorrect row length. 2016-03-17 16:34:42 +1100 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwtextureshare/main.cpp: gl/examples/qt: restrict the GL API to opengl where needed Until the examples are ported to opengl3/gles2, they will not work with any other GL api. 2016-03-17 16:31:52 +1100 Matthew Waters * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: gl/examples/gtk: call XInitThreads Fixes some sporadic X11 threading assertions. 2016-03-17 03:06:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: remove custom code for setting caps features Just use gst_caps_set_features() instead. 2016-03-17 01:52:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: only allow the same src/sink caps when we are in passthrough mode If we are given caps with extra features (like the overlay composition features), we can only deal with that when we are in passthrough mode. Previously we were bailing entirely and not allowing passthrough filter elements with things like textoverlay. Fixes the following pipeline (assuming glfilter supports passthrough): gl ! textoverlay ! glfilter ! ... ! glimagesinkelement https://bugzilla.gnome.org/show_bug.cgi?id=763756 2016-03-16 22:48:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: deal with the ANY caps feature correctly When transforming, xplode it out into the necessary caps features both with and without the passthough features. Fixes negotiation in the following class of pipelines: gl ! textoverlay ! glupload ! glimagesinkelement https://bugzilla.gnome.org/show_bug.cgi?id=763756 2016-03-16 22:16:34 +1100 Matthew Waters * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: glstereo{mix,split}: allow running on GLES 2/3 It's mostly supported for GLES 2.x, fully supported on GLES 3.x 2016-03-11 01:40:39 +1100 Matthew Waters * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: gleffects; give each effect a unique long name and description Gives applications that scrape the factory details more detailed and unique details on the exact element. https://bugzilla.gnome.org/show_bug.cgi?id=760566 2016-03-10 17:46:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: glshader: some compatibility changes for GL 1.4 GL 1.4 (with GL_ARB_shader_objects) doesn't have glIsProgram or glIsShader equivalents. As they are simply assertions, skip them when there isn't a valid function pointer. 2016-03-10 00:29:41 +1100 Matthew Waters * ext/gl/gstglfilterapp.c: glfilterapp: update for the use of shaders Fixes black output when placed in pipelines (using the default drawing). https://bugzilla.gnome.org/show_bug.cgi?id=763365 2016-03-10 00:27:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: retrieve the shader attributes from the GL thread Otherwise we will receive bogus values https://bugzilla.gnome.org/show_bug.cgi?id=763365 2016-03-10 00:24:48 +1100 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: gl/examples/cube*: choose opengl by default The examples don't work with any other GL API. Also fix the yuv example to not translate the cube out of the clipping area. 2016-03-10 00:23:14 +1100 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: gl/examples/fxtest: add needed glupload to the pipeline Fixes a negotiation failure in the example 2016-03-09 11:58:43 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: Fix window memory leak https://bugzilla.gnome.org/show_bug.cgi?id=763356 2016-03-08 02:06:46 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: signal continuation in reset We want to iterate over all the pads, not just the first one. Fix by returning TRUE in the GstAggregatorPadForeachFunc. Removes a GST_IS_GL_CONTEXT() assertion on shutdown with >2 inputs using gst-launch. 2016-03-08 00:35:22 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * tests/check/libs/gstglcontext.c: gldisplay: make readding the same context a no-op With e38af2304427db908a16bbae0e60aa68be1ba5b5 returning the correct contexts, gst_gl_display_add_context() was susceptible to causing infinte loops when adding the same GstGLContext more than once. Fix and add a test for gst_gl_display_add_context(). Fixes glvideomixer gst-validate tests. 2016-03-07 08:52:54 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: Revert "libgstgl: cocoa, eagl: don't marshal GL calls to the context thread" This reverts commit 797d6415dfd6e111efb2cab544958a67cbf22b17. We're frozen for 1.8.0 release and this change might have bigger impact. 2016-03-07 16:03:25 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: cocoa, eagl: don't marshal GL calls to the context thread Execute GL calls without marshalling them to the context thread. In the cocoa and eagl backends calling gst_gl_context_activate is cheap and therefore calling it on the current thread and serializing GL calls with a per-context lock is more efficient (faster and has less overhead) than marshalling everything to the context thread. This optimization cuts a large overhead in g_poll (continuously waking up the context thread) and in g_mutex_*/g_cond_* (waiting for results from the context thread). 2016-03-05 17:16:24 +0100 Mark Nauwelaerts * gst-libs/gst/gl/gstgldisplay.c: gldisplay: really retrieve glcontext for a specific thread When requesting a glcontext (regardless of thread), the result was correct. However, when requesting current glcontext on a specific thread, it could come up with a glcontext active on another thread. https://bugzilla.gnome.org/show_bug.cgi?id=763168 2016-03-06 19:35:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: misc docs fixes/additions 2016-03-06 19:32:21 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: gl*memory: document new functionality and objects 2016-03-05 19:48:45 +0100 Mark Nauwelaerts * gst-libs/gst/gl/gstglfilter.c: glfilter: handle some more unfixed fields when fixating caps 2016-03-03 19:45:43 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbasememory.c: glbasememory: Don't change maxsize at run-time Maxsize is initialized once and should never change. Allocating data should have no impact on the selected max size for this memory. This causing memory map failure as the maxsize would become smaller then size. This happened when using direct rendering in avviddec on GL that does not support PBO transfer. https://bugzilla.gnome.org/show_bug.cgi?id=763045 2016-02-17 20:13:21 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimagememory: add compatibility definitions for EGL dmabuf e.g. the RPi doesn't have them defined 2016-02-26 08:34:11 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add a method to add a context to another share group Intended for use with wrapped contexts that are created shared with gst's gl contexts in order to manage the internal sharegroup state correctly. e.g. with caopengllayer (which is used in glimagesink and caopengllayersink on OS X), we create a CGL context from the gst context and the sharing state was not being correctly set on either GL context and gst_gl_context_is_shared() was always returning FALSE. With 11fb4fff80b63b9d67a731d4bb238b6c0a29d774 only flushing with multiple shared contexts, the required flush was not occuring causing screen corruption or stuttering. Note: this didn't affect GST_GL_API=opengl pipelines https://bugzilla.gnome.org/show_bug.cgi?id=762620 2016-02-24 10:45:17 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmosaic.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: glmixer: iterator didn't advance in continue statement Leading to a deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-02-22 21:03:14 +1100 Matthew Waters * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: fix the build 2d287812 was incomplete 2016-02-22 20:49:52 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: error out if the configured GL API is unsupported by our element https://bugzilla.gnome.org/show_bug.cgi?id=759801 2016-02-18 14:32:23 +0000 Julien Isorce * pkgconfig/gstreamer-gl-uninstalled.pc.in: uninstalled.pc: add support for non libtool build systems Currently the .la path is provided which requires to use libtool as mentioned in the GStreamer manual section-helloworld-compilerun.html. It is fine as long as the application is built using libtool. So currently it is not possible to compile a GStreamer application within gst-uninstalled with CMake or other build system different than autotools. This patch allows to do the following in gst-uninstalled env: gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \ gstreamer-gl-1.0) Previously it required to prepend libtool --mode=link https://bugzilla.gnome.org/show_bug.cgi?id=720778 2016-02-18 16:21:38 +0000 Julien Isorce * gst-libs/gst/gl/gstgldebug.c: gldebug: make sure debug is initialized when calling gst_gl_insert_debug_marker Usually gl debug is initialized in gst_gl_context_create_thread. But this function is not used when using the GstGLContextGPUProcess from ChromiumGStreamerBackend. Received signal 11 SEGV_MAPERR 000000000000 gst_debug_category_get_threshold gst_gl_insert_debug_marker gst_gl_base_filter_gl_start 2016-02-18 10:33:20 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/utils/gles_versions.h: * gst-libs/gst/gl/utils/opengl_versions.h: gl: Fix compiler warning about unused const variable with gcc 6 CC libgstgl_x11_la-gstglcontext_glx.lo In file included from gstglcontext_glx.c:39:0: ../utils/opengl_versions.h:52:43: error: ‘gles2_versions’ defined but not used [-Werror=unused-const-variable] static const struct { int major, minor; } gles2_versions[] = { ^~~~~~~~~~~~~~ 2016-02-18 10:29:21 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Move private headers from SOURCES to noinst_HEADERS 2016-02-17 13:00:46 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: insert the debug marker from the GL thread https://bugzilla.gnome.org/show_bug.cgi?id=761538 2016-02-17 11:42:23 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: remove unsed reconfigure variable 2016-01-13 13:17:56 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: don't push a reconfigure event from the GL thread Doing so may cause deadlocks when other elements attempt destroy or created GL resources. https://bugzilla.gnome.org/show_bug.cgi?id=760559 2016-01-21 10:40:36 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglvideomixer.c: glvideomixer: don't leak pad's vertex buffer on release_pad https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-02-17 01:08:18 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glmixer: Remove usage of GstGLMixerFrameData Subclasses can just iterate over the list of pads themselves https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-01-13 14:41:22 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: don't hold the object lock while calling into GL Doing so can deadlock between the GL thread and the object lock e.g. when performing reconfigure events in glimagesink on a resize event. https://bugzilla.gnome.org/show_bug.cgi?id=760559 2016-02-16 08:48:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: Remove leftover g_prints One was commented out, but we also don't use // comments :) 2016-02-16 14:41:37 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: gldebug: use the correct spelling for behavior The headers use the american spelling of behavior not the UK/AUS version with the extra U. 2016-02-16 13:58:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldebug.c: glcontext: don't enable GL debug for messages that won't be logged This is an optimization to avoid pointless string processing. 2016-02-16 13:01:20 +1100 Alessandro Decina * ext/gl/gstglvideoflip.c: glvideoflip: don't ignore method changes when caps aren't set (yet) 2016-02-10 10:31:19 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglsyncmeta.c: gl: syncmeta: define GL_TIMEOUT_IGNORED in more portable way 2016-02-10 16:37:22 +1100 Alessandro Decina * gst-libs/gst/gl/gstglshader.c: gstglshader: cache uniform locations Avoid redundant calls to glGetUniformLocation. The results can be cached once the shader has been linked. 2016-02-10 13:08:43 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcontext.c: gstglcontext: micro optimization to gst_gl_context_thread_add Invoke the callback right away when called on the context thread. Removes overhead when nesting libgstgl calls (for example when working with the sync meta). 2016-02-09 13:08:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: add compatibility definition for GL_TIMEOUT_IGNORED 2016-02-09 12:14:04 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: separate out gpu/cpu waits. CPU waits are more expensive and are only required if the CPU is ever going to access the data. GPU waits perform inter-context synchronisation and are cheaper as they don't require CPU intervention. 2016-02-08 12:23:12 +1100 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: gleffects: identity: add the shader to the hash table So that we don't recreate it every frame and leak memory. https://bugzilla.gnome.org/show_bug.cgi?id=761578 2016-02-05 10:43:49 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/wayland/wayland_event_source.h: gl: add .def file for msvc builds Also internalize some API from being exported. 2016-02-04 12:17:31 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglquery.c: glquery: remove unnecessary pointer check All uses of query->context in gstglquery.c assume it exists. We can assume this as well before unrefing it. Furthermore, gst_object_unref() will just silently return if it ever were to not exist. 2016-02-04 17:31:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: enable qos by default Improves the responsiveness of the pipeline when resources are close/above the limitations of the hardware. Any subclass that wishes not to enable qos can do so themselves. https://bugzilla.gnome.org/show_bug.cgi?id=761519 2016-02-03 10:59:23 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: reconfigure the src when changing to/from passthrough Otherwise it's very possible that any GL resources have not been created yet. 2016-02-03 10:52:08 +1100 Matthew Waters * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: correctly update the output caps on method changes When changing methods we may need different output caps. 2016-02-02 18:36:34 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "gl/eagl: try getting a gles3 context" This reverts commit 96b9666d596be115fd4b446ef846508b7fd05c24. This reverts commit d11385d167d8843604ea23a05e2dea40b8bbac35. This breaks the texture sharing with the applemedia elements as CVOpenGLESTextureCache seems to have an arbitrary restriction on GLES2 only. 2016-02-02 16:21:14 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't skip subset structures We may need them to transform into a different set of formats. Fixes YUV->YUV with two glcolorconverts, e.g: format=I420 ! glcolorconvert ! glcolorconvert ! format=NV12 2016-02-02 16:19:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: always call gl_start when not called already Fixes elements transitioning out of passthrough mode using GL resources that hadn'e been allocated yet. 2016-02-02 15:14:25 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix RGB,rectangle->planar YUV conversion Converting to GRAY is no fun. Another case of normalized vs unnormalized texture coordinates. 2016-02-02 13:51:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix YUY2/UYVY,rectangle->RGB conversion 1.0 / width does not offset by one pixel in rectangular textures (which use unnormalized coordinates). Provide the actual pixel offset as a uniform to the shader. 2016-02-02 12:50:26 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: perform better negotiation 1. Correctly describe what we can caps we can transform to/from. i.e. no YUV->YUV or GRAY->YUV or YUV->GRAY (except for passthrough). 2. Prefer similar formats and ignore incompatible formats on fixation. 2016-02-01 12:23:32 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: gstglwindow: initialize navigation_loop to NULL Useful when gst_gl_window.c::gst_gl_window_new is not used. This is the case when using a custom GstGLWindow. (ex: GstGLWindowGPUProcess from Chromium) 2016-02-01 09:26:37 +0000 Tim-Philipp Müller * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl: eagl: fix build gstglcontext_eagl.m:238:45: error: too few arguments to function call, expected at least 4, have 3 2016-02-01 15:13:03 +1100 Alessandro Decina * ext/gl/gstgldownloadelement.c: gldownload: allow video/x-raw as input ...and just passthrough. This is useful for pipelines where downstream must be non-GL but upstream can optionally be GL. 2016-02-01 12:57:32 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: try getting a gles3 context Fallback to a gles2 context if that fails 2016-01-21 16:10:48 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglvideomixer.c: glvideomixer: fix checker vbo leak https://bugzilla.gnome.org/show_bug.cgi?id=760925 2016-01-29 10:35:15 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/glprototypes/base.h: glprototypes: fix parameter type of glGenBuffers The number of buffers should be GLsizei instead of GLuint. https://bugzilla.gnome.org/show_bug.cgi?id=761272 2015-12-08 14:09:58 +0800 Haihua Hu * ext/gl/effects/gstgleffectssources.c: gleffects: fix gleffects fisheye shader compile error On some embedded systems, sqrt() is not supported in the shader, use the actual value of sqrt(2) instead. Signed-off-by: Haihua Hu Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=761271 2016-01-29 14:03:26 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: par may not exist in the caps Fixes a critical in the gst-validate tests: gst_structure_fixate_field_nearest_fraction: assertion 'gst_structure_has_field (structure, field_name) 2016-01-29 12:45:57 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: glcontext: back out unintended lost_context changes 2016-01-28 16:39:07 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/utils/opengl_versions.h: egl: implement selecting opengl3 contexts 2016-01-28 14:31:33 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/egl: pass the error value to get_error_string() 2016-01-29 04:50:42 +1100 Jan Schmidt * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: pkg-config: Don't generate and install pkg-config with relative paths Don't put relative paths in pkg-config files, including uninstalled ones. For those, use @abs_topbuilddir@ and @abs_topsrcdir@ as we do elsewhere. Remove libraries= directives, which doesn't seem to be a pkg-config variable that actually exists, but has been in all our pkg-config files for as long as they've existed. 2015-10-14 21:13:57 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: videoaggregator: don't do caps processing that is not overridable Allows the subclass to completely override the chosen src caps. This is needed as videoaggregator generally has no idea exactly what operation is being performed. - Adds a fixate_caps vfunc for fixation - Merges gst_video_aggregator_update_converters() into gst_videoaggregator_update_src_caps() as we need some of its info for proper caps handling. - Pass the downstream caps to the update_caps vfunc https://bugzilla.gnome.org/show_bug.cgi?id=756207 2016-01-27 20:23:21 +1100 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: return HARDWARE from get_balance_type 2016-01-27 20:04:00 +1100 Matthew Waters * ext/gl/gstglsinkbin.c: * ext/gl/gstglsinkbin.h: glsinkbin: add glcolorbalance element This makes playbin not plug videobalance as glcolorbalance already exists and implements the GstColorBalance interface. 2016-01-27 19:56:36 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglcontrolbindingproxy.c: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: gl: move control binding proxy implementation from glvideomixer Other elements may need to use it's functionality 2016-01-27 18:17:06 +1100 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: create the shader if it doesn't exist in the render callback Changing the properties may result in glcolorbalance moving from passthrough to non-passthrough and we weren't creating the shader in that case. 2016-01-25 19:11:38 +1100 Matthew Waters * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: incorporate the aspect ratio into the scale_x calculations 1. Otherwise rotating the video will clip and show black bars due to gltransformation's implementation. 2. The other option of make gltransformation aspect-agnostic produces incorrect output with perspective transformations. 2016-01-21 23:13:36 +0100 Holger Kaelberer * gst-libs/gst/gl/android/gstglwindow_android_egl.c: glwindow: Fix android build https://bugzilla.gnome.org/show_bug.cgi?id=760972 2016-01-19 13:20:23 +0000 Tim-Philipp Müller * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectscurves.c: * ext/gl/effects/gstgleffectscurves.h: gl: fix compiler warnings with gcc-6 In file included from effects/gstgleffectrgbtocurve.c:25:0: effects/gstgleffectscurves.h:174:32: error: 'xray_curve' defined but not used static const GstGLEffectsCurve xray_curve = { ... 2016-01-19 08:39:58 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: libs: g-i: fix init section to avoid compiler warnings ..GstPlayer-1.0.c: In function ‘main’: ..GstPlayer-1.0.c:587:3: warning: implicit declaration of function ‘gst_init’ https://bugzilla.gnome.org/show_bug.cgi?id=760090 2016-01-16 17:14:54 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglfilter.c: glfilter: First make caps writable in fixate_caps(), then truncate them Truncating requires writable caps. 2016-01-16 17:12:29 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Caps passed to fixate_caps() are not owned by us and guaranteed to be fixed So don't try to fixate them, which takes ownership and steals them from basetransform. https://bugzilla.gnome.org/show_bug.cgi?id=760696 2016-01-16 16:55:42 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglbufferpool.c: Revert "glpool: fix caps refcount issue" This reverts commit 3bdcdedfa00b87f1db505218789178318a16c743. gst_caps_replace() takes a new reference already, if there is a problem then it is elsewhere. And there are a few problems, see https://bugzilla.gnome.org/show_bug.cgi?id=760696 2016-01-15 17:00:55 +1100 Matthew Waters * gst-libs/gst/gl/gstglquery.c: glquery: provide compat definition for GL_QUERY_RESULT e.g. android doesn't have it While we're here move a state specific assertion after the supported check. Removes an assertion on GLES 2016-01-15 16:07:27 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: add compatibility definition of GLint64 e.g. anrdoid doesn't have it 2016-01-15 14:00:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glpool: fix caps refcount issue The caps are from an allocation query which are transfer none but were being treated as transfer full. 2016-01-11 13:30:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglmemory.c: glmemory: log the time for glTexSubImage/glReadPixels 2016-01-08 18:36:54 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/query.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * tests/check/libs/gstglquery.c: gl: add a gstglquery object for arbitrary GL queries Currently only GL_TIME_ELAPSED and GL_TIMESTAMP are supported 2016-01-11 17:22:26 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: gldebug: implement a delayed debug system The messages are stored by gst_gl_async_debug_store_log_msg() and output later by a corresponding store(), output() or an unset()/free(). Some wrapper macros are provided to avoid callers explicitly using __FILE__, GST_FUNCTION and __LINE__ 2016-01-11 17:26:08 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: gldebug: use gst_info_vasprintf in insert_debug_marker() Allows expansion of GST_PTR_FORMAT and GST_SEGMENT_FORMAT arguments. 2016-01-15 11:22:40 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: * ext/gl/gstopengl.c: gl: add a videoflip element Behaves exactly the same as the non-GL videoflip element 2016-01-15 00:04:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: recreate the fbo on caps changes The width/height may change which requires recreating the depth buffer. 2016-01-15 00:02:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: glbasefilter: add a class function on set_caps (from GL) This is simply a convenience to avoid duplicating the thread marshalling on set_caps. 2016-01-15 00:00:29 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: always build a valid mvp matrix The default case is to build an identity matrix. 2016-01-14 19:03:04 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: support negative scales A scale of -1.0 means to flip the video. 2016-01-14 18:42:05 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: implement passthrough handling 2016-01-14 17:45:03 +1100 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: implement navigation events Reverses the transformation applied through the properties and forwards the event. The process for finding the coordinates on the video are as follows: 1. Convert the given pointer_x and pointer_y to model space at the near and far planes 2. Get the equation of the video plane 3. Find where the ray in 1 intersects the plane 4. Profit! 2016-01-14 16:59:12 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: remove reduntant glimagesink from debug logging 2016-01-14 16:57:40 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11/navigation: add button press to the selected event mask Otherwise we won't get the button press events and GstNavigation fails. 2016-01-14 16:00:00 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: try harder to passthrough This makes a pipeline like: ... ! video/x-raw(memory:GLMemory),format=UYVY ! glcolorconvert ! video/x-raw(memory:GLMemory),format={UYVY, NV12} ! ... passthrough instead of converting UYVY => NV12. The conversion would happen before this change since the element (and basetransform) transform the src caps to format={NV12, UYVY} (since NV12 comes first in the glcolorconvert:src template) and then the default caps fixate func would fixate to NV12. Blah. Also there's no need to intersect against the template caps in ::transform_caps since basetransform does that right after calling the vfunc. 2016-01-12 18:31:29 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorbalance.h: * ext/gl/gstopengl.c: gl: implement a colorbalance element It performs the exact same operation as videobalance but with opengl shaders and was tested with glvideomixer by comparing frames from videobalance and glcolorbalance. 2016-01-12 18:21:50 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: implement glBlendFunc and glBlendEquation Allows more blending options than just A over B e.g. frame comparisons are now possible. glvideomixer name=m sink_0::zorder=0 sink_1::zorder=1 sink_1::blend-equation-rgb={subtract,reverse-subtract} sink_1::blend-function-src-rgb=src-color sink_1::blend-function-dst-rgb=dst-color ! glimagesinkelement videotestsrc pattern=checkers-4 ! m.sink_0 videotestsrc pattern=checkers-8 ! m.sink_1 2016-01-08 18:38:46 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: gldebug: add a specific category for the debug spam from the driver 2016-01-07 20:56:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglmemorypbo.c: glbasememory: Free the actual memory object when requested Otherwise we are leaking ~400B on each GstMemory allocation. Freeing in the base class matches the GObject semantics. 2016-01-07 20:54:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: don't double read pixels The optimistic download_transfer was not setting the required flag to not perform glReadPixels on subsequent map (READ). resulting in glReadPixels happening twice. 2016-01-07 18:47:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: glmemory: expose gst_gl_memory_texsubimage Removes extremely similar code from glmemorypbo. 2016-01-07 18:05:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglfeature.c: glfeature add a specific debug category Saves having to trawl through the 'default' category when function retrieval goes wrong. 2016-01-07 14:08:39 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: only flush with a shared context The wait code will flush for us for single context pipelines. 2016-01-07 14:02:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * tests/check/libs/gstglcontext.c: glcontext: implement checking whether a context has been shared Some operations are unnecessary when running with only a single GL context. e.g. glFlush when setting a fence object as the flush happens on wait. API: gst_gl_context_is_shared 2016-01-06 16:25:38 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: implement usage of a buffer pool Saves unnecessary glGenTextures and glDeleteTextures which may have a non-trivial cost. 2016-01-06 15:50:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: fix copying GstGLAllocationParams Fixes a GST_IS_GL_CONTEXT critical 2016-01-06 15:44:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: remove unused code https://bugzilla.gnome.org/show_bug.cgi?id=759679 2016-01-04 20:26:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glupload: always add texture-target field to GL caps 1. Various elements/base classes only perform a subset check on accept-caps 2. Some GL elements have texture-target in their pad template 3. When checking subsets, only the caps to check are allowed to contain extra fields. If the 'template' caps have extra fields, the subset fails. Thus without texture-target on the caps, various accept-caps implementations were failing. Also, add some convenience functions for setting and retrieving texture targets to/from GValue. https://bugzilla.gnome.org/show_bug.cgi?id=759860 2015-12-29 18:16:04 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: passthrough composition caps features Don't unconditionally add it to any and all caps transformations. https://bugzilla.gnome.org/show_bug.cgi?id=759860 2016-01-04 01:03:08 +1100 Jan Schmidt * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: Fix stereoscopic handling w/ texture-target The addition of texture-target negotiation broke stereoscopic handling when not in passthrough mode, so fix that. 2015-12-30 12:12:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: fix wrapping data on GL 2.1 GL 2.1 only supports pbo upload. The wrapped data pointer was only being set on the pbo memory and on the glmemory so when a download was requested (in GL 2.1), glmemory was allocating a new data pointer and thus not returning the wrapped data. 2015-12-30 12:11:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: only create a pbo memory if the context actually supports it e.g. GL <= 2.0 does not support pbo usage and GL 2.1 only supports pbo upload. 2015-12-30 12:09:29 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: glmemory: small code reformat makes the alloc_params selections fit on a single line. 2015-12-30 12:06:17 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: tests/glmemory: output data pointer values on failure Allows quicker inspection of what failed. 2015-12-29 17:04:57 +1100 Matthew Waters * ext/gl/gstgleffects.c: gleffects: fix shader compilation with legacy opengl All the gleffects shaders can be run against a gles2 or a legacy opengl glsl compiler but weren't being advertised as such. Fixes gleffects under desktop opengl < 3.2. 2015-12-29 18:01:30 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglbasememory.c: glbasememory: Remove bogus NULL check CID 1346534 2015-12-28 15:53:59 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/sync.h: gl: Add \0 terminators for the Apple sync extension Otherwise GL initialization might check for extensions forever and never finishes. 2015-12-28 14:41:59 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Add some debug output when the GL thread is actually running 2015-12-27 11:37:09 +0100 Florent Thiéry * ext/gl/gstglfiltershader.c: glshader: fix usage doc The property location has been changed in favor of vertex/fragment string properties; the doc had not been updated and was still referring to the previous property; also, now the #version header has become mandatory https://bugzilla.gnome.org/show_bug.cgi?id=759902 2015-12-26 22:34:29 +0100 Florent Thiéry * ext/gl/gstglimagesink.c: glimagesink: Post unhandled navigation events on the bus Based off xvimagesink implementation https://bugzilla.gnome.org/show_bug.cgi?id=759869 2015-12-28 09:04:12 +0900 Vineeth TM * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: Fix build error When GST_GL_HAVE_PLATFORM_EGL is not defined, then info variable will not be used and this results in build error https://bugzilla.gnome.org/show_bug.cgi?id=759913 2015-12-23 09:50:13 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: Comment out unused functions to fix compilation with clang It's not clear if these are intentionally unused or the code should be changed, but this fixes compilation for the time being at least. See https://bugzilla.gnome.org/show_bug.cgi?id=759679 2015-12-21 12:19:11 +0100 Sebastian Dröge * tests/check/libs/gstglcolorconvert.c: glcolorconvert: Fix name of testsuite 2015-12-21 12:13:15 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Signal context creation from inside the context loop and use g_thread_join() instead of a custom condition variable Also protect against spurious condition variable wakeups during context creation. 2015-12-21 11:27:09 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: Hide navigation specific internal API and add API to asynchronously send navigation events Exposing the navigation thread's main context, GSourceFuncs and structs called key_event and mouse_event is exposing a bit too much of the internals. Let's just go with two functions to asynchronously send navigation events on the window with the same API as the synchronous ones. 2015-12-21 10:46:52 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: Use g_thread_join() instead of a custom condition variable for waiting for the navigation thread to finish Also hide some internal functions and fields while we're at it and fix a race condition with the startup condition variable. 2015-11-30 09:36:09 +0800 Haihua Hu * gst-libs/gst/gl/gstglwindow.c: glwindow: Fix memory leak of navigation thread When stopping the navigation thread, call g_thread_join() to release the resources hold by it. https://bugzilla.gnome.org/show_bug.cgi?id=758820 2015-12-18 15:36:40 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglcolorconvert.c: glconvert: Fix compilation of GRAY16_LE/BE shader 2015-11-13 17:24:30 +0100 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Add dmabuf upload method. This upload method detect and optimize uploads of DMABuf memory. This is done by creating and caching EGLImages wrapper around DMABuf. The EGLImages are then binded to a texture which get converter using standard shader. Example pipeline: GST_GL_PLATFORM=egl \ gst-launch-1.0 v4l2src device=/dev/video1 io-mode=4 ! \ video/x-raw,format=NV12 ! glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-12-18 15:52:46 -0500 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimagememory: Also import BGR16, ABGR, xBGR, AYUV, GRAY16_LE/BE and Y444 https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-12-18 11:08:29 -0500 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimagememory: Add RGB/BGR DMABuf importation support https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-11-13 17:40:08 +0100 Lubosz Sarnecki * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: eglimagememory: Methods to create GstGLMemory from dmabufs Maps GstVideoFormats to suitable DRM fourccs which work with glcolorconvert, using gst_gl_memory_alloc(). We require mostly only 4 formats to be supported by the driver. We require DRM equivalent to RGB16, RGBA, R8 and RG88. This way it's compatible with DesktopGL, since GL_TEXTURE_2D is used and limit driver requirements. With this we can virtually support all formats the glcolorconvert supports. https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-10-02 13:31:39 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: build: Add dmabuf build condition. configure.ac: Build dmabuf when EGL and drm_fourcc.h is available. gl: Link gst-allocators. https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-11-13 17:09:13 +0100 Lubosz Sarnecki * ext/gl/gstglimagesink.c: glimagesink: Show error when video frame is not mapped. Adds more meaningful error than "Failed to convert multiview video buffer", which is always used when prepare_next_buffer() fails in gst_glimage_sink_prepare(). https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-11-13 17:05:11 +0100 Lubosz Sarnecki * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gstglcontext_egl: Expose gst_gl_context_egl_get_error_string. https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-12-18 13:17:34 +1100 Alessandro Decina * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: glmemory: add gst_gl_memory_allocator_get_default Add gst_gl_memory_allocator_get_default to get the default allocator based on the opengl version. Allows us to stop hardcoding the PBO allocator which isn't supported on gles2. Fixes GL upload on iOS9 among other things. 2015-12-18 11:49:25 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: don't deadlock on resize Performing any GL function marshalling off the GL thread with glimagesink's render lock is prone to deadlocks between the GL thread and the non-GL thread. What can happen is this: 1. non-GL thread attempts to function marshal to the GL thread. 2. while 1 is happening, the winsys gives an event (say resize) 3. This calls back into glimagesink which taks the render lock. 4. As the GL function marshalling is attempting to run on the GL and already has glimagesink's render lock locked. This deadlocks as the threads are waiting for each other. 2015-12-15 14:14:36 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: don't unconditionally add the alignment bytes to the size e.g when wrapping a data pointer we don't want to map/unmap off the end of pointer with the alignment bytes. Instead track that information separately as maxsize is used for mapping by GstMemory and thus represents a size without any alignment padding bytes. 2015-12-17 15:50:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: glbuffer: add a name to the allocator 2015-12-17 15:23:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglcolorconvert.c: gl*memory*: reverse the parameter order of user_data and destroy notify The convention is to have the destroy notify last after any user data 2015-12-16 18:41:06 +1100 Matthew Waters * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glmemorypbo: remove our own alloc()/wrapped()/etc functions replaced by equivalent functionality within gst_gl_base_memory_alloc() 2015-12-16 18:39:32 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: document gst_gl_memory_init 2015-12-16 18:38:19 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemorypbo.c: glbuffer: remove unneeded gst_gl_buffer_alloc() Replaced by gst_gl_base_memory_alloc() 2015-12-16 18:37:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: document some functions 2015-12-16 18:36:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add a default copy implementation Subclasses still need to override this to copy into the correct memory type. 2015-12-16 18:32:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: glbufferpool: use gst_gl_base_memory_alloc as a generic GL allocation framework Requires the usage of GstGLVideoAllocationParams however any user can set their own parameters along with an allocator which will be used to allocate the correct memory type. 2015-12-16 18:30:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: glmemorypbo: implement GstGLBaseMemory:alloc Uses the GstGLVideoAllocationParams parameters 2015-12-16 18:23:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: glbuffer: implements GstGLBaseMemory::alloc Create GstGLBufferAllocationParams which is subclass of GstGLAllocationParams 2015-12-16 18:20:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: implement GstGLBaseMemory::alloc - Create GstGLVideoAllocationParams which is a GstGLAllocationParams subclass. - Make it possible to allocate glmemory objects directly if no frills are needed. 2015-12-16 18:13:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: add a generic interface for allocating GL memories This is made possible by a subclassable GstGLAllocationParams that holds the allocation parameters Every allocation would now go through gst_gl_base_memory_alloc with the allocation parameters now being specified in a single struct to allow extension by different allocators. 2015-12-17 11:06:34 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: Revert "glbuffer: Don't pass allocation params" This reverts commit 052f41e5c293ec17c038467ed1e7b92b04d494b0. This is incorrect and will affect any other glbuffer user that needs/wants to perform data alignment. 2015-12-16 11:56:08 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbuffer.c: glbuffer: Don't pass allocation params The imported memory has already been allocated, passing allocation parameters with alignment confuses the memory which endup with a size different from maxsize and lead to overrun when the memory is being copied. 2015-12-15 14:17:16 +1100 Alessandro Decina * gst-libs/gst/gl/gstglupload.c: glupload: fix allocator name after GLMemory API changes 2015-12-15 19:25:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglapi.h: gl: Allow using non-system mesa with both GL and GLES GCC automatically disable redundance warnings for system headers. As soon as we start using a non-system installed mesa, we would start having issues. The test for both wasn't setting any flags, so it would work but then fail at runtime. This is being fixed by disabling in the code (where needed only) that GCC warning. The test is also fixed to avoid the false positive we had. 2015-12-14 11:09:46 +0900 Vineeth TM * ext/gl/gstglbumper.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: plugins-bad: Fix example pipelines rename gst-launch --> gst-launch-1.0 replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**) fix caps in examples https://bugzilla.gnome.org/show_bug.cgi?id=759432 2015-12-14 14:44:31 -0500 Xavier Claessens * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglframebuffer.h: bad: Add g_autoptr() support to all types https://bugzilla.gnome.org/show_bug.cgi?id=754464 2015-12-14 12:31:52 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: check pointer before dereferencing priv->primary_out could be NULL, check before dereferencing it in GST_BUFFER_FLAG_SET () CID 1308945 2015-12-14 09:38:41 +0100 Sebastian Dröge * tests/examples/gl/clutter/cluttershare.c: clutter: Fix compilation error in GL examples Include gst/gl.h instead of specific headers to prevent such problems also in the future. In file included from ../../../../gst-libs/gst/gl/gl.h:47:0, from ../../../../gst-libs/gst/gl/gstglbasememory.h:137, from ../../../../gst-libs/gst/gl/gstglmemory.h:29, from cluttershare.c:39: ../../../../gst-libs/gst/gl/gstglmemorypbo.h:51:20: error: field ‘mem’ has incomplete type GstGLMemory mem; ^ ../../../../gst-libs/gst/gl/gstglmemorypbo.h:124:24: error: field ‘parent’ has incomplete type GstGLMemoryAllocator parent; ^ ../../../../gst-libs/gst/gl/gstglmemorypbo.h:134:29: error: field ‘parent_class’ has incomplete type GstGLMemoryAllocatorClass parent_class; ^ 2015-12-14 18:41:30 +1100 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglupload.c: tests: update for glmemory api changes 2015-12-14 18:20:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: glbuffer: bind/unbind on map/unmap for GL mappings Bind the handle to the GL target on map/unmap to save the caller from handling this themselves. 2015-12-14 18:19:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: glbuffer: remove buffer specific transfer flags Instead rely on GstGLBaseMemory's transfer handling 2015-12-14 18:18:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: map/unmap pbo memory correctly for state tracking Otherwise some downloads will fail to occur from the PBO. 2015-12-14 18:15:42 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: tests/glmemory: include the generic gl header Including gstglmemory.h directly results in the compiler complaining about incomplete types. 2015-12-14 17:05:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: glformat: add compatibility definitions for OES/rectangle textures 2015-12-14 13:49:18 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasebuffer.h: * gst-libs/gst/gl/gstgldisplay.c: glbasebuffer: remove unsed memory subclass The functionality has been split into GstGLBaseMemory and GstGLBuffer. 2015-12-14 13:43:59 +1100 Matthew Waters * ext/gl/gstgldownloadelement.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglmemory.c: glmemory: base classify and add the pbo memory on top The base class is useful for having multiple backing memory types other than the default. e.g. IOSurface, EGLImage, dmabuf? The PBO transfer logic is now inside GstGLMemoryPBO which uses GstGLBuffer to manage the PBO memory. This also moves the format utility functions into their own file. 2015-12-14 13:08:10 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: gl: add a GL buffer based GstMemory Heavily based on GstGLBaseBuffer that is a subclass of GstGLBaseMemory. Provides GPU and CPU accessible GL buffer objects by GL handle or by sysmem data pointer. 2015-12-14 12:59:02 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: gl: add a base memory object It handles the following - GstAllocationParams -> gst_memory_init transformation - Makes sure that map/unmap/create/destroy happen on the GL thread with a GL context current. - Holds a possible sysmem accessible data pointer with alignment. - Holds the need upload/download transfer state 2015-12-14 12:26:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: add convenience function for the start of a video frame Get's the start of the video frame based on a GstVideoInfo and GstVideoAlignment. 2015-12-11 16:07:36 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstgluploadmeta.h: * tests/check/libs/gstglupload.c: gluploadmeta; remove convenience helper API It was not really useful as if one knows about libgstgl, one can just use GLMemory objects directly. 2015-12-11 15:39:57 +1100 Matthew Waters * ext/gl/gstglstereomix.h: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: gldownload: remove helper api from the library It was never used by anyone and is not needed anymore with the element and GstGLMemory's transparent support for downloading textures. 2015-12-12 09:33:38 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: clear to transparent Otherwise composition will result in a black frame outside the transformed video. 2015-12-10 14:41:44 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: libgstgl: gstglcontext_cocoa: kCGLPFAStereo has been deprecated in 10.11 Also since the version scheme has changed (to include the micro number) since 10.10, use the MAC_OS_X_VERSION_* macro to avoid confusion. 2015-12-10 12:41:00 +1100 Alessandro Decina * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: relax check for multiple texture targets Only complain about multiple texture targets when _different_ texture targets are configured. 2015-12-10 12:33:52 +1100 Alessandro Decina * gst-libs/gst/gl/gstglmemory.c: glmemory: take subsampling into account for rectangle textures Rectangle textures don't use normalized coordinates so subsampling needs to be factored in explicitly. Fixes YUV => RGB conversion for rectangle textures. 2015-12-08 16:35:45 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/sync.h: glproto: include function definitions for GL_APPLE_sync Provides a performance improvement on iOS where we were falling back to glFinish on settting sync points. 2015-12-01 18:09:25 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Only offer custom allocator with caps features To use GLMemory and EGLImage allocators, one need to know the libgstgl API. This is only expected if the associated caps features have been negotiated. Generic element that otherwise receive those allocators may fail, resulting in broken pieline. We don't want to force all generic element to check if the allocator is a custom allocator or a normal allocator (which implement the _alloc method). https://bugzilla.gnome.org/show_bug.cgi?id=758877 2015-12-02 22:42:39 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: improve the YUY2/UYVY->RGBA conversion shader Don't offset the y-axis. We only need to offset on the x-axis. Removes a sawtooth pattern on horizontal and vertical edges. https://bugzilla.gnome.org/show_bug.cgi?id=755486 2015-12-02 22:40:06 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: improve RGBA->YUY2/UYVY conversion shader We should only average the chroma samples not the luma sample. https://bugzilla.gnome.org/show_bug.cgi?id=758904 2015-12-01 23:20:45 -0800 Reynaldo H. Verdejo Pinochet * gst-libs/gst/gl/Makefile.am: Drop usage of deprecated g-ir-scanner --strip-prefix flag 2015-11-17 15:23:17 -0800 Reynaldo H. Verdejo Pinochet * ext/gl/gstglbumper.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: Remove unnecessary NULL checks before g_free() g_free() is NULL-safe 2015-11-17 17:17:50 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Remove unused variable gstglimagesink.c: In function 'gst_glimage_sink_on_draw': gstglimagesink.c:1959:18: error: unused variable 'sync_meta' [-Werror=unused-variable] GstGLSyncMeta *sync_meta = NULL; ^ 2015-11-17 17:09:51 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: String literals are const gstglviewconvert.c: In function '_mangle_extensions': gstglviewconvert.c:1511:13: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] ext_str = "#extension GL_OES_EGL_image_external : require\n"; ^ 2015-11-17 17:08:14 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: Actually return the newly created meta from gst_buffer_add_gl_sync_meta() gstglsyncmeta.c -fPIC -DPIC -o .libs/libgstgl_1.0_la-gstglsyncmeta.o gstglsyncmeta.c: In function 'gst_buffer_add_gl_sync_meta': gstglsyncmeta.c:131:1: error: control reaches end of non-void function [-Werror=return-type] } ^ 2015-11-16 15:46:41 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: wait on the correct sync meta when rendering 2015-11-02 17:57:29 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: add vfuncs for all operations there could be other ways/requirements for synchronising two GPU command streams (whether GL or platform specific). e.g. glfencesync/eglwaitnative/cond/etc 2015-11-10 15:37:05 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: add support for rendering external-oes textures https://bugzilla.gnome.org/show_bug.cgi?id=757285 2015-11-10 14:54:02 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: add support rectangle/external-oes textures https://bugzilla.gnome.org/show_bug.cgi?id=757285 2015-11-17 09:08:52 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: Fix structure memory leak https://bugzilla.gnome.org/show_bug.cgi?id=758205 2015-11-13 10:41:58 +0900 Vineeth TM * gst-libs/gst/gl/gstglsl.c: glsl: fix possible string overrun in gst_glsl_version_profile_from_string given a NULL-terminated string, s. s[i] = '\0'; i++; does not guarentee that s[i] is NULL terminated and thus string operations could read off the end of the array. https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 16:50:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: don't read invalid list pointers (use after free) gst_gl_shader_detach_unlocked already removes the list entry so attempting to use the element to iterate to the next stage could read invalid data. Based on patch by Vineeth TM https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 10:44:26 +0900 Vineeth TM * tests/check/libs/gstglsl.c: tests:glsl: version_profile_s string leak https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 10:56:10 +0900 Vineeth TM * gst-libs/gst/gl/gstglsl.c: glsl: free str while returning error https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 11:04:34 +0900 Vineeth TM * tests/check/libs/gstglupload.c: tests:glupload: fix caps memory leak https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-12 16:36:03 +0900 Vineeth TM * gst-libs/gst/gl/gstglslstage.c: glslstage: Fix vertex_sources memory leak vertex_sources is being allocated but not freed resulting in leak https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-12 16:26:00 +0900 Vineeth TM * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: remove unnecessary free version_str is already being freed. So no need to call again https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-12 16:18:35 +0900 Vineeth TM * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix string leak String got using gst_glsl_version_profile_to_string, is allocated memory and should be freed https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-12 16:02:45 +0900 Vineeth TM * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix frag_prog and frag_body memory leak https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-11 23:39:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: mangle gl_FragColor for GL3 Some drivers don't provide the compatibility definition and we need to provide our own 'out vec4' variable to put the results of the fragment shader into. https://bugzilla.gnome.org/show_bug.cgi?id=757938 2015-11-11 16:06:25 +0900 Vineeth TM * tests/check/libs/gstglcolorconvert.c: tests:glcolorconvert: Fix caps memory leak Output caps being got from video info is not getting freed https://bugzilla.gnome.org/show_bug.cgi?id=757929 2015-11-10 13:52:30 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglstereomix.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: remove set_format We need the caps to be able to 1. check the caps features 2. get the requested texture-target on input/output 2015-11-11 10:31:07 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: fix a memory leak if the view conversion fails 2015-11-11 13:37:59 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: balance the creation/destruction of the overlay compositor Fixes some leaks/possible segfault on when failing to create the compositor. 2015-11-11 12:23:30 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglutils.c: glshader: properly unref the stages on failure When failing in the varargs functions, all the stage objects not handled need to be unreffed to prevent a leak. 2015-11-11 11:29:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.c: glslstage: properly return an error when we could not create the shader stage While it was erroring out correctly later, there were GLib warnings about setting a GError over the top of another GError. 2015-11-11 01:05:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglshaderstrings.c: glshaderstrings: fixup the external-oes fragment shader The wrong sampler type was used s/sampler2DExternalOES/samplerExternalOES/ 2015-11-10 23:41:24 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: try to keep the same texture-target if possible Fixes issues attempting to passthrough external-oes textures 2015-11-10 22:41:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix rendering rectangular textures with GL3 Rectangular textures are unavailable in unextended GLES2 #version 100 shaders. Fixes texture-target=rectangle ! glcolorconvert ! texture-target=2D There's a couple of differences between GL3 and GLES2/GL - varying -> in or out depending on the stage (vertex/fragment) - attribute -> in - filtered texture access is a single function, texture() 2015-11-10 20:20:29 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: properly use the other texture-target on fixation 2015-11-10 20:15:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.c: glslstage: add debug as to why _set_strings() failed 2015-11-10 20:13:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglsl.c: glsl: fix check for glsl version against GL context inversion Any GLSL version that was less than the provided GL version would fail 2015-11-10 13:13:50 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstglmemory.h: gl: forward declare some enums Specifically the GstGLTextureTarget enum 2015-11-10 13:11:37 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglslstage.c: glslstage: expose the default shader strings as public Add some other simple strings for external-oes textures or transforming the texture coordinates with a transformation matrix 2015-11-06 03:05:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: wait on the sync meta for input buffers 2015-11-05 00:13:01 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: wait on the provided sync meta provided to glimagesink 2015-11-08 22:14:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: use the correct oes target string in the template caps 2015-11-06 12:31:09 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglshader.c: glshader, tsdemux: simplify code Jus use _delete_link() instead of _remove_link() + _free1() 2015-11-06 12:30:12 +0000 Tim-Philipp Müller * ext/gl/gstglmixerbin.c: glmixerbin: fix minor leak Don't leak removed list node. 2015-11-02 12:10:44 +1100 Alessandro Decina * gst-libs/gst/gl/gstglutils.c: gstglutils: fix shader compilation on Mountain Lion Make gst_gl_context_gen_shader/_compile_shader assume GST_GLSL_PROFILE_ES | GST_GLSL_PROFILE_COMPATIBILITY as the profile. Without this, the shader compiler doesn't inject the #version tag resulting in a compilation error on Mountain Lion. This is a workaround for old code using gst_gl_context_gen_shader. New code should use the gst_glsl_stage_* API directly which allows the caller to explicitly specify version/profile. 2015-10-31 23:28:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: explicitly initialize a possibly uninitialized variable The ret variable may be uninitialized and so its contents were undefined and the results were erratic (failing with glvideomixer, succeeding in other cases) P.S. No idea why gcc/clang et al never picked up on this like they normally do (probably due to some optimisation pass figuring out it's only set once...) 2015-10-30 15:00:23 +1100 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/tests: update for glmemory api changes 2015-10-30 14:43:23 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: glcolorconvert: remove unused ret variable 2015-10-30 14:40:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.h: glslstage: remove typedefs from the header They are already defined in the forward decleration header and defining them more than once will give an error with OSX's clang about typedef redefinition being a C11 feature. 2015-10-30 14:38:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: follow the correct texture target names 2015-10-30 01:42:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: explicitly configure the texture target on the gl buffer pool If we don't, then the pool could end up allocating 2D textures when the caps explictly state they should be rectangle textures. 2015-10-30 01:27:36 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glbufferpool: add bufferpool options for the various texture targets This was chosen over relying solely on the caps as glupload needs to propose an allocation and set the texture target based on the output caps. Setting the caps in the config is currently pointless as they are overwritten in a lot of element's decide_allocation functions. This provides a mechanism for the buffer pool to be configured for a certain texture target when none has been configured. 2015-10-29 13:04:31 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: add support for converting texture targets Solved with a simple shader templating mechanism and string replacements of the necessary sampler types/texture accesses and texture coordinate mangling for rectangular and external-oes textures. 2015-10-29 00:44:26 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglstereomix.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglmemory.c: glmemory: add support for rectangle textures Add the various tokens/strings for the differnet texture types (2D, rect, oes) Changes the GLmemory api to include the GstGLTextureTarget in all relevant functions. Update the relevant caps/templates for 2D only textures. 2015-10-30 01:45:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: order the caps template so that RGBA is first glcolorconvert ! glcolorconvert would sometimes negotiated RGB (the first list entry) otherwise. 2015-10-30 01:16:02 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.h: glbufferpool: move typedef's into the forward decleration file Otherwise, for example, clang will warn about typedef redefinitions being a C11 feature. 2015-10-28 14:41:54 +0000 Julien Isorce * gst-libs/gst/gl/gstglslstage.c: glslstage: initialize output params to 0 before calling gl functions The client side API of the Chromium's GPU Process has asserts in debug mode that check that output params are initialized to 0. 2015-10-27 00:36:41 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstopengl.c: opengl: build/provide glstereomix/split on gles only systems 2015-10-26 18:26:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: allow outputting multiple textures for gles3 contexts the USING_GLES2 includes all GLES3 contexts as well which does support drawing to multiple buffers. Instead make or decision solely based on whether glDrawBuffers is available or not. 2015-10-26 17:36:21 +1100 Matthew Waters * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: expose the element on gles2 platforms We can do everything with gles3 however gles2 restricts us not allowing separated or frame-by-frame multiview modes due to multiple draw buffers. 2015-10-21 05:34:18 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glshaderelement: free the vertex and fragment strings on finalize Fixes a memory leak when using the vertex/fragment properties. 2015-10-21 05:00:11 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glshaderelement: remove unneeded reference to 2015-10-21 04:44:50 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: gl: fix usage of string.h and stdio.h functions without including the headers e.g: gstglcontext_egl.c:613:7: error: implicit declaration of function 'strcmp' [-Werror=implicit-function-declaration] if (strcmp (G_MODULE_SUFFIX, "so") == 0) 2015-10-16 07:03:06 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: create a context in NULL_READY So that it's possible for decoders et al. to request the OpenGL context in their READY_PAUSED transition with decodebin/playbin. 2015-10-21 03:59:33 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglshadervariables.h: gl: remove unneeded shader variable parsing code 2015-10-21 03:23:30 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glshaderelement: implement setting arbitrary uniforms Currently float and int are supported by default. vec2, vec3, vec4 and mat4 are supported if graphene is used. Of course if one wants to set custom uniforms they can also be set using the create-shader signal. 2015-10-19 15:15:30 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: gl: be consistent in gobject boilerpate GST_GL_IS_* vs GST_IS_GL_* git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g' 2015-10-17 15:26:46 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glshaderelement: implement on-demand create-shader signalling One may not have an GstGLContext available or current in the thread where one would need to update the shader. Support this by signalling create-shader whenever the one-shot 'update-shader' is set to TRUE. 2015-10-17 02:42:47 +1100 Matthew Waters * ext/gl/caopengllayersink.m: gl/calayer: don't leak a gl shader object We will always overwrite the ca_sink->redisplay_shader without freeing the object. 2015-10-16 02:57:19 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.c: glslstage: add brackets around pointer dereference referencing an array While technically, i is always 0 and *vertex_sources[i++] is equivalant to (*vertex_sources)[i++]. Be future-proof in the case of code moves/changes/etc. CID 1327406 2015-10-15 23:47:11 +1100 Matthew Waters * ext/gl/caopengllayersink.m: gl/caopengllayersink: port to new GstGLShader API fixes build error: "undefined symbols for architecture: gst_gl_shader_compile_with_default_vf_and_check" 2015-10-15 22:42:26 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: gl/tests: port glcontext test to opengl Now uses vao's and vbo's when possible like the rest of the gstgl library. 2015-09-04 16:16:51 +1000 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glshader: port element to GstGLSLStage - Provide a shader property to set the full shader pipeline - Provide vertex and fragment properties for just providing simple shader sources. 2015-09-04 16:02:32 +1000 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglutils.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: glshader: port to using GstGLSLStage objects for string management A GstGLShader is now simply a collection of stages that are compiled and linked together into a program. The uniform/attribute interface has remained the same. 2015-09-04 14:36:47 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: glsl: add a shader stage object GstGLSLStage Represents a stage (vertex, geometry, fragment, etc) in the shader pipeline. 2015-09-04 00:09:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglshadervariables.h: gl/shader/variables: include generic gl.h header Otherwise we may miss some forward declarations Fixes build error: undefined reference to GstGLSLStage 2015-08-20 15:11:06 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglsl_private.h: * tests/check/libs/gstglsl.c: gl: add some GLSL utility functions Specifically parsing/setting GLSL versions and the shader related function table. 2015-10-13 12:40:04 +0200 Guillaume Desmottes * gst-libs/gst/gl/gstgldebug.c: gl: fix leak in gst_gl_insert_debug_marker() The string allocated by g_vasprintf() was leaked. Reproduced using the validate.file.compositor.simple.play_15s.synchronized validate scenario. https://bugzilla.gnome.org/show_bug.cgi?id=756492 2015-10-06 21:23:11 +0530 Nirbheek Chauhan * ext/gl/gstglvideomixer.c: glvideomixer: Proxy the ignore-eos videoaggregator property as well Identical to how the z-order property is proxied 2015-08-20 16:03:29 +0900 Vineeth TM * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: gstreamer: bad: Fix memory leaks when context parse fails When g_option_context_parse fails, context and error variables are not getting free'd which results in memory leaks. Free'ing the same. And replacing g_error_free with g_clear_error, which checks if the error being passed is not NULL and sets the variable to NULL on free'ing. https://bugzilla.gnome.org/show_bug.cgi?id=753854 2015-10-02 01:01:42 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: move debugging related functions to their own file 2015-10-01 23:20:19 +1000 Matthew Waters * ext/gl/gstglcolorscale.c: glcolorscale: use glbasefilter vfuncs Uses less code \o/ Fixes legacy opengl rendering \o/ 2015-09-30 08:36:15 +0200 Antoine Jacoutot * gst-libs/gst/gl/Makefile.am: gl: Pass GL_CFLAGS to g-ir-scanner This unbreaks building when some headers are under a non-standard path. e.g. /usr/X11R6/include as on OpenBSD. https://bugzilla.gnome.org/show_bug.cgi?id=755850 2015-09-30 15:17:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fixup strstr lengths so we don't overrun 2015-09-30 13:31:50 +1000 Matthew Waters * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglupload.c: glupload: remove useless release_buffer It's a leftover from when we weren't outputting GstBuffer's and returning raw texture id's. 2015-09-30 01:53:53 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: use gst_element_set_context for setting display/other_context 1. So we get tracking inside GstElement properly when e.g. adding to a bin 2. Removes redundant code. Now only one place where GstContext->GstGLDisplay/GstGLContext transformation occurs 3. Fixes a memory leak in the process 4. Make the retrieval of debug categories thread safe 2015-09-17 16:59:16 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: use the default GL context debug category 2015-09-28 22:31:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: set the context on the element on a context query Otherwise it's possible to lose the context information if the context is only propagated through queries. 2015-09-28 22:20:29 +1000 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: chain up to the parent class for GstElement::set_context https://bugzilla.gnome.org/show_bug.cgi?id=705579 2015-08-31 19:21:54 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: gl: sprinkle some debug markers to ease debugging 2015-08-31 19:18:23 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl/utils: add a function to insert a debug marker These markers are visible in tools that record the GL function calls such as apitrace, et al. Makes it easier to match up GL draw commands with specific elements. 2015-08-31 19:17:21 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/debug.h: gl: add some debugging prototypes 2015-09-26 19:19:50 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove unused draw_unlocked function The functionality is provided by draw anyway and is leftover from X11's specific threading requirements that no longer apply. 2015-09-25 10:32:00 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: use GL_ELEMENT_ARRAY_BUFFER for vbo indices Fixes this error with chromium gpu process: GL_INVALID_OPERATION, glBindBuffer: buffer bound to more than 1 target https://bugzilla.gnome.org/show_bug.cgi?id=755618 2015-09-17 14:17:09 +0100 Julien Isorce * gst-libs/gst/gl/gstglmemory.c: glmemory: fix texture leak in _gl_mem_copy https://bugzilla.gnome.org/show_bug.cgi?id=755456 2015-09-21 08:04:40 +0000 Matthew Waters * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: fix rendering with recent resize state tracking 557ca6fda5f831be4aba5819bf7b30b296e575cd didn't change to the necessary gst_gl_window_resize() call for the dispmanx backend. 2015-09-18 00:20:13 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: Don't throw compiler warnings with G_DISABLE_ASSERT Disable code that warns about unused variables when G_DISABLE_ASSERT is defined, as it is in tarballs and pre-releases. 2015-09-17 22:17:24 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: fix non-existent selector warning 557ca6fda5f831be4aba5819bf7b30b296e575cd introduced the queueResize call without implementing the selector 2015-09-17 21:31:39 +1000 Jan Schmidt * gst-libs/gst/gl/gstglwindow.c: glwindow: Fix g_return_val_if_fail in a void function 2015-09-17 17:22:47 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: request a resize on caps/3d mode changes Fixes incorrect aspect ratio on OSX when changing caps or the 3d output mode. https://bugzilla.gnome.org/show_bug.cgi?id=755111 2015-09-17 17:06:37 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: glwindow: add API to request a resize event on the next draw - glimagesink needs to be able to resize the viewport on aspect ratio changes resulting from either caps changes or 3d output mode changes. - Performing a glViewport outside the GstGLWindow::resize callback will not have the winsys' stack of viewports required to correctly place the output frame. Provide a function to request a resize on the next draw event from the winsys. Also track size changes inside the base GstGLWindow class rather than in each subclass. https://bugzilla.gnome.org/show_bug.cgi?id=755111 2015-09-17 16:55:11 +1000 Matthew Waters * ext/gl/gstgluploadelement.c: gl/uploadelement: fail earlier if we could not upload the buffer 2015-09-17 16:05:21 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: store the correct dimension from the resize events small typo s/width/height/ 2015-09-17 13:35:02 +0900 Vineeth T M * ext/gl/gstglbasemixer.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: gl: Fix GError leaks during failures https://bugzilla.gnome.org/show_bug.cgi?id=755140 2015-09-16 17:28:05 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: avoid updating the viewport in the draw loop Fixes flashes/incorrect aspect ratio when resizing glimagesink on OSX. 2015-09-15 11:34:12 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: gl: bufferpool take into account video stride alignment requirements when allocating memory. Fixes crashes with avdec_h265 in the AVX2 code path which requires 32-byte stride alignment, but the GstAllocationParams only specified a 16-byte alignment. https://bugzilla.gnome.org/show_bug.cgi?id=754120 2015-09-09 23:53:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.h: gl/api: use public rather than private define HAVE_IOS is only defined for the build of this module so attempting to use gstgl in iOS would result in incorrect GL includes. Use GST_GL_HAVE_PLATFORM_EAGL instead for choosing the iOS GL header. 2015-09-09 09:33:01 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: Also unbind renderbuffer after setting up framebuffer https://bugzilla.gnome.org/show_bug.cgi?id=754757 2015-09-09 09:27:17 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: Don't make context uncurrent just to make it current again in the next line Also binding the framebuffer again is unnecessary then as it was just bound a few lines before while the context was current. https://bugzilla.gnome.org/show_bug.cgi?id=754757 2015-08-31 18:06:31 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcontext.c: gtk, qt, gl: fix typo in debug and error messages 2015-08-24 19:47:01 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: glupload: Use base class metadata copy function This allow properly copying selected meta, like the composition overlay. Note that output buffer need to be readable, but GlUpload keeps a ref. For now, simply drop GlUpload ref after perform, leaving that ref has no purpose. The method shall be removed in the future. https://bugzilla.gnome.org/show_bug.cgi?id=754047 2015-08-24 19:28:10 -0400 Nicolas Dufresne * ext/gl/gstglcolorconvertelement.c: glcolorconvert: Use base transform metadata copy Use base class default method instead of only copying flags and timestamp. This way, selected meta's like compostion overlay will be passed downstream as expected. https://bugzilla.gnome.org/show_bug.cgi?id=754047 2015-08-25 10:09:14 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Unref context after setting a window handle gst_gl_window_get_context() returns a new reference. Hopefully fixes https://bugzilla.gnome.org/show_bug.cgi?id=753758 2015-08-21 13:42:18 -0700 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: update display size before sending event This is minor issue, as the reconfigure event is asynchronous. Basically, update width/height before sending the event. 2015-08-20 17:27:34 -0700 Nicolas Dufresne * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: Let base transform relay the meta api for us During allocation query, when this element is not passthrough, it must relay the overlay compostion meta and it's parameters. Fortunatly, base transform can do this for us. https://bugzilla.gnome.org/show_bug.cgi?id=753850 2015-08-21 14:07:32 +0900 Justin Kim * gst-libs/gst/gl/gstglcontext.c: glcontext: add specific error message when missing GL_SHADING_LANGUAGE_VERSION GL_SHADING_LANGUAGE_VERSION was introduced since ES 2.0, but in some android emulator doesn't support this feature. To prevent confusion for developer, the error message need to be more clear. https://bugzilla.gnome.org/show_bug.cgi?id=753905 2015-08-21 16:31:41 +0900 hoonhee.lee * ext/gl/caopengllayersink.m: caopengllayersink: Don't chain up to parent's query handling twice for DRAIN query https://bugzilla.gnome.org/show_bug.cgi?id=753913 2015-08-17 18:35:58 +0200 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: only call gl_{stop,start} if the context changed Removes the redundant GL object creation/deletion on every decide_allocation call which is being called for every caps change. Thus reduces the required GL state changes on reconfigure events which are being sent by glimagesink/xvimagesink 2015-08-16 18:13:12 +0200 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Recalculate offset and size in raw upload As we only expose the mapped portion of the frame into the GL memory object (and not the original padding) we need to re-calculate the size and offset. 2015-08-14 12:25:19 +0200 Edward Hervey * tests/check/elements/glimagesink.c: checks: Ensure thread-safe libX11/GL when running tests 2015-08-15 15:02:33 +0200 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Also disable the blend when done 2015-08-15 14:31:15 +0200 Nicolas Dufresne * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglupload.c: glsink: Enable sync meta on pools we offer As the upload is asynchronous, we need to enable the sync meta to gain correct rendering. The buffer pool receiver don't know about that. 2015-08-14 17:36:48 +0200 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Move overlay rendering after video rendering This is mostly cosmetic, but heoretically it reduces the amount of required object in the context at one point. It also avoids potential conflicts. 2015-08-15 10:03:07 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/opengl.h: opengl: Change GLclampd to double GLclampd does not exist on GLES, only desktop GL. 2015-08-14 10:32:14 -0700 Martin Kelly * gst-libs/gst/gl/glprototypes/opengl.h: opengl: add missing ClearDepth prototype The ClearDepth call is missing. https://bugzilla.gnome.org/show_bug.cgi?id=753639 2015-08-12 00:20:10 +0200 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: take into account non 1/1 par for navigation The current code was ignoring the par/dar aspect when transforming from window coordinates to stream coordinates resulting in incorrect coordinates being sent upstream in the navigation events. 2015-08-10 14:48:58 -0400 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: gl: Add opengl_version.h to the list of sources Adding this private header to the list of sources. We don't want to make this header public, but we need it in the list of sources otherwise it won't be included in the tarball. This fixes make distcheck. This regression was introduced by commit 1a6fe3db 2015-08-10 16:38:32 +0200 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * gst-libs/gst/gl/gstglfilter.c: gl: use gles2 shaders everywhere This effectively limits a glfilter subclass to be > GL(ES) 2.0. rather than a possible GL 1.4. 2015-08-10 15:44:54 +0200 Matthew Waters * gst-libs/gst/gl/utils/opengl_versions.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext/wgl: implement gl3 core profile context selection 2015-02-28 01:07:44 +0100 Lubosz Sarnecki * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: implement pivot point for rotation and scale https://bugzilla.gnome.org/show_bug.cgi?id=744763 Add a pivot vector for setting the origin of rotations and scales. With the pivot point the rotation and scale operations can have different origins. This adds the ability to rotate around different points. Currently the default (0, 0) pivot point is possible, a rotation around the center, and zooming into and out of the center. With an pivot point this is optional. I defined the following image coordinates for the pivot point: (-1,1) ------------------------- (1,1) | | | | | | | (0,0) | | | | | | | (-1,-1) ------------------------- (1,-1) Example: Rotate the video at the bottom left corner gst-launch-1.0 videotestsrc \ ! gltransformation \ scale-x=0.5 \ scale-y=0.5 \ rotation-z=25.0 \ pivot-x=-1.0 \ pivot-y=-1.0 \ ! glimagesink The pivot-z option defines the pivot point in 3D space. This only affects rotation, since we have no Z data to scale. With this option a video can be rotated around a point in 3D space. Example: Rotate around point behind the video: gst-launch-1.0 videotestsrc \ ! gltransformation \ rotation-x=10.0 \ pivot-z=-4.0 \ ! glimagesink 2015-08-08 14:45:42 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Add shader to convert BGRA/ARGB -> RGBA Depending on the bytes order we will get BGRA (little) and ARGB (big) from the composition overlay buffer while our GL code expects RGBA. Add a fragment shader that do this conversion. https://bugzilla.gnome.org/show_bug.cgi?id=752842 2015-08-08 17:22:05 +0200 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: gl/syncmeta: implement synchronisation without glFenceSync Uses glFinish as that's the best we have for lesser OpenGL versions. 2015-08-08 15:30:43 +0200 Matthew Waters * tests/check/libs/gstglcontext.c: tests/glcontext: fix INVALID_ENUM GL error in test 2015-08-08 15:21:03 +0200 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: context/glx: only use glXCreateContextAttribs for OpenGL 3 contexts mesa for example when creating a GL 3.1 compatibility context overrides our context profile selection to create a core context. 2015-08-03 19:48:16 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: swap control binding proxy The ref_object and object parameters were the wrong way around. For the typical use case where an application is setting a GstControlBinding on the returned ghost pad: 1. our control binding would be removed when the new one was set 2. sync_values calls were not being forwarded from the internal pad to the ghost pad. If an application attempts to perform other control binding operations (get_* family of functions) on the internal pad, they will also be forwarded to the ghost pad where a possible GstControlBinding will provide the necessary values. 2015-07-30 11:12:21 +0100 Luis de Bethencourt * ext/gl/gstglfilterbin.c: gstglfilterbin: remove unused variable res is set multiple times but never used or returned. Removing it. 2015-07-29 19:10:57 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Remove debug output from gst_gl_upload_transform_caps() We can't know if the GstGLUpload type is initialized at this point already, and thus our debug category might not be initialized yet... and cause an assertion here. As we don't print debug output for any of the other transform functions, let's defer this problem for now. 2015-07-29 17:48:58 +0100 Luis de Bethencourt * ext/gl/gstglstereomix.c: glstereomix: remove redundant initialization v is initialized in the for loop init, no need to do it twice. Removing first initialization. 2015-07-28 11:20:40 -0400 Nicolas Dufresne * tests/check/libs/gstglcolorconvert.c: glcolorconvert-test: Test notify function for setup_wrapped gst_gl_memory_setup_wrapped() now takes a destroy notify function. This destroy notify is called to track the memory life time, hence will notify each time a memory get destroyed. This test check that the callback count is correct. 2015-07-28 11:06:43 -0400 Nicolas Dufresne * tests/check/libs/gstglcolorconvert.c: glcolorconvert-test: Fix build 2015-07-28 08:59:24 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Add fixme about using bufferpool for raw http://bugzilla.gnome.org/show_bug.cgi?id=752937 2015-07-27 16:58:22 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: glupload: Keep input frame mapped as long as needed When performing a raw upload, we need to keep the raw data mapped as long as needed. https://bugzilla.gnome.org/show_bug.cgi?id=752937 2015-07-27 15:58:10 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: memcpy on raw data upload" This reverts commit 82c0189b2842e8729e82a4e73491dffc977bc7c2. https://bugzilla.gnome.org/show_bug.cgi?id=752937 2015-07-27 21:54:27 +1000 Matthew Waters * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: glcontext/wgl: fix defenition of gst_gl_context_wgl_new gstglcontext_wgl.c: In function 'gst_gl_context_wgl_new': gstglcontext_wgl.c:83:40: error: 'display' undeclared (first use in this function) 2015-07-27 20:03:05 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: gl/cocoa: fix definition of gst_gl_context_new gstglcontext_cocoa.m:75:1: error: conflicting types for 'gst_gl_context_cocoa_new' 2015-07-27 20:00:47 +1000 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/win32: fix definition of gst_gl_window_win32_new 2015-07-27 18:21:19 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: wayland: fail window open if the display is the correct type Errors out cleanly if a wayland compositor is not running 2015-07-24 17:00:27 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: pass display to implementation's _new() So they have to opportunity to fail if they cannot handle the display connection. https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-24 16:11:38 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: pass display to implentation's _new() This allows the context to fail creation based on incompatible display type's. e.g. glx context with an wayland display handle. https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-06 00:52:06 +0100 Julien Isorce * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglapi.h: gl: support cgl, egl and glx within a same build On osx, with the same build, gst-launch-1.0 videotestsrc ! glimagesink works with: GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=gles2 GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=opengl GST_GL_PLATFORM=glx GST_GL_WINDOW=x11 GST_GL_API=opengl GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl3 https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-27 16:36:40 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Check that caps contain desired caps features Use 'contains' checks instead of equality checks on caps features to allow for uploading when caps also contain GstVideoOverlayComposition meta. https://bugzilla.gnome.org/show_bug.cgi?id=752912 2015-07-06 00:45:45 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gl: move GL_NUM_EXTENSIONS definition after gl.h https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-23 23:59:22 +0100 Julien Isorce * ext/gl/caopengllayersink.m: caopengllayersink: remove unused label context_creation_error Build error introduced by commit 5457e55f255518d679b59a170951e299ecd8c5f6 https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-23 11:18:47 +0100 Tim-Philipp Müller * ext/gl/gstglimagesink.c: glimagesink: fix allocation meta structure leak gst_query_add_allocation_meta() does not take ownership of the structure, for some reason. CID 1312135 2015-07-23 10:57:26 +0100 Luis de Bethencourt * gst-libs/gst/gl/gstglupload.c: glupload: fix memory leak GstCapsFeatures need to be freed with gst_caps_features_free() after use. CID #1312136, CID #1312136 2015-07-02 20:10:50 -0400 Olivier Crête * ext/gl/gstglvideomixer.c: glvideomixer: Add GstControlBinding proxy This is used to proxy GstControlBinding to the pad on the parent object. This avoid having to sync the values in the proxy pad, this is too early if you have a queue between the pad and the actual aggregation operation. https://bugzilla.gnome.org/show_bug.cgi?id=734060 2015-07-22 16:58:12 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: glupload: Forward composition meta even without params When the sink does not know the window size (e.g not created yet) it will not add any param to the the composition meta. This is no reason not to forward this meta API. Fixes issue where it could not attach until we resize the window. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 15:56:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Keep memory pointer alive Keep the composition memory pointer alive while it's being wrapped inside a GstGLMemory object. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 14:17:42 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Pass buffer stride The overlay pixel buffer stride was not given back to the GL image. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 14:05:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcompositionoverlay.c: * gst-libs/gst/gl/gstglcompositionoverlay.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: gloverlaycompositor: Hide GstCompsitionOverlay object This object is only used inside the compositor and does not need to be expose in libgstgl API. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 13:33:12 -0400 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: libgstgl: Makefile style fix 2015-07-21 23:48:25 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcompositionoverlay.c: * gst-libs/gst/gl/gstglcompositionoverlay.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: composition-overlay: Positions are relative to texture The coordinate are relative to the texture dimension and not the window dimension now. There is no need to pass the window dimension or to update the overlay if the dimension changes. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-21 21:27:45 -0400 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: gloverlaycompositor: Create own shader object Make gloverlaycompositor independent of the shader used in the sink. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-21 18:47:56 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Properly handle compsositor life time Should be created in READY_TO_PAUSED, not PAUSED_TO_PLAYING. Should be cleared in PAUSED_TO_READY. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-21 11:28:08 +0100 Julien Isorce * ext/gl/caopengllayersink.m: caopengllayersink: use gst_gl_display_create_context https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 11:21:27 +0100 Julien Isorce * ext/gl/gstglstereosplit.c: glstereosplit: use gst_gl_display_create_context Also unlock the lock on error. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 13:11:17 +0100 Luis de Bethencourt * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: for loop initial declarations are only allowed in C99 mode Fixes compiler warnings 2015-06-19 11:57:06 +0100 Julien Isorce * ext/gl/gstglbasemixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: use gst_gl_display_create_context in more elements. glbasefilter, glbasemixer and gltestsrc. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 17:34:27 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl/build: fix typo in _HEADERS resulting in installing the wrong file /usr/include/gstreamer-1.0/gst/gl/gl.h:51:43: fatal error: gst/gl/gstgloverlaycompositor.h: No such file or directory 2015-07-21 15:39:35 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: add RGB to NV12/NV21 conversion 2015-07-01 14:01:45 +0200 Lubosz Sarnecki * ext/gl/gstglimagesink.c: glimagesink: Send reconfigure event when window size changes https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-20 14:24:22 -0400 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * ext/gl/gstgluploadelement.c: glimagesinkbin: Add allocation query for GstVideoOverlayComposition Adds an GST_VIDEO_OVERLAY_COMPOSITION_META_API_TYPE query to glupload and glimagesink. Detects the query from the downstream elements, so it is executed only when downstream supports the overlay API. This makes pipelines with textoverlay ! glupload ! gldownload ! xvimagesink possible. Uses allocation meta struct for passing the window size upstream. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-04-20 13:17:09 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Apply GstVideoOverlayCompositionMeta buffer to converted buffer Since glcolorconvert creates a new GstBuffer, without the GstVideoOverlayCompositionMeta data, it needs to be copied to not be dropped. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 13:34:58 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglupload.c: glupload: Detect overlay meta buffers correctly https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 05:43:50 +0200 Lubosz Sarnecki * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglupload.c: glimagesinkbin: Add GstVideoOverlayCompositionMeta caps features https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 06:04:37 +0200 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Upload and draw overlays with GstGLOverlayCompositor Receives the GstOverlayComposition buffer in the glimagesink and draws them. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-30 17:59:12 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: gloverlaycompositor: Add GstGLOverlayCompositor class Manages the GstGLCompositionOverlay objects, caches already uploaded overlays and draws them. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 14:15:01 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglcompositionoverlay.c: glcompositionoverlay: Add compatibility for GL contexts without glGenVertexArrays https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-13 15:35:47 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcompositionoverlay.c: * gst-libs/gst/gl/gstglcompositionoverlay.h: glcompositionoverlay: Add class for managing GstVideoOverlayCompositionOverlay buffers Add a class to store and manage the OpenGL texture, vertex buffer and GstVideoOverlayRectangle. Transforms overlay coordinate space to vertex buffer space with aspect ratios in mind. = Example Pipelines = Simple pipeline gst-launch-1.0 videotestsrc ! \ textoverlay text="Hello World" font-desc="sans bold 30" ! \ glimagesink Display 3 static overlays at different positions gst-launch-1.0 videotestsrc ! \ textoverlay text="text1" valignment="top" font-desc="sans bold 30" ! \ textoverlay text="text2" halignment="right" font-desc="sans bold 30" ! \ textoverlay text="text3" halignment="left" font-desc="sans bold 30" ! \ glimagesink Display subtitle file over testsrc gst-launch-1.0 videotestsrc ! \ textoverlay name=foo filesrc location=foo.srt ! subparse ! queue ! foo. foo. ! \ glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 11:33:29 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglupload.c: glupload: Move debug init to top of the file https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-20 18:19:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: check for pbo availability before attempting pbo download https://bugzilla.gnome.org/show_bug.cgi?id=751165 2015-07-18 17:19:18 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * tests/check/libs/gstglcontext.c: glcontext: fix get_current_gl_api on x11/nvidia drivers They require to get_proc_address some functions through the platform specific {glX,egl}GetProcAddress rather than the default GL library symbol lookup. 2015-07-18 17:08:36 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: consolidate get_proc_address function definition Pass the GstGLAPI directly. 2015-07-17 17:47:37 +1000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: glcolorconvertelement: propagate failure to convert buffer upstream Rather than just silently continuing 2015-07-17 13:48:00 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext/glx: try creating a context with the highest version nvidia drivers return the exact version in glGstString (GL_VERSION) we request on creation so start with the highest known version and work our way down. 2015-07-16 00:37:58 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * tests/check/libs/gstglcontext.c: glcontext: track sharedness with a cookie The previous approach of traversing the other_context weak ref tree was 1. Less performant 2. Incorrect for context destruction removing a link in the tree Example of 2: c1 = context_create (NULL) c2 = context_create (c1) c3 = context_create (c2) context_can_share (c1, c3) == TRUE context_destroy (c2) unref (c2) context_can_share (c1, c3) returns FALSE when it should be TRUE! This does not remove the restriction that context sharedness can only be tracked between GstGLContext's. 2015-07-16 00:33:17 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: use the debug object variant for completeness 2015-07-16 16:47:05 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: uploadelement: Protect against NULL pointer I notice that if you stop the pipeline during a renegotiation the upload may be NULL while an allocation query is being run. In that scenario, returning FALSE to the allocation query is the best thing. 2015-07-14 17:40:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: memcpy on raw data upload Anything else requires keeping track of the GstVideoFrame mapping across possible multiple buffers to ensure correct data pointer usage. 2015-07-14 17:39:59 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasebuffer.c: glbasebuffer: add some debug and zero the data pointers on init 2015-07-06 13:28:05 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: Don't call anything synchronously from the main thread This will deadlock if the main thread is the one who creates the GstGLContext. All things we call from the main thread should be possible from any thread. https://bugzilla.gnome.org/show_bug.cgi?id=751101 2015-07-07 22:35:47 +1000 Matthew Waters * ext/gl/gstgldownloadelement.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: download: only start a download transfer for sysmem caps features 2015-07-07 10:57:26 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: transform func: return FALSE if not supported or failed https://bugzilla.gnome.org/show_bug.cgi?id=751778 2015-07-07 16:39:09 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.h: android: add missing egl.h include 2015-07-07 15:30:17 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: correct vao usage keep the vao bound after uploading the new vertex data fixes a mesa GL error "no vertex array object bound" on caps changes 2015-06-16 07:49:34 +0000 Matthew Waters * ext/gl/gstopengl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/gstglapi.h: gl: consolidate egl header includes to egl-only headers They may conflict with other headers. 2015-07-03 12:17:42 -0400 Olivier Crête * ext/gl/gstglmixerbin.c: * ext/gl/gstglvideomixer.c: glvideomixer, glmixer: Add description and klass 2015-07-02 10:26:18 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: initialize output params to 0 before calling gl functions The client side API of the Chromium's GPU Process has asserts in debug mode that check that output params are initialized to 0. 2015-06-26 15:34:35 -0400 Nicolas Dufresne * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: gl: Don't leak pool if set_config failed 2015-06-26 15:33:33 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Don't cache buffer pool Caching and sharing to multiple element the same pool prevents renegotiation from passthrough to not passthrough. 2015-07-02 17:08:26 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: use g_clear_error instead of g_error_free replace g_error_free with g_clear_error, as it internally checks if error variable is valid or not. https://bugzilla.gnome.org/show_bug.cgi?id=751823 2015-06-29 16:10:39 +0100 Luis de Bethencourt * ext/gl/gstglviewconvert.c: gl: add missing break gst_gl_view_convert_element_set_property() is missing a break at the end of the PROP_OUTPUT_DOWNMIX_MODE case. Adding it. CID #1308949 2015-06-26 14:12:22 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Don't leak pool gst_query_add_allocation_pool is transfer none. Also unref if there was a configuration error. 2015-06-23 16:46:39 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: Revert "gl/window/x11: don't create our own X11 display" This reverts commit 5697b6b89b4b2a15c45bd47be940a17f4412ea11. https://bugzilla.gnome.org/show_bug.cgi?id=751003 2015-06-23 14:16:39 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "eagl: Don't dispatch_sync() to the main thread if we are on the main thread" This reverts commit 0bff481011cf74c59869b511393d1696b570e3d5. It wasn't supposed to be merged and also doesn't fix the problem. 2015-06-23 11:05:06 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: eagl: Don't dispatch_sync() to the main thread if we are on the main thread This will otherwise deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=751101 2015-06-23 10:31:44 +0200 John Ludwig * gst-libs/gst/gl/glprototypes/base.h: gl: Include texParameterf in the GL function table https://bugzilla.gnome.org/show_bug.cgi?id=751228 2015-06-22 14:06:04 +0100 Julien Isorce * gst-libs/gst/gl/gstglmemory.c: glmemory: fix consistency about pbo availability. https://bugzilla.gnome.org/show_bug.cgi?id=751165 2015-06-15 16:09:54 +0100 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add gst_gl_display_create_context It also emits a create-context signal so that an application can provide an external GstGLContext backend. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-06-15 16:36:26 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: move display from priv https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-06-18 10:55:28 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: Revert "glcontext: add gst_gl_context_set_display helper" This reverts commit 71b8103cbd16fff9cf5a65cf517083cb794aa3b5. 2015-06-18 10:52:18 +0100 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gpuprocess/Makefile.am: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.h: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: Revert "gl: add GstGLContextGPUProcess backend" This reverts commit b377112ee38912d316e77b4e2102041389dc0051. 2015-06-19 14:35:37 +1000 Jan Schmidt * ext/gl/gstglimagesink.c: glimagesink: Remove duplicate, useless line of code 2015-06-18 22:11:05 -0400 Nicolas Dufresne * ext/gl/gstopengl.c: opengl: glstero* are only built with full OpenGL Don't try to register the elements unless they are built. 2015-06-18 18:09:55 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix GLES2 compatibility 2015-06-18 18:02:21 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix broken validity check 2015-05-30 03:09:17 +1000 Jan Schmidt * tests/examples/gl/gtk/3dvideo/.gitignore: * tests/examples/gl/gtk/3dvideo/3dvideo.vcproj: * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/3dvideo/main.cpp: * tests/examples/gl/gtk/3dvideo/mviewwidget.c: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: * tests/examples/gl/gtk/Makefile.am: 3dvideo: Add simple gtk example stereoscopic video player https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-05-30 02:29:04 +1000 Jan Schmidt * ext/gl/Makefile.am: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * ext/gl/gstopengl.c: gl: Add glviewconvert, glstereomix and glstereosplit elements Conversion elements for transforming multiview/stereoscopic video https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-05-30 02:26:32 +1000 Jan Schmidt * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Support multiview/stereoscopic video Support video with multiview info in the caps, transform it to mono anaglyph by default, but allow for configuring other output modes and handoff to the app via the draw signal. https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-05-30 02:21:43 +1000 Jan Schmidt * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: gl libs: Add glviewconvert helper object Add API for a helper object that can convert between different stereoscopic video representations, and later do filtering of multiple view streams. https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-06-15 22:43:54 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: add missing handle-events/ignore-alpha property to the bin 2015-06-15 16:47:15 +1000 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/videooverlay.pro: gl/examples: update qt examples for api changes 2015-06-13 18:43:04 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: implement proper dynamic pad removal https://bugzilla.gnome.org/show_bug.cgi?id=750881 2015-06-12 20:14:37 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Don't do pool caching We now know that pool caching can cause renegotiation issues when an element in the pipeline change from passthrough to not passthrough. As it's not needed, don't cache existing pools. https://bugzilla.gnome.org/show_bug.cgi?id=748344 2015-06-11 18:26:50 +1000 Matthew Waters * ext/gl/gstgldownloadelement.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglmemory.c: glmemory: separate pbo transfer from texture transfers When supported, the potentially longer pbo upload/download can be initiated before the texture upload/download, potentially increasing throughput. 2015-06-10 16:36:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasebuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * tests/check/libs/gstglmemory.c: glmemory: implement on top of glbasebuffer Provides convenient access to PBO usage. Currently texture updates are coupled tightly to data transfers. 2015-06-10 16:24:59 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasebuffer.h: gl: new glbasebuffer GstMemory object Provides generic handling of GL buffer objects accessible using the GL bind points (GL_ARRAY_BUFFER, GL_PIXEL_*_BUFFER). Implementation based off the current GstGLMemory. 2015-06-10 16:23:36 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/buffers.h: gl/prototypes: add some buffer function prototypes 2015-06-12 13:14:57 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: only listen on the X Display when needed 5697b6b89b4b2a15c45bd47be940a17f4412ea11 causes us to possibly listen on a toolkit provided Display connection. We thus could eat their precious winsys events. Only listen if we need to (!foreign_display or videooverlay). 2015-05-30 02:15:51 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: gl: Add support for multiple views in upload, colour convert and download Support multiple attached views on input/output buffers by processing each one, not just the first. 2015-06-12 00:32:00 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: don't create our own X11 display It's not needed anymore with most window operations occuring in the GL thread. 2015-06-12 00:30:58 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: handle_events() may be called before the window has been created Fixes an XIO fatal error 2015-06-12 00:29:23 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglsinkbin.c: gl: move basesink properties from glimagesinkbin to glsinkbin 2015-06-11 15:22:04 +0200 Sebastian Dröge * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsrcbin.c: gl: Use gst_object_ref_sink() for gl{filter,mixer,src}bin too 2015-06-11 15:17:02 +0200 Sebastian Dröge * ext/gl/gstglsinkbin.c: glsinkbin: Use gst_object_ref_sink() for consistency with the video-sink property on playbin 2015-06-10 11:42:06 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: gl: OES_vertex_array_object is improperly implemented on PowerVR SGX 544MP https://bugzilla.gnome.org/show_bug.cgi?id=750185 2015-06-05 09:35:39 -0300 Thiago Santos * ext/gl/caopengllayersink.m: * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * tests/check/elements/glimagesink.c: Fix a common typo: retreive -> retrieve Seems to have been copy pasted around a few places 2015-06-04 09:40:19 +0200 Philippe Normand * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: Fix build 2015-06-03 22:21:30 +0100 Julien Isorce * tests/examples/gl/cocoa/Makefile.am: gl/example: fix build error when compiling cocoa-videooverlay libtool: error: ignoring unknown tag OBJC and clang: error: argument unused during compilation: '-pthread' 2015-06-04 15:01:16 +1000 Matthew Waters * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/window/dispmanx: fix compiler warning 2015-06-04 12:16:35 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: gl/window: use the default main loop implementation for all backends fixes glimagsink being unable to display. https://bugzilla.gnome.org/show_bug.cgi?id=750337 2015-06-03 21:22:09 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow_cocoa: use parent default implementation Fixes https://bugzilla.gnome.org/show_bug.cgi?id=750337 2015-06-03 00:31:42 +1000 Jan Schmidt * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: Set new sync point when copying Set a new sync point when copying instead of transferring the (non-refcounted) GL sync object from the source meta. https://bugzilla.gnome.org/show_bug.cgi?id=750279 2015-06-02 23:59:50 +1000 Jan Schmidt * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: Add some debug output 2015-06-02 17:24:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: provide compatibility definition for GLES2 for GL_RGBA8 2015-06-02 16:32:03 +1000 Matthew Waters * ext/gl/gstgleffects.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: consolidate internal_rgba_format into glmemory Expose some useful value format conversion functions available in GstGLMemory. 2015-06-01 14:07:37 +0100 Julien Isorce * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.c: glcontext_gpu_process: close the window when done 2015-06-01 14:05:58 +0100 Julien Isorce * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.c: glwindow_gpu_process: avoid empty struct 2015-06-01 12:58:11 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: move main loop/context creation back to init/finalize Fixes https://bugzilla.gnome.org/show_bug.cgi?id=750199 2015-06-01 14:05:06 +0200 Edward Hervey * tests/examples/gl/gtk/gstgtk.c: examples: Fix gl usage without wayland support Not all platforms have wayland support. Handle that gracefully at compile time 2015-05-31 21:30:23 +0200 Sebastian Dröge * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl: Fix compiler warning gstglwindow_wayland_egl.c:246:41: error: unused variable 'surface_listener' [-Werror,-Wunused-const-variable] static const struct wl_surface_listener surface_listener = { ^ 2015-05-31 16:53:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: fix compiler error gstglwindow.c:1118:544: error: 'return' with no value, in function returning non-void [-Werror] g_return_if_fail (GST_GL_IS_WINDOW (window)); 2015-05-31 15:42:48 +1000 Matthew Waters * tests/examples/gl/gtk/filternovideooverlay/main.cpp: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: gl/examples: update gtk examples for glupload 2015-05-31 15:40:15 +1000 Matthew Waters * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: gl/examples: update gtk examples for wayland 2015-05-29 18:06:27 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: implement setting the render rectangle Places our subsurface at the rectangle provided position 2015-05-29 18:03:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: handle gst_video_overlay_set_render_rectangle 2015-05-29 18:01:29 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: don't block the event loop after poll Use the dispatch_pending set of functions which just run the currently queued up events instead of potentially waiting for an event to occur. 2015-05-27 16:42:55 +1000 Matthew Waters * tests/examples/gl/gtk/gstgtk.c: * tests/examples/gl/gtk/gstgtk.h: tests/gl/gtk: implement setting a wayland display/surface 2015-05-27 16:39:06 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: implement basic video overlay support via subsurfaces Currently does not position the subsurface relative to the parent surface at all 2015-05-27 15:44:33 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: allow a NULL wl_event_queue perform operations on the default wl_display event queue in that case 2015-05-27 15:43:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl/utils: implement wayland display GstContext requried for sharing GL contexts or subsurface support 2015-05-22 16:07:49 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: gl/wayland: run each window on a separate queue Based on patch by Julien Isorce https://bugzilla.gnome.org/show_bug.cgi?id=709747 2015-05-30 02:19:25 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: gl: Don't leak temp strings in _RGB_pixel_order() Fix a memory leak of temporary strings when computing swizzling of RGB formats. 2015-05-30 02:29:47 +1000 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Add transform_internal_caps() vfunc Add a vfunc that is called by glfilter before it sets caps features and intersects with the peer caps, and move removing the size from caps into its default implementation. Allows sub-classes to do more sophisticated management of the size fields in case they don't support arbitrary resizing or have distinct preferences. 2015-05-30 02:23:44 +1000 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: glfilter: Don't remove size fields from caps Instead of removing size fields, set them to the full range like videoscale does, so the caps are clearly unfixed in all cases. 2015-05-27 10:58:10 +0100 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gpuprocess/Makefile.am: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.h: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: gl: add GstGLContextGPUProcess backend It builds its GL vtable from a proc address provided by the application. 2015-05-27 16:28:39 +0100 Julien Isorce * ext/gl/gstgleffects.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: add and use gst_gl_internal_format_rgba Previously when compiling GstGL with both GL and GLES2, GL_RGBA8 was picked from GL/gl.h. But a clash may happen at runtime when one is selecting GLES2. gst_gl_internal_format_rgba allows to check at runtime if it should use GL_RGBA or GL_RGBA8. 2015-05-27 14:10:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: glwindow_x11: use parent default implementation 2015-05-27 11:16:32 +0100 Julien Isorce * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext_glx: rename variable from window to context 2015-05-27 11:11:55 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: initialize debug in class_init Useful if one uses gst_gl_window_x11_new directly instead of gst_gl_window_new. 2015-05-27 11:07:38 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: glcontext: initialize debug in class_init Useful if one uses gst_gl_context_egl_new directly instead of gst_gl_context_new. 2015-05-27 10:55:20 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add gst_gl_context_set_display helper 2015-05-27 15:25:40 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.h: glcontext: add missing _CAST after G_TYPE_CHECK_CLASS 2015-05-27 10:51:54 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.h: glwindow: add missing _CAST after G_TYPE_CHECK_CLASS 2015-05-26 18:38:39 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: provides some default implementations to factorize with all backends 2015-05-27 13:05:11 +0100 Luis de Bethencourt * ext/gl/gstgleffects.c: gleffects: 'for' loop initial declaration 'for' loop initial declarations are not allowed in C89, moving the declarations to before the 'for' loops. 2015-05-26 16:47:47 -0400 Xavier Claessens * ext/gl/gstgloverlay.c: gloverlay: fix a leak https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 15:10:28 -0400 Xavier Claessens * ext/gl/gstgloverlay.c: gloverlay: properly handle errors while loading file Post an error on the bus if anything bad happens while reading and parsing the image file. https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 15:04:34 -0400 Xavier Claessens * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: gloverlay: remove unused type_file field https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 15:01:37 -0400 Xavier Claessens * gst-libs/gst/gl/gstglfilter.c: gl: propagate return value from filter and filter_texture https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 12:47:40 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: properly initialize the shaders across contexts implementing multiple API's 2015-05-26 12:44:47 +1000 Matthew Waters * ext/gl/effects/gstgleffectssources.c: gleffects_laplacian: fix shader compilation in gl3/gles2 https://bugzilla.gnome.org/show_bug.cgi?id=748393 2015-05-22 13:12:09 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: remove dead event source code 2015-05-21 17:48:31 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: add GstGLDisplayWayland Simple implementation split from GstGLWindowWayland Can now have multiple glimagesink elements all displaying output linked via GL or otherwise (barring GL platform limitations). The intel driver is racy and can crash setting up the two glimagesink contexts. e.g. videotestsrc ! tee name=t ! queue ! glupload ! glimagesinkelement t. ! queue ! gleffects_blur ! glimagesinkelement videotestsrc ! glupload ! glfiltercube ! tee name=t ! queue ! glimagesinkelement t. ! queue ! gleffects_blur ! glimagesinkelement 2015-05-25 17:27:58 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: fix DrawElements call for element array buffers https://bugzilla.gnome.org/show_bug.cgi?id=749734 2015-05-23 01:00:18 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: provide the exact GL api version for the wrapped context Otherwise we could end up being mistaken for the diference between a gl3 and a gl2 context resulting in a failure getting the list of extensions from the wrapped context due to the difference between glGetString and glGetStringi for the GL_EXTENSIONS token. https://bugzilla.gnome.org/show_bug.cgi?id=749728 2015-05-21 15:30:34 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: do not call SetParent in release_parent_win_id() When called from gst_gl_window_win32_close(), internal window could not exist, and if it does it's going to be destroyed just after that anyway. Also it causes window_proc() to be called and crash because it gets a NULL context. When called from gst_gl_window_win32_set_window_handle() we are going to set another parent anyway, and it's probably better to reparent directly instead of passing by a NULL parent which could cause the internal window to popup briefly. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-21 15:30:00 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: remove unused code https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 17:09:21 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: fix crash when finalizing GstGLContext gst_gl_context_finalize() is calling gst_gl_window_win32_quit() which was posting a message. But then window_proc takes window's context and get a NULL. Now that we've got a GMainLoop we can do like other backends and simply call g_main_loop_quit(). This also remove duplicated code to release the parent window and potential crash there because parent_proc could be NULL if we never created the internal window. That could happen for example if setting state to READY then setting a window_handle, and go back to NULL state. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 17:06:42 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Fix leaked GstGLContext https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 15:30:49 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: set the parent window when creating internal window When _set_window_handle() was called in READY state, it wasn't set to the internal window created later. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 15:29:50 -0400 Xavier Claessens * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/win32_message_source.c: * gst-libs/gst/gl/win32/win32_message_source.h: gl: win32: use a GMainContext to dispatch win32 messages gst_gl_window_win32_send_message_async() could be called before the internal window is created so we cannot use PostMessage there. x11 and wayland backends both create a custom GSource for this, so there is no reason to not do that for win32. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-22 00:27:36 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Don't leak all memory uploaded via raw uploads. Remove an extra ref missed when switching over to not reusing output textures 2015-05-21 16:24:48 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: compositor/glvideomixer: Don't calculate PAR/DAR with unset GstVideoInfos Otherwise we divide by zero. 2015-05-21 15:05:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: require a shader version to initialize. It's very near pointless to try our GL implementation without shaders. https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-20 02:38:53 +1000 Jan Schmidt * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: Fix flags order in GL examples for uninstalled build 2015-05-21 00:56:01 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: compositor/glvideomixer: fix up par handling We were using the wrong formula https://bugzilla.gnome.org/show_bug.cgi?id=749634 2015-05-19 10:43:28 -0400 Xavier Claessens * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: gl: fix crash on windows with intel driver https://bugzilla.gnome.org/show_bug.cgi?id=749430 2015-05-20 00:50:37 +1000 Matthew Waters * ext/gl/caopengllayersink.m: caopengllayersink: static const the indices array the contents will never change anyway. 2015-05-20 00:28:52 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: correctly use the sync meta across multiple contexts 1. Set the sync point after the (possible) upload has occured 2. Wait in the correct GL context (the draw context) Note: We don't add the GL sync meta to the input buffer as it's not writable and a copy would be expensive. Similar to the change with the same name for glimagesink 2015-05-20 00:28:07 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: update for GL3 element array buffer usage fixes blank output 2015-05-19 16:22:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: correctly use the sync meta across multiple contexts 1. Set the sync point after the (possible) upload has occured 2. Wait in the correct GL context (the draw context) Note: We don't add the GL sync meta to the input buffer as it's not writable and a copy would be expensive. 2015-05-19 16:19:41 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: provide a current wrapped GstGLContext for callbacks So that the draw and resize callbacks can get the current GstGLContext. 2015-05-19 16:14:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: ensure that the Fence is going to be executed Otherwise it could stay client side without being submitted to the GL server resulting in another context waiting on a Fence that will never become signalled causing a deadlock. 2015-05-19 11:47:23 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: don't reuse output textures for raw data upload Causes stale textures to be used further down the chain. 2015-05-19 11:11:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: don't clear the framebuffer Breaks attempting to blend with the destination buffer and should be done explicitly by the callback anyway. 2015-05-19 11:09:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: track gl_start/stop correctly Don't start multiple times without calling gl_stop. 2015-05-14 21:21:01 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: free the vertex buffer when done fixes a memory leak 2015-01-22 18:00:36 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: implement GL3 core context selection 2015-05-14 18:35:35 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: tests/gl: fix typo 2015-05-14 16:42:09 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gltestsrc.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls We are using shaders everywhere and so they are not needed 2015-05-14 15:10:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: cleanup properties remove unused "display-name" ensure defaults between the bin/element are the same 2015-05-14 14:56:30 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: only try the GL2 shader init path if we have a GL2 context 2015-05-12 22:04:26 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: attempt to detect the gles2 inside opengl3 case This is necessary to use gles2 shaders in a GL 3 core context on OS X which fails without a proper #version being set on the shaders. 2015-05-12 17:55:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: remove references to gl3 specific shaders We rely specifically on gles2 shaders being supported by the GL implementation with GL3 core profile. 2015-05-01 12:04:28 +1000 Matthew Waters * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: element buffers are part of vao state Use them as such. They are also required for GL3 core profile support with glDrawElements on OS X. 2015-05-07 12:25:10 +0700 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: properly detect (hopefully) the correct ext_rg/arb_rg variant GL_EXT_texture_rg is only valid for GLES2. GLES3 uses similar wording to the GL_ARB_texture_rg which requires a sized internal format that the GL_EXT_texture_rg does not require. https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_rg.txt https://www.opengl.org/registry/specs/ARB/texture_rg.txt 2015-05-13 23:55:28 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: propagate the version/extension failure upwards Otherwise the calling code has no idea that the context failed to be created fully. https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-13 23:54:52 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: don't deadlock on context creation failure https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-13 15:42:15 +0300 Sebastian Dröge * ext/gl/gstglmixerbin.c: glmixerbin: Don't unref pad templates Otherwise we unref the reference that is owned by the element class. 2015-05-13 17:11:55 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: implement par handling We were previously ignoring it completely 2015-05-13 17:10:42 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't upload the vertex data every frame Add the missing cache tracking statement. 2015-05-12 16:36:58 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: gluploadelement: Remove uneeded header and defines 2015-05-11 15:02:02 -0400 Nicolas Dufresne * ext/gl/gstgltestsrc.c: gltestsrc: Use default get_caps implementation The custom code is wrong as it ignores the templates, which leads to missing fields in the result. Instead, simply use the default get_caps implementation which does it correctly (get the template, intersect with filter and return). https://bugzilla.gnome.org/show_bug.cgi?id=749237 2015-05-11 15:54:52 +0300 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Implement GstVideoAggregator::find_best_format() Without this, we will fixate weird pixel-aspect-ratios like 1/2147483647. But in the end, all the negotiation code in videoaggregator needs a big cleanup and videoaggregator needs to get rid of the software-mixer specific things everywhere. 2015-05-11 22:53:09 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: demote upload/convert/download elements to none Copy paste error 2015-05-11 22:37:44 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: expose internal glvideomixerelement\ We might want more control over the exact pipeline Also reduces overhead 2015-05-11 22:35:18 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: expose internal glimagesinkelement We might want more control over the exact pipeline. Also reduces overhead. 2015-05-06 15:47:27 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: Revert "Revert "glimagesink: add pixel-aspect-ratio property on the bin"" This reverts commit d96e43b034a03fe54633907bc1bf2a26fe5f95fb. 2015-05-06 15:47:20 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: Revert "Revert "glimagesink: forward ALL the properties on the bin"" This reverts commit 59fb0f830f08e3e59f87f83df8fa3c2d9f3d9741. 2015-05-06 15:47:04 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstopengl.c: Revert "Revert "glimagesink: implement as a bin"" This reverts commit be938f92d94e8acccf593128281f6e09213600a0. 2015-05-06 15:46:49 +0200 Sebastian Dröge * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: Revert "gl: readd glupload/download onto element pads" This reverts commit 87d8270f302b03f63ce04f986d824892a2c131fd. 2015-05-06 15:43:32 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: Revert "Revert "glvideomixer: implement with glmixerbin"" This reverts commit b4bd11f2f3a60224d188b27ab55b278077cb1217. 2015-05-05 14:44:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: fixup size declaration 2015-05-04 23:42:36 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: handle the local_context query so that upstream elements can get the GL context from glimagesink 2015-05-03 23:08:15 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: Improve passthrough check when no conversion is needed. Make the passthrough check contingent on only the fields we can modify being unchanged, and pre-compute it when caps change instead of checking on each buffer. Makes the passthrough more lenient if consumers are lax about making input and output caps complete. 2015-04-30 11:15:40 +1000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: readd glupload/download onto element pads Allows insertion of gl elements into non-gl pipelines without converter (upload/download) elements. https://bugzilla.gnome.org/show_bug.cgi?id=743974 2015-04-29 22:55:00 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: Revert "glvideomixer: implement with glmixerbin" This reverts commit 0fb56738a14391f248aa0be8756adeaf978baa0c. 2015-04-29 22:38:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstopengl.c: Revert "glimagesink: implement as a bin" This reverts commit 8a0017e21d5f9a8507f0593c6b24f723aa415258. 2015-04-29 22:32:33 +1000 Matthew Waters * ext/gl/gstglimagesink.c: Revert "glimagesink: forward ALL the properties on the bin" This reverts commit 4be45e5f30dc6121f2769323603447f591ca4a0a. 2015-04-29 22:32:20 +1000 Matthew Waters * ext/gl/gstglimagesink.c: Revert "glimagesink: add pixel-aspect-ratio property on the bin" This reverts commit 2ba6bb9b9325b63f58a9ff0b2c82fa28759dcabc. 2015-04-29 02:30:05 +1000 Jan Schmidt * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Cache caps for passing to the client draw call Don't convert the GstVideoInfo to caps on every draw call, just cache the caps and pass them into the GstSample. 2015-04-29 02:20:09 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Make upload method static caps non-const. Retrieving a GstStaticCaps does a one time internal initialisation and caches it - they can't be stored as const structures. 2015-04-28 20:46:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: remove uneeded unref The call to _gl_mem_alloc_data will unref and NULLify 'dest' for us. We just need to return. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-04-28 09:37:59 +0200 Matthieu Bouron * ext/gl/gstglimagesink.c: glimagesink: Use gst_pad_get_pad_template_caps in ::get_caps() 2015-04-28 20:11:07 +1000 Matthew Waters * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: glupload: provide the sink template caps that could be used https://bugzilla.gnome.org/show_bug.cgi?id=746399 2015-04-27 10:11:41 -0400 Xavier Claessens * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: Use maximum bits per color instead of minimum https://bugzilla.gnome.org/show_bug.cgi?id=748425 2015-04-27 14:49:59 +0200 Matthieu Bouron * ext/gl/gstglfiltercube.c: glfiltercube: Don't initialize multiple shaders on renegotiation 2015-04-27 10:24:00 +0200 Matthieu Bouron * ext/gl/gstglimagesink.c: glimagesink: Remove unused stop function 2015-04-27 16:04:50 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unref the pool in the correct place Otherwise we could hold a pool to a context that is never going to be used. https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-27 10:01:53 +0200 Matthieu Bouron * ext/gl/gstgltransformation.c: gltransformation: Unref shader in ::stop() 2015-04-27 15:20:56 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: unref display/other-context in the correct place Otherwise state changes from PLAYING->READY->PAUSED will cause there to to be no display configured on the element. https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-26 21:42:03 +0200 Sebastian Dröge * ext/gl/gstglbumper.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: De-camelcase onInitFBO() vfunc 2015-04-26 21:39:06 +0200 Sebastian Dröge * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Remove onStart/onStop vfuncs, and unused onReset() onStart/onStop are just duplicates of the basetransform ones, onReset was never called but was used everywhere when stop should've been used. 2015-04-21 09:43:58 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: gltransformation: don't initialize multiple shaders on renegotiation https://bugzilla.gnome.org/show_bug.cgi?id=748407 * delete shader if one exists * set it to NULL after unrefing 2015-04-26 21:11:17 +0200 Sebastian Dröge * ext/gl/gstglcolorconvertelement.c: glcolorconvert: Fix compiler warning gstglcolorconvertelement.c:230:19: error: unused variable 'in_structure' [-Werror,-Wunused-variable] GstStructure *in_structure = gst_caps_get_structure (caps, 0); ^ 2015-04-26 20:33:41 +0200 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: Unref other context in finalize, and display in READY->NULL https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-19 19:16:55 +0200 Matthieu Bouron * ext/gl/gstglcolorconvertelement.c: glcolorconvert: Keep colorimetry and chroma-site fields if passthrough https://bugzilla.gnome.org/show_bug.cgi?id=748141 2015-04-24 17:13:10 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: balance change_state display ref/unref the display was being unreffed on the incorrect state change causing invalid state when changing from PLAYING/PAUSED->READY->PAUSED/PLAYING. 2015-04-23 16:47:40 +0200 Matthieu Bouron * ext/gl/gstgluploadelement.c: glupload: Release glupload buffer when caps are changed https://bugzilla.gnome.org/show_bug.cgi?id=748371 2015-04-22 18:54:45 +0900 Vineeth T M * ext/gl/gstglmixer.c: glmixer: Possible null pointer dereference While printing error message when context fails, error variable is not being used anymore so it will lead to null pointer dereference https://bugzilla.gnome.org/show_bug.cgi?id=748287 2015-04-05 20:18:56 +0200 Michał Dębski * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstopengl.c: gleffects: Create element for each effect https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-22 11:22:52 +0100 Michał Dębski * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterlaplacian.h: * ext/gl/gstopengl.c: gleffects: Merge laplacian filter into effects https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-22 11:20:49 +0100 Michał Dębski * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglfiltersobel.h: * ext/gl/gstopengl.c: gleffects: Merge sobel filter into effects https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-22 11:13:30 +0100 Michał Dębski * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectblur.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfilterblur.h: * ext/gl/gstopengl.c: gleffects: Merge blur filter into effects https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-21 23:50:33 +0100 Michał Dębski * ext/gl/effects/gstgleffectglow.c: * ext/gl/gstglfilterblur.c: gleffects: Correct attributes for hconv and vconv shaders Width and height were switched for glow shaders. For blur filter attributes names were obsolete. https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-21 23:21:13 +0100 Michał Dębski * ext/gl/effects/gstgleffectssources.c: gleffects: Fix fisheye shader - pass float to sqrt On OSX passing literal int to sqrt() in GLSL results in error. https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-04-21 07:28:58 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: gltransformation: fix shader memory leak 2015-04-21 12:25:11 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: track context activation properly We only need to deactivate/reactivate the context iff it was already active. 2015-04-21 12:19:46 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: synchronize the searching and creation of GstGLContext's Ootherwise we could end up with multiple elements in different chains each creating a context. Fixes context creation with glvideomixer. 2015-04-15 15:22:37 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: fix caps leak in gst_gl_mixer_pad_sink_getcaps() Caps refcounting was all wrong in this function. Rewrote it and add some comments to make it clearer. Fix caps leaks with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747915 Signed-off-by: Guillaume Desmottes 2015-04-16 14:21:16 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: unref owned caps when finalizing the mixer Fix a caps leak with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747915 Signed-off-by: Guillaume Desmottes 2015-04-15 15:16:33 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: pass the proper free function to frames and buffers array 'array_buffers' contain borrowed GstBuffer and so shouldn't have a free function. 'frames' is the one containing GstGLMixerFrameData and so should use _free_glmixer_frame_data as free function. Fix GstGLMixerFrameData leaks with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747913 Signed-off-by: Guillaume Desmottes 2015-04-17 15:20:12 +0200 Sebastian Dröge * ext/gl/gstgldownloadelement.c: gldownloadelement: Download *from* OpenGL, not into 2015-04-17 14:24:28 +0200 Matthieu Bouron * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: Make gst_gl_context_egl_activate fail if the old surface could not be destroyed https://bugzilla.gnome.org/show_bug.cgi?id=746251 2015-04-17 10:38:16 +0200 Matthieu Bouron * ext/gl/gstgluploadelement.c: gluploadelement: Unref GstGLUpload object and caps in ::stop() Fix leak of the GstGLUpload object. https://bugzilla.gnome.org/show_bug.cgi?id=748033 2015-04-17 14:09:47 +0200 Sebastian Dröge * ext/gl/gstglbasemixer.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixer.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: gl: Remove some empty ::finalize() implementations 2015-04-17 14:06:03 +0200 Sebastian Dröge * ext/gl/gstgldownloadelement.c: gldownloadelement: Fix element description 2015-04-17 14:05:44 +0200 Sebastian Dröge * ext/gl/gstgldownloadelement.c: gldownloadelement: Remove unused ::finalize() implementation 2015-04-17 14:03:21 +0200 Sebastian Dröge * ext/gl/gstglcolorconvertelement.c: glcolorconvertelement: Also unref caps in ::stop() already They are not useful anymore afterwards, so keeping them until ::finalize() might only cause someone to use them later and then fail. 2015-04-15 14:49:02 +0200 Guillaume Desmottes * ext/gl/gstglcolorconvertelement.c: glcolorconvertelement: fix GstGLColorConvert leak convert->convert was never unreffed. This can be reproduce with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747911 2015-04-16 10:42:45 +0200 Matthieu Bouron * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: Make gst_gl_context_egl_activate fail if the surface could not be created Also add some error logging. 2015-04-11 19:35:48 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix last commit 2015-04-11 19:17:00 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: gl: Remove iOS/EAGL workaround for R/RG textures This should be unneeded now after https://bugzilla.gnome.org/show_bug.cgi?id=732507 2015-04-11 19:14:34 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Add correct check for RG/R textures in glcolorconvert too https://bugzilla.gnome.org/show_bug.cgi?id=732507 2015-03-31 17:10:45 +0100 Anton Obzhirov * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: avoid segfault when gl platform is not available https://bugzilla.gnome.org/show_bug.cgi?id=747124 2015-04-06 20:28:22 -0700 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Disconnect mouse/key event signal handlers from window when shutting down context 2015-04-06 20:24:06 -0700 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Guard against disconnecting invalid signal ids 2015-04-02 18:05:55 +1100 Alessandro Decina * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: fix rendering on iOS Stop assuming that the handle has been set by the time ->create_context is called. After bc7a7259f357b0065dd94e0668b5a895d83fa53a set_window_handle always happens after ->create_context in fact. See also https://bugzilla.gnome.org/show_bug.cgi?id=745090 2015-03-31 16:27:00 +0200 Edward Hervey * ext/gl/gstglvideomixer.c: glvideomixer: Don't use context if not present Avoids assertions at runtime 2015-03-31 11:24:57 +0200 Edward Hervey * gst-libs/gst/gl/Makefile.am: introspection: Don't use g-ir-scanner cache at compile time It pollutes user directories and we don't need to cache it https://bugzilla.gnome.org/show_bug.cgi?id=747095 2015-03-30 13:49:01 +0100 Anton Obzhirov * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfiltersobel.c: gleffects: port all effects to GLES2.0 https://bugzilla.gnome.org/show_bug.cgi?id=745955 2015-03-23 16:43:01 +0100 Philippe Normand * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/dispmanx: surfaceless EGL context support Show the DispmanX window only if there's no shared external GL context set up. When a window is required by the context a transparent DispmanX element is created and later on made visible by the ::show method. https://bugzilla.gnome.org/show_bug.cgi?id=746632 2015-03-22 19:12:15 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: remove unused gl_thread field 2015-03-22 19:03:19 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix GThread leak https://bugzilla.gnome.org/show_bug.cgi?id=746541 2015-03-20 18:33:45 +0100 Nicola Murino * ext/gl/gstglimagesink.c: glimagesink: fix caps leak https://bugzilla.gnome.org/show_bug.cgi?id=746541 2015-03-18 10:12:49 -0700 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: gl/docs: update some doc comments 2015-03-15 12:58:26 +0000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: tentative proper context collision detection Fixes tee name=t ! queue ! gliamgesink t. ! queue ! glimagesink 2015-03-14 19:48:21 +0100 Víctor Manuel Jáquez Leal * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: glupload: move meta-data copy into gst-gl library In some upload implementations the out buffer has more than one references, turning the buffer not writable, so it won't be possible to modify its meta-data. This patch moves the meta-data copy before increasing the reference of the out buffer. https://bugzilla.gnome.org/show_bug.cgi?id=746173 2015-03-14 18:45:01 +0000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: fix the slight difference between EXT_rg and ARB_rg GL_EXT_texture_rg doesn't take sized formats for the internalformat parameter of TexImage* but GL_ARB_texture_rg and GL(ES)3 do. https://bugzilla.gnome.org/show_bug.cgi?id=732507 2015-03-14 18:10:24 +0000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: gl/examples: fixup generic cube example for NDC translating outside the clip region doesn't work 2015-03-14 15:38:28 +0000 Julien Isorce * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/sdlshare2.c: gl/examples: add sdlshare2 that uses glimagesink to output textures https://bugzilla.gnome.org/show_bug.cgi?id=739681 2015-03-14 16:30:42 +0000 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: keep window invisible when sharing output https://bugzilla.gnome.org/show_bug.cgi?id=739681 2015-03-14 15:16:55 +0000 Julien Isorce * ext/gl/gstglimagesink.c: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: glimagesink: provide GstSample in client-draw signal Instead of prividing texture and size directly. And apply changes to examples. https://bugzilla.gnome.org/show_bug.cgi?id=739681 2015-03-14 15:37:05 +0000 Julien Isorce * tests/examples/gl/sdl/sdlshare.c: sdlshare: use glupload and unmap frame 2015-03-14 16:25:29 +0000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: make context to wait and set sync explicit otherwise we may wait on a sync object in same context by accident 2015-03-14 12:58:22 +0000 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Add NULL check in error case Other context may be NULL if something went wrong. Avoid trying to unref a NULL pointer. 2015-03-14 10:39:06 +0000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgluploadelement.c: glupload/colorconvert: only copy timestamps if the input buffer != output 2015-03-11 00:06:55 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/gstgldisplay.c: gl: add GstGLDisplayCocoa https://bugzilla.gnome.org/show_bug.cgi?id=746012 2015-03-13 09:07:16 +0000 Julien Isorce * tests/examples/gl/cocoa/cocoa-videooverlay.m: examples: initialize NSApp at the beginning 2015-03-14 07:49:14 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: do not terminate loop in gst_gl_window_cocoa_close It is now done in _finalize. Fix regression introduced by "gl/window: create the main loop/context on init/finalize" bc7a7259f357b0065dd94e0668b5a895d83fa53a 2015-03-13 15:34:55 +0000 Julien Isorce * gst-libs/gst/gl/gstglutils.c: gl: avoid overwriting display and context to NULL It happens when the application provides display and/or context. 2015-03-13 17:41:17 +0000 Matthew Waters * ext/gl/gltestsrc.c: * gst-libs/gst/gl/gstglshader.c: glshader: attribute locations are -1 on error 2015-03-13 17:04:17 +0000 Neos3452 * gst-libs/gst/gl/gstglshader.c: glshader: prevent from getting attributes without vertex shader It doesn't make sense to query for vertex attributes without a vertex shader. Moreover this is causing a crash on OSX. https://bugzilla.gnome.org/show_bug.cgi?id=746168 2015-03-14 02:53:00 +1100 Jan Schmidt * ext/gl/gstglfilterbin.c: GL: Remove annoying printf in the filterbin class_init 2015-03-13 12:43:13 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: add pixel-aspect-ratio property on the bin 2015-03-13 12:40:04 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: unref the bufferpool 2015-03-13 12:29:54 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: forward ALL the properties on the bin 2015-03-13 12:28:36 +0000 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: properly unref buffers that are the same as the input basetransform doesn't unref equal input and output buffers 2015-03-13 10:25:35 +0000 Matthew Waters * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglbumper.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: get the context from basemixer/basefilter 2015-03-13 09:38:54 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: gl: retreive the gldisplay/app gl context as soon as possible fixes the usage of gst_gl_display_filter_gl_api 2015-03-13 09:37:46 +0000 Matthew Waters * tests/check/libs/gstglcontext.c: gl/tests: fix deadlock on glcontext wrapped context test 2015-03-12 16:46:44 +0000 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: cache indices in a buffer object 2015-03-08 18:16:04 +1100 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * ext/gl/gstopengl.c: caopengllayersink: implement as a bin like glimagesink 2015-03-03 18:05:04 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: avoid deadlock when creating context on the main thread. Make window/view creation async so that it is possible to gst_gl_context_create from the main thread. 2015-03-03 17:26:47 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl: store the list of contexts within gldisplay Removes the reliance on the allocation query to propogate GL contexts. Allows thread safely getting a context for the a specific thread. 2015-03-03 16:48:24 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unset the current shader after rendering fixes gltestsrc ! glimagesink when gltestsrc doesn't use a shader 2015-03-03 16:38:56 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: remove usage of gldownload library object 2015-02-28 00:30:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: store the thread current context 2015-02-26 18:26:36 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsrcbin.c: * ext/gl/gstglsrcbin.h: * ext/gl/gstopengl.c: gl: new glsrcbin element 2015-02-26 13:45:56 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: glvideomixer: implement with glmixerbin The relevant properties are forwarded to/from the containing bin and sink pads. 2015-02-26 00:20:37 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: glmixer: remove usage of upload/download objects 2015-02-25 23:48:56 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglmixerbin.c: * ext/gl/gstglmixerbin.h: * ext/gl/gstopengl.c: gl: new glmixerbin element 2015-02-20 16:47:01 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstopengl.c: glimagesink: implement as a bin glupload ! glcolorconvert ! sink Some properties are manually forwarded. The rest are available using GstChildProxy. The two signals are forwarded as well. 2015-02-19 18:23:37 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsinkbin.h: * ext/gl/gstopengl.c: gl: new glsinkbin element similar to glfilterbin but for sinks 2015-02-19 14:19:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: don't use the library upload/convert objects 2015-02-19 13:33:28 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglfilterbin.c: * ext/gl/gstglfilterbin.h: * ext/gl/gstopengl.c: gl: new element glfilterbin It encapsulates a confiurable GL processing element in the upload/colorconvert/download dance required to transparently process the majority of GstBuffer's. 2015-02-19 13:24:59 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * ext/gl/gstopengl.c: gl: add new gldownloadelement Simply transforms caps to/from raw/glmemory capsfeatures 2015-02-12 17:59:27 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstopengl.c: gl: add a new glcolorconvert element based on the glcolorconvert library object 2015-03-11 16:56:16 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: implement propose_allocation pool handling for glmemory upload 2015-02-11 23:29:01 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgluploadelement.c: * ext/gl/gstgluploadelement.h: * ext/gl/gstopengl.c: gl: add a new glupload element based on the glupload library object 2015-02-11 14:48:45 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmixerpad.h: * ext/gl/gstglvideomixer.h: gl: add a new glbasemixer class below glmixer It deals with propagating the gl display/contexts throughout the application/pipeline 2015-02-11 01:48:11 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: add a new glbasefilter class below glfilter It deals with propagating the gl display/contexts throughout the application/pipeline 2015-02-11 01:27:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: expose running a query on a set of src/sink pads 2015-03-12 10:14:50 +0000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: advertise resize in the caps negotiation properly 2015-03-12 09:46:02 +0000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: we don't do resizing of the video frames As we cannot do accurate texel sampling then due to the texture coordinates being interpolated based on the output frame size. 2015-03-11 18:49:22 +0000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: don't XGetWindowAttributes every XEvent fixes a deadlock in xcb where the X window may not exist. https://bugzilla.gnome.org/show_bug.cgi?id=745633 2015-03-11 14:50:28 +0000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/window: hopefully fixup compile warnings on android/ios 2015-03-11 17:19:17 +1100 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: glfilter: Remove redundant check for clearing context on reset. The context is already cleared a few lines above. 2015-03-11 16:55:14 +1100 Jan Schmidt * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: Remove a bunch of silly ';;' typos at the end of lines 2015-03-06 15:31:18 +1100 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window: create the main loop/context on init/finalize Avoids races setting the window handle from the main thread. https://bugzilla.gnome.org/show_bug.cgi?id=745633 2015-03-09 12:41:59 +0900 hoonhee.lee * tests/check/libs/gstglcontext.c: tests: glcontext: remove unnecessary semicolon https://bugzilla.gnome.org/show_bug.cgi?id=745875 2015-03-06 20:11:00 -0500 Nicolas Dufresne * ext/gl/gstglmixer.c: glmixer: Don't share our downstream pool with upstream Pool cannot have multiple owner. This can lead to spurious pool was flushing error. https://bugzilla.gnome.org/show_bug.cgi?id=74570 2015-03-05 16:28:36 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Don't chain downstream pool Chaining a downstream pool would lead to two owner of the same pool. In dynamic pipeline, if one owner is removed from the pipeline the pool will be stopped, and the rest of the pipeline will fail since the pool will now be flushing. Also fix proposed pool caching, filter->pool was never set, never unrefed. https://bugzilla.gnome.org/show_bug.cgi?id=745705 2015-03-05 15:49:50 -0500 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Only cache pool, don't manage it GLImage does not use any kind of internal pool. There was some remaining code and comment stating that it was managing the pool, and it was in fact setting the active state when doing to ready state. * Only create the pool if requested and in propose_allocation * Cache the pool to avoid reallocation on spurious reconfigure * Don't try to deactivate the pool (we don't own it) https://bugzilla.gnome.org/show_bug.cgi?id=745705 2015-03-06 18:54:24 +0100 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: gldownload: Simplify caps feature setting code 2015-03-06 18:15:11 +0100 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: gl: Remove format info in glcolorconvert's transform_caps function instead of on every caller ... and let glmixer actually transform the caps it is supposed to transform instead of inventing new caps. 2015-03-06 18:36:12 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Simplify caps feature setting code 2015-03-05 19:09:49 +0100 Edward Hervey * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Only use debugging if we have valid values The debug category won't have been created/activated if it's not a valid display 2015-03-03 15:22:38 -0500 Nicolas Dufresne * ext/gl/gstgloverlay.c: gloverlay: Fix upside down and miss-aligned JPEG LibJPEG uses macroblock of 8x8 sample. In this element we use RGB and Y444, two 24bit formats that are stored in 32bit pixels. This mean we have 32x32 bytes macroblocks. For this reason, we need to allocate our buffer slightly larger. We also need to pass the line pointer in the right order, otherwise the image endup upside-down. https://bugzilla.gnome.org/show_bug.cgi?id=745109 2015-02-18 21:21:01 -0500 Xavier Claessens gltransformation: normalize translations https://bugzilla.gnome.org/show_bug.cgi?id=744763 * Lubosz: use maxfloat for transformation range 2015-02-18 20:41:14 -0500 Xavier Claessens * ext/gl/gstgltransformation.c: gltransformation: Fix doc typo https://bugzilla.gnome.org/show_bug.cgi?id=744763 2015-03-03 13:45:46 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Get rid of uploader if caps have changed We need to update the uploader format if that caps have changed. https://bugzilla.gnome.org/show_bug.cgi?id=745549 2015-03-03 16:55:26 +0100 Edward Hervey * gst-libs/gst/gl/gstglwindow.c: gl: Fix context leaks Introduced by a12ca13750a15300ab3c718ebde2984dc3d587b3 2015-03-01 19:57:23 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: register only one custom nsapp loop Otherwise the pipeline stalls when running more than one glimagesink with gst-launch. Also only register the custom nsapp loop when setting up the nsapp from gstgl. 2015-03-01 16:54:10 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: instead of class_init use g_once to setup nsapp 2015-02-26 23:04:09 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: check for deprecated constants prior to OSX 10.10 2015-03-01 09:43:32 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: Fix offset for odd height We also need to recalculate the offset, since otherwise the frame mapping will be forward two lines in the U and V planes (I420) due to gst_video_info_align() round up the Y plane to a even number of lines. https://bugzilla.gnome.org/show_bug.cgi?id=745054 2015-03-01 00:08:42 -0500 Nicolas Dufresne * tests/check/libs/gstglmemory.c: gl-test: Port unit tests to new API 2015-02-28 15:00:13 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Support offset when downloading Make sure we support offset and video alignment when downloading too. This is currently not used (plane_start is always 0), but it makes the code correct if we want to use that later. 2015-02-28 13:01:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Provide correct size on upload Provide the right size to GL when uploading. Using maxsize is wrong since we offset the data point with the memory offset and video alignement offset. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-28 12:48:03 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Provide correct size on download Provide the right size to GL when downloading. This fixes downloading from GLMemory that where created for libav. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-28 11:55:26 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: Use fallback for partial copy When the memory is partial copy, the texture size and videoinfo no longer make sense. As we cannot guess what the application wants, we safely copy into a sysmem memory. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-25 18:07:03 -0500 Nicolas Dufresne * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: glmemory: Add GstAllocationParams and alignment support This implements support for GstAllocationParams and memory alignments. The parameters where simply ignored which could lead to crash on certain platform when used with libav and no luck. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-28 18:21:33 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: perform egl upload on the gl thread Fixes EGLImage usage on raspberry pi https://bugzilla.gnome.org/show_bug.cgi?id=743914 2015-02-26 13:20:26 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/gstglupload.c: glupload: Set freed method implementation to NULL When trying to render buffers with meta:GLTextureUpload the glimagesink crashes with a segmentation fault. This patch workarounds this crash setting to NULL the method implementation after free. https://bugzilla.gnome.org/show_bug.cgi?id=745206 2015-02-24 19:01:45 -0500 Nicolas Dufresne * ext/gl/Makefile.am: opengl: Clean Makefile.am + Split headers from source + Remove uneeded AM_CFLAGS, AM_LDFLAGS + Always set OBJCFLAGS Due to the presence of a .m and regardless of the conditional values, automake will promote the link command to OBJC using OBJCFLAGS. Only the basic flags (like warnings and optimization) are going to make a difference though. This cleanup builds up the makefile with less specific files first toward more specific file. FLAGS are built with the basic that unused flags will have empty variable. 2015-02-24 12:54:54 -0500 Xavier Claessens * ext/gl/gstglimagesink.c: glimagesink: cosmetic cleanup https://bugzilla.gnome.org/show_bug.cgi?id=745105 2015-02-24 19:52:59 +0000 Tim-Philipp Müller * ext/gl/Makefile.am: opengl: don't add --tag=CC twice to LIBTOOLFLAGS 2015-02-24 14:35:37 -0500 Nicolas Dufresne * ext/gl/Makefile.am: opengl: Add --tag=CC to LIBTOOLCLFAGS This is required for static build. 2015-02-24 14:01:04 +0100 Edward Hervey * gst-libs/gst/gl/gstglwindow.c: glwindow: Deactivate window before changing handle When setting a new window handle, we need to ensure all implementations will detect the change. For that we deactivate the context before setting the window handle, then reactivate the context https://bugzilla.gnome.org/show_bug.cgi?id=745090 2015-02-24 13:58:26 +0100 Edward Hervey * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/egl: Detect window handle changes When (re)activating the context, the backing window handle might have changed. If that happened, destroy the previous surface and create a new one https://bugzilla.gnome.org/show_bug.cgi?id=745090 2015-02-24 14:20:42 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglapi.c: gl: remove docbook related warnings 2015-02-24 23:52:39 +1100 Matthew Waters * ext/gl/caopengllayersink.m: caopengllayersink: render black when we don't have a texture to display Like when the winsys asks us to redraw before the pipeline has started 2015-02-25 00:00:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: allow sharing between buffers There was no real reason why the flag was set. We should be able to handle it. Fixes last-sample handling on gl sinks 2015-02-24 20:34:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: add compat definition for gles2 2015-01-29 17:41:19 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * ext/gl/gstopengl.c: new caopengllayersink element renders gstreamer gl scene/video frames to a caopengllayer retreivable from the "layer" property. 2015-02-24 19:06:18 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: don't use the async callback to render not until we can provide equivalent functionality for other window implementations. 2015-02-24 01:20:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: also supported with gles3 2015-02-24 14:23:49 +1100 Alessandro Decina * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: eagl: handle CALayer resize 2015-02-23 16:13:31 +0100 Vasilis Liaskovitis * gst-libs/gst/gl/gstglmemory.c: glmemory: Fix transfer_pbo memory leak https://bugzilla.gnome.org/show_bug.cgi?id=744977 2015-02-22 10:03:54 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: reduce custom main loop latency This fix a very slow rendering rate regression that only happens when using gst-launch, i.e. in the case where the main thread does not run any NSApp loop. Git bisect reported it has been introduced by the commit e10d2417e2fe7aa4733c076984339b0d61caa169: "move to CGL and CAOpenGLLayer for rendering". Then the commit 7d463576271e5a4cc1070780ba1a69c971e8be1d: "gstglwindow_cocoa: fix slow render rate" attempted to fix the slow rendering rate problem when using gst-launch. At least for me it does not work. I tried several combinations, for example to flush CA transactions in the custom app loop, as mentioned in the doc, but the only solution that fixes the slow rendering is by reducing the loop latency. From what I tested, no need to put less than 60ms, even if the framerate has an interval much lower (16.6ms for 60 fps). 2015-02-17 23:50:51 +0000 Julien Isorce * ext/gl/gstglmixerpad.h: glmixer: fix some compiler warnings i686-apple-darwin11-llvm-gcc-4.2 gstglmixer.h:43: error: redefinition of typedef ‘GstGLMixer’ gstglmixerpad.h:32: error: previous declaration of ‘GstGLMixer’ was here gstglmixer.h:46: error: redefinition of typedef ‘GstGLMixerFrameData’ gstglmixerpad.h:33: error: previous declaration of ‘GstGLMixerFrameData’ was here 2015-02-21 14:42:05 +0100 Mathieu Duponchelle * gst-libs/gst/gl/gstglmemory.c: gstglmemory: Remove now unused transfer_upload function. 2015-02-21 23:29:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: disable automatic pbo upload until we can track where the data is/or is going to be. 2015-02-20 18:42:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glememory: only store and act on the map flags on first/last map/unmap Anytime else, we have no idea how to match up map and unmaps. We also don't know exactly how the calling code is using us. Also fixes the case where we're trying to transfer while someone else is accessing our data pointer or texture resulting in mismatched video frames. https://bugzilla.gnome.org/show_bug.cgi?id=744839 2015-02-18 17:10:48 -0500 Nicolas Dufresne * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransform: Fix includes of graphene headers The graphene-1.0 part should not be in the source code. This directory is part of the cflags include. This is similar to gstreamer-1.0/ directory. This break compilation if the include directory where graphene is installed is not in your include path. 2015-02-17 18:17:59 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: don't deadlock if the dispatch_sync is called from the main thread Provide a helper function to check whether we are being called from the main thread and act appropriately. 2015-02-17 16:41:17 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: only start drawing if the parent gl context is ready otherwise we may try to use GstGLFuncs * that hasn't been set yet 2015-02-17 16:39:56 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: small refactor of layer/view creation into the window 2015-02-17 01:04:38 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: glwindow: Remove assertion in gst_gl_window_show() for subclasses not implementing it On Android and iOS we can't create a window ourselves, so also can't just show one. That's not a problem and an assertion is not really needed here. 2015-02-12 17:33:50 +0100 Edward Hervey * ext/gl/gstglimagesink.c: glimagesink: Fix debug statement 2015-02-12 15:02:31 +0100 Edward Hervey * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: gl: Add/Update more debug statements Where possible, use the _OBJECT variants in order to track better from which object the debug statement is coming from Define (and use) GST_CAT_DEFAULT where applicable Use GST_PTR_FORMAT where applicable 2015-02-12 14:58:14 +0100 Edward Hervey * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.h: gl: Make glcontext debug category used in more places As a bonus it makes the egl context debug messages visible now :) 2015-02-12 14:56:12 +0100 Edward Hervey * ext/gl/gstglimagesink.c: glimagesink: Sprinkle more debug 2015-02-09 20:44:50 +1100 Alessandro Decina * gst-libs/gst/gl/gstglmemory.c: libgstgl: set user data and GDestroyNotify for wrapped textures 2015-02-06 12:53:15 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/vao.h: glproto/vao: only supported in core for ES 3.0+ Was causing horizontally flipped video for frame 2 onward on android 2015-02-05 16:46:32 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: ensure that the input upload/colorconvert are always available 2015-02-05 11:06:10 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: log the converted caps 2015-02-05 11:05:02 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: restrict EGL and UploadMeta to RGBA other formats are highly untested. 2015-02-05 11:04:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't intersect with the input caps that limits our formats to whatever is in the input caps 2015-02-04 14:10:13 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglfilter.c: gl: fix memory leak In gst_gl_filter_fixate_caps () it can goto done without freeing the memory of the tmp GstStructure. This makes it go out of scope and leak. CID #1265765 2015-02-03 15:30:08 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: gl: remove the egl caps from the src pads we don't actually support producing EGLImage buffers anywhere. 2015-02-03 13:32:47 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: put GstGLSyncMeta on output buffers allows thread safely using the provided output buffer in a separate thread 2015-02-03 00:35:26 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: only try the glmemory upload for sysmem/glmemory caps features Allows selecting/testing the upload path with explicit caps features. 2015-02-03 00:26:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add missing initilisation of tex_target when copying fixes: glcolorscale ! video/x-raw\(meta:GstVideoGLTextureUploadMeta\) ! glimagesink 2015-02-03 00:15:30 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: allow NULL buffer for accept vfunc 2015-02-03 00:13:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: remove unsed convert field in private struct 2015-02-03 00:11:06 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glupload/download/convert: provide transform_caps functions Allows finer grain decisions about formats and features at each stage of the pipeline. Also provide propose_allocation for glupload besed on the supported methods. 2015-02-03 11:07:58 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gstglwindow_cocoa: fix slow render rate In gst_gl_window_cocoa_draw we used to just call setNeedsDisplay:YES. That was creating an implicit CA transaction which was getting committed at the next runloop iteration. Since we don't know how often the main runloop is running, and when we run it implicitly (from gst_gl_window_cocoa_nsapp_iteration) we only do so every 200ms, use an explicit CA transaction instead and commit it immediately. CA transactions nest and debounce automatically so this will never result in extra work. 2015-02-02 23:40:16 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: gstglcaopengllayer: use the correct rectangle type for iOS and OS X 2015-02-02 21:07:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: use the correct caps feature for supported caps glcolorconvert currently only supports converting between GLMemory targets. 2015-02-02 20:51:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: don't use the gst debug object variants We are not a GObject or any inferable GstMiniObject supported by the gst debug system. Also fixes a segfault. 2015-01-30 18:51:17 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: gl: update unit test for glmemory api change 2015-01-30 15:13:27 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: clobber the alpha channel by default this can be disabled with the ignore-alpha property 2015-01-30 12:32:17 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: Revert "libgstgl: gstglcaopengllayer: set the layer as opaque" This reverts commit 6f152d381ca21595cdc823f32341c8f2fe71b9c7. The layer shouldn't be always opaque, it should be made a property. 2015-01-30 12:22:25 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: libgstgl: gstglcaopengllayer: set the layer as opaque 2015-01-29 16:30:34 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Add FIXME comment about possibility of non-Apple YCbCr422 rectangular textures 2015-01-29 16:26:26 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Only use GL_TEXTURE_RECTANGLE with OpenGL It's not defined for GLES. 2015-01-28 00:48:27 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: libgstgl: run a custom shader to convert YUV to RGB on mac and ios When GL_APPLE_ycbcr_422 is available, run a custom shader to convert GL_TEXTURE_RECTANGLE textures from YUV to RGB. See https://www.opengl.org/registry/specs/APPLE/ycbcr_422.txt 2015-01-28 00:13:46 +1100 Alessandro Decina * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstgluploadmeta.c: gl: initial support for texture targets other than GL_TEXTURE_2D Make GstGLMemory hold the texture target (tex_target) the texture it represents (tex_id) is bound to. Modify gst_gl_memory_wrapped_texture and gst_gl_download_perform_with_data to take the texture target as an argument. This change is needed to support wrapping textures created outside libgstgl, which might be bound to a target other than GL_TEXTURE_2D. For example on OSX textures coming from VideoToolbox have target GL_TEXTURE_RECTANGLE. With this change we still keep (and sometimes imply) GL_TEXTURE_2D as the target of textures created with libgstgl. API: modify GstGLMemory API: modify gst_gl_memory_wrapped_texture API: gst_gl_download_perform_with_data 2015-01-22 13:18:23 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: gstglcolorconvert: micro optimization Don't call glClear && glClearColor at each draw since we're going to draw the whole viewport anyway. Gets rid of a glFlush triggered by glClear on OSX. 2015-01-22 13:11:46 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: gstglcolorconvert: relax caps features check Require caps to have the GST_CAPS_FEATURE_MEMORY_GL_MEMORY feature but allow them to have more features. 2015-01-29 23:45:15 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/win32: fixup compilation 2015-01-29 22:25:00 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: make showing a window explicit Also fixes the cgl context always displaying a window to render to for every GstGLContextCocoa created 2015-01-29 17:31:09 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/calayer: add resize callback based on the bounds rectangle 2015-01-29 15:26:21 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: draw asynchronously This essentially makes the CAOpenGLLayer draw every refresh cycle. 2015-01-28 17:59:42 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: don't segfault if we have a NULL draw/resize/close callback 2015-01-28 17:16:14 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cgl/calayer: use a callback instead of hardcoding the draw functionality 2015-01-28 17:13:05 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: cgl: install the gl context and gl layer headers 2015-01-28 17:05:14 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: cgl: add a header for the CAOpenGLLayer support 2015-01-27 11:25:53 +0100 Philippe Normand * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: fix build Commit ab48bb6f0f55091662e595a001e178154ce60cdb changed the API of GstGLWindow. 2015-01-27 14:52:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: more compatibility defines for gles2 systems 2015-01-27 12:15:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: add some thread safety for gl operations 2015-01-27 11:53:51 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: use pbo's for download In order to use pbo's efficiently, the transfer operation has to be separated from the use of the downloaded data which requires some rearchitecturing around glcolorconvert/gldownload and elements 2015-01-27 11:04:07 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/base.h: glprototypes: add some (un)map buffer variants for GL/GLES 2015-01-23 12:41:29 +0100 Edward Hervey * ext/gl/gstgltestsrc.c: gltestsrc: Ensure variable is initialized before usage Coverity CID: 1256569 2015-01-23 17:27:42 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/tests: update glwindow api change 2015-01-23 16:52:25 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/window/eagl: fix a couple of typos 2015-01-23 16:39:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: cleanup/reorganize functions/members into logical groups 2015-01-23 14:18:12 +1100 Matthew Waters * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: gl/qt/examples: update for NSOpenGL -> CGL change 2015-01-23 14:11:48 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove width/height from _draw() Depending on the platform, it was only ever implemented to 1) set a default surface size, 2) resize based on the video frame or 3) nothing. Instead, provide a set_preferred_size () that elements/applications can use to request a certain size which may be ignored for videooverlay/other cases. 2015-01-22 21:43:51 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: avoid destroying a possibly 0 GSource id 2015-01-20 22:01:39 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: move to CGL and CAOpenGLLayer for rendering Removes the use of NSOpenGL* variety and functions. Any Cocoa specific functions that took/returned a NSOpenGL* object now take/return the CGL equivalents. 2015-01-22 16:08:11 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: add debug category 2015-01-21 10:17:04 +0100 Sebastian Dröge * ext/gl/gstglfilterreflectedscreen.c: * gst-libs/gst/gl/gstglupload.c: Constify some static arrays everywhere 2015-01-18 21:05:44 +0100 Nicola Murino * ext/gl/gstglimagesink.c: glimagesink: fix memleak https://bugzilla.gnome.org/show_bug.cgi?id=743142 2015-01-17 10:06:40 +1100 Lasse Laursen * gst-libs/gst/gl/gstglapi.h: glapi: fix compilation with latest MSVC https://bugzilla.gnome.org/show_bug.cgi?id=743041 2015-01-15 12:57:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: use the correct size for the pbo It was missing the GstVideoAlignment padding which could cause GL errors related to overrunning the size of the pbo. 2015-01-15 09:47:45 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixerpad.h: * ext/gl/gstglvideomixer.c: glvideomixer: don't upload if alpha <= 0 Implemented using a upload_buffer vfunc within GstGLMixer allowing NULL uploaded buffers. 2015-01-15 09:45:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: remove spurious gst_video_info_align That will be taken care of by the calling code (typically a bufferpool). The GstVideoAlignment is purely informational to compute plane data sizes. 2015-01-14 22:08:43 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglcolorconvert.c: gl: split glcolorconvert usage from glupload the separation allows the transfer operation to occur in a separate thread/time which may increase performance in specific circumstances. 2015-01-14 12:39:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: offset the data pointer for upload for GstVideoAlignment otherwise we attempt to read from the padding data 2015-01-14 00:08:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: use pbo's for upload 2015-01-13 23:47:06 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: relax the GLMemory uploader check for input caps features As there may be a sysmem caps features with GLMemory filled buffers. e.g. videotestsrc ! glimagesink 2014-12-25 23:10:19 +0100 Nicola Murino * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix memleak https://bugzilla.gnome.org/show_bug.cgi?id=741943 2014-12-25 22:59:42 +0100 Nicola Murino * gst-libs/gst/gl/gstglupload.c: glupload: fix some memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=741943 2014-12-31 17:45:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * tests/check/libs/gstglcontext.c: glcontext: allow wrapped contexts to be utilised like non-wrapped contexts Fill in the missing pieces like get_proc_address, the gl function vtable 2015-01-10 15:34:57 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Disable hack for NSApp iteration with a special #define The hack causes deadlocks and other interesting problems and it really can only be fixed properly inside GLib. We will include a patch for GLib in our builds for now that handles this, and hopefully at some point GLib will also merge a proper solution. A proper solution would first require to refactor the polling in GMainContext to only provide a single fd, e.g. via epoll/kqueue or a thread like the one added by our patch. Then this single fd could be retrieved from the GMainContext and directly integrated into a NSRunLoop. https://bugzilla.gnome.org/show_bug.cgi?id=741450 https://bugzilla.gnome.org/show_bug.cgi?id=704374 2015-01-08 09:35:23 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Don't init and clear static GMutex / GCond We would potentially use it from the main loop later in gst_gl_window_cocoa_init_nsapp() if it timed out before. 2015-01-07 16:53:41 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglfilter.c: glfilter: remove logically dead code Soon after setting two variables to 1, the code checks if their values are different from each other. This would never be true. Removing this. CID 1226443 2014-12-30 19:43:43 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: glmixer, glvideomixer: update for GstAggregatorPadForeachFunc change 2014-12-30 19:26:47 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: glmixer: update for aggregator start/stop vfunc change 2014-12-27 15:50:17 +0530 Nirbheek Chauhan * ext/gl/gstglvideomixer.c: glvideomixer: Point to compositor for the pad properties documentation 2014-12-19 13:18:50 -0500 Nicolas Dufresne * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gltest: Port to new API https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-19 12:22:12 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: Always recalculate buffer size Actually we should always recalculate buffer size since our buffer size even when not-padded is smaller for many sub-sampled formats. This is because we don't add padding between the planes. https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-19 12:12:08 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.h: glmemory: No need for padding A memory object cannot be put on stack, so no need for padding. 2014-12-19 12:11:08 -0500 Nicolas Dufresne * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: Add support for GstVideoAlignment This allow saving a copy with libav video decoders or decoders with similar padding requirement. https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-11-22 11:25:23 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: Handle upload/download flags from map Problem was that if buffer was mapped READWRITE (state of buffers from libav right now), mapping it READ/GL will not upload. This is because the flag is only set when the buffer is unmapped. We can fix this by setting the flags in map. This result in already mapped buffer that get mapped to be read in GL will be uploaded. The problem is that if the write mapper makes modification afterward, the modification will never get uploaded. https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-13 21:47:38 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Handle custom stride with OPENGL3 https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-08 11:02:51 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglfilter.c: glfilter: fix position/texcoord attrib index usage https://bugzilla.gnome.org/show_bug.cgi?id=741231 2014-12-11 18:17:02 +1100 Matthew Waters * ext/gl/gstglfiltercube.c: glfiltercube: use a shader everywhere 2014-12-11 18:15:02 +1100 Matthew Waters * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: gl: fixup vao and vbo usage for legacy GL 2014-12-11 14:57:18 +1100 Matthew Waters * ext/gl/gstgleffects.c: gleffects: don't abort when setting the effect to 0,1,2 2014-12-10 12:48:33 +1100 Matthew Waters * tests/examples/gl/sdl/sdlshare.c: gl/examples: fixup sdl example for gluPerspective removal 2014-12-04 20:37:51 +0530 Ramprakash Jelari * ext/gl/gstopengl.c: gl: Rename gst-launch-0.10 to gst-launch-1.0 in docs 2014-12-03 15:30:43 +0100 Philippe Normand * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: add G_END_DECLS 2014-12-03 08:02:58 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: glcontext: try cgl before glx It was already done by commit f506e80686eedc66912583db11914ec3f713b478 but it has been broken by commit 45ec777cea0e69b2597d1ec02b18ec31d618c920 2014-12-01 10:59:32 +0100 Thijs Vermeir * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl/cocoa: Fix example on Mac OS X 10.10 Using NSApp directly seems to confuse something, as the compiler was expecting an id. Switched to using [NSApplication sharedApplication], and specified the delegate protocol on the window class as well. Similar to https://bugzilla.gnome.org/show_bug.cgi?id=738740 2014-11-30 00:42:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: require GL_ARB_ES2_compatibility for opengl3 until we generate gl3 compliant shaders https://bugzilla.gnome.org/show_bug.cgi?id=740012 2014-11-30 00:18:55 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: properly handle the !opengl3 case https://bugzilla.gnome.org/show_bug.cgi?id=740012 2014-11-28 16:04:54 +0000 Tim-Philipp Müller * ext/gl/gstglfilterapp.c: glfilterapp: fix unused variable compiler warning When GST_GL_HAVE_OPENGL is 0 or unset. 2014-11-28 14:08:40 +1100 Matthew Waters * ext/gl/Makefile.am: glfilterapp is now available on gles2 as well so build it 2014-11-28 13:04:21 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: fixup compat definition for GLuint64 for OS X 2014-11-28 11:56:10 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: add compat definition for GLuint64 for android ../../../../gst-libs/gst/gl/glprototypes/sync.h:41:23: error: unknown type name 'GLuint64' GLuint64 timeout)) 2014-11-28 11:11:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsync: fix build with desktop gl 2014-11-28 11:04:22 +1100 Matthew Waters * ext/gl/gstglcolorscale.c: gl: fix typo in #if GST_GL_API_HAVE_OPENGL doesn't exist 2014-11-28 10:59:46 +1100 Matthew Waters * ext/gl/effects/gstgleffectssources.h: * ext/gl/gstglcolorscale.c: * ext/gl/gstgleffects.c: * gst-libs/gst/gl/gstglsyncmeta.c: gl: fix various build errors without desktop gl 2014-11-28 10:03:18 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix build error gstgldisplay.c:234:541: error: 'return' with no value, in function returning non-void [-Werror] g_return_if_fail (GST_IS_GL_DISPLAY (display)); 2014-11-27 21:05:45 +1100 Matthew Waters * ext/gl/gstglbumper.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gldisplay: implement runtime GL api filtering Needed so that the pipeline/application can limit the choice of GL api to what it supports 2014-11-27 16:17:50 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglimagesink.c: * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/sdl/sdlshare.c: gl: remove the use of glu 2014-10-17 15:22:24 +0200 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/glprototypes/sync.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: gl: add a sync meta for synchronizing across GL contexts A context can create a GLsync object that can be waited on in order to ensure that GL resources created in one context are able to be used in another shared context without any chance of reading invalid data. This meta would be placed on buffers that are known to cross from one context to another. The receiving element would then wait on the sync object to ensure that the data to be used is complete. 2014-10-17 15:08:29 +0200 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/sync.h: glprototypes: add sync function definitions 2014-11-17 18:06:20 +1100 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstopengl.c: glfilterapp: port to gles2 and gl3 2014-11-14 23:24:48 +1100 Matthew Waters * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: gloverlay: support gl3 2014-11-14 00:20:10 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add support for gl3 2014-11-13 21:30:38 +1100 Matthew Waters * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: glfiltercube: add a gl3 code path 2014-11-13 15:09:04 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glfiltershader: support gl3 2014-11-13 12:12:46 +1100 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: support gl3 2014-11-12 23:48:32 +1100 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: gleffects: support gl3 whereever gles2 is supported 2014-11-12 23:47:13 +1100 Matthew Waters * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: glcolorscale: support gl3 2014-11-12 22:49:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: add a gl3 code path using vao's and vbo's 2014-11-12 22:48:04 +1100 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: add support for gl3 2014-10-23 22:35:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: add support for gl3 2014-10-21 22:18:51 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: use vbo's and vao's for gl3 2014-10-21 19:30:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader add support for gl3 2014-10-19 08:09:37 +0400 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glx: ask for a GL3 core context 2014-11-26 18:24:05 +0100 Thibault Saunier * ext/gl/gstglmixer.c: videoaggregator: Expose vmethods to set converters and prepare/clean frames This gives more flexibility to the subclasses and permits to remove the GstVideoAggregatorClass->disable_frame_conversion ugly API. WARNING: This breaks the API as it removes the disable_frame_conversion field API: + GstVideoAggregatorClass->find_best_format + GstVideoAggregatorPadClass->set_format + GstVideoAggregatorPadClass->prepare_frame + GstVideoAggregatorPadClass->clean_frame - GstVideoAggregatorClass->disable_frame_conversion https://bugzilla.gnome.org/show_bug.cgi?id=740768 2014-11-27 18:09:58 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Unref buffer with the correct function 2014-11-27 18:09:14 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Handle failure of memory allocation gracefully 2014-11-27 18:04:58 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Use g_try_malloc() in the appropriate places g_malloc() aborts if allocation fails, it's pointless to check against NULL afterwards. That's why g_try_malloc() exists. 2014-11-27 10:48:43 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: support RGB16/BGR16 video format download https://bugzilla.gnome.org/show_bug.cgi?id=740801 2014-11-27 13:01:19 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: only attempt a resize when the window has already resized fixes a black startup screen on wayland 2014-11-27 11:47:38 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: implement resizing the window using the right mouse button 2014-11-27 01:27:19 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: support fixed dimensions on both sides of the element Fixes: width=320,height=240 ! glfilter ! width=800,height=600 width=230,height=240 ! glfilter ! width=600 ... ! glfilter ! width=800 2014-11-24 18:40:53 +0530 Ramprakash Jelari * gst-libs/gst/gl/gstglcontext.c: glcontext: Fix unused variable warning by moving declaration where it is actually used 2014-11-24 11:32:33 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix valid compiler warning gstglupload.c:442:32: error: if statement has empty body [-Werror,-Wempty-body] if (upload->texture_ids[i]); ^ 2014-11-24 10:43:23 +0100 Philippe Normand * gst-libs/gst/gl/egl/Makefile.am: gl: ship the gstglcontext_egl.h header It is required by gsteglimagememory.h. https://bugzilla.gnome.org/show_bug.cgi?id=740611 2014-11-23 21:43:20 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglshadervariables.c: gl: shadervariables: make parsing of floats locale-independent Floating point numbers are written differently in different locales, e.g. in many countries 1/2 = 0,5 instead of 0.5, and strtod will not be able to parse "0.5" correctly in such a locale. 2014-11-24 02:52:24 +1100 Matthew Waters * gst-libs/gst/gl/gstglshadervariables.c: glshadervariables: also trim \r as well as \n 2014-11-05 20:18:06 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglupload.c: glupload: rearchitecture for non GLMemory inputs/outputs Allows other memory types to be implemented/returned/used by the caller. 2014-11-20 09:13:58 +0530 Vineeth T M * ext/gl/gstglimagesink.c: glimagesink: critical error while seek playback-test(stop state) If we seek when media is in stop state, playback-test gives critical error, since context of glimagesink is destroyed during stop. But since context is not present, we need not handle send_event in glimagesink Hence adding a condition to check if context is valid. https://bugzilla.gnome.org/show_bug.cgi?id=740305 2014-11-17 09:36:52 +0530 Vineeth T M * gst-libs/gst/gl/gstglcontext.c: glcontext: build errors when GST_GL_HAVE_OPENGL is 0 Moving variables within #if GST_GL_HAVE_OPENGL, which are not going to be used otherwise. and which are needed only when OpenGl is present https://bugzilla.gnome.org/show_bug.cgi?id=740235 2014-11-17 18:50:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: add read-only context property 2014-11-17 18:50:04 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: add read-only context property 2014-11-16 11:00:14 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Only use convertRectToBacking on OSX >= 10.7 It does not exist before and older versions also don't have support for HiDPI displays anyway. https://bugzilla.gnome.org/show_bug.cgi?id=740201 2014-11-16 10:57:55 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglapi.h: gl: Use numeric OSX version instead of the macro The macro is not defined on older OSX versions and evaluates to 0. https://bugzilla.gnome.org/show_bug.cgi?id=740201 2014-11-13 12:01:25 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Don't override the application delegate Otherwise interesting things will happen in Cocoa applications, like infinite event loops that block the NSApplication loop forever. This was only needed for GNUStep and thus can safely be removed now. 2014-11-13 11:58:07 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl/cocoa: Remove GNUStep support Until gcc and GNUStep properly support Objective-C blocks and other "new" features of Objective-C we can't properly support them without making the code much more ugly. https://bugzilla.gnome.org/show_bug.cgi?id=739152 2014-11-12 11:44:07 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: don't set the upload to NULL on the drain query https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-11 17:04:48 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglwindow.c: gl: Correct invalid comment text 2014-11-11 23:54:44 +0000 Julien Isorce * tests/check/elements/glimagesink.c: gl: add unit test that checks for glimagesink drain query handling Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-11 23:49:59 +0000 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: release stored buffers on drain query Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-11 23:43:42 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: gl: do not raise a critical msg if the backend does not handle window events Fix "assertion 'window_class->handle_events != NULL' failed" if not using a X11 window. 2014-11-11 14:23:55 +1100 Matthew Waters * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: gl: remove the width/height fields from the caps to support frame resizing It was previously only occuring with sysmem caps features https://bugzilla.gnome.org/show_bug.cgi?id=739334 2014-11-07 11:41:01 +0100 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * pkgconfig/gstreamer-gl.pc.in: gstglconfig: Put gstglconfig.h into $(libdir)/gstreamer-1.0/include It's architecture dependent and should not be placed into the include directory as the assumption is that all those headers are architecture independent. https://bugzilla.gnome.org/show_bug.cgi?id=739767 2014-11-06 23:58:06 +0100 Alessandro Decina * ext/gl/gstglimagesink.c: glimagesink: don't make gst_glimage_sink_handle_events call _ensure_gl_setup gst_glimage_sink_handle_events can be called from the overlay interface and from the main thread before GL is setup. Before this change, that would call _ensure_gl_setup() and deadlock on OSX. Change things so that it's always safe to call gst_glimage_sink_handle_events() without stuff deadlocking. 2014-11-06 23:55:20 +0100 Alessandro Decina * ext/gl/gstglimagesink.c: glimagesink: fix possible deadlock on osx Remove gst_glimage_sink_handle_events call in gst_glimage_sink_init. It was unnecessary and when the element was instantiated from the main thread, caused a deadlock in OSX creating the context (thread). 2014-11-07 10:01:59 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: clamp the resize width/height to >= 1 to avoid a GL error 2014-11-06 18:43:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: only attempt getting the app context when we don't already have a display avoids querying/messaging the world on each frame 2014-11-06 18:37:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fail context creation if glGetString returns NULL 2014-10-29 12:24:16 +0100 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glimagesink: implement gst_video_overlay_handle_events https://bugzilla.gnome.org/show_bug.cgi?id=736035 2014-11-03 23:24:33 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: use NSAutoreleasePool to free resize data Otherwise when resizing the window you will also get messages like: class NSConcreteMapTable autoreleased with no pool in place - just leaking class NSConcreteValue autoreleased with no pool in place - just leaking class NSConcreteValue autoreleased with no pool in place - just leaking class __NSCFDictionary autoreleased with no pool in place - just leaking 2014-11-03 23:08:09 +0000 Julien Isorce * gst-libs/gst/gl/gstglapi.h: gl/cocoa: include gl3.h to have GL_CONTEXT_PROFILE_MASK 2014-11-03 23:07:34 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: make sure to turn on frame rectangle changes notifications Default value of property postsFrameChangedNotifications is YES but it is worth to explicitly enable it. 2014-11-03 23:02:17 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: fix uncaught exception 'unrecognized selector sent to instance' Need to set the ':' as the reshape method now takes one parameter. For the story, the GstGLNSView was previously inheriting from NSOpenGLView which has a reshape function without any parameter. Now the GstGLNSView inherits from NSView and we re-use the reshape function manually. 2014-11-03 22:59:41 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: fix compiler warning Use the reshape function after being defined. The other way would have been to declare the reshape function in the header. gstglwindow_cocoa.m: In function '-[GstGLNSView drawRect:]': gstglwindow_cocoa.m:555: warning: 'GstGLNSView' may not respond to '-reshape' gstglwindow_cocoa.m:555: warning: (Messages without a matching method signature gstglwindow_cocoa.m:555: warning: will be assumed to return 'id' and accept gstglwindow_cocoa.m:555: warning: '...' as arguments.) 2014-11-03 00:17:41 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglwindow.c: gl: fix Since marker for gst_gl_window_run_navigation() 2014-10-29 18:18:07 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglshadervariables.c: glshader: Fix memory leak Memory is only freed in the TRUE clause of the if conditional. Free in the else clause as well. Also, consolidate g_malloc + sprintf into a g_strdup_printf(). CID #1212171 https://bugzilla.gnome.org/show_bug.cgi?id=739368 2014-10-31 10:45:19 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix comments that confuse gtk-doc GTK-Doc uses a special syntax for code documentation. A multiline comment that starts with an additional '*' marks a documentation block that will be processed by the GTK-Doc tools. So GTK-Doc is confused if a comment block starts with that additional '*' but isn't meant to be processed. Removing this additional '*'. https://bugzilla.gnome.org/show_bug.cgi?id=739444 2014-10-31 12:52:50 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: resize the viewport correctly on a caps change with force-aspect-ratio=true, if the width or height changed, the viewport wasn't being updated to respect the new video width and height until a resize occured. 2014-10-31 12:52:07 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: advertise support for changing input caps mid-stream https://bugzilla.gnome.org/show_bug.cgi?id=739334 2014-10-31 12:30:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: gl: sprinkle some Since markers 2014-10-30 23:08:00 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: don't get the current caps from GstVideoInfo for the srcpad It's missing the caps features needed. 2014-10-30 18:57:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/sdl/sdlshare.c: gl/examples: update for other-context property removal 2014-10-30 16:48:00 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: add more functionality to wrapped contexts Implements get_current_context() and get_proc_address() for wrapped contexts. 2014-10-30 12:43:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: advertise the default vertex and fragment shaders on desktop GL 2014-10-29 12:22:14 +0100 Lubosz Sarnecki * ext/gl/gstglimagesink.c: satisfy gst-indent 2014-10-29 22:23:13 +1000 Jan Schmidt * ext/gl/gstglfiltercube.c: glfiltercube: Fix typo in property description 2014-10-29 08:27:57 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: glmixer:fix incorrect parameter passed to handle_set_context 2014-10-28 18:27:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: get the config from the correct pool 2014-10-28 18:01:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: avoid uninitialized variable size when chaining multiple glfilters https://bugzilla.gnome.org/show_bug.cgi?id=739277 2014-10-28 18:01:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: gst-indent file 2014-10-28 17:31:37 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * tests/check/libs/gstglcontext.c: glcontext: add api for retreiving the current context and api that is current in the calling thread. 2014-10-21 19:03:08 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/vao.h: glprototypes: add vertex attribute array definitions 2014-10-24 00:35:22 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: override the caps query in order to 'convert' capsfeatures Otherwise, it is only possible for the sink pads and the src pads to have the exact same caps features. We can convert from any feature to another feature so support that. 2014-10-23 23:55:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: override the accept caps query in order to 'convert' capsfeatures Otherwise, it is only possible for the sink pads and the src pads to have the exact same caps features. We can convert from any feature to another feature so support that. 2014-08-14 23:29:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: propogate other-context using GstContext 2014-10-21 16:21:08 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Fix compiler warning gstglwindow_cocoa.m: In function '-[GstGLNSView drawRect:]': gstglwindow_cocoa.m:555: warning: 'GstGLNSView' may not respond to '-reshape' gstglwindow_cocoa.m:555: warning: (Messages without a matching method signature gstglwindow_cocoa.m:555: warning: will be assumed to return 'id' and accept gstglwindow_cocoa.m:555: warning: '...' as arguments.) 2014-10-21 06:04:10 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: fixup eglimage include path 2014-10-18 10:03:43 +0200 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: glbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option 2014-10-20 10:34:27 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglvideomixer.c: videoaggregator: operate on caps rather than video info Otherwise the CapsFeatures will be lost along with the possibility of multiple output types and formats. https://bugzilla.gnome.org/show_bug.cgi?id=738129 2014-10-20 15:02:28 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglmemory.c: glcolorconvert: support RGB16/BGR16 video format upload https://bugzilla.gnome.org/show_bug.cgi?id=738842 2014-10-17 21:26:52 -0700 Brion Vibber * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Fix for building on Mac OS X 10.10 Using NSApp directly seems to confuse something, as the compiler was expecting an id. Switched to using [NSApplication sharedApplication], and specified the delegate protocol on the window class as well. https://bugzilla.gnome.org/show_bug.cgi?id=738740 2014-10-14 14:00:11 +0200 Matthew Waters * ext/gl/gstgldeinterlace.c: gldeinterlace: ref the uploaded buffer Instead of the possibly non-GL input buffer. 2014-10-14 16:41:51 +0200 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: add uploaded_buffer field 2014-10-13 13:28:57 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Only finalize the other context in finalize() Otherwise we change a value of a property when going to READY state, which is unexpected behaviour. 2014-10-13 13:27:55 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Call the pad's parent class finalize method 2014-10-13 13:27:11 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Only finalize the other context in finalize() Otherwise we change a value of a property when going to READY state, which is unexpected behaviour. 2014-10-13 13:25:42 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: Add other-context property 2014-10-13 11:56:03 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Don't leak other-context 2014-10-13 11:53:47 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: glmixer: Add other-context property 2014-10-09 10:54:35 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Add support for HiDPI displays Without this our GL surface would be upscaled after rendering by Cocoa, which would reduce image quality. 2014-10-09 12:28:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: output why we cannot convert a buffer 2014-10-09 12:25:55 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix planar YUV download - sample the u and v planes properly - output the correctly scaled u and v planes for different chroma block sizes 2014-10-08 21:51:12 +0300 Vivia Nikolaidou * ext/gl/gstgloverlay.c: gloverlay: And fix another unused variable compiler warning 2014-10-08 21:49:25 +0300 Vivia Nikolaidou * ext/gl/gstgloverlay.c: gloverlay: Fix unused variable compiler warning when compiling without desktop GL 2014-09-28 10:51:09 +0800 Wang Xin-yu (王昕宇) * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: gltestsrc: implement checkers pattern with GLSL https://bugzilla.gnome.org/show_bug.cgi?id=737505 2014-10-07 23:04:30 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix UYVY download green screen 2014-10-07 22:50:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolrconvert: fix YUY2 download - The shader was outputing the wrong values compared with raw videotestsrc. - deal with the texture edge properly. - properly sample the 2x1 rectangle for the u and v values - don't double sample the y value 2014-10-01 16:04:36 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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. 2014-10-01 11:55:13 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Handle NSView::renewGState() properly Don't update the screen until we redraw, this prevents flickering during scrolling, clipping, resizing, etc 2014-09-25 17:01:31 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: gltransformation: graphene multiplication order has changed https://bugzilla.gnome.org/show_bug.cgi?id=733510 2014-09-30 20:39:36 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: update element documentation 2014-09-30 18:26:34 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: tests/glcolorconvert: do reorder checking for rgba formats 2014-09-30 14:46:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: 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. 2014-09-30 01:45:20 +1000 Matthew Waters * tests/check/libs/gstglmemory.c: tests/glmemory: add simple transfer test tests transferring to/from the GL with a 1x1 RGBA pixel. 2014-09-30 01:38:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: unset the opposite corresponding transfer flags when mapped with write fixes consistency with consecutive gst_memory_map()'s with flags & GST_MAP_WRITE 2014-09-29 09:33:42 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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. 2014-09-29 10:49:46 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: 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. 2014-09-29 09:24:49 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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. 2014-09-26 14:21:46 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Call UI related API from the application main thread 2014-09-26 13:05:27 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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. 2014-09-29 08:54:29 +0200 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: glcontext: Initialize variable Avoids the following warning: gstglcontext.c:647:58: error: 'prev' may be used uninitialized in this function [-Werror=maybe-uninitialized] 2014-09-29 00:23:57 +1000 Jan Schmidt * tests/examples/gl/qt/qglwtextureshare/README: * tests/examples/gl/qt/qglwtextureshare/gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: 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 2014-09-28 20:21:50 +1000 Jan Schmidt * tests/examples/gl/qt/.gitignore: * tests/examples/gl/qt/README: * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/mousevideooverlay/qrenderer.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/Debug/videooverlay: * tests/examples/gl/qt/videooverlay/videooverlay.pro: examples: port GL/Qt examples to Qt5 Update the GL Qt integration examples for Qt5 changes and for GstGL signal signature changes. 2014-09-29 00:32:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fixup error in sharegroup comment 2014-09-29 00:27:30 +1000 Matthew Waters * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: Revert accidental push: "gltestsrc: implement checkers pattern with GLSL" This reverts commit eae09179f0b4eb584c8fc7b6560d8fc8e86eed4c. 2014-09-29 00:24:28 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: 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. 2014-09-28 10:51:09 +0800 Wang Xin-yu (王昕宇) * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: gltestsrc: implement checkers pattern with GLSL 2014-09-28 21:18:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: silence a warning with empty input caps discovered with the doublecube example gst_caps_get_features: assertion 'index < GST_CAPS_LEN (caps)' failed 2014-09-28 20:37:04 +1000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: examples/gl: update for signal signature change 2014-09-26 22:29:56 +1000 Matthew Waters * ext/gl/gstgloverlay.c: gloverlay: fix zero output frames with YUY2/UYVY also, be nice and disable blending for other elements 2014-09-26 22:22:06 +1000 Matthew Waters * ext/gl/gstgloverlay.c: gloverlay: protect desktop gl specific tokens with #if 2014-09-26 12:28:10 +1000 Matthew Waters * ext/gl/gstgloverlay.c: gloverlay: free the image memory every time the location changes fixes a memory leak 2014-09-25 20:48:59 +0300 Sebastian Dröge * ext/gl/Makefile.am: gloverlay: Include into the build with GLES2 only too 2014-09-26 01:45:22 +1000 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: free the shader on stop 2014-09-26 01:34:54 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: 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). 2014-09-26 01:14:35 +1000 Matthew Waters * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstopengl.c: 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 2014-09-25 16:13:19 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Switch from our custom main loop to a GMainLoop Simplifies code a lot and makes it more similar to the other backends. 2014-09-25 16:12:24 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Clear the current GL context when it should happen 2014-09-24 14:29:37 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: skip input frames with an alpha of 0 2014-09-24 13:13:19 +1000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: 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 2014-08-21 02:14:40 +0200 Lubosz Sarnecki * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: add Mandelbrot fractal pattern. https://bugzilla.gnome.org/show_bug.cgi?id=735131 2014-08-21 02:13:58 +0200 Lubosz Sarnecki * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: implement snow pattern with GLSL. https://bugzilla.gnome.org/show_bug.cgi?id=735131 2014-09-23 12:02:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: 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. 2014-09-23 12:01:04 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add gst_gl_context_can_share Which determines whether two GstGLContext's can share sharable OpenGL resources. 2014-09-22 20:01:27 +1000 Matthew Waters * tests/check/libs/gstglupload.c: gl/tests: update for upload API changes 2014-09-22 10:08:17 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: 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. 2014-09-22 11:10:42 +0530 Anuj Jaiswal * gst-libs/gst/gl/gstglfilter.c: gl: consecutive return, break statement Signed-off-by: Anuj Jaiswal https://bugzilla.gnome.org/show_bug.cgi?id=736939 2014-09-22 12:21:22 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/debug.h: gl/debug: desktop GL does not have the KHR suffixes 2014-09-22 11:59:30 +1000 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: examples/gl/gtk: use the sync bus callback to set the window handle And output error messages. 2014-09-21 13:32:29 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcontext.c: gl: add since markers for new API 2014-09-21 21:42:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add debug line for freeing textures 2014-09-21 21:36:49 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: glupload: provide the output buffer that is rendered into Allows callers to properly reference count the buffers used for rendering. Fixes a redraw race in glimagesink where the previous buffer (the one used for redraw operations) is freed as soon as the next buffer is uploaded. 1. glimagesink uploads in _prepare() to texture n 1.1 glupload holds buffer n 2. glimagesink _render()s texture n 3. glimagesink uploads texture n+1 3.1 glupload free previous buffer which deletes texture n 3.2 glupload holds buffer n+1 4. glwindow resize/expose 5. glimagesink redraws with texture n The race is that the buffer n (the one used for redrawing) is freed as soon as the buffer n+1 arrives. There could be any amount of time and number of redraws between this event and when buffer n+1 is actually rendered and thus replaces buffer n as the redraw source. https://bugzilla.gnome.org/show_bug.cgi?id=736740 2014-09-21 21:30:58 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add API to retreive the thread that context is active in 2014-09-19 15:32:33 +0530 Sanjay NM * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: gl: Removed unreachable break, unused variable https://bugzilla.gnome.org/show_bug.cgi?id=736957 2014-09-16 11:42:34 +0200 Ognyan Tonchev * gst-libs/gst/gl/gstglfilter.c: glfilter: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736732 2014-09-16 11:41:43 +0200 Ognyan Tonchev * ext/gl/gstgltestsrc.c: gltestsrc: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736730 2014-09-16 11:41:16 +0200 Ognyan Tonchev * ext/gl/gstglmixer.c: glmixer: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736729 2014-09-09 12:01:47 +0200 Vasilis Liaskovitis * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: GstGLWindow: Introduce navigation thread This thread dispatches navigation events. It is needed to avoid deadlocks between window backend threads that emit navigation events (e.g. X11/GMainLoop thread) and consumers of navigation events such as glimagesink, see https://bugzilla.gnome.org/show_bug.cgi?id=733661 GstGlWindow_x11 thread is changed to invoke the navigation thread for navigation dispatching, instead of emiting the event itself. Othe backends beside X11 do not dispatch navigation events yet, but should use this thread when dispatching these events in the future. The navigation thread is currently part of GstGLWindow and not implemented in separate subclasses / backends. This will be needed in the future. gst_gl_window_x11_get_surface_dimensions is also changed to use a cached value of the window's width, height. These values are now retrieved in the X11 thread, function gst_gl_window_x11_handle_event. This change is needed because otherwise the XGetWindowAttributes gets called from the navigation thread, leading to xlib aborting due to multithreaded access (if XInitThreads is not called before, as is the case for gst-launch) 2014-07-07 10:52:57 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: fix issues and expose mvp matrix * aspect should not be 0 on init * rename fovy to fov * add mvp to properties as boxed graphene type * fix transformation order. scale first * clear color with 1.0 alpha https://bugzilla.gnome.org/show_bug.cgi?id=734223 2014-08-28 16:42:30 +0300 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Add missing break to switch CID 1232801 2014-08-26 16:21:42 +0800 Wang Xin-yu (王昕宇) * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/main.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: gl: qglwtextureshare demo fixes and cleanup 1. glcontextid function is replaced by gstreamer gst_gl_context_new_wrapped . 2. call gst_init before gst_gl_display_new , seems gst_gl_display_new depends on gst_allocator_register , which only worked after gst_init called 3. flush gstreamer OpenGL context before using shared texture, fix flicker problem. https://bugzilla.gnome.org/show_bug.cgi?id=735566 2014-08-27 13:40:42 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglcontext.c: gl: Add GSTGLAPI macro to the debug callback function Fixes the Windows build. https://bugzilla.gnome.org/show_bug.cgi?id=735565 2014-08-26 12:38:52 +1000 Jan Schmidt * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: Wrap KHR_create_context flags in an ifdef EGL_CONTEXT_FLAGS_KHR and EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR don't exist in the Android NDK. Wrap their usage in an #ifdef EGL_KHR_create_context to fix the build there. 2014-08-22 16:49:10 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: fallback to a non-debug context if a debug one fails The text for EGL_KHR_create_context added the possiblity for ES contexts to ask for a debug context however that has not been fully realized by all implementations. Fallback to a non-debug context when the implementation errors. 2014-07-02 12:49:44 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: gstopengl: add introspection support https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-08-05 12:07:08 +0200 Lubosz Sarnecki * tests/examples/gl/gtk/switchvideooverlay/main.cpp: examples: fix gtk+ 3.14 deprecation error https://developer.gnome.org/gtk3/3.13/GtkWidget.html#gtk-widget-set-double-buffered https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-07-07 10:52:06 +0200 Lubosz Sarnecki * ext/gl/gstglimagesink.c: glimagesink: expose context * expose context in draw / reshape callbacks * add context property https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-07-07 10:51:28 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: expose opengl handle in getter https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-08-20 09:37:01 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglutils.c: gl: check null before unref GstGLDisplay 2014-08-21 10:03:07 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/debug.h: gl: add prototype definition for KHR_debug 2014-08-20 23:24:12 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext: implement the debug callback For both GL_KHR_debug and ARB_debug_output. This allows us to receive errors and other hints from the GL instead of querying after every GL operation. 2014-08-20 23:23:06 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstglapi.h: gl: add prototypes for KHR_debug/ARB_debug_output 2014-08-19 20:14:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: don't take an extra ref on the display on set_context gst_context_get_gl_display() returns a ref. Don't take another in gst_object_replace(). 2014-08-19 17:01:36 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: unref the GstGLUpload in the pad if freed while running Dynamic pipelines that get and release the sink pads will finalize the pad without going through gst_gl_mixer_stop() which is where the upload object is usually freed. Don't leak objects in such case. 2014-08-14 23:51:21 -0400 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: glvideomixer: avoid gl resource race condition between different thread https://bugzilla.gnome.org/show_bug.cgi?id=734830 2014-08-19 14:44:29 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't clobber unnecessary GstVideoInfo fields otherwise we might clobber other important fields such as the frame rate. 2014-08-19 14:43:42 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: get the attribute from the correct shader 2014-08-19 14:23:21 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unref the window on navigation event plugs a memory leak 2014-08-10 22:58:22 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: fix allocator leak in some cases Spotted by Sebastian Rasmussen. https://bugzilla.gnome.org/show_bug.cgi?id=734523 2014-08-09 11:45:41 +0200 Sebastian Rasmussen * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/gtk/fxtest/fxtest.c: examples/gl: unref bus and element after usage gst_pipeline_get_bus() and gst_bin_get_by_interface() both return references that need to be unreferenced after usage. https://bugzilla.gnome.org/show_bug.cgi?id=734527 2014-08-10 18:07:28 +0100 Tim-Philipp Müller * ext/gl/gstglcolorscale.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglvideomixer.c: opengl: update element docs for 1.x 2014-08-07 19:18:49 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add a background property That's compatible with the compositor/videomixer property https://bugzilla.gnome.org/show_bug.cgi?id=731954 2014-08-06 16:48:03 +0300 Vasilis Liaskovitis * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: GstGLWindow, GstGLImagesink, x11: Scale navigation events on resized windows If window is resized, GstStructure pointer values have to be rescaled to original geometry. A get_surface_dimensions GLWindow class method is added for this purpose and used in the navigation send_event function. https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-08-06 08:15:38 -0400 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglupload.c: glupload: don't determine if frame needs upload by pointer compare https://bugzilla.gnome.org/show_bug.cgi?id=734269 2014-08-01 17:51:08 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/docs: remove superflous 'the' 2014-08-01 16:41:13 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgldisplay.c: gl: document GST_GL_* environment variables https://bugzilla.gnome.org/show_bug.cgi?id=733245 2014-08-01 10:01:18 +1000 Matthew Waters * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/tests: update for API changes 2014-07-31 18:46:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add a destroy function that just calls the subclass 2014-07-31 18:36:58 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: silence runtime warning g_main_loop_quit: assertion 'loop != NULL' failed 2014-07-31 15:18:04 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: use the plane offsets to compute the size of the data pointer Certain elements expect that there be a certain number of lines that they can write into. e.g. for odd heights, I420, YV12, NV12, NV21 (and others) Y lines are expected to have exactly twice the number of U/UV lines. https://bugzilla.gnome.org/show_bug.cgi?id=733717 2014-07-31 14:07:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: glmemory: use GstVideoInfo everywhere Simplifies a lot of the calling code https://bugzilla.gnome.org/show_bug.cgi?id=733717 2014-07-29 13:25:22 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: keep the uploaded buffer around on successful redisplay We might need it later to perform a redisplay. GstGLUpload will take of releasing the previous buffer when it receives a new buffer. https://bugzilla.gnome.org/show_bug.cgi?id=733726 2014-07-29 11:47:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: glmemory: reenable the texture_rg support for !eagl The GST_GL_HAVE_PLATFORM_EAGL is always defined we need to compare against the value instead. 2014-07-27 13:26:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: silence gsignal warning instance '0xblah' has no handler with id '13' 2014-07-24 12:25:36 +0300 Vasilis Liaskovitis * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow/11: Emit signals for mouse and key navigation events https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-07-24 12:23:03 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: Constify string parameters to the send_*_event() functions 2014-07-24 13:05:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: remove extra argument from debug call 2014-07-07 00:20:01 +0300 Vasilis Liaskovitis * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Add navigation interface and callbacks for GstGLWindow mouse/key signals https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-07-06 23:39:47 +0300 Vasilis Liaskovitis * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: GstGLWindow : Add mouse-event and key-event signals for navigation https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-07-23 10:25:31 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstgleffects.c: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: gl: fix multi gl object leaks 1. fix FBO leaks in decide_allocation 2. fix texture leaks in decide_allocation and reset 3. fix texture leaks in FBO incomplete error path 2014-07-21 11:07:28 +0000 Руслан Ижбулатов * tests/examples/gl/sdl/Makefile.am: gl: Reorder CFLAGS to include in-source dirs first in examples https://bugzilla.gnome.org/show_bug.cgi?id=733426 2014-07-17 10:05:47 +0100 Tim-Philipp Müller * tests/examples/gl/gtk/fxtest/pixbufdrop.c: examples: fix compilation of gl fxtest example on win32 with Gtk+ 3.0 https://bugzilla.gnome.org/show_bug.cgi?id=733063 2014-07-11 13:58:55 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: Always build gstglmixer, not only when full OpenGL support is enabled 2014-07-11 12:04:07 +0200 Sebastian Dröge * ext/gl/Makefile.am: * gst-libs/gst/gl/Makefile.am: gl: Link to all required libraries but not more 2014-07-11 09:41:05 +0200 Sebastian Dröge * ext/gl/Makefile.am: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmixerpad.h: * ext/gl/gstglmosaic.h: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: gl: Move GstGLMixer to the plugin for now It depends on GstAggregator and we don't want to install headers for that yet. https://bugzilla.gnome.org/show_bug.cgi?id=732207 2014-07-09 15:03:42 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Keep aspect ratio by default The expected default behaviour for video sink is to maintain the aspect ratio. Fix the default value to reflect this. The property default was already TRUE, but the value was not initially TRUE. 2014-07-03 09:00:32 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcocoa: initalize NSApp asap when using gst-launch See https://bugzilla.gnome.org/show_bug.cgi?id=732661 2014-07-02 17:38:13 +1000 Matthew Waters * tests/examples/gl/qt/qglwtextureshare/.gitignore: * tests/examples/gl/qt/qglwtextureshare/moc_gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare: gl/examples: gitignore generated files 2014-07-01 08:36:53 +0800 Wang Xin-yu (王昕宇) * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: gl : fix qglwtextureshare demo 2014-06-30 19:15:01 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: eagl: Disable usage of R and RG textures on iOS They don't work currently and just render zeroes, while the fallback code path with LUM and LUM_ALPHA textures still works. https://bugzilla.gnome.org/show_bug.cgi?id=732390 2014-06-29 22:26:47 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Chain up to the parent class' finalize function 2014-06-29 22:25:43 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Make sure to always unref the display Even if we didn't create a context yet. 2014-06-29 21:57:32 +0200 Sebastian Dröge * tests/check/libs/gstglupload.c: glupload: Fix memory leak in unit test 2014-06-29 21:53:21 +0200 Sebastian Dröge * tests/check/libs/gstglcontext.c: glcontext: Fix memory leaks in unit test 2014-06-26 11:25:37 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: free pixel swizzling information 2014-06-26 11:15:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: glmixer: remove redundant/unused lock Use the GstObject lock instead 2014-06-26 11:12:49 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: remove redundant creation and free of GPtrArrays Also plugs a memory leak 2014-06-26 10:54:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: plug a memory leak for the caps gst_query_set_caps_result() takes a ref on the caps 2014-06-26 10:31:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: intersect with the filtercaps if available 2014-06-26 10:30:41 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: gl: update gles2 compatability header 2014-06-25 22:05:37 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: pass through the allocation query when in passthrough mode Otherwise two GL elements on either side will fail to use the same GL context. 2014-06-25 21:50:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: prefer passthrough for non-sysmem caps 2014-06-25 18:23:52 +1000 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglfiltershader.c: * ext/gl/gstopengl.c: glshader: enable glshader on GLES2 2014-06-24 19:37:17 +0100 Julien Isorce * ext/gl/gstglcolorscale.c: glcolorscale: do passthrough on same caps See https://bugzilla.gnome.org/show_bug.cgi?id=732178 2014-06-24 19:35:01 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: handle NULL decide_query which means passthrough See https://bugzilla.gnome.org/show_bug.cgi?id=732178 2014-06-24 19:23:01 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: prepend intersection to src caps Prefer to stay in the same memory space if possible. Also it let a chance to do passthrough. See https://bugzilla.gnome.org/show_bug.cgi?id=732178 2014-06-22 13:14:27 +0100 Julien Isorce * ext/gl/Makefile.am: * ext/gl/gstglvideomixer.c: * ext/gl/gstopengl.c: gl: enable glvideomixer on GLES2 2014-06-25 12:00:34 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: bas output width/height on the pad properties Allows automatic negotiation of the size in the following case: gst-launch-1.0 glvideomixer name=m sink_0::xpos=0 sink_1::xpos=320 ! glimagesink \ videotestsrc ! m. \ videotestsrc pattern=1 ! m. https://bugzilla.gnome.org/show_bug.cgi?id=731878 2014-06-25 10:18:48 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't clobber already allocated shader 2014-06-24 23:51:24 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: XInitThreads when env variable is set This is too allow gst-launch debugging with multiple GL contexts as well as avoiding segfaulting innocent gtk+ apps that have not called XInitThreads. https://bugzilla.gnome.org/show_bug.cgi?id=731525 2014-06-24 23:33:30 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl: add a scary note about initializing thread support for the winsys We cannot do it as the winsys may crash if we initialize too late. Example, GLX contexts with Intel drivers: Intel requires the X Display to be the same in order to share GL resources across GL contexts. These GL contexts are generally accessed from different threads. Without winsys support it is nearly impossible to guarentee that concurrent access will not occur. This concurrent access could result in crashes or abortion by the winsys (xcb). https://bugzilla.gnome.org/show_bug.cgi?id=731525 2014-06-23 21:43:10 +1000 Matthew Waters * gst-libs/gst/gl/gstgluploadmeta.c: gluploadmeta: reenable GLMemory upload path 2014-06-22 18:58:51 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: Need to link to new badvideo library for the video aggregator base class 2014-06-22 09:44:24 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglapi.h: gl: move gles2 compat header to glprototypes 2014-06-22 09:36:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: glbufferpool: provide a consistent API regardless of platform 2014-06-22 09:22:23 +1000 Matthew Waters * gst-libs/gst/gl/gl.h: gl: mark library as API unstable 2014-06-20 11:10:45 +0200 Thibault Saunier * ext/gl/gstglvideomixer.c: gl:glvideomixer: Add the Compositor in the element metadata class So it is possible to pick one compositing element from the registry 2014-06-10 11:26:53 +0200 Thibault Saunier * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: gl: Port glmixer to the GstVideoAggregator baseclass https://bugzilla.gnome.org/show_bug.cgi?id=731921 2014-05-27 12:40:09 +0200 Lubosz Sarnecki * ext/gl/Makefile.am: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstopengl.c: opengl: add element for transforming video geometry * add graphene as soft dependency for linear algebra 2014-06-17 23:20:04 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: don't segfault needlessly with GLES2 gst_gl_framebuffer_use_v2 was using a function that is not available with GLES2 2014-06-16 20:36:09 +1000 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glfiltershader: port to GLES2 Provide a time variable 2014-06-15 15:18:46 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: silence incorrect number of arguments in format warning 2014-06-15 15:17:07 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: gldownload: plug a memory leak 2014-06-15 13:59:07 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: wire up the alpha pad property 2014-06-15 13:44:04 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: support input frame scaling 2014-06-15 12:26:21 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add positioning of input streams https://bugzilla.gnome.org/show_bug.cgi?id=729798 2014-06-15 12:24:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: glmixer: allow the subclass to choose the sink pad type Allows custom properties to be placed on the sink pads by subclasses 2014-06-12 23:14:45 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: glfilterapp: actually emit the client-draw signal 2014-06-12 23:13:11 +1000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: gl/examples: update for TEXTURE_2D change 2014-06-12 14:58:47 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: glmixer: send the stream-start event and the caps event after. https://bugzilla.gnome.org/show_bug.cgi?id=730944 2014-06-12 13:37:51 +1000 Matthew Waters * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/sdl/Makefile.am: gl/examples: add GST_PLUGINS_BASE_CFLAGS 2014-06-12 13:15:10 +1000 Matthew Waters * tests/examples/gl/generic/doublecube/main.cpp: gl/examples: remove spurious include for doublecube example 2014-06-12 13:06:31 +1000 Matthew Waters * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/sdl/Makefile.am: gl/examples: add the srcdir and builddir includes And remove references to $(GST_PLUGINS_GL_*) 2014-06-12 12:49:42 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * gst-libs/gst/gl/gstglutils.h: * tests/examples/gl/generic/recordgraphic/main.cpp: glfilterapp: remove the reshape/draw properties The reshape property was never used. Replace the draw property with a signal. Based on patch by Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=704507 2014-06-12 12:14:35 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: lock the size of mix->frames to the number of pads Fixes a segfault with decodebin ! glmixer where the request pads on both sides were being requested after the state change to PAUSED. Also fixes dynamically adding and removing pads while glmixer is in a state >= PAUSED. 2014-06-12 12:09:56 +1000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: gl/examples: Port to using signals instead of properties Based on patch by Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=704507 2014-06-01 15:02:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: replace pointer properties with signals Based on patch by Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=704507 2014-06-05 18:43:30 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/wayland: create a dummy display instead of an EGLDisplay Currently, GstGLWindowWaylandEGL holds the wayland display connection If we create the EGLDisplay at the GstDisplay creation time, then libEGL will internally open another connection to the wayland server. These two display connections are unable to communicate resulting in no window output/display and hangs inside libEGL. Eventually we will move the wl_display from GstGLWindow to GstGLDisplay. 2014-05-25 21:43:22 +0100 Matthieu Bouron * ext/gl/gstglimagesink.c: glimagesink: improve state change debug message 2014-06-03 13:59:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: always release the previous buffer Fixes the case where _perform_with_buffer() is called without intervening calls to _release_buffer() as is the case on start up with glimagesink. Also release the buffer when reseting the upload. https://bugzilla.gnome.org/show_bug.cgi?id=731107 2014-06-02 09:23:39 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Handle (unlikely) NULL return of gl->GetString (GL_VERSION) more gracefully CID 1219858 2014-05-30 12:23:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: remove uneeded gl api ifdefs 2014-05-30 11:51:01 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow_x11: allow expose events to redraw our window otherwise we will not update the window contents on low framerate streams until the next buffer https://bugzilla.gnome.org/show_bug.cgi?id=723529 2014-05-30 11:46:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unref the old buffer outside the lock it could very well deadlock https://bugzilla.gnome.org/show_bug.cgi?id=723529 2014-05-30 11:35:04 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: Revert "[880/906] glimagesink: remove unused stored_buffer field" This reverts commit af3a68db7dc473fb6903c18966b39e4c3f1464d7. Conflicts: ext/gl/gstglimagesink.c https://bugzilla.gnome.org/show_bug.cgi?id=723529 2014-05-30 10:46:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix up assertion error: 'return' with no value, in function returning non-void 2014-05-30 10:27:14 +1000 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/glprototypes/base.h: * gst-libs/gst/gl/glprototypes/blending.h: * gst-libs/gst/gl/glprototypes/eglimage.h: * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/glprototypes/fixedfunction.h: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: glfeature: remove GST_GL_API_GLES3 instead check the gl version using gst_gl_context_check_gl_version() 2014-05-30 10:25:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: check for GLES versions 2014-05-29 20:35:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: gl/context: add check_gl_version 2014-05-29 17:09:26 +0200 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: glcontext: Try GLX support before EGL support If available, glx has got a better chance of being the Gl platform we want to use compared to EGL 2014-05-29 16:59:28 +0200 Edward Hervey * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: glcontext: Try to open lib{EGL|GL|GLESv2}.so.1 before lib{EGL|GL|GLESv2} Fixes issues with .so (without numbering) being installed for development (such as from mesa-dev) but actual driver (with numbering) coming from some other place (like nvidia drivers) 2014-05-29 10:37:02 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix assertion after API changes 2014-05-29 18:33:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: keep our private pointer again, avoid to much trigger 2014-05-29 18:32:48 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests: update for glupload changes 2014-05-29 17:29:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: gl/colorconvert: use GstObject's lock instead of our own 2014-05-29 17:12:03 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: remove unnecassary pointer inderection 2014-05-29 16:45:37 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: re add the upload meta to the private struct try and avoid being to trigger happy 2014-05-29 16:29:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: small code cleanup and gst-indent 2014-05-29 16:22:52 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: gl/download: use GstObject's lock instead of out own 2014-05-29 16:20:30 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl/upload: use GstObject's lock instead of our own 2014-05-29 16:18:08 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: also remove the width/height in transform_caps allows scaling in the filters 2014-05-29 16:11:20 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: optimise the same format case simply return the input buffer unchanged 2014-05-29 16:07:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: fix YUY2/UYVY download for RG/LA textures 2014-05-29 15:50:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl/colorconvert: allocate output buffers Allows the nop optimisation by simply reffing the input buffer. 2014-05-28 23:21:07 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests: update for recent glupload changes GstGLUploadMeta object is now the GstVideoGLTextureUploadMeta provider. 2014-05-28 14:43:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.h: gl/upload: fix incorrect type in macros 2014-05-28 14:40:10 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstgluploadmeta.h: gl/upload: add GstGLUploadMeta object That simply deals with the provider aspect of GstVideoGLTextureUploadMeta. 2014-05-28 00:56:05 +1000 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/win32: make send_message reentrant I could not find a comparable win32API function so keep the running thread pointer to compare against. https://bugzilla.gnome.org/show_bug.cgi?id=730782 2014-05-27 13:56:34 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix compiler warning gstglcolorconvert.c:1133:11: error: 'j' may be used uninitialized in this function Was used uninitialized when jumping to out label in error case. 2014-05-27 18:20:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: gl/colorconvert: operate on buffers instead of memories 2014-05-27 11:28:27 +0100 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: make it actually honor show-preroll-frame property https://bugzilla.gnome.org/show_bug.cgi?id=730802 2014-05-27 08:54:20 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.h: gl: add missing cgl and eagl context type https://bugzilla.gnome.org/show_bug.cgi?id=729245 2014-05-27 08:46:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: gl: rename platform cocoa to cgl Before: GST_GL_PLATFORM=cocoa GST_GL_WINDOW=cocoa gst-launch-1.0 videotestsrc ! glimagesink After: GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa gst-launch-1.0 videotestsrc ! glimagesink but still pass --enable-cocoa to configure script because currently it can only be used with cocoa API. We could later have cgl/gstglcontext_cgl.h that manages a CGLContextObj directly and cocoa/gstglcontext_cocoa.h would just wrap it. So that it could be used with other Apple's window APIs. https://bugzilla.gnome.org/show_bug.cgi?id=729245 2014-05-27 13:55:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: gl/mixer: don't segfault when we don't have a buffer https://bugzilla.gnome.org/show_bug.cgi?id=729257 2014-05-27 13:04:39 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window_x11: avoid BadDrawable error on shutdown 2014-05-27 10:47:25 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/context_egl: pass the vars in the right order to DestroySurface https://bugzilla.gnome.org/show_bug.cgi?id=728514 2014-05-25 09:03:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Remove format information to allow color convert again We also need to remove the format information, as glfilter can do color convertion. This code was imported from videoconvert. https://bugzilla.gnome.org/show_bug.cgi?id=729861 2014-05-25 11:44:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: allocate the correct memory size and avoid wasting resources we will never need https://bugzilla.gnome.org/show_bug.cgi?id=730703 2014-05-23 23:02:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix YUY2 and UYVY support with luminance_alpha https://bugzilla.gnome.org/show_bug.cgi?id=730666 2014-05-23 12:07:50 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: provide compatability defines fixes build on android/OS X 2014-05-23 11:01:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: remove scratch texture for YUY2/UYVY We can get all our data from the one RG/LA texture with some shader magic. https://bugzilla.gnome.org/show_bug.cgi?id=728890 2014-05-23 10:59:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: RGBA/UNSIGNED_BYTE only format supported by ReadPixels GLES2 Error out in case we attempt to read with any other invalid format. 2014-05-23 10:57:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: generate textures with a sized internal format Required in order to generate RG and RED textured with GLES3. 2014-05-21 21:47:45 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: gl/memory: implement GL_EXT_texture_rg support Which is used by default over the Luminance formats due to it being color renderable with fbos (and deprecation/removal with GL 3.x). https://bugzilla.gnome.org/show_bug.cgi?id=729750 https://bugzilla.gnome.org/show_bug.cgi?id=704222 https://bugzilla.gnome.org/show_bug.cgi?id=728890 2014-05-21 21:44:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl/context: add gl extension checking to check_feature() Useful for extensions that do not define any new GL API entrypoints but can still modify behaviour when used. 2014-05-21 20:36:37 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: gl/download: fixup YUY2/UYVY download Regression from 2da979831ec3b1a8d993eb6f2d3999c5810c4d67 as it did not update the download code to reflect the change in texture format. 2014-05-21 19:47:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: fixup passthrough bufferpool In a pipeline like so: videotestsrc ! gleffects ! videoconvert ! sink gleffects was simply passing the videoconvert bufferpool to videotestsrc and not creating a glbufferpool. videobufferpool would then fail to allocate from the glallocator. 2014-05-21 10:26:21 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: gl/upload: switch the 'master' texture for YUY2, UYVY From d4bcef3204709159713ff1630978ecac0bd91dc9 on, using a RGBA texture to hold the data causes the glmemory to have half width and a scaling of [2, 1]. Using a LA texture solves this problem however cannot be attached to the framebuffer for copying into a RGBA texture. Which will be solved by moving to EXT_texture_rg. https://bugzilla.gnome.org/show_bug.cgi?id=728890 2014-05-14 17:59:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglfilter.c: gl/eglimage: add eglimage context feature Allows us to selectively use EGLImages only when available https://bugzilla.gnome.org/show_bug.cgi?id=728234 2014-05-14 17:33:21 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: gl/context: add generic feature checking At the moment it simply delegates to the subclass. 2014-05-19 12:25:51 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Check if context creation failed before trying to use it Otherwise we will cause assertions everywhere by passing NULL to functions and eventually crash when dereferencing a NULL pointer. https://bugzilla.gnome.org/show_bug.cgi?id=730069 2014-05-19 12:21:13 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Add more assertions to make sure that everything sets the GError during context creation if something fails 2014-05-13 14:13:57 +1000 Matthew Waters * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl/download: update to be similar to the glupload semantics 2014-05-13 14:07:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: fix up alpha clobbering Previously it would only work if the alpha value was in the last component (RGBx, BGRx). Now it works wherever the alpha value may be (xRGB, xBGR, etc). 2014-05-13 13:16:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Fix building without EGL support This fixes the OSX build and any builds with --disable-egl. That issue was introduced in "glfilter: rewrite transform_caps to preserve caps fields". https://bugzilla.gnome.org/show_bug.cgi?id=729861 2014-05-13 13:30:47 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: rewrite transform_caps to preserve caps fields https://bugzilla.gnome.org/show_bug.cgi?id=729861 2014-05-13 10:53:19 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: gl/colorconvert: use the texture scaling from the gl memory The colorconvert values were not being used at all. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-12 19:29:45 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Fix handling of stride with alignement larger then 8 Setting a scaled factor for X coordinate is not enough as the indexer will still think stride is shorter and will not fully skip it. Instead, update width, so the lines are as expected. Combined with the scale, it will hide the cropped portion. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-12 13:50:47 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Ensure we still have a texture after upload_set_format() gst_gl_upload_set_format() resets the upload, hence the texture. So we need to ensure we have a texture after this call when uploading. 2014-05-12 12:59:59 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Correctly update the video info from video meta Using gst_video_info_set_format() isn't complete when updating a video info from video meta. 2014-05-12 12:57:18 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Correctly update video info in upload fallback When the upload accelerated method fails, we fallback to an upload, but the video info was not correctly updated. 2014-05-12 13:32:31 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl/upload: set out_tex after reset, not before Fix a regression introduced recently with the lazy init. It was happening when calling gst_video_gl_texture_upload_meta_upload from an aplication. So not using gst_gl_upload_perform_with_buffer. 2014-05-11 12:48:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: update the video info on mapping a video frame The buffer should contain the most specific data on how the data is formatted. We should use this information. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-12 21:56:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/convert: clobber alpha channel when needed Needed in the conversion from padded RGB formats to formats with an alpha channel. e.g. BGRx -> ABGR, etc https://bugzilla.gnome.org/show_bug.cgi?id=729742 2014-05-12 21:51:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: avoid performing color conversion when there is no need One such example is when the buffer contains GstGLMemory in the RGBA format https://bugzilla.gnome.org/show_bug.cgi?id=729278 2014-05-11 14:02:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: choose the right alpha component for AYUV -> RGBA 2014-05-11 10:27:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: update the respective state when we cache textures/data 2014-05-10 23:33:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: cache the textures that we are using 2014-05-10 22:48:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: avoid recreating the GLMemory struct for output textures 2014-05-09 18:59:46 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglupload.c: gl: Fix some of the error handling 2014-05-09 17:59:43 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Update GstVideoInfo after the buffer is mapped gst_video_frame_map() will store an updated video info base on the video meta. In order to have the right stride and offset we should update that video info accordingly. 2014-05-09 15:42:08 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshadervariables.c: gl: Fix memory leak CID #1212171 2014-05-09 22:22:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: preserve alpha in AYUV <-> RGBA conversions https://bugzilla.gnome.org/show_bug.cgi?id=729743 2014-05-09 18:07:03 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: gl/colorconvert: implement lazy init 2014-05-08 15:38:24 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl/upload: set initted to TRUE when _init_upload succeeded 2014-05-08 22:49:33 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Use GST_STR_NULL() for printing possibly NULL strings and print all variables we use Fixes compiler warning about set but not used platform_choice variable among other things. 2014-05-08 16:08:08 +0100 Julien Isorce * ext/gl/gstgleffects.c: gleffects: use gl_vtable 2014-05-08 17:28:11 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: fix compilation on OS X 2014-05-08 15:40:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: fail propoerly if init fails 2014-05-08 15:30:49 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: gl: make all GObjects inherit from GstObject Aids memory leak debugging with GST_TRACE=mem-live 2014-05-08 13:46:29 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglupload.c: gl/upload: implement lazy init Rename init_format to set_format 2014-05-08 00:59:42 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl/upload: add get_format method Simply retreives the format set by init_format 2014-05-08 00:48:07 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: attempt to passthrough the pool if the caps are the same Reduces the number of glbufferpool instances required for >=2 consecutive GL elements in a pipeline. 2014-05-08 00:43:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: always initialize the upload object 2014-05-07 21:45:53 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: gl: advertise GstGLMemory usage in the caps as capsfeatures https://bugzilla.gnome.org/show_bug.cgi?id=729658 2014-05-07 20:12:23 +1000 Matthew Waters * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: gl/examples: fix compilation for clutter examples ClutterX11TexturePixmap is deprecated in Clutter 1.6 and we ask for at least 1.8 2014-05-07 19:05:55 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: avoid endless recursion for cocoa 2014-05-07 09:11:25 +1000 Matthew Waters * ext/gl/gstglimagesink.c: gl/sink: make sure we always initialize the upload object https://bugzilla.gnome.org/show_bug.cgi?id=729542 2014-05-06 11:59:24 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl: do not allocate the target texture of an EGLImage The target texture of an EGLImage is the texture bind just before calling glEGLImageTargetTexture2D. As we currently only support a gl texture as the source of an EGLImage the gl texture is actually already allocated when creating the eglimage. I also see some cases where it fails to upload an eglimage when glTexImage2D is called on the target. 2014-05-06 11:51:31 +0100 Julien Isorce * gst-libs/gst/gl/gstglutils.c: gl: allow to avoid calling glTexImage2D(w, h, NULL) when generating a texture Just pass 0 as width or height to gst_gl_context_gen_texture. 2014-05-06 11:27:47 +0100 Julien Isorce * gst-libs/gst/gl/gstglbufferpool.c: gl: no need to initialize a frame buffer object to upload an eglimage Fix https://bugzilla.gnome.org/show_bug.cgi?id=729588 2014-05-06 11:21:56 +0100 Julien Isorce * gst-libs/gst/gl/egl/gsteglimagememory.c: gl: use GST_CAT_ERROR instead of GST_ERROR_OBJECT It fixes segault when GST_DEBUG is at least level 1 and eglCreateImage fails 2014-05-06 10:14:26 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl: delete texture used with GstVideoGLTextureUploadMeta 2014-05-06 14:23:34 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl: use gst_gl_context_gen_shader helper instead of duplicating code 2014-05-06 16:39:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl/display: clean up pre gstglcontext api and struct fields https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 17:27:15 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl/display: add get_handle_type https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 17:08:18 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: avoid opening the X11 display on systems with Cocoa (OS X) https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 16:39:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: fix string length check for eagl 2014-05-06 16:31:28 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: check the correct env variable for choosing an egl display GST_GL_WINDOW is used for window system specific choices. An EGLDisplay can be created from window systems with egl support by using eglGetDisplay(). https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 12:56:25 +0200 Edward Hervey * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: Use OBJCFLAGS where needed Should fix usage of c-compiler-only flags with an objective-c compiler 2014-05-03 21:38:42 -0400 Luis de Bethencourt * tests/examples/gl/clutter/cluttershare.c: gl/clutter: safer check for cogl version Use COGL_VERSION_ENCODE to check for the minimum required and maximum allowed cogl version. In certain situations just using the COGL_VERSION_* macro name can give you the following error: error "COGL_VERSION_MAX_ALLOWED must be >= COGL_VERSION_MIN_REQUIRED" 2014-05-03 21:05:19 -0400 Luis de Bethencourt * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: gl/examples/generic: remove trailing whitespaces 2014-05-03 19:45:37 +0200 Sebastian Dröge * tests/examples/gl/clutter/Makefile.am: examples: Fix CFLAGS in clutter GL examples 2014-05-03 19:42:37 +0200 Sebastian Dröge * tests/examples/gl/Makefile.am: examples: Add all gl subdirs to DIST_SUBDIRS to fix the build 2014-05-02 15:56:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfilter.c: gl: use the bufferpool's upload when available Avoids duplicating GL resources https://bugzilla.gnome.org/show_bug.cgi?id=728872 2014-05-02 05:57:00 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl: show internal cocoa window on top of others Useful when your OSX terminal is fullscreen https://bugzilla.gnome.org/show_bug.cgi?id=728127 2014-05-02 05:51:36 +0100 Julien Isorce * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl: pass NSView instead of NSWindow in cocoa-videooverlay example https://bugzilla.gnome.org/show_bug.cgi?id=728451 2014-05-02 05:50:18 +0100 Julien Isorce * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl: add copyright to cocoa example 2014-05-02 05:46:18 +0100 Julien Isorce * tests/examples/gl/cocoa/.gitignore: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: * tests/examples/gl/cocoa/videooverlay/.gitignore: * tests/examples/gl/cocoa/videooverlay/Makefile.am: gl: rename cocoa example and move it to its parent directory 2014-05-02 05:29:41 +0100 Julien Isorce * tests/examples/gl/cocoa/README: gl: remove unuseful README for cocoa example 2014-05-01 16:07:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: gl/pool: init the upload object on start Theoretically, set_config could be called multiple times 2014-05-01 14:36:54 +0200 Sebastian Dröge * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl: Try harder to load symbols from the correct place This commit makes the loading of the GModules threadsafe, and always first tries to load the symbol for the GL library that is selected for the current context. Only then it falls back to looking into the current module (NULL), and only as a last resort the context specific function (e.g. eglGetProcAddress()) is called. Also add configure parameters to select the names of the library modules instead of using the defaults, and let the defaults be independent of the G_MODULE_SUFFIX. https://bugzilla.gnome.org/show_bug.cgi?id=728753 2014-05-01 14:11:00 +1000 Matthew Waters * ext/gl/gstglcolorscale.c: glcolorscale: fix operation with dual GL, GLES2 libgstgl 2014-05-01 13:57:16 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: gl/mem: implement texture copying between formats with strides properly Previously, we used the width to determine the amount of data to be copied using pbos. This, makes it allocate enough data for the the strides as well. 2014-05-01 12:51:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.h: gl/mem: pad the public struct 2014-04-30 18:37:27 +0100 Nicolas Dufresne * gst-libs/gst/gl/gstglcontext.c: gl: no need to provide full lib path to load symbols - Make gstgl work on Mali - Keep it work on RPI - fallback to NULL name module if fails with usual lib name https://bugzilla.gnome.org/show_bug.cgi?id=728753 2014-04-30 17:30:06 +0100 Julien Isorce * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: glcolorscale: use a shader on GLESv2 Otherwise you only see black frames Fix https://bugzilla.gnome.org/show_bug.cgi?id=728947 2014-04-30 15:30:53 +0100 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: use new helper function to avoid duplicating default shader text 2014-04-30 15:28:35 +0100 Julien Isorce * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: gleffects: use new helper functions to avoid duplicating the same vertex shader text And also use the default fragment shader text for the identity effect 2014-04-30 15:20:23 +0100 Julien Isorce * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: gl: add convenient functions to setup default vertex and fragment shaders Most of our 2D filters use the same simple vertex shader. Also define the default fragment shader as the identity. Avoid duplicating the same vertex and fragment shader text. 2014-04-29 19:24:08 +0100 Philippe Normand * gst-libs/gst/gl/gstglutils.h: gl: add missing G_BEGIN/END_DECLS in utils header 2014-04-29 13:21:27 -0300 Thiago Santos * tests/examples/gl/gtk/Makefile.am: examples: gl: add missing entry to cflags to find gst/gl/gl.h Otherwise build fails 2014-04-29 16:44:59 +0200 Stefan Sauer * tests/examples/gl/gtk/gstgtk.c: tests: drop direct include It is only allowed to include gdk/gdkx.h and that will bring all the x11 things. 2014-04-29 22:18:14 +1000 Jan Schmidt * tests/examples/gl/sdl/Makefile.am: gl/sdl example: Fix uninstalled build 2014-04-23 20:29:47 +1000 Jan Schmidt * gst-libs/gst/gl/gstglutils.c: gl: Reduce noisy Info level output to LOG 2014-04-29 18:32:22 +1000 Matthew Waters * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/sdlshare.c: gl/examples/sdl: update for the latest gstgl changes 2014-04-29 16:38:55 +1000 Matthew Waters * tests/examples/gl/Makefile.am: * tests/examples/gl/clutter/.gitignore: * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/clutter/cluttershare.c: * tests/examples/gl/clutter/cluttershare.cbp: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/README: * tests/examples/gl/cocoa/videooverlay/.gitignore: * tests/examples/gl/cocoa/videooverlay/Makefile.am: * tests/examples/gl/cocoa/videooverlay/main.m: * tests/examples/gl/generic/Makefile.am: * tests/examples/gl/generic/README: * tests/examples/gl/generic/cube/.gitignore: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cube/cube.vcproj: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/.gitignore: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/cubeyuv/cubeyuv.vcproj: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/.gitignore: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/doublecube/doublecube.vcproj: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/generic.sln: * tests/examples/gl/generic/recordgraphic/.gitignore: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/gl/generic/recordgraphic/recordgraphic.vcproj: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/README: * tests/examples/gl/gtk/filternovideooverlay/.gitignore: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/filternovideooverlay.vcproj: * tests/examples/gl/gtk/filternovideooverlay/main.cpp: * tests/examples/gl/gtk/filtervideooverlay/.gitignore: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/filtervideooverlay.vcproj: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/.gitignore: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/fxtest.vcproj: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gstgtk.c: * tests/examples/gl/gtk/gstgtk.h: * tests/examples/gl/gtk/gtk.sln: * tests/examples/gl/gtk/gtkvideooverlay/.gitignore: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/gtkvideooverlay.vcproj: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: * tests/examples/gl/gtk/pixbufdrop/pixbufdrop.vcproj: * tests/examples/gl/gtk/switchvideooverlay/.gitignore: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: * tests/examples/gl/gtk/switchvideooverlay/switchvideooverlay.vcproj: * tests/examples/gl/qt/Makefile.am: * tests/examples/gl/qt/README: * tests/examples/gl/qt/mousevideooverlay/gstthread.cpp: * tests/examples/gl/qt/mousevideooverlay/gstthread.h: * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pri: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.sln: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.vcproj: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/mousevideooverlay/qrenderer.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pri: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.sln: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.vcproj: * tests/examples/gl/qt/qglwtextureshare/AsyncQueue.h: * tests/examples/gl/qt/qglwtextureshare/README: * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/main.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.h: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/Debug/videooverlay: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_gstthread.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_pipeline.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_qrenderer.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.pri: * tests/examples/gl/qt/videooverlay/videooverlay.sln: * tests/examples/gl/qt/videooverlay/videooverlay.vcproj: * tests/examples/gl/qt/videooverlay/videovideooverlay.pro: * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/sdl.sln: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare.vcproj: gl/examples: move to -bad - fix all the compiler errors - give them their own gl directory 2014-04-28 15:52:41 +0100 Julien Isorce * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: gl: append GL_LIB and GL_CFLAGS in pc files 2014-04-28 15:15:20 +0100 Julien Isorce * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl: use gst_gl_platform_from_string because we support gl shareList on all platforms 2014-04-28 15:07:34 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: only warn when other_context attribute is set Fix false positive 2014-04-28 14:54:21 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl: fix string literal warning warning: format not a string literal, argument types not checked [-Wformat-nonliteral] 2014-04-25 16:18:07 -0400 Luis de Bethencourt * tests/check/libs/gstglmemory.c: gl: check the correct GstGLMemory in basic_test 2014-04-24 13:59:35 -0400 Nicolas Dufresne * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Removed unused variable 2014-04-24 18:33:03 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: gl/x11: Get rid of unneeded second display connection and do everything from the main loop 2014-04-24 18:28:34 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Block rendering until swapbuffers is called and don't go via X11 events as unneeded indirection This should fix QoS problems, where basesink believed it was rendering with 20FPS but actually we were just queueing up X11 Expose events and only once in a while something was rendered. 2014-04-24 16:05:32 +0100 Julien Isorce * ext/gl/gstglimagesink.c: gl: fails glimagesink when shader compilation went wrong Those shaders are fixed and very simple so it should not fail but it's worth to handle a such case. 2014-04-24 15:36:47 +0100 Julien Isorce * ext/gl/gstglimagesink.c: gl: call glClearColor before glClear 2014-04-24 16:33:56 +0200 Josep Torra * pkgconfig/gstreamer-gl-uninstalled.pc.in: pkgconfig: fix gstreamer-gl uninstalled Ensure to provide libgstgl also in the uninstalled setup. Fixes build of gst-omx for RPI in uninstalled setup. 2014-04-24 15:17:41 +0100 Julien Isorce * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/rpi: do not scale to full screen Having a 640x360 movie being scaled to 1900x1200 does not look nice 2014-04-24 14:50:57 +0100 Julien Isorce * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/rpi: change dispmanx attributes of existing element instead of creating a new one I was lucky that: e1 = vc_dispmanx_element_add () eglCreateWindowSurface (e1) vc_dispmanx_element_remove (e1) e2 = vc_dispmanx_element_add () resulted in having e2 equal to e1. And also having the egl surface that does not allocate its buffers before the first draw. 2014-04-24 14:38:40 +0100 Julien Isorce * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/rpi: ensure the dispmanx element to be opaque So that we ensure it does not get alpha composited with other dispmanx elements like the desktop. 2014-04-24 10:37:00 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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 2014-04-24 09:03:32 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: only draw once the window has been resized It avoids to draw the first frame with an incorrect view port. 2014-04-24 08:49:54 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: 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 2014-04-23 14:41:21 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl: fix declaration-definition mismatch for _init_upload 2014-04-23 13:34:12 +0100 Julien Isorce * gst-libs/gst/gl/gstglbufferpool.c: gl/bufferpool: do not reset upload when set_config does not change the caps With videotestsrc ! glimagesink it was reset 3 times 2014-04-23 13:30:27 +0100 Julien Isorce * gst-libs/gst/gl/gstglapi.h: 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) 2014-04-23 12:42:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: 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. 2014-04-23 11:10:28 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: 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 2014-04-23 10:55:38 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: By default keep the display aspect ratio Also the default for the pixel-aspect-ratio should be 1/1, not 0/1. 2014-04-23 10:27:23 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: gltestsrc: Unref context when creation failed and guard against that in fill() 2014-04-23 10:24:55 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: 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. 2014-04-23 10:00:48 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: 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 2014-04-21 09:51:19 +0100 Vincent Penquerc'h * ext/gl/gstglimagesink.c: gl: a couple spelling/grammar fixes 2014-04-21 09:50:19 +0100 Vincent Penquerc'h * ext/gl/gstglimagesink.c: gl: guard against using a NULL window pointer Coverity 1195145 2014-04-21 09:47:08 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstglmemory.c: gl: prevent division by 0 on unsupported texture type Coverity 1199697 2014-04-21 22:01:47 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: 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. 2014-03-24 12:08:43 +0000 Julien Isorce * gst-libs/gst/gl/gstgles2.h: gl: allow to include GLES/gl.h https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-04-13 19:20:32 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Fix compilation 2014-04-13 16:53:58 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Notify the window's resize callback about surface dimension changes https://bugzilla.gnome.org/show_bug.cgi?id=728107 2014-04-13 16:46:11 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: gl/eagl: Remove spurious private struct pointer 2014-04-13 16:40:58 +0200 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: gl/android: Notify the window's resize callback about surface dimension changes https://bugzilla.gnome.org/show_bug.cgi?id=728107 2014-04-13 22:16:45 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: remove unused texture 2014-04-13 22:14:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: move upload into _prepare() 2014-04-13 13:49:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl/context: output available extensions 2014-04-13 13:39:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: gl/context: provide get_gl_version 2014-04-13 00:21:00 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: restore viewport dimensions when fbo done Regression introduced by 95abfda1399bcddbee345d4542e857d743965477. It caused to display the wrong frame size when resizing the window. 2014-04-12 22:45:30 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl: Import QuartzCore/QuartzCore.h for CAEAGLLayer on older iOS versions 2014-04-12 22:15:35 +0200 Sebastian Dröge * ext/gl/gstopengl.c: 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. 2014-04-12 21:43:50 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglwindow.c: gl: Add support for iOS EAGL platform https://bugzilla.gnome.org/show_bug.cgi?id=703341 2014-04-12 17:33:44 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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 2014-04-12 17:01:09 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: First handle GL window setup, then create the context and its thread 2014-04-12 15:51:47 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: fix NSAutoreleasePool initialization 2014-04-12 12:42:40 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: 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. 2014-04-12 14:40:40 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: fix warning type qualifiers ignored i686-apple-darwin11-llvm-gcc-4.2 "warning: type qualifiers ignored on function return type" 2014-04-12 18:24:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: remove if statement with no effect Coverity 1199698 2014-04-12 18:16:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: gl/color: pass large value by reference Coverity 1199700 2014-04-11 17:24:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: gl/mem: cache the stride/unpack length for upload 2014-04-11 17:23:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: explicitly map the buffers we are copying into Otherwise it may not be downloaded at all. 2014-04-11 16:09:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: cache the temporary textures 2014-04-11 11:04:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/mem: provide defines for tokens not defined in GLES2/ancient platforms 2014-04-11 11:03:19 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl: fixup incorrect number of arguments 2014-04-11 10:55:21 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl: fix incorrect usage of g_return_if_fail 2014-04-02 17:43:52 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: 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. 2014-04-01 15:10:05 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: gl/eglimage: #if 0 unused code 2014-04-01 13:30:51 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl: add colorconvert object that converts between color spaces/formats Currently used by both upload and download objects separately. 2014-04-09 10:28:46 +0100 Vincent Penquerc'h * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectxray.c: gl: pass large structure by const pointer, not value Avoids large pointless memcpy. Coverity 206236, 206237 2014-04-08 16:23:50 +0100 Vincent Penquerc'h * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: test for frame NULLness before dereferencing it Coverity 1195172, 1195171 2014-04-08 15:54:01 +0100 Vincent Penquerc'h * gst-libs/gst/gl/egl/gsteglimagememory.c: gl: fix leaks As the relevant variables are initialized to 0/NULL, we can loop over the full range and make sure we free partial allocations when an error happens partway through initialization. 2014-04-06 11:57:12 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: 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. 2014-04-02 13:48:02 +0100 Tim-Philipp Müller * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: tests: fix gl unit tests for recent API changes 2014-04-02 23:05:47 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl: pass video info's by reference 2014-04-02 23:05:11 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: fix array initialization 2014-04-02 22:54:55 +1100 Matthew Waters * ext/gl/gstglbumper.c: glbumper: remove redundant check 2014-04-02 22:53:10 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl/glx: use the context's display rather than asking for the window's 2014-04-02 22:43:41 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: fix assignment of temporary variables 2014-04-02 22:42:50 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl: avoid adding a NULL pool to propose allocation 2014-04-01 21:48:26 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: 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 2014-03-28 20:22:43 +0000 Tim-Philipp Müller * gst-libs/gst/gl/egl/Makefile.am: gl: egl: fix distcheck and out of source build 2014-03-28 20:47:36 +0100 Rico Tzschichholz * gst-libs/gst/gl/Makefile.am: build: Fix make dist 2014-03-25 15:40:14 +1100 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: gl: fix out-of-source builds pt2 21b897de2f762bee504cbc007fd108148ee5ae24 did this for x11 and wayland. Do it for the other backends as well. 2014-03-26 23:13:53 +0000 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfilter.c: gl: only set CAPS_FEATURE_MEMORY_EGL_IMAGE on egl platform 2014-03-26 19:17:03 +0000 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglfilter.c: 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 2014-03-22 22:01:49 +0000 Julien Isorce 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 2014-03-24 12:12:42 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/Makefile.am: gl: deploy egl headers in gst/gl/egl instead of gst/gl https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-24 12:10:00 +0000 Julien Isorce * gst-libs/gst/gl/x11/Makefile.am: gl: remove commented and unsued code in x11 Makefile.am https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-24 12:04:08 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: 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 2014-03-24 17:33:00 +0100 Gwenole Beauchesne * ext/gl/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: gl: fix out-of-source builds. Always use the locally generated file. Signed-off-by: Gwenole Beauchesne 2014-03-25 00:50:30 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: gl/download: add support for the bt709 color matrix 2014-03-25 00:34:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: add support for the bt709 color matrix 2014-03-24 23:09:20 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: gl: remove explicit reference to X_CFLAGS They are in GL_CFLAGS if required 2014-03-23 23:43:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: remove the legacy GL 1.x upload path uploading requires shaders and fbos available in GL2. 2014-03-23 11:02:08 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gl: fallback to glGetString if GL_NUM_EXTENSIONS fails Need it on MacOSX 10.7.5 2014-03-23 01:02:03 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: gl: and update the Makefile 2014-03-23 00:38:16 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/base.h: * gst-libs/gst/gl/glprototypes/blending.h: * gst-libs/gst/gl/glprototypes/eglimage.h: * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/glprototypes/fixedfunction.h: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1_functions.h: * gst-libs/gst/gl/glprototypes/gles2_functions.h: * gst-libs/gst/gl/glprototypes/gles3opengl.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglapi.h: gl: reorganize the extension headers by function rather than api 2014-03-21 20:29:49 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl/win32: use the correct include and gst-indent 2014-03-18 09:16:25 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: use wglCreateContextAttribsARB to create share context https://bugzilla.gnome.org/show_bug.cgi?id=726494 2014-03-17 20:43:35 +0100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: gl/mixer: fix download check for failure 2014-03-17 20:40:51 +0100 Matthew Waters * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl: silence a critical if upstream does not provide us with meta params 2014-03-19 13:48:10 +0000 Julien Isorce * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.h: gl: silence warnings building for RPI related to 'vcos_*' Similar than 1190a79b199584cfc4dd62c474531c32cfbba425 2014-03-19 13:45:35 +0000 Julien Isorce * ext/gl/gstopengl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: gl: keep only one occurence of '#include ' To simply maintainance if we need to put specific includes around it. 2014-03-18 00:08:50 +0000 Руслан Ижбулатов * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: fix the use of always-defined macros After 2a0f0399ae226089c2ba07b1b904741b856f37af GST_GL_* macros are always defined to 0 or 1. Don't use #ifdef ... or #if defined() on them. https://bugzilla.gnome.org/show_bug.cgi?id=726591 2014-03-17 15:16:13 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: add GModule libs for win32 2014-03-17 15:06:25 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: only link against gstegl if we are using egl Assuming if we are building egl that the egl library is built 2014-03-17 14:37:13 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: add path of the gstegl library Temporary until we merge the two libraries 2014-03-17 14:26:31 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: Revert "gl: add dep on gstegl" It was already in _LIBADD This reverts commit b10a3530804335fc3b9494603ef78ce9417c3bc8. 2014-03-17 14:11:14 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: add dep on gstegl Temporary until we merge the two libraries 2014-03-17 14:06:22 +0100 Edward Hervey * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Fix debug statements and platform 2014-03-17 12:04:40 +0100 Edward Hervey * gst-libs/gst/gl/cocoa/Makefile.am: gl: Fix static build with objective-C --tag=CC is needed for static build 2014-03-17 10:56:39 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl: Add EGLDisplay display subclass 2014-03-17 10:44:32 +0100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: add a dummy window class Effective for the case where we have a platform that does not require a native window. We require a mainloop to run the GL commands which is currently operated by GstGLWindow. 2014-03-17 08:10:50 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: fix undeclared symbol when building without GST_DEBUG 2014-03-16 18:55:03 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: fix a double unref of the query when building without X 2014-03-16 17:21:38 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: silence a compiler warning about missing prototypes 2014-03-14 19:03:36 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl/utils: add x11 GstContext handling https://bugzilla.gnome.org/show_bug.cgi?id=726360 2014-03-16 15:34:11 +0100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl: define GL_NUM_EXTENSIONS if not defined 2014-03-16 15:06:37 +0100 Matthew Waters * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfilterblur.h: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfilterlaplacian.h: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfilterreflectedscreen.h: * ext/gl/gstglfiltershader.h: * ext/gl/gstglfiltersobel.h: * ext/gl/gstgloverlay.h: * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl: silence all the compiler warnings 2014-03-16 11:23:16 +0100 Matthew Waters * ext/gl/BUGS: * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectscurves.h: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstglbumper.c: * ext/gl/gstglbumper.h: * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfilterblur.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterlaplacian.h: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfilterreflectedscreen.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglfiltersobel.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: move gl elements to ext subdirectory 2014-03-15 15:55:46 +0100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [906/906] filter: warn about trying to share with multiple contexts at once 2014-03-15 14:06:40 +0100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [905/906] Add GL context sharing support for non-gstgl elements 2014-03-15 13:55:39 +0100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [904/906] mixer: ask for display handles on pad activation 2014-03-15 13:51:44 +0100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: [903/906] api: add GstGLPlatform to/from string 2014-03-15 11:25:43 +0100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/gstglcontext.c: [902/906] context: implement glGetStringi handling for GL core contexts/GLES3 2014-03-12 23:46:58 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: [901/906] glx: use the display handle from the global display Intel drivers require the display handles be the same for context sharing to occur. Also solves some cases of use after free of the display when integrating with gstreamer-vaapi. See https://bugs.freedesktop.org/show_bug.cgi?id=41736 for the intel bug. 2014-03-12 23:44:28 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: [900/906] tests/gstglcontext: reduce the number of frames displayed Was causing timeouts on intel hardware due to vsync handling. 2014-03-12 23:43:12 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: [899/906] egl: warn if we resort to display handles from the window 2014-03-04 23:28:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: [897/906] api: plugin a small memory leak Found by adrien.schwartzentruber@gmail.com 2014-03-02 11:48:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: [896/906] utils: use the vtable for deleting the texture 2014-02-28 17:42:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [895/906] context: call window_class->close last We should destroy resources before closing the display connection Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725048 2014-02-25 09:27:26 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglfeature.h: [894/906] gl: add missing G_BEGIN_DECLS/G_END_DECLS https://bugzilla.gnome.org/show_bug.cgi?id=725111 2014-02-24 23:55:58 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [893/906] x11: close both of the display's we use (the comment doesn't seem to apply anymore) https://bugzilla.gnome.org/show_bug.cgi?id=725048 2014-02-23 11:44:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [892/906] silence a compiler warning on older gcc versions (4.6) 2014-02-11 08:57:29 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * tests/check/libs/gstglcontext.c: [891/906] context: add support for wrapping external contexts 2013-11-27 17:52:46 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/x11_event_source.c: [890/906] x11: add display subclass GstGLDisplayX11 holds the display connection and name. Each thread requires it's own X11 Display connection (initialised from name) due to the fact that we do not want to call XInitThreads(). Doing so would result in segfaults when integrating with GUI toolkits Gtk, Qt, etc. The Display connection is for OpenGL platforms where a constant display is required in order to share contexts (egl). In the case of a wrapped context (added later), we do not have GstGLWindow to retreive the display from so a 'master' connection is used instead. 2014-01-15 10:21:56 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [889/906] display: add display type enum 2014-02-23 11:27:23 +1100 Adrien SCH * gst-libs/gst/gl/gstgldownload.c: [888/906] correct error handling in gstgldownload.c 2014-02-23 10:36:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [887/906] mixer: fixup a memory leak of the context in the GLTextureUploadMeta path gst_structure_get returns a reference to the object and we asked for another with gst_object_replace. https://bugzilla.gnome.org/show_bug.cgi?id=724816 2014-02-23 01:32:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [886/906] fixup a memory leak of the context in the GLTextureUploadMeta path gst_structure_get returns a reference to the object and we asked for another with gst_object_replace. https://bugzilla.gnome.org/show_bug.cgi?id=724816 2014-02-21 15:25:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [885/906] filter: free our data plugs some memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=724816 2014-02-21 13:28:16 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [884/906] filter: return the pad template caps in transform_caps We can transform from any input in our caps to any output. With the following pipeline snippet: ... ! vaapidecode ! glcolorscale ! xvimagesink GstVideoGLTextureUploadMeta was being used on both src and sink pads causing linking to fail. This allows the usage of the meta on either pad without affecting whether the meta is chosen on the other pad. 2014-02-11 08:23:39 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1gles2.h: * gst-libs/gst/gl/glprototypes/gles1gles2opengl.h: * gst-libs/gst/gl/glprototypes/gles1opengl.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: [883/906] api: provide from_string() Also s/gst_gl_api_string/gst_gl_api_to_string/g 2014-02-06 21:43:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [881/906] upload: restore default values for unpack_length fixes elements that upload a supplementary texture (glbumber, gldifferencematte, etc) 2014-02-20 22:40:05 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: [879/906] build: don't add X_CFLAGS to CFLAGS It should already be included if needed inside GL_CFLAGS 2014-02-05 01:53:04 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: [878/906] tests: update for glmem api change 2014-02-04 13:49:35 +0100 Chris Paulson-Ellis * gst-libs/gst/gl/x11/gstglwindow_x11.c: [877/906] x11: Use correct format string for guintptr https://bugzilla.gnome.org/show_bug.cgi?id=723537 2014-02-01 03:14:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: [876/906] glmem: use GstVideoInfo for format configuration Allows use of strides 2014-01-31 06:53:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [875/906] upload: support for arbitrary strides Using GL_UNPACK_ALIGNMENT for GLES2 and GL_UNPACK_ROW_LENGTH for everything else 2014-01-30 07:49:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [874/906] filter: implement draw_texture for GLES2 (taken from gleffects) 2014-01-29 19:14:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [873/906] upload: use GstVideoInfo for choosing the format 2014-01-29 06:42:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [872/906] upload: consolidate data _fill 2014-01-29 02:51:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [871/906] upload: fix texture scaling for YUY2/UYVY with GLES2 Another artifact from the transition to GL_TEXTURE_2D 2014-01-29 01:02:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [870/906] upload: remove superflous g_mutex_init 2014-01-30 08:28:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglupload.c: [869/906] tests: add some upload tests 2014-01-28 07:50:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [868/906] upload: fix compilation for GLES2 2014-01-17 08:46:02 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [867/906] glupload: Add GRAY8/GRAY16LE/BE upload support to glimagesink the 16bit data is uploaded as LUMINANCE_ALPHA, then expanded, composed in shader. value weight is a little complicate, high byte weight is 255*256/65535 (denormalize to [0~255] ,shift to high byte,then normalize to [0~1]), low byte weight is 255/65535(similar) https://bugzilla.gnome.org/show_bug.cgi?id=722670 2013-11-23 22:57:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [866/906] upload: update some docs 2013-11-23 22:19:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [865/906] glmem: report successful copy to the caller 2013-11-26 09:32:32 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [863/906] window: hold a ref to our GstGLDisplay 2013-11-25 20:34:06 +1100 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [862/906] window: remove set_need_lock No-one is using it. The only code that did was the x11 one which doesn't need it anymore. 2014-01-10 02:50:14 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/glprototypes/opengl.h: [861/906] glprototypes: Add missing glScalef declare https://bugzilla.gnome.org/show_bug.cgi?id=721903 2013-11-23 22:58:57 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: [860/906] docs: misc updates 2013-11-23 22:57:49 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [859/906] window: provide some documetation 2013-11-23 22:56:10 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: [858/906] glmem: update the docs 2013-11-23 22:54:46 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [857/906] display: document the new GstContext api 2013-11-23 22:53:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: [856/906] context: document it 2013-11-14 15:27:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [855/906] upload: add support for GstVideoGLTextureUploadMeta 2013-11-13 00:41:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [854/906] use the allocation query to propogate GstGLContext uses the GstVideoGLTextureUploadMeta api type for the query 2013-10-24 22:30:45 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglmixer.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: [853/906] display: remove _{set,get}_context A GstGLDisplay doesn't need a GstGLContext and its use was cause a reference cycle 2013-11-13 10:43:16 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [852/906] use GstContext for GstGLDisplay propogation implements the hooks required in GstElement::set_context and the context query 2013-11-15 18:28:49 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [850/906] glupload: Remove texture scaling artifacts from the TEXTURE_RECTANGLE -> TEXTURE_2D transition fixes the funky colours in some of the yuv formats https://bugzilla.gnome.org/show_bug.cgi?id=721155 2013-10-24 22:28:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [848/906] filter: a little code cleanup 2013-11-13 15:57:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [847/906] mixer: unmap the video frames we map plugs a memory leak 2013-11-15 20:50:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [846/906] mixer: handle 0/1 framerate better in caps 2013-11-15 20:49:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [845/906] filter: handle capsfeatures properly 2013-11-14 15:08:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: [844/906] mixer: give access to the pads at render time allows us to move the video frame mapping somewhere else 2013-11-13 23:24:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: [843/906] memory: provide copy_into_texture 2013-12-25 23:35:50 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: [842/906] Fix gstglconfig.h-related 'make distcheck' issues Fix srcdir vs. builddir issue in docs and 'files left after disclean' issue for gstglconfig.h 2013-11-30 09:51:49 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: [841/906] osx: allow x11/glx backend and set default runtime to cocoa/nsgl https://bugzilla.gnome.org/show_bug.cgi?id=719757 2013-11-30 16:38:13 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [839/906] cocoa: allow to call set_window_handle before to create glcontext So that it actually make cocoa videooverlay example work again. Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=719758 2013-11-15 18:28:49 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * tests/check/libs/gstglcontext.c: [838/906] gl: Use GL_TEXTURE_2D instead of GL_TEXTURE_RECTANGLE We create our textures (in Desktop GL) with GL_TEXTURE_RECTANGLE, vaapi attempts to bind our texture to GL_TEXTURE_2D which throws a GL_INVALID_OPERATION error and as thus, no video. Also, by moving exclusively to GL_TEXTURE_2D and the npot extension we also remove a difference between the Desktop GL and GLES2 code. https://bugzilla.gnome.org/show_bug.cgi?id=712287 2013-11-08 12:12:26 +0000 Matthieu Bouron * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [837/906] cocoa: resize OpenGL view size each time the window is resized Fixes glitches that can appear when the OpenGL view has not been resized after a window resize. https://bugzilla.gnome.org/show_bug.cgi?id=711672 2013-11-01 16:35:46 +0000 Matthieu Bouron * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: [836/906] cocoa: only use GSRegisterCurrentThread with GNUStep environment 2013-11-06 22:16:21 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [835/906] gstglwindow: remove unused fields 2013-11-06 22:13:20 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [834/906] gstglwindow: clear mutex 2013-11-06 22:12:02 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: [833/906] gstglcontext: initialize window to NULL 2013-11-06 21:59:27 +0000 Julien Isorce * gst-libs/gst/gl/x11/gstglwindow_x11.c: [832/906] x11: ignore Expose events not initiated by gst_gl_window_draw 2013-11-06 21:55:49 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [831/906] glimagesink: avoid to overload the drawer if already drawing Especially if the application calls gst_video_overlay_expose a lot 2013-10-23 20:38:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [829/906] mixer: error out properly on flushing 2013-10-22 21:48:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [828/906] context: refcount the display 2013-10-26 02:20:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [827/906] mixer: don't unref the query in the default case The element/application performing the query is responsible for the de/allocation 2013-10-24 21:24:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [826/906] upload: free our mutex 2013-10-11 16:00:23 +0100 Julien Isorce * gst-libs/gst/gl/x11/gstglwindow_x11.c: [825/906] glwindow_x11: check if the loop exists It happens when calling set_window_handle before to reach GST_STATE_READY. In this case the parent is set when creating the internal window. 2013-10-01 23:47:54 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshadervariables.c: [824/906] android: Build fixes https://bugzilla.gnome.org/show_bug.cgi?id=709786 2013-10-01 11:46:46 +0000 Julien Isorce * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [823/906] wayland_egl: make the wayland backend actually work on Raspberry Pi Fix resizing and can now move the window 2013-10-01 11:44:00 +0000 Julien Isorce * gst-libs/gst/gl/egl/gstglcontext_egl.c: [822/906] gstglcontext_egl: avoid non working EGL confs on rpi/wayland 2013-10-01 11:42:21 +0000 Julien Isorce * gst-libs/gst/gl/gstglframebuffer.c: * tests/check/libs/gstglcontext.c: [821/906] tests: fix test_share on GLESv2 2013-10-01 11:27:07 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [820/906] gstglwindow: if available use wayland instead dispmanx on rpi 2013-09-27 01:15:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [819/906] make gen_texture/del_texture threadsafe Use stack allocated instead of static variables Conflicts: gst-libs/gst/gl/gstglutils.c 2013-09-25 12:26:57 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [818/906] window: add send_message_async vmethod - provide a default synchronous send_message - make context creation threadsafe again 2013-09-24 16:37:11 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [817/906] make the state change test pass 2013-09-24 14:07:58 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [816/906] x11: fix make check segfault 2013-09-20 11:55:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [815/906] fix some refcount errors 2013-09-20 11:54:42 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [814/906] mixer: timestamp buffers 2013-09-16 19:07:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [813/906] unref the pool on shutdown 2013-09-15 14:23:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: [812/906] move the GL vtable from GstGLDisplay to GstGLContext Conflicts: tests/check/libs/gstglcontext.c 2013-08-22 15:55:35 +1000 Matthew Waters * tests/check/libs/gstglmemory.c: [811/906] tests: update for GstGLContext addition 2013-09-26 14:46:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglutils.c: [810/906] gstglutils: use gl_vtable for glDeleteTextures 2013-09-26 14:43:19 +0100 Julien Isorce * tests/check/libs/gstglcontext.c: [809/906] tests: port test_share to GLES2 Also add a deinit function to release fbo, tex and shader. 2013-09-03 22:03:03 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [808/906] x11: remove dead code 2013-09-03 21:49:18 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: [807/906] context: Move some window error enums to context 2013-08-30 00:28:04 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: [806/906] egl: doesn't require the EGLConfig from the other context libEGL should give us the same or similar EGLConfig from the EGLDisplay we have. 2013-08-30 00:22:31 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [805/906] glfilter: rename external-opengl-context prop to other-context It now requires a GstGLContext instead of a handle 2013-08-30 15:53:41 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: [804/906] rpi: call bcm_host_init in plugin_init 2013-08-30 14:12:37 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: [803/906] raspberrypi: add support for dispmanx See https://bugzilla.gnome.org/show_bug.cgi?id=703342 2013-08-29 20:12:27 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: [802/906] add GstGLContext test that tests context sharing 2013-08-29 20:10:42 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: [801/906] context: Reimplement GL context sharing https://bugzilla.gnome.org/show_bug.cgi?id=704806 2013-08-22 00:29:36 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: [798/906] build: install needed header 2013-08-21 15:40:52 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [797/906] x11: fix build for clang 2013-08-21 14:05:56 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: [796/906] move egl into its own directory 2013-08-21 13:57:56 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: [795/906] android: port to GstGLContext not tested 2013-08-15 17:09:04 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [794/906] context: add subclasses for the different platforms (egl, glx, wgl, etc) - most code taken from the Window subclasses - tested combinations: xEGL, GLX, Wayland+EGL, Cocoa (under GNUStep), WGL (Wine) 2013-08-14 10:44:19 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: [793/906] add a GstGLContext object that will be the basis of OpenGL contexts At the moment it just sits in between GstGLDisplay and GstGLWindow performing some of the stuff that GstGLWindow used to do. 2013-08-13 20:10:56 +1000 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: [792/906] build: use our own in tree headers before system ones allows us to develop against the tree rather than what may be installed 2013-08-16 16:29:12 +0100 Julien Isorce * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/x11_event_source.c: [791/906] glwindow/x11: remove X11EventSource as soon as the window is deleted gst_gl_window_x11_send_message do not use XSendEvent anymore 2013-08-07 17:11:59 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglegl.c: [789/906] egl: Create a window surface if necessary 2013-08-07 11:46:49 +0200 Tonu Jaansoo * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [788/906] osx: Fix compilation 2013-08-07 11:42:46 +0200 Tonu Jaansoo * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: [787/906] gl: The GLSL rectangle resampler does not always work with int tex coords Use floats instead. 2013-07-24 13:35:27 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/gles3opengl.h: [786/906] glprototypes: Add support for NV extensions for DrawBuffers and ReadBuffer 2013-07-24 13:34:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglegl.c: [785/906] egl: Use EGL_KHR_surfaceless_context instead of creating a useless surface if available 2013-07-19 10:07:54 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [782/906] gldownload: Use strlen() instead of sizeof(char*) gstgldownload.c:846:22: error: argument to 'sizeof' in 'memcpy' call is the same expression as the source; did you mean to provide an explicit length? [-Werror=sizeof-pointer-memaccess] 2013-07-19 16:48:03 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [781/906] download: propogate errors from the GL thread 2013-07-18 20:21:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: [780/906] up/download: check return values So we fail properly 2013-07-18 19:37:32 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: [779/906] download: remove _thread variants of the API 2013-07-18 19:36:27 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [778/906] upload: remove _thread variants of the API 2013-07-18 19:17:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [777/906] upload: overhaul and addition of new video formats use the shaders from eglglessink (adapted for Desktop GL) error out properly 2013-07-17 21:17:03 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [776/906] download: fix compiler warning about missing string format 2013-07-19 09:20:09 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstglapi.h: [775/906] configure: Check for GLeglImageOES and others again https://bugzilla.gnome.org/show_bug.cgi?id=704498 2013-07-18 20:26:44 +0200 Sebastian Dröge * gst-libs/gst/gl/win32/gstglwindow_win32.c: [774/906] win32: Fix some compiler errors/warnings 2013-07-18 01:42:31 +0200 Mathieu Duponchelle * gst-libs/gst/gl/gstglfilter.c: [773/906] glfilters: Mark writable-only properties as readable as well https://bugzilla.gnome.org/show_bug.cgi?id=704429 2013-07-17 11:22:02 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: [771/906] gl: Some less long/ulong/gulong usage 2013-07-04 10:01:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: [766/906] utils: generate a RGBA texture in all cases 2013-07-03 21:01:25 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [765/906] wayland: remove fullscreen 2013-07-03 14:37:13 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [764/906] filter: fix pad template caps upload is for the sink template download is form the src template 2013-07-03 14:13:00 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [763/906] memory: copy properly depending on where the most recent data is 2013-07-16 14:11:46 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [762/906] glimagesink: Fix some memory leaks and properly set up the buffer pool 2013-07-16 13:28:19 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: [761/906] x11: Protect event display connection with a mutex We use it from different threads and need to serialize the accesses to it. 2013-07-16 13:23:54 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [760/906] x11: Always use the same display connection from the GL thread The other display connection might be used by async calls from elsewhere at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=704247 2013-07-15 21:44:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [759/906] gldownload: #ifdef some GLES2 specific code to fix compilation 2013-07-15 18:07:12 +0200 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.c: [758/906] android: Don't require a window to be set This allows the filters to be usable without a GL sink downstream. 2013-07-15 18:01:55 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglegl.c: [757/906] egl: Create an offscreen surface if no window was provided 2013-07-15 17:20:00 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [756/906] gldownload: Reset the viewport after download RGB via GLES2 2013-07-15 17:11:59 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [755/906] gldownload: Unbind framebuffer after downloading RGB with GLES2 2013-07-15 17:08:42 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: [754/906] gldownload: Add support for RGB reordering when using GLES2 2013-07-15 17:08:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: [753/906] gldisplay: Sending a message is synchronous, we can allocate the memory on the stack 2013-07-15 15:58:04 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [752/906] glwindow: Add destroy notifies for the data of the callbacks And actually call the close callback when the window is closed. 2013-07-15 15:25:57 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: [751/906] gldisplay: Don't hold lock while sending a message to the GL thread https://bugzilla.gnome.org/show_bug.cgi?id=704247 2013-07-15 14:11:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [750/906] glupload: Add support for RGB reordering when using GLES2 2013-07-15 07:39:07 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: [749/906] glshader: Add some more debug output 2013-07-12 14:31:48 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [748/906] glupload: GL_STENCIL_ATTACHMENT is needed for desktop GL, not GLES 2013-07-12 14:26:58 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [747/906] gl: Constify YUV conversion shaders 2013-07-12 14:20:41 +0200 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.h: [746/906] android: Add comment to clarify the type of a variable 2013-07-12 14:20:05 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [745/906] gl: Simplify and optimize YUV conversion shaders a bit 2013-07-12 11:35:52 +0200 Sebastian Dröge * gst-libs/gst/gl/gl.h: [744/906] gl: Use __GST_GL_H__ instead of __GL_H__ as a multi-include guard GL/gl.h might use the latter already. 2013-07-11 21:30:53 +0200 Sebastian Dröge * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: [743/906] win32: Allow setting window handle before creating the context 2013-07-11 21:22:57 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [742/906] cocoa: Allow setting window handle before creating the context 2013-07-11 21:17:42 +0200 Sebastian Dröge * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [741/906] wayland: Don't leak main context and loop 2013-07-11 21:15:41 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [740/906] x11: Allow setting window handle before creating the context 2013-07-11 20:58:36 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [739/906] x11: Don't leak main context and main loop 2013-07-11 20:51:47 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglapi.h: [738/906] gl: Include glu.h after gl.h 2013-07-10 11:31:17 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglwindow.c: [735/906] gl: Add support for Android https://bugzilla.gnome.org/show_bug.cgi?id=703340 2013-07-11 11:37:17 +0200 Sebastian Dröge * gst-libs/gst/gl/win32/Makefile.am: [734/906] win32: Make automake happy by using noinst_HEADERS 2013-07-11 11:03:31 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/x11_event_source.c: [733/906] gl: Major header and include cleanup 2013-07-10 16:03:04 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [732/906] build: fix repeated typedefs Write forward declarations in another way to avoid repeated typedefs "error: redefinition of typedef". Raised when using i686-apple-darwin11-llvm-gcc-4.2 It seems that C apple compiler does not support C11 feature. https://bugzilla.gnome.org/show_bug.cgi?id=703885 2013-07-10 15:47:23 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [731/906] cocoa: fix build when GNUSTEP is not defined 2013-07-10 11:30:16 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/gstgl_compat.h: [730/906] glcompat: Properly check for GLchar and other types On Android for example these are no #defines but typedefs 2013-07-10 11:24:34 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglutils.c: [729/906] gl: Include config.h everywhere 2013-07-03 09:12:39 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: [727/906] egl: Refactor EGL logic into a helper object 2013-07-02 22:45:08 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/win32/gstglwindow_win32.c: [726/906] window: don't call a NULL destroy function 2013-07-02 22:06:03 +1000 Matthew Waters * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/x11_event_source.c: * gst-libs/gst/gl/x11/x11_event_source.h: [725/906] x11: use GMainContext/GMainLoop allows us to be reentrant https://bugzilla.gnome.org/show_bug.cgi?id=703445 2013-07-02 18:33:42 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [724/906] wayland: make reentrant https://bugzilla.gnome.org/show_bug.cgi?id=703445 2013-07-01 14:43:14 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [723/906] gstglwindow: close has to be called in the glthread. Indeed 'glXMakeCurrent (window_x11->device, None, NULL);' has to be called in the thread where the glcontext is actually current. Otherwise glXDestroyContext may crash. 2013-07-01 01:36:35 +0400 Руслан Ижбулатов * gst-libs/gst/gl/gstglapi.h: [722/906] gl: Fix build on Win32 1) Need to include GL/glext.h on W32 to provide necessary macros 2) W32 macros that pre-processor has by default are different for different toolchains. Borland uses __WIN32__, everyone else has _WIN32, so check both. Side-note: glext.h is not supplied by mingw-w64 at the moment, but can be downloaded from http://www.opengl.org/registry/ https://bugzilla.gnome.org/show_bug.cgi?id=703364 2013-06-28 11:10:22 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglfilter.c: [721/906] glfilter: Use uint64 for the OpenGL context property ulong/long properties are deprecated and should not be used anymore for portability reasons. 2013-06-28 11:00:07 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: [719/906] gl: Fix compilation with GLES2 2013-06-28 00:34:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglutils.c: [718/906] shader: make it possible to unref in the non-GL thread 2013-06-28 00:31:36 +1000 Matthew Waters * gst-libs/gst/gl/CMakeLists.txt: [717/906] remove outdated cmake build files 2013-06-17 19:45:27 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: [716/906] wayland: properly choose EGL_RENDERABLE_TYPE based on the gl api we chose 2013-06-16 20:47:05 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.h: [715/906] display: inherit from the right object class 2013-06-16 20:44:47 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [714/906] Add GstGLFramebuffer to replace _display_gen_fbo and friends This version is simply API compatible with _display_gen_fbo. The next version will likely revamp the API 2013-06-16 20:41:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [713/906] shader: make it possible to create the object in a non-GL thread 2013-06-16 20:38:27 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [712/906] wayland: shutdown properly We cannot use _finalize as this will be called before GstGLWindow's _finalize. This causes us to try and perform operations with the wayland server when the connection has been severed. 2013-06-16 20:37:06 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: [711/906] wayland: support choosing Desktop GL as the api 2013-06-16 20:34:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: [710/906] window: fail if the user specifies an GL api that we cannot work with It would've been caught later in an g_assert anyway. 2013-06-13 18:33:47 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [709/906] display: some more cleanups 2013-06-13 17:57:35 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.c: [708/906] display: a cleanup and removal of old code 2013-06-13 16:55:37 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [707/906] display: move error_message to utils 2013-06-13 16:31:38 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [706/906] display: move activate_context into utils 2013-06-13 16:04:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [705/906] x11: don't shutdown in _finalize The window's loop could be still running when _finalize is called and if we destroy the display connection it will never be closed. Add _open and _close vfuncs to GstGLWindow so that subclasses can start up and shutdown at the right time. 2013-06-13 14:36:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * tests/check/libs/gstglmemory.c: [704/906] Use gst_object_[un]ref so we can get refcounts in the log 2013-06-13 14:18:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [703/906] x11: don't segfault if destroy_cb is NULL 2013-06-12 23:21:16 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [702/906] x11: fix segfault if the x11 backend is instantiated but not used 2013-06-12 23:17:30 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [701/906] display: move context creation into window 2013-06-12 01:04:55 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [700/906] display: move most of the code into utils for sorting later This contains a hack that essentially requires one GstGLDisplay per process. 2013-06-11 18:50:12 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [699/906] display: remove list of upload and download objects and only create an up/download object when needed. 2013-06-11 12:26:50 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [698/906] move sink-specific stuff from GstGLDisplay into glimagesink 2013-06-11 11:27:56 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [697/906] display: allow the user to try and choose the GL api we use via env variable GST_GL_API=opengl,opengl3,gles2,gles3 2013-06-11 11:26:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.c: [696/906] glapi: fix memory leak from not freeing a string 2013-06-04 22:18:51 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: [695/906] build: remove libtool warning about -version-info not used in convenience libraries 2013-06-04 22:16:00 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: [693/906] x11_glx: ask for a 3.0 GL Context (falling back if needed) 2013-06-03 18:15:45 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: [692/906] window_x11: add XError trapping some functions in GLX can fail if the implementation does not support certain features we ask for (i.e. GL 3) bringing down the entire application 2013-06-03 18:13:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglfeature.h: [691/906] feature: make gst_gl_check_extension public prevents duplication of code of extension string parsing in GstGLWindow's 2013-06-02 21:47:17 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [690/906] windowx11glx: use fbconfigs if supported 2013-04-24 14:25:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [688/906] display: properly shutdown if we error after context creation The _finalize() code checks to see if the context was created before attempting to destroy it. We never did say that we had created the context. 2013-04-24 14:22:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [685/906] filter: improve error handling 2013-04-24 12:18:14 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [684/906] display: lack of format-string causing a compiler warning 2013-04-24 12:17:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglfeature.c: [683/906] feature: remove double free 2013-06-02 07:52:30 +0000 Matthew Waters * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglshader.c: [681/906] win32: fix gl api calls on 32-bit win has the bright idea of having 5 different calling conventions. we should probably use the right one so we don't crash from stack corruption. 2013-03-10 13:37:48 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl.h: [680/906] overlay: tentative port to new GstGLFuncs API 2013-03-09 23:36:36 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: [678/906] window_win32_wgl: implement wglGetProcAddress for extension functions 2013-03-09 22:53:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [677/906] memory: fix GSIZE printf format on win32 2013-03-09 22:53:09 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: [676/906] windwo_win32: port to new API 2013-03-09 22:47:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [675/906] upload: provide nicer debugging 2013-03-09 22:45:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglfeature.c: [674/906] feature: try and catch more GL extension functions if we don't find the extension in core GL, try the extension version anyway 2013-03-09 22:37:34 +1100 Matthew Waters * gst-libs/gst/gl/gstglfeature.h: [673/906] feature: add gstreamer license 2013-03-09 22:05:28 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [672/906] display: constify GstGLFuncs *gl 2013-03-09 21:59:02 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstglapi.h: [671/906] win32: #include GL/glext.h on windows also add some GL default variables if some GL types are not defined 2013-02-18 21:40:34 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [670/906] display: replace glib deprecated api 2013-02-12 23:48:36 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [669/906] window: seperate object creation and context creation 2013-02-04 21:30:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [668/906] shader: fix gles2 segfault 2013-01-31 23:32:49 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [658/906] mixer: fix eos timestamp check 2013-01-17 23:45:59 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [655/906] download: remove erronous ReadBuffer call - it was causing segfaults in mesa - we didn't set the readbuffer so we shouldn't reset it 2013-01-17 23:14:49 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl.h: [652/906] bumper: port to non-GLEW + arrays 2013-01-17 23:12:35 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [651/906] up/download: fix some typos when removing GLEW 2013-01-16 22:41:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [650/906] filter: fix _draw_texture()'s wrong vertices 2013-01-16 15:21:44 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/gles3opengl.h: * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: [647/906] remove dependecy on glew 2013-01-13 00:09:33 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1gles2opengl.h: * gst-libs/gst/gl/glprototypes/gles1opengl.h: * gst-libs/gst/gl/glprototypes/gles2opengl.h: * gst-libs/gst/gl/glprototypes/opengl.h: [646/906] some gl header fixes/additions 2013-01-10 13:32:16 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [645/906] fix gles2 compilation 2013-01-10 10:57:11 +1100 Matthew Waters * gst-libs/gst/gl/.gitignore: [644/906] update .gitignore for some new files 2013-01-10 01:44:54 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [643/906] display: privatise most of the struct 2013-01-10 01:13:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [642/906] add gstglconfig.h for apps to find out what our capabilites are ie libgstgl can be compiled with any combination of opengl/gles2 2013-01-10 00:30:03 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [641/906] display: feature check for GL extension functions 2013-01-10 00:25:06 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: [640/906] build: add missing file to built sources 2013-01-10 00:23:32 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: [639/906] add get_proc_address implementations for egl and glx 2013-01-08 17:40:39 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [638/906] window: add get_proc_address + stub for retrieving gl functions 2013-01-08 17:38:40 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: [637/906] x11_egl: add prelim support for choosing opengl or gles 2013-01-08 17:36:18 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [636/906] window_x11: compact debug info 2013-01-07 14:08:39 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: [635/906] fixup compile errors 2012-12-19 14:54:21 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [634/906] wayland egl: deactivate context before we destroy it avoids a segfault with dri drivers 2012-12-19 14:32:20 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [633/906] display: fail properly in context creation in order to minimize a race condition previously, on context creation, when we failed to get a valid context we would still atempt to run the window mainloop as well as setting an error on the display. This would cause the calling element to finalize the display and therefore attempt to quit the window mainloop. However the mainloop may not have started running. Thus when the window mainloop ran it would never a get a quit message and never end. 2012-12-18 18:29:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.h: [631/906] remove redefinition warnings in compiling tests 2012-12-09 09:32:48 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: [630/906] display: add gl api checking i.e. check for cases where the window wants a different API than what the library was compiled with 2012-12-09 09:30:48 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [629/906] window: add GError for error handling of context creation 2012-12-07 13:32:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [627/906] shader: check for invalid objects 2012-12-07 00:16:04 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/README: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1_functions.h: * gst-libs/gst/gl/glprototypes/gles1gles2.h: * gst-libs/gst/gl/glprototypes/gles1gles2opengl.h: * gst-libs/gst/gl/glprototypes/gles1opengl.h: * gst-libs/gst/gl/glprototypes/gles2.h: * gst-libs/gst/gl/glprototypes/gles2_functions.h: * gst-libs/gst/gl/glprototypes/gles2opengl.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: [625/906] add vtable for opengl functions The vtable provides the ability for one to compile (but not link) against both OpenGL and GL|ES and starts the move away from GLEW 2012-12-06 18:40:26 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [624/906] OPENGL_ES2 => HAVE_GLES2 and add HAVE_OPENGL use GstGLAPI to determine which code paths to execute. perform some cleanups 2012-12-06 17:40:47 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [623/906] move GL includes into a single file 2012-12-05 17:23:21 +1100 Matthew Waters * gst-libs/gst/gl/gstgles2.h: [622/906] add missing GL_STENCIL_ATTACHMENT for gles2 compatability 2012-12-03 15:04:49 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglrenderer.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window 2012-11-30 17:09:21 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: [620/906] wayland_egl: attempt at resizing the video 2012-11-29 13:06:24 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: [619/906] fix typo for win32 debug variables 2012-11-29 01:01:59 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: [618/906] add wayland-egl window backend 2012-11-20 00:15:05 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [617/906] fix 'set but not used' compiler warnings 2012-11-19 22:54:19 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [616/906] move window-specific code into seperate subfolders 2012-11-19 21:52:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_win32_egl.c: * gst-libs/gst/gl/gstglwindow_win32_egl.h: [615/906] preliminary support for Win32 EGL 2012-11-18 01:23:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_x11.c: [614/906] try GLX first when using ANY | OPENGL | OPENGL3 2012-11-18 01:16:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_cocoa.m: [613/906] window_cocoa: fix segfault with gst-launch-1.0 -e ... and sending SIGINT (Ctrl-C) GNUstep has a signal handler for SIGINT which runs in the main thread. However that thread has never been 'registered' with GNUstep so the autorelease magic of objective-c causes a segfault from accessing a null NSThread object somewhere deep in GNUstep. 2012-11-16 18:01:08 +1100 Matthew Waters * gst-libs/gst/gl/GNUmakefile.gnustep: [612/906] remove GNUstep makefiles 2012-11-16 17:13:03 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow_cocoa.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: [611/906] cocoa port of determining gl platform at runtime 2012-11-15 21:46:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_x11_egl.c: [610/906] WindowX11EGL: remove get_platform call 2012-11-15 13:17:59 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_win32.h: * gst-libs/gst/gl/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/gstglwindow_win32_wgl.h: [609/906] win32 port of determining GL platform at runtime - add GstGLWindowWin32 and GstGLWindowWin32WGL along the same lines as the X11 variants 2012-11-14 20:39:38 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglrenderer.h: [608/906] add GST_GL_PLATFORM_ANY for choosing any platform 2012-11-14 20:36:16 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11.h: * gst-libs/gst/gl/gstglwindow_x11_egl.c: * gst-libs/gst/gl/gstglwindow_x11_glx.c: [607/906] remove get_platform and get_window_handle vfuncs - rename choose_visual() to choose_format() for later incorporating win32 changes and new GstGLPlatform for WGL, EGL, GLX, etc. 2012-11-13 22:12:20 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglrenderer.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11.h: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst-libs/gst/gl/gstglwindow_x11_egl.c: * gst-libs/gst/gl/gstglwindow_x11_egl.h: * gst-libs/gst/gl/gstglwindow_x11_glx.c: * gst-libs/gst/gl/gstglwindow_x11_glx.h: [606/906] determine the GL platform to use at runtime - Make GstGLWindow subclassablerather than specified at compile time. - Add GstGLWindowX11 for x11 windows and two subclasses, GstGLWindowX11GLX and GstGLWindwX11EGL for GLX and EGL repectively. (win32 and cocoa ports to come) - Also cleanup GL library detection in configure.ac 2012-12-02 14:58:14 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [605/906] shader: move to gst debugging 2012-11-08 22:53:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglshadervariables.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * tests/check/libs/gstglmemory.c: [603/906] update FSF address 2012-10-11 00:24:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [601/906] fix typo causing shader compilation failure for uploading I420 2012-09-27 15:53:46 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [600/906] docs: add docs for new objects and expand on some existing ones 2012-09-26 07:18:53 +0000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [599/906] GL|ES2: fix typos from recent changes and make downloading RGB formats work again 2012-09-25 17:59:27 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [594/906] filter: update for up/download API changes and scaling fixes 2012-09-25 16:01:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [592/906] memory: update for up/download API changes 2012-09-25 16:00:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixerpad.h: [591/906] mixer: save the upload object instead of querying for it every frame 2012-09-25 15:20:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [590/906] up/download: fix scaling on transfer i.e. uploading from a 10x10 video frame to a 20x20 texture into another 30x30 videoframe 2012-09-20 23:27:00 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: [587/906] mixer: mirror the changes done for filter 2012-09-20 23:21:19 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: [586/906] fix up some debug statements to get them into the right categories 2012-09-20 23:06:49 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [583/906] deinterlace: change for new API also allow elements to call the _filter_texture vfunc if they want 2012-09-19 00:32:30 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [581/906] filter: add seperate filter function for operating on textures instead of buffers 2012-09-19 00:29:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: [580/906] bufferpool: remove obselete gl meta buffer pool options 2012-09-18 21:42:24 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [579/906] download: fix YV12 format same as I420 but plane 1+2 swapped 2012-09-18 21:39:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [578/906] {up,down}load: add variants that can be called in the gl thread 2012-09-17 10:30:01 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglmeta.c: * gst-libs/gst/gl/gstglmeta.h: * gst-libs/gst/gl/gstglupload.h: [576/906] remove uneeded GstGLMeta (use GstVideoMeta) 2012-09-16 21:42:08 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [575/906] filter: port to new upload/download 2012-09-16 21:36:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: [574/906] memory: implement transperent upload/download for data (not async yet) 2012-09-16 21:23:09 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [573/906] add upload and download library objects allows multiple upload pipelines that previously wasn't possible (i.e. upload RGB and I420 and ... on the same GstGLDisplay) 2012-09-05 14:58:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [571/906] mixer: fix deadlock on shutdown didn't reiterate over the sinkpad's displays and reactivate them causing a deadlock 2012-08-27 14:08:16 +0000 Matthew * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [568/906] window: fix public definitions 2012-08-27 14:07:31 +0000 Matthew * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshadervariables.c: [567/906] fix OpenGL|ES2 ifdef'ed code 2012-08-15 21:37:01 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.h: [564/906] glmemory: remove unused typedef 2012-08-15 16:52:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [563/906] readd support for hanging GL pipelines e.g. ... ! gleffects ! fakesink 2012-08-15 15:35:46 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [562/906] gldisplay: fix download of YUV formats 2012-08-14 23:55:14 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [561/906] gldisplay: fix endianess issues on RGB download 2012-08-14 02:05:13 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [559/906] glmixer: pass the mixpad's display to the querying element 2012-08-10 15:31:20 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [555/906] Make the query for a GstGLDisplay a pad peer query Allows the query to pass through bin boundaries and makes it possible for arbitrary gl elements to be placed in bins. 2012-08-08 16:08:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * tests/check/libs/gstglmemory.c: [554/906] GstGLMemory: update for GstAllocator API changes 2012-07-13 01:04:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [544/906] fix memory leaks from not g_free()ing string returned by gst_element_get_name 2012-07-12 18:22:01 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [543/906] GstGLDisplay: fix segfault from GST_PTR_FORMAT trying to expand the object 2012-07-12 18:19:44 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: [542/906] GstGLMixer: add allocation and bufferpool methods based off GstBaseTransform 2012-07-09 22:27:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [532/906] GstGLFilter: implement allocation vfuncs 2012-07-09 16:13:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglmeta.h: [528/906] GstGLMeta: seperate upload/download/normal GL caps video formats differentiate between upload, download and GL caps 2012-07-09 16:12:53 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [527/906] GstGLDisplay: add some trace debugging 2012-07-08 01:49:06 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [524/906] GstGLDisplay: rework the download code data paramaters now take GstVideoFrame remove redundant parameters 2012-07-08 01:10:40 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [522/906] GstGLDisplay: add forgotten function definition 2012-07-08 01:09:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [521/906] GstGLMemory: update for GstAllocator changes 2012-07-07 22:56:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [520/906] GstGLMixer: fix for GstChildProxy changes 2012-07-06 19:05:03 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: [517/906] add GstGLBufferPool which adds GstGLMeta to buffers 2012-07-06 18:57:39 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglmeta.c: * gst-libs/gst/gl/gstglmeta.h: [516/906] add skeleton GstGLMeta the GstVideoMeta _map/unmap functions still need implementing 2012-07-06 18:51:02 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [515/906] GstGLDisplay: rework gen_texture and upload rename functions so that other code can create textures in the GL thread change upload functions to take a GstVideoFrame default to GLSL for upload conversion 2012-07-06 18:22:22 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * tests/check/libs/gstglmemory.c: [514/906] add GstGLMemory and allocator implement custom GstMemory for GL textures currently map/unmap returns NULL although it might be favourable to upload/download/cache the image data 2012-06-19 18:40:28 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmixerpad.h: [513/906] Remove GstGLBuffer (to be replaced by GstGLMeta) 2012-06-19 15:54:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: [512/906] GstGLMixer: update for 1.0 based on the videomixer2 element in -good 2012-06-05 19:10:19 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [509/906] GstGLDisplay: update for 1.0 2012-06-03 20:40:53 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [504/906] GstGLFilter: update for 1.0 -fix up function definitions -remove _prepare_output_buffer (functionality taken over by GstBufferPool). 2012-05-30 13:46:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [503/906] Rename GST_BOILERPLATE_* to G_DEFINE_TYPE_* and move _base_init into _class_init 2012-05-29 17:55:44 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: [502/906] Update versioning for gstreamer 1.0 Renames GST_MAJORMINOR to GST_API_VERSION in build files removes -lgstinterfaces from _LDADD flags 2012-05-20 18:45:06 +0300 Raimo Järvi * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [501/906] Fix building on 64 bit mingw-w64 https://bugzilla.gnome.org/show_bug.cgi?id=676428 2012-04-20 12:33:38 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [500/906] gldisplay: do not call glCheckFramebufferStatus if 0 is bound Indeed it may return GL_FRAMEBUFFER_UNDEFINED if there is no default framebuffer. It seems to be the case on MacOSX 2012-04-20 10:41:51 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [498/906] gldisplay: don't pass non-constant strings as printf format strings Fixes 'format not a string literal and no format arguments' on darwin 2012-04-20 10:32:23 +0200 Julien Isorce * gst-libs/gst/gl/gstglshadervariables.c: [497/906] filtershader: fix format compiler warnings 2012-04-18 15:44:05 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [495/906] glES2.0: properly use glDeleteShader 2012-04-17 18:25:55 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: [494/906] cmake build: use config.h from win32/common and add some guidelines 2012-04-13 15:08:00 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [492/906] glwindow: properly fails if resource not found 2012-04-13 12:38:11 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [491/906] glES2.0: properly fails if driver/kernel inconsistency 2012-04-11 10:44:23 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: [490/906] gldisplay: error out instead of g_assert 2012-04-04 16:22:40 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [488/906] libvisual-gl: full compatibility with projectM-libvisual if libprojectM >= 2.0.1 Fix bug #310775 2011-12-22 15:30:38 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [486/906] libvisual-gl: add minimal support to libvisual plugins that uses Framebuffer objects Fix bug #310775 gst-launch audiotestsrc ! libvisual_gl_projectM ! glimagesink is working but for now you cannot append any other opengl filters between libvisual_gl_projectM and glimagesink because our FBO is turned OFF. It would require that libvisual allows to split rendering between pass1,2,3... and final rendering. In order to unbind our FBO before the passN, and then rebind it just before the final libvisual rendering. 2011-12-15 18:13:00 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [485/906] gstgldisplay: turn off texture binding and read buffer when downloading rgb is done It fixes: (black image before) gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! ximagesink and gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! glimagesink 2011-12-15 16:18:36 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: [483/906] glelements: do not leak parent when using gst_pad_get_parent 2011-11-24 16:02:32 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmixer.c: [481/906] feature checking: error out instead of doing nothing if an OpenGL feature is not present Fix bug #572767 2011-11-21 16:46:51 +0100 Julien Isorce * gst-libs/gst/gl/gstglshadervariables.c: [480/906] win32 builds: add glshader filter sources to vs9 and codeblocks Also fix some warnings from msvc9 and mingw-3.4.5 2011-11-21 15:04:16 +0100 Руслан Ижбулатов * gst-libs/gst/gl/gstglshadervariables.c: [479/906] gstglshadervariables: strtok_r is not multiplatform Fix bug #664367 2011-11-18 17:32:05 +0100 Wei Feng * gst-libs/gst/gl/gstgles2.h: [478/906] OpenGL ES 2.0: include glib.h to use G_BEGIN_DECLS in gstgles2.h Fix bug #631019 2011-11-18 17:27:45 +0100 Julien Isorce * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: [477/906] OpenGL ES 2.0: fix build since glfiltershader changes 2011-11-18 17:26:35 +0100 Antoni Silvestre * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [476/906] OpenGL ES 2.0: fix build and disable some examples Fix bug #631019 2011-11-17 17:36:44 +0100 Luc Deschenaux * gst-libs/gst/gl/CMakeLists.txt: * gst-libs/gst/gl/GNUmakefile.gnustep: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglshadervariables.h: [471/906] glshader: add dynamic fragment shader filter Also add fragment shader parser Fix bug #600195 2011-11-16 16:53:25 +0100 Julien Isorce * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow_x11.c: [467/906] tests: various build fixes - cmake could not find glib - put gtk variables at the beginning to avoid GL conflicts - update examples to clutter-1.8 - use const instead of deprecated G_CONST_RETURN - set max pending events to 0 to make cube example works again 2010-12-14 23:56:55 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: [463/906] Add some more G_{BEGIN,END}_DECLS to public headers https://bugzilla.gnome.org/show_bug.cgi?id=637260 2010-10-19 18:00:33 +0300 Stefan Kost * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: [462/906] various: add missing G_PARAM_STATIC_STRINGS flags Canonicalize property names as needed. Includes some gst-indent changes as well :/ 2010-08-11 00:47:42 +1000 Jan Schmidt * gst-libs/gst/gl/Makefile.am: [459/906] Fix distcheck. 2010-05-05 11:21:31 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: [456/906] glfilter/glmixer/gltestsrc/glupload: throw an element error if no parent bin Fixes bug #602153 2010-05-04 11:37:38 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [455/906] glimagesink: handle pixel-aspect-ratio 2010-04-29 08:27:29 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [443/906] sobel: move some highly duplicated code into glfilter Add a new convenience function in GstGLFilter that just draws an input texture to a target texture using a simple shader with just a "tex" uniform sampler. Move draw_texture from glfiltersobel to glfilter. Still need to update other plugins to this. 2010-04-26 14:11:28 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [432/906] GstGLDisplay: this is GL_DEPTH24_STENCIL8_EXT, not GL_DEPTH24_STENCIL8_EXT 2010-04-26 13:57:00 +0200 Pierre Pouzol * gst-libs/gst/gl/gstgldisplay.c: [431/906] GstGLDisplay: enable stencil buffer when using framebuffer objects. Fixes Bug #612159 2010-03-09 01:35:42 +0100 Nicholas Panayis * gst-libs/gst/gl/gstglwindow_win32.c: [415/906] gstglwindow_win32: share opengl context in correct order Allow to use the opengl context sharing feature if the original context has been used already. This is only possible on win32 with wglShareLists because on other backends, the sharing is made when a context is created. This new feature is only usefull when using external context because gst-gl internally makes sure that the orginal context is not already used when sharing it. Fix bug #611067 2010-01-06 00:13:46 +0100 Julien Isorce * gst-libs/gst/gl/GNUmakefile.gnustep: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [412/906] Cocoa backend: improve support on GNUStep 2009-12-18 00:34:13 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: [411/906] gstglmixer: copy/past recent changes from gstvideomixer 2009-12-16 01:33:39 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: [410/906] gstglmixer: inactivate shared gl context before to release ours First, inactivate shared gl contexts known by each sink pad. Then, destroy the gl context known by the glmixer. Finally, re-activate shared gl contexts. This is to satisfy the fact that no shared gl context must be current when an opengl context is destroyed. Moreover the application may hang or crash without those steps. 2009-11-21 13:32:59 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_winCE.c: [407/906] winCE backend: fix build 2009-11-21 13:21:54 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [406/906] glimagesink: add a client-data property Also add it to glfilterapp. Fixes #559131 2009-11-17 23:47:24 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [405/906] glfilter: add external-opengl-context property It repairs the cluttershare and sdlshare example 2009-11-17 02:16:01 +0000 Jan Schmidt * gst-libs/gst/gl/gstglmixer.c: [403/906] gstglmixer: Initialise the debug category Initialise the gstglmixer debug category before using it. 2009-11-05 14:53:35 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [400/906] gstgldisplay: no need the I420 work around if ATI Mobility fix #588653 2009-11-04 23:44:46 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: [399/906] glmixer: fix when no more gl elements after it For example: videotestsrc ! glupload ! ... ! glfiter ! ... ! glmosaic ! fakesink Usefull when using glmixer inside cluttershare or sdlshare cases. 2009-10-27 17:02:23 +0100 Pratheesh Gangadhar * gst-libs/gst/gl/gstgldisplay.c: [394/906] gstgldisplay: use of GL_DEPTH_COMPONENT16 if OpenGL ES 2.0 glRenderbufferStorage does not accept GL_DEPTH_COMPONENT in OpenGL ES 2.0. Fix bug #593786 2009-10-27 15:27:14 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: [393/906] glmosaic: for now it's a cube mosaic Also use GPtrArray instead of GArray in glmixer. And add a pipeline to tests/pieplines 2009-10-26 11:44:35 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [391/906] Cocoa: fix backend since recent changes Before, the window size was given at its creation. Now, it's done at the drawing step because it's only relevant when there is a glimagesink element in the pipeline. 2009-10-23 20:52:32 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: [389/906] fix codeblocks build on win32 2009-10-23 10:52:39 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [388/906] just fix builds and indent 2009-10-23 01:11:27 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: [387/906] glmixer: add a glmixer base element glmixer can be seen as a glfilter except it handles N requested sink pads. Each sink pad and the src pad are video/x-raw-gl. glmixer is responsible for managing different framerates from inputs. It uses OpenGL context sharing. It means that each input is in its own OpenGL context shared together and shared with the OpenGL context of the ouput gl chain. Also add a glmosaic which is an example of implementation of glmixer. For now glmosaic is a cube but it will be fixed in the next commits. For now the glmixer has some weird behaviours in some configurations but it will be improved in the next commits. The autotools builds is temporarly broken since those changes have been made on win32. 2009-10-04 02:23:45 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [385/906] rewrite the way a gstgldisplay is transmited to the gl elements Before, a gstgldisplay was instancied by the gl src in terms of gl chain. And then the next element got it through the first gstglbuffer. Now, this is done though queries. All glelements get their ref on a gstgldisplay in READY state. This rewrite is mainly a first step to be able to share OpenGL context hold by the gstgldisplay using more complex glelements. For example, with a glvideomixer. The associated gstgldisplay of each gl chain of the sink pads will share their OpenGL context. 2009-10-16 18:08:11 +0300 Stefan Kost * gst-libs/gst/gl/gstgldisplay.c: [384/906] build: use / "stdio.h" 2009-10-16 17:29:08 +0300 Stefan Kost * gst-libs/gst/gl/gstgldisplay.c: [383/906] build: include when using printf & co. 2009-10-15 15:40:11 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgles2.h: [382/906] ES2.0: remove warnings Partially fix #593786 2009-10-15 14:59:08 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [381/906] EGL and GLX:: set a minimum depth size 2009-09-19 14:31:28 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [378/906] gldisplay: avoid to request gl thread when deleting a texture A texture is not destroyed when when we are done with it. This texture is just added to the texture pool in order to be re-used. In this case no OpenGL code is executed so we do not need to request gl thread. 2009-09-19 14:16:25 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [377/906] gldisplay: avoid to request gl thread when generating a texture Thanks to the texture pool the gl textures are re-used. When re-using one, no opengl code is executed so do not need to request gl thread. 2009-09-01 15:21:39 +0300 Stefan Kost * gst-libs/gst/gl/Makefile.am: [376/906] build: support openGLES on linux via autofoo. Partialy fixes #593786 Add a pkg-config check for opengl and if not found assume opengl-es. If user has none of both one still get build error later on (there is no pkg-config for opengl-es). Add more files to EXTRA dist and build the opengles variant if selected. Simmilar changes could be done for the winCE backend. 2009-08-03 17:52:31 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [369/906] define missing glew macro on older versions 2009-08-03 10:13:02 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [368/906] Cocoa backend: fix crash when resizing Default implementation of NSOpenglView::update is not safe because it just calls update on the opengl context whereas we are not in the gl thread. Also fix the white flickering when resizing, because now we need to call the draw callback manually when resizing. 2009-07-27 09:58:20 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [365/906] Cocoa backend: make sure that nsapp is initialized gst-launch-0.10 videotestsrc ! tee name=t ! queue ! glimagesink t. ! queue ! glimagesink now works properly on MacOSX 2009-07-24 10:33:47 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [364/906] make the cmake build work on MacOSX We can now generate a Xcode project (or Unix Makfiles), see INSTALL file 2009-07-24 10:12:07 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [363/906] Cocoa backend: fix crash when closing - All gstglwindow members are now modified only in the gl thread to avoid thread concurrency - OpenGL context is now properly clean - fix a couple of things in implementation of xoverlay interface 2009-07-17 16:47:41 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [362/906] make cocoa backend work on MacOSX It works with both gst-launch and a cocoa app (non-embedded and embedded) But there is still some problems: - sometimes crash when closing - flickering when resizing - embedded mode not perfect I will first make the CMake build work with cocoa backend in order to generate a XCode project. Then it should be easier to fix those issues. 2009-07-13 12:53:17 +0100 Jan Schmidt * gst-libs/gst/gl/gstgldisplay.c: [358/906] gstgldisplay: Close a small race starting the display thread Take the display lock before signalling the create-context cond to ensure the caller has dropped the lock and is therefore listening for the signal. 2009-07-13 12:52:31 +0100 Jan Schmidt * gst-libs/gst/gl/gstglwindow_x11.c: [357/906] x11: Don't crash when the X11 display is not available. Error out cleanly instead of crashing when the X11 display can't be contacted. 2009-06-12 11:33:02 +0100 Jan Schmidt * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [352/906] fix typo Change GST_GL_DISPLAY_PROJECTION_PERSPECIVE to GST_GL_DISPLAY_PROJECTION_PERSPECTIVE. Re-indent a couple of files that needed it. 2009-06-07 20:19:03 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [350/906] fix window position when using xoverlay x, y are the coordinates of the position inside the new parent window. Fixes #584877 2009-06-06 14:34:57 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: [349/906] can switch xoverlays while playing Fixes bug #584877 Before this commit calling "gst_x_overlay_set_xwindow_id" more than one time, had no effect. It mainly affects the glimagesink implementation. But on win32 (and CE), some stuff has to be done to release the old parent. And add a switchxoverlay example where the user can click on left/right part of the main window to switch the xoverlay. 2009-06-04 00:27:44 +0200 LRN * gst-libs/gst/gl/gstglwindow_win32.c: [347/906] fix miscast of a pointer in SetWindowLongPtr GCC 4.4.0 complains error: cast from pointer to integer of different size Fixes #584678. 2009-05-12 11:41:19 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: [346/906] Fix linking by providing libtool the correct --tag parameter 2009-04-30 23:40:38 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: [337/906] Improve cluttershare example Use clutter_threads_API. When just using glupload from rgb, we have to be sure that the upload texture is not in use in our gst gl context. 2009-04-20 18:17:54 -0400 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [336/906] [x11/x11ES] fix some pointer cast warnings 2009-04-20 23:55:51 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [335/906] [cocoa] update since interface changed 2009-04-20 23:48:15 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: [334/906] [win32/winCE] fix some pointer cast warnings with mingw And turn off deprecated Wp64 msvc compiler option. 2009-04-20 00:52:41 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [333/906] add force-aspect-ratio support 2009-04-18 08:40:51 -0400 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [331/906] indent and fix some compiler warnings 2009-04-18 13:57:44 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [330/906] Can now share textures with an external gl context The external opengl context must be specify when creating our OpenGL context (glx) or just after (wgl). When calling glXCreateContext or wglShareLists, the external opengl context must not be current. Then our gl context can be current in the gl thread while the external gl context is current in an other thread. See tests/examples/clutter/cluttershare.c 2009-04-12 22:24:06 -0700 David Schleef * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: [329/906] Build for Cocoa on darwin, with various fixes 2009-04-10 20:42:59 +0200 Julien * gst-libs/gst/gl/gstgldisplay.c: [327/906] fix init FBO's texture attachment on ES 2.0 2009-04-10 20:30:46 +0200 Julien * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [326/906] add X backend for OpenGL ES 2.0 2009-03-18 22:46:56 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [322/906] [download YUY2/UYVY] fix a regression The call to glLoadIdentity was removed by mistake during OpenGL ES 2.0 integration. 2009-03-15 14:48:19 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_winCE.c: [321/906] add OpenGL ES 2.x support. In OpenGL 2.x for Embedded System, a lot of basic scene/draw functions have been removed. It means that everything is made using vertex and fragment shaders. I have also added a gstglwindow backend for winCE that uses EGL (Native Platform Graphics Intercace) (which is a full part of OpenGL ES specification). It remove the use of wgl/glx functions. 2009-03-07 03:13:38 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [320/906] fix position and content rect 2009-03-06 22:43:41 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: [319/906] [win32 backend] fix transmition message to the parent. The Qt mouvexoverlay example shows how to rotate the cube by moving (+click) the mouve over a qwidget using xoverlay interface. 2009-02-26 17:45:21 -0500 Julien Isorce * gst-libs/gst/gl/GNUmakefile.gnustep: [318/906] rename GNUmakefile(s) to GNUmakefile(s).gnustep 2009-02-26 01:06:58 +0100 Julien Isorce * gst-libs/gst/gl/GNUmakefile: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: [317/906] implement gstglwindow for Cocoa (MacOS and GNUstep) 2009-02-25 00:12:12 +0100 Julien Isorce * gst-libs/gst/gl/GNUmakefile: [315/906] add GNUstep build 2009-02-23 11:07:22 -0800 David Schleef * pkgconfig/gstreamer-gl-uninstalled.pc.in: [314/906] Add srcdir to includes for out-of-source builds When you use gstreamer uninstalled and build outside the source tree, the includes need to be specified for both the source tree and the build tree. 2009-02-10 22:39:14 -0800 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: [310/906] Global reindent Indent parameters: INDENT_PARAMETERS="--braces-on-if-line \ --case-brace-indentation0 \ --case-indentation2 \ --braces-after-struct-decl-line \ --line-length80 \ --no-tabs \ --cuddle-else \ --dont-line-up-parentheses \ --honour-newlines \ --continuation-indentation4 \ --tab-size8 \ --indent-level2" 2009-02-03 18:58:00 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow_x11.c: [309/906] Replay: Fix callbacks passed over XEvents on 64 bit architectures Althought the XEvent's xclient.data.l array is an array of longs they will be constrained to 32 bit by the X11 protocol. On 64 bit architectures use two elements of the array to store one pointer. This fixes segfaults that happen at least for every example on startup. 2009-02-08 01:50:10 +0100 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [306/906] fix CMake build and frozen CodeBlocks build 2009-02-05 19:59:27 +0100 Julien Isorce * gst-libs/gst/gl/gstglshader.c: [304/906] only load RGBA files.png 2009-01-23 02:04:23 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [301/906] depends on libpng instead of gdk_pixbuf 2009-02-10 21:57:31 -0800 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: [298/906] Revert "Fix indention" This reverts commit 96e4ab18c2cf9876f6c031b9aba6282d0bd45a93. You should have asked first. And you would have been told "no", because it causes people on development branches to do a huge amount of extra work. 2009-02-10 21:57:08 -0800 David Schleef * gst-libs/gst/gl/gstglwindow_x11.c: [297/906] Revert "Fix callbacks passed over XEvents on 64 bit architectures" This reverts commit 280771d09b58617b27201027de0e1194da376e72. 2009-02-03 18:58:00 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow_x11.c: [296/906] Fix callbacks passed over XEvents on 64 bit architectures Althought the XEvent's xclient.data.l array is an array of longs they will be constrained to 32 bit by the X11 protocol. On 64 bit architectures use two elements of the array to store one pointer. This fixes segfaults that happen at least for every example on startup. 2009-02-03 18:33:36 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: [295/906] Fix indention 2009-02-03 11:23:06 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow_x11.c: [294/906] Fix format string compiler warnings by using G_GUINT64_FORMAT 2009-01-09 17:20:25 -0800 David Schleef * gst-libs/gst/gl/gstgldisplay.c: [291/906] Add check for GLEW_EXT_framebuffer_object 2009-01-08 19:18:47 -0800 David Schleef * gst-libs/gst/gl/Makefile.am: [290/906] Set GL_LIBS correctly in configure.ac This doesn't detect the existence of libraries, which needs to be fixed. 2009-01-07 19:11:01 -0800 David Schleef * gst-libs/gst/gl/Makefile.am: [289/906] build fixes for Windows libraries 2008-12-14 12:06:06 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [288/906] add more debug ouputs about GLSL and mesa 2008-12-13 19:36:32 -0500 julien * gst-libs/gst/gl/gstglwindow_x11.c: [287/906] fix a regression about glXChooseVisual which failed when using mesa, so attributes must be less restrictives. 2008-12-13 00:50:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: [286/906] [win32] Register window class in gst_gl_window_class_init 2008-12-07 03:25:59 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [285/906] fix gl framerate in gst caps. Consider position in xoverlay. Fix inversion bettween COLS and ROWS, and move windows. 2008-11-29 22:16:44 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [284/906] workaround about the ATI shader compiler on linux (setlocale) 2008-11-25 01:01:01 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [283/906] better result in cube and doublecube example. And some clean up debug and comments 2008-11-23 16:14:26 +0100 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [282/906] update CMake build 2008-11-23 16:04:27 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: [281/906] Make cube example work on x11. Finish TODO task 9. 2008-11-22 16:43:24 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: [280/906] Remove set_visible, because it's now automatically done when the first post redisplay comes. 2008-11-22 00:51:30 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [279/906] finish set_xwindow_id (gst_gl_window_set_external_win_id): child is resized at the same time as the parent is. 2008-11-21 20:51:48 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [278/906] Implement set_xwindow_id (gst_gl_window_set_external_window_id). 2008-11-21 19:37:21 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [277/906] open x client connection for sender only at start up 2008-11-21 19:11:11 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: [276/906] better deal with last pending custom cb and destroy_context_cb 2008-11-21 01:31:19 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow_x11.c: [275/906] Make sure the gl ressoures are destroyed before to destroy gl window 2008-11-20 01:24:10 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [274/906] add some other debug outputs and checks 2008-11-19 00:07:22 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [273/906] add some debug outputs about Visual and XVisualInfo 2008-11-17 01:04:32 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [272/906] add a visible member to deal better with the first expose events 2008-11-16 16:57:00 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [271/906] revert last commit because the crash comes from libselinux 2008-11-15 23:32:04 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [270/906] fix use of different Display structures which point on the same display name 2008-11-15 18:51:44 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [269/906] Better deal with XNextEvent and XSendEvent 2008-11-15 02:24:07 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [268/906] Better deal with Atoms 2008-11-14 01:00:33 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [267/906] Get ride of calling sleep in gl thread X loop 2008-11-13 02:05:33 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [266/906] secure close when clicking on the cross 2008-11-13 01:23:51 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [264/906] Rewrite gstglwindow_x11.c because X API is not thread safe. 2008-11-11 03:19:51 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [263/906] discard x custom messages which are of date 2008-11-09 23:23:30 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow_x11.c: [262/906] Works on linux but still some bugs. Fix autotools build. 2008-11-09 22:14:29 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [261/906] implement quit x message loop 2008-11-09 02:44:25 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [260/906] try to make XSendEvent blocker (as win32 SendMessage is) 2008-11-06 23:41:11 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [259/906] continue x implementation (but still not tested) 2008-11-06 01:28:26 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [258/906] setup x message loop 2008-11-05 02:06:33 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: [257/906] begin gstglwindow_x11.c implementation 2008-10-29 23:53:22 +0100 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [256/906] fix CMake an CodeBlocks builds 2008-10-28 21:44:09 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_win32.c: [255/906] fix window closure when using gst xoverlay interface 2008-10-28 01:38:45 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [254/906] Better handle when the parent window is resizing, and cleanup some code 2008-10-28 00:22:27 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [253/906] win32: re-implement supports for gst xoverlay interface, on this branch 2008-10-25 16:18:23 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [252/906] avoid a dead lock on window closure 2008-10-25 02:03:16 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow_win32.c: [251/906] Properly clean OpenGL contexts 2008-10-24 01:39:00 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_win32.c: [250/906] win32: basic stuffs are working now on this branch with this new deep design (gstglwindow) 2008-10-23 01:40:52 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [249/906] begin GstGLWindow in order to totally remove gstfreeglut 2008-10-15 12:42:29 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [243/906] Support for missing videoformats in glupload Add support for missing alpha channeled videoformats (RGBA, BGRA, ARGB, ABGR) in gst_gl_display_do_upload_fill. 2008-10-13 23:14:27 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: [242/906] Fix crash in filters when going to NULL with no display 2008-09-21 10:58:13 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [233/906] no need to explicit set the debug category if default one is used 2008-09-21 16:40:38 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglshader.c: [230/906] explicit check g_getenv return value to be not NULL 2008-09-20 15:44:24 +0200 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [229/906] update authors from the CVS repository 2008-09-20 14:12:49 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglshader.c: [228/906] output shaders info log only if GST_GL_SHADER_DEBUG env variable is set. Should fix TODO task 18 2008-09-18 22:50:05 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [226/906] check on win32 that every tests/pipelines and tests/examples (generic, gtk, qt) still work 2008-09-18 21:13:37 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [225/906] fix a regression that made the gltestsrc element not working 2008-09-16 02:10:31 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [224/906] fix a regression about MESA YCbCr colorspace conversion 2008-09-14 23:22:58 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [223/906] fix a regression (sometimes a FBO is needed even if the video source is rgb) 2008-09-14 19:56:50 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [222/906] Finish TODO task 17 2008-09-13 19:47:44 +0200 Julien * gst-libs/gst/gl/gstgldisplay.c: [221/906] fix g_int_hash -> g_direct_hash 2008-09-13 18:17:42 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [220/906] Use a better key for the pool of textures 2008-09-13 03:32:04 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [219/906] Use a gst debug category for GstGLDisplay instead of g_print, gst-launch-0.10 --gst-debug=gldisplay:3 videotestsrc ! glimagesink 2008-09-12 01:13:50 +0200 Julien * gst-libs/gst/gl/CMakeLists.txt: [218/906] The CMake build now works on my Kubuntu-KDE4.1.1 2008-09-11 02:07:12 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [217/906] Add cmake build http://www.cmake.org. See CMake install instructions in the INSTALL file. (I have not correctly configured yet the CMake build for unix, BE patient) 2008-09-07 00:45:34 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: [212/906] add a glbumper (bump mapping filter through GLSL) that exposes how to use both vertex and fragment shaders 2008-08-25 10:34:54 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [211/906] Fix upload AYUV and YV12 (a regression in last commits) 2008-08-24 16:33:26 +0200 julien User * gst-libs/gst/gl/gstgldisplay.c: [210/906] get ride of a wrong color on nvidia/linux when converting yv12 to rgb through GLSL 2008-08-24 15:39:14 +0200 julien User * gst-libs/gst/gl/gstgldisplay.c: [209/906] fix warnings 2008-08-24 04:24:29 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [208/906] fix upload AYUV, regression during the 2 last commits 2008-08-24 03:38:40 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [207/906] oups, fix my mistake on last commit 2008-08-24 03:12:12 +0200 unknown * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [206/906] Do not use frame buffer object when "input video is RGB" or when "GLSL is not available and YCbCr is available". So frame buffer object is not a plugin requirement anymore. So I decreased the OpengGL version from 1.4 to 1.2 (maybe less?) 2008-08-21 11:12:42 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [205/906] use a GHash table instead of a GData for the texture pool 2008-08-20 15:47:51 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [204/906] get ride of a bug on ATI related to YV12 to rgb conversion through GLSL and add an example 2008-08-20 09:24:53 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [201/906] fix a signedness warning 2008-08-20 00:11:39 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [200/906] get ride of a ATI bug related to GLSL colorspace conversion for I420 and YV12 to rgb 2008-08-14 20:02:04 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [171/906] import fxtest (little gtk app to easily test effects) from cvs branch, fixed rgbtocurve. 2008-08-13 17:59:09 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [157/906] move thread_do_upload_make from thread_do_upload to thread_init_upload 2008-08-13 17:16:17 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [156/906] fix a crash that could happens when using at least 2 gl context and when closing a window on linux 2008-08-11 20:12:02 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [153/906] Try to genereate textures within gstglfilterblur to see if the new thread_use_fbo works both with textures from the pool and custom ones 2008-08-11 20:01:41 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [152/906] remove an unneeded (really?) glTexImage 2008-08-11 19:08:22 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [151/906] ISO C90 2008-08-11 19:01:33 +0200 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [150/906] glTexImage2D(w, h, NULL) is now called only one time (mem alloc) 2008-08-11 17:21:30 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [149/906] same as previous commit 2008-08-11 17:17:22 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [148/906] Fix rgb issue. Current program should always be set to 0 when a new texture is attached to a fbo. 2008-08-11 15:40:39 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: [146/906] remove filteredge 2008-08-11 09:52:16 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [143/906] Add init and reset callbacks in GstGLFilter to run arbitrary gl code at start and stop. Useful to init and cleanup custom gl resources. 2008-08-11 09:00:40 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [142/906] Add a generic action to be able to execute arbitrary gl code within the gl thread with less pain 2008-08-10 11:22:34 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [141/906] some steps towards simplification. added a convenience function to gstglfilter and some comment here and there 2008-08-05 10:15:07 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [140/906] Fix GL_STACK_OVERFLOW 2008-08-04 12:13:29 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [139/906] fix warnings when compiling upload/download shaders 2008-08-04 09:56:59 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [138/906] is that videoformat pointer really needed? 2008-08-04 09:46:14 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [137/906] Don't reallocate texture memory every time in upload_* functions. 2008-08-01 11:00:49 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [136/906] reindent gstgldisplay with gstreamer-c-mode 2008-07-21 00:24:48 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [133/906] finish todo task 4 2008-07-20 16:38:48 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: [132/906] make the plugin properly shutdown when one of the check requirements failed 2008-07-19 08:32:38 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [131/906] fix warnings (unused vars) 2008-07-19 03:00:26 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [130/906] use GstGLShader in the GLSL colorspace conversion 2008-07-18 21:55:00 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [128/906] add GstGLShader stuffs in the vs8 project, fix laplacian fragment code to make it compile on ATI, and fix check function about Opengl and Glew version 2008-07-18 10:49:34 +0200 Filippo Argiolas * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: [127/906] Imported GstGLShader from cvs branch. Added a demo laplacian convolution filter to demonstrate how this can be integrated with minimum effort. 2008-07-16 15:23:36 -0700 David Schleef * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.h: [126/906] Change some guints to GLuints because of warnings on OS/X. 2008-07-16 15:22:36 -0700 David Schleef * gst-libs/gst/gl/Makefile.am: [125/906] Add libraries as appropriate to fix compilation 2008-07-12 14:18:47 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [123/906] X Specific: better implementation of the gst_gl_set_window_id 2008-07-12 13:24:30 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [122/906] better implementation of gst_gl_display_set_window_id for win32. (change the window of the current wglcontext instead of reinit everything, and so avoid some problems about opengl objects that could be init in the previous wglcontext and so no usable in the newer wglcontext, it what the case for the first texture) This newer implementation has not been made yet on linux 2008-07-12 01:13:08 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [121/906] avoid use of GLSL functions when fragment_shader is not available 2008-07-11 06:24:27 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [120/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@580 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-10 23:53:36 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [119/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@579 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-07 20:59:20 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [118/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@573 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-05 22:56:29 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [116/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@563 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-30 00:38:39 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [115/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@556 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-29 17:27:43 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: [114/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@555 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-28 23:28:11 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [113/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@554 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-28 15:38:41 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [112/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@552 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-24 22:28:03 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [111/906] up 2008-06-23 18:56:29 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [109/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@543 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-21 21:38:42 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [108/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@540 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-19 23:38:36 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [107/906] fix opengl version checker 2008-06-15 18:31:12 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [105/906] up Sobel filter and gl/glew version checker 2008-06-13 00:01:26 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [104/906] start to add a glfilteredge that proceeds edge detection using GLSL 2008-06-11 23:31:53 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gltestsrc.c: * gst-libs/gst/gl/gltestsrc.h: [096/906] up 2008-06-11 23:26:16 +0000 Julien Isorce * gst-libs/gst/gl/gltestsrc.c: * gst-libs/gst/gl/gltestsrc.h: [095/906] up 2008-06-11 23:23:12 +0000 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: [094/906] up 2008-06-11 23:04:52 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [092/906] Finish to revive the gltestsrc. Next step is to do some refactoring. 2008-06-11 18:33:53 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gltestsrc.c: * gst-libs/gst/gl/gltestsrc.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [091/906] start to revive the gltestsrc 2008-06-10 22:08:11 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: [088/906] fix some caps negociations those pipelines works fine : gst-launch-0.10 -v videotestsrc ! video/x-raw-yuv, width=320, height=240 ! glgraphicmaker ! video/x-raw-gl, width=720 , height=576 ! glfiltercube ! glimagesink and gst-launch-0.10 -v videotestsrc ! video/x-raw-yuv, width=320, height=240 ! glgraphicmaker ! video/x-raw-gl, width=720 , height=576 ! glimagesink 2008-06-10 19:07:43 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [087/906] glfilter can accept to have an input size different than the out put size : video/x-raw-gl, width=w1, height=w1 ! glfilter ! video/x-raw-gl, width=w2, height=w2 ! (fix every examples) 2008-06-08 22:11:36 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [086/906] up 2008-06-08 13:15:12 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [085/906] fix regressions about glvideomaker. 2008-06-08 02:19:43 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [084/906] add a glfilterapp which holds the client draw and reshape callbacks (some "wanted" regressions about the glvideomaker, have been done with this version. Will be fix in next commits) 2008-06-07 21:56:00 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [083/906] finish to implement the glfilter: example : gst-launch-0.10 videotestsrc num_buffers = 100 ! glgraphicmaker ! glfiltercube ! glimagesink 2008-06-07 15:27:12 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [082/906] glfilter can request, use and reject a FBO (step 1) 2008-06-07 00:01:18 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [081/906] start to add a glfilter 2008-05-24 12:35:34 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [080/906] fix gstfreeglut linux implementation to correctly handle the gstxoverlay interface 2008-05-22 20:10:31 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [079/906] up 2008-05-21 21:17:49 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [077/906] up 2008-05-21 21:15:47 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [076/906] check OpenGL and Glew versions 2008-05-20 17:40:20 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [075/906] indent 2008-05-19 23:06:07 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [074/906] up 2008-05-19 23:03:22 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [073/906] up 2008-05-19 21:36:59 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [072/906] up 2008-05-19 21:28:28 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [071/906] remove all warnings 2008-05-19 18:45:46 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [070/906] implement and fix onClose: when a user click on the cross of an internal window (there is not this issue when using the gstxoverlay interface) 2008-05-19 16:57:39 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [069/906] add gstreamer license 2008-05-18 19:18:04 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [066/906] up 2008-05-18 17:55:56 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.h: [065/906] up 2008-05-18 14:47:01 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.h: [063/906] up 2008-05-18 11:12:46 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [062/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@421 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-15 14:16:53 -0700 David Schleef * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [061/906] First SVN commit. This commit is a hack to make git-rebase work 2008-02-23 15:10:49 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: [060/906] * gst-libs/gst/gl/gstglbuffer.c: (gst_gl_buffer_format_from_video_format): Fix compiler warning if there are video format enums gstglbuffer doesn't know about yet. * gst-libs/gst/gl/gstgldisplay.c: (gst_gl_display_upload_texture_rectangle), (gst_gl_display_draw_texture): Fix printf format for 64-bit integers. 2008-01-31 23:40:13 +0000 David Schleef * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: [059/906] * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/gstreamer-plugins-gl-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-gl.pc.in: Rename pkgconfig files. And install them. * tests/check/Makefile.am: * tests/check/generic/states.c: * tests/check/pipelines/simple-launch-lines.c: Add some tests copied from -good. 2008-01-31 21:35:56 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: [058/906] * gst-libs/gst/gl/Makefile.am: The library needs to link against libgstvideo-0.10. * gst/gl/Makefile.am: The plugin does not (I think) need to link against GL or libgstvideo, since our new gstreamer GL library already does that, but it does need to link against our brand-new libgstgl-0.10. 2008-01-31 20:21:26 +0000 David Schleef * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [056/906] * configure.ac: Readd pre-pkgconfig OpenGL detection, since pkgconfig requires Mesa from git master. * gst/gl/glimagesink.c: * gst/gl/gstopengl.c: Move debug category initialization to element. * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: Move glfilter to library. * pkgconfig/gstreamer-plugins-gl.pc.in: Add gstreamer-base-0.10 as a requirement. * po/en.po: Update. 2008-01-18 15:13:16 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: [055/906] * configure.ac: * docs/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: * tests/Makefile.am: Fix compilation in uninstalled setup and some distcheck-y bits (not all though). 2008-01-17 23:23:31 +0000 David Schleef * gst-libs/gst/gl/Makefile.am: [054/906] Fixes to make project compile. Probably still doesn't work. * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/Makefile.am: * gst/gl/Makefile.am: * gst/gl/gstgltestsrc.c: * po/LINGUAS: * win32/MANIFEST: 2008-01-17 19:40:36 +0000 David Schleef * gst-libs/gst/gl/Makefile.am: [053/906] Add project infrastructure. Not complete, doesn't work. * .cvsignore: * AUTHORS: * COPYING: * COPYING.LIB: * INSTALL: * Makefile.am: * NEWS: * README: * RELEASE: * REQUIREMENTS: * autogen.sh: * configure.ac: * docs/.cvsignore: * docs/Makefile.am: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: * docs/version.entities.in: * ext/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-plugins-gl.doap: * gst-plugins-gl.spec.in: * gst/Makefile.am: * m4/.cvsignore: * m4/Makefile.am: * pkgconfig/.cvsignore: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-gl-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-gl.pc.in: * sys/Makefile.am: * tests/Makefile.am: * tests/check/Makefile.am: * tests/examples/Makefile.am: * tests/icles/Makefile.am: * tools/Makefile.am: * win32/common/config.h.in: 2008-01-06 03:01:39 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [052/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstglupload.c: Handle xoverlay exposes correctly. This means glimagesink works correctly most of the time in totem (fullscreening being an execption). Doesn't handle expose events directly to the GL window. 2008-01-06 01:19:48 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [051/906] * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstopengl.c: Reenable video/x-raw-rgb and x-raw-yuv for glimagesink. Enable vblank synchronization. Remove unused code. 2007-12-29 00:37:40 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [049/906] * configure.ac: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Major cleanup of code. Convert glupload to BaseTransform. Handle caps negotiation mostly correctly. Reenable in build. 2007-12-27 04:15:26 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: [047/906] * sys/glsink/gltestsrc.c: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Convert gldownload to BaseTransform. Make glfilterexample visually interesting. Add support for various formats to downloading. Fix a few places where we leak GL state to other elements (bad, but hard to prevent). 2007-12-27 00:52:22 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: [046/906] * sys/glsink/BUGS: * sys/glsink/Makefile.am: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Remove code that handles non-texture buffers. Add a GstGLBufferFormat type that corresponds to how to use the texture, not the original video format. Convert gstflfilter.c into a base class, add glfilterexample and glconvert elements. * sys/glsink/color_matrix.c: Minor ramblings about color conversion matrices. 2007-12-25 00:34:13 +0000 David Schleef * gst-libs/gst/gl/gstgldisplay.c: [045/906] * sys/glsink/Makefile.am: * sys/glsink/gltestsrc.c: * sys/glsink/gltestsrc.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstgltestsrc.h: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Add gltestsrc element, a duplicate of videotestsrc that uses GL rendering to create images. More cleanup. 2007-12-24 21:26:38 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: [044/906] * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: Clean up code. Fix a few leaks. 2007-12-24 21:04:45 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [043/906] * sys/glsink/Makefile.am: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: Rename glvideo.[ch] to gstgldisplay.[ch]. 2007-12-24 20:53:55 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: [042/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download, filtering all work. 2007-12-22 05:01:57 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: [041/906] * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglupload.c: A careful read of the documentation reveals that I can't use renderbuffers as textures. Duh. Checkpoint because I'm about to rewrite a bunch of code. 2007-12-21 00:03:10 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: [040/906] * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Switch to using framebuffer_objects instead of GLXPixmaps, because that's what my driver supports. Remove GLDrawable, since GstGLDisplay now has a default drawable and context. 2007-12-16 00:16:46 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: [037/906] * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: Add vblank synchronization. Isn't really working on my driver. :( 2017-08-31 11:12:12 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * tests/check/elements/appsrc.c: appsrc: add support for pushing buffer lists And samples that carry buffer lists. https://bugzilla.gnome.org/show_bug.cgi?id=752363 2017-12-04 09:49:35 +0000 Tim-Philipp Müller * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsamidisrc.h: alsamidisrc: unlock create function on shutdown Fixes occasional hang in generic/states unit test or GST_CHECKS=test_state_changes_up_and_down_seq make forever 2017-12-08 10:33:10 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggdemux: Check encoder name is valid Encoder names should be valid utf-8, if not just ignore them 2017-12-08 08:00:07 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Avoid overflow calculation (image/quicktime) The qt typefinder uses guint64 values for offset and size calculation but the typefinder system only supports gint64 values. Make sure we don't end up using potentially overflowing values. 2017-12-08 08:00:07 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Avoid overflow calculation The qt typefinder uses guint64 values for offset and size calculation but the typefinder system only supports gint64 values. Make sure we don't end up using potentially overflowing values. 2017-12-03 02:10:40 +0900 Akinobu Mita * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximagesink, xvimagesink: fix incorrect type conversion of pointer position I'm currently playing with modified ximagesink that does XGrabPointer() in order to receive the mouse events occurred outside of the window and send them to the navigation interface. The pointer positions usually have positive coordinates, but it could be negative with that change. When the ximagesink handles XEvent that contains a negative pointer coordinate, it incorrectly generates the GstEvent that contains an extremely large positive pointer coordinate. This is because the negative pointer position in XEvent is incorrectly converted from signed to unsigned and passed as an argument to gst_navigation_send_mouse_event() which causes implicit conversion from integer to double. So the pointer position in the received XEvent and generated GstEvent are completely different. This potential problem does not seem to be a real problem with unmodified ximagesink but there is no reason to leave it as is. This also fixes xvimagesink that has the same potential problem. https://bugzilla.gnome.org/show_bug.cgi?id=791140 2017-12-07 16:09:55 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Fix previous commit We need to make sure we have *enough* data to read (including the next 4 bytes) 2017-12-07 15:02:41 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Optimize qt/3gp typefinding Request the whole 'ftyp' atom data and scan within it. Avoids doing a lot of small 4 byte pull from upstream if it's invalid. 2017-12-07 14:52:36 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: wavpack: limit search in blocksize The maximum blocksize is 131072 bytes, anything bigger is a corrupted file. 2017-12-07 11:03:20 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Fix ico out-of-bound read The furthest we go to verify the data is reading a guint32 at offset 18, therefore make sure we can read as much. 2017-11-14 23:07:26 +0900 Seungha Yang * sys/xvimage/xvimageallocator.c: xvimageallocator: Fix build warning error Fix unused variable build error if HAVE_XSHM is undefined https://bugzilla.gnome.org/show_bug.cgi?id=790329 2017-12-06 14:22:49 +0100 Edward Hervey * ext/ogg/gstogmparse.c: ogmparse: Make sure we set valid string on caps the fourcc might not contain printable characters, use the convenience macro to turn it into a printable fourcc, like it's done in gstogmparse 2017-10-31 16:10:19 -0600 Matt Staples * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: rtsp: Register GstRTSPMessage as a boxed type Registering GstRTSPMessage as a boxed type allows it to be conveniently used as an argument to signals, a-la GstSDPMessage, and general usage from bindings. https://bugzilla.gnome.org/show_bug.cgi?id=762884 2017-06-06 10:39:15 +0200 Havard Graff * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix buffer leak in error code path 2017-12-02 16:01:25 +0000 Tim-Philipp Müller * gst/compositor/Makefile.am: * gst/compositor/meson.build: Remove GstAggregator from -bad, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=739010 2017-12-02 16:01:25 +0000 Tim-Philipp Müller * gst/audiomixer/Makefile.am: * gst/audiomixer/meson.build: Remove GstAggregator from -bad, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=739010 2017-12-01 10:14:30 -0300 Thibault Saunier * gst-libs/gst/audio/audio-converter.h: audio: Add missing G_BEGIN/END_DECLS 2017-12-01 16:25:32 +0800 Jun Xie * gst/playback/gstdecodebin2.c: decodebin: Fix typo in docs https://bugzilla.gnome.org/show_bug.cgi?id=791058 2017-11-30 10:46:44 +0100 Edward Hervey * ext/alsa/gstalsamidisrc.c: alsamidisrc: Don't assume a clock has been set Can happen in testing scenarios for example 2017-11-28 09:33:11 -0800 Thiago Santos * gst-libs/gst/pbutils/codec-utils.c: codec-utils: add some missing gi annotations Missing some array and out parameters annotations https://bugzilla.gnome.org/show_bug.cgi?id=790950 2017-10-05 12:10:50 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsamidisrc.h: alsamidisrc: Improve buffer timestamping Make buffer timestamps more accurate and, more importantly, actually representative of the MIDI events timing. Previously, buffers were only sent with timetamps aligned at a 10ms boundary which was just wrong, now the buffer timestamp represents the real time of the MIDI event. Conveniently, the ALSA sequencer API supports scheduling events in the future so the sequencer infrastructure can be used to have the tick delivered at the right time, avoiding any custom scheduling mechanism. The ticks scheduling starts on the first transition to PLAYING, and the delay is also calculated when the pipeline goes into PLAYING. https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-10-04 22:31:23 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsamidisrc.h: alsamidisrc: Expand snd_seq_create_simple_port() and use a queue for timestamps Events are timestamped with a real-time value representing the time passed since the queue timer was started. The timestamp is not used just yet. https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-10-04 20:43:50 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: alsamidisrc: Merge prepare_buffer() and push_buffer() The separation is not very useful since push_buffer() is the only user of prepare_buffer(). https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-10-04 19:46:55 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: alsamidisrc: Don't set buffer offset and duration They are not relly needed for a live source. https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-10-04 19:41:58 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: alsamidisrc: Fix a memory leak when setting the "ports" property When setting the "ports" property the value is duplicated but it's not freed when the elements stops. Reported by Valgrind (example run with "alsamidisrc ports=128:0"): 6 bytes in 1 blocks are definitely lost in loss record 30 of 1,911 at 0x4C2BBEF: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) by 0x5411528: g_malloc (gmem.c:94) by 0x542A9FE: g_strdup (gstrfuncs.c:363) by 0x775211E: gst_alsa_midi_src_set_property (gstalsamidisrc.c:284) by 0x5184A4D: object_set_property (gobject.c:1439) by 0x5184A4D: g_object_setv (gobject.c:2245) by 0x51859DD: g_object_set_property (gobject.c:2529) by 0x4F0474C: ??? (in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.1203.0) by 0x4F065C8: ??? (in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.1203.0) by 0x4F07557: ??? (in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.1203.0) by 0x4EFE3EE: gst_parse_launch_full (in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.1203.0) by 0x4EFE673: gst_parse_launchv_full (in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.1203.0) https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-09-25 15:14:45 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: alsamidisrc: Prevent Valgrind from reporting cached config as memory leaks See http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=MEMORY-LEAK;hb=HEAD This allows to have cleaner Valgrind reports about alsamidisrc and make it easier to spot actual problems. https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-10-09 18:50:23 +0200 Antonio Ospite * ext/alsa/gstalsamidisrc.c: alsamidisrc: Improve a comment and remove one trailing space https://bugzilla.gnome.org/show_bug.cgi?id=787683 2017-11-29 14:53:57 +0000 Julien Isorce * gst-libs/gst/app/gstappsink.c: appsink: fix end condition of query drain handler The while loop should end when all buffers "and" the preroll buffer are consumed but this means to continue waiting if there are still some pending buffers "or" preroll buffer. The unit test was correct but racy because of this mistake. I.e. because of the wrong "and" the while could finish too early. cd tests/check && GST_CHECKS=test_query_drain make elements/appsink.forever https://bugzilla.gnome.org/show_bug.cgi?id=789763 2017-11-27 20:10:15 +1100 Matthew Waters * common: Automatic update of common submodule From 3f4aa96 to e8c7a71 2017-11-26 18:36:35 +0000 Tim-Philipp Müller * Makefile.am: * win32/MANIFEST: * win32/common/libgstallocators.def: * win32/common/libgstapp.def: * win32/common/libgstaudio.def: * win32/common/libgstfft.def: * win32/common/libgstpbutils.def: * win32/common/libgstriff.def: * win32/common/libgstrtp.def: * win32/common/libgstrtsp.def: * win32/common/libgstsdp.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: win32: remove .def file with exports They're no longer needed, symbol exporting is now explicit via GST_EXPORT in all cases (autotools, meson, incl. MSVC). 2017-11-26 18:30:57 +0000 Tim-Philipp Müller * configure.ac: autotools: stop controlling symbol visibility with -export-symbols-regex Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT. This should result in consistent behaviour for the autotools and Meson builds. 2017-11-26 18:14:39 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-color.h: video: add missing GST_EXPORT 2017-11-25 12:48:40 +0100 Edward Hervey * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't leak string The result of gst_video_colorimetry_to_string () needs to be free'd 2017-11-25 12:45:03 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Don't leak mutexes 2017-11-06 21:07:51 +0100 Mathieu Duponchelle * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: aggregator: Remove klass->sinkpads_type This posed problems for the python bindings (and possibly others). Instead, subclasses now use add_pad_template_with_gtype. https://bugzilla.gnome.org/show_bug.cgi?id=789986 2017-11-06 21:07:51 +0100 Mathieu Duponchelle * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: aggregator: Remove klass->sinkpads_type This posed problems for the python bindings (and possibly others). Instead, subclasses now use add_pad_template_with_gtype. https://bugzilla.gnome.org/show_bug.cgi?id=789986 2017-11-21 10:15:02 +0100 Edward Hervey * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Avoid overflow calculation n_frames could end up being quite big (potentially up to G_MAXINT64). Which would result in overflowing 64bits when multiplying it by GST_SECOND. Instead move GST_SECOND to the num argument 2017-11-17 14:07:22 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtp: Require gconstpointer instead of gpointer for gst_rt[c]p_buffer_new_copy_data() 2017-11-16 18:22:20 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Don't spawn threads on shutdown If we are shutting down, don't spawn a cleanup thread to cleanup old groups and instead queue them to be cleaned up in the state change thread. This avoids (hopefully for good) having a race between the state change thread and other threads trying to deactivate elements/pads. 2017-11-16 06:39:41 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Avoid deactivation races Deactivating pads from two threads isn't 100% MT-safe. There is a slim chance that the GstPadActivateFunc might be called twice with the same values (in this case from the cleanup thread *and* from the GstElement change_state function when going from PAUSED to READY). In order to avoid that, call any existing cleanup function *before* calling the parent change_state implementation on downwards state changes. 2017-11-15 10:51:33 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Don't remove element when switching to PLAYING There is a race going on somewhere when we attempt to remove elements *while* the parent container is switching to PLAYING. In order to avoid this issue with discoverer, make sure we never remove elements while switching to PLAYING. 2017-11-15 10:49:05 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Don't add pads/elements when cleaning up There is no need to add more pads/elements since we are already done. 2017-11-15 10:45:39 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Remove probe when done 2017-11-15 08:29:17 +0100 Edward Hervey * ext/ogg/gstogmparse.c: ogmparse: Set caps after sending pending events Avoids sending STREAM_START before CAPS 2017-11-15 08:28:47 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: Demote error to warning 2017-11-15 08:27:01 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Move mutex/cond initialization/release We only need to initialize the mutex/cond once when creating the element and then release them when we are done with the element. Avoids weird "mutex_clear called when still locked" issues 2017-11-14 13:38:42 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Don't try to add pads when shutting down Be even more agressive than before and just hold the DYN lock when/if adding pads and return if we are shutting down. 2017-11-14 13:34:48 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Don't take locks when deactivating pads When deactivating pads, we need to ensure that the streaming threads going through the pads we wish to deactivate can cleanly return. Failure to do that would result in the streaming locks of those pads never being released. The end result would be a deadlock when stopping decodebin2. In order to avoid that situation, release the "dyn" lock around the deactivation code. And refactor the code to cope with the list of blocked pads having potentially changed when re-acquiring the lock. 2017-11-11 07:45:42 +0100 Edward Hervey * ext/theora/gsttheoradec.c: theoradec: Handle negotiation failure Avoids a trove of random issues afterwards (due to decoder not *actually* being initialized/negotiated). 2017-09-22 17:07:44 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove unneeded blacklisting Blacklisted mimetypes have been empty in almost 10 years ... 2017-09-22 17:04:54 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove context caching This is now handled by the GstBin baseclass 2017-09-22 16:58:14 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove source property And instead use the "setup-source" signal. This opens the way to deal with more than one 'source' for a given playlist entry 2017-11-10 14:54:12 +0100 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Don't let thread run after unref We have a dedicated one-shot thread to handle cleanup of old groups. While this is a good idea. It's an even better idea to make sure that thread is *completed* before the parsebin element to which it is related isn't freed/gone. * There can only be one cleanup thread happening at any point in time. If there is already one, we wait for the previous one to finish. * When shutting down (NULL=>READY) make sure the thread is finished https://bugzilla.gnome.org/show_bug.cgi?id=790007 2017-11-10 14:54:12 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Don't let thread run after unref We have a dedicated one-shot thread to handle cleanup of old groups. While this is a good idea. It's an even better idea to make sure that thread is *completed* before the decodebin2 element to which it is related isn't freed/gone. * There can only be one cleanup thread happening at any point in time. If there is already one, we wait for the previous one to finish. * When shutting down (NULL=>READY) make sure the thread is finished https://bugzilla.gnome.org/show_bug.cgi?id=790007 2017-11-10 14:22:38 +0100 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Check for shutdown before exposing pads We already checked previously, but we need to do it before adding pads. 2017-09-06 16:50:31 +0200 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Emit 'drained' only for the top-level chain Instead of emitting 'drained' whenever every single chain is drained (which would result in plenty of signal emission, and would also occur when switching groups), only emit it when the top-level chain is drained. Furthermore, mark unknown (and therefore unexposed) pads as drained since we'll never get EOS on them. https://bugzilla.gnome.org/show_bug.cgi?id=787367 2017-11-08 19:24:31 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Print signed time offset as a signed number 2017-11-08 19:24:02 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiostreamalign.h: audiostreamalign: Add G_BEGIN_DECLS/G_END_DECLS 2017-11-08 17:15:09 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Solidify gst_ogg_demux_loop_push() some more There were still some races going on where seeking events wouldn't be properly intercepted/executed by this thread. * Instead of always waiting for the GCond to be emitted, first just check if there is an event available * Take ownership of the event *while* the lock is taken and not after releasing/reacquiring it * Finally acquire lock at the very top and release it at the end to make it a bit more streamlined This removes the remaining issues with seeks not being executed 2017-11-08 17:08:49 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Don't double-unlock The previous branch will release the lock in the call to gst_ogg_demux_seek_back_after_push_duration_check_unlock() Only unlock it if we didn't call that function 2017-11-07 15:09:40 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Drop data before new segment When calculating duration in push-mode we seek to a certain position and discard any data until we get data from that requested position. The problem is that basing ourselves solely on offset to determine whether we reached the target offset is wrong since the source might be fast enough to send us that target position *before* it processed the requested seek. This would end up in a situation where: * We think we're done with duration estimate * We fire a seek back to "0" in the loop thread * We resume normal processing * ... except that we're still getting data from too far ahead which we decide to process. * And we start doing totally wrong granule/time/duration calculation and pushing wrong data. Instead of this confusion, wait until we receive data from the requested seek. We do that by using the fact that the seqnum in seek_event_drop_til will be non-zero until the SEGMENT corresponding to the requested SEEK has been received. Bonus: makes startup slightly faster 2017-11-07 15:05:19 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: Wait for push loop to be started Code using the push_loop_thread (using for sending seeks) assumes that the thread was properly started, except that this isn't always true and the thread might not have completely started. Instead wait for the thread to properly start before doing anything else. 2017-11-03 11:39:54 +0800 shakin chou * gst/playback/gstplaybin2.c: playbin: Don't ref_sink() the sinks twice Since we're already sunk floating reference, we shouldn't call ref_sink again, which increases the ref_count and cause leaks. https://bugzilla.gnome.org/show_bug.cgi?id=789547 2017-11-06 14:28:52 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: Ensure enough bytes for fishead header parsing 2017-11-05 12:16:13 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: Use proper type for sample calculation If we are going to return a (potentially) 64bit integer, don't use a 32bit one for calculation, otherwise we could end up exceeding the maximum size of a 32bit int. 2017-11-05 12:15:33 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: More fixes for invalid granuleshift Don't use granuleshift if it wasn't set 2017-11-04 19:48:13 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Don't switch to PLAYING if we saw an error If we saw an error on the bus, we can't be guaranteed that element will function properly anyway. Avoids weird state change races also 2017-11-04 19:08:40 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: Revert "discoverer: Avoid race of adding elements while stopping" This reverts commit 9a8cb299702c6e8c01b5f4a366f7cffc6b13f97a. The problem is deeper down the stack 2017-11-04 16:56:10 +0100 Edward Hervey * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: fix left shift override Needs to be cast to the target type 2017-11-04 16:13:06 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Avoid race of adding elements while stopping This would result in a lot of warnings regarding elements not being in NULL state when removed, or even leaked elements. Instead make sure we take the lock and check whether we are processing or not before allocating or adding anything to the pipeline 2017-11-04 12:19:46 +0100 Edward Hervey * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix undefined left shift Cast value to target type 2017-11-04 12:18:39 +0100 Edward Hervey * gst-libs/gst/video/video-converter.c: video-converter: Fix undefined left shift Cast value to target type 2017-11-04 11:29:52 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: Fix default granuleshift usage For stream mappers that don't set a specific granuleshift, it will have the default value of -1. Protect the code for that and return the granule value as-is 2017-11-04 11:28:47 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Protect against invalid granule positions Only valid values are -1, 0 or positive values. Anything else is most likely corrupted data streams 2017-11-03 17:20:44 +0100 Mathieu Duponchelle * gst-libs/gst/pbutils/codec-utils.c: codecutils: improve input validation in opus header parsing Invalid input files do not warrant assertions. Instead output error messages and let the error bubble up. 2017-11-01 11:23:17 +0900 Justin Kim * gst-libs/gst/sdp/gstsdpmessage.c: * tests/check/libs/sdp.c: sdpmessage: add_attribute accepts NULL value The attribute can be defined without value regardless session-level or media-level. Although `gst_sdp_message_insert_attribute` can be used to set NULL, it would be easier if `gst_sdp_message_add_attribute` accepts NULL. https://bugzilla.gnome.org/show_bug.cgi?id=789841 2017-11-02 15:14:49 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Fix out-of-bound read in PNM typefinder 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:56:57 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: add CAST macros 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:17:38 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 11:57:24 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: videoaggregator: drop ABI compat in padding for new struct member Don't really have to do that while it's in -bad and most users are in-tree anyway. 2017-10-23 22:03:22 +0200 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: audioaggregator: make class padding larger 2017-11-02 10:40:37 +0100 Edward Hervey * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Fix previous comment We already NULL-ended the string, don't use the bogus cur_size 2017-11-02 09:05:47 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: fix off-by-one in webvtt typefinder We're also checking the byte after the WEBVTT magic. 2017-11-02 09:19:21 +0100 Edward Hervey * gst-libs/gst/riff/riff-media.c: riff-media: Handle strf_data being NULL Instead of trying to get the size of a NULL buffer :) 2017-11-02 08:18:26 +0100 Edward Hervey * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Check whether tag name is valid In the same way we check before whether the content of the tag is UTF-8 2017-11-02 08:04:27 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Check return values The target pad of a ghostpad could have gone (due to shutdown taking place for example). Check for it's existence before doing anything with it. 2017-11-02 07:55:16 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Recheck shutdown behaviour in error case If we can expose the main chain, recheck whether we are shutting down or not. decodebin2 might have been set to READY/NULL during the attempt to expose, which would cause it to fail ... but it is not a fatal issue. 2017-11-02 07:18:17 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Uniquely name elements Helps identifying actual queue/fakesink usage. There seems to be a race in discoverer, this should help track it down. 2017-11-01 18:26:20 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Only track time for initialized streams in push-mode we only can track time (or most operations on streams for that matter) if the underlying GstOggMap was properly initialized. 2017-11-01 18:24:11 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: Add a default GstOggMap Since the default value of a GstOggPad.map.map was 0 ... we would end up using wrong functions from mappers() if the stream wasn't initialized yet. Instead of that, use a default blank/empty first entry. 2017-07-17 17:07:26 +0300 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: rtspconnection: Allow setting a custom accept-certificate function for manually checking a TLS certificate for validity https://bugzilla.gnome.org/show_bug.cgi?id=785024 2017-11-01 11:19:58 +0100 Edward Hervey * ext/ogg/gstogmparse.c: ogmparse: Ensure we don't create bogus fractions The clamping of the fraction denominator was bogus (it needs to be >0) 2017-11-01 11:18:12 +0100 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Fix chain leak in push mode In some corner cases we end up with the building chain not being properly tracked (and therefore not properly freed). Add a FIXME so it can later be fixed, but for now just fix the leak 2017-11-01 10:53:54 +0100 Edward Hervey * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Fix leak in error case Don't leak the vendor_string on error cases 2017-11-01 10:31:28 +0100 Edward Hervey * ext/ogg/gstogmparse.c: ogmparse: Error out if we can't figure out the format In some cases we might not be able to figure out the fixed format from the header. Properly error out in those cases. 2017-11-01 13:52:50 +0900 Justin Kim * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: rtcpbuffer: Add XR type RTCP XR provides supplements information of the report blocks from SR and RR. This patch is for downgrading warnings when XR is detected before implementing entire block types of RFC3611. https://bugzilla.gnome.org/show_bug.cgi?id=789743 2017-11-01 12:44:59 +0900 Justin Kim * gst-libs/gst/sdp/gstsdpmessage.c: * tests/check/libs/sdp.c: sdpmessage: do not append NULL value for session-level attr If an attribute is defined without value, the generated text should be 'a=key' rather than 'a=key:'. For media-level, it has already been done. https://bugzilla.gnome.org/show_bug.cgi?id=789742 2017-10-31 11:56:22 +0100 Edward Hervey * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/video/video-orc-dist.c: * gst/adder/gstadderorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/volume/gstvolumeorc-dist.c: Update disted orc file For latest orc fixes 2017-10-31 10:34:26 +0100 Edward Hervey * ext/ogg/gstoggstream.c: ogg: Don't add tags to empty taglist 2017-10-30 11:10:11 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Use GST_READ_UINT32 macros Avoids undefined behaviour with shifting 2017-10-30 08:55:48 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Fix out-of-bound memory access We were not checking the proper amount of available data in several places 2017-10-27 18:29:40 +0300 Vivia Nikolaidou * gst/audioconvert/gstaudioconvert.c: audioconvert: Fix empty mix matrix documentation typo 2017-03-16 20:55:44 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Allow configure output stream without reassign slot By select-streams event, current implementation of decodebin3 supports deactivate output stream (i.e., decoder element) in reassign slot(), but cannot activate any slot without track change. https://bugzilla.gnome.org/show_bug.cgi?id=778015 2017-03-16 19:53:11 +0900 Seungha Yang * gst/playback/gstplaybin3.c: playbin3: Use STREAMS_SELECTED message to update selected stream types Application might choose only specific type among all available types using select-streams event. In this case, it is desired that reconfigure of playsink to clear unused stream path. https://bugzilla.gnome.org/show_bug.cgi?id=778015 2017-10-27 09:51:29 +0200 Edward Hervey * tools/gst-play.c: gst-play: Prevent disabling all streams This would have bad effects :) 2017-03-16 17:52:04 +0900 Seungha Yang * tools/gst-play.c: gst-play: Support track change on playbin3 * playbin3 does not support {current,n}-{audio,video,text} properties, and they were replaced by GstStreams API. So, GstStreams API and select-stream event should be used for track change in case of playbin3. see also https://bugzilla.gnome.org/show_bug.cgi?id=769079 * By using commend line option "--use-playbin3", gst-play will use playbin3 regardless of "USE_PLAYBIN" env variable. https://bugzilla.gnome.org/show_bug.cgi?id=775469 2017-10-26 18:05:31 +0200 Mathieu Duponchelle * gst/audioconvert/gstaudioconvert.c: audioconvert: document passing an empty mix-matrix 2017-10-26 15:55:32 +0200 Edward Hervey * tests/check/libs/audio.c: check: Fix minor leak 2017-10-26 10:07:15 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Don't forget to reacquire lock when needed Fixup to ef93130cf04143fcf675b05ce0d19eddfbac4e75 I overlooked the issue. There is a case when the lock is released and we need to reacquire it 2017-10-25 17:45:44 +0200 Mathieu Duponchelle * win32/common/libgstvideo.def: libgstvideo.def: add new definitions 2017-10-25 11:41:02 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * tests/check/libs/videoencoder.c: videoencoder: add qos property This new property control if the encoder base class should gather QoS stats and if subclasses should use them by dropping late frames. https://bugzilla.gnome.org/show_bug.cgi?id=789467 2017-10-25 12:47:40 +0530 Ashish Kumar * gst-libs/gst/audio/audio-channels.c: gst-plugins-base: gstaudiochannels: Handled buffer mapping failure https://bugzilla.gnome.org/show_bug.cgi?id=789458 2017-10-24 11:05:20 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Don't drop sticky events Previous commit was wrong. We should still send all events to the pad (so that sticky events get attached to it and sent when pad gets added). 2017-10-24 10:56:00 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Improve handling of EOS without source pads We might have a chain to use, but it might not have any active pads Properly detect that and send an error message on EOS 2017-10-23 11:52:38 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: comment and logging cleanups for audiomixer and aggregator Remove some references to 'collectpads'. Logs pads through the object variants. Add some more comments. Remove a left over comment. 2017-10-22 19:43:17 +0200 Stefan Sauer * gst/audiomixer/gstaudiomixer.c: aggregator: fix type for latency property (int64 -> GStClockTime) The value is used as GstClockTiem in the code. Adapt the hack^H^H^H^Hcode in live-adder. 2017-10-22 01:00:10 +1100 Matthew Waters * gst-libs/gst/video/gstvideoencoder.c: Revert "videoencoder: flush encoder in transition PAUSED->READY" This reverts commit 877664a414a466cfcc71c79d28c470722408c9a7. 2017-10-22 01:00:08 +1100 Matthew Waters * gst-libs/gst/video/gstvideodecoder.c: Revert "videodecoder: flush decoder in transition PAUSED->READY" This reverts commit 6e9edc3031935ce8d6640d9774a7c093d20d4366. 2017-10-22 01:00:06 +1100 Matthew Waters * gst-libs/gst/audio/gstaudioencoder.c: Revert "audioencoder: flush encoder in transition PAUSED->READY" This reverts commit 2dcdd13512e788797d03f9990994eecdd339ca0e. 2017-10-22 01:00:03 +1100 Matthew Waters * gst-libs/gst/audio/gstaudiodecoder.c: Revert "audiodecoder: flush decoder in transition PAUSED->READY" This reverts commit e7cf4c058ddd466a797623b5ddf162c263d07059. 2017-07-13 19:09:43 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Accept buffer with no data, but duration and gap flag These are produced from GAP events by the base class. https://bugzilla.gnome.org/show_bug.cgi?id=784846 2017-10-21 10:37:48 +0200 Edward Hervey * win32/common/libgstvideo.def: win32: update exports file 2017-10-20 18:40:42 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Error out on EOS if we have no chains to use There are not active and pending chains, if we get EOS we need to inform the user via an error message 2017-10-20 18:40:02 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Don't double lock The lock was already taken just before this block and is released after 2017-09-28 13:17:05 +0200 Nicola Murino * gst-libs/gst/video/gstvideoencoder.c: videoencoder: flush encoder in transition PAUSED->READY https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-09-28 13:12:58 +0200 Nicola Murino * gst-libs/gst/video/gstvideoencoder.c: videoencoder: remove the lock from gst_video_encoder_flush The lock is already taken before calling the flush method and can lead to deadlock for some encoders that need to take the same lock from another thread while flushing https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-09-27 16:08:10 +0200 Nicola Murino * gst-libs/gst/video/gstvideodecoder.c: videodecoder: flush decoder in transition PAUSED->READY https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-09-27 16:32:13 +0200 Nicola Murino * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: flush encoder in transition PAUSED->READY https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-09-27 16:41:51 +0200 Nicola Murino * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: flush decoder in transition PAUSED->READY https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-09-21 15:18:10 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * tests/check/libs/videoencoder.c: videoencoder: implement QoS It allows encoders to detect and drop input frames which are already late to increase the chance of the pipeline to catch up. The QoS logic and code is directly copied from gstvideodecoder.c. https://bugzilla.gnome.org/show_bug.cgi?id=582166 2017-09-21 16:52:29 +0200 Guillaume Desmottes * tests/check/libs/videoencoder.c: videoencoder test: properly name the encoder variable The element is an encoder so calling it 'dec' makes things confusing. https://bugzilla.gnome.org/show_bug.cgi?id=582166 2017-10-16 14:16:31 +0200 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: doc: Add some missing/malformed Since markers 2017-10-15 10:29:20 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: improve readability in offset calculation Don't reuse the offset variables will contain a sample offset for an intermediate time value. Instead add a segment_pos variable of type GstClockTime for this. Use The clock-time macros to check if we got a valid time. 2017-10-05 20:48:59 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: move comment to the place it is meant to be This probably got shifted after some changes. 2017-10-13 11:46:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use GstFlowReturn for flow returns 2017-10-11 18:03:20 +0200 Mathieu Duponchelle * gst-libs/gst/audio/audio-channel-mixer.c: * gst-libs/gst/audio/audio-converter.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: audioconvert: allow empty mix matrix When an empty mix matrix is passed, audio-channel-mixer will now generate a (potentially truncated) identity matrix, this replicates the behaviour of audiomixmatrix in first-channels mode. https://bugzilla.gnome.org/show_bug.cgi?id=788833 2017-10-11 22:14:28 +0200 Mathieu Duponchelle * win32/common/libgstpbutils.def: Reorder win32 defs 2017-06-13 02:18:19 +0200 Mathieu Duponchelle * tools/gst-discoverer.c: discoverer: output channel positions https://bugzilla.gnome.org/show_bug.cgi?id=783722 2017-06-13 02:32:09 +0200 Mathieu Duponchelle * tools/gst-discoverer.c: discoverer: output whether the uri is live https://bugzilla.gnome.org/show_bug.cgi?id=783722 2017-06-13 02:25:31 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * win32/common/libgstpbutils.def: API: gst_discoverer_info_get_live https://bugzilla.gnome.org/show_bug.cgi?id=783722 2017-06-13 01:40:44 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * win32/common/libgstpbutils.def: API: gst_discoverer_audio_info_get_channel_mask https://bugzilla.gnome.org/show_bug.cgi?id=783722 2017-10-09 18:13:27 +0200 Mathieu Duponchelle * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: Allow unpositioned channels. The input will be treated as a set of mono channels, and the channel-mapping-family will be set to 255 (no defined channel meaning) https://bugzilla.gnome.org/show_bug.cgi?id=788720 2017-10-11 16:57:28 +0200 Mathieu Duponchelle * gst-libs/gst/audio/audio-converter.c: audio-converter: remove unused mix_matrix private field 2017-10-07 14:20:54 +0100 Tim-Philipp Müller * tests/check/elements/appsink.c: tests: appsink: fix compiler warning and typo in struct name elements/appsink.c:624:3: warning: missing braces around initializer with gcc 4.8.4 2017-04-20 17:42:17 -0300 Thibault Saunier * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspextension.h: rtsp: Start implementing support for RTSP 2.0 Properly handle protocol version in the connection Add the following headers types: * Pipelined-Request * Media-Properties * Seek-Style * Accept-Ranges https://bugzilla.gnome.org/show_bug.cgi?id=781446 2017-10-05 17:54:34 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: remove buffer!=NULL check Acording to the logic this cannot happen (we already check this before). So add a assert like we do above and remove the check. This make it clearer that we check for the offset range. Also remove a dead assignment since we reassign this a few lines below. 2017-10-05 17:52:37 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggreator: update docs Remove wrote references to collectpads. Document the units. 2017-10-04 14:17:59 +0200 Havard Graff * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: remove vs_module_defs GST_EXPORT should handle it. 2017-10-05 14:28:42 +0200 Rico Tzschichholz * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: meson: Add some missing args and dependencies in the gir generation 2017-10-05 08:11:29 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: pass blocksize to mix_buffer() No need to recalc the value twice per run. Establishes that it is the same value. 2017-10-05 08:12:45 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: rename _fill_buffer() to _queue_new_buffer() It does not fill a buffer. Rename it and add a short comment. 2017-10-03 14:31:18 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/video-color.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstparsebin.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturisourcebin.c: Use proper GtkDoc notation for NULL/FALSE/TRUE 2017-10-02 16:57:21 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: reduce variable scope This is a non-functional change that makes the code more alike to the previous check. I should be more obvious when we drop a buffer. 2017-10-02 09:40:50 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: update comment for aggregate Replace collect-pads left-over. Remove first paragraph, we're not doing this. Remove 3), 4) since this is not per pad. 2017-09-28 21:56:22 -0300 Thibault Saunier * gst-libs/gst/audio/meson.build: meson: Add mssing GstBase-1.0 include in the gir generation 2017-09-28 14:29:03 +0300 Sebastian Dröge * tests/check/libs/audio.c: audio: Fix unit test after changed GstAudioStreamAlign constructor signature 2017-09-13 16:23:26 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiostreamalign.c: * gst-libs/gst/audio/gstaudiostreamalign.h: * win32/common/libgstaudio.def: audio: Add stream align API for getting timestamp at discont and number of samples since discont https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-12 16:03:44 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiostreamalign.c: * tests/check/libs/audio.c: audio: Add reverse playback support to GstAudioStreamAlign https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-11 22:49:32 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiostreamalign.c: * gst-libs/gst/audio/gstaudiostreamalign.h: * gst-libs/gst/audio/meson.build: * tests/check/libs/audio.c: * win32/common/libgstaudio.def: audio: Add helper object for audio discontinuity detection and sample alignment This is the same code that is in decklinkaudiosrc, audioringbuffer, audiomixer and various other places. Have it once instead of copying it everywhere. https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-25 10:42:33 +0530 Ponnam Srinivas * ext/alsa/gstalsasink.c: alsasink: Fix Memory leak in payload not succuss case https://bugzilla.gnome.org/show_bug.cgi?id=788114 2017-09-25 17:20:58 +0530 Ponnam Srinivas * ext/gl/gstglmixer.c: glmixer: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788127 2017-08-15 02:39:54 +0200 Mathieu Duponchelle * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: audioconvert: [API]: expose mix-matrix property. This obsoletes audiomixmatrix https://bugzilla.gnome.org/show_bug.cgi?id=785471 2017-07-27 19:31:48 +0200 Mathieu Duponchelle * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: [API]: GST_AUDIO_CONVERTER_OPT_MIX_MATRIX Taken from audiomixmatrix, credits to Vivia Nikolaidou https://bugzilla.gnome.org/show_bug.cgi?id=785471 2017-08-15 01:29:57 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-channel-mixer.c: * gst-libs/gst/audio/audio-channel-mixer.h: * win32/common/libgstaudio.def: [API]: gst_audio_channel_mixer_new_with_matrix + Refactor previous constructor to call on that new constructor + Reimplement is_passthrough to strictly check whether the matrix is an identity matrix, comparing channel-masks was incorrect: the mixer may be remixing from a list of positions to the same list of positions, but ordered differently, and reciprocally, the mixer may be remixing from a list of positions to another list of positions identically ordered + Remove unused tmp field, must have been a refactoring leftover https://bugzilla.gnome.org/show_bug.cgi?id=785471 2017-08-15 00:20:40 +0200 Mathieu Duponchelle * gst/audioconvert/gstaudioconvert.c: audioconvert: refactor format removal. remove_format_info was a bit confusing to read, this removes it in favor of standard gst_caps_map_in_place calls. This no longer simplifies the resulting caps, but I consider this should be the job of basetransform. https://bugzilla.gnome.org/show_bug.cgi?id=785471 2017-09-20 20:00:03 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvidemixer: need reconfigure output gemotry after caps renegotiated 2017-09-21 11:59:22 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: Revert "glvideomixer: need update output geometry after src caps reconfigure" This reverts commit d6e538dc5651fb03c85d7c7614bcf6c689f2db2f. 2017-09-18 15:42:00 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: need update output geometry after src caps reconfigure Need update output geometry when sink caps changed and use gst_structure_set to update caps if structure is fixed https://bugzilla.gnome.org/show_bug.cgi?id=787820 2017-08-24 10:02:31 +0100 Julien Isorce * gst-libs/gst/app/gstappsink.c: * tests/check/elements/appsink.c: appsink: on drain wait for buffers to be consumed So that an upstream element can claim all buffers to return to its buffer pool. Added unit test 'test_query_drain' make elements/appsink.check https://bugzilla.gnome.org/show_bug.cgi?id=786739 2017-09-18 17:06:32 +0100 Julien Isorce * gst-libs/gst/app/gstappsink.c: * tests/check/elements/appsink.c: appsink: also clear preroll buffer in _pull_sample If someone calls gst_app_sink_try_pull_sample they are probably no longer interested in any preroll samples. Useful if the user has not registered a preroll appsink callback. Also added unit test 'test_do_not_care_preroll' make elements/appsink.check that fails without this patch. https://bugzilla.gnome.org/show_bug.cgi?id=786740 2017-09-17 21:05:03 -0700 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix typo in comment 2017-09-10 20:55:07 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: simplify audiomixer test Use _link_many() and reuse a helper to reduce the test code. 2017-08-29 09:47:51 +0100 Julien Isorce * gst-libs/gst/app/gstappsink.c: * tests/check/elements/appsink.c: appsink: unref preroll buffer upon pull There is no reason for appsink to hang onto the preroll buffer. If needed, the application can just keep a ref on this buffer after calling gst_app_sink_try_pull_preroll. Also added unit test 'test_pull_preroll' make elements/appsink.check https://bugzilla.gnome.org/show_bug.cgi?id=786740 2017-09-13 14:06:43 +0100 Julien Isorce * gst-libs/gst/app/gstappsink.c: appsink: rename GstBuffer *preroll to preroll_buffer priv->preroll can be confused with basesink_class->preroll https://bugzilla.gnome.org/show_bug.cgi?id=786740 2017-09-10 16:32:31 +0100 Tim-Philipp Müller * tests/check/elements/playbin-complex.c: tests: playbin-complex: skip test that needs oggdemux if it's not available https://bugzilla.gnome.org/show_bug.cgi?id=773145 2017-09-06 13:55:13 -0400 Nicolas Dufresne * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Request minimum buffer even if need_pool is FALSE When tee is used, it will not request a pool, but still it wants to know how many buffers are required. https://bugzilla.gnome.org/show_bug.cgi?id=730758 2017-09-06 13:53:42 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideofilter.c: video-filter: Support allocation pool with pool object This is used to indicate upstream the requirement in buffers while no buffer pool can be provided. In this case, only configure the pool with caps/size/min/max if we have caps, which we only parsed when there was no allocation pool. https://bugzilla.gnome.org/show_bug.cgi?id=730758 2017-09-05 16:20:44 -0400 Nicolas Dufresne * ext/gl/gstglmixer.c: Request minimum buffer even if need_pool is FALSE When tee is used, it will not request a pool, but still it wants to know how many buffers are required. https://bugzilla.gnome.org/show_bug.cgi?id=730758 2017-08-24 19:11:29 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.h: video/affinetransformationmeta: use the provided doc comment for the struct 2017-07-07 16:15:12 +0100 Julien Isorce * ext/gl/gstglmixer.h: * ext/gl/gstglvideomixer.c: gl: do not include GL headers in public gstgl headers Except for gst/gl/gstglfuncs.h It is up to the client app to include these headers. It is coherent with the fact that gstreamer-gl.pc does not require any egl.pc/gles.pc. I.e. it is the responsability of the app to search these headers within its build setup. For example gstreamer-vaapi includes explicitly EGL/egl.h and search for it in its configure.ac. For example with this patch, if an app includes the headers gst/gl/egl/gstglcontext_egl.h gst/gl/egl/gstgldisplay_egl.h gst/gl/egl/gstglmemoryegl.h it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h. Which is good because the app might want to use the gstgl api only without the need to bother about gl headers. Also added a test: cd tests/check && make libs/gstglheaders.check https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-08-20 12:09:52 +0200 Mark Nauwelaerts * gst/playback/gstplaybin2.c: playbin: ref_sink() sink rather than pointer to sink 2017-08-17 12:23:18 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From 29046b8 to 3f4aa96 2017-08-11 20:53:21 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoutilsprivate.c: videoutilsprivate: fill more video fields. __gst_video_element_proxy_caps is called by __gst_video_element_proxy_getcaps with caps set to the caps allowed downstream. As we didn't set colorimetry or chroma-site on the resulting caps, upstream considered it possible to use whatever values it wanted, leading to not negotiated errors later on. As the description for that function is: "Takes caps and copies its video fields to tmpl_caps", it seems legitimate to set these fields there. https://bugzilla.gnome.org/show_bug.cgi?id=786172 2017-08-12 15:46:28 +0100 Philippe Normand * gst-libs/gst/app/gstappsrc.c: appsrc: handle duration query only if the property was set https://bugzilla.gnome.org/show_bug.cgi?id=786200 2017-08-09 16:23:03 +0200 Edward Hervey * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: * gst/playback/gsturisourcebin.c: decodebin3/urisourcebin: Switch to actual EOS events internally Use the intended sequence for re-using elements: * EOS * STREAM_START if element is to be re-used This avoids having elements (such as queue/multiqueue/queue2) not properly resetting themselves. When delaying EOS propagation (because we want to wait until all streams of a group are done for example), we re-trigger them by first sending the cached STREAM_START and then EOS (which will cause elements to re-set themselves if needed and accept new buffers/events). https://bugzilla.gnome.org/show_bug.cgi?id=785951 2017-08-10 14:00:21 +0100 Tim-Philipp Müller * meson.build: meson: hide symbols by default unless explicitly exported 2017-08-10 13:57:26 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: pbutils: sprinkle more GST_EXPORT 2017-08-10 01:48:18 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use colorimetry from find_best_format. This increases the chances that we won't need to do any conversion for a given pad. https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 01:45:53 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: improve find_best_format heuristic. The goal here is to minimize the work needed to bring all images to a common format. A better criteria than the number of pads with a given format is the number of pixels with a given format. https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 01:43:15 +0200 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: improve conversion debugging https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 10:27:23 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/video/colorbalance.h: libs: add some more missing GST_EXPORT 2017-08-09 12:26:43 +0300 Sebastian Dröge * configure.ac: * tests/examples/meson.build: * tests/examples/snapshot/Makefile.am: * tests/examples/snapshot/meson.build: * tests/examples/snapshot/snapshot.c: examples/snapshot: Does not need GTK but only gdk-pixbuf 2017-08-08 20:35:25 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: also adjust sample count upon discont to avoid ts overflow Only adjusting the base_ts might lead to a negative ts and as such integer overflow into a huge timestamp which then propagates into the granulepos and so on. Instead, resync to incoming buffer timestamp using both base_ts and sample count rather than only base_ts. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=785948 2017-08-08 00:13:01 +0100 Tim-Philipp Müller * docs/meson.build: * pkgconfig/meson.build: meson: fix a few meson warnings 2017-07-24 13:56:16 +0530 Satya Prakash Gupta * tests/examples/app/appsink-src.c: * tests/examples/app/appsink-src2.c: examples: fix memory leaks in appsrc and appsrc2 examples https://bugzilla.gnome.org/show_bug.cgi?id=785336 2017-08-07 15:27:45 +0300 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Make sure to ref_sink() any sinks before calling activate_sink() It is forwarding messages to the playbin bus, thus forwarding messages that contain a floating reference to the application. This generally makes bindings unhappy, we must not leak floating references to them. 2017-08-04 13:39:04 +0300 Sebastian Dröge * gst-libs/gst/tag/gstxmptag.c: xmptag: Stop parsing GPS coordinate if sscanf() fails CID 1139610 2017-08-04 11:08:18 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't mix up width and height CID 1416129 2017-08-03 20:21:17 +0100 Tim-Philipp Müller * tests/examples/compositor/crossfade.c: examples: fix compiler warning in compositor crossfade example warning: control reaches end of non-void function 2017-08-03 20:14:20 +0100 Tim-Philipp Müller * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: compositor: update disted orc fallback files 2017-07-11 22:04:55 -0400 Thibault Saunier * tests/examples/compositor/crossfade.c: tests: examples: Add a simple crossfade example https://bugzilla.gnome.org/show_bug.cgi?id=784827 2017-07-06 14:26:21 -0400 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc.orc: * gst/compositor/compositorpad.h: compositor: Add support for crossfade blending Crossfading is a bit more complex than just having two pads with the right keyframes as the blending is not exactly the same. The difference is in the way we compute the alpha channel, in the case of crossfading, we have to compute an additive operation between the destination and the source (factored by the alpha property of both the input pad alpha property and the crossfading ratio) basically so that the crossfade result of 2 opaque frames is also fully opaque at any time in the crossfading process, avoid bleeding through the layer blending. Some rationnal can be found in https://phabricator.freedesktop.org/T7773. https://bugzilla.gnome.org/show_bug.cgi?id=784827 2017-08-01 17:07:32 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: fix doc typos 2017-08-01 17:53:50 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Add out annotations to gst_app_src_get_latency() 2017-07-25 12:37:19 -0400 Thibault Saunier * gst/audioconvert/gstaudioconvert.c: audioconvert: Consider channel=1, channel-mask=0x0 as mono channels=1 is always mono, having it 'unpositioned' does not make sense. This fixes pipeline such as: gst-validate-1.0 audiotestsrc ! audio/x-raw,channels=2,rate=44100,layout=interleaved ! audioconvert ! audioresample ! audio/x-raw, rate=44100, channels=1 ! avenc_mp2 ! fakesink https://bugzilla.gnome.org/show_bug.cgi?id=785407 2017-07-23 13:26:23 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use local var Instead of the self->priv-> deref use the local var we created already. 2017-07-25 10:03:41 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.h: videotimecode: Add GST_VIDEO_TIME_CODE_INIT macro 2017-07-24 19:18:49 +0530 Satya Prakash Gupta * gst-libs/gst/video/gstvideofilter.c: videofilter: Unmap input frame if mapping output frame failed https://bugzilla.gnome.org/show_bug.cgi?id=785341 2017-07-24 16:48:17 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Make sure we have an actually writable buffer when modifying metadata avviddec keeps references to the buffers internally for example, in which case we need to do a shallow copy of the buffer. 2017-07-24 16:29:53 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: videometa: Don't crash if adding the timecode meta to a buffer failed 2017-07-24 13:23:17 +0530 Satya Prakash Gupta * gst/subparse/gstssaparse.c: ssaparse: Fix buffer leak in error case https://bugzilla.gnome.org/show_bug.cgi?id=785331 2017-07-23 13:13:14 +0200 Stefan Sauer * gst/adder/gstadder.c: adder: comment and formatting cleanups Log a few more details. Update method comments. Remove some extra blank lines. 2017-04-07 20:41:57 +0200 Mathieu Duponchelle * gst/videorate/gstvideorate.c: videorate: flush remaining buffers on SEGMENT_DONE Just as we do on EOS. https://bugzilla.gnome.org/show_bug.cgi?id=784666 2017-07-19 23:05:18 +0100 Tim-Philipp Müller * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/meson.build: fft: don't generate g-i files for bindings The g-i stuff for this helper lib was never usable from bindings anyway and there are problems with the latest gobject-introspection, so we might just as well remove the g-i integration entirely for this lib. 2017-07-19 19:58:28 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: decodebin3: Remove FIXME and do remove_input_stream() only for the corresponding parsebin Do not remove other parsebin's input streams. It will cause unexpected removal of any input streams in multi-parsebin use case. Basically, the purpose of blocking buffers is similar to checking no-more-pads of chain/group. That is, it gives hint to know the timing to remove old (EOSed) streams of the parsebin and to add/reuse slots for new input streams. But, that doesn't mean that we need to remove other parsebin's EOSed stream. Each parsebin has most likely its own streaming thread and therefore EOSed time can be much different. (i.e., much early EOS of subtitle only parsebin) https://bugzilla.gnome.org/show_bug.cgi?id=785120 2017-07-19 18:47:29 +0900 Seungha Yang * gst/playback/gstparsebin.c: parsebin: Ensure StreamType and Caps of GstStream object before exposing it The final StreamType and Caps might not be set yet on GstStream at exposing the pads. https://bugzilla.gnome.org/show_bug.cgi?id=785120 2017-07-19 13:39:52 +0900 Seungha Yang * gst/playback/gstplaybin3.c: playbin3: Delay linking text output until video stream is shown We are not sure that which stream's collection arrives first when there are multiple parsebins such as adaptive streaming. https://bugzilla.gnome.org/show_bug.cgi?id=785120 2017-07-19 09:08:12 +0100 Tim-Philipp Müller * tests/check/elements/appsrc.c: tests: appsrc: fix leaks in new unit test 2017-07-19 09:02:26 +0530 Satya Prakash Gupta * gst/encoding/gstencodebin.c: encodebin: fix possible pad ref leak in error code path https://bugzilla.gnome.org/show_bug.cgi?id=785065 2017-07-18 12:46:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: video: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:29:56 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: audio: mark symbols explicitly for export with GST_EXPORT 2017-07-18 13:04:09 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: We only care about source pads going away 2017-07-18 11:34:22 +0200 Edward Hervey * gst/playback/gstdecodebin3-parse.c: decodebin3: use lock macro where applicable 2017-06-15 12:48:42 -0400 Thibault Saunier * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: Protect fields related to streams handling with the SELECTION_LOCK Fields related to stream handling (input_streams, output_streams, slots, guint slot_id) where used totally unprotected until know. This lead to several races, especially playing back RTSP streams. To protect those fields, the OBJECT_LOCK can not be used as we sometimes need to be able to post message on the bus while holding it. decodebin3 already has a lock to manage stream selection, and in the end it makes sense to protect all the stream management fields with the same lock which is why we reuse the SELECTION_LOCK here. https://bugzilla.gnome.org/show_bug.cgi?id=784012 2017-07-13 17:39:58 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: decodebin3: Protect dbin->collection usage Use the selection lock to protect dbin->collection access https://bugzilla.gnome.org/show_bug.cgi?id=784012 2017-07-15 21:28:38 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: audiomixer: set all properties at once 2017-07-15 21:27:29 +0200 Stefan Sauer * tests/check/elements/adder.c: tests: adder: set all properties at once 2017-07-15 19:43:52 +0200 Stefan Sauer * tests/check/elements/adder.c: tests: adder: add helper to create buffers Keeps repeated code out of the test and syncs it with the audiomixer test. 2017-07-15 19:33:21 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: audiomixer: use the buffer helper for other tests too 2017-07-15 12:45:35 +0100 Tim-Philipp Müller * meson.build: * po/meson.build: meson: add translations 2017-07-14 13:54:31 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: document caps negotiation raciness Until we land conversion support in audioaggregator (#773762). https://bugzilla.gnome.org/show_bug.cgi?id=777915 2017-07-14 13:48:53 +0100 Tim-Philipp Müller * gst/adder/gstadder.c: adder: fix docs typo 2017-07-14 13:40:07 +0100 Tim-Philipp Müller * gst/adder/gstadder.c: adder: document caps negotiation raciness and workaround https://bugzilla.gnome.org/show_bug.cgi?id=777915 2017-07-14 08:09:25 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: add a helper for buffer creation This makes the test setup easier to read. 2017-07-13 21:55:55 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: aggregator: code cleanups Fix comment typos, some copy'n'paste in logging. Add more doc comments. 2017-07-13 21:54:55 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: use test helper once more 2017-06-06 07:45:08 +0200 Edward Hervey playback example: Prettify time reporting for big values When dealing with streams/contents which have large duration, it is more user-friendly to show more details in the high values (hours or days) than in the microseconds. This patch will use the following formatting schemes: * Below 1hour : MM:SS.SSS * Below 24hours : HHhMMmSSs * Above : DDdHHhMMm 2017-01-25 19:51:17 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Push EOS to output stream if they are all drained decodebin3 checks input streams and pushes EOS if all input streams are EOSed. If not, fake EOS is pushed to the corresponding slot. When adaptivedemux is used with multi-track configuration, adaptivedemux never ever push EOS to non-selected track because streaming thread for the slot stops with not-linked flow return. So, decodebin3 should generate EOS itself to finish playback. https://bugzilla.gnome.org/show_bug.cgi?id=777735 2017-01-25 19:20:44 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Push EOS if slot is still eos state linked input of slot can be old input, so urisourcebin should check eos state to figure out whether it's new one or not. If not, urisourcebin never ever forwards EOS to downstream at the end of presentation, because the old input is still there without removal https://bugzilla.gnome.org/show_bug.cgi?id=777735 2016-09-09 10:29:01 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Don't send duplicated stream-start event group-id in stream-start event might be updated in parse_chain_output_probe (). This cause duplicated stream-start twice with identical stream-id and seq-num, but only group-id is different. Although there is no change, stream-start event will be followed by the first buffer. https://bugzilla.gnome.org/show_bug.cgi?id=771088 2017-07-10 21:08:09 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: more test cleanups Port over the test helpers from the adder tests. 2017-07-10 21:07:14 +0200 Stefan Sauer * tests/check/elements/adder.c: adder: sync some fixes from the audiomixer test 2017-07-10 20:16:10 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: refactor test Apply cleanups from the adder tests. Use a fixture for common code. 2017-06-12 22:57:26 -0400 Aaron Boxer * gst/typefind/gsttypefindfunctions.c: typefind: Detect JPEG2000 codestreams https://bugzilla.gnome.org/show_bug.cgi?id=783625 2017-07-07 11:56:40 +0100 Tim-Philipp Müller * meson.build: meson: find python3 via python3 module https://bugzilla.gnome.org/show_bug.cgi?id=783198 2017-07-07 09:18:30 +0900 Heekyoung Seo * gst-libs/gst/video/convertframe.c: convertframe: Fix leak in case of vcrop is disabled https://bugzilla.gnome.org/show_bug.cgi?id=784639 2017-04-11 01:18:51 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix gaps at end of streams. When the pad has received EOS, its buffer may still be mixed any number of times, when the pad's framerate is inferior to the output framerate. This was introduced by my patch in https://bugzilla.gnome.org/show_bug.cgi?id=782962, this patch also correctly addresses the initial issue. 2017-07-03 21:08:02 -0400 Nicolas Dufresne * tests/check/elements/appsrc.c: test-appsrc: Test state when blocked in caps Event In GStreamer 1.12 and older, the GstBaseSrc live lock used to be held while create() virtual function was called. As appsrc pushes serialized event in that virtual function, we ended up with some deadlock while setting the state to NULL. This test simulates this situation. https://bugzilla.gnome.org/show_bug.cgi?id=783301 2017-06-27 02:21:22 +0200 Mathieu Duponchelle * gst/playback/gsturidecodebin.c: uridecodebin: aggregate topology messages This makes it possible for GstDiscoverer to work with sources that have multiple source pads and hence will trigger the creation of multiple decodebin instances such as rtspsrc. Based on the work of Vineeth TM https://bugzilla.gnome.org/show_bug.cgi?id=754178 2017-07-01 17:45:19 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: * tests/check/elements/textoverlay.c: textoverlay: ensure text buffer has writable metadata when modifying 2017-07-01 17:44:22 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: textoverlay: adjust a valid text buffer duration to fall within segment ... as expected later on when end time is used to determine end running time. Otherwise the latter is determined as NONE and the resulting text buffer is then used indefinitely. 2017-06-30 20:24:14 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: textoverlay: make debug statement more informative 2017-06-29 09:02:20 +0900 Jimmy Ohn * gst/encoding/gstencodebin.c: encodebin: Simplify the are_raw_caps function Remove unnecessary if statement in are_raw_caps function. we can use result returned by gst_caps_can_intersect quite simple. https://bugzilla.gnome.org/show_bug.cgi?id=784312 2017-06-23 16:18:43 -0400 Thibault Saunier * meson.build: meson: Allow using glib as a subproject 2017-06-26 09:44:46 +0100 Tim-Philipp Müller * meson.build: meson: fix with-package-name option https://bugzilla.gnome.org/show_bug.cgi?id=784082 2017-06-24 22:03:21 +0200 Mark Nauwelaerts * gst/subparse/gstsubparse.c: subparse: ensure serialized sending of segment event at proper time 2017-06-15 11:21:13 -0400 Thibault Saunier * ext/alsa/gstalsasrc.c: alsasrc: Handle newly added GstStateChange values https://bugzilla.gnome.org/show_bug.cgi?id=783798 2017-06-20 10:06:01 +0300 Sebastian Dröge * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: * win32/common/libgstpbutils.def: * win32/common/libgstrtsp.def: libs: Export boxed type copy/free functions for the remaining types 2017-06-14 17:04:18 -0400 Thibault Saunier * gst/playback/gsturisourcebin.c: urisourcebin: Call do_async_done when source state change returns NO_PREROLL Otherwise for RTSP streams for example, the pipeline will never go to PLAYING as it will be missing an ASYNC_DONE message. https://bugzilla.gnome.org/show_bug.cgi?id=780099 2017-06-12 15:38:53 -0400 Nicolas Dufresne * gst/rawparse/gstrawvideoparse.c: rawvideoparse: Fix missing VideoMeta The base class is trying to align the processed data, but it endup removing the GstVideoMeta. That caused wrong result. Instead, just copy from the process function with the appropriate alignment. https://bugzilla.gnome.org/show_bug.cgi?id=781204 2017-06-12 10:24:43 +0300 Sebastian Dröge * gst/playback/gsturisourcebin.c: urisourcebin: Use downloadbuffer element And only set low-percent/high-percent if not using downloadbuffer, just like in old uridecodebin. using the watermark based buffering causes playback to hang never finish buffering with downloadbuffer. 2017-06-08 12:35:23 +0530 Arun Raghavan * gst/encoding/gstencodebin.c: encodebin: Don't try rate adjustment before the first buffer With both audiorate and videorate, it seems more sensible to apply rate adjustments after the first buffer appears. For example, with v4l2src, there is often a small delay before the first video buffer turns up, and this can cause a stuttery start because of videorate trying to ensure a perfect stream. 2017-06-08 12:34:24 +0530 Arun Raghavan * gst/encoding/gstencodebin.c: encodebin: Don't set audiorate property before NULL check 2017-06-07 11:41:05 -0400 Thibault Saunier * tests/check/meson.build: meson: Do not use path separator in test names Avoiding warnings like: "WARNING: Target "elements/audioamplify" has a path separator in its name." 2017-06-06 11:08:00 +0530 Arun Raghavan * gst-libs/gst/video/navigation.c: navigation: Add some validation while sending key/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=783330 2017-06-01 13:01:03 -0700 Scott D Phillips * gst-libs/gst/video/navigation.c: navigation: Add introspection annotations for some output parameters The missing annotations prevented proper usage from introspected bindings like python. https://bugzilla.gnome.org/show_bug.cgi?id=783330 2017-06-05 23:57:48 +0100 Tim-Philipp Müller * ext/libvisual/meson.build: * meson.build: meson: use dep.get_pkgconfig_variable() instead of calling pkg-config ourselves. 2017-06-02 09:41:59 +0200 Wim Taymans * gst/audioconvert/gstaudioconvert.c: audioconvert: resize output buffer to correct size If we are using a downstream bufferpool we need to set the size of the buffer to our output size. 2017-06-01 13:28:42 -0700 Scott D Phillips * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update orc generated files Includes updates from: 103d265 Fix RGBA and ABGR pack/unpack on big endian cpu https://bugzilla.gnome.org/show_bug.cgi?id=783328 2017-06-01 17:45:41 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc.orc: Fix RGBA and ABGR pack/unpack on big endian cpu The pack and unpack functions for RGBA and ABGR only work for little endian cpus. Add variants for big endian as well. 2017-06-01 17:02:24 +0200 Wim Taymans * win32/common/libgstallocators.def: * win32/common/libgstapp.def: * win32/common/libgstaudio.def: * win32/common/libgstpbutils.def: * win32/common/libgstrtp.def: * win32/common/libgstrtsp.def: * win32/common/libgstvideo.def: Revert "update def files" This reverts commit 2e6dba811437e31af7e6071efe03b6e3751b2289. 2017-06-01 16:40:40 +0200 Wim Taymans * win32/common/libgstallocators.def: * win32/common/libgstapp.def: * win32/common/libgstaudio.def: * win32/common/libgstpbutils.def: * win32/common/libgstrtp.def: * win32/common/libgstrtsp.def: * win32/common/libgstvideo.def: update def files 2017-05-31 12:30:40 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin2: Set a time limit on "upstream" multiqueues" This reverts commit 07dc9ba0712c26be86f031fb6f77bee177cbb828. It causes timeouts in validate because queues run full before prerolling. 2017-01-17 13:52:20 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Set a time limit on "upstream" multiqueues Those multiqueue are the ones dealing with adaptive demuxers. They should have a time limit set so that they don't end up buffering too much data. They would previously be set with no limits at all, which would cause them to grow indefinitely until downstream blocks. 2017-05-31 00:15:46 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/gstdiscoverer.c: gst-discoverer: use state changes instead of ASYNC_DONE. And monitor no_more_pads. With live sources such as rtsp, uridecodebin only creates its child decodebins between PAUSED and PLAYING. This means that the ASYNC_DONE it posts when getting NO_PREROLL in its change_state method gets immediately propagated by the GstBin parent class, as opposed to a situation where a decodebin has been added to it already, and has posted ASYNC_START. The proposed solution, instead of simply waiting for ASYNC_DONE, and finishing prematurely in that case, waits for three conditions to be true: * the uridecodebin needs to have emitted no_more_pads * its current state must be PAUSED if not live, PLAYING otherwise * There must be no "pending subtitle pads", ie pads where we haven't received tags yet. All these conditions are checked in the message handler, as we post custom messages on it when we get subtitle tags or no_more_pads. https://bugzilla.gnome.org/show_bug.cgi?id=783257 2017-05-29 13:44:01 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: oggdemux: fix artifacts at chain boundaries https://bugzilla.gnome.org/show_bug.cgi?id=782132 2017-05-26 18:02:12 +0200 Edward Hervey * ext/pango/gstbasetextoverlay.c: pango: Handle failure to multiply fractions And set PAR back to the default value of 1:1 CID #1409851 2017-05-05 12:48:41 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: oggdemux: fix clipping more samples than exist in the first packet This can happen in Opus (and maybe other codecs ?), and would cause failure to play. https://bugzilla.gnome.org/show_bug.cgi?id=782157 2017-05-22 23:06:01 +0200 Olivier Crête * tests/check/elements/audiomixer.c: tests: Make audiomixer test_clip verify the resulting timestamps too 2017-05-23 00:52:27 +0200 Olivier Crête * tests/check/elements/audiointerleave.c: tests: audiointerleave: Remove drain with manual clock Now that the queries go onto the queue, you may need to pull the crank in order for them to be processed, making this test difficult. 2017-05-23 08:43:26 +0200 Olivier Crête * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: Protect videoinfo with object lock The videoinfo is set in the streaming thread, but can be read by any thread from the various queries, so protect it with the object lock. 2017-05-20 19:00:23 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: audioaggregate: Don't hold object locks across calls to aggregate_one https://bugzilla.gnome.org/show_bug.cgi?id=782878 2017-05-21 17:42:55 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: pbutils: fix stand-alone version header include Include gst headers for GST_EXPORT. 2017-05-21 14:37:05 +0100 Tim-Philipp Müller * Makefile.am: * config.h.meson: * meson.build: meson: don't need config.h.meson any longer 2017-05-21 18:31:59 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: Remove unused negotiated member This is now all handled in GstAggregator, so this code is not called anymore. 2017-05-21 15:44:02 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Declare that it supports the video meta on input https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 15:30:10 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl*mixer: Use propose_allocation from the GstAggregator base class https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-20 17:59:19 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Use downstream allocator and params if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 18:10:29 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Create normal video pool as a fallback https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:35:43 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: glbasemixer: Remove own decide_allocation, use GstAggregator's https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:30:06 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: glbasemixer: Use aggregator for allocation handling https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:25:16 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Get the buffer from the pool if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-21 12:34:08 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: textoverlay: optionally scale text to ensure proper display text aspect ratio ... by prescaling with an inverse aspect scaling as applied by video scaling 2017-05-21 12:41:53 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Return to parent on reconfigure The caps negotiation is now in the parent, so need to return there if a reconfiguration is needed, otherwise it will loops forever. 2017-05-21 10:49:20 +0100 Tim-Philipp Müller * tests/check/meson.build: meson: only check for c++ compiler once 2017-05-21 09:37:14 +0100 Tim-Philipp Müller * meson.build: * tests/check/meson.build: * tests/examples/overlay/meson.build: meson: make C++ compiler optional It's only used to check our headers are C++ clean and for the Qt example. 2017-05-20 17:47:04 +0200 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: audiointerleave: Take object lock while modifying channel count 2017-01-10 15:59:55 +0100 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't queue frames in TRICKMODE_KEY_UNITS When the input is TRICKMODE_KEY_UNITS, we expect to only receive keyframes which we want to decode/push immediately. Therefore don't queue them. If upstream didn't send just keyframes (which is the ideal situation), two different things can happen: 1) Either the subclass checks the segment flags and properly configures the decoder implementation to only decode/output keyframes, 2) Or the subclass really decodes and outputs everything, in which case the reverse frames will end up arriving "late" downstream (and will be dropped). If upstream did properly send GOP in reverse order, we still end up just showing keyframes (but at the overhead of decoding everything). https://bugzilla.gnome.org/show_bug.cgi?id=777094 2017-04-04 13:19:02 +0200 Guillaume Desmottes * gst/videorate/gstvideorate.c: videorate: stop copying buffers in drop-only mode gst_video_rate_flush_prev() ensures that the pushed buffer is writable by calling gst_buffer_make_writable() on videorate->prevbuf. In drop-only mode we always push buffers directly when they are received from GstBaseTransform (gst_video_rate_transform_ip()) and do not keep them around. GstBaseTransform already ensures that those buffers are writable so there is no need to do it twice. This change saves us from copying buffers in drop-only mode as we no longer calls gst_buffer_make_writable() with a buffer having a refcount of 2 (one ref owned by GstBaseTransform and one in videorate->prevbuf). https://bugzilla.gnome.org/show_bug.cgi?id=780767 2017-04-04 13:16:42 +0200 Guillaume Desmottes * gst/videorate/gstvideorate.c: videorate: factor out gst_video_rate_push_buffer() No semantic change, just factor out this function from gst_video_rate_flush_prev(). I'm about to use it to change the 'drop-only' code path. https://bugzilla.gnome.org/show_bug.cgi?id=780767 2017-05-20 14:24:57 +0200 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: aggregator: add simple support for caps handling Modelled off the videoaggregator caps handling as that seems the most mature aggregtor-using implementation that has caps handling there is. https://bugzilla.gnome.org/show_bug.cgi?id=776931 2017-05-20 15:56:16 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.h: aggregator: Remove unused GST_FLOW_NOT_HANDLED 2017-05-20 14:24:57 +0200 Matthew Waters * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: * tests/check/elements/audiointerleave.c: aggregator: add simple support for caps handling Modelled off the videoaggregator caps handling as that seems the most mature aggregtor-using implementation that has caps handling there is. https://bugzilla.gnome.org/show_bug.cgi?id=776931 2017-04-04 11:25:43 +0300 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: videoaggregator: delay using new caps from a sink pad until the next buffer in the queue is taken When caps changes while streaming, the new caps was getting processed immediately in videoaggregator, but the next buffer in the queue that corresponds to this new caps was not necessarily being used immediately, which resulted sometimes in using an old buffer with new caps. Of course there used to be a separate buffer_vinfo for mapping the buffer with its own caps, but in compositor the GstVideoConverter was still using wrong info and resulted in invalid reads and corrupt output. This approach here is more safe. We delay using the new caps until we actually select the next buffer in the queue for use. This way we also eliminate the need for buffer_vinfo, since the pad->info is always in sync with the format of the selected buffer. https://bugzilla.gnome.org/show_bug.cgi?id=780682 2016-07-06 16:39:17 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: aggregator: Delay clipping to output thread This is required because the synchronized events like caps or segments may only be processed on the output thread. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 17:28:11 -0400 Olivier Crête * tests/check/elements/compositor.c: tests: Test caps using query Sending an event can accepted event if the caps were rejected because the event could be queued and processed later. Also send a drain query in the caps test to make sure that the event has been processed. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 16:41:44 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: aggregator: Simplify clip function The return value was ignored anyway https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-20 14:46:51 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add options to set package name and origin https://bugzilla.gnome.org/show_bug.cgi?id=782172 2017-05-19 18:38:45 +0200 Jan Schmidt * tests/check/libs/videodecoder.c: Fix unit test for videodecoder now outputting mono multiview by default 2017-03-24 11:43:06 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Output mono multiview caps if none specified Always put multiview-caps onto the output caps, assuming mono if we've got no other information. It's still easy for downstream elements to override using a capssetter or event probe if desired. https://bugzilla.gnome.org/show_bug.cgi?id=776172 2017-05-18 13:24:19 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Clean up more fields to decide if parent/child streams are equivalent https://bugzilla.gnome.org/show_bug.cgi?id=782780 2017-05-18 13:13:58 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: Revert "discoverer: Consider parent/child streams the same if they have caps with the same name" This reverts commit 478b7a8eb49d285c3ff0b73e1fe2929b9418be91. video/mpeg,systemstream=true / false distinguishes between container and elementary stream. 2017-05-18 11:21:55 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Consider parent/child streams the same if they have caps with the same name Child streams could have more accurate width/height or various other information added. If they have the same name, they are likely to be the same streams. https://bugzilla.gnome.org/show_bug.cgi?id=782697 2017-05-18 11:02:51 +0300 Sebastian Dröge * gst/playback/gsturisourcebin.c: urisourcebin: Unref query with gst_query_unref() Not gst_object_unref(). 2017-05-17 14:44:59 +0530 vijay * ext/alsa/gstalsa.c: alsa: Add mapping for PCM F32/F64 formats Fix enables float pcm formats for both the alsasrc and alsasink https://bugzilla.gnome.org/show_bug.cgi?id=782695 2017-05-15 19:47:22 +0300 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/video/gstvideopool.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimageallocator.c: * sys/xvimage/xvimagepool.c: gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-15 14:20:32 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioclock.c: audioclock: Sink the reference in the constructor This is now needed as GstClock does not do that internally anymore, because that broke bindings. And mark the function correctly as (transfer full), which it already was before. https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-15 14:19:15 +0300 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: allocators: Annotate constructors with (transfer floating) GstAllocator is a GstObject and as such uses floating references. https://bugzilla.gnome.org/show_bug.cgi?id=702960 2017-04-28 23:03:22 -0400 Nicolas Dufresne * ext/alsa/gstalsa.h: alsasink: Accept MPEG 1 layer 3 version 2.5 https://bugzilla.gnome.org/show_bug.cgi?id=781929 2017-04-28 23:02:50 -0400 Nicolas Dufresne * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Accept MPEG 1 layer 3 version 2.5 https://bugzilla.gnome.org/show_bug.cgi?id=781929 2017-05-16 14:05:52 -0400 Nicolas Dufresne * gst/compositor/Makefile.am: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient. 2017-05-16 14:05:52 -0400 Nicolas Dufresne * gst/audiomixer/Makefile.am: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient. 2017-05-16 13:42:07 -0400 Nicolas Dufresne * configure.ac: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/opus/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/gio/Makefile.am: * gst/pbtypes/Makefile.am: * gst/playback/Makefile.am: * gst/rawparse/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient. 2017-05-16 01:09:38 +0100 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/colorbalance.h: * gst-libs/gst/video/colorbalancechannel.h: * gst-libs/gst/video/gstvideoaffinetransformationmeta.h: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/gstvideotimecode.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/navigation.h: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/video-chroma.h: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-dither.h: * gst-libs/gst/video/video-event.h: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-multiview.h: * gst-libs/gst/video/video-overlay-composition.h: * gst-libs/gst/video/video-resampler.h: * gst-libs/gst/video/video-scaler.h: * gst-libs/gst/video/video-tile.h: * gst-libs/gst/video/video.h: * gst-libs/gst/video/video_mkenum.py: * gst-libs/gst/video/videodirection.h: * gst-libs/gst/video/videoorientation.h: * gst-libs/gst/video/videooverlay.h: video: mark symbols explicitly for export with GST_EXPORT 2017-05-16 01:03:45 +0100 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gsttagmux.h: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tag_mkenum.py: * gst-libs/gst/tag/xmpwriter.h: tag: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:25:51 +0100 Tim-Philipp Müller * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.h: sdp: mark symbols explicitly for export with GST_EXPORT 2017-05-16 01:02:18 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.h: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/rtsp/rtsp_mkenum.py: rtsp: mark symbols explicitly for export with GST_EXPORT 2017-05-16 01:00:09 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/rtp/gstrtphdrext.h: * gst-libs/gst/rtp/gstrtppayloads.h: * gst-libs/gst/rtp/rtp_mkenum.py: rtp: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:57:36 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.h: * gst-libs/gst/riff/riff-read.h: riff: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:55:25 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/codec-utils.h: * gst-libs/gst/pbutils/descriptions.h: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstaudiovisualizer.h: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/pbutils/missing-plugins.h: * gst-libs/gst/pbutils/pbutils.h: * gst-libs/gst/pbutils/pbutils_mkenum.py: pbutils: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:46:34 +0100 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/app_mkenum.py: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: app: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:45:47 +0100 Tim-Philipp Müller * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.h: fft: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:45:41 +0100 Tim-Philipp Müller * common: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-channel-mixer.h: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/audio-quantize.h: * gst-libs/gst/audio/audio-resampler.h: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/audio_mkenum.py: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioiec61937.h: * gst-libs/gst/audio/gstaudiometa.h: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/streamvolume.h: audio: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:30:34 +0100 Tim-Philipp Müller * gst-libs/gst/allocators/gstdmabuf.h: * gst-libs/gst/allocators/gstfdmemory.h: allocators: mark symbols explicitly for export with GST_EXPORT 2017-05-16 00:21:57 +0100 Tim-Philipp Müller * gst-libs/ext/.gitignore: * gst-libs/ext/Makefile.am: gst-libs: Remove empty ext subdir 2017-05-15 16:20:01 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.h: rtpbasedepayload: fix class description in docs 2017-05-11 11:12:52 +0100 Vincent Penquerc'h * tests/examples/audio/volume.c: examples: fix element leak in volume example 2017-05-11 10:59:21 +0100 Vincent Penquerc'h * tests/examples/playback/playback-test.c: playback-test: guard against crash on failure to create pipeline It can happen when giving incorrect parameters (ie, a URI when expecting a pipeline, etc) 2017-05-07 11:47:40 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: fix whole example launch line actually 2017-05-07 11:41:06 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: remove extraneous \ from example launch line in docs 2017-05-04 23:55:20 +0100 Tim-Philipp Müller * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: * meson.build: g-i: no need to load registry in g-i scanner 2017-05-04 18:59:14 +0300 Sebastian Dröge * configure.ac: * meson.build: Back to development === release 1.12.0 === 2017-05-04 15:37:27 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * meson.build: Release 1.12.0 2017-05-04 15:04:19 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-05-03 16:02:19 +0100 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin2: fix use after free from demuxer flush pad probe In some cases, we could get a flush-stop event after the chain structure containing the demuxer was freed. https://bugzilla.gnome.org/show_bug.cgi?id=782095 2017-05-02 14:32:02 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: Revert "videorate: In reverse playback mode, don't output the first buffer with ts=segment.stop" This reverts commit e6736e992576d174707af339aeb908722492ebca. This one is for after 1.12.0 and shouldn't have been merged yet. 2017-05-02 14:31:14 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: libs: Check if meta transform_func is NULL before using it https://bugzilla.gnome.org/show_bug.cgi?id=782050 2017-04-28 15:24:43 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: In reverse playback mode, don't output the first buffer with ts=segment.stop Instead go backwards before segment.stop based on the framerate or the next buffers end timestamp. Otherwise the first buffer will usually be dropped because outside the segment. https://bugzilla.gnome.org/show_bug.cgi?id=781899 2017-05-01 14:31:07 -0300 Vitor Massaru Iha * ext/pango/gsttextoverlay.c: textoverlay: Removing duplicated command. gst-launch-1.0 was duplicated on textoverlay example. https://bugzilla.gnome.org/show_bug.cgi?id=782018 2017-04-28 15:54:04 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: playbin: minor docs fix The "frame" property is no more, it's "sample" these days. === release 1.11.91 === 2017-04-27 17:25:49 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * meson.build: Release 1.11.91 2017-04-27 15:55:22 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-04-27 15:22:58 +0300 Sebastian Dröge * po/LINGUAS: * po/fur.po: po: Update translations 2017-04-24 20:27:42 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 60aeef6 to 48a5d85 2017-04-19 11:47:30 +0200 Guillaume Desmottes * gst-libs/gst/video/video.h: video: fix typo in GstVideoAlignment doc https://bugzilla.gnome.org/show_bug.cgi?id=781490 2017-04-13 16:40:02 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio-resampler.h: audio: resampler: fix typos in docs 2017-04-12 16:06:45 +0200 Rico Tzschichholz * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: meson: Pass --c-include accordingly to GIR builds 2017-03-08 15:01:13 -0300 Thibault Saunier * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: docs: Port all docstring to gtk-doc markdown 2017-03-08 15:01:13 -0300 Thibault Saunier * ext/gl/gstglmosaic.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: docs: Port all docstring to gtk-doc markdown 2017-04-12 09:58:49 +0100 Tim-Philipp Müller * ext/theora/gsttheoraparse.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/tag/id3v2frames.c: * gst/typefind/gsttypefindfunctions.c: * tests/check/libs/tag.c: * tests/icles/test-reverseplay.c: No need for newlines in debug log statements 2017-04-10 15:35:41 -0400 Olivier Crête * tools/gst-device-monitor.c: tools: gst-device-monitor: Print gst-launch example Print a gst-launch-1.0 line that could get to this device, useful as we don't have other ways to see what it does exactly. This may not work if the create element has configurations other than properties. https://bugzilla.gnome.org/show_bug.cgi?id=781152 2017-04-11 10:47:29 +0100 Tim-Philipp Müller * .gitignore: .gitignore: ignore all generated enumtypes files 2017-04-11 10:46:50 +0100 Tim-Philipp Müller * Makefile.am: meson: dist more meson build files 2017-04-11 11:44:48 +0300 Claudio Saavedra * gst-libs/gst/app/meson.build: meson: install gstappsink.h https://bugzilla.gnome.org/show_bug.cgi?id=781168 2017-04-11 11:16:33 +0300 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: volume: Store volume as a double for consistency with the property type And the potential increased precision, which shouldn't matter much here. https://bugzilla.gnome.org/show_bug.cgi?id=781149 2017-04-10 23:48:59 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From 39ac2f5 to 60aeef6 2017-04-10 14:29:20 +0300 Sebastian Dröge * gst-libs/gst/tag/tag.h: Revert "tag: Fix enum nicks for backwards compatibility" This reverts commit 595b29519ab6850811ed2e68b75e29a2240a5432. Bindings are not using the nicks but the actual enum names. 2017-04-10 14:25:30 +0300 Sebastian Dröge * gst-libs/gst/app/Makefile.am: * gst-libs/gst/tag/Makefile.am: app/tag: Fix build with srcdir!=builddir 2017-04-10 14:02:01 +0300 Sebastian Dröge * gst-libs/gst/tag/tag.h: tag: Fix enum nicks for backwards compatibility The enum values got the wrong name at some point, something to fix for 2.0. 2017-04-10 13:55:58 +0300 Rico Tzschichholz * gst-libs/gst/app/Makefile.am: * gst-libs/gst/tag/Makefile.am: app/tag: Add missing sources/headers to the GIR build 2017-04-09 12:54:12 +0300 Sebastian Dröge * gst-libs/gst/tag/meson.build: meson: Define missing variable 2017-04-09 12:51:52 +0300 Sebastian Dröge * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/meson.build: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tag_mkenum.py: * gst-libs/gst/tag/tags.c: tag: Generate GLib enums/flags with glib-mkenums 2017-04-09 12:29:55 +0300 Sebastian Dröge * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/app_mkenum.py: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/app/meson.build: app: Generate GLib enums with glib-mkenums 2017-04-09 12:19:22 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: It's (transfer none), not (transfer-none) 2017-04-09 11:48:27 +0300 Sebastian Dröge * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/meson.build: * win32/common/libgstaudio.def: audio: Generate audiobasesink/src and audiocdsrc GLib enums automatically And ensure that GstAudioBaseSrcSlaveMethod's re-timestamp stays re-timestamp and doesn't become retimestamp. 2017-04-06 22:38:34 +0300 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: timecode: Fix invalid drop-frame timecode right before a new second The previous fix was only working for non-drop-frame timecodes. https://bugzilla.gnome.org/show_bug.cgi?id=779866 2017-04-07 18:49:52 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do not mix the same buffer twice when EOS. When entering this code path, we know that: We received EOS on this pad. We consumed all its buffers. In any case, we want to replace vaggpad->buffer with NULL, otherwise we will end up mixing the same buffer twice. https://bugzilla.gnome.org/show_bug.cgi?id=781037 === release 1.11.90 === 2017-04-07 16:31:10 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * meson.build: Release 1.11.90 2017-04-07 15:12:37 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-04-07 15:06:07 +0300 Sebastian Dröge * po/hu.po: po: Update translations 2017-04-03 16:41:49 +1000 Matthew Waters * gst-libs/gst/sdp/gstsdpmessage.c: * tests/check/libs/sdp.c: sdp/media: caps_from_media() don't modify the input media Performing a gst_sdp_media_get_caps_from_media() would result in changing fields in the GstSDPMedia violating the const tag in the function declaration. Before there would be a line with a=rtpmap:96 VP8/90000 after, that attribute would only contain a=rtpmap:96 Fix by performing modifications on duplicated strings instead of on the internal values. Also add a simple test for checking that the representation doesn't change by a gst_sdp_media_get_caps_from_media() 2017-04-03 15:08:06 +1000 Matthew Waters * gst-libs/gst/sdp/gstsdpmessage.c: sdp: add g_return*_if_fail assertions on invalid inputs Prevents some programming errors and invalid modifications. 2017-04-03 15:05:47 +1000 Matthew Waters * gst-libs/gst/sdp/gstsdpmessage.c: sdp/message: fix segfault copying NULL in the boxed copy impl Allows passing NULL as a value to g_object_set and as signal parameters without crashing. 2017-03-31 13:43:52 +0100 Vincent Penquerc'h * gst-libs/gst/video/video-converter.c: video-converter: fix scaler leak https://bugzilla.gnome.org/show_bug.cgi?id=780764 2017-03-31 15:59:19 +0100 Vincent Penquerc'h * gst/encoding/gstencodebin.c: encodebin: fix list leak when requesting a new pad https://bugzilla.gnome.org/show_bug.cgi?id=780769 2017-03-31 23:40:05 +1300 Douglas Bagnall * gst/audiomixer/gstaudiointerleave.c: audiointerleave: don't overflow channel map with >64 channels When there are more than 64 channels, we don't want to exceed the bounds of the ordering_map buffer, and in these cases we don't want to remap at all. Here we avoid doing that. Based on a patch originally for plugins-good/interleave in https://bugzilla.gnome.org/show_bug.cgi?id=780331 2017-03-28 14:31:34 -0300 Thibault Saunier * tests/check/meson.build: meson: Use get_pkgconfig_variable instead of calling pkg-config ourself It is avalaible in meson 0.36 which is now are requirement 2017-03-27 22:59:17 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Set removed flag when removing buffering msg Forgot to set the flag, resulting in a missed check for sending 100% in some cases. Spotted by Coverity. CID: 1403263 2017-03-26 23:33:24 +0200 Francisco Velazquez * docs/plugins/gst-plugins-base-plugins-docs.sgml: docs: Fix broken URL in reference manual https://bugzilla.gnome.org/show_bug.cgi?id=780566 2017-03-21 13:12:47 +0000 Vincent Penquerc'h * gst/rawparse/gstrawbaseparse.c: rawvideoparse: fix assert on large width/height in caps https://bugzilla.gnome.org/show_bug.cgi?id=776446 2017-03-27 00:26:53 +1100 Jan Schmidt * gst/typefind/gsttypefindfunctions.c: typefind: Expand the search range for HLS detection HLS files can have arbitrary extra tags in them, and those can be quite long lines. We need to search further than 256 bytes sometimes just to get past the first few lines of the file. Make the limit 4KB, which matches a typical input block size and should hopefully cover every crazy input. https://bugzilla.gnome.org/show_bug.cgi?id=780559 2017-03-24 18:51:12 -0300 Thibault Saunier * tests/check/meson.build: meson: Fix build failure from previous commit Mistake while rebasing 2017-03-24 18:46:34 -0300 Thibault Saunier * tests/check/meson.build: meson: Specify pluginsdir setting the environment And do not specify the separator as this is OS dependent and will be handled properly by default 2017-03-24 17:00:23 -0400 Nicolas Dufresne * tests/check/meson.build: meson: Reuse plugins_install_dir for building env 2017-03-24 16:16:26 -0400 Nicolas Dufresne * tests/check/meson.build: meson: Fix plugin path when running test The path was only adding the build root. We need to also add the prefix for the case we work with installed setup. As the search is recursive, I had to remove any subdirectory to the already present build root. 2017-03-15 17:28:48 -0400 Nicolas Dufresne * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * tests/check/elements/rawvideoparse.c: rawvideoparse: Rename frame-stride in to frame-size The term stride is confusing here, since the stride is always use to signal the pixel row size of an image (including padding). Also a frame may have a single stride, which adds to the confusion. This patch uses frame-size, which simply indicate the frame size in the case the images have some padding in between. https://bugzilla.gnome.org/show_bug.cgi?id=780053 2017-03-15 15:28:49 -0400 Nicolas Dufresne * gst/rawparse/gstrawvideoparse.c: * tests/check/elements/rawvideoparse.c: rawvideoparse: Use GstValueArray for strides and offsets This allow using those property through gst-launch-1.0. This type gained a deserilizer recently. The syntax is: . Note that we also use the type int instead of uint to avoid having to cast when specifying the values. The deserilizers assume int by default. https://bugzilla.gnome.org/show_bug.cgi?id=780053 2017-03-23 13:56:19 +0800 Haihua Hu * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: every stream need keep their own send_gap_event flag When a clip has video audio and subtitle, if need send gap event to audio and subtitle, we should make sure all has been sent, so need every stream keep one send_gap_event. https://bugzilla.gnome.org/show_bug.cgi?id=780429 2017-03-23 00:21:44 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Mention which queue is being linked in debug output 2017-03-20 17:45:35 +0000 Tim-Philipp Müller * tests/examples/seek/jsseek.c: examples: jsseek: fix typo Spotted by Yaakov Selkowitz 2017-03-20 16:57:58 +0000 Tim-Philipp Müller * tests/examples/seek/jsseek.c: examples: jsseek: update for removal of mad plugin https://bugzilla.gnome.org/show_bug.cgi?id=776140 2017-03-20 17:20:36 +0530 Arun Raghavan * gst-libs/gst/video/convertframe.c: convertframe: Fix async video sample conversion with non-default context The GSource for dealing with timeouts in gst_video_convert_sample_async() might be attached to a non-default context, so we should not be using g_source_remove() on the returned ID. The correct thing to do is to keep a reference to the actual GSource and then call g_source_destroy() on it. https://bugzilla.gnome.org/show_bug.cgi?id=780297 2017-03-19 13:51:24 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Fix typefind list leak https://bugzilla.gnome.org/show_bug.cgi?id=780257 2017-03-17 21:39:58 +0100 Stefan Sauer * tests/check/elements/adder.c: adder: cleanup the tests Take a first stab at cleaning up the tests. Extract common code. Make sure we actually verify things. 2017-03-18 01:10:54 +1100 Jan Schmidt * gst/playback/gstdecodebin2.c: decodebin: Close a small race posting 100% buffering When posting 100% buffering due to removing the last buffering element, we still need to hold the posting lock as well, to avoid any race with other elements that might post a buffering message at that exact moment 2017-03-18 00:54:55 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Fix buffering message aggregation. Add locking, and handle EOS properly now that urisourcebin uses custom events in place of real EOS events, so we need to manually remove buffering messages and potentially post 100% in that situation 2017-03-18 00:06:02 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Store slot info on the queue object too The buffering message handling tries to look up the slot info on the queue itself. 2017-03-16 13:56:10 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Add debug output tracking decode-after-flush Track how long it takes to generate the first buffer after a flush as a simple measure of how efficient the decoder is at skipping / rushing to get to the first decode. 2017-03-16 11:27:47 +1100 Jan Schmidt * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Publish multiview-mode info in the caps Don't allow downstream to accidentally pretend that the output is anything than a mono or single-eye left/right view. https://bugzilla.gnome.org/show_bug.cgi?id=776172 2017-03-17 13:43:04 +0200 Sebastian Dröge * gst-libs/gst/video/video-format.c: video-format: Shift correctly when packing I420_12BE 2017-03-17 13:14:58 +0200 Sebastian Dröge * gst-libs/gst/video/video-format.h: video-format: Order all formats in GST_VIDEO_FORMATS_ALL like in the enum And remove duplicated entries. 2017-03-17 15:59:14 +0530 Arun Raghavan * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Mark format caps as transfer-none in profile creation 2017-03-16 17:37:34 +0200 Sebastian Dröge * gst-libs/gst/video/video-format.h: video-format: Add Since markers to all new formats from 1.2 https://bugzilla.gnome.org/show_bug.cgi?id=780100 2017-03-16 17:12:17 +0200 Sebastian Dröge * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add I420/I422/Y444_12LE/BE and GBRA video formats https://bugzilla.gnome.org/show_bug.cgi?id=780100 2017-03-16 11:45:42 +0100 Emeric Grange * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add GBRA_10LE/BE, GBR_12LE/BE, GBRA_12LE/BE pixel formats With additional bugfixes from Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=780100 2017-03-14 16:30:18 -0400 Olivier Crête * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: multifdsink: Remove GValueArray from the doc It's been a GstStructure for a long time. Also fix a typo in the name of one of the fields. 2017-03-12 11:35:25 -0400 Nicolas Dufresne * Makefile.am: Add old libgstencodebin.so to cruft list This will help fixing clash in gst-uninstalled setup. https://bugzilla.gnome.org/show_bug.cgi?id=779344 2017-01-23 16:36:11 -0300 Thibault Saunier * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/streamvolume.c: * gst-libs/gst/fft/gstfft.c: * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts32.c: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstpluginsbaseversion.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/riff/riff.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtppayloads.c: * gst-libs/gst/rtp/gstrtppayloads.h: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/tags.c: * gst-libs/gst/tag/xmpwriter.c: * gst-libs/gst/video/colorbalance.c: * gst-libs/gst/video/colorbalancechannel.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-dither.c: * gst-libs/gst/video/video-event.c: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/videodirection.c: * gst-libs/gst/video/videoorientation.c: * gst-libs/gst/video/videooverlay.c: * gst/adder/gstadder.c: * gst/app/gstapp.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * gst/gio/gstgiosink.c: * gst/gio/gstgiosrc.c: * gst/gio/gstgiostreamsink.c: * gst/gio/gstgiostreamsrc.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturisourcebin.c: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawvideoparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstsocketsrc.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: docs: Convert gtkdoc comments to markdown Modernizing the documentation, making it simpler to read an modify and allowing us to possibly switch to hotdoc in the future. 2017-03-10 17:40:13 +0200 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Fix invalid timecode right before a new second When initializing a timecode from a GDateTime, and the remaining time until the new second is less than half a frame (according to the given frame rate), it would lead to the creation of an invalid timecode, e.g. 00:00:00:25 (at 25 fps) instead of 00:00:01:00. Fixed. https://bugzilla.gnome.org/show_bug.cgi?id=779866 2017-03-10 18:22:27 +1100 Matthew Waters * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix build error on i386 Use G_GUINT64_FORMAT for guint64 values. Introduced by fcb63e77a9de42cfb50da03a4925b06704006be3 Found by Alexander Larsson gstvideodecoder.c: In function 'gst_video_decoder_have_frame': gstvideodecoder.c:3312:51: error: format '%u' expects argument of type 'unsigned int', but argument 8 has type 'guint64 {aka long long unsigned int}' [-Werror=format=] 2017-03-04 10:08:04 -0500 Nicolas Dufresne * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * gst/encoding/Makefile.am: * gst/encoding/meson.build: * sys/xvimage/meson.build: Fix plugin filenames to match pugin names - libgstencodebin.so is now libgstencoding.so - libgstximage.so is now libgstximagesink.so (meson only) https://bugzilla.gnome.org/show_bug.cgi?id=779344 2017-03-09 01:40:06 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Shrink queue2 max-size-time buffering The expanded 4 second buffering was making radio streams that are being delivered at real-time speeds too slow. We might need a better plan for matching the queue2 size to incoming bitrate in the absence of tag information or timestamping. In uridecodebin, it used tags on the output of decodebin to adjust the queue2 buffering, but urisourcebin doesn't have that view - decodebin is downstream from us. 2017-03-08 15:47:52 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Unref GDateTime in error cases 2017-03-07 14:59:36 +0200 Sebastian Dröge * gst/playback/gstplaybin3.c: * gst/playback/gsturisourcebin.c: playbin3/urisourcebin: Enable buffering by default This only has effect on network streams in these elements, and by enabling it by default we get the same behaviour as in playbin2. 2017-03-07 00:25:03 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: improve verbose output of property notifications Use new message notify API and print caps and taglists in a nicer to read way, just like gst-launch-1.0 does nowadays, without escaping everything three times. 2017-03-03 16:20:15 +0200 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: redo src caps negotiation if a sink pad's caps have changed in the meantime https://bugzilla.gnome.org/show_bug.cgi?id=755782 2017-03-06 19:14:48 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix a leak introduced in fcb63e CID: 1402055 2017-03-04 00:27:30 +1100 Jan Schmidt * ext/ogg/gstoggdemux.c: oggdemux: Fix reverse playback Fix various issues with reverse playback by clearing tracking vars when working in reverse, and where possible using the timestamp interpolation code to generate timestamps for outgoing buffers. Make sure to mark things as discontinuous only when looping backward to a new position and fix seeking to the next page when starting. 2017-03-04 00:22:17 +1100 Jan Schmidt * ext/ogg/gstoggdemux.c: oggdemux: Timestamp tracking fixes In gst_ogg_demux_do_seek() when calculating the keyframe time, account for a non-zero start-time Handle a discontinuous first packet in gst_ogg_demux_setup_first_granule() because that's pretty normal after a seek. Also differentiate between a genuinely truncated first packet and just bailing out early, by not using granule = -1 as an error code. Make the debug output logs clearer about which timestamps are stream times (PTS) and which are ogg timestamps. 2017-03-04 00:15:50 +1100 Jan Schmidt * ext/ogg/gstoggdemux.c: oggdemux: Don't arbitrarily guess a timestamp of 0 When we haven't managed to manufacture a timestamp for a packet, don't just guess '0', leave it at none and let downstream decide 2017-03-04 00:12:26 +1100 Jan Schmidt * ext/theora/gsttheoradec.c: theoradec: Make the keyframe condition check clearer Make the keyframe checking if statement easier to read, and add some debug when detecting a keyframe 2017-03-04 00:18:07 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Restrict frame timestamp guessing in reverse mode Don't guess a timestamp of the start of the segment when running in reverse mode, as more likely it means we're discontinuous somewhere in the middle of the segment, and we'll fix up timestamps once the frames are decoded and reversed. 2017-03-04 00:10:27 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Store buffer information even without PTS When a PTS is not set, we still want to store the rest of the buffer information, or else we lose important things like the duration or buffer flags when parsing. 2017-03-03 10:52:15 +0100 Edward Hervey * ext/vorbis/gstvorbisdec.c: vorbisdec: Reset decoder in more situations This is a followup commit to b95725c37e70ad3c1ec8dadb401388db375df482 * Resetting the decoder should only happen when we get a new initialization header (0x01) and not on the other headers * The initialized variable only gets set to TRUE once all headers have been parsed. Also check if the vorbis_info struct has been properly resetted also. Failure to do that would cause vorbisdec to error if it got two initialization header in a row (the first would configure the underlying library and the second one would error out because it's already initialized) https://bugzilla.gnome.org/show_bug.cgi?id=779515 2017-02-28 15:51:00 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: rawbaseparse: Assert that frame size is > 0 We would later divide by zero otherwise, and generally won't do the right thing. CID 1401383 2017-02-28 15:26:36 +0200 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: rawaudioparse: Fix potential NULL pointer dereference CID 1364606 2017-02-28 15:17:24 +0200 Sebastian Dröge * gst/playback/gstdecodebin3.c: decodebin3: Fix potential NULL pointer dereference on slot deactivation CID 1363331 2017-02-28 15:15:31 +0200 Sebastian Dröge * gst/playback/gsturisourcebin.c: urisourcebin: Fix inverted check for an existing slot CID 1363330 2017-02-28 15:13:49 +0200 Sebastian Dröge * gst/playback/gstdecodebin3-parse.c: decodebin3: Handle stream-start events without group id correctly CID 1363327 2017-02-28 15:11:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Handle return value of gst_video_decoder_drain() CID 1362896 2017-02-28 13:06:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: glvideomixer/compositor: Correctly error out if calculating DAR fails CID 1320700 2017-02-28 10:53:04 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: gl: Rename gst_gl_get_affine_transformation_meta_as_ndc_ext() to prevent symbol conflict The same symbol also exists in libgstgl, although marked as private and internal. This has no effect when doing static linking and there's a symbol conflict. 2017-02-09 12:44:51 +0000 Jochen Henneberg * ext/vorbis/gstvorbisdec.c: vorbisdec: reset decoder on vorbis headers update if the vorbis encoder receives new headers it must be reset and re-initialized to continue decoding, e. g. for live streams 2017-02-27 19:04:30 +0200 Sebastian Dröge * ext/vorbis/gstvorbisenc.c: vorbisenc: Resend (new, updated) headers when the caps are changing The headers are usually changing together with the caps, and they are nedeed for correct decoding. 2017-02-25 19:19:32 +0000 Tim-Philipp Müller * gst/rawparse/Makefile.am: rawparse: fix linking for audio/video libs Broke build in gnome continuous 2017-02-25 15:14:07 +0200 Sebastian Dröge * gst/rawparse/meson.build: rawparse: Fix meson build 2017-02-25 14:48:40 +0200 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst/meson.build: * gst/rawparse/Makefile.am: * gst/rawparse/meson.build: * gst/rawparse/plugin.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: rawparse: Move to gst-plugins-base https://bugzilla.gnome.org/show_bug.cgi?id=774544 2017-02-25 14:32:33 +0200 Sebastian Dröge Merge branch 'rawparse-moved-plugin' 2017-02-24 15:59:38 +0200 Sebastian Dröge * meson.build: meson: Update version 2017-02-24 15:37:33 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.11.2 === 2017-02-24 15:07:06 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: Release 1.11.2 2017-02-24 12:46:59 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-02-24 10:04:21 +0200 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Give a name to the thread-pool threads This way they can be distinguished from any other threads in the same process. 2017-02-24 10:02:28 +0200 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Only lock the thread pool mutex when running with more than 1 thread There's no reason to lock anything if only the current thread is ever going to do any work. 2017-02-20 21:38:17 +0200 Sebastian Dröge * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: video-converter: Implement multi-threaded scaling/conversion This adds a property to select the maximum number of threads to use for conversion and scaling. During processing, each plane is split into an equal number of consecutive lines that are then processed by each thread. During tests, this gave up to 1.8x speedup with 2 threads and up to 3.2x speedup with 4 threads when converting e.g. 1080p to 4k in v210. https://bugzilla.gnome.org/show_bug.cgi?id=778974 2017-02-21 11:59:12 +0100 Georg Lippitsch * gst-libs/gst/video/gstvideotimecode.c: * tests/check/libs/videotimecode.c: videotimecode: Validate for drop-frame correctness In gst_video_time_code_is_valid, also check for invalid ranges when using drop-frame TC. Refactor some code which broke after the check was added. https://bugzilla.gnome.org/show_bug.cgi?id=779010 2017-02-15 18:40:21 +0100 Georg Lippitsch * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/gstvideotimecode.h: * tests/check/libs/videotimecode.c: * win32/common/libgstvideo.def: videotimecode: Init from GDateTime Add a function to init the time code from a GDateTime https://bugzilla.gnome.org/show_bug.cgi?id=778702 2017-02-20 13:44:37 +0200 Jochen Henneberg * ext/vorbis/gstvorbiscommon.c: vorbis: Fix channel reorder map for 5.1, 6.1 and 7.1 2017-02-18 20:18:50 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: * tests/check/elements/rawvideoparse.c: rawbaseparse: Drop incomplete frames at EOS See https://bugzilla.gnome.org/show_bug.cgi?id=773666 This would ideally be solved in baseparse but that requires further thought at this point, and in the meantime it would be good to have rawbaseparse not assert on this but handle it gracefully instead. 2017-02-15 21:41:47 +0200 Sebastian Dröge * gst-libs/gst/video/video-scaler.c: video-scaler: Fix upscaling if width & height change and we're starting not at y=0 It was taking the initial input y-offset from the output value, which only works for y=0 (in which case both are the same). If y > 0, we would always stay behind the requested input offset and never ever read anything from the input. 2017-02-14 22:31:50 +0000 Tim-Philipp Müller * Makefile.am: Fix distcheck Buildbot doesn't like wildcards here for some reason. 2017-02-14 19:44:43 +0000 Tim-Philipp Müller * Makefile.am: meson: dist meson build files Ship meson build files in tarballs, so people who use tarballs in their builds can start playing with meson already. 2017-02-14 19:43:47 +0000 Tim-Philipp Müller * win32/MANIFEST: win32: dist all .def files 2017-02-10 17:32:29 +0900 Heekyoung Seo * gst/typefind/gsttypefindfunctions.c: typefindfunctions: prevent unsigned int overflow https://bugzilla.gnome.org/show_bug.cgi?id=778432 2017-02-10 21:28:49 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: ensure the discont flag is correct Previously it happened that reused buffer caused the discont to be on the wrong buffers. 2017-02-08 11:42:45 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Ignore more parser related fields when comparing streams The parser might do some conversion on a stream but the stream keeps being the same, and we need to make sure GstDiscoverer detects it is the case. https://bugzilla.gnome.org/show_bug.cgi?id=778298 2017-02-04 14:46:00 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Also add FLAC to debug strings. Oops, also add FLAC to the debug strings array. https://bugzilla.gnome.org/show_bug.cgi?id=777655 2017-02-04 14:42:33 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Prevent overflow of debug names array Add new audio types to the list of strings used for debug so we don't index past the end of that array. https://bugzilla.gnome.org/show_bug.cgi?id=777655 2017-02-02 14:56:39 +0200 Sebastian Dröge * tests/check/elements/multifdsink.c: multifdsink: Make sure to use a 64 bit integer for the units-max property 2017-01-20 19:49:46 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: Fix crash caused by slot double freeing Probe for MultiQueue source pad might receive EOS twice, the first is fake-eos and the other is actual EOS. And the slot can be freed with fake-eos/EOS if the slot has no input. Since slot freeing is async, double free can be possible. So, decodebin3 needs to remove the probe also with slot freeing. https://bugzilla.gnome.org/show_bug.cgi?id=777530 2017-01-31 16:47:32 +0100 Edward Hervey * tests/examples/decodebin_next/playbin-test.c: examples: Fix leak 2016-12-03 13:38:28 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Fix list leak on handle_stream_switch() Free no more used list variables https://bugzilla.gnome.org/show_bug.cgi?id=775553 2016-12-03 13:22:54 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Change requested_selection to have its own memory for stream-id "requested_selection" list might be generated by select-streams event. And memory of stream-id(s) in select-streams is independent from that of stream-collection. https://bugzilla.gnome.org/show_bug.cgi?id=775553 2016-12-03 12:47:41 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Change return types of stream_in_{list,collection} Change return types of functions to get memory address of stream-id. https://bugzilla.gnome.org/show_bug.cgi?id=775553 2016-12-03 12:43:22 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: playback: Fix leak on select_streams Since gst_event_parse_select_streams() returns newly allocated memory for stream-id(s), it should be freed explicitly. https://bugzilla.gnome.org/show_bug.cgi?id=775553 2017-01-02 15:12:47 +0100 Guillaume Desmottes * tests/check/elements/encodebin.c: encodebin: fix caps leak in test https://bugzilla.gnome.org/show_bug.cgi?id=776797 2017-01-30 12:35:04 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-resampler-x86-sse41.c: audio-resampler: Fix integer overflow in clamping code https://bugzilla.gnome.org/show_bug.cgi?id=777921 2017-01-25 19:13:40 +0200 Sebastian Dröge * tests/examples/overlay/Makefile.am: qt: The videooverlay example requires at least C++11 ... and clang requires this to be specified on the commandline while gcc nowadays defaults to C++11 or even newer. 2017-01-24 19:20:53 -0300 Thibault Saunier * tests/check/meson.build: meson: Properly use ':' for defining keywords 2017-01-23 19:45:05 +0000 Tim-Philipp Müller * gst/videorate/gstvideorate.c: videorate: fix LATENCY query The latency query originally had a fallthrough to the default label at the end as fallback, but that got messed up when the DURATION and POSITION queries were added, so it then fell through to the duration query handler instead. Restore original behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=699077 2017-01-23 19:08:15 +0000 Tim-Philipp Müller * gst/videorate/gstvideorate.c: * tests/check/elements/videorate.c: videorate: fix duration and position query handling Duration query would return TRUE and duration=-1. This worked in the unit test because the unit test implementation was a bit broken. Both queries need to access rate with a lock. Fix broken duration query test as well. It relied on broken behaviour by the videorate query handler, and also it was implemented as a downstream query rather than an upstream query. And we must return HANDLED from the probe so that the query we intercept actually returns TRUE. https://bugzilla.gnome.org/show_bug.cgi?id=699077 2017-01-23 19:50:09 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioringbuffer.h: audio: add since markers to docs for new enums https://bugzilla.gnome.org/show_bug.cgi?id=777655 2016-11-17 13:04:18 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: audio: add FLAC to GstAudioRingBufferFormatType https://bugzilla.gnome.org/show_bug.cgi?id=777655 2017-01-23 18:31:54 +0000 Olivier Crete * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: audioringbuffer: Also support raw AAC Support raw AAC streams without the ADTS header https://bugzilla.gnome.org/show_bug.cgi?id=777655 2017-01-20 23:28:23 +0100 Víctor Manuel Jáquez Leal * docs/libs/gst-plugins-base-libs-sections.txt: docs: update libs section Include documented symbols that were not declared in section file. 2017-01-20 12:41:16 +0200 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff-media: Don't divide block align by zero channels https://bugzilla.gnome.org/show_bug.cgi?id=777525 2017-01-20 08:02:38 +0200 Sebastian Dröge * gst/subparse/samiparse.c: samiparse: Check that the string has a non-zero length before overwriting the last byte with '\0' https://bugzilla.gnome.org/show_bug.cgi?id=777502 2017-01-15 18:42:34 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff-media: Don't recurse in for nested WAVEFORMATEX There was already a check for that, but it failed because subformat_guid[0] is a guint32 and that is then casted implicitely to a guint16 when recursing... just that we checked the uncasted value. This caused an infinite recursion and thus stack overflow. https://bugzilla.gnome.org/show_bug.cgi?id=777265 2017-01-18 14:59:18 +1100 Jan Schmidt * gst/playback/gstdecodebin2.c: decodebin: Don't leak blocked pad references on errors When the decodebin state change fails because of an error message, we might not go through PAUSED->READY. Don't leak a ref to decodebin pads due to pad blocking in that case. This is because we return ASYNC going to PAUSED, and if we fail before reaching PAUSED the only transition we'll see is READY->NULL. https://bugzilla.gnome.org/show_bug.cgi?id=775893 2017-01-18 15:03:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: ensure caps are writable after intersection gst_caps_intersect () may return an increased reference of one of the input caps. Fixes critical in the simple-launch-lines test: Unexpected critical/warning: gst_caps_set_features: assertion 'IS_WRITABLE (caps)' failed 2014-11-27 18:02:49 -0600 Carl Karsten * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Add options to make ball pattern based on system time, and invert each second. This adds some extra options that affect pattern=ball mode, allowing the animation to be synced to running time or wall-time clock for comparing sync across different instances / pipelines / machines. Also added is the ability to invert the rendering colours every second, and some different ball motion patterns. https://bugzilla.gnome.org/show_bug.cgi?id=740557 2017-01-15 18:31:56 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff-media: Check for valid channels/rate before using the values Otherwise we might divide by zero or otherwise create invalid caps. https://bugzilla.gnome.org/show_bug.cgi?id=777262 2017-01-13 12:38:52 +0000 Tim-Philipp Müller * meson.build: meson: bump version 2017-01-12 21:35:25 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: gl/utils: also take care of the local GL context in query functions Simplifies a deduplicates a lot of code in elements retrieving/setting the local OpenGL context. 2017-01-12 01:57:29 +1100 Matthew Waters * ext/gl/gstglmixer.c: glutils: remove trivial helper function gst_gl_caps_replace_all_caps_features() is only used in two places and can be trivially reproduced. 2017-01-12 16:32:42 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.11.1 === 2017-01-12 15:30:02 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: Release 1.11.1 2017-01-12 14:37:17 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-01-12 14:35:09 +0200 Sebastian Dröge * po/da.po: * po/de.po: * po/fr.po: * po/hr.po: * po/id.po: * po/nb.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2017-01-12 22:28:50 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Preserve seqnum on EOS events When converting EOS to/from our custom fake EOS event, preserve any seqnum on the original event. 2017-01-12 10:51:34 +0100 Edward Hervey * gst/playback/gsturisourcebin.c: urisourcebin: Avoid races when setting up typefind The state of urisourcebin (and all elements contained within) can change at any point in time, including when setting up the typefind element. In order to avoid ending up with typefind starting without being fully connected, lock the state and connect to the 'have-type' signal. 2017-01-11 18:24:38 +0200 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Fix crashes in fast-paths when converting interlaced formats with different vertical subsampling E.g. the following pipelines fail because chroma values after the last line are read (note: 486 % 4 == 2): gst-launch-1.0 videotestsrc ! "video/x-raw,interlace-mode=interleaved,width=720,height=486,format=UYVY" ! videoconvert ! "video/x-raw,format=I420" ! fakesink gst-launch-1.0 videotestsrc ! "video/x-raw,interlace-mode=interleaved,width=720,height=486,format=I420" ! videoconvert ! "video/x-raw,format=UYVY" ! fakesink gst-launch-1.0 videotestsrc ! "video/x-raw,interlace-mode=interleaved,width=720,height=486,format=I420" ! videoconvert ! "video/x-raw,format=AYUV" ! fakesink 2017-01-11 22:48:02 +1100 Jan Schmidt * gst/playback/gsturisourcebin.c: urisourcebin: Drop fake EOS if the pad got relinked If our pad got relinked in since the fake-EOS was sent to the pad, then drop the fake-EOS event. CID: 1398546 2017-01-11 17:26:01 +0530 Arun Raghavan * common: common: Revert unintentional change in previous commit 2017-01-11 17:14:46 +0530 Arun Raghavan * common: * gst/playback/gsturisourcebin.c: urisourcebin: Drop some dead code The ret == GST_STATE_CHANGE_FAILURE is handled in the previous for loop already. CID: 1398544 2017-01-11 12:35:40 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Clear pad from pending list if it was linked If not, the other slots might try to link the pad again. This can happen when the demuxer has multiple src pads and their caps are identical https://bugzilla.gnome.org/show_bug.cgi?id=777121 2017-01-11 08:22:21 +0100 Edward Hervey * win32/common/libgstvideo.def: win32: update def file 2017-01-10 16:36:08 +0200 Vivia Nikolaidou * tests/check/libs/videotimecode.c: videotimecode: Added unit test for GstVideoTimeCodeInterval https://bugzilla.gnome.org/show_bug.cgi?id=776447 2016-12-29 14:42:52 +0200 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/gstvideotimecode.h: videotimecode: New GstVideoTimeCodeInterval type, ability to add to a GstVideoTimeCode Sometimes there is a human-oriented timecode that represents an interval between two other timecodes. It corresponds to the human perception of "add X hours" or "add X seconds" to a specific timecode, taking drop-frame oddities into account. This interval-representing timecode is now a GstVideoTimeCodeInterval. Also added function to add it to a GstVideoTimeCode. https://bugzilla.gnome.org/show_bug.cgi?id=776447 2017-01-10 21:52:34 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Configure typefind element for non-streaming uri To ensure configuring adaptivedemux if needed, setup typefind element even if uri is not matched to streaming protocol. https://bugzilla.gnome.org/show_bug.cgi?id=776458 2016-12-24 16:44:26 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Use GList for typefind elements We need typefind elements per source element's srcpad https://bugzilla.gnome.org/show_bug.cgi?id=776458 2016-12-24 16:15:45 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Remove unused signal handler variable Remove never used handler id https://bugzilla.gnome.org/show_bug.cgi?id=776458 2017-01-10 08:57:51 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Fix annotation in gst_encoding_profile_set_preset 2017-01-10 12:51:51 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: gl: remove custom control binding proxy Use the existing GstProxyControlBinding instead. 2017-01-09 19:45:25 +0000 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: update .def file for new video API 2017-01-09 19:10:10 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: tests: audiodecoder: fix another c99-ism Missed one. 2017-01-09 19:02:57 +0000 Tim-Philipp Müller * sys/ximage/ximagesink.c: * tests/check/libs/audiodecoder.c: * tests/check/libs/sdp.c: * tests/check/libs/videodecoder.c: Fix indentation 2017-01-09 18:58:42 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: tests: audiodecoder: fix compiler warnings due to c99-ism audiodecoder.c:160:5: error: ‘for’ loop initial declarations are only allowed in C99 mode 2016-12-30 20:27:48 +0200 Vivia Nikolaidou * tests/check/libs/videotimecode.c: videotimecode: Add GstValue functions unit test https://bugzilla.gnome.org/show_bug.cgi?id=772764 2016-12-30 19:08:16 +0200 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/gstvideotimecode.h: videotimecode: Add GstValue functions Add compare, serialization and deserialization functions https://bugzilla.gnome.org/show_bug.cgi?id=772764 2017-01-08 21:53:27 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Clear EOS state with stream-start/flush-stop event The EOS state marker should cleared on stream-start or flush-stop https://bugzilla.gnome.org/show_bug.cgi?id=777009 2017-01-08 21:36:04 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Never push actual EOS event to slot Due to the special nature of adaptivedemux, reconfigure happens frequently with seek/track-change. In very exceptional cases, the following sequence is possible: * EOS event is pushed to queue element and still buffers are queued * During draining remaining buffers, reconfiguration downstream happens due to track switch. * The queue gets a not-linked flow return from downstream * Because the sinkpad is EOS, the queue registers an error on the bus, causing the pipeline to fail. Avoid the sinkpad getting marked EOS in the first place, by using a custom event in place of EOS. https://bugzilla.gnome.org/show_bug.cgi?id=777009 2017-01-09 21:31:37 +1100 Jan Schmidt * tests/check/libs/video.c: testsuite: Add some test checks for gst_video_guess_framerate() 2017-01-09 21:25:26 +1100 Jan Schmidt * gst-libs/gst/video/video.c: gst_video_guess_framerate: Don't throw away all precision When operating on framerates near 10000fps, at least keep 1 digit of precision for calculations 2017-01-06 12:56:00 -0300 Thibault Saunier * win32/common/libgstpbutils.def: Update win32 def files 2017-01-06 11:39:27 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Properly free temporary list 2017-01-04 14:27:40 -0300 Thibault Saunier * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: encoding-profile: Add a way to copy an encoding profile It is often usefull to make sure that you get a full copy of a profile. For example you want to let the user modify it in the user interface but still keep an unchanged version for later use. API: gst_encoding_profile_copy 2017-01-04 14:56:36 +0100 Guillaume Desmottes * pkgconfig/Makefile.am: * pkgconfig/gstreamer-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: * pkgconfig/meson.build: meson: generate pkg-config -uninstalled pc files Generating those files is useful for users building the GStreamer stack using meson and having to link it to another project which is still using the autotools. https://bugzilla.gnome.org/show_bug.cgi?id=776810 2017-01-04 11:21:51 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Fix stream_group_free when creating it went bad Avoiding trying to use NULL pointers 2016-12-30 17:55:18 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: do not link to audio or video filter using padname ... as a sinkpad need not be called "sink", and it is not the case for e.g. timeoverlay (and friends). Fixes https://bugzilla.gnome.org/show_bug.cgi?id=776623 2017-01-04 13:44:53 +0000 Tim-Philipp Müller * gst/tcp/gstmultihandlesink.c: multihandlesink: fix some property descriptions 2017-01-03 02:23:43 +1100 Jan Schmidt * gst/playback/gstdecodebin2.c: * gst/playback/gstparsebin.c: playback: Fix a small race on decodebin/parsebin shutdown. When shutting down decodebin2 and parsebin, they set their output pads to flushing, and there is a very small window where elements might send a sticky event such as a tag event (which silently fails due to flushing) and then sends a buffer, and the buffer will return GST_FLOW_ERROR because it can't forward sticky events. The element will then send an error message on the bus. This can also happen when elements send EOS just as shutdown is happening. Since we're about to destroy all the elements inside parsebin and decodebin anyway, just discard error messages from them. A nicer but more difficult fix for GStreamer 2.0 is to make all event pushing / handling in core return a GstFlowReturn like buffers do, so we can report a FLUSHING state cleanly. 2017-01-02 12:54:32 +0000 Tim-Philipp Müller * gst/encoding/gstencodebin.c: encodebin: fix queue property types when setting 2015-03-13 18:04:31 +0800 Song Bing * gst/encoding/gstencodebin.c: encodebin: allow more buffers in output queue for better performance https://bugzilla.gnome.org/show_bug.cgi?id=744191 2017-01-02 17:56:36 +0530 Arun Raghavan * gst/audioconvert/gstaudioconvert.c: audioconvert: Relocate a NULL check before accessing converter CID 1396745 2015-07-02 07:23:23 +0200 Tobias Mueller * gst-libs/gst/app/gstappsrc.c: appsrc: fix compiler warning Initialize min and max _get_property() to gets rid of these compiler warnings: gstappsrc.c:741:7: error: 'max' may be used uninitialized in this function g_value_set_int64 (value, max); ^ gstappsrc.c:733:7: error: 'min' may be used uninitialized in this function g_value_set_int64 (value, min); ^ Which happens because gcc doesn't know that GST_IS_APP_SRC will never fail here. https://bugzilla.gnome.org/show_bug.cgi?id=752052 2015-11-25 11:30:42 +0000 Stuart Weaver * gst-libs/gst/rtsp/gstrtspurl.c: rtsp-url: unescape special chars in user/pass part of URL This way special characters such as '@' can be used in usernames or passwords, e.g. rtsp://view:%40dm%4An@/media/camera1 will now parse username and password into: User: view Pass: @dm:n https://bugzilla.gnome.org/show_bug.cgi?id=758389 2015-11-18 13:59:30 +0900 Vineeth TM * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Add support to dump dot files Dump graphs during error/warning messages and discover is done https://bugzilla.gnome.org/show_bug.cgi?id=758259 2016-12-24 10:15:24 +0000 Tim-Philipp Müller * tests/check/libs/tag.c: tests: tag: add unit test for ID3v2 UTF-16 string list parsing https://bugzilla.gnome.org/show_bug.cgi?id=770355 2016-12-24 14:32:34 +0000 Tim-Philipp Müller * tests/check/libs/tag.c: tests: tag: add test for ID3v2 extended header parsing https://bugzilla.gnome.org/show_bug.cgi?id=770355 2016-08-24 11:39:39 -0600 Thomas Bluemel * gst-libs/gst/tag/id3v2frames.c: id3v2: fix splitting strings in ISO-8859-1 and UTF-16 formats When parsing NUL-terminated strings, do not include the terminating NUL byte(s). Depending on the encoding used, either g_utf8_validate() failed due to this, or worse the call to g_utf16_to_utf8() would return 0 items read on an empty string, causing it to fail parsing certain frames. https://bugzilla.gnome.org/show_bug.cgi?id=770355 2016-08-24 10:33:14 -0600 Thomas Bluemel * gst-libs/gst/tag/id3v2.c: id3v2: fix handling of tags with extended headers The extended header size value does not include itself. https://bugzilla.gnome.org/show_bug.cgi?id=770355 2016-12-23 18:08:43 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Initialize variables to avoid build failures encoding-profile.c: In function ‘get_profile_format_from_possible_factory_name’: encoding-profile.c:1532:6: error: ‘fact’ may be used uninitialized in this function [-Werror=maybe-uninitialized] if (fact) ^ encoding-profile.c: In function ‘profile_from_string’: encoding-profile.c:1720:6: error: ‘res’ may be used uninitialized in this function [-Werror=maybe-uninitialized] if (profile) ^ cc1: all warnings being treated as errors 2016-12-23 14:23:48 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Allow using factory names in serialization format Instead of enforcing the user to know and understand caps to describe the encoding format, let him use element factory names directly. This also makes it possible to ensure that a specific encodore/muxer is used instead of letting the ranking system do it. It is now possible to describe an encoding format simply specifying: matroskamux:x264enc:vobisenc Factor out functions in the parsing, cleaning up the whole thing. Update documentation. 2016-12-21 19:32:41 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Also take into account preset name when comparing profiles 2016-12-21 13:24:37 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: encoding-profile: Handle path to serialized target when deserializing a profile The synthax is path/to/encoding/profile.gep:profilename 2016-12-21 12:13:38 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.h: encoding-target: Add 'file-extension' as a known category 2016-12-21 11:05:30 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Allow using name and targets from serialized file We used to only care about the name of the files even if the name is defined in the encoding target serialized file. That commit also allows user to define several names for a single target file (using a ';' between the names) which allows us to have a target for youtube that is called 'youtube;yt' or a target for 'ogg;ogv;oga' file extension. 2016-12-21 11:01:27 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Auto convert loading target name to lowercase We *only* support lowercase encoding target names so we can just handle user to use uper case ones converting them. 2016-12-21 10:02:31 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: pbutils: Add documentation about encoding targets 2016-12-10 11:43:47 +0900 hoonhee.lee * tests/examples/decodebin_next/playbin-test.c: playbin-test: Don't use removed playbin3 'auto-select-streams' property https://bugzilla.gnome.org/show_bug.cgi?id=775917 2016-09-02 15:23:18 +0200 Carlos Rafael Giani * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Fix incorrect start of tick waveform Make sure ticks start with an accumulator value of 0 by incrementing it after filling in samples instead of before and by resetting the accumulator every time a tick begins. This prevents it from being discontinuous at the beginning of the tick. https://bugzilla.gnome.org/show_bug.cgi?id=774050 2016-12-22 18:47:19 +0100 Nicolas Dechesne * tools/gst-play.c: tools: gst-play: set GST_GL_XINITHREADS This ensure that XInitThreads is called and so gl contexts are properly initialized. https://bugzilla.gnome.org/show_bug.cgi?id=776403 2014-06-26 18:01:06 -0700 Evan Nemerson * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * win32/common/libgstaudio.def: audioringbuffer: add set_callback_full() for g-i https://bugzilla.gnome.org/show_bug.cgi?id=678301 2016-12-20 12:33:12 +0100 Nicola Murino * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpclientsrc.h: tcpclientsrc: add timeout property https://bugzilla.gnome.org/show_bug.cgi?id=749567 2016-12-21 00:11:06 +1100 Jan Schmidt * gst/playback/gstparsebin.c: parsebin: Ignore failure to send sticky events When plugging and then exposing a parser, don't fail if it fails to send sticky events. The most likely reason is that things were flushed due to the app immediately doing a seek, but we can't detect flushing separately to other error conditions without a gst_pad_send_event_full() core function that returns a GstFlowReturn. 2016-12-20 13:00:59 +0200 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff-media: Fix up last commit 2015-03-28 18:16:16 +0100 Nicola Murino * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: riff: add ADPCM_G722 support https://bugzilla.gnome.org/show_bug.cgi?id=746574 2016-12-19 15:20:35 -0300 Thibault Saunier * tests/check/elements/encodebin.c: tests: Fix build 2016-12-19 15:08:12 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Fix build initializing sprof 2016-12-16 22:11:41 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: * tests/check/elements/encodebin.c: encodebin: Fallback to other profile if we fail with one In some case we might have EncodingProfile that will be defined in a way that, for example if a Preset is not present, another profile for that stream should be used. A test is added showing the feature. https://bugzilla.gnome.org/show_bug.cgi?id=776188 2016-12-16 16:27:04 -0300 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Enhance error debug when failing to create an encoder 2016-12-18 12:29:42 +0000 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: id3v2: turn redundant check into an assert We checked this already earlier, so this is dead code. Leave an assert in place for consistency with the other branch and in case the rest of the code changes. CID 1397350. 2016-12-17 21:58:29 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Get caps from the element's srcpad if possible The caps put into the stream topology by decodebin are the caps at the moment the pads are exposed on it. This is usually before decoders received any buffers. In discoverer we however wait for pre-roll, which ensures that each decoder handled buffers already. At this point, there might be more information known about the caps already that we could make use of. One example here is extra information stored in the SEI of H264, like the multiview-mode. This will be known if there is a SEI before the first keyframe, but decodebin won't put this into the topology as it only waits for the initial caps of h264parse (which come directly after SPS/PPS). With this change, the multiview-mode is in the caps reported by discoverer in many cases. 2016-12-17 21:35:24 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Put the correct element srcpad into the topology for the very last element of a chain We were putting the decode pad there, which is the ghostpad linked to the last element. The decode pad is already in the pad field. 2016-12-17 21:34:40 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Put the correct pad into the stream-topology if a parser/converter is used We have to take the capsfilter into account then as the elements are not linked directly. Previously this caused NULL be set in these cases. 2016-12-16 17:39:59 +0000 Tim-Philipp Müller * gst-plugins-base.spec.in: Actually delete .spec.in file as well Only removed it from build description. 2016-12-16 11:11:57 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst/encoding/gstencodebin.c: * gst/typefind/gsttypefindfunctions.c: encoding-profile: Fix documentation and port to gtk markdown And remove some trailling whitepsaces 2016-12-16 09:59:25 -0300 Thibault Saunier * docs/libs/meson.build: * docs/meson.build: * meson.build: * meson_options.txt: meson:doc: Build libraries documentations 2016-12-16 09:58:15 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: base: Actually support using the default encoding target 2016-12-15 16:12:02 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Remove useless check for local presence 2016-12-15 16:10:55 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Add safe guard too encoding profile API 2016-12-15 10:57:14 -0300 Thibault Saunier * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/pbutils/encoding-profile.c: audio: Fix introspection annotation In gst_audio_check_valid_channel_positions the mask is an out parameter. And minor conversion from a print to a GST_ERROR. 2016-12-14 18:06:09 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Handle GST_ENCODING_TARGET_PATH in list_all And fix the compare_target function 2016-12-15 16:29:02 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: For adaptive streaming, ensure to put the buffering multiqueue after a parser or demuxer There are cases when there is no demuxer involved that could do the buffering, e.g. HLS with raw MP3 or AAC. In this case we want to place the buffering multiqueue after the parser. Before this change, we've considered the first element after the adaptive streaming demuxer as a parser. This is not always true, e.g. id3demux. Instead we now wait until we actually have a parser (or decoder). Fixes playback on such HLS streams. 2016-12-14 15:53:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Reject multiview video glvideomixer does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-14 15:36:14 +0200 Sebastian Dröge * gst/compositor/compositor.c: compositor: Reject multiview video Compositor does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-14 15:35:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove unlock() if set_info() fails There is not mutex locked here that needs to be unlocked. 2016-12-14 09:48:02 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: Remove generated .spec file Likely extremely bitrotten, and we should not ship this anyway. 2016-12-13 22:45:02 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: * tests/check/libs/rtsp.c: * win32/common/libgstrtsp.def: rtsp: add boxed types for new authentication credential API To make the structs usable in bindings, and fix gstrtspmessage.c:1188: Warning: GstRtsp: gst_rtsp_message_parse_auth_credentials: return value: Invalid non-constant return of bare structure or union; register as boxed type or (skip) https://bugzilla.gnome.org/show_bug.cgi?id=774416 2016-12-13 22:39:01 +0200 Sebastian Dröge * tests/check/elements/compositor.c: gst: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-13 22:26:08 +0200 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: * tests/check/elements/videotestsrc.c: gst: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-13 09:44:09 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: do not require 4 byte multiple for encoded MPEG Bytes per frame doesn't make sense for encoded audio. https://bugzilla.gnome.org/show_bug.cgi?id=776038 2016-12-12 14:50:11 +0900 Seungha Yang * gst/playback/gstrawcaps.h: playback: Add ANY caps features to default text raw caps Raw text caps with any caps features should be also default raw caps https://bugzilla.gnome.org/show_bug.cgi?id=775967 2016-12-09 17:08:20 -0300 Thibault Saunier * meson.build: meson: Support building without Gst debug 2016-12-09 17:36:47 +0200 Sebastian Dröge * gst-libs/gst/tag/gstxmptag.c: xmptag: Don't leak the namespace string if there are multiple https://bugzilla.gnome.org/show_bug.cgi?id=775887 2016-12-09 17:59:09 +1100 Jan Schmidt * gst-libs/gst/tag/id3v2.c: id3v2: Clarify id3v2_add_id3v2_frame_blob_to_taglist() Pass the frame data and size explicitly to id3v2_add_id3v2_frame_blob_to_taglist() and add a comment that it's being deliberately / manually passed the full ID3v2 frame including header. 2016-12-09 17:57:52 +1100 Jan Schmidt * gst-libs/gst/tag/id3v2.c: id3v2: Add missing overrun check for frame sizes When frames claim to have a footer, ensure they are large enough to contain one to avoid an invalid read overrun. Spotted by Joshua Yabut 2016-11-22 23:08:09 +1100 Jan Schmidt * ext/ogg/gstogmparse.c: ogg: Fix element factory klass for OGM parsers They're parsers, not decoders, so fix the klass info accordingly. 2016-12-08 23:01:28 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/Makefile.am: * docs/design/Makefile.am: * docs/design/draft-hw-acceleration.txt: * docs/design/draft-va.txt: docs: design: remove outdated draft docs (hw-acceleration, va) 2016-12-08 22:59:58 +0000 Tim-Philipp Müller * docs/design/Makefile.am: * docs/design/design-audiosinks.txt: * docs/design/design-decodebin.txt: * docs/design/design-encoding.txt: * docs/design/design-orc-integration.txt: * docs/design/draft-keyframe-force.txt: * docs/design/draft-subtitle-overlays.txt: * docs/design/part-interlaced-video.txt: * docs/design/part-mediatype-audio-raw.txt: * docs/design/part-mediatype-text-raw.txt: * docs/design/part-mediatype-video-raw.txt: * docs/design/part-playbin.txt: * docs/design/part-stereo-multiview-video.markdown: docs: design: move most design docs to gst-docs module 2016-12-03 23:01:53 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: Remove unused variable https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 22:46:20 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: decodebin3: More cleanup DecodebinOutputStream and MultiQueueSlot When removing DecodebinInputStream, cleanup DecodebinOutputStream and MultiQueueSlot also if they were drained. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 22:37:55 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Drop duration query during _input_pad_unlink () Playbin3 takes lock when querying duration and handling stream-collection message. So,to post stream-collection message, duration query should be dropped when input pad is being unlinked. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 22:12:21 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Update stream-collection with _input_pad_unlink() Since parsebin does not post new stream-collection message when it was being removed, decodebin3 should update it itself. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 22:28:28 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Cleanup no more used DecodebinInput Remove DecodebinInput using gst_element_call_async() API. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 21:50:47 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: decodebin3: Cleanup no more used MultiQueueSlot Since MultiQueueSlot cannot be removed inside of streaming thread, use gst_element_call_async() API. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 21:42:30 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: Send custom-eos event to notify drained state Likewise how urisourcebin is doing, use custom event if other streams are still alive. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-03 20:44:21 +0900 Seungha Yang * gst/playback/gstplaybin3.c: playbin3: Reconfigure playsink again with pad-removed If selected streams and actived streams are matched, do reconfigure of playsink again with pad-removed signal https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-10-25 21:06:40 +0900 Seungha Yang * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: playback: Remove trailing whitespace https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-10-23 22:10:39 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Try to link output slot before cleanup Before cleaning up output slot, check pending pads first, if available. Then, cleanup it only if linking was failed. https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-10-22 18:53:17 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Cleanup unused output slot Since urisourcebin cannot cleanup unused output slot in streaming thread, it will be handled in thread pool with gst_element_call_async (). https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-12-06 16:29:23 +0200 Sebastian Dröge * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Fix crash when shutting down element during getrange() Ensure that nothing is in any of the streaming thread functions anymore when going from PAUSED to READY. While the parent's state change function has deactivated all pads, there is nothing preventing downstream from activating our srcpad again and calling the getrange() function. Although we're in READY! https://bugzilla.gnome.org/show_bug.cgi?id=775687 2016-12-05 18:17:30 +0000 Tim-Philipp Müller * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typos in property description 2016-12-03 08:19:15 +0100 Edward Hervey * README: * common: Automatic update of common submodule From f980fd9 to 39ac2f5 2016-12-02 15:12:12 -0800 Reynaldo H. Verdejo Pinochet * gst/typefind/gsttypefindfunctions.c: typefind: add another test to itc typefinder Report certainty after every test passes. Additionally: - Remove self-explanatory comment. 2016-12-01 19:57:47 +0200 Sebastian Dröge * gst/subparse/gstssaparse.c: ssaparse: Free initialization section before storing the next one If getting multiple caps events. https://bugzilla.gnome.org/show_bug.cgi?id=775480 2016-12-01 15:12:59 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Don't end up ignoring caps just because there are no headers for this stream https://bugzilla.gnome.org/show_bug.cgi?id=775459 2016-11-30 10:55:16 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Error out if mapping input/output buffer failed 2016-11-30 10:48:40 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Don't map the input buffer in in-place mode Input and output buffer are the same, let's not do unnecessary work. https://bugzilla.gnome.org/show_bug.cgi?id=775369 2016-11-30 10:43:50 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-converter.c: audio-converter: In passthrough, also don't copy if in and out block are the same In and out array are usually different, they are stack allocated arrays. However the blocks inside them still can be the same. https://bugzilla.gnome.org/show_bug.cgi?id=775369 2016-11-30 10:36:14 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Don't call transform_ip() in passthrough mode https://bugzilla.gnome.org/show_bug.cgi?id=775369 2016-11-29 15:30:43 +0100 Jan Alexander Steffens (heftig) * gst/tcp/gstmultihandlesink.c: multihandlesink: Fix buffers-queued being off by one max_buffer_usage is the index of the oldest buffer in the queue, starting at zero, not the number of buffers queued. find_limits returns the index of the oldest buffer that satisfies the limits in its min_idx parameter, not the number of buffers needed. Fix this use too in order to keep passing the tests that read buffers-queued. https://bugzilla.gnome.org/show_bug.cgi?id=775351 2016-11-29 16:26:22 +0100 Jan Alexander Steffens (heftig) * tests/check/elements/multifdsink.c: multifdsink: Add a test involving a slow client https://bugzilla.gnome.org/show_bug.cgi?id=774908 2016-11-23 14:35:04 +0100 Jan Alexander Steffens (heftig) * gst/tcp/gstmultihandlesink.c: multihandlesink: Update bufpos in a separate pass If a client gets dropped and the iteration gets restarted, bufpos is incremented again for all clients that preceded the dropped one, causing havoc. Adjust the bufpos for all clients first before trying to drop any. https://bugzilla.gnome.org/show_bug.cgi?id=774908 2016-11-29 16:37:50 +0530 Garima Gaur * gst/playback/gstplaybin2.c: playbin: Fix caps memory leak in usage of gst_static_caps_get() API https://bugzilla.gnome.org/show_bug.cgi?id=775310 2016-11-28 20:25:35 +0000 Tim-Philipp Müller * win32/common/libgstaudio.def: win32: update .def file for new audioconverter API Fixes distcheck. 2016-11-28 18:28:24 -0800 Scott D Phillips * meson.build: meson: Add headers and libm to has_function checks The functions from math.h may be implemented in libm. https://bugzilla.gnome.org/show_bug.cgi?id=774876 2016-11-28 19:45:46 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Handle NULL/ANY/EMPTY caps without crashing 2016-11-28 16:54:55 +0100 Edward Hervey * tests/check/elements/videorate.c: check/videorate: Avoid leaking extra buffers 2016-11-28 16:53:10 +0100 Edward Hervey * gst-libs/gst/video/video-info.c: video-info: Properly initialize/set extra fields The flags and field order weren't properly initialized in the gst_video_info_init(). Furthermore in gst_video_info_from_caps() we might set unitiliazed values previously, this only sets them if valid. 2016-11-28 16:51:43 +0100 Edward Hervey * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Fix attribute leak We need to free the strdup'd string (to_free) in all cases 2016-11-28 16:51:23 +0100 Edward Hervey * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: Don't leak authorization string 2016-10-19 12:21:37 +0200 Petr Kulhavy * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: audio-converter: optimize endian conversion Optimize LE<->BE conversion by adding a dedicated fast path instead of using the generic converter. Implement transform_ip function in order to do the endian swap in place. This saves buffer allocation for the intermediate format, can be done in place and also performs the conversion in one step instead of unpack-convert-pack. For all bit widths the naive algorithm is implemented, which provides the best performance when compiled with -O3. ORC was considered but eventually removed as it requires a dedicated function for in-place conversion (due to the "restrict" parameters). A more complex algorithm for the 24-bit conversion with unrolled loop and 32-bit processing is implemented in the #if 0 section. It performs better if compiled with -O2. With -O3 however the naive algorithm performs better. https://bugzilla.gnome.org/show_bug.cgi?id=773073 2016-10-21 14:30:31 +0200 Petr Kulhavy * gst-libs/gst/audio/audio-converter.c: audio-convert: simplify the chain free process It is not needed to store a pointer to every single chain element to free it. Instead walk the channel list backwards and free the chain elements one by one. Rename GstAudioConverter->chain_pack to chain_end. https://bugzilla.gnome.org/show_bug.cgi?id=773073 2016-11-28 14:25:49 +0200 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: rawparse: Whitespace cleanup 2016-11-28 17:12:26 +0530 Garima Gaur * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Fix caps memory leak when failing to get sinkpad from subtitle renderer https://bugzilla.gnome.org/show_bug.cgi?id=775224 2016-11-28 10:12:49 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Extract video information from caps manually without GstVideoInfo The caps might not be fixated (which is required by GstVideoInfo) and we would assert otherwise. However the caps often contain useful information in the already-fixed parts that we can use here. 2016-11-28 10:04:38 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Also stop waiting for subtitles if we get EOS We're not going to get a buffer or GAP event anymore after EOS and would wait forever otherwise. 2016-11-27 12:40:53 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: rawbaseparse: Fix output buffer size trimming For frame->buffer, baseparse is doing that automatically for us. For frame->output_buffer it doesn't and assumes that the subclass is already doing that. Consistency! 2016-11-27 11:44:14 +0200 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: rawparse: Properly align raw audio/video output buffers That is, aligned to the basic type for audio and to 32 bytes for video. Fixes crashes if the raw buffers are passed to SIMD processing functions. https://bugzilla.gnome.org/show_bug.cgi?id=774428 2016-11-26 13:53:49 +0200 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff-media: Check if caps are NULL before using them for the first time, not afterwards Otherwise we'll get a g_critical() before erroring out cleanly on https://samples.mplayerhq.hu/A-codecs/ATRAC3/SND0.AT3 2016-11-26 11:20:51 +0000 Tim-Philipp Müller * .gitmodules: common: use https protocol for common submodule https://bugzilla.gnome.org/show_bug.cgi?id=775110 2016-11-25 10:48:06 +0100 Miguel Paris * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: Fix ensure_buffers() if whole packet is in one GstMemory When gst_rtp_buffer_add_extension_onebyte_header() is used over a GstRtpBuffer that only contains a memory for the whole packet, ensure_buffers function crashes at the next point: mem = gst_memory_copy (rtp->map[i].memory, offset, rtp->size[i]); when i==2 because the payload is not mapped. In addition the offset is calculated subtracting in the wrong direction. https://bugzilla.gnome.org/show_bug.cgi?id=774959 2016-11-24 15:40:22 +0200 Sebastian Dröge * gst-libs/gst/video/video-info.c: * tests/check/libs/video.c: video-info: Add unit test for overflow checks And also prevent overflows caused by allowing uint width/height in gst_video_info_set_format() but storing them as (signed!) ints. 2016-11-24 15:12:40 +0200 Sebastian Dröge * gst-libs/gst/video/video-info.c: video-info: And change the overflow check to not actually overflow itself 2016-11-23 20:10:34 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-overlay-composition.c: video: Handle errors in gst_video_info_set_format() / gst_video_info_align() https://bugzilla.gnome.org/show_bug.cgi?id=774588 2016-11-23 20:00:19 +0200 Sebastian Dröge * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: video-info: Sanity check the frame size to prevent overflows https://bugzilla.gnome.org/show_bug.cgi?id=774588 2016-11-23 13:48:06 +0100 Ulf Olsson * gst-libs/gst/sdp/gstmikey.c: mikey: Generate the correct SRTP policy https://bugzilla.gnome.org/show_bug.cgi?id=774911 2016-11-23 18:26:29 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspdefs.c: rtspdefs: Assert on the excepted MD5 digest string length CID 1394494. 2016-11-23 21:27:55 +1100 Matthew Waters * gst/typefind/gsttypefindfunctions.c: typefind: bounds check windows ico detection Fixes out of bounds read https://bugzilla.gnome.org/show_bug.cgi?id=774902 2016-11-22 21:12:23 -0800 Scott D Phillips * gst-libs/gst/tag/mklicensestables.c: tag: fix some warnings in mklicensestables https://bugzilla.gnome.org/show_bug.cgi?id=774878 2016-10-07 15:08:37 +0100 Julien Isorce * gst-libs/gst/allocators/gstfdmemory.c: gstfdmemory: log with GST_INFO instead of GST_ERROR on permission denied For example mmap can fail with EACCES if the the fd has been open with read only mode. And mapping the memory might be the only way to check that. So no need to print out an error. Ex: ioctl(dev, DRM_IOCTL_PRIME_HANDLE_TO_FD, flags & ~DRM_RDWR) https://bugzilla.gnome.org/show_bug.cgi?id=765600 2016-10-18 16:18:19 -0700 Reynaldo H. Verdejo Pinochet * gst/typefind/gsttypefindfunctions.c: typefind: add typefinder for Apple/iTunes itc artwork files Avoids audio/mpeg false-positive described at: https://bugzilla.gnome.org/show_bug.cgi?id=773172 2016-11-18 16:51:26 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: * tests/check/libs/rtsp.c: * win32/common/libgstrtsp.def: rtsp: Add gst_rtsp_message_parse_auth_credentials() to parse authentication credentials https://bugzilla.gnome.org/show_bug.cgi?id=774416 2016-11-18 13:20:55 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: * win32/common/libgstrtsp.def: rtsp: Add gst_rtsp_generate_digest_auth_response() to calculate digest auth response https://bugzilla.gnome.org/show_bug.cgi?id=774416 2016-11-20 15:43:42 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * win32/MANIFEST: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/gstrtsp-enumtypes.h: * win32/common/multichannel-enumtypes.c: * win32/common/multichannel-enumtypes.h: * win32/common/pbutils-enumtypes.c: * win32/common/pbutils-enumtypes.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: win32: remove copies of generated headers 2016-11-18 14:51:29 -0500 Nicolas Dufresne * gst-libs/gst/allocators/gstdmabuf.h: dmabuf-allocator: Add missing padding in the class This class was made subclassable, though for future growth of the code, it's better if we have some room for add class members. Using the small padding since this is unlikely. 2016-11-17 20:20:15 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:18:55 +0200 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: textoverlay: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 19:46:54 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Ensure to set the RECONFIGURE flag again if reconfiguration failed https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 16:45:32 -0800 Scott D Phillips * meson.build: meson: add_global_arguments -> add_project_arguments https://bugzilla.gnome.org/show_bug.cgi?id=774656 2016-11-17 10:16:43 +0200 Sebastian Dröge * tests/check/libs/videotimecode.c: videotimecode: Add test for the calculations of distance from the daily jam https://bugzilla.gnome.org/show_bug.cgi?id=774585 2016-11-16 19:13:14 +0200 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Fix incorrect nsec_since_daily_jam calculation For drop-frame timecodes, the nsec_since_daily_jam doesn't necessarily directly correspond to this many hours/minutes/seconds/frames. We have to get the frame count as per frames_since_daily_jam and then convert. https://bugzilla.gnome.org/show_bug.cgi?id=774585 2016-11-16 20:48:28 +0200 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff: Extract bpp from the strf for vnmc Needed for avdec_vnmc to work. 2016-11-17 00:40:43 +1100 Jan Schmidt * gst/playback/gstplaysink.c: playsink: warn if a custom sink is set that has no 'sink' pad 2016-11-15 09:32:24 -0800 Scott D Phillips * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: videodecoder, audiodecoder: parse format before checking in src_query_default The logic change in these commits misordered the parsing and checking of format in position queries: 2b06e54 videodecoder: Don't answer BYTES queries 1840b02 audio: Don't answer BYTES queries https://bugzilla.gnome.org/show_bug.cgi?id=774484 2016-11-15 18:32:50 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: appsink: fix g-i warnings and add since markers Rename function parameter and make sure the name in the declaration matches the name in the implementation, to avoid g-i warnings. Also add Since markers for gtk-doc. gstappsink.c:1248: Warning: GstApp: gst_app_sink_set_buffer_list_support: unknown parameter 'buffer_list' in documentation comment, should be 'drop' 2016-11-15 15:12:12 -0300 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Do not try to unref the bus if it has not been set yet It might happen if creation of the discoverer failed 2016-07-04 09:32:28 +0200 Patricia Muscalu * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * tests/check/elements/appsink.c: * win32/common/libgstapp.def: appsink: add support for buffer lists https://bugzilla.gnome.org/show_bug.cgi?id=752363 2016-11-15 15:23:20 +0900 Wonchul Lee * gst/playback/gstplaybin3.c: playbin3: remove dead code It never reach into this code path, custom_combiner always not null here. https://bugzilla.gnome.org/show_bug.cgi?id=774454 2016-11-15 23:36:41 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't answer BYTES queries Refuse to answer BYTES queries ourselves. The only time they make sense is on raw elementary streams, in which case upstream would already have answered. https://bugzilla.gnome.org/show_bug.cgi?id=757631 2016-11-15 23:27:17 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Don't answer BYTES queries Refuse to answer BYTES queries ourselves. The only time they make sense is on raw elementary streams, in which case upstream would already have answered. They especially don't make sense for encoders to answer based on upstream values - although perhaps later we could make it do TIME->BYTES conversion on the source pad based on bitrate. https://bugzilla.gnome.org/show_bug.cgi?id=757631 2016-11-14 16:55:36 -0800 Scott D Phillips * gst-libs/gst/sdp/gstsdpmessage.c: sdp: cast away const in call to g_free MSVC warns about the const here. It's safe to cast away. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-14 16:48:16 -0800 Scott D Phillips * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-overlay-composition.c: Cast away const from GstMetaInfo in *_get_meta_info() functions MSVC warns about the const in the implicit argument conversion in the calls to g_once_init_{enter,leave}. It's OK so explicitly cast it. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-13 13:15:38 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: decodebin3: Clear saw_eos flag of DecodebinInputStream by FLUSH event Likewise how GstPad is doing, saw_eos flag of DecodebinInputStream must be cleared by FLUSH event. https://bugzilla.gnome.org/show_bug.cgi?id=774343 2016-10-17 15:38:37 +0900 Wonchul Lee * gst/playback/gstplaybin3.c: playbin3: Fix deadlock when adding multiple parsebin https://bugzilla.gnome.org/show_bug.cgi?id=773131 2016-11-14 11:39:33 -0800 Scott D Phillips * ext/vorbis/meson.build: meson: vorbis: Add -DTREMOR to flags for gstivorbisdec Matching the flags set by Makefile.am https://bugzilla.gnome.org/show_bug.cgi?id=774445 2016-11-14 16:28:42 -0300 Thibault Saunier * gst-libs/gst/audio/meson.build: * gst-libs/gst/video/meson.build: * gst/adder/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: meson: Fix build when orc is disabled Making sure not to use the orc_dep variable in case orc has been explicitely disabled. 2016-11-11 10:38:58 -0800 Scott D Phillips * gst-libs/gst/video/video-info.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaybin3.c: Use intermediate guint when handling GstVideoMultiviewFlags The underlying integer type of the enum GstVideoMultiviewFlags is implementation defined and may not have the same size as guint. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-11 10:35:00 -0800 Scott D Phillips * ext/ogg/gstoggstream.c: * gst-libs/gst/video/gstvideotimecode.c: Remove 'return' from `void` functions https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-10-26 22:37:19 -0700 Scott D Phillips * meson.build: meson: don't add_global_arguments when being built as a subproject https://bugzilla.gnome.org/show_bug.cgi?id=773568 2016-11-10 17:05:19 -0300 Thibault Saunier * gst-libs/gst/meson.build: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/meson.build: rtsp: Include GstSdp-1.0.gir when generating the gir It is actually needed as we need some symbols. We do not link to libgstsdp as the user of the lib should do it (same with autotools build). This reverts previous commit 2016-11-10 16:36:49 -0300 Thibault Saunier * gst-libs/gst/rtsp/Makefile.am: libs:rtsp: Remove wrong dependency on Sdp for the gir file 2016-11-10 16:36:49 -0300 Thibault Saunier * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/meson.build: libs:rtsp: Remove wrong dependency on Sdp for the gir file 2016-11-10 19:14:24 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl/utils: move gen_shader() to the plugin and remove del_shader() gst_gl_context_del_shader() can be replaced by a g_object_unref(). gst_gl_context_gen_shader() should be replaced by using GstGLSLStage. 2016-10-20 17:17:27 -0300 Thibault Saunier * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * meson.build: * meson_options.txt: meson: Generate girs https://bugzilla.gnome.org/show_bug.cgi?id=773944 2016-11-07 12:01:16 +0100 Petr Kulhavy * gst-libs/gst/audio/audio-channels.c: audio-channels: map buffer read-write only if channels differ gst_audio_buffer_reorder_channels() was always mapping the buffer read-write regardless whether any reordering was needed. If the from and to channel order is identical return immediately without remapping the buffer. Add a small helper function gst_audio_channel_positions_equal() which is used in both gst_audio_reorder_channels() and gst_audio_buffer_reorder_channels(). https://bugzilla.gnome.org/show_bug.cgi?id=773833 2013-09-17 17:42:05 +0200 Joris Valette * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * tests/check/elements/videorate.c: videorate: Add fixed rate property https://bugzilla.gnome.org/show_bug.cgi?id=699077 2016-11-04 16:41:05 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix 120 ms buffers being wrongly emitted Using the max 120 ms buffer size to ensure we have enough space for decoded data meant that Opus could actually return 120 ms' worth of data. https://bugzilla.gnome.org/show_bug.cgi?id=771723 2016-11-04 18:55:44 +0200 Sebastian Dröge * win32/common/libgstvideo.def: win32: Update exports for new API 2016-10-14 15:14:14 +0100 Julien Isorce * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: video: add gst_video_decoder_allocate_output_frame_with_params It adds a third argument to pass GstBufferPoolAcquireParams to gst_buffer_pool_acquire_buffer. If a user subclasses GstBufferPoolAcquireParams, this allows to pass an updated param to the underlying buffer pool at each gst_video_decoder_allocate_output_frame_with_params call. https://bugzilla.gnome.org/show_bug.cgi?id=773165 2016-11-04 16:26:50 +0200 Sebastian Dröge * tests/check/elements/compositor.c: gst: Fix more mentions of interlaced-mode to say interlace-mode 2016-11-04 16:25:55 +0200 Sebastian Dröge * gst-libs/gst/video/video-info.h: video-info: Fix the docs to say interlace-mode, not interlaced-mode 2016-11-03 21:34:45 +0000 Tim-Philipp Müller * win32/common/libgstallocators.def: win32: add new API to .def file Fixes make check and make distcheck 2015-12-11 17:05:14 +0000 Julien Isorce * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstdmabuf.h: allocators: define GST_CAPS_FEATURE_MEMORY_DMABUF Adds "memory:DMABuf" caps feature. Since 1.11 tag. Useful when the the dma-buf buffer cannot be mapped to CPU for r/w requests. Example: protected content or platform constraints. https://bugzilla.gnome.org/show_bug.cgi?id=759358 2016-10-24 11:00:07 -0400 Nicolas Dufresne * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstdmabuf.h: dmabuf: Make the allocator sub-classable This should allos for cleaner code when implement such allocator. https://bugzilla.gnome.org/show_bug.cgi?id=768794 2014-11-27 13:52:52 -0500 Nicolas Dufresne * gst-libs/gst/audio/gstaudiosrc.c: audiosrc: Leave read loop if no longer running In the case a src stops providing data (read calls returns 0). The audio src thread will never leave. Instead, check the condition and leave the loop. 2016-11-03 17:18:05 +0100 Edward Hervey * tests/check/elements/videoscale.c: check: Fix corrupted xml check files By making sure each different videoscale check instance gets logged into different output file 2016-10-05 12:19:12 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglvideomixer.c: gl: GST_GL_TYPE -> GST_TYPE_GL Some deprecated symbols are kept for backwards compatibility 2016-11-02 11:04:32 +0200 Sebastian Dröge * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: Update orc generated files 2016-11-02 11:03:42 +0200 Sebastian Dröge * gst/meson.build: * gst/pbtypes/meson.build: meson: Add pbtypes plugin 2016-11-02 09:36:04 +0200 Sebastian Dröge * tests/check/elements/rawvideoparse.c: Revert "tests: rawvideoparse: add test for flow error handling" This reverts commit 280b4ac2ffc63908a74944f50589b2630be16232. https://bugzilla.gnome.org/show_bug.cgi?id=773666 2015-05-28 22:50:05 +1000 Jan Schmidt * configure.ac: * gst/Makefile.am: * gst/pbtypes/Makefile.am: * gst/pbtypes/gstpbtypes.c: pbtypes: Add a stub plugin that owns the plugins-base dynamic types https://bugzilla.gnome.org/show_bug.cgi?id=750079 2016-10-07 16:20:24 +0900 Changbok Chea * gst/playback/gsturisourcebin.c: urisourcebin: Fix adaptive demuxer's property checking and buffering setting - Add adaptive demuxer's 'connection-speed' property checking - Set adaptive demuxer q2 buffering property via urisrc use_buffering value https://bugzilla.gnome.org/show_bug.cgi?id=772550 2016-11-01 23:51:47 +0200 Sebastian Dröge * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-info.c: Revert "video-color: Allow converting incomplete colorimetry to a string" This reverts commit 158eae7e7e3da3545712dd7d6121492c53085fd9. It already *always* allowed to convert incomplete colorimetry to a string. 2016-05-02 09:48:09 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Reject non-TIME segments https://bugzilla.gnome.org/show_bug.cgi?id=765796 2016-11-01 21:09:04 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasedepayload.c: Revert "basertpdepayload: create valid segment when given non-time segment" This reverts commit 0f609bc6c67fea294f4556627228fed72a74d0fb. 2016-09-30 15:03:52 +0300 Sebastian Dröge * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-info.c: video-color: Allow converting incomplete colorimetry to a string This is only a good idea for non-raw caps. https://bugzilla.gnome.org/show_bug.cgi?id=771376 2016-09-29 14:57:02 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Proxy colorimetry and chroma-site from input to output caps https://bugzilla.gnome.org/show_bug.cgi?id=771376 2016-09-29 14:48:29 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Proxy field order to the output caps https://bugzilla.gnome.org/show_bug.cgi?id=771376 2016-09-29 14:48:00 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Proxy interlace-mode and field-order fields from the input to the output caps https://bugzilla.gnome.org/show_bug.cgi?id=771376 2016-09-29 14:36:42 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/videoorientation.c: * win32/common/libgstvideo.def: video-info: Add optional field-order caps field for interlaced-mode=interleaved Usually this information is static for the whole stream, and various container formats store this information inside the headers for the whole stream. Having it inside the caps for these cases simplifies code and makes it possible to express these requirements more explicitly with the caps. https://bugzilla.gnome.org/show_bug.cgi?id=771376 2016-10-29 11:33:18 +0100 Tim-Philipp Müller * tests/check/elements/rawvideoparse.c: tests: rawvideoparse: add test for flow error handling Also needs fixes in baseparse: https://bugzilla.gnome.org/show_bug.cgi?id=773666 2016-11-01 18:08:45 +0000 Tim-Philipp Müller * meson.build: meson: update version 2016-10-22 11:08:18 +0900 Seungha Yang * gst/playback/gsturisourcebin.c: urisourcebin: Remove trailing whitespace https://bugzilla.gnome.org/show_bug.cgi?id=773341 2016-10-14 15:18:28 +0200 Stian Selnes * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * tests/check/elements/videotestsrc.c: videotestsrc: Make snow deterministic Deterministic generation of snow and smpte is important for tests so that it's not affected by other videotestsrc elements in current or possibly previous tests. https://bugzilla.gnome.org/show_bug.cgi?id=773102 2016-10-14 22:31:41 +0200 Petr Kulhavy * gst/audioconvert/gstaudioconvert.c: audioconvert: optimize mask calculation find_suitable_mask() had complexity O(n^2) on the number of bits. For common case like 2-channel audio the mask was calculated in about 4k loop cycles. Optimize both n_bits_set() and find_suitable_mask() to O(n) where n is the number of bits set in the mask. https://bugzilla.gnome.org/show_bug.cgi?id=772864 2016-10-13 10:12:10 +0900 hoonhee.lee * gst/playback/gstparsebin.c: parsebin: Rename variables include 'decode' to 'parse' https://bugzilla.gnome.org/show_bug.cgi?id=772832 2016-10-31 16:33:41 +0900 Wonchul Lee * gst/playback/gsturisourcebin.c: urisourcebin: Fix GST_TYPE_URI_SOURCE_BIN macro typo https://bugzilla.gnome.org/show_bug.cgi?id=772445 2016-10-03 17:12:29 +0900 Wonchul Lee * gst/playback/gsturisourcebin.c: urisourcebin: fix to log event pointer https://bugzilla.gnome.org/show_bug.cgi?id=772445 2016-09-28 16:13:46 +0900 Wonchul Lee * gst/playback/gsturisourcebin.c: urisourcebin: Make use of adaptive demuxer variable https://bugzilla.gnome.org/show_bug.cgi?id=772445 2016-10-06 11:44:11 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: interpret zero duration as unknown This fixes missing audio when we get buffers with zero duration, denoting unknown duration. When several such buffers are received in a row, they're all at the same timestamp, with zero duration. https://bugzilla.gnome.org/show_bug.cgi?id=771723 2016-09-26 10:50:52 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix "buffer too small" error Always supply a buffer with max size to the decoder, as we can't really decide how many samples will be in the lost packet based on the timestamps we get. https://bugzilla.gnome.org/show_bug.cgi?id=771723 2016-10-28 08:47:40 +0200 Tomasz Zajac * tests/check/libs/sdp.c: sdp: Add tests for rtcp-fb parsing https://bugzilla.gnome.org/show_bug.cgi?id=769698 2016-10-28 08:47:01 +0200 Tomasz Zajac * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Parse rtcp-fb media attributes https://bugzilla.gnome.org/show_bug.cgi?id=769698 2016-08-10 11:38:58 +0200 Tomasz Zajac * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Add rtcp-fb media attributes based on caps https://bugzilla.gnome.org/show_bug.cgi?id=769698 2016-09-07 15:01:13 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-orc.orc: * tests/check/libs/video.c: video: Add VYUY pixel format This format is sometimes the output of JPEG decoders. It is the same as YUY2 and UYVY but with a different component order. https://bugzilla.gnome.org/show_bug.cgi?id=767450 2015-10-15 12:52:27 +0200 Marcin Kolny * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: audioclock: use GstAudioClock* as first argument in GstAudioClock methods All the GstAudioClock method declarations required object of GstClock type as a first argument, but in fact, required GstAudioClock object (runtime check in function body). Instead of checking type in run-time, we can change functions declaration, to accept only GstAudioClock methods. Then, runtime check is not necessary anymore, since always GstAudioClock object is passed to a function. https://bugzilla.gnome.org/show_bug.cgi?id=756628 === release 1.11.0 === 2016-11-01 18:53:15 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.10.0 === 2016-11-01 17:53:24 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.10.0 2016-11-01 17:43:45 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-10-29 11:31:28 +0100 Tim-Philipp Müller * gst/rawparse/gstrawbaseparse.c: rawparse: pass flow returns upstream rawvideoparse wouldn't error out on not-negotiated, but would just keep on going, because it didn't pass the flow return value back to the parent class and thus upstream, so the source wouldnt' stop streaming. 2016-10-27 09:08:41 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudioaggregator.c: Fix incorrect return type in several functions All these should return GstFlowReturn, not gboolean 2016-10-25 08:52:52 -0700 Scott D Phillips * meson.build: meson: Don't depend on gstreamer-check-1.0 on windows https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-24 19:13:22 +0000 Graham Leggett * gst/playback/gstdecodebin3.c: decodebin3: Fix assertion failure when unreffing NULL stream caps GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed https://bugzilla.gnome.org/show_bug.cgi?id=773441 2016-10-25 11:46:38 +0530 Nirbheek Chauhan * meson.build: * tests/check/meson.build: Revert "meson: move gstreamer-check-1.0 dependency to tests/check" This reverts commit e3c7c17b9b0ff8efb81d23e135178a7be7eaeb1e. Does not actually work. See: https://bugzilla.gnome.org/show_bug.cgi?id=773114#c31 2016-10-24 00:28:27 +0100 Tim-Philipp Müller * tests/check/meson.build: meson: fix build outside of gst-all Unknown variable "apiversion". 2016-10-21 00:32:15 -0700 Scott D Phillips * meson.build: * tests/check/meson.build: meson: move gstreamer-check-1.0 dependency to tests/check 2016-10-20 17:17:54 -0300 Thibault Saunier * gst-libs/gst/audio/meson.build: * meson.build: Revert "meson: Use the new `pic` argument on static libs" This reverts commit e3c22605ae96ee1747020c4f367d49faf6916e14. pic was added after 0.35 and will be present in 0.36 (meson documentation was wrong). 2016-10-20 15:48:34 -0300 Thibault Saunier * gst-libs/gst/audio/meson.build: * meson.build: meson: Use the new `pic` argument on static libs We depend on 0.35 already 2016-10-14 14:23:38 +0200 Stefan Sauer * gst-libs/gst/audio/audio.c: audio: don't deref NULL gst_buffer_copy_region() can return NULL when the buffer meta-data is invalid. See https://bugzilla.gnome.org/show_bug.cgi?id=772200 2015-12-04 00:47:38 +1100 Havard Graff * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Error-handling for pushing headers https://bugzilla.gnome.org/show_bug.cgi?id=773105 2016-10-13 12:41:29 +0200 Stian Selnes * gst-libs/gst/video/gstvideodecoder.c: * tests/check/libs/videodecoder.c: videodecoder: Default caps sets format I420 Also the format must be fixed on the default raw caps. If not gst_video_info_from_caps() will fail and gst_video_decoder_negotiate_default_caps() return FALSE. The test simulates the use case where a gap event is received before the first buffer causing the decoder to fall back to the default caps. https://bugzilla.gnome.org/show_bug.cgi?id=773103 2016-05-06 16:30:57 +0200 Havard Graff * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Plug buffer-leak https://bugzilla.gnome.org/show_bug.cgi?id=773107 2016-10-17 09:46:56 +0200 Stefan Sauer * gst-libs/gst/audio/audio.c: audio: fix doc string again. There was a second '*' at the start of the line. Reword + reformat to make it obvious. 2016-10-15 22:50:23 +0200 Stefan Sauer * tests/check/libs/audio.c: tests: add another check for buffer clipping and improve tests Add a test that check that we handle time ranges (a range of time that maps to the same sample). Also update the other tests to use our check api to compare int64 values to get better output on failure. 2016-10-15 21:54:40 +0200 Stefan Sauer * tests/check/libs/audio.c: tests: clipping in TIME does not use the offset Simplify the test and test only what need to be tested. 2016-10-15 21:30:22 +0200 Stefan Sauer * tests/check/libs/audio.c: tests: cleanup libs/audio test Split large tests into small tests and name them specifically. Use helpers to avoid repetition. Make sure the order in the file is the same as we add the to the suite. 2016-10-15 22:02:48 +0530 Nirbheek Chauhan * meson.build: meson: Don't set c_std to gnu99 Use the default for each compiler on every platform instead. This improves our compatibility with compilers that don't have gnu99 as a c_std. 2016-10-15 21:46:27 +0530 Nirbheek Chauhan * gst-libs/gst/audio/meson.build: meson: Add missing audio-enumtypes.h dep in audio-resampler static libs Seen on the Jenkins CI: FAILED: subprojects/gst-plugins-base/gst-libs/gst/audio/audio_resampler_sse41@sta/audio-resampler-x86-sse41.c.o ccache cc '-Isubprojects/gst-plugins-base/gst-libs/gst/audio/audio_resampler_sse41@sta' '-fdiagnostics-color=always' '-I../subprojects/gst-plugins-base/gst-libs/gst/audio' '-Isubprojects/gst-plugins-base/gst-libs/gst/audio' '-Isubprojects/gst-plugins-base/.' '-I../subprojects/gst-plugins-base/.' '-Isubprojects/gst-plugins-base/gst-libs' '-I../subprojects/gst-plugins-base/gst-libs' '-Isubprojects/gstreamer/libs' '-I../subprojects/gstreamer/libs' '-Isubprojects/gstreamer/.' '-I../subprojects/gstreamer/.' '-pipe' '-Wall' '-Winvalid-pch' '-DHAVE_CONFIG_H' '-msse4.1' '-fPIC' '-O0' '-g' '-fPIC' '-I/usr/include/glib-2.0' '-I/usr/lib/glib-2.0/include' '-pthread' '-Isubprojects/gstreamer/gst' '-MMD' '-MQ' 'subprojects/gst-plugins-base/gst-libs/gst/audio/audio_resampler_sse41@sta/audio-resampler-x86-sse41.c.o' '-MF' 'subprojects/gst-plugins-base/gst-libs/gst/audio/audio_resampler_sse41@sta/audio-resampler-x86-sse41.c.o.d' -o 'subprojects/gst-plugins-base/gst-libs/gst/audio/audio_resampler_sse41@sta/audio-resampler-x86-sse41.c.o' -c ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio-resampler-x86-sse41.c In file included from ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio-resampler.h:24:0, from ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio-resampler-private.h:23, from ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio-resampler-macros.h:25, from ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio-resampler-x86-sse41.h:23, from ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio-resampler-x86-sse41.c:24: ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio.h:26:39: fatal error: gst/audio/audio-enumtypes.h: No such file or directory #include ^ compilation terminated. 2016-10-04 17:44:51 -0300 Thibault Saunier * gst-libs/gst/tag/meson.build: * meson.build: * tests/check/getpluginsdir: * tests/check/meson.build: meson: Make use of new environment object and set plugin path to builddir Workaround source_root being the root directory of all projects in the subproject case. Remove now unneeded getpluginsdir and define c++ tests in the same loop. Bump meson requirement to 0.35 2016-10-14 14:21:28 +0200 Stefan Sauer * gst-libs/gst/audio/audio.c: audio: fix typo in doc string 2016-10-13 20:10:09 +0900 Seungha Yang * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: More SELECTION_LOCK when linking to slot Since there can be multiple parsebin in a decodebin3, linking parsebin with MultiQueueSlot should be protected also. https://bugzilla.gnome.org/show_bug.cgi?id=772855 2016-10-13 11:42:28 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: playback: GstStreamType is a flag Therefor don't use equality 2016-10-11 12:36:00 +0200 Edward Hervey * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: playback: decodebin3 and parsebin are streams-aware Elements within can add/remove pads at anytime without complying with the fallback system. https://bugzilla.gnome.org/show_bug.cgi?id=772741 2016-10-10 17:08:11 +0900 Wonchul Lee * gst/playback/gstparsebin.c: parsebin: re-use existing compare_factories utils func https://bugzilla.gnome.org/show_bug.cgi?id=772676 2016-10-07 12:49:18 +0100 Vincent Penquerc'h * ext/vorbis/gstvorbisenc.c: vorbisenc: correct codebooks packet identifier from 3 to 5 https://bugzilla.gnome.org/show_bug.cgi?id=768763 2016-10-06 16:16:30 +0900 Jimmy Ohn * tests/check/elements/opus.c: opusdec: Fix memory leak in test code gst_caps_to_string function returned allocated memory. So, It should be free using g_free function. https://bugzilla.gnome.org/show_bug.cgi?id=772500 2016-10-06 16:24:05 +0900 Jimmy Ohn * tests/check/elements/videorate.c: videorate: Fix memory leakage in test code gst_caps_to_string function returned allocated memory. So, It should be free using g_free function. https://bugzilla.gnome.org/show_bug.cgi?id=772501 2016-09-27 09:24:08 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: remove segment stop modification on eos https://bugzilla.gnome.org/show_bug.cgi?id=768763 2016-09-26 16:31:06 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: take audio clip meta into account for buffer duration https://bugzilla.gnome.org/show_bug.cgi?id=768763 2016-09-26 16:25:14 +0100 Vincent Penquerc'h * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: vorbisenc: strip after-eos samples from the end of the eos buffer https://bugzilla.gnome.org/show_bug.cgi?id=768763 2016-09-30 14:54:24 +0300 Sebastian Dröge * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: Mark some function arguments as const https://bugzilla.gnome.org/show_bug.cgi?id=771376 2016-10-03 08:56:55 +0100 Tim-Philipp Müller * meson.build: meson: require orc 0.4.24 here too Needed for some video stuff. Same requirement as in the autotools build. 2016-10-03 10:59:37 +0530 Arun Raghavan * config.h.meson: * gst-libs/gst/audio/meson.build: * meson.build: meson: Enable SSE intrinsics in audio-resampler This files need to be built with the specific C flags for the corresponding processor optimisations. 2016-10-03 10:58:09 +0530 Arun Raghavan * gst-libs/gst/audio/meson.build: * gst-libs/gst/video/meson.build: * gst/adder/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: meson: Enable Orc in build Top-level meson.build code updated from gst-plugins-good. 2016-09-30 11:35:37 -0300 Thibault Saunier * hooks/pre-commit.hook: * meson.build: * tests/check/getpluginsdir: meson: Setup pre commit hook and fix getpluginsdir for standalone case 2016-09-30 11:41:10 +0100 Tim-Philipp Müller * meson.build: meson: update version === release 1.9.90 === 2016-09-30 13:01:53 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.9.90 2016-09-30 12:12:12 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-09-30 11:42:21 +0300 Sebastian Dröge * po/de.po: po: Update translations 2016-09-29 19:54:52 +0530 Arun Raghavan * gst-libs/gst/audio/Makefile.am: audio-resampler: Add a missing header to noinst_HEADERS 2016-09-29 19:45:16 +0530 Arun Raghavan * gst-libs/gst/audio/audio-resampler-x86-sse41.c: * gst-libs/gst/audio/audio-resampler-x86.h: audiorsample: Fix build on 32-bit x86 Turns out _mm_cvtsi128_si64() isn't available on 32-bit, so only build SSE 4.1 optimisations on x86-64 for now. 2016-09-28 17:37:38 +0530 Arun Raghavan * configure.ac: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-resampler-macros.h: * gst-libs/gst/audio/audio-resampler-neon.h: * gst-libs/gst/audio/audio-resampler-private.h: * gst-libs/gst/audio/audio-resampler-x86-sse.c: * gst-libs/gst/audio/audio-resampler-x86-sse.h: * gst-libs/gst/audio/audio-resampler-x86-sse2.c: * gst-libs/gst/audio/audio-resampler-x86-sse2.h: * gst-libs/gst/audio/audio-resampler-x86-sse41.c: * gst-libs/gst/audio/audio-resampler-x86-sse41.h: * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audioresample: Separate out CFLAGS used for SSE* code This makes sure that we only build files that need explicit SIMD support with the relevant CFLAGS. This allows the rest of the code to be built without, and specific SSE* code is only called after runtime checks for CPU features. https://bugzilla.gnome.org/show_bug.cgi?id=729276 2016-09-28 19:08:52 +0530 Arun Raghavan * gst-libs/gst/audio/audio-resampler.c: audioresample: Fix some gobject introspection warnings 2016-09-26 10:01:08 +0200 Edward Hervey * gst/playback/gstplaybin3.c: playbin3: Remove fallback properties/signals These can all be used via the GstStream API https://bugzilla.gnome.org/show_bug.cgi?id=769079 2016-09-25 22:02:22 +0100 Tim-Philipp Müller * tests/check/meson.build: tests: playbin-complex test needs oggdemux 2016-09-24 21:11:32 +0100 Tim-Philipp Müller * tests/check/libs/videotimecode.c: tests: videotimecode: fix floating point comparisons Comparing floats for equality is not necessarily going to work reliably, so use fail_unless_equals_float() for this. Test would fail on x86 (Intel Atom x5-Z8300). 2016-09-25 16:22:16 +0100 Tim-Philipp Müller * tests/check/elements/adder.c: tests: adder: disable racy flush_start_flush_stop test It's been broken for years, and it's unlikely it will ever be fixed for collectpads/adder now that there's audiomixer which works fine. So let's disable it, since all it does is that it creates noise that distracts from other failures. https://bugzilla.gnome.org/show_bug.cgi?id=708891 2016-09-22 16:15:54 +0200 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: take number of bits into account when copying Copy twice the amount of pixels for 16 bits formats. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747225 2016-09-20 15:12:22 -0400 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Correctly calculate group start times in reverse playback mode We have to calculate from the segment.stop, not the segment.start, as playback goes from stop to start. This fix works around another race condition in streamsynchronizer in my testcase. See https://bugzilla.gnome.org/show_bug.cgi?id=771479 2016-09-20 17:31:55 +0100 Tim-Philipp Müller * tests/examples/seek/stepping.c: * tests/examples/seek/stepping2.c: examples: seek: fix build with MSVC Use G_PI instead of M_PI. Could also have defined _USE_MATH_DEFINES or included gst/math-compat.h but this seems simplest. 2016-09-19 11:27:10 -0400 Nicolas Dufresne * gst-libs/gst/video/video-frame.c: doc: Add missing map flag to gst_video_frame_map() Add missing map flag, and also add unmap call. 2016-09-17 12:42:46 +0200 Sebastian Dröge * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Fix segment boundary checking for reverse playback 2016-09-14 16:51:30 +0200 Sebastian Dröge * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Don't adjust segment time in seek handler basesrc already did that very well for us, adjusting it again on top of that just breaks various non-standard seeks. 2016-09-14 11:29:59 +0200 Sebastian Dröge * configure.ac: configure: Depend on gstreamer 1.9.2.1 2016-09-14 10:14:18 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/video-overlay-composition.c: videooverlaycomposition: document required map flags Fix documentation for gst_video_overlay_composition_blend(). The video frame needs to be mapped with GST_MAP_READWRITE flag. https://bugzilla.gnome.org/show_bug.cgi?id=771382 2016-09-12 18:37:21 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: * gst/playback/gsturisourcebin.c: playback: Use new gst_bin_set_suppressed_flags() API instead of worrying about the flags in multiple places 2016-09-10 20:50:56 +1000 Jan Schmidt * autogen.sh: * common: Automatic update of common submodule From b18d820 to f980fd9 2016-09-10 10:05:28 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/videoscale.c: * tests/check/meson.build: tests: videoscale: split test into multiple ones The videoscale test takes eternities to run, that's not great. Split the test into multiple ones. That way they can be run in parallel. Reduces time to run all tests in -base from 29 secs to 12 secs when using meson/ninja. 2016-09-10 09:53:49 +1000 Jan Schmidt * autogen.sh: * common: Automatic update of common submodule From f49c55e to b18d820 2016-09-07 17:02:23 -0300 Thibault Saunier * tests/check/meson.build: meson: Raise test timeout to 3 minutes The videoscale testsuite (with 50 tests) last almost 2 minutes here 2016-09-07 14:24:54 -0400 Nicolas Dufresne * tests/check/libs/video.c: video/test: Coding style fix 2016-09-05 19:55:58 -0300 Thibault Saunier * tests/examples/overlay/meson.build: meson: Workaround the qt5 module not letting us now the preprocessor is not avalaible If moc-qt5 is not avalaible, meson breaks: https://github.com/mesonbuild/meson/issues/758 2016-09-05 18:40:19 -0300 Thibault Saunier * tests/examples/overlay/meson.build: meson: tests: Do not pull qt5 as a hard dependency 2016-09-05 17:43:13 -0300 Thibault Saunier * meson.build: * tests/check/getpluginsdir: * tests/check/meson.build: meson: Properly find where GStreamer plugins are when using subprojects And fix building with meson 0.34 2016-09-05 12:22:36 -0300 Thibault Saunier * meson.build: meson: Bump version to 1.9.2 2016-08-26 11:30:16 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: safety for failing to determine time length in push mode If we can't find a valid granule near the end of the file, we disable seeking. This guards against the whole file being then read and never going to PLAYING. https://bugzilla.gnome.org/show_bug.cgi?id=770314 2016-08-26 11:27:17 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: increase EOS granpos detection chunk size This can be too small on some files to find a valid granule. https://bugzilla.gnome.org/show_bug.cgi?id=770314 2016-09-04 21:41:04 +0100 Tim-Philipp Müller * tests/examples/seek/meson.build: meson: fix joystick header check for jseek example 2016-09-03 11:57:22 +1000 Jonathan Matthew * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: store missing-plugin structure in current_info->misc again This allows gst_discoverer_info_get_misc to work again, until it finally gets removed. https://bugzilla.gnome.org/show_bug.cgi?id=770643 2016-09-04 16:04:00 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: cycle between video tracks without disabling video 2016-09-01 17:56:24 +0300 Sebastian Dröge * win32/common/libgstrtp.def: win32: Update exports 2016-09-01 22:48:40 +1000 Jan Schmidt * gst-libs/gst/video/video-frame.h: video-frame: Expand the range of caps for extended buffer flags The video buffer flags can be applied to encoded video streams, such as video/x-h264 marked up by a demuxer or parser. 2016-09-01 13:07:07 +0300 Sebastian Dröge * gst/playback/gstplaybackutils.h: playback: Mark internal functions as G_GNUC_INTERNAL 2016-09-01 14:47:02 +0900 Wonchul Lee * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybackutils.c: * gst/playback/gstplaybackutils.h: * gst/playback/gsturidecodebin.c: * gst/playback/gsturisourcebin.c: playbackutils: Move compare_factories_func Move _decode_bin_compare_factories_func function to playbackutils https://bugzilla.gnome.org/show_bug.cgi?id=770692 2016-09-01 09:59:06 +0200 Havard Graff * gst-libs/gst/video/video-frame.h: video-frame: GST_VIDEO_BUFFER_FLAG are only valid for video/x-raw caps https://bugzilla.gnome.org/show_bug.cgi?id=769771 2016-09-01 09:57:33 +0200 Havard Graff * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add buffer flag RETRANSMISSION Useful for elements to know if a buffer is a retransmitted RTP packet. https://bugzilla.gnome.org/show_bug.cgi?id=769771 2016-09-01 12:38:14 +0300 Sebastian Dröge * configure.ac: configure: Require orc >= 0.4.24 Needed for being able to compile video.orc https://bugzilla.gnome.org/show_bug.cgi?id=770698 2016-09-01 12:26:40 +0300 Sebastian Dröge * configure.ac: Back to development === release 1.9.2 === 2016-09-01 12:26:20 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 1.9.2 2016-09-01 11:23:10 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-09-01 10:53:35 +0300 Sebastian Dröge * tests/icles/test-colorkey.c: test-colorkey: #define GDK_DISABLE_DEPRECATION_WARNINGS We use gdk_cairo_create() which is deprecated since 3.22. 2016-08-27 11:22:11 +0100 Tim-Philipp Müller * meson_options.txt: * tests/examples/app/meson.build: * tests/examples/audio/meson.build: * tests/examples/decodebin_next/meson.build: * tests/examples/dynamic/meson.build: * tests/examples/encoding/meson.build: * tests/examples/fft/meson.build: * tests/examples/gio/meson.build: * tests/examples/meson.build: * tests/examples/overlay/meson.build: * tests/examples/playback/meson.build: * tests/examples/playrec/meson.build: * tests/examples/seek/meson.build: * tests/examples/snapshot/meson.build: * tests/meson.build: meson: build examples 2016-08-27 01:17:25 +0100 Tim-Philipp Müller * tests/meson.build: meson: enable tests At least on non-Windows platforms. 2016-08-19 11:09:27 -0700 Thibault Saunier * ext/ogg/gstoggdemux.c: * gst-libs/gst/tag/gsttagdemux.c: Use the new API to post flow ERROR messages on the bus https://bugzilla.gnome.org/show_bug.cgi?id=770158 2016-08-26 20:48:05 +0200 Josep Torra * configure.ac: * tests/check/Makefile.am: build: silence error about pthread for 'make check' in osx Fixes "clang: error: argument unused during compilation: '-pthread'" 2016-08-26 02:20:11 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Handle if update_caps() returns EMPTY Don't assume the returned caps from update_caps() is non-empty. 2016-08-26 02:07:27 +1000 Jan Schmidt * ext/gl/gstglvideomixer.c: gl: Update glvideomixer doc 2016-08-26 02:06:00 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: gl: Add/update docs for glviewconvert, glstereomix Add some example pipelines for glstereomix, and fix up the example pipelines for glviewconvert 2016-08-26 00:29:34 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: glstereomix: Fix caps negotiation The videoaggregator negotiation sequence changed some time back and broke glstereomix. Instead of doing nego incorrectly in the find_best_format() vfunc, do it directly in the update_caps() method. 2016-08-25 12:19:52 +0100 Tim-Philipp Müller * gst-libs/gst/video/meson.build: meson: update for new files in video lib 2016-08-09 11:39:53 +0200 Josep Torra * gst/playback/gstdecodebin2.c: decodebin: forward sticky events on multiqueue When connecting a demuxer through a multiqueue ensure to copy sticky events in order to allow the following factory being properly checked that it is functional. https://bugzilla.gnome.org/show_bug.cgi?id=769580 2016-08-25 11:56:11 +0300 Sebastian Dröge * win32/common/libgstvideo.def: win32: Update libgstvideo.def 2016-07-26 19:14:40 +0200 Xabier Rodriguez Calvar * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video.h: * gst-libs/gst/video/videodirection.c: * gst-libs/gst/video/videodirection.h: * gst-plugins-base.spec.in: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/icles/test-header-compile: videodirection: interface for rotation and flip A GstVideoOrientationMethod enumeration is also provided for the admitted property values. https://bugzilla.gnome.org/show_bug.cgi?id=768687 2016-08-17 23:49:02 +0200 Matej Knopp * gst/playback/gstparsebin.c: parsebin: do not set global tags to stream https://bugzilla.gnome.org/show_bug.cgi?id=770053 2016-08-12 21:21:45 +0530 Nirbheek Chauhan * gst/audiomixer/meson.build: Add support for Meson as alternative/parallel build system https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller Matej Knopp Jussi Pakkanen (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. 2016-08-12 21:21:45 +0530 Nirbheek Chauhan * gst/compositor/meson.build: Add support for Meson as alternative/parallel build system https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller Matej Knopp Jussi Pakkanen (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. 2016-08-12 20:56:31 +0530 Nirbheek Chauhan * .gitignore: * config.h.meson: * ext/alsa/meson.build: * ext/cdparanoia/meson.build: * ext/libvisual/meson.build: * ext/meson.build: * ext/ogg/meson.build: * ext/opus/meson.build: * ext/pango/meson.build: * ext/theora/meson.build: * ext/vorbis/meson.build: * gst-libs/gst/allocators/meson.build: * gst-libs/gst/app/meson.build: * gst-libs/gst/audio/audio_mkenum.py: * gst-libs/gst/audio/meson.build: * gst-libs/gst/fft/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/pbutils/meson.build: * gst-libs/gst/pbutils/pbutils_mkenum.py: * gst-libs/gst/riff/meson.build: * gst-libs/gst/rtp/meson.build: * gst-libs/gst/rtp/rtp_mkenum.py: * gst-libs/gst/rtsp/meson.build: * gst-libs/gst/rtsp/rtsp_mkenum.py: * gst-libs/gst/sdp/meson.build: * gst-libs/gst/tag/meson.build: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video_mkenum.py: * gst-libs/meson.build: * gst/adder/meson.build: * gst/app/meson.build: * gst/audioconvert/meson.build: * gst/audiorate/meson.build: * gst/audioresample/meson.build: * gst/audiotestsrc/meson.build: * gst/encoding/meson.build: * gst/gio/meson.build: * gst/meson.build: * gst/playback/meson.build: * gst/subparse/meson.build: * gst/tcp/meson.build: * gst/typefind/meson.build: * gst/videoconvert/meson.build: * gst/videorate/meson.build: * gst/videoscale/meson.build: * gst/videotestsrc/meson.build: * gst/volume/meson.build: * meson.build: * meson_options.txt: * pkgconfig/meson.build: * sys/meson.build: * sys/ximage/meson.build: * sys/xvimage/meson.build: * tests/check/meson.build: * tests/meson.build: * tools/meson.build: Add support for Meson as alternative/parallel build system https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller Jussi Pakkanen (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. 2016-08-20 11:01:04 +0100 Tim-Philipp Müller * tests/check/libs/.gitignore: tests: ignore new videotimecode test binary 2016-08-19 15:29:13 +0300 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Fix false positive coverity issues They are false positive overflows, because coverity doesn't realize that hours <= 24, minutes < 60 and seconds < 60 in all functions. Also casting the number 60 (seconds in minute, minutes in hour) to guint64 for the calculations, in order to avoid overflowing once we allow more than 24-hour timecodes. CIDs #1371459, #1371458 2016-08-18 12:03:39 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Implement basic support for reverse playback This is enough for making it work in GES, but it's unclear if all the various property combinations are working correctly. It's an improvement over what was there before in any case, which was to just drop all buffers if rate < 0.0. https://bugzilla.gnome.org/show_bug.cgi?id=769624 2016-08-19 12:24:58 +0100 Luis de Bethencourt * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typo in comment Small typo in the comment explaining the code fixed by the previous commit. Fixing it. 2016-08-19 14:19:38 +0300 Sebastian Dröge * gst/rawparse/gstrawvideoparse.c: rawvideoparse: Revert last commit and actually remember the physically last plane Instead of just always taking the last one as before. 2016-08-12 21:04:03 +0530 Nirbheek Chauhan * gst-libs/gst/fft/kiss_fft_s16.h: * gst-libs/gst/fft/kiss_fft_s32.h: gstfft: Use stdint.h instead of _stdint.h _stdint.h is generated by Autotools and we don't really need it. stdint.h is now available on all supported platforms. This really only makes a difference for MSVC, which has it starting from Visual Studio 2015. 2016-08-19 11:57:33 +0100 Luis de Bethencourt * gst/rawparse/gstrawvideoparse.c: rawvideoparse: remove unused assignment Value in last_plane will be overwritten before used, remove unused asignment. Fixes commit 91cf5ac69f9c99fe41d60f42b4174915dd135e7b CID 1371462 2016-08-19 09:27:01 +0200 Wim Taymans * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstfdmemory.h: fdmemory: add flag to avoid close of the fd Add GST_FD_MEMORY_FLAG_DONT_CLOSE to avoid closing the fd when the memory is freed. When you can guarantee the lifetime of the fd is longer than the memory, this can save a dup() call. 2016-08-08 17:54:46 +0200 Carlos Rafael Giani * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Fix and extend unit tests * Add caps change test to unit tests * Cleanup leftover buffers after each unit test * Add missing rawvideoparse entry in .gitignore https://bugzilla.gnome.org/show_bug.cgi?id=769637 2016-08-16 09:31:40 +0200 Carlos Rafael Giani * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * tests/check/elements/rawvideoparse.c: rawvideoparse: Compute plane offsets & strides if no custom ones are set This is useful to ensure that the offsets and strides are computed if only width, height, format etc. in the property config are set. https://bugzilla.gnome.org/show_bug.cgi?id=769797 2016-08-17 13:03:43 +0300 Vivia Nikolaidou * gst-libs/gst/video/gstvideotimecode.c: videotimecode: Fix various coverity issues Most of them are overflow related and false positives, but coverity can't know that these can't overflow without us giving it more information. Add some assertions for this. One was an actual issue with flags comparison. CIDs #1369051, #1369050, #1369049, #1369048, #1369045 2016-08-08 20:04:11 +0100 Tim-Philipp Müller * gst/playback/gstplaybin3.c: playbin3: add "element-setup" signal Allows configuration of plugged elements. https://bugzilla.gnome.org/show_bug.cgi?id=578933 2016-06-16 10:01:50 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: remove eos avoidance workaround This workaround tried to avoid an EOS event when seeking to the end of an Ogg stream in order to find its duration. At some point, an EOS event there would cause any queue2 upstream to pause and not restart on a seek back to the beginning. This now appears to not be the case anymore, and so the workaround can be removed. https://bugzilla.gnome.org/show_bug.cgi?id=767689 2016-08-04 19:06:45 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: videotimecode: Add to docs and exports list 2016-05-18 19:30:52 +0300 Vivia Nikolaidou * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: timeoverlay: Add support to display timecode Choosing time-mode=time-code will display the time code attached to the buffer, or 00:00:00:00 if no time code is found. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-14 17:59:20 +0300 Vivia Nikolaidou * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: Added video time code meta It attaches a GstVideoTimeCodeMeta (SMPTE timecode) as metadata to a buffer. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-14 12:20:38 +0300 Vivia Nikolaidou * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideotimecode.c: * gst-libs/gst/video/gstvideotimecode.h: * gst-libs/gst/video/video.h: * tests/check/Makefile.am: * tests/check/libs/videotimecode.c: videotimecode: Added support for SMPTE time code metadata Can be attached as GstMeta into a video frame. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-07-28 15:04:01 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: don't leak alternate inputs Fix leaks (including parsebin elements) with this pipeline: playbin3 uri=http://127.0.0.1:8079/defaults/exMPD_BIP_TC1/exMPD_BIP_TC1.mpd https://bugzilla.gnome.org/show_bug.cgi?id=769270 2016-08-01 16:00:29 +0100 Luis de Bethencourt * ext/ogg/gstoggparse.c: ogg: check return values in gst_ogg_parse_new_stream Return NULL in gst_ogg_parse_new_stream when either ogg_stream_pagein() or gst_ogg_stream_setup_map() failed. https://bugzilla.gnome.org/show_bug.cgi?id=769299 2016-08-01 15:52:11 +0100 Luis de Bethencourt * ext/ogg/gstoggparse.c: ogg: fix memory leak in gst_ogg_parse_new_stream Avoid leaking the stream object https://bugzilla.gnome.org/show_bug.cgi?id=769299 2016-08-01 13:35:16 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: fix output->decoder_{sink,src} leak output->decoder_sink and output->decoder_src are both going to be replaced in the 2 branches of the following 'if'. https://bugzilla.gnome.org/show_bug.cgi?id=769270 2016-08-01 12:37:43 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: fix tag list leak https://bugzilla.gnome.org/show_bug.cgi?id=769270 2016-08-01 12:28:20 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: consume select-streams event https://bugzilla.gnome.org/show_bug.cgi?id=769270 2016-07-28 15:44:27 +0200 Guillaume Desmottes * tests/examples/decodebin_next/decodebin3.c: * tests/examples/decodebin_next/playbin-test.c: decodebin_next: fix caps and tags leaks The getters are (transfer full). https://bugzilla.gnome.org/show_bug.cgi?id=769270 2016-07-28 14:46:34 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: fix collection ref handling gst_stream_collection_add_stream() consumes the collection reference passed to it but gst_stream_collection_get_stream() is (transfer none). Fix this pipeline: playbin3 uri=http://127.0.0.1:8079/defaults/exMPD_BIP_TC1/exMPD_BIP_TC1.mpd https://bugzilla.gnome.org/show_bug.cgi?id=769270 2016-07-29 11:38:44 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: handle full removal of streams Fix the validate.file.playback.disable_subtitle_track_while_paused.* validate scenarios when using playbin3. https://bugzilla.gnome.org/show_bug.cgi?id=769298 2016-08-02 12:03:18 +0200 Carlos Rafael Giani * gst-libs/gst/riff/riff-media.c: riff: Remove sample rate and channel count boundaries in caps WAV is too generic to impose more-or-less arbitrary boundaries on the sample rate and channel count caps. For example, there are 384 kHz WAV files. Another example: it is in theory possible that somebody puts DSD data into a WAV file, which will then have a sample rate of ~2.8 MHz. For this reason, get rid of the rate and channel caps unless they are fixed values. Downstream anyway usually knows the limitations better. https://bugzilla.gnome.org/show_bug.cgi?id=761514 2016-07-29 15:51:35 +0300 Sreerenj Balachandran * gst-libs/gst/pbutils/codec-utils.c: pbutils: Add more h264 scalable profiles Adding Scalable Constrained High (G.10.1.2.1) and Scalable High Intra(G.10.1.3) profiles to the profile list https://bugzilla.gnome.org/show_bug.cgi?id=769303 2016-07-29 10:49:26 +0300 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: rawaudioparse: Use G_GINT64_MODIFIER for portability https://bugzilla.gnome.org/show_bug.cgi?id=769295 2016-07-29 10:07:23 +0300 Sebastian Dröge * gst/rawparse/gstunalignedaudioparse.c: unalignedaudioparse: Fix element factory name of inner parser 2016-07-26 17:46:02 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add some const qualifiers gst_rtp_buffer_add_extension_onebyte_header() and gst_rtp_buffer_add_extension_twobytes_header() can have a const argument for the actual extension data. 2015-12-26 13:19:01 +0000 Tim-Philipp Müller * gst/playback/gstparsebin.c: parsebin: maintain original order when creating fallback stream collection 2016-07-25 17:54:09 +0200 Carlos Rafael Giani * gst/rawparse/Makefile.am: rawparse: Remove old parser code and wrap new parsers in old elements https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-25 13:45:40 +0200 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstunalignedvideoparse.h: * gst/rawparse/plugin.c: * gst/rawparse/unalignedvideo.h: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Add new raw audio and video parser elements The new rawaudioparse and rawvideoparse elements are based on GstBaseParse and completely replace audioparse and videoparse https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-12 12:59:57 +1000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glframebuffer: rewrite for a more consistent API Facilities are given to create fbo's and attach GL memory (renderbuffers or textures). It also keeps track of the renderable size for use with effective use with glViewport(). 2016-07-12 00:30:22 +1000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstglvideomixer.c: gl: use GLMemory for accessing textures everywhere This simplifies and consolidates a lot of duplicated code creating and modifying textures. 2016-03-20 14:37:03 +1100 Jan Schmidt * gst/playback/gstdecodebin2.c: decodebin: Send stream-group-done to unblock downstream When processing EOS for a pad, send a stream-group-done for the pad in case downstream is waiting for more data on this stream before it can process related streams from the group. https://bugzilla.gnome.org/show_bug.cgi?id=768995 2016-07-22 14:40:25 +0200 Guillaume Desmottes * gst/playback/gstplaybin3.c: playbin3: fix collection leak The collection referenced owned by playbin3 was not released when it was destroyed. https://bugzilla.gnome.org/show_bug.cgi?id=769080 2016-07-22 14:35:17 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: fix collection refcounting My collection leak fix 83f30627cd9460157935e7e9603c60a15555967e introduced a crash in this scenario: audiotestsrc ! decodebin3 ! fakesink The reference handling of collection in decodebin3 wasn't very clear and my attempt to fix the leak introduced a regression where we went one reference short in some other scenarios. Fixing this by: - Giving a strong reference to DecodebinInput making things clearer - Fixing get_merged_collection() which was sometimes returning an existing reference and sometimes a new one. https://bugzilla.gnome.org/show_bug.cgi?id=769080 2016-07-23 14:42:30 +0100 Tim-Philipp Müller * docs/plugins/.gitignore: * tests/check/libs/.gitignore: Add more files to .gitignore 2016-07-22 14:42:31 +0100 Tim-Philipp Müller * gst/playback/gsturisourcebin.c: docs: urisourcebin: fix typo 2016-07-22 23:21:36 +1000 Jan Schmidt * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplaybin3.c: * gst/playback/gsturisourcebin.c: playback: Flesh out docs a bit for new elements Add some more text to the docs for urisourcebin, parsebin, decodebin3 and playbin3, including a warning that they are unstable API for now 2016-07-22 12:52:12 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.signals: * gst/playback/gstparsebin.c: * gst/playback/gstplaybin3.c: docs: add playbin3, decodebin3, parsebin, urisourcebin to docs Docs still need some fleshing out though. 2016-07-13 18:29:52 +0900 Arun Raghavan * ext/vorbis/gstvorbisenc.c: Revert "vorbisenc: push an updated segment stop time when we know it" This reverts commit a16cd5d2a5cbdf084163ead68b59d537d7db99f7. Setting the stop time on the segment breaks reconfiguration, as the encoder signals an EOS, but we reconfigure it an continue to produce buffers. This information should not be required via the segment downstream since we already have the sample count being used to generate buffer durations. https://bugzilla.gnome.org/show_bug.cgi?id=768763 2016-07-20 11:47:48 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix unknown duration playing Ogg over HTTP If the duration is not known from the chain, it might be known by the startup seek. This fixes failure to seek. Merged with a patch from Tim-Philipp Müller https://bugzilla.gnome.org/show_bug.cgi?id=768991 2016-07-20 12:17:57 +0200 Michael Olbrich * gst-libs/gst/audio/gstaudioclock.c: audioclock: use GST_STIME_FORMAT for the correct argument GST_STIME_ARGS is used for time_offset not for last_time. This fixes the format string accordingly. https://bugzilla.gnome.org/show_bug.cgi?id=768990 2016-07-19 18:20:57 +0200 Wim Taymans * gst/audioresample/gstaudioresample.c: audioresample: after a reset, recalculate the ouput size After we reset the resampler, there is no history anymore in the resampler and the previously calculated output size is no longer valid. Recalculate the new output size after a reset to make sure we don't try to convert too much. 2016-07-19 13:26:06 +0100 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: fix some leaks Fixes check-valgrind for subparse test. 2016-07-18 17:26:26 +0100 Tim-Philipp Müller * tests/check/elements/appsink.c: tests: appsink: add minimal test for new pull with timeout functions https://bugzilla.gnome.org/show_bug.cgi?id=768852 2016-07-15 13:20:29 +0200 Joan Pau Beltran * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * win32/common/libgstapp.def: appsink: add _pull_sample/preroll() variants with timeout The _pull_sample() and _pull_preroll() functions block until a sample is available, EOS happens or the pipeline is shut down (returning NULL in the last two cases). This adds _try_pull_sample() and _try_pull_preroll() functions with a timeout argument to specify the maximum amount of time to wait for a new sample. To avoid code duplication, wait forever if the timeout is GST_CLOCK_TIME_NONE and use that to implement _pull_sample/_pull_preroll with the original behavior. Add also corresponding action signals "try-pull-sample" and "try-pull-preroll". https://bugzilla.gnome.org/show_bug.cgi?id=768852 2016-07-13 14:17:25 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: decodebin3: actually check result of accept caps query We were just checking if the query was handled, not its result. Also fix a leak as gst_pad_query() was not consuming the query. https://bugzilla.gnome.org/show_bug.cgi?id=768811 2016-07-18 14:20:11 +0100 Tim-Philipp Müller * sys/xvimage/xvimageallocator.c: xvimagesink: only error out if the allocated memory is too small https://bugzilla.gnome.org/show_bug.cgi?id=767712 2016-07-18 19:59:23 +1000 Duncan Palmer * sys/xvimage/xvimageallocator.c: * sys/xvimage/xvimageallocator.h: xvimageallocator: const correctness in gst_xvimage_allocator_alloc(). https://bugzilla.gnome.org/show_bug.cgi?id=767712 2016-07-07 22:27:15 +1000 Duncan Palmer * sys/xvimage/xvimageallocator.c: * sys/xvimage/xvimageallocator.h: * sys/xvimage/xvimagepool.c: xvimagesink: error out on buffer size sanity check failure. If sanity checks on the buffer size allocated by XvShmCreateImage() fail, call on g_set_error(), rather than just logging a warning, as this failure is fatal. Add a sanity check on buffer size when the video format is RGB. This adds to existing checks on various YUV pixel formats. https://bugzilla.gnome.org/show_bug.cgi?id=767712 2016-07-14 10:33:38 +0200 Guillaume Desmottes * gst/playback/gstplaybin3.c: playbin3: fix stream leak The stream returned by gst_message_streams_selected_get_stream() is reffed. https://bugzilla.gnome.org/show_bug.cgi?id=768811 2016-07-13 16:16:21 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: decodebin3: fix collection leak The collection owned by GstDecodebin3 has to be unreffed when disposing. gst_event_new_stream_collection() doesn't consume the collection passed to it so no need to give it an extra ref. https://bugzilla.gnome.org/show_bug.cgi?id=768811 2016-07-14 10:34:30 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: decodebin3: fix stream leaks MultiQueueSlot owns a ref on the active stream so it should release it when being freed. DecodebinInputStream owns ref on the active and pending stream so they should be dropped when being freed. https://bugzilla.gnome.org/show_bug.cgi?id=768811 2016-07-14 14:24:23 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: decodebin3: fix event leaks Returning GST_PAD_PROBE_HANDLED means we are taking care of unreffing the probe info. https://bugzilla.gnome.org/show_bug.cgi?id=768811 2016-07-14 16:29:39 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: decodebin3: fix caps leaks gst_stream_get_caps() returns a reffed caps. The caps passed to gst_query_set_caps_result() are not transfered. The caps in gst_parse_pad_stream_start_event() was either acquired using gst_pad_get_current_caps() which returns a new ref or explicitly reffed. https://bugzilla.gnome.org/show_bug.cgi?id=768811 2016-07-15 10:31:35 +0200 Guillaume Desmottes * tests/check/elements/audiomixer.c: tests: fix bus leak gst_bus_remove_signal_watch() has to be called to release the ref taken by gst_bus_add_signal_watch(). https://bugzilla.gnome.org/show_bug.cgi?id=768843 2016-07-15 19:48:02 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtp: rtpbasedepayload: simplify code Remove unnecessary helper struct for callbacks. The bclass member of the helper struct was not used, so we can just remove it and the GET_CLASS() call and simplify the whole affair by passing the depayloader directly to the callback. 2016-07-13 16:02:25 +0200 Guillaume Desmottes * gst/playback/gstdecodebin3.c: * gst/playback/gstplaybin3.c: * tests/examples/decodebin_next/decodebin3.c: * tests/examples/decodebin_next/playbin-test.c: playbin3: fix leaks of collection returned by message parse API gst_message_parse_stream_collection() and gst_message_parse_streams_selected() actually return a reffed GstStreamCollection. https://bugzilla.gnome.org/show_bug.cgi?id=768776 2016-07-15 22:47:02 +1000 Jan Schmidt * tools/gst-play.c: gst-play: Allow disabling audio/video/subtitle tracks When cycling through tracks, add 'disable' to the set of states. 2016-06-24 12:25:30 +1000 Jan Schmidt * ext/alsa/gstalsasink.h: alsasink: Remove unused hwparam/swparam pointers The ALSA params structures aren't kept. The pointers aren't used anywhere, so remove them from the struct. 2016-07-13 15:45:33 +0200 Guillaume Desmottes * tools/gst-device-monitor.c: tools: fix device leaks in gst-device-monitor gst_message_parse_device_{added,removed} is actually returning a new ref on the device. https://bugzilla.gnome.org/show_bug.cgi?id=768776 2016-07-12 12:03:53 +0200 Guillaume Desmottes * tests/check/elements/videoscale.c: videoscale: fix bus leak in test gst_bus_add_signal_watch() takes a ref on the bus which should be released using gst_bus_remove_signal_watch(). https://bugzilla.gnome.org/show_bug.cgi?id=768718 2016-07-11 19:17:41 +0200 Xabier Rodriguez Calvar * gst-libs/gst/video/videoorientation.c: videoorientation: Use G_DEFINE_INTERFACE instead of a manually written get_type() https://bugzilla.gnome.org/show_bug.cgi?id=768687 2016-07-12 00:13:32 +0300 Sebastian Dröge * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-format.c: video: Fix some compiler warnings for out-of-range enum values https://bugzilla.gnome.org/show_bug.cgi?id=767816 2016-07-11 21:13:37 +0200 Stefan Sauer * common: Automatic update of common submodule From f363b32 to f49c55e 2016-07-11 19:21:11 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: Fix various gboolean vs GstFlowReturn problems Caught by building with MSVC which gave warnings for these 2016-07-10 10:28:44 +0900 Seungha Yang * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * tests/check/elements/appsrc.c: appsrc: Remove trailing whitespace https://bugzilla.gnome.org/show_bug.cgi?id=768510 2016-07-08 16:43:05 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Remove some more fields from the caps when creating from discoverer info parsed, framed, stream-format and alignment are only relevant for parsers and should not matter here. We still want to be able to use an encoder that can only output byte-stream if the input was avc. https://bugzilla.gnome.org/show_bug.cgi?id=768566 2016-07-08 15:45:25 +0300 Sebastian Dröge * gst-libs/gst/pbutils/missing-plugins.c: missing-plugins: Remove some other fields when cleaning up caps Caps are cleaned up for missing plugins, and for creating encoding profiles and caps descriptions. Fields like streamheader, parsed, framed, stream-format and alignment are not relevant here. The last ones all because a parser will take care of them. https://bugzilla.gnome.org/show_bug.cgi?id=768566 2016-07-08 15:44:26 +0300 Sebastian Dröge * gst-libs/gst/pbutils/pbutils-private.h: pbutils: Mark private functions as G_GNUC_INTERNAL 2016-07-07 17:37:51 +0200 Víctor Manuel Jáquez Leal * gst/subparse/gstsubparse.c: subparse: don't reset allowed tags When a discont buffer is processed, the state is re-initialized, which nullifies the allowed_tags. The problem is when a subrip string with tags is processed and allowed_tags is NULL. The function subrip_unescape_formatting() calls g_strjoinv with a str_array as NULL, leading to a GLib-CRITICAL. This patch removes the allowed_tags resetting, in parser_state_init(), but move it into gst_sub_parse_format_autodetect(). https://bugzilla.gnome.org/show_bug.cgi?id=768525 2016-07-04 17:19:08 +0100 Sergio Torres Soldado * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix potential deadlock caused by blocking read forever Reset the connection "may_cancel" property to avoid a potential deadlock if there is no data to read and the socket stays blocked forever. https://bugzilla.gnome.org/show_bug.cgi?id=768249 2016-07-07 17:29:34 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix compilation on big-endian 2016-07-07 17:10:17 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: More trickmode fix We need to take into account the input segment flags to know whether we should drain the decoder after a new keyframe in trick mode. Otherwise we would have to wait for the next frame to be outputted (and the segment to be activated) which ... well ... kind of beats the whole point of this draining :) 2016-07-06 21:13:19 +0200 Piotr Drąg * po/POTFILES.in: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=768495 2016-07-07 00:27:00 +0300 Sebastian Dröge * gst-libs/gst/audio/Makefile.am: audio: Ship audio-resampler-neon.h 2016-07-06 16:14:32 +0200 Thijs Vermeir * tests/examples/playback/playback-test.c: tests: correctly print guintptr on mac 2016-07-06 13:51:00 +0300 Sebastian Dröge * configure.ac: Back to development === release 1.9.1 === 2016-07-06 13:06:06 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-libs/gst/video/video-orc-dist.c: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/video-enumtypes.c: Release 1.9.1 2016-07-06 11:42:29 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-07-06 10:18:00 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-06-30 16:36:27 +0200 Philippe Normand * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Take stream lock one time only on drain When the drain is triggered from the chain function the lock is already taken so there is no need to take it one more time. https://bugzilla.gnome.org/show_bug.cgi?id=767641 2016-07-04 11:16:55 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix criticals fixating a non existent field https://bugzilla.gnome.org/show_bug.cgi?id=766970 2016-07-04 11:12:25 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Protect samples_in/bytes_out and audio info with object lock It might cause invalid calculations during the CONVERT query otherwise. 2016-07-04 11:07:54 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Protect samples_in/bytes_out and audio info with object lock It might cause invalid calculations during the CONVERT query otherwise. 2016-07-04 11:00:51 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioutilsprivate.c: * gst-libs/gst/audio/gstaudioutilsprivate.h: audioencoder/decoder: Move encoded audio conversion function to a common place No need to duplicate this non-trivial function. 2016-07-04 09:15:03 +0100 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix criticals fixating a non existent field https://bugzilla.gnome.org/show_bug.cgi?id=766970 2016-07-04 10:55:07 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Use the object lock to protect bytes/time tracking And especially don't use the stream lock for that, as otherwise non-serialized queries (CONVERT) will cause the stream lock to be taken and easily causes the application to deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=768361 2016-07-04 10:52:24 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Use the object lock to protect bytes/time tracking 2016-07-04 10:47:36 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutilsprivate.c: * gst-libs/gst/video/gstvideoutilsprivate.h: videoencoder/decoder: Move conversion utility functions to a common header and use consistently in encoder/decoder 2016-03-17 00:19:18 +0200 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: If do-timestamp=TRUE, capture the time when the buffer was pushed to the source ... instead of the time when it was pushed further downstream. https://bugzilla.gnome.org/show_bug.cgi?id=763630 2016-04-29 00:59:42 -0700 Zaheer Abbas Merali * gst-libs/gst/rtp/gstrtpbasedepayload.c: basertpdepayload: create valid segment when given non-time segment This will become an error in 1.10. https://bugzilla.gnome.org/show_bug.cgi?id=765796 2016-06-30 18:53:07 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: tagdemux: fix handling of very short files in push mode By default we'll wait for a certain amount of data before attempting typefinding. However, if the stream is fairly short, we might get EOS before we ever attempted any typefinding, so at this point we should force typefinding and output any pending data if we manage to detect the type. https://bugzilla.gnome.org//show_bug.cgi?id=768178 2016-06-30 17:30:34 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: tagdemux: fix erroring out if we reach EOS without detecting type In 0.10 the source pad was a dynamic pad that was only added once the type had been detected, but in 1.x it's an always source pad, so checking whether it's still NULL won't work to detect if the type has been detected. Makes tagdemux error out when we get EOS but haven't managed to identify the format of the data after the tag. https://bugzilla.gnome.org//show_bug.cgi?id=768178 2016-06-30 17:26:56 +0200 Edward Hervey * gst/playback/gstparsebin.c: parsebin: Fix authors and description 2016-06-30 17:26:14 +0200 Edward Hervey * gst/playback/Makefile.am: * gst/playback/gstplayback.c: * gst/playback/gstplayback.h: * gst/playback/gsturidecodebin3.c: playback: Remove uridecodebin3 This was committed by mistake. The solution forward is to use the appropriate combination of urisourcebin and decodebin3 2016-06-29 18:14:51 +0200 Edward Hervey * configure.ac: * gst/playback/Makefile.am: * gst/playback/gstdecodebin3-parse.c: * gst/playback/gstdecodebin3.c: * gst/playback/gstparsebin.c: * gst/playback/gstplayback.c: * gst/playback/gstplayback.h: * gst/playback/gstplaybin3.c: * gst/playback/gsturidecodebin3.c: * gst/playback/gsturisourcebin.c: * tests/examples/Makefile.am: * tests/examples/decodebin_next/.gitignore: * tests/examples/decodebin_next/Makefile.am: * tests/examples/decodebin_next/decodebin3.c: * tests/examples/decodebin_next/playbin-test.c: playback: New elements With contributions from Jan Schmidt * decodebin3 and playbin3 have the same purpose as the decodebin and playbin elements, except make usage of more 1.x features and the new GstStream API. This allows them to be more memory/cpu efficient. * parsebin is a new element that demuxers/depayloads/parses an incoming stream and exposes elementary streams. It is used by decodebin3. It also automatically creates GstStream and GstStreamCollection for elements that don't natively create them and sends the corresponding events and messages * Any application using playbin can use playbin3 by setting the env variable USE_PLAYBIN3=1 without reconfiguration/recompilation. 2016-06-29 18:14:51 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-channels.c: * gst/audioconvert/gstaudioconvert.c: audioconvert: Handle fallback channel mask for mono correctly It's 0 and no mask should be set for mono at all. https://bugzilla.gnome.org/show_bug.cgi?id=757472 2016-06-27 20:53:37 +0300 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't send another step event to the audio-sink if we got step-done from there Otherwise we would end up with a deadlock as the audio-sink emits step-done from its streaming thread. 2016-06-27 20:49:38 +0300 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Force STEP events on the video-sink for GST_FORMAT_BUFFERS It does not make much sense for audio sinks. 2016-06-24 01:56:11 +0530 Nirbheek Chauhan * configure.ac: configure: Need to add -DGST_STATIC_COMPILATION when building only statically https://bugzilla.gnome.org/show_bug.cgi?id=767463 2016-06-23 10:22:35 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: demote an expected error to debug Dropping a buffer because we have a seek pending is normal, and will now happen when we trigger a seek while going through the packets in a page. So this should not be an error. 2016-06-22 16:02:37 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-resampler.h: * gst-libs/gst/video/video-scaler.c: video-converter: fix interlaced scaling some more Fix problem with the line cache where it would forget the first line in the cache in some cases. Keep as much backlog as we have taps. This generally works better and we could do even better by calculating the overlap in all taps. Allocated enough lines for the line cache. Use only half the number of taps for the interlaced lines because we only have half the number of lines. The pixel shift should be relative to the new output pixel size so scale it. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=767921 2016-06-21 14:53:36 -0400 Nicolas Dufresne * docs/plugins/gst-plugins-base-plugins-docs.sgml: plugin-doc: Minor re-order 2016-06-21 14:40:17 -0400 Nicolas Dufresne * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: Automatic update of plugins doc files 2016-06-21 18:04:23 +0100 Tim-Philipp Müller * tests/check/libs/discoverer.c: tests: discoverer: handle missing ogg/codec plugins gracefully https://bugzilla.gnome.org/show_bug.cgi?id=767859 2016-06-21 11:45:49 -0400 Nicolas Dufresne * common: Automatic update of common submodule From ac2f647 to f363b32 2016-06-20 12:42:28 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: handle missing buffers with no duration If buffer duration is missing, it is parsed from the packet data. This is not foolproof, since Opus can change durations on the fly. https://bugzilla.gnome.org/show_bug.cgi?id=767826 2016-05-19 11:19:20 +0300 Guillaume Desmottes * tests/check/elements/audiomixer.c: fix event leaks in tests The events are supposed to be unreffed when finishing the test, not reffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:20 +0300 Guillaume Desmottes * tests/check/elements/compositor.c: fix event leaks in tests The events are supposed to be unreffed when finishing the test, not reffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:01 +0300 Guillaume Desmottes * tests/check/elements/audiointerleave.c: audiointerleave: fix message leaks by flushing the bus https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:16:37 +0300 Guillaume Desmottes * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix buffer leak If the pad was still owning a buffer when being destroyed it was leaked. Fix a leak with the test_flush_start_flush_stop test. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-06-17 15:11:20 +0200 Michael Olbrich * gst-libs/gst/tag/gsttagdemux.c: tagdemux: preserve duration when skipping a tag at the beginning of a buffer gst_buffer_copy_region() does not copy the duration if it doesn't start with the first byte. We just skip the tag here, so the duration is still valid. https://bugzilla.gnome.org/show_bug.cgi?id=767791 2016-06-21 10:24:15 +0300 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: * tests/check/libs/discoverer.c: discoverer: Only allow serializing OK discoverer infos to GVariants They will be incomplete otherwise and we can't generate the full serialized information, and instead will crash somewhere on the way. https://bugzilla.gnome.org/show_bug.cgi?id=767859 2016-04-14 14:02:27 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix audio glitches with low bitrate vorbis A low bitrate stream which can pack more than 2 seconds of audio in a page would cause the stream's position to be updated not often enough, and would trigger a spurious "jump" via a GAP event. Instead, we update the stream position after calculating the new overall segment position. https://bugzilla.gnome.org/show_bug.cgi?id=764966 2016-06-16 10:55:52 +0100 Mikhail Fludkov * tests/check/elements/opus.c: opusdec: test for PLC timestamp when FEC is enabled. 2016-04-05 12:41:45 +0200 Mikhail Fludkov * gst-libs/gst/audio/gstaudiodecoder.c: * tests/check/libs/audiodecoder.c: audiodecoder: fix invalid timestamps when PLC and delay Elements inherited from GstAudioDecoder, supporting PLC and introducing delay produce invalid timestamps. Good example is opusdec with in-band FEC enabled. After receiving GAP event it delays the audio concealment until the next buffer arrives. The next buffer will have DISCONT flag set which will make GstAudioDecoder to reset it's internal state, thus forgetting the timestamp of GAP event. As a result the concealed audio will have the timestamp of the next buffer (with DISCONT flag) but not the timestamp from the event. 2016-06-11 17:11:30 +0200 Paulo Neves * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: exiftag: Increase serialized geo precision The serialization of double typed geographical coordinates to DMS system supported by the exif standards was previously truncated without need. The previous code truncated the seconds part of the coordinate to a fraction with denominator equal to 1 causing a bug on the deserialization when the test for the coordinate to be serialized was more precise. This patch applies a 10E6 multiplier to the numerator equal to the denominator of the rational number. Eg. Latitude = 89.5688643 Serialization DMS Old code = 89/1 deg, 34/1 min, 7/1 sec DMS New code = 89/1 deg, 34/1 min, 79114800UL/10000000UL Deserialization DMS Old code = 89.5686111111 DMS New code = 89.5688643 The new test tries to serialize a higher precision coordinate. The types of the coordinates are also guint32 instead of gint like previously. guint32 is the type of the fraction components in the exif. https://bugzilla.gnome.org/show_bug.cgi?id=767537 2016-06-10 22:36:32 -0400 Thomas Jones * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: Fix calculations for bytes<->samples conversions Use bpf instead of channels * sizeof(gint16). https://bugzilla.gnome.org/show_bug.cgi?id=767505 2016-06-10 14:04:36 -0400 Thomas Jones * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: Use GST_BUFFER_PTS() instead of GST_BUFFER_TIMESTAMP() https://bugzilla.gnome.org/show_bug.cgi?id=767506 2016-06-10 22:50:41 -0400 Thomas Jones * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: fix timestamp calculation for audio channels > 1 We have to use bps*channels instead of just bps, which is exactly what bpf is for. https://bugzilla.gnome.org/show_bug.cgi?id=767507 2015-04-09 19:09:17 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideodecoder.c: videodecoder: handle buffer's flags at offset For reverse playback it is important to handle correctly the frame sync points, which is set when the input buffer doesn't have the DELTA_UNIT flag. This is handled correctly when decoder is packetized, but when it is not the frame's sync point is not copied, and the reverse playback never decodes frame batches. The current patch adds the buffer's flags to the Timestamp list, where the timestamp and duration of the input buffers are hold. 2015-04-09 19:18:58 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideodecoder.c: videodecoder: squash two message logs into one There were two consecutive log messages in gst_video_decoder_decode_frame(). Given the information they provide, it is more efficient to squash them into a single one. 2015-04-09 19:16:10 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideodecoder.c: videodecoder: playback rate is in input_segment The playback rate is hold in the input_segment member variable, not in the output_segment, and the parse_gather list was never filled because of that. This patch changes the comparison with input_segment. 2016-06-09 19:02:49 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Use input segment rate instead of output segment rate to decide whether the drain on keyframes The output segment is only set up after data is output, which might be far in the future for reverse playback. Also we are here interested in the state at the current *input* frame (which is the keyframe), not any possible output. 2016-06-09 18:53:54 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Only drain in KEY_UNITS trick mode after a keyframe in forwards playback mode For reverse playback the same behaviour was already implemented in flush_parse(). For reverse playback, chain_forward() is only used to gather frames and not for decoding, and it is actually called by the draining logic, causing an infinite recursion. 2016-06-07 09:48:35 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't push late frames While it's a bit tricky to discard frames *before* decoding (because we might not be sure which data is needed or not by the decoder), we can discard them after decoding if they are too late anyway. Any following basetransform based element or similar would drop the frame too. 2016-06-07 10:31:59 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Avoid recursive drain/flush calls _chain_forward() can also be called with reverse playback. Blindly calling drain_out() on DISCONT buffers would end up in a recursive call. 2016-06-04 09:51:17 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Drain out keyframes in TRICK_MODE_KEY_UNITS When asked to just decode keyframe, if we got a keyframe drain out the decoder straight away. This avoids having to wait for the next frame and reduces delay even more. https://bugzilla.gnome.org/show_bug.cgi?id=767232 2016-06-04 09:49:00 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Drain decoder on DISCONT buffers This ensures the decoder is properly drained out when receiving a DISCONT buffer. The optimal way of doing this would have been to receive a GAP event before hand but it is not always possible. Fixes big delays with some decoders (ex gst-libav) that will not drain out data when only decoding keyframes. https://bugzilla.gnome.org/show_bug.cgi?id=767232 2016-06-01 11:02:12 +0200 Michael Olbrich * gst-libs/gst/tag/gsttagdemux.c: tagdemux: preserve timestamp when skipping a tag at the beginning of a buffer gst_buffer_copy_region() does not copy the timestamp if it doesn't start with the first byte. We just skip the tag here, so the timestamp is still valid. https://bugzilla.gnome.org/show_bug.cgi?id=767173 2016-05-17 17:14:49 +0300 Guillaume Desmottes * gst-libs/gst/video/gstvideoaggregator.c: gst-libs: gl, video: use MAY_BE_LEAKED flag https://bugzilla.gnome.org/show_bug.cgi?id=767162 2016-05-10 13:56:13 +0200 Stian Selnes * gst-libs/gst/video/video-color.c: * tests/check/libs/video.c: video-color: Fix colorimetry IS_UNKNOWN Fix issue with colorimetry default indicies not being in sync with the actual table causing IS_UNKNOWN() to sometimes fail. https://bugzilla.gnome.org/show_bug.cgi?id=767163 2016-06-02 13:07:01 +0200 Guillaume Desmottes * ext/opus/gstopusenc.c: * gst/playback/gstsubtitleoverlay.c: opusenc, subtitleoverlay: use MAY_BE_LEAKED flag Flag caps that are cached locally and will never be freed. https://bugzilla.gnome.org/show_bug.cgi?id=767155 2016-06-01 16:56:13 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Create a new decode element with the parser/convert capsfilter if there is a multiqueue after the parser https://bugzilla.gnome.org/show_bug.cgi?id=767102 2016-05-23 15:11:53 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Make sure the DISCONT flag is set on the outgoing buffer The base class was setting the DISCONT flag before checking whether the buffer would be in segment or not. Fix issues with DISCONT flags not being properly propagated downstream when decoders buffers were out of segment. https://bugzilla.gnome.org/show_bug.cgi?id=766800 2016-06-01 15:31:52 +0200 Joan Pau Beltran * docs/design/part-mediatype-video-raw.txt: docs: design: add IYU2 raw video format description https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-01 12:36:38 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: enable shaded background drawing for new IYU2 format 2016-05-30 16:40:26 +0200 Joan Pau Beltran * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-scaler.c: * tests/check/libs/video.c: video: add IYU2 format This existed in 0.10 and is needed by dc1394src. IYU2 format is a YUV fully-sampled packed format similar to v308 but with different component order (U-Y-V instead of Y-U-V). http://www.fourcc.org/yuv.php#IYU2 https://bugzilla.gnome.org/show_bug.cgi?id=763026#c5 2016-05-24 23:39:27 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: glvideomixer: fix race retrieving the GL context from the display _get_gl_context() can be called concurrently from either propose_allocation() or decide_allocation(). If it so happens that this happens at the same time, the check for whether we already had a GL context was outside the lock. Inside the lock and loop, the first thing that happens is that we unref the current GL context (if valid) as if there was a conflict adding it to the display. If the timing was unlucky, subsequent use of the GL context would be referencing an already unreffed GL context object resulting in a critical: g_object_ref: assertion 'object->ref_count > 0' failed https://bugzilla.gnome.org/show_bug.cgi?id=766703 2016-03-17 23:47:48 +0530 Nirbheek Chauhan * ext/libvisual/visual.c: libvisual: Factor out endian-order RGB formats MSVC seems to ignore preprocessor conditionals inside static pad templates. Also remove unnecessary quotes inside caps strings. 2016-05-24 00:44:21 +0100 Tim-Philipp Müller * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: g-i: pass compiler env to g-ir-scanner It's what introspection.mak does as well. Should fix spurious build failures on gnome-continuous. 2016-05-23 19:28:39 +0100 Tim-Philipp Müller * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: use default error messages in some more cases 2016-05-23 15:35:39 +0100 Tim-Philipp Müller * ext/opus/gstopusdec.c: opusdec: use default error message strings in more cases Details should go into the debug message. We should probably make up new codes for encoder/decoder lib init failures too. 2016-05-19 16:55:31 +0300 Guillaume Desmottes * ext/gl/gstglmosaic.c: glmosaic: fix shader leak gst_gl_mosaic_init_shader() is called twice with test_glmosaic so the first shader was leaked. https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-14 11:56:59 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't wait if input buffer is after output If the input buffer is after the end of the output buffer, then waiting for more data won't help. We will never get an input buffer for this point. This fixes compositing of streams from rtspsrc. https://bugzilla.gnome.org/show_bug.cgi?id=766422 2016-05-19 12:26:05 -0400 Olivier Crête * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: Post error message on GST_FLOW_ERROR https://bugzilla.gnome.org/show_bug.cgi?id=766265 2016-05-14 14:41:28 +0200 Olivier Crête * ext/opus/gstopusdec.c: opusdec: Use GST_AUDIO_DECODER_ERROR This way, the first invalid stream won't break all decoding. https://bugzilla.gnome.org/show_bug.cgi?id=766265 2016-05-16 12:52:50 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideosink.c: videosink: ensure the debug category is always initialized gst_video_sink_center_rect() can be called without a GstVideoSink having been instantiated so we can't relly on the video sink class_init function to init the category. Fix a warning when running: GST_CHECKS=test_video_center_rect GST_DEBUG=6 G_DEBUG=fatal_warnings make libs/video.check-norepeat https://bugzilla.gnome.org/show_bug.cgi?id=766510 2016-05-16 15:39:02 +0200 Guillaume Desmottes * gst/playback/gstplaybin2.c: playbin: fix suburidecodebin leak We take a ref before removing which was never freeded. The element is still alive anyway because the group has its own ref as well. Fix a leak with the 'test_suburi_error_wrongproto' test. https://bugzilla.gnome.org/show_bug.cgi?id=766515 2016-05-16 12:27:50 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: canonicalise function names Had to be done at some point: gst_videoaggregator_* -> gst_video_aggregator_* Also fix up some function names with typos. 2016-05-16 09:52:35 +0100 Tim-Philipp Müller * tests/check/elements/playbin.c: tests: playbin: add test for new "element-setup" signal https://bugzilla.gnome.org/show_bug.cgi?id=578933 2016-05-14 11:28:01 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: playbin: add "element-setup" signal Allows configuration of plugged elements. https://bugzilla.gnome.org/show_bug.cgi?id=578933 2016-05-15 14:43:11 +0100 Tim-Philipp Müller * Makefile.am: * gst-libs/gst/app/.gitignore: * gst-libs/gst/app/gstapp-marshal.list: app: remove marshaller files from git 2016-05-15 14:37:41 +0100 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: app: use generic marshallers 2016-05-15 12:01:17 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Reset keyframe_granule when needed This avoids ending up with bogus values when doing flushing seeks in push-mode. https://bugzilla.gnome.org/show_bug.cgi?id=766467 2016-05-15 14:34:33 +0200 Edward Hervey * gst/compositor/compositor.c: compositor: Check if we get a valid display ratio As is done everywhere else, and avoids setting bogus values And remove useless * checks (we always provide valid values and it's an internal function). CID #1320700 2016-05-15 13:31:03 +0300 Sebastian Dröge * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: Update for git master 2016-03-04 22:10:47 +0100 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedaudioparse.h: * gst/rawparse/plugin.c: * gst/rawparse/unalignedaudio.h: rawparse: Add unaligned raw audio parsing to audioparse and add new element This helps in cases where raw audio data is being delivered, but the buffers do not come in sample aligned sizes. The new unalignedaudioparse bin can be autoplugged and configures an internal audioparse element to align the data. audioparse itself gets support for audio/x-unaligned-raw input caps; the output caps then contain the same information, except that the name is changed to audio/x-raw (since audioparse aligns the data). This ensures that souphttpsrc ! audioparse still works. https://bugzilla.gnome.org/show_bug.cgi?id=689460 2016-05-14 15:43:24 +0300 Matthew Waters * gst-libs/gst/video/gstvideoaffinetransformationmeta.h: video/affinetransformationmeta: define the coordinate space used Based on the expected output from the already existing usage by androidmedia and the opengl plugins. https://bugzilla.gnome.org/show_bug.cgi?id=764667 2015-12-17 19:38:33 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for WebVTT 2015-09-30 17:55:22 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/playsink.c: tests: playsink: add minimal test for playsink element Attempt to reproduce leak. https://bugzilla.gnome.org/show_bug.cgi?id=755867 2016-05-14 16:27:26 +0300 Matthew Waters * ext/gl/gstglvideomixer.c: gl: take the affine transformation in NDC Provide a function to get the affine matrix in the meta in terms of NDC coordinates and use as a standard opengl matrix. Also advertise support for the affine transformation meta in the allocation query. 2016-05-14 15:50:57 +0300 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: actually attempt to propose an allocation upstream We were always failing the allocation query as a flag was never being set to signal a successful negotiation. Fix by setting the required flag on a successful caps event from upstream. 2016-05-10 12:17:34 +0200 Guillaume Desmottes * tests/check/elements/vorbistag.c: vorbistag: fix buffer leaks in tests It internally uses gst_check_chain_func() so we should call gst_check_drop_buffers() when tearing down tests to free the buffers which have been exchanged through the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=766226 2016-05-10 12:17:34 +0200 Guillaume Desmottes * tests/check/elements/appsrc.c: appsrc: fix buffer leaks in tests It internally uses gst_check_chain_func() so we should call gst_check_drop_buffers() when tearing down tests to free the buffers which have been exchanged through the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=766226 2016-05-10 12:17:34 +0200 Guillaume Desmottes * tests/check/elements/audiorate.c: audiorate: fix buffer leaks in tests It internally uses gst_check_chain_func() so we should call gst_check_drop_buffers() when tearing down tests to free the buffers which have been exchanged through the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=766226 2016-05-10 21:34:53 +0900 Hyunjun Ko * gst-libs/gst/sdp/gstsdpmessage.c: sdp: parse sdp attributes in case that sdp message doesn't contain mikey message https://bugzilla.gnome.org/show_bug.cgi?id=766204 2016-05-10 16:44:04 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * win32/common/libgstapp.def: appsrc: Add duration property for providing a duration in TIME format https://bugzilla.gnome.org/show_bug.cgi?id=766229 2016-05-10 10:01:12 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: videodecoder/encoder: Correct GST_IS_*CODER_CLASS macros They are currently not used, but would result in a compiler error due to wrong variable name usage. https://bugzilla.gnome.org/show_bug.cgi?id=766203 2016-05-05 13:16:57 +0300 Sebastian Dröge * gst/tcp/gstmultihandlesink.c: multihandlesink: Warn if trying to change the state from the streaming thread Instead of silently returning GST_STATE_CHANGE_FAILURE. 2016-05-04 11:33:50 +1000 Alessandro Decina * gst/playback/gstdecodebin2.c: decodebin: an element can negotiate before we block it When we initialize an element in decodebin, we 1) set it to PAUSED and push sticky events on its sinkpad to trigger negotiation 2) block its src pad(s) to detect CAPS events. We can't block before 1) as that would lead to a deadlock. It's possible (and common) tho that an element configures its srcpad during 1) and before 2). Therefore before this change we would typically block and expose an element's pad only once the element output its first buffer, triggering sticky events to be resent. One consequence of this behaviour is that it sometimes broke renegotiation. With this change now we consider a pad ready to be exposed when it's ->blocked or has fixed caps (which were set before we could block it). https://bugzilla.gnome.org/show_bug.cgi?id=765456 2016-05-04 12:17:59 +1000 Matthew Waters * ext/gl/gstglmixer.c: gl/egl: replace gsteglimagememory with an EGLImage wrapper That can be passed to GstGLMemoryEGL. This also ports the dmabuf uploader to GstEGLImage and GstGLMemoryEGL. 2016-05-03 11:11:24 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Set blend functions in ::negotiated_caps() instead of ::fixate_caps() The latter should not change any state but just fixate the caps, while the former is always called when srcpads caps are decided. https://bugzilla.gnome.org/show_bug.cgi?id=765324 2016-05-02 14:21:55 -0300 Thiago Santos * ext/opus/gstopusdec.c: * tests/check/elements/opus.c: opusdec: intersect with the filter before returning on getcaps So upstream gets a smaller set to decide upon as it is what it requested with the filter https://bugzilla.gnome.org/show_bug.cgi?id=765684 2016-05-02 10:23:09 -0300 Thiago Santos * ext/opus/gstopusdec.c: * tests/check/elements/opus.c: opusdec: improve getcaps to return all possible rates The library is capable of converting to different rates. Includes tests. https://bugzilla.gnome.org/show_bug.cgi?id=765684 2016-05-02 10:21:52 -0300 Thiago Santos * ext/opus/gstopusdec.c: opusdec: remove artificial restriction on rate negotiation Remove restrictions when rate is 48000, the underlying lib supports converting any of the input to any of the output rates. https://bugzilla.gnome.org/show_bug.cgi?id=765684 2016-05-01 23:19:57 -0300 Thiago Santos * ext/opus/gstopusdec.c: opusdec: refactor getcaps repeated code into a function Easier to read and maintain 2016-05-02 10:36:07 -0300 Thiago Santos * tests/check/elements/opus.c: tests: opus: remove apparently useless macro in tests 2016-04-29 11:06:49 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Fix caps memory leak 2016-04-28 11:21:47 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Recurse into nested container profiles and only add the final audio/video streams If we e.g. have AVI with DV container with video/audio inside the DV container, we can't handle this at this point with an encoding profile. Instead of erroring out, flatten the container hierarchy. https://bugzilla.gnome.org/show_bug.cgi?id=765708 2016-04-28 11:18:23 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Fail to create encoding profile from discoverer info if no streams could be added https://bugzilla.gnome.org/show_bug.cgi?id=765708 2016-04-28 11:15:53 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Move adding of each stream to a helper function https://bugzilla.gnome.org/show_bug.cgi?id=765708 2015-08-21 10:40:33 +0200 Aurélien Zanelli * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: exiftag: handle GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM tag This tag match the EXIF_TAG_FOCAL_LENGTH_IN_35_MM_FILM exif tag and is stored on a short. Hence there is a precision loss compared to the GstTag which is a double value. https://bugzilla.gnome.org/show_bug.cgi?id=753930 2015-08-21 10:39:36 +0200 Aurélien Zanelli * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: add GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM tag It is the 35 mm equivalent focal length of the lens, mainly used in photography. Tag value is stored in a double value to be consistent with GST_TAG_CAPTURING_FOCAL_LENGTH. https://bugzilla.gnome.org/show_bug.cgi?id=753930 2016-04-28 09:59:25 +0300 Guillaume Desmottes * ext/opus/gstopusdec.c: opusdec: fix caps leaks The caps returned by gst_pad_get_allowed_caps() was leaked. https://bugzilla.gnome.org/show_bug.cgi?id=765706 2016-04-27 18:08:46 +0900 Kipp Cannon * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: Add const to segment parameter of gst_audio_buffer_clip() e.g., allows this to be used with the reference retrieved by gst_event_parse_segment(). https://bugzilla.gnome.org/show_bug.cgi?id=765663 2016-04-21 08:45:40 +0200 Jakub Adam * sys/ximage/ximagesink.c: ximagesink: generate reconfigure on window handle change When ximagesink is given a new window handle, it should check its geometry and if the size of the new window differs from the previous one, create reconfigure event in order to get a chance to negotiate a more suitable image resolution with the upstream elements. We can't rely on receiving Expose or ConfigureNotify from the X server for the newly assigned window, which would also generate reconfigure. https://bugzilla.gnome.org/show_bug.cgi?id=765424 2016-04-25 17:16:04 +0300 Sebastian Dröge * gst/encoding/gstsmartencoder.c: smartencoder: Only accept TIME segments for real ... and don't try to push pending data without ever having received a SEGMENT event before EOS https://bugzilla.gnome.org/show_bug.cgi?id=765541 2016-04-25 16:48:36 +0300 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: H265 level idc 0 is not valid Don't put level=0 into the caps, it confuses other elements. https://bugzilla.gnome.org/show_bug.cgi?id=765538 2016-04-25 16:47:00 +0300 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: H264 level idc 0 is not valid Don't put level=0 into the caps, it confuses other elements. https://bugzilla.gnome.org/show_bug.cgi?id=765538 2016-04-25 16:06:39 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Remove codec_data and streamheader fields from constraint caps When converting discoverer output to an encoding profile, it makes sense to omit these. It's very very unlikely that our encoder is going to produce bit by bit the same codec_data or streamheader. https://bugzilla.gnome.org/show_bug.cgi?id=765534 2016-04-25 15:05:36 +0300 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.h: encoding-profile: Don't put G_BEGIN_DECLS around #include statements It should only be around our own declarations. 2016-04-22 15:07:10 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: add more fastpaths for I420 -> RGB Use the I420->BGRA and a new I420->ARGB to speed up any I420 to RGB operation. 2016-04-19 17:36:20 +0200 Josep Torra * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstsdpmessage.c: sdp: update since markers to 1.8.1 for some new APIs As we decided to backport some fixes we update the since markers. 2016-04-17 16:21:32 +0100 Tim-Philipp Müller * tests/check/pipelines/vorbisenc.c: tests: vorbisenc: fix with CK_FORK=no 2016-04-12 16:32:20 +0300 Vivia Nikolaidou * gst/playback/gstdecodebin2.c: decodebin: Always add a multiqueue in single-stream use-buffering pipelines If we are configured to use buffering and there is no demuxer in the chain, we still want a multiqueue, otherwise we will ignore the use-buffering property. In that case, we will insert a multiqueue after the parser or decoder - not elsewhere, otherwise we won't have timestamps. https://bugzilla.gnome.org/show_bug.cgi?id=764948 2016-04-18 13:46:55 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: plug caps leak It was losing ref of the original 'ret' caps that would be returned or returning it with 2 references to it. 2016-03-28 15:44:27 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: properly handle interlace-mode restrictions videoaggregator can't handle interlace-mode changes so it must always restrict itself to the first interlacing mode it receives. Tests included https://bugzilla.gnome.org/show_bug.cgi?id=754495 2016-04-18 17:39:02 +0300 Guillaume Desmottes * tools/gst-play.c: gst-play: call gst_deinit() So we can use gst-play to track memory leaks. https://bugzilla.gnome.org/show_bug.cgi?id=765216 2016-04-15 13:22:51 -0700 Reynaldo H. Verdejo Pinochet * gst/compositor/compositor.c: Drop usage of 'overlayed' to mean 'overlaid' 2016-04-15 17:48:26 +0100 Tim-Philipp Müller * win32/common/libgstsdp.def: win32: update .def for new API 2016-04-16 02:11:59 +1000 Jan Schmidt * gst-libs/gst/audio/gstaudioringbuffer.c: Revert "audioringbuffer: start ringbuffer if needed upon commit" This reverts commit 13ee94ef1091f8a8a90dbd395b39876c26c5188e. Causes audio glitches at startup by starting to output segments from the ringbuffer before it has been filled / fully prerolled. https://bugzilla.gnome.org/show_bug.cgi?id=657076 2016-04-15 00:18:50 -0700 Aleix Conchillo Flaqué * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: sdpmessage: new gst_sdp_media_parse_keymgmt/gst_sdp_media_parse_keymgmt We add a couple of new functions gst_sdp_media_parse_keymgmt and gst_sdp_media_parse_keymgmt. We also implement gst_sdp_message_attributes_to_caps and gst_sdp_media_attributes_to_caps in terms of these new functions and also gst_mikey_message_to_caps. 2016-04-14 23:29:34 -0700 Aleix Conchillo Flaqué * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.c: mikey: add new function gst_mikey_message_to_caps 2016-04-15 12:54:32 +0100 Vincent Penquerc'h * gst/subparse/gstsubparse.c: subparse: fix build with GCC 4.6.3 gstsubparse.c: In function ‘parse_subrip’: gstsubparse.c:988:7: error: ignoring return value of ‘strtol’, declared with attribute warn_unused_result [-Werror=unused-result] cc1: all warnings being treated as errors https://bugzilla.gnome.org/show_bug.cgi?id=765042 2016-04-15 13:08:38 +0200 Josep Torra * tests/icles/.gitignore: .gitignore: add test-resample binary 2016-04-14 17:26:54 -0700 Aleix Conchillo Flaqué * gst-libs/gst/sdp/gstmikey.c: mikey: allow passing srtp or srtcp to create mikey message Current implementation requires all srtp and srtcp parameters to be given in the caps. MIKEY uses only one algorithm for encryption and one for authentication so we now allow passing srtp or srtcp parameters. If both are given srtp parametres will be preferred. https://bugzilla.gnome.org/show_bug.cgi?id=765027 2016-04-14 10:00:06 +0100 Julien Isorce * README: * common: Automatic update of common submodule From 6f2d209 to ac2f647 2016-04-13 10:07:33 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-multiview.c: * gst-libs/gst/video/video-overlay-composition.c: videometa: Initialize all fields of all metas with default values The metas are not allocated with all fields initialized to zeroes. https://bugzilla.gnome.org/show_bug.cgi?id=764902 2016-04-11 15:28:00 +0000 Arjen Veenhuizen * gst-libs/gst/video/gstvideometa.c: videometa: Explicitly initialize GstVideoCropMeta on init It is not allocated with all fields initialized to 0. https://bugzilla.gnome.org/show_bug.cgi?id=764902 2016-03-21 16:34:37 +0100 Guillaume Desmottes * ext/alsa/gstalsa.c: alsa: properly convert position-less channels from ALSA The only way for ALSA to expose a position-less multi channels is to return an array full of SND_CHMAP_MONO. Converting this to a GST_AUDIO_CHANNEL_POSITION_MONO array would be invalid as GST_AUDIO_CHANNEL_POSITION_MONO is meant to be used only with one channel. Fix this by using GST_AUDIO_CHANNEL_POSITION_NONE which is meant to be used for position-less channels. https://bugzilla.gnome.org/show_bug.cgi?id=763799 2016-03-21 16:29:39 +0100 Guillaume Desmottes * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: don't attempt to reorder position-less channels As said in its doc GST_AUDIO_CHANNEL_POSITION_NONE is meant to be used for "position-less channels, e.g. from a sound card that records 1024 channels; mutually exclusive with any other channel position". But at the moment using such positions would raise a 'g_return_if_reached' warning as gst_audio_get_channel_reorder_map() would reject it. Fix this by preventing any attempt to reorder in such case as that's not what we want anyway. https://bugzilla.gnome.org/show_bug.cgi?id=763799 2016-03-21 07:26:50 -0400 Guillaume Desmottes * gst-libs/gst/audio/gstaudioringbuffer.c: audio: add debug output if channels mapping does not match https://bugzilla.gnome.org/show_bug.cgi?id=763985 2016-03-21 11:58:13 +0100 Guillaume Desmottes * ext/alsa/gstalsa.c: alsa: add some debugging output to alsa_detect_channels_mapping() https://bugzilla.gnome.org/show_bug.cgi?id=763985 2016-03-21 11:46:45 +0100 Guillaume Desmottes * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-channels.h: * win32/common/libgstaudio.def: gst-audio: add gst_audio_channel_positions_to_string() We currently don't log much about channel positions making debugging harder as it should be. This is the first step in my attempt to improve this. https://bugzilla.gnome.org/show_bug.cgi?id=763985 2016-03-21 05:09:10 -0400 Guillaume Desmottes * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: factor out alsa_detect_channels_mapping() This code was duplicated in alsasrc and alsasink. https://bugzilla.gnome.org/show_bug.cgi?id=763985 2016-03-21 05:06:18 -0400 Guillaume Desmottes * ext/alsa/gstalsa.h: alsa: coding style fix Was using tabs instead of spaces. https://bugzilla.gnome.org/show_bug.cgi?id=763985 2016-04-12 16:34:00 +0300 Vivia Nikolaidou * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: fdmemory, rtpbasedepayload: Ran gst-indent https://bugzilla.gnome.org/show_bug.cgi?id=764948 2016-04-12 16:25:12 +0300 Vivia Nikolaidou * gst/playback/gstdecodebin2.c: decodebin: Rename misleading variable is_parser_converter into is_parser In that place, the variable isn't checking whether the element is a converter, only if it is a parser. https://bugzilla.gnome.org/show_bug.cgi?id=764948 2016-04-11 16:43:45 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: glbasemixer: chain up to the parent implementation 2016-04-11 11:28:09 +0200 Fabrice Bellet * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audio: Fix a race with the audioringbuffer thread There is a small window of time where the audio ringbuffer thread can access the parent thread variable, before it's initialized by the parent thread. The patch replaces this variable use by g_thread_self(). https://bugzilla.gnome.org/show_bug.cgi?id=764865 2016-04-04 20:55:51 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: repect the result of find_best_format in the default update_caps We weren't using the result of find_best_format at all. Also, move the find_best_format usage to the default update_caps() to make sure that it is also overridable. https://bugzilla.gnome.org/show_bug.cgi?id=764363 2016-04-06 17:57:28 +0100 Tim-Philipp Müller * tests/check/libs/gstlibscpp.cc: tests: libscpp: test RTP/RTCP buffer init macros with C++ compiler 2016-04-06 21:03:19 +1000 Jan Schmidt * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Don't complain when stream-start is the first event. When blocking the subtitle pad, it's expected that stream-start is the first event, and that it can precede caps arriving on the peer pad - in fact the caps can only have arrived on the peer pad when it was pre-primed with sticky events previously. Instead, just pass the stream-start and don't block, because stream-start is sticky anyway. 2016-04-06 21:00:10 +1000 Jan Schmidt * gst/subparse/gstsubparse.c: subparse: WebVTT Cue identifiers are optional Don't require a cue identifier preceding the time range line when parsing WebVTT. We could also store the CueID, but it's not using anywhere, so just ignore it for now. 2016-04-05 14:26:55 +0300 Sebastian Dröge * win32/common/libgstaudio.def: win32: Add new libgstaudio symbols 2016-03-23 03:16:11 +0000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: add support for the affine transformation meta 2016-04-01 12:25:14 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: libs: audio: split allocation query caps and pad caps Since the allocation query caps contains memory size and the pad's caps contains the display size, an audio encoder or decoder might need to allocate a different buffer size than the size negotiated in the caps. This patch splits this logic distinction for audiodecoder and audioencoder. Thus the user, if needs a different allocation caps, should set it through gst_audio_{encoder,decoder}_set_allocation_cap() before calling the negotiate() vmethod. Otherwise the allocation_caps will be the same as the caps in the src pad. https://bugzilla.gnome.org/show_bug.cgi?id=764421 2016-03-31 15:31:31 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/gstvideoutils.h: libs: video: split allocation query caos and pad caps Since the allocation query caps contains memory size and the pad's caps contains the display size, a video encoder or decoder might need to allocate a different frame size than the size negotiated in the caps. This patch splits this logic distinction for videodecoder and videoencoder. The user if needs a different allocation caps, should set the allocation_caps in the GstVideoCodecState before calling negotiate() vmethod. Otherwise the allocation_caps will be the same as the caps set in the src pad. https://bugzilla.gnome.org/show_bug.cgi?id=764421 2016-04-05 16:22:49 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: set the current texture to 0 before mapping If we fail mapping, we don't want to use undefined video data in the subclass. 2016-04-04 16:39:21 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: fix gtk-doc comment format 2016-04-04 13:43:30 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: proxy the start-time-* properties from aggregator 2016-04-02 10:37:55 +0200 Mikhail Fludkov * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: rtpbasedepayload: look at ssrc before sequence numbers Doing so prevents us dropping buffers in the rare, but possible, situations, when the stream changes SSRC and new sequence numbers does not differ much from the last sequence number from previous SSRC. For example: ssrc - 0xaaaa 101,102,103,104 ssrc - 0xbbbb 102, 103, 104, 105... In the scenario above we don't want to drop the first 3 packets of 0xbbbb stream. https://bugzilla.gnome.org/show_bug.cgi?id=764459 2016-04-03 11:40:50 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Don't fill up the segment with duplicate buffers if drop_only==TRUE 2016-04-03 11:38:28 +0300 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Remove dead code We never get into this code path at all if drop_only==TRUE. 2016-03-29 17:19:41 +0200 Frédéric Bertolus * gst/videorate/gstvideorate.c: videorate: avoid useless buffer copy in drop-only mode Make writable the buffer before pushing it lead to a buffer copy. It's because a reference is keep for the previous buffer. The previous buffer reference is only need to duplicate the buffer. In drop-only mode, the previous buffer is release just after pushing the buffer so a copy is done but it's useless. https://bugzilla.gnome.org/show_bug.cgi?id=764319 2016-04-02 15:19:44 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-frame.c: video: fix example code in gst_video_frame_map() docs GST_VIDEO_FRAME_PLANE_PSTRIDE() does not exist. https://bugzilla.gnome.org/show_bug.cgi?id=764414 2016-04-02 10:09:07 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: copy over result and seekable fields when copying a discoverer info The function gst_discoverer_info_copy doesn't copy the data members seekable and result of the source GstDiscovererInfo. In the case of copying a GstDiscovererInfo for later use, the seekbale will be undefined, which in practice usually will be false, even though the seekable of the original GstDiscovererInfo is true. https://bugzilla.gnome.org/show_bug.cgi?id=762710 2016-03-31 13:32:32 -0400 Nicolas Dufresne * gst-libs/gst/video/video-format.h: video-format: Fix macro documentation The parameter type was wrongly documenting that a GstVideoInfo structure pointer was needed, while it needs a GstVideoFormatInfo structure pointer. https://bugzilla.gnome.org/show_bug.cgi?id=764414 2016-03-26 20:53:08 +0000 Tim-Philipp Müller * tests/check/elements/subparse.c: * tests/check/libs/rtp.c: test: fix indentation 2016-03-26 20:52:16 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtcpbuffer.c: rtp: rtcpbuffer: fix indentation https://bugzilla.gnome.org/show_bug.cgi?id=761944 2016-03-26 20:50:31 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtcpbuffer.c: rtp: rtpcbuffer: fix Since markers https://bugzilla.gnome.org/show_bug.cgi?id=761944 2016-03-30 11:16:49 +1100 Alessandro Decina * gst-libs/gst/audio/audio-resampler.c: audio-resampler: disable neon on arm64 Fix the build on arm64 by using HAVE_ARM_NEON instead of __ARM_NEON__. 2016-03-29 22:16:38 +1100 Jan Schmidt * gst/subparse/gstsubparse.c: subparse: Add more parsing guards Insert extra checks for the validity of the incoming data when parsing subrip/webvtt content and debug log output for invalid content. Should fix Coverity warnings. 2016-03-29 10:23:08 +0100 Luis de Bethencourt * gst/subparse/gstsubparse.c: subparse: add missing break between formats A break is missing at the end of case GST_SUB_PARSE_FORMAT_LRC or it will fallthrough to WebVTT. This fixes commit fd2a14144a7a. 2016-03-29 12:11:22 +0300 Sebastian Dröge * gst-libs/gst/audio/audio-resampler-x86.h: audio-resampler: Use _mm_set_epi64x(0, x) instead of _mm_cvtsi64_si128(x) in more places 2016-03-29 11:25:15 +0300 Sreerenj Balachandran * win32/common/video-enumtypes.c: win32: Update exports for new video formats Update win32 exports for P010_10BE and P010_10LE video formats. 2016-03-29 11:16:42 +0300 Scott D Phillips * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add P010 format support P010 is a YUV420 format with an interleaved U-V plane and 2-bytes per component with the the color value stored in the 10 most significant bits. https://bugzilla.gnome.org/show_bug.cgi?id=761607 --- Changes since v2: - Set bits=16 in DPTH10_10_10_HI Changes since v1: - Fixed x-offset calculation in uv. - Added 6-bit shifts to FormatInfo. 2016-03-29 10:15:07 +0300 Sebastian Dröge * gst-libs/gst/audio/audio-resampler-x86.h: resampler: Use _mm_set_epi64x(0, x) instead of _mm_cvtsi64_si128(x) The latter is only available on x86-64 for some reason. 2016-03-29 08:21:54 +0200 Edward Hervey * gst-libs/gst/audio/Makefile.am: audio: Fix distcheck Don't forget to dist the needed files (which don't need to be installed) 2016-03-28 15:37:36 +0200 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: estimate memory usage in auto mode Estimate the memory usage and use this to decide between full or interpolated filter. 2016-03-28 12:51:26 +0200 Wim Taymans * gst/audioresample/Makefile.am: * gst/audioresample/README: * gst/audioresample/gstaudioresample.c: audioresample: remove last ORC remains 2016-03-16 12:55:56 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: small optimizations 2016-03-04 17:15:44 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: audio-resampler: improve non-interleaved flags Make it possible to have different interleaving on input and output because we can quite trivially do that. 2016-03-02 11:40:15 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: unroll some more loops Unroll some loops. 2016-03-01 16:31:18 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: audio-resampler: keep precision Transpose and add before applying the cubic interpolation to avoid overflows when using full precision. 2016-03-01 16:26:15 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: small cleanups 2016-02-25 15:38:46 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: optimize no resampling Switch to the faster nearest resample method when are doing no rate conversion. 2016-02-25 14:09:44 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: audio-resampler: add VARIABLE_RATE flag Add a VARIABLE rate flag that selects an interpolating filter. Move some function setup code in the _new function. 2016-02-23 04:46:55 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: audio-resampler: more neon optimizations 2016-02-24 12:57:26 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: audio-resampler: avoid overflow in cubic interpolation Shift out an extra bit to have some more headroom when doing cubic interpolation. 2016-02-24 12:56:39 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: overread only 8 taps We only need 8 taps of zeroes as headroom for the SIMD optimized functions. 2016-02-24 12:55:28 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: use helper to check intermediate format 2016-02-23 15:37:37 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: fix phase 2016-02-22 11:16:28 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: audio-resampler: fix neon assembler 2016-02-22 13:19:02 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: avoid some format conversion Store the filter in the desired sample format so that we can simply do a linear or cubic interpolation to get the new filter instead of having to go through gdouble and then convert. 2016-02-22 03:28:21 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: audio-resampler: fix neon linear float interpolation 2016-02-19 16:39:43 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: reorder filter coefficients for more speed Reorder the filter coefficients to make it easier to use SIMD for interpolation. Fix orc flags a little. Add specialized nearest resampling function. 2016-02-19 10:40:03 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: remove stereo optimizations The stereo optimizations don't give enough benefit. Rename none to full to make it clear that we use a full filter instead of an interpolated one 2016-02-18 12:48:45 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: audio-resample: remove neon double stubs NEON does not have double types. 2016-02-18 12:38:49 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: audio-resampler: add more neon optimizations 2016-02-18 11:05:18 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: audio-resampler: add more neon optimizations 2016-02-17 11:20:06 -0500 Wim Taymans * gst-libs/gst/audio/audio-resampler-neon.h: * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: add neon optimizations Unroll some more loops in the fallback code that seems to work fine for ARM. Add some simple ARM optimizations taken from speex. 2016-02-17 13:12:31 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: give better hints about the precision Give better hints to the compiler about the precision we expect from the multiplications. 2016-02-17 12:05:58 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resample: small optimizations Remove some inline functions that are called in the slow path. Unroll C fallback functions a little. 2016-02-16 09:18:13 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: Use n_phases when calculating taps offset Tweak linear interpolation oversampling. Clear filter cache on rate changes when using a full filter. 2016-02-15 18:06:19 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: audio-resampler: improve filter construction Remove some unused variables from the inner product functions. Make filter coefficients by interpolating if required. Rename some fields. Try hard to not recalculate filters when just chaging the rate. Add more proprties to audioresample. 2016-02-12 10:00:22 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: avoid overflow in fraction calculation 2016-02-11 19:42:31 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: increase precision 2016-02-11 17:40:56 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: audio-resampler: add more optimizations 2016-02-11 13:23:07 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resample: fix taps conversion We do taps conversion in place so make sure we don't overwrite the input with temporary data. Optimize some more gint16 functions. 2016-02-11 11:57:26 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: Improve taps memory layout Rearrange the oversampled taps in memory to make it easier to use SIMD instructions on them. this simplifies some sse code. Add some more optimizations 2016-02-10 17:28:24 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: add cubic interpolation 2016-02-10 13:31:11 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: * win32/common/libgstaudio.def: audio-resampler: add more functions Use some macros to generate more functions 2016-02-10 12:04:12 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: audio-resampler: add linear interpolation method Make more functions into macros. Add linear interpolation of filter coefficients. 2016-02-04 15:22:39 +0100 Wim Taymans * tests/icles/Makefile.am: * tests/icles/test-resample.c: tests: add resample test 2016-02-04 15:21:40 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: audio-resampler: add max-phase-error config 2016-02-04 15:19:53 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: improve tap calculation Return the taps from make_taps, this makes it possible to not actually have to cache the taps when we want to. Fix overflow in phase calculation. 2016-02-02 12:06:44 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: audio-resampler: fix guint -> gint 2016-02-02 11:48:16 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: improve phase error Accept a phase error of maximum 10%, which turns out to be inaudible. 2016-02-01 17:18:32 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: improve phase calculation Also calculate the GCD with the current phase so that we can accurately represent the current phase with the new resample rates. 2016-01-26 22:53:33 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: fix history after buffer resize When we resize the temp buffer, move the history in its new place. 2016-01-26 16:42:16 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst/audioresample/gstaudioresample.c: * win32/common/libgstaudio.def: audio-resampler: add reset function Add a function to reset the audio-resampler. Use new function in audio-converter Use the new functions in gstaudioresample and fixup drain functions. 2016-01-26 16:40:57 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: Small fixes Fix the phase. Reset the new sample buffer with 0. Move samples around when we change the filter size. 2016-01-26 16:38:50 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: Rework make_taps Make it return a pointer to the generated taps. That way we can later decide to actually cache it or not. 2016-01-26 09:57:03 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: * gst/audioresample/gstaudioresample.c: audio-resampler: handle filter length changes Update the buffer with history samples when the filter length changes because of an update of the parameters or sample rates. 2016-01-22 17:34:39 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: fix samples_avail We only know the taps after we calculate them. 2016-01-22 16:45:28 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: work on dynamically changing the samplerate Calculate the new phase for the new sample rate. Fix some docs. 2016-01-22 10:28:13 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: small cleanups 2016-01-21 10:38:17 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: add fallback to mono function Remove stereo implementations. Implement fall back to mono functions when the stereo function is missing. 2016-01-18 12:52:41 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: add float stereo SSE function 2016-01-15 12:45:47 +0100 Wim Taymans * configure.ac: * gst-libs/gst/audio/audio-resampler-x86.h: audio-resampler: Fix compilation of intrinsics Only compile intrinsics when we are building for the selected architecture. Add sse4.1 optimized int32 resampler code. 2016-01-15 11:43:13 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audioconvert: only resample on supported formats 2016-01-15 11:20:29 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-resampler.c: * gst/audioresample/gstaudioresample.c: audio-converter: make some optimized functions Make an optimized function that just calls the resampler when possible. Optimize the resampler transform_size function a little. 2016-01-15 10:26:02 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler.c: audio-resampler: remove mirror function We don't need to mirror the input, just assume 0 samples. Always move the processed samples to the start of the buffer. Add some G_LIKELY 2016-01-13 17:50:38 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: audio-resampler: also enable sse when sse2 is available 2016-01-13 17:44:39 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: optimizations Improve int16 resampling by using pmaddwd Use intrinsics to scale and pack int16 samples Align the coefficients so that we can use aligned loads Add padding to taps and samples so that we don't have to use partial loads for the remainder of the loops. Remove copy_n, we can reuse the plain copy function with some new parameters. Align and pad the sample array. 2016-01-12 18:55:19 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-x86.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: make pluggable optimized functions Add support for x86 specialized functions and select them at runtime. 2016-01-12 10:23:53 +0100 Wim Taymans * gst-libs/gst/audio/audio-resampler-core.h: * gst-libs/gst/audio/audio-resampler.c: audio-resampler: combine functions 2016-01-11 16:25:02 +0100 Wim Taymans * win32/common/libgstaudio.def: defs: update 2016-01-05 16:06:22 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst/audioresample/gstaudioresample.c: audio-converter: simplify API Remove the consumed/produced output fields from the resampler and converter. Let the caler specify the right number of input/output samples so we can be more optimal. Use just one function to update the converter configuration. Simplify some things internally. Make it possible to use writable input as temp space in audioconvert. 2016-01-04 18:28:38 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: audio-converter: more work on resampling - Fix the resampler in the audio converter - fix memory leaks 2015-11-13 15:32:29 +0100 Wim Taymans * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio-resampler-core.h: * gst-libs/gst/audio/audio-resampler.c: * gst-libs/gst/audio/audio-resampler.h: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/dbesi0.c: * gst/audioresample/Makefile.am: * gst/audioresample/arch.h: * gst/audioresample/fixed_arm4.h: * gst/audioresample/fixed_arm5e.h: * gst/audioresample/fixed_bfin.h: * gst/audioresample/fixed_debug.h: * gst/audioresample/fixed_generic.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/resample_neon.h: * gst/audioresample/resample_sse.h: * gst/audioresample/speex_resampler.h: * gst/audioresample/speex_resampler_double.c: * gst/audioresample/speex_resampler_float.c: * gst/audioresample/speex_resampler_int.c: * gst/audioresample/speex_resampler_wrapper.h: audio-converter: add resampler Add a resampler to the processing chain when needed. port the audio resampler to the new audioconverter library 2016-03-28 08:45:45 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: tests/compositor: Add test for aggregator pad numbering Tests that the behaviour in 7a5cb5a473 is being conformed to. 2016-03-25 01:13:54 +1100 Jan Schmidt * win32/common/libgstpbutils.def: * win32/common/libgstrtp.def: win32: update win32 exports for new API 2016-03-07 23:29:43 +1100 Jan Schmidt * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * tests/check/elements/subparse.c: subparse: WebVTT parsing support WebVTT is a new subtitle format for HTML5 video. In this first version of the parser the cue settings are parsed but only stored in the internal parser state structure. Later on these settings could be part of the GstBuffer metadata. https://bugzilla.gnome.org/show_bug.cgi?id=629764 2016-02-26 02:58:26 +1100 Jan Schmidt * gst/typefind/gsttypefindfunctions.c: typefind: Add a typefinder for WebVTT files 2016-02-26 02:56:15 +1100 Jan Schmidt * gst/typefind/gsttypefindfunctions.c: typefind: Reduce URI typefinder from MAX to LIKELY Don't claim maximum likelihood for anything that starts with text that looks like a uri, it's too broad. 2016-03-24 14:59:48 +1100 Jan Schmidt * gst/playback/gstdecodebin2.c: decodebin2: Hold new buffering_post lock while posting msgs There's a small window between decodebin choosing a buffering level to post and another thread choosing a different buffering level where things can race. Close that window by holding a new lock that's only for posting buffering messages - like what was done in multiqueue. https://bugzilla.gnome.org/show_bug.cgi?id=764020 2016-03-04 15:50:26 +0900 Vineeth TM * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: bad: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763081 2016-03-04 15:50:26 +0900 Vineeth TM * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglstereomix.c: * gst/compositor/compositor.c: bad: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763081 2016-03-08 19:22:18 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: avoid unnecessary gst_pad_has_current_caps() checks No need to do this for each input buffer, we have the input caps stored somewhere already. https://bugzilla.gnome.org/show_bug.cgi?id=763337 2016-03-22 11:25:49 +0900 Jimmy Ohn * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * win32/common/libgstpbutils.def: codec-utils: Add utilities for AAC and the AACHead header Add utilities about the channels and sample rate for AAC. https://bugzilla.gnome.org/show_bug.cgi?id=749110 2016-03-21 16:06:20 +0900 Jimmy Ohn * gst/playback/gstdecodebin2.c: decodebin: Modify result of seekable in check_upstream_seekable function In check_upstream_seekable function, it returns FALSE value even though we already declare about the seekable variable. So, This patch return result of seekable in check_upstream_seekable function. https://bugzilla.gnome.org/show_bug.cgi?id=763975 2016-03-03 16:46:24 +0900 Vineeth TM * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesrc.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstsocketsrc.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/elements/audiorate.c: * tests/check/elements/decodebin.c: * tests/check/elements/playbin-complex.c: * tests/check/elements/playbin.c: * tests/check/elements/videoscale.c: * tests/check/libs/audiodecoder.c: * tests/check/libs/audioencoder.c: * tests/check/libs/baseaudiovisualizer.c: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpbasepayload.c: * tests/check/libs/videodecoder.c: * tests/check/libs/videoencoder.c: base: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763075 2015-10-06 17:02:03 +0200 Stian Selnes * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * tests/check/libs/rtp.c: rtcpbuffer: Add API for APP packets https://bugzilla.gnome.org/show_bug.cgi?id=761944 2014-07-29 15:37:12 +0200 Haakon Sporsheim * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * tests/check/libs/rtp.c: * win32/common/libgstrtp.def: rtcpbuffer: Add profile-specific extension API. https://bugzilla.gnome.org/show_bug.cgi?id=761950 2016-03-24 13:32:52 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.8.0 === 2016-03-24 12:19:23 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.8.0 2016-03-24 11:43:05 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-03-08 13:22:32 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/pbutils/install-plugins.c: install-plugins: update documentation Use gst-inspect-1.0 instead of gst-inspect-0.10 https://bugzilla.gnome.org/show_bug.cgi?id=763316 2016-03-16 22:16:34 +1100 Matthew Waters * ext/gl/gstglstereomix.c: glstereo{mix,split}: allow running on GLES 2/3 It's mostly supported for GLES 2.x, fully supported on GLES 3.x === release 1.7.91 === 2016-03-15 12:02:20 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/config.h: Release 1.7.91 2016-03-15 11:48:09 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/gl.po: * po/hr.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pt_BR.po: * po/ro.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/tr.po: Update .po files 2016-03-15 11:40:06 +0200 Sebastian Dröge * po/cs.po: * po/fr.po: * po/hu.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-03-14 17:06:53 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Shut down all elements explicitly to NULL state before freeing the decode chain Due to transient locked state during autoplugging, some elements might be ignored by the GstBin::change_state() and might still be running. Which could then cause pad-added and similar accessing decodebin state that does not exist anymore, and crash. https://bugzilla.gnome.org/show_bug.cgi?id=763625 2016-03-13 13:59:25 +0200 Sebastian Dröge * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: multihandlesink: Remove useless streamheader storage We don't do anything with it but always get them from the caps anyway, so stop storing them and having complicated logic around that. https://bugzilla.gnome.org/show_bug.cgi?id=763278 2016-03-13 10:51:30 +0200 Sebastian Dröge * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: multihandlesink: Only don't send HEADER buffers normally if they are actually streamheaders from the caps And also consider HEADER buffers without DELTA_UNIT flag as sync points. This fixes sync-mode=2 with mpegtsmux for example, which has no streamheaders but puts the HEADER flag on its keyframes. https://bugzilla.gnome.org/show_bug.cgi?id=763278 2016-03-12 19:47:47 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: expose_pad() is always called with lock==TRUE, simplify code This basically reverts ee44337fc3e3030a5155d28b3561af157e6c6003 . https://bugzilla.gnome.org/show_bug.cgi?id=763491 2016-03-12 19:46:44 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Don't check twice if the decode chain is complete in pad_added_cb() expose_pad() already does the same. https://bugzilla.gnome.org/show_bug.cgi?id=763491 2016-03-12 19:45:26 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Don't hold EXPOSE_LOCK in type_found() outside the stream lock In other places we lock it the other way around, leading to possible deadlocks. Also this will deadlock if analyze_pad() causes a new element to be autoplugged that adds new pads on itself when its state is changed. https://bugzilla.gnome.org/show_bug.cgi?id=763491 2016-03-13 10:58:54 +0200 Sebastian Dröge * gst/tcp/gstmultioutputsink.c: tcp: Remove unused file It's a copy of multihandlesink, but completely outdated. Let's get rid of it before it gets even more outdated. https://bugzilla.gnome.org/show_bug.cgi?id=763278 2016-03-08 19:22:34 +0100 Lubosz Sarnecki * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: Add new properties and alignment type for unclamped absolute positions Introduces [x-absolute, y-absolute] properties for positioning in +/- MAX_DOUBLE range. Adds new (h/v)alignment type "absolute" where coordinates map the text area to be exactly inside of video canvas for [0, 0] - [1, 1]: [0, 0]: Top-Lefts of video and text are aligned [0.5, 0.5]: Centers are aligned [1, 1]: Bottom-Rights are aligned https://bugzilla.gnome.org/show_bug.cgi?id=761251 2016-03-11 13:15:03 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: Revert "textoverlay: Do not limit positioning to video area." This reverts commit a48daf6dd8cb69b4260a03aa7f3cdf227d4f1602. This changed behaviour in a way that's not always backwards-compatible. https://bugzilla.gnome.org/show_bug.cgi?id=761251 2016-02-25 05:07:04 +0530 Nirbheek Chauhan * win32/common/libgstfft.def: win32: Add a module definitions file for gstfft 2016-03-09 09:56:52 +0000 Tim-Philipp Müller * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theora: fix performance category initialisation Remove unused _register() functions and look up the performance debug category in a function that's actually called at some point. 2016-03-08 02:06:46 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: signal continuation in reset We want to iterate over all the pads, not just the first one. Fix by returning TRUE in the GstAggregatorPadForeachFunc. Removes a GST_IS_GL_CONTEXT() assertion on shutdown with >2 inputs using gst-launch. 2016-03-04 17:13:59 +0100 Wim Taymans * gst-libs/gst/audio/audio-channel-mixer.h: audio-channel-mixer: improve non-interleaved flags Make separate flags for non-interleaved input and output because the channel mixer should be able to convert between the two layouts in the future. 2016-03-04 12:12:56 +0000 Vincent Penquerc'h * tools/gst-play.c: gst-play: remove peculiar setting of invalid -v property 2016-02-05 14:14:37 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix chaining causing running time to restart from 0 This fixes: gst-play-1.0 http://relay-nyc.gameowls.com:8000/chiptune.ogg https://bugzilla.gnome.org/show_bug.cgi?id=758282 2016-03-03 20:10:17 +0100 Havard Graff * ext/opus/gstopusdec.c: opusdec: plug caps leak https://bugzilla.gnome.org/show_bug.cgi?id=763059 2016-03-02 20:47:42 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: Revert "playbin: use avdeinterlace for deinterlacing until deinterlace is ported" This reverts commit 0615794300234e3efbcb49a524efdee11171ab4c. deinterlace was ported at some point in the last 4 years and has better video format support, and especially better negotiation than avdeinterlace. Having avdeinterlace but not deinterlace causes various problems in zerocopy scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=760553 2016-03-02 18:47:23 +0200 Sebastian Dröge * gst/encoding/gstencodebin.c: encodebin: Make dispose() function safe to be called multiple times === release 1.7.90 === 2016-03-01 18:14:54 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.7.90 2016-03-01 16:53:05 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-01-28 16:26:47 +0100 Tom Deseyn * gst/tcp/gstmultisocketsink.c: multisocketsink: handle client close correctly and EWOULDBLOCK Fixes 100% cpu usage when client disconnects. Commit 6db2ee56 would just make multisocketsink ignore reads of 0 bytes without removing the client, so we'd get woken up over and over again for the client. Fix the original issue differently by handling the non-fatal error code. https://bugzilla.gnome.org/show_bug.cgi?id=761257 https://bugzilla.gnome.org/show_bug.cgi?id=743834 2016-02-27 00:11:02 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update disted orc backup file https://bugzilla.gnome.org/show_bug.cgi?id=761851 2016-02-11 11:27:57 +0100 Göran Jönsson * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc.orc: video-converter: add direct UYVY to GRAY8 conversion function https://bugzilla.gnome.org/show_bug.cgi?id=761851 2016-02-04 16:01:00 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opus: fix mono<->stereo up/down-mixing https://bugzilla.gnome.org/show_bug.cgi?id=761588 2016-02-26 17:09:06 +0800 Lim Siew Hoon * gst-libs/gst/pbutils/encoding-profile.c: pbutils: docs: Remove the empty lines in between and They are converted into by gtk-doc... https://bugzilla.gnome.org/show_bug.cgi?id=762674 2016-02-26 12:41:01 +0200 Sebastian Dröge * common: Automatic update of common submodule From b64f03f to 6f2d209 2016-02-26 00:53:05 +0000 Tim-Philipp Müller * ext/opus/gstopusenc.c: opusenc: remove deprecated "cbr", "audio", and "constrained-vbr" properties They have been replaced by "audio-type" and "bitrate-type". https://bugzilla.gnome.org/show_bug.cgi?id=756282 2016-02-26 00:37:57 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/inspect/plugin-opus.xml: docs: add Opus to docs 2016-02-26 00:20:10 +0000 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/opus/Makefile.am: * ext/opus/gstopus.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: opus: move Opus audio decoder and encoder from -bad to -base Hook into build system after moving history. https://bugzilla.gnome.org/show_bug.cgi?id=756282 2016-02-25 23:51:42 +0000 Tim-Philipp Müller Merge branch 'plugin-move-opus' Move Opus decoder and encoder from -bad to -base. https://bugzilla.gnome.org/show_bug.cgi?id=756282 2016-02-25 23:13:39 +0000 Tim-Philipp Müller * tools/gst-play-1.0.1: * tools/gst-play.c: tools: gst-play: add 'n' and 'b' as additional shortcuts for next/previous item < and > are composed with shift + something else on many keyboards layouts, so don't work well when injecting them via windowing systems which will send them as shift key press and separate other key, and we the don't combine that to < or > properly. n/b are easier. 2016-02-26 00:02:49 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/libs/baseaudiovisualizer.c: audiovisualizer: Use the library instead of including the source file Fixes build now that the shader enum GType has moved to a different file. 2016-02-25 20:39:04 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstaudiovisualizer.c: audiovisualizer: Let GstAudioVisualizerShader enum GType be autogenerated by glib-mkenums That happens automatically already anyway. 2016-02-25 17:46:31 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-frame.c: video: flesh out docs for gst_video_frame_map() 2016-02-23 12:42:19 -0300 Thiago Santos * tests/check/elements/compositor.c: tests: compositor: drop special case for valgrind timeout The default one is 6 minutes, the test was using 5 minutes so just resort to using the default. For the non-valgrind test also use the default 20 secs instead of reducing it to 6s. No real reason to set a custom value here. 2016-02-23 12:17:59 -0300 Thiago Santos * tests/check/elements/compositor.c: tests: compositor: add tests for caps queries Verifies that proper caps are returned based on what downstream restricts. 2016-02-18 10:57:51 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: fix caps queries to allow proper renegotiation When caps are already negotiated it should be possible to select formats other than the one that was negotiated. If downstream allows alpha video caps and it has already negotiated to a non-alpha format, caps queries should still return the alpha caps as a possible format as caps renegotiation can happen. Includes tests (for compositor) to check that caps queries done after a caps has been negotiated returns complete results https://bugzilla.gnome.org/show_bug.cgi?id=757610 2016-02-25 10:47:17 +0000 Luis de Bethencourt * gst-libs/gst/pbutils/gstaudiovisualizer.c: visual: correct type name Base class type name should not reference libvisual since not all child elements use this. This was an oversight when merging audiovisualizers into a common base class. 2016-02-24 14:05:03 +0100 Wim Taymans * gst-libs/gst/audio/audio-quantize.c: audio-quantize: fix feedback dither Make sure we allocated enough extra space in the error buffer to store the feedback error. 2016-02-24 12:54:39 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: perform dithering on the current format Use the current (intermediate) format to decide how to set up dithering instead of the input format. 2016-02-24 10:45:17 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmosaic.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: glmixer: iterator didn't advance in continue statement Leading to a deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-02-23 18:23:45 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Handle gst_pad_get_current_caps() returning NULL gracefully 2016-02-23 09:35:14 +0100 Edward Hervey * gst/playback/gstplaysink.c: Revert "playsink: Properly mark pending blocked pads" This reverts commit 62053852de01fb324a915b27c00f5b8dc0f66fb3. The issue that the patch fixes is only noticeable when using decodebin3, which isn't yet in master. 2015-12-10 15:32:06 +0100 Adam Miartus * gst-libs/gst/tag/gstid3tag.c: tag: id3v2: read conductor tag ID3v2 features the TPE3 info frame, which contains information about the conductor. https://bugzilla.gnome.org/show_bug.cgi?id=762451 2016-02-22 20:49:52 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: gl: error out if the configured GL API is unsupported by our element https://bugzilla.gnome.org/show_bug.cgi?id=759801 2016-02-20 11:31:43 +0000 Tim-Philipp Müller * ext/theora/gsttheoradec.c: * gst-libs/gst/video/video-frame.c: * gst/videoconvert/gstvideoconvert.c: * gst/videoscale/gstvideoscale.c: * sys/ximage/ximage.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvcontext.c: * sys/xvimage/xvimage.c: * sys/xvimage/xvimagesink.c: Fix use of undeclared core debug category symbols libgstreamer currently exports some debug category symbols GST_CAT_*, but those are not declared in any public headers. Some plugins and libgstvideo just use GST_DEBUG_CATEGORY_EXTERN() to declare and use those, but that's just not right at all, and it won't work on Windows with MSVC. Instead look up the categories via the API. 2016-02-20 10:05:17 +0000 Tim-Philipp Müller * gst-libs/gst/audio/audio.def: * gst-libs/gst/audio/audio.vcproj: * gst-libs/gst/audio/audiofilter.vcproj: * gst-libs/gst/riff/riff.def: * gst-libs/gst/riff/riff.vcproj: * gst-libs/gst/video/video.vcproj: * gst/adder/adder.vcproj: * gst/audioconvert/audioconvert.vcproj: * gst/audiorate/audiorate.vcproj: * gst/tcp/tcp.vcproj: * gst/typefind/typefindfunctions.vcproj: * gst/videoconvert/videoconvert.vcproj: * gst/videorate/videorate.vcproj: * gst/videoscale/videoscale.vcproj: * gst/videotestsrc/videotestsrc.vcproj: * gst/volume/volume.vcproj: * win32/MANIFEST: * win32/vs6/grammar.dsp: * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstadder.dsp: * win32/vs6/libgstaudio.dsp: * win32/vs6/libgstaudioconvert.dsp: * win32/vs6/libgstaudiorate.dsp: * win32/vs6/libgstaudioresample.dsp: * win32/vs6/libgstaudioscale.dsp: * win32/vs6/libgstaudiotestsrc.dsp: * win32/vs6/libgstdecodebin.dsp: * win32/vs6/libgstdecodebin2.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgstfft.dsp: * win32/vs6/libgstgdp.dsp: * win32/vs6/libgstinterfaces.dsp: * win32/vs6/libgstogg.dsp: * win32/vs6/libgstpbutils.dsp: * win32/vs6/libgstplaybin.dsp: * win32/vs6/libgstriff.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: * win32/vs6/libgstsdp.dsp: * win32/vs6/libgstsinesrc.dsp: * win32/vs6/libgstsubparse.dsp: * win32/vs6/libgsttag.dsp: * win32/vs6/libgsttheora.dsp: * win32/vs6/libgsttypefindfunctions.dsp: * win32/vs6/libgstvideo.dsp: * win32/vs6/libgstvideorate.dsp: * win32/vs6/libgstvideoscale.dsp: * win32/vs6/libgstvideotestsrc.dsp: * win32/vs6/libgstvolume.dsp: * win32/vs6/libgstvorbis.dsp: * win32/vs7/gst-plugins-base.sln: * win32/vs7/libgstadder.vcproj: * win32/vs7/libgstaudio.vcproj: * win32/vs7/libgstaudioconvert.vcproj: * win32/vs7/libgstaudiorate.vcproj: * win32/vs7/libgstaudioresample.vcproj: * win32/vs7/libgstaudiotestsrc.vcproj: * win32/vs7/libgstdecodebin.vcproj: * win32/vs7/libgstinterfaces.vcproj: * win32/vs7/libgstogg.vcproj: * win32/vs7/libgstplaybin.vcproj: * win32/vs7/libgstriff.vcproj: * win32/vs7/libgstsubparse.vcproj: * win32/vs7/libgsttag.vcproj: * win32/vs7/libgsttcp.vcproj: * win32/vs7/libgsttheora.vcproj: * win32/vs7/libgsttypefind.vcproj: * win32/vs7/libgstvideo.vcproj: * win32/vs7/libgstvideorate.vcproj: * win32/vs7/libgstvideoscale.vcproj: * win32/vs7/libgstvideotestsrc.vcproj: * win32/vs7/libgstvolume.vcproj: * win32/vs7/libgstvorbis.vcproj: * win32/vs8/gst-plugins-base.sln: * win32/vs8/libgstadder.vcproj: * win32/vs8/libgstaudio.vcproj: * win32/vs8/libgstaudioconvert.vcproj: * win32/vs8/libgstaudiorate.vcproj: * win32/vs8/libgstaudioresample.vcproj: * win32/vs8/libgstaudiotestsrc.vcproj: * win32/vs8/libgstdecodebin.vcproj: * win32/vs8/libgstinterfaces.vcproj: * win32/vs8/libgstogg.vcproj: * win32/vs8/libgstplaybin.vcproj: * win32/vs8/libgstriff.vcproj: * win32/vs8/libgstsubparse.vcproj: * win32/vs8/libgsttag.vcproj: * win32/vs8/libgsttcp.vcproj: * win32/vs8/libgsttheora.vcproj: * win32/vs8/libgsttypefind.vcproj: * win32/vs8/libgstvideo.vcproj: * win32/vs8/libgstvideorate.vcproj: * win32/vs8/libgstvideoscale.vcproj: * win32/vs8/libgstvideotestsrc.vcproj: * win32/vs8/libgstvolume.vcproj: * win32/vs8/libgstvorbis.vcproj: win32: remove outdated build cruft This hasn't been touched for generations, doesn't work, and is just causing confusion. We also don't want to maintain these files manually. 2016-02-19 12:38:24 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.7.2 === 2016-02-19 11:48:30 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/video-enumtypes.c: Release 1.7.2 2016-02-19 10:31:05 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-02-18 14:31:28 +0000 Julien Isorce * pkgconfig/gstreamer-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: uninstalled.pc: add support for non libtool build systems Currently the .la path is provided which requires to use libtool as mentioned in the GStreamer manual section-helloworld-compilerun.html. It is fine as long as the application is built using libtool. So currently it is not possible to compile a GStreamer application within gst-uninstalled with CMake or other build system different than autotools. This patch allows to do the following in gst-uninstalled env: gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \ gstreamer-video-1.0) Previously it required to prepend libtool --mode=link https://bugzilla.gnome.org/show_bug.cgi?id=720778 2016-01-22 18:26:01 -0800 Reynaldo H. Verdejo Pinochet * gst/typefind/gsttypefindfunctions.c: typefind: strengthen check for valid H.263 picture layer Avoids some false positives leading to miss identification: * Prevent picture start code emulation for the first 2 bytes read * Add check for valid "picture coding type" and "PB-frames mode" combination Additionally, change name on confusingly named TR var to what it is, the layer's PTYPE. https://bugzilla.gnome.org/show_bug.cgi?id=693263 2015-11-23 15:06:02 +0900 Vineeth T M * gst/playback/gstdecodebin2.c: decodebin: return incomplete topology if decode chains' cap could not be obtained When getting caps of the decode chain, in get_topology, the caps are being checked if fixed or not. But get_topology will be called when the decode is chain is being exposed and hence it will always be fixed. Hence removing the check for fixed caps. Removing gst_pad_get_current_caps for the chain->pad, as get_pad_caps will again call the same api. And get_topology can return NULL value if currently shutting down the pipeline, which on being passed to create message will result in assertion error. Check if topology is valid before using it https://bugzilla.gnome.org/show_bug.cgi?id=755918 2016-01-21 10:40:36 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglvideomixer.c: glvideomixer: don't leak pad's vertex buffer on release_pad https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-02-17 01:08:18 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glmixer: Remove usage of GstGLMixerFrameData Subclasses can just iterate over the list of pads themselves https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-01-13 14:41:22 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: don't hold the object lock while calling into GL Doing so can deadlock between the GL thread and the object lock e.g. when performing reconfigure events in glimagesink on a resize event. https://bugzilla.gnome.org/show_bug.cgi?id=760559 2016-02-05 10:10:40 +0100 Havard Graff * gst-libs/gst/Makefile.am: rtp: build audio library before rtp Because audio-enumtypes.h needs to be available for gstrtpbaseaudiopayload.c https://bugzilla.gnome.org/show_bug.cgi?id=761949 2016-02-15 21:28:33 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Fix documentation of the autoplug-query signal 2016-01-26 13:54:46 +0100 Stian Selnes * gst-libs/gst/video/gstvideoencoder.c: * tests/check/libs/videoencoder.c: videoencoder: Fix leak when pre_push does not return OK https://bugzilla.gnome.org/show_bug.cgi?id=761951 2016-02-11 19:47:04 +0100 Wim Taymans * gst/audioresample/resample.c: resample: avoid overflows Avoid overflow in rate calculation. This can cause the resampler to start on the wrong phase after a rate change. Avoid overflow in cubic fraction calculation. This can cause noise when dealing with higher samplerates. 2016-02-11 18:01:40 +0100 Wim Taymans * gst/audioresample/resample_sse.h: resample: fix double interpolation sse code We were only reading 2 filter taps and we need to read 4 to do cubic interpolation. 2016-02-10 12:48:15 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: make a copy if we can't write in unpack If we don't have writable memory, make sure to make a copy of the input samples into a temporary (writable) buffer, even if we are dealing with a native intermediate format that we don't need to call the unpack function for. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=761655 2016-02-05 19:15:16 -0300 Thiago Santos * tests/check/Makefile.am: tests: extend the AM_TESTS_ENVIRONMENT from check.mak To get the CK_DEFAULT_TIMEOUT defined for all tests. Also replaces a 120 timeout that was set. https://bugzilla.gnome.org/show_bug.cgi?id=761472 2016-02-05 18:03:07 -0300 Thiago Santos * autogen.sh: * common: Automatic update of common submodule From 86e4663 to b64f03f 2016-01-21 09:43:35 +0100 Lubosz Sarnecki * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: textoverlay: Expose rendering dimensions as properties. In order to detect graphical user input on the textoverlay, the resulting rendering properties need to be exposed to applications. Fixes delayx property declaration. https://bugzilla.gnome.org/show_bug.cgi?id=761251 2016-01-20 15:37:44 +0100 Lubosz Sarnecki * ext/pango/gstbasetextoverlay.c: textoverlay: Do not limit positioning to video area. The current position property is limited to X,Y positions in the range of [0, 1]. This patch allows full control over the overlay position, including partially outside of the video area. https://bugzilla.gnome.org/show_bug.cgi?id=761251 2016-02-03 16:28:42 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opus: fix FEC FEC may only be used when PLC is enabled on the audio decoder, as it relies on empty buffers to generate audio from the next buffer. Hooking to the gap events doesn't work as the audio decoder does not like more buffers output than it sends. The length of data to generate using FEC from the next packet is determined by rounding the gap duration to nearest. This ensures that duration imprecision does not cause quantization to 2.5 milliseconds less than available. Doing so causes the Opus API to fail decoding. Such duration imprecision is common in live cases. The buffer to consider when determining the length of audio to be decoded is the previous buffer when using FEC, and the new buffer otherwise. In the FEC case, this means we determine the amount of audio from the previous buffer, whether it was missing or not (and get the data either from this buffer, or the current one if the previous one was missing). 2016-02-02 15:20:48 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix wrong buffer being checked for missing data This caused a decoding error if the resulting (wrong) buffer size was passed to the Opus decoding API. https://bugzilla.gnome.org/show_bug.cgi?id=758158 2016-01-21 16:10:48 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglvideomixer.c: glvideomixer: fix checker vbo leak https://bugzilla.gnome.org/show_bug.cgi?id=760925 2016-01-29 14:03:26 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: par may not exist in the caps Fixes a critical in the gst-validate tests: gst_structure_fixate_field_nearest_fraction: assertion 'gst_structure_has_field (structure, field_name) 2016-01-28 13:29:39 +0100 Sebastian Dröge * gst/audiorate/gstaudiorate.c: audiorate: Use gst_audio_format_fill_silence() instead of memset with 0 for generating silence For unsigned formats, silence is not all bits 0. 2016-01-28 13:21:33 +0100 HoonHee Lee * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: audio/videodecoder: Minor cleanup of last commit https://bugzilla.gnome.org/show_bug.cgi?id=761218 2016-01-28 18:06:44 +0900 HoonHee Lee * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: audio/videodecoder: use gst_pad_peer_query_caps to make output caps gst_pad_get_allowed_caps() will return NULL if the srcpad has no peer. In that case, use gst_pad_peer_query_caps() with template caps as filter to have negotiated output caps properly before forwarding GAP event. https://bugzilla.gnome.org/show_bug.cgi?id=761218 2016-01-26 19:23:04 +0100 Thibault Saunier * gst/encoding/gstencodebin.c: encodebin: Allow streamheader update when profile.allow_dynamic_output == FALSE Some encoders can update the stream header through time (for example vp8 might do that) but it does not strictly changes the output format. 2015-10-14 21:13:57 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: don't do caps processing that is not overridable Allows the subclass to completely override the chosen src caps. This is needed as videoaggregator generally has no idea exactly what operation is being performed. - Adds a fixate_caps vfunc for fixation - Merges gst_video_aggregator_update_converters() into gst_videoaggregator_update_src_caps() as we need some of its info for proper caps handling. - Pass the downstream caps to the update_caps vfunc https://bugzilla.gnome.org/show_bug.cgi?id=756207 2016-01-27 19:56:36 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: gl: move control binding proxy implementation from glvideomixer Other elements may need to use it's functionality 2016-01-26 14:09:42 +0100 Aurélien Zanelli * gst-libs/gst/video/video-format.h: video-format: fix GstVideoFormatInfo documentation warnings Add missing ':' to tile_ws and tile_hs fields documentation to avoid bad render of these two fields, mark reserved bytes as private to hide field and avoid gtkdoc warning and add parameters description to documented macro to avoid gtkdoc warnings. https://bugzilla.gnome.org/show_bug.cgi?id=761132 2016-01-26 16:56:57 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * win32/common/libgstaudio.def: audio-converter: add reset function 2016-01-26 16:36:41 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: handle NULL input Allow NULL as input to mean silence samples. 2016-01-26 17:16:52 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: improve _update_config Allow NULL config to keep the existing parameters. Fix the docs. 2016-01-26 17:14:20 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: audio-converter: audio-converter: make some optimized functions Make optimized functions for generic and passthrough conversion. 2016-01-26 16:34:35 +0100 Wim Taymans * gst-libs/gst/audio/audio-quantize.c: * gst-libs/gst/audio/audio-quantize.h: audio-quantize: add _reset function Add a reset function that clears any history. 2016-01-25 17:40:23 +0000 Tim-Philipp Müller * configure.ac: * m4/Makefile.am: * m4/freetype2.m4: * tests/examples/Makefile.am: build: remove nonsensical check for freetype The examples need Gtk+, nothing uses freetype directly. 2016-01-25 16:22:17 +0000 Tim-Philipp Müller * tests/check/elements/libvisual.c: tests: libvisual: make run faster Reduce resolution, which shouldn't make any difference to what's tested here. Makes test finish in less than half the time it took before (8s vs. 21s). 2016-01-25 18:30:30 +0530 Arun Raghavan * ext/alsa/gstalsasink.c: alsa: Trivial doc update alsasink now does more than just raw audio. 2016-01-21 18:30:40 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Correctly expose pads from elements that have directly exposable pads analyze_new_pad() can return a new decode chain, which might have a new GstDecodePad in the end. We should use those two for expose_pad() and not the original ones that were passed to analyze_new_pad(). This fails when having a demuxer element that has raw pads immediately or if a decoder with raw caps is after an adaptive demuxer. https://bugzilla.gnome.org/show_bug.cgi?id=760949 2016-01-16 18:56:26 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.h: audio: Move audioaggregator base class to a library It's useful enough already to be used in other elements for audio aggregation, let's give people the opportunity to use it and give it some API testing. https://bugzilla.gnome.org/show_bug.cgi?id=760733 2016-01-21 16:08:46 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: ensure correct alignment of samples Make sure that the data we allocate for our temporary buffers is properly aligned. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=760938 2016-01-21 10:45:40 +0100 Wim Taymans * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: add Adobe RGB primaries and transfer function 2016-01-20 10:19:34 +0100 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: enfore RGB matrix for RGB formats In gst_video_info_to_caps(), make sure we end up with an RGB matrix for RGB formats and warn when the GstVideoInfo colorimetry is wrong. In gst_video_info_from_caps(), fix the GstVideoInfo with an RGB matrix for RGB formats and warn about inconsistent caps. See https://bugzilla.gnome.org/show_bug.cgi?id=759624 2016-01-20 10:02:20 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: ignore matrix for RGB formats For RGB formats, the matrix in the colorimetry (conversion from YUV to RGB) is irrelevant and we should ignore it and assume the identity transform for everything we do. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=759624 2016-01-19 23:26:57 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Deprecate GST_VIDEO_ENCODER_FLOW_DROPPED It was never actually supported or used https://bugzilla.gnome.org/show_bug.cgi?id=760666 2016-01-19 23:22:35 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoencoder.c: Revert "videoencoder: Release video frame when ->handle return ERROR or DROPPED" This reverts commit 63517d0ed348784cce4ab4b295c2c0f1b78baa81. It was wrong ref counting wise and we decided to deprecated DROPPED return value https://bugzilla.gnome.org/show_bug.cgi?id=760666 2016-01-18 11:40:36 +0900 Vineeth TM * tests/check/elements/audioconvert.c: tests:audioconvert: Fix integer overflow build error value of 32768L << 16 and 1L << 31 is 2147483648 but it exceeds the positive range of int which is 2147483647 resulting in integer overflow error. Use G_GINT64_CONSTANT instead of L. https://bugzilla.gnome.org/show_bug.cgi?id=760769 2016-01-19 12:39:22 +0530 Arun Raghavan * gst-libs/gst/app/gstappsrc.c: appsrc: Minor documentation cleanup 2016-01-14 23:14:27 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: allow setting of flags in serialized foo+bar format https://bugzilla.gnome.org/show_bug.cgi?id=751901 2015-07-02 17:58:00 +0200 Hugues Fruchet * tools/gst-play.c: tools: gst-play: add command line options for verbose output and playbin flags https://bugzilla.gnome.org/show_bug.cgi?id=751901 2016-01-18 15:51:16 +0200 Sebastian Dröge * win32/common/libgstapp.def: win32: Update exports 2015-10-15 10:38:16 -0400 Evan Callaway * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: Add WAIT_ON_EOS flag to gstappsink. If set, an appsink that receives an EOS will wait until all of its buffers have been processed before continuing. https://bugzilla.gnome.org/show_bug.cgi?id=756187 2016-01-16 10:17:50 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Add note to the documentation about various settings being reset before set_format() It's quite unexpected behaviour that various subclass settings are just reset before set_format(). Unfortunately changing this now has the risk of breaking existing code but we should reconsider this for 2.0. 2016-01-09 04:35:23 +0100 Mathieu Duponchelle * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Ignore flushing streams [..] [..] when resetting group start time. In GES, we are usually connected to the streamsynchronizer on one audio and one video pad. When seeking the timeline, both nlecompositions often output their flush_start before any of them has output its flush_stop. The current code, when receiving the first flush stop was using the running time of the start of the second composition, which could be pretty much anything, and means nothing at that point. This patch is thread-safe, as STREAM_SYNCHRONIZER_LOCK is taken both when setting flushing and when checking it. https://bugzilla.gnome.org/show_bug.cgi?id=750013 2016-01-08 18:53:52 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Only append non-raw and sysmem pad template caps to the autoplug-query result Otherwise a decoder supporting GL memory will think that all downstream can support GL memory because of seeing its own template caps. https://bugzilla.gnome.org/show_bug.cgi?id=758212 2016-01-08 18:37:16 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: Revert "playbin: only add the template caps when the result is empty" This reverts commit 023af2d3b192f8ebf1bd4fe75a22a4adaedc1e05. https://bugzilla.gnome.org/show_bug.cgi?id=758212 2016-01-15 13:35:22 +0000 Thibault Saunier * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Release video frame when ->handle return ERROR or DROPPED https://bugzilla.gnome.org/show_bug.cgi?id=760666 2016-01-15 09:50:29 +0100 Edward Hervey * gst/playback/gstplaysink.c: playsink: Properly mark pending blocked pads When blocking input pads, we also need to properly set the appropriate pending flag. Without this, when switching stream types after initial configuration (like going from Audio+Video to Audio+Video+Sub) playsink would never wait for *all* input streams to be blocked (it would just wait for the new input pad (text in this case) to be blocked). Since the reconfiguration might introduce unlinking/relinking of elements, we need to ensure that *ALL* input streams are blocked. Failure to do so would result in having some input streams pushing data to inactive elements (returning GST_FLOW_FLUSHING) or unlinked pads (returning GST_FLOW_NOT_LINKED). A later optimization could involve only blocking the input pads that might be involved in reconfiguration. But better be safe than sorry for now :) 2016-01-06 10:12:43 +0530 Nirbheek Chauhan * tools/gst-device-monitor.c: gst-device-monitor: Use g_printerr instead of g_error g_error is meant to be used for programmer errors (causes an abort), not for expected runtime errors. 2016-01-13 16:32:25 -0300 Thiago Santos * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: replace gst_caps_can_intersect() with is_subset() Subset check verifies also that all required fields are present and is mostly commonly used when checking if an element accepts a certain caps 2016-01-12 11:31:50 -0300 Thiago Santos * gst/playback/gstplaybin2.c: playbin: use subset check instead of intersect Elements usually require that all fields on their caps are present on the fixed caps they receive. Using intersection won't verify it, resort to using is_subset() checks. https://bugzilla.gnome.org/show_bug.cgi?id=760477 2016-01-12 18:21:50 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: implement glBlendFunc and glBlendEquation Allows more blending options than just A over B e.g. frame comparisons are now possible. glvideomixer name=m sink_0::zorder=0 sink_1::zorder=1 sink_1::blend-equation-rgb={subtract,reverse-subtract} sink_1::blend-function-src-rgb=src-color sink_1::blend-function-dst-rgb=dst-color ! glimagesinkelement videotestsrc pattern=checkers-4 ! m.sink_0 videotestsrc pattern=checkers-8 ! m.sink_1 2016-01-12 15:56:36 +0100 Wim Taymans * gst-libs/gst/audio/audio-channel-mixer.c: audio-channel-mixer: round before truncating Round the result before truncating for int channel mixing. 2016-01-12 15:27:16 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: Avoid conversion when possible When the input and output formats are the same and in a possible intermediate format, avoid unpack and pack. Never do passthrough channel mixing. Only do dithering and noise shaping in S32 format 2016-01-12 11:43:20 +0100 Wim Taymans * gst-libs/gst/audio/audio-channel-mixer.c: audio-channel-mixer: add more formats Add support for float and int16 mixing Remove in-place processing, this simplifies things as we won't be using it. Don't do clipping for float audio formats 2016-01-12 11:37:17 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: improve processing loop Process as many samples as we can from the input and return the number of processed samples from the chain. This simplifies some code. Fix the IN_WRITABLE handling, don't overwrite the flags. 2016-01-11 18:24:48 -0300 Thiago Santos * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: replace accept-caps with caps query Those accept caps are actually checking if downstream supports some particular caps to check if it need to negotiate a different format. Checking only the next element with accept-caps is not enough to guarantee that it is supported. Using a caps query makes it obtain the supported caps for downstream as a whole instead of only the next element. 2016-01-08 21:27:16 +0200 Sebastian Dröge * win32/common/libgstaudio.def: audio: Update exported symbols list 2016-01-08 15:05:38 -0300 Thiago Santos * gst/videorate/gstvideorate.c: videorate: replace accept-caps with a caps query accept-caps is only a shallow check, it needs to know whether downstream as a whole accepts the framerate 2016-01-08 16:08:47 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: fix up for GstAudioChannelMix rename as well 2016-01-08 17:34:50 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: audio-converter: small API tweaks Pass flags in _converter_new() so that we can configure ourselves differently depending on some options. SOURCE_WRITABLE -> IN_WRITABLE because the array is called 'in' 2016-01-08 17:28:31 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: audio-converter: prepare API for rate changes Use the update function to update the sample rates along with the config once we implement resampling. 2016-01-08 17:17:44 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: audio-convert: simplify API Simplify the API, we don't need the consumed and produced output arguments. The caller needs to use the _get_in_frames/get_out_frames API to check how much input is needed and how much output will be produced. 2016-01-08 17:50:21 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioutilsprivate.h: * gst-libs/gst/video/gstvideoutilsprivate.h: audio/video: Use G_GNUC_INTERNAL for internal functions 2016-01-08 16:22:25 +0100 Wim Taymans * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-channel-mixer.c: * gst-libs/gst/audio/audio-channel-mixer.h: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio.h: * win32/common/libgstaudio.def: audio: GstAudioChannelMix -> GstAudioChannelMixer Rename the GstAudioChannelMix object to GstAudioChannelMixer because it looks better and to avoid a conflict with a library in -bad. 2016-01-07 15:24:25 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Use the caps query instead of accept-caps to detect if a sink accepts caps accept-caps is only for one element, caps query is recursive. Fixes playback with totem and other situations. https://bugzilla.gnome.org/show_bug.cgi?id=760234 2016-01-06 15:49:59 +0100 Aurélien Zanelli * gst-libs/gst/video/gstvideopool.c: videopool: store videoinfo after choosing the biggest buffer size Otherwise, pool could be negotiated with a size which will be different from the one used in allocation which is the GstVideoInfo. https://bugzilla.gnome.org/show_bug.cgi?id=760222 2016-01-06 12:14:39 +0100 Aurélien Zanelli * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: add missing break in set_property switch case To avoid future issue when adding new properties. https://bugzilla.gnome.org/show_bug.cgi?id=760204 2016-01-06 01:04:31 +0000 Koop Mast * tests/check/elements/audioconvert.c: tests: audioconvert: fix test compilation with clang With clang 3.7.1 on FreeBSD: elements/audioconvert.c:650:12: error: shifting a negative signed value is undefined [-Werror,-Wshift-negative-value] (-32 << 16) + (1 << 15), (-32 << 16) - (1 << 15), ~~~ ^ https://bugzilla.gnome.org/show_bug.cgi?id=760134 2016-01-06 01:06:10 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: * tests/check/libs/audioencoder.c: * tests/check/libs/rtp.c: * tests/check/libs/rtpbasepayload.c: tests: fix indentation of various unit tests 2016-01-05 22:52:34 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: docs: add new audio API 2016-01-03 17:21:18 +0000 Tim-Philipp Müller * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/video/video-overlay-composition.h: docs: remove dummy function declarations with G_INLINE_FUNCTION for gtk-doc gtk-doc can handle static inline functions just fine these days, there's no need for this stuff any more. 2016-01-03 10:33:53 +0200 Sebastian Dröge * gst-libs/gst/riff/riff-ids.h: riff: Add missing closing parenthesis to GST_RIFF_WAVE_FORMAT_ANTEX_ADPCME Apparently this #define is unused. 2016-01-02 23:29:22 +0100 Stefan Sauer * gst-libs/gst/riff/riff-ids.h: riff-ids: remove trailing whitespace 2016-01-02 23:27:44 +0100 Stefan Sauer * gst-libs/gst/riff/riff-ids.h: riff-ids: fix two swapped ids For these fourcc ids the name and value is swapped. This was causing a warning when registering the avi ids. 2015-12-31 20:43:28 +0200 Sebastian Dröge * gst-libs/gst/Makefile.am: sdp: Also reorder SUBDIRS to try even harder to build the RTP library first 2015-12-31 20:41:38 +0200 Sebastian Dröge * gst-libs/gst/Makefile.am: sdp: The SDP library depends on the RTP library now and is not independent anymore Fix up the build dependencies. 2015-10-07 18:50:18 +0900 Hyunjun Ko * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: * tests/check/libs/sdp.c: * win32/common/libgstsdp.def: sdp: add helper fuctions from/to sdp from/to caps GstCaps* gst_sdp_media_get_caps_from_media (const GstSDPMedia *media, gint pt); GstSDPResult gst_sdp_media_set_media_from_caps (const GstCaps* caps, GstSDPMedia *media); gchar * gst_sdp_make_keymgmt (const gchar *uri, const gchar *base64); GstSDPResult gst_sdp_message_attributes_to_caps (GstSDPMessage *msg, GstCaps *caps); GstSDPResult gst_sdp_media_attributes_to_caps (GstSDPMedia *media, GstCaps *caps); GstMIKEYMessage * gst_mikey_message_new_from_caps (GstCaps *caps); gchar * gst_mikey_message_base64_encode (GstMIKEYMessage* msg); https://bugzilla.gnome.org/show_bug.cgi?id=745880 2015-12-29 18:14:54 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Pass pointer arrays instead of singleton pointers to gst_audio_converter_samples() In this specific case it wouldn't cause problems as we only ever access the first array element, but let's make explicit what is happening here. CID 1346530 and 1346529 2015-12-29 17:56:21 +0200 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Check for FALSE'ness directly, not by comparing with FALSE 2015-12-29 17:54:44 +0200 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Don't use preset_name string after free When we run the loop for another time and do not have a preset name, we would try to print the preset name of a previous iteration that is already freed. Also move some other variables into the block where they are actually used to prevent similar mistakes in the future. CID 1346536 2015-12-29 14:40:04 +0100 Stefan Sauer * tests/check/elements/audioconvert.c: audioconvert: add a test for gap handling 2015-12-29 14:23:59 +0100 Stefan Sauer * gst-libs/gst/audio/audio-converter.c: * tests/check/elements/audioconvert.c: audioconvert: fix passthrough operation We did not take the sample size into account. Rearrange the tests to have more conversion test and an extra test case for passthrough operations. Fixes #759890 2015-12-29 11:29:31 +0000 Tim-Philipp Müller * tools/gst-device-monitor.c: tools: gst-device-monitor: print uint properties in both decimal and hex Some values are easier to read and make sense of in hex. https://bugzilla.gnome.org//show_bug.cgi?id=759780 2015-11-12 14:01:03 -0800 Reynaldo H. Verdejo Pinochet * gst-libs/gst/video/video-blend.c: videoblend: special case 1x1 src dims on increment computation Fix crash with 1x1 overlay pixmap https://bugzilla.gnome.org/show_bug.cgi?id=757290 2015-12-28 12:28:26 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Make sure that enough data is available in AAC/ADTS typefinder We would otherwise read beyond the array bounds and crash every now and then. This was introduced with 5640ba17c8db80976b7718904e4024dcfe9ee1a0. https://bugzilla.gnome.org/show_bug.cgi?id=759910 2015-12-27 19:41:43 +0100 Stefan Sauer * tests/check/elements/audioconvert.c: tests: remove commented code from audioconvert test This is just what we have in gst_check_buffer_data(). 2015-12-27 19:25:20 +0100 Stefan Sauer * gst-libs/gst/audio/audio-converter.c: audio-converter: code cleanup Rename samples to num_samples, since we also have samples in chain, but that is the data pointer. Always use gzize for num_samples. Make the log output a bit more homogenous. 2015-12-26 11:34:47 +0000 Tim-Philipp Müller * tools/gst-device-monitor.c: tools: gst-device-monitor: print non-string device properties too 2015-12-26 09:43:56 +0100 Sebastian Dröge * gst-libs/gst/audio/audio-channel-mix.c: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-quantize.c: audio: Fix some documentation warnings Remove/rename function parameters and skip some functions that can't be used by bindings as they are now. 2015-12-26 09:43:51 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: videoaffinetransformmeta: Add (transfer none) annotation for return value 2015-12-25 11:34:10 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't leak audio/video filters due to floating references weirdness The filters' floating references are sinked during set_property() already, which means that GstBin takes a new reference when adding the filter to it. Get rid of the additional reference after adding the filter to the bin. 2015-12-25 10:36:44 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Allow reuse of audio/video filters by unparenting them from their bins And also recreate the chains if the filter is changing. 2015-12-25 10:28:02 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't leak audio/video filters when using non-raw media 2015-12-24 15:27:43 +0100 Sebastian Dröge * configure.ac: Back to development 2015-12-24 13:59:52 +0100 Sebastian Dröge * gst-libs/gst/pbutils/Makefile.am: pbutils: Link to libgstbase for bytewriter and adapter === release 1.7.1 === 2015-12-24 13:59:15 +0100 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/pbutils-enumtypes.c: * win32/common/pbutils-enumtypes.h: Release 1.7.1 2015-12-24 13:10:08 +0100 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-12-24 12:22:04 +0100 Sebastian Dröge * po/nl.po: * po/sv.po: * po/zh_CN.po: po: Update translations 2015-12-11 15:38:00 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encodebin: Implement an encoding profile serialization format https://bugzilla.gnome.org/show_bug.cgi?id=759356 2015-12-21 00:43:49 +0100 Koop Mast * configure.ac: configure: Make -Bsymbolic check work with clang. Update the -Bsymbolic check with the version glib has. This version works with clang. https://bugzilla.gnome.org/show_bug.cgi?id=759713 2015-12-03 11:53:05 +0900 Kazunori Kobayashi * gst-libs/gst/app/gstappsrc.c: appsrc: Clear is_eos flag when receiving the flush-stop event The EOS event can be propagated to the downstream elements when is_eos flag remains set even after leaving the flushing state. This fix allows this element to normally restart the streaming after receiving the flush event by clearing the is_eos flag. https://bugzilla.gnome.org/show_bug.cgi?id=759110 2015-12-16 18:11:05 -0300 Thiago Santos * tests/examples/playback/playback-test.c: examples: playback-test: remove unused variables audiosink and videosink string variables are unused 2015-11-30 10:28:55 +1100 Matthew Waters * gst/playback/gstplaybin2.c: playbin: only add the template caps when the result is empty Unconditionally adding the template caps when proxying the caps query will play havoc with decoders that attempt to choose an output format based on some caps features. Creating a sink that does not include those caps features and a decoder/parser/etc that preferentially chooses some specific caps feature when available, will always return the decoder/parser/etc template caps and choose a feature that downstream will be unable to support. Fix by limiting the addition of the template caps to when the result is actually empty. https://bugzilla.gnome.org/show_bug.cgi?id=758212 2015-12-17 13:39:01 +0100 Sebastian Dröge * configure.ac: configure: Don't use AG_GST_CHECK_FEATURE for checking for gio-unix-2.0 It's meant to be used for external plugins that can then all be disabled via --disable-external. gio-unix-2.0 however is just an optional dependency for the TCP unit test. Also when using AG_GST_CHECK_FEATURE like this, in the --disable-external part there needs to be an AM_CONDITIONAL for the feature with FALSE. 2015-12-16 17:07:54 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin2: fix deadlock on chain shutdown" This reverts commit 77dc09c3a9a5e5e371e189f39b5557db440a8dc9. It can cause the FLUSH_START/STOP events to go to the sink elements, which then causes state changes and various other problems. We shouldn't really flush downstream here, the idea is to do *draining*. Apart from that the testcase for the original bug here works without this commit now. 2015-12-16 11:12:00 +0000 Luis de Bethencourt * gst/tcp/gstmultifdsink.c: multifdsink: fix typo in GST_WARNING_OBJECT This should make easier to parse the debug logs. s/fnctl/fcntl 2014-04-10 15:36:15 +0100 Vincent Penquerc'h * gst/videorate/gstvideorate.c: videorate: remove dead code Since the loops increasing count from 0 are always run at least once (if count < 1), count will always be at least one when compared to the drop/dup conditions. Coverity 1139674 2015-12-16 10:45:48 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * win32/common/libgstaudio.def: audio-converter: rework the main processing loop Rework the main processing loop. We now create an audio processing chain from small core functions. This is very similar to how the video-converter core works and allows us to statically calculate an optimal allocation strategy for all possible combinations of operations. Make sure we support non-interleaved data everywhere. Add functions to calculate in and out frames and latency. 2015-12-16 10:44:16 +0100 Wim Taymans * gst/audioconvert/gstaudioconvert.c: audioconvert: clear convert object 2015-12-16 09:35:38 +0100 Sebastian Dröge * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update to git 2015-12-14 11:09:46 +0900 Vineeth TM * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: plugins-bad: Fix example pipelines rename gst-launch --> gst-launch-1.0 replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**) fix caps in examples https://bugzilla.gnome.org/show_bug.cgi?id=759432 2015-12-14 11:09:46 +0900 Vineeth TM * gst/audiomixer/gstaudiomixer.c: plugins-bad: Fix example pipelines rename gst-launch --> gst-launch-1.0 replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**) fix caps in examples https://bugzilla.gnome.org/show_bug.cgi?id=759432 2015-12-14 13:59:02 -0500 Nicolas Dufresne * ext/alsa/gstalsasrc.c: Revert "alsasrc: Disable HW timestamp" This reverts commit 3642e9a3913a35c00f379034780c27298d09929c. 2015-11-10 12:54:23 -0500 Xavier Claessens * gst-libs/gst/allocators/gstfdmemory.h: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/sdp/gstmikey.h: * gst-libs/gst/sdp/gstsdpmessage.h: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gsttagmux.h: * gst-libs/gst/video/colorbalancechannel.h: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-overlay-composition.h: base: Add g_autoptr() support to all types https://bugzilla.gnome.org/show_bug.cgi?id=754464 2015-09-24 18:26:51 -0400 Nicolas Dufresne * ext/alsa/gstalsasrc.c: alsasrc: Disable HW timestamp This is a workaround for broken pulse module. 2015-12-14 19:03:33 +0100 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Properly initialize stack-allocated RTSP message to all-zeroes 2015-12-14 10:57:19 -0500 Evan Callaway * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Use relative URI for non-proxy tunneled requests Match the section 5.1.2 of the HTTP/1.0 spec by using relative URIs unless we are using a proxy server. Also, send Host header for compatability with HTTP/1.1 and some HTTP/1.0 servers. https://bugzilla.gnome.org/show_bug.cgi?id=758922 2015-12-14 09:10:16 -0500 Evan Callaway * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: rtspconnection: Support authentication during tunneling setup gst_rtsp_connection_connect_with_response accepts a response pointer which it fills with the response from setup_tunneling if the connection is configured to be tunneled. The motivation for this is to allow the caller to inspect the response header to determine if additional authentication is required so that the connection can be retried with the appropriate authentication headers. The function prototype of gst_rtsp_connection_connect has been preserved for compatability with existing code and wraps gst_rtsp_connection_connect_with_response. https://bugzilla.gnome.org/show_bug.cgi?id=749596 2015-12-14 13:11:21 +0100 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Check if the packet loss event actually has timestamp and duration fields CID 1139615 2015-12-10 17:46:26 +0100 Wim Taymans * gst-libs/gst/audio/audio-channel-mix.c: * gst-libs/gst/audio/audio-channel-mix.h: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-quantize.c: * gst-libs/gst/audio/audio-quantize.h: * gst/audioconvert/gstaudioconvert.c: audio: adapt API for non-interleaved formats Allow an array of sample blocks to be passed to the channel mix and quantizer functions to support non-interleaved formats. 2015-12-10 16:26:40 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: audio-converter: improve API for non-interleaved formats Make it possible to pass an array of sample blocks when dealing with non-interleaved formats. 2015-12-11 15:39:57 +1100 Matthew Waters * ext/gl/gstglstereomix.h: gldownload: remove helper api from the library It was never used by anyone and is not needed anymore with the element and GstGLMemory's transparent support for downloading textures. 2015-12-12 17:49:28 +0100 Luis de Bethencourt * gst-libs/gst/riff/riff-media.c: riff: add FourCC aliases Support media using the aliases defined in http://www.fourcc.org/ that are exact duplicates of already known codes. 2015-12-12 17:04:21 +0100 Luis de Bethencourt * gst-libs/gst/riff/riff-media.c: riff: use defined FourCC Make gst_riff_create_video_caps() use the FourCC available in riff-ids.h, like gst_riff_create_audio_caps() does. 2015-12-11 14:42:09 +0000 Julien Isorce * gst-libs/gst/video/gstvideodecoder.c: videodecoder: add some debug around pool negotiation It lets us know easily which pool is activated or inactivated during the negotiation. https://bugzilla.gnome.org/show_bug.cgi?id=720597 2015-12-11 21:42:00 +0800 Song Bing * gst-libs/gst/video/convertframe.c: video/convertframe: Add crop meta support via videocrop https://bugzilla.gnome.org/show_bug.cgi?id=759329 2015-12-11 11:01:53 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepay: when setting discont flag make sure rtpbuffer is current Depayloaders will look at rtpbuffer->buffer for the discont flag. When we set the discont flag on a buffer in the rtp base depayloader and we have to make the buffer writable, make sure the rtpbuffer actually contains the newly-flagged buffer, not the original input buffer. This was introduced with the addition of the process_rtp_packet vfunc, but would only trigger if the input buffer wasn't flagged already and was not writable already. 2015-12-11 00:18:30 +0000 Tim-Philipp Müller * tests/check/libs/rtpbasedepayload.c: tests: rtpbasedepayload: add test for seqnum gap discont setting The problem was triggered only when the input buffers were not writable, so add extra ref to test this code path. 2015-12-11 10:25:00 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepay: fix possible refcounting issue when detecting a discont When we detect a discont and the input buffer isn't already flagged as discont, handle_buffer() does a gst_buffer_make_writable() on the input buffer in order to set the flag. This assumed it had ownership of the input buffer though, which it didn't. This would still work fine in most scenarios, but could lead to crashes or mini object unref criticals in some cases when a discont is detected, e.g. when using pcapparse in front of a depayloader. This problem was introduced in bc14cdf529e. 2015-12-10 12:18:04 +0100 Wim Taymans * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multisocketsink: add GstNetworkMessage event Add a property and logic to send a GstNetworkMessage event containing the message that was received from a client. This can be used to implement simply bidirectional communication. 2015-12-10 12:14:37 +0100 Wim Taymans * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multisocketsink: add dispatched event Add a property and logic to send a GstNetworkMessageDispatched event upstream to notify that a buffer has been sent. This can be used to keep track of what client received what buffers. 2015-12-04 11:17:37 +0100 Wim Taymans * gst/tcp/gstsocketsrc.c: * gst/tcp/gstsocketsrc.h: socketsrc: handle GstNetworkMessage events Add a property to handle GstNetworkMessage events. These events contain a buffer that is sent on the socket to allow for simple bidirectional communication. 2015-12-09 17:16:26 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: audio-convert: improve converter API Improve the converter API to allow for an max input and output number of samples and return the number of consumed/produced samples. 2015-12-08 11:15:34 +0100 Philippe Normand * gst-libs/gst/app/gstappsrc.c: appsrc: duration query support based on the size property https://bugzilla.gnome.org/show_bug.cgi?id=759126 2015-12-07 09:08:05 -0500 Nicolas Dufresne * autogen.sh: * common: Automatic update of common submodule From b319909 to 86e4663 2015-12-04 12:25:11 +0100 Wim Taymans * gst/tcp/gstmultisocketsink.c: multisocketsink: let downstream know we support metadata Let downstream know that we support GstNetControlMessage metadata API. 2015-12-03 16:38:45 +0100 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Avoid pushing buffers before segment start In the case where the stream doesn't have a framerate set and the frames don't have a duration set, we still want to use the clipping path to make sure we don't push buffers outside of the segment. The problem was the previous iteration was setting a duration of 2s, which meant that any buffer which was less than 2s before the segment start would end up getting pushed. Instead, use a saner 40ms (25fps single frame duration) to figure out whether the frame could be within the segment or not 2015-12-02 20:19:43 -0800 Reynaldo H. Verdejo Pinochet * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: Drop usage of deprecated g-ir-scanner --strip-prefix flag 2015-12-02 18:16:05 +0000 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: decodebin2: fix "Attempt to unlock mutex that was not locked" Introduced in commit ee44337f, caused the decodebin test_text_plain_streams unit test to abort. https://bugzilla.gnome.org/show_bug.cgi?id=752651 2015-11-16 14:50:58 +0100 Edward Hervey * gst/playback/gstrawcaps.h: playback: Expose XSUB formats by default This is a workaround, we should remove this once we have a proper decoder 2015-11-16 14:50:30 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Also consider XSUB as a subtitle format 2015-11-16 14:49:55 +0100 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for XSUB subpicture format 2015-11-16 14:49:19 +0100 Edward Hervey * gst-libs/gst/riff/riff-media.c: riff: 'DXSA' is the same as 'DXSB' Which is subpicture/x-xsub 2015-07-21 09:58:56 +0200 Edward Hervey * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Rename GstStream => GstSyncStream Avoid clashes with future GstStream from core 2015-12-02 09:00:31 -0500 Evan Callaway * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspconnection: Update capitalization of x-sessioncookie Some servers incorrectly parse header names with strict case-sensitivity. For compatibility with these systems change X-Sessioncookie to x-sessioncookie. https://bugzilla.gnome.org/show_bug.cgi?id=758921 2015-12-02 16:16:22 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Update buffering messages when removing an element that had buffering pending Otherwise we'll remove that element while keeping its buffering message in our list, and because of that never ever report buffering 100% as that element will always be at a lower percentage. This fixes e.g. seeking over Period boundaries in DASH and various other issues when buffering happens between group switches. Also use a new mutex for protecting the buffering messages. The object lock is already used by gst_object_has_as_ancestor() and we need to use it now for checking if the buffering message sender has the to-be-removed element as ancestor. 2015-12-02 09:52:19 +0100 Wim Taymans * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multisocketsink: keep on reading when we stop sending When we stop sending because we need more data, still keep a GSource around to receive data from the clients. Also handle read and write in the same go. 2015-12-01 19:57:10 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Post latency message on the bus after set_caps() The latency is only known once the caps are known, and might change whenever the caps are changing. https://bugzilla.gnome.org/show_bug.cgi?id=758911 2015-09-25 14:47:48 +0200 Michael Olbrich * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Post latency message on the bus after set_caps() Any latency query before this will not get the correct latency so a new latency query should be triggered once the audio sink know its own latency. Without this the initial latency query from the pipeline arrives too early sometimes and the resulting latency is too short. https://bugzilla.gnome.org/show_bug.cgi?id=758911 2015-11-06 14:21:14 +0000 Thomas Bluemel * gst/playback/gstdecodebin2.c: [PATCH] Fix a race condition accessing the decode_chain field. Make sure that any access to the GstDecodeBin's decode_chain field is protected using the EXPOSE_LOCK. Also add a simple reference counter to the GstDecodeChain structure so that when the type_found signal fires it can hold onto the decode chain even while the EXPOSE_LOCK is not held. This should fix a race condition if the type_found signal fires right in the middle of a state change that messes with the same decode chain. https://bugzilla.gnome.org/show_bug.cgi?id=755260 2015-08-20 17:30:38 +0100 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: early out on pad-added when the pad is inactive The pad may be recently deactivated if the element is switched back down very quickly. https://bugzilla.gnome.org/show_bug.cgi?id=752651 2015-08-20 17:29:36 +0100 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: lock the expose lock around decode_chain use Helps with a crash in decodebin when quickly switching states. https://bugzilla.gnome.org/show_bug.cgi?id=752651 2015-11-28 14:24:55 +0000 Luis de Bethencourt * gst-libs/gst/pbutils/codec-utils.c: codec-utils: accept wrong version field in OpusHead header Some Opus files found on the wild have 0 in the version field of the OpusHead header, instead of the correct value of 1. The files still play, don't make this error fatal. https://bugzilla.gnome.org/show_bug.cgi?id=758754 2015-11-26 11:33:02 +0000 William Manley * gst-libs/gst/allocators/gstfdmemory.c: allocators: add debug category for fd memory and allocator Debugging can now be viewed by setting GST_DEBUG=fdmemory:9 https://bugzilla.gnome.org/show_bug.cgi?id=758744 2015-11-24 00:20:36 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudioaggregator.c: audiomixer: register function name for debugging just once Not every time aggregate is called... 2015-11-20 20:18:34 +0000 Tim-Philipp Müller * tests/check/libs/tag.c: tests: tags: add unit test for ID3v2 PRIVATE_DATA tag extraction https://bugzilla.gnome.org/show_bug.cgi?id=730926 2014-09-29 14:17:39 +0530 Ravi Kiran K N * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/id3v2frames.c: id3v2frames: Handle private frames Handle PRIV ID3 tag having owner information (string) and binary data, add to tag messages list. https://bugzilla.gnome.org/show_bug.cgi?id=730926 2015-11-20 19:15:22 +0000 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tags: id3: make sure to register private-id3v2-frame tag before using it 2015-11-17 15:23:17 -0800 Reynaldo H. Verdejo Pinochet * ext/opus/gstopusenc.c: Remove unnecessary NULL checks before g_free() g_free() is NULL-safe 2015-11-17 17:07:37 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: * tests/check/libs/rtspconnection.c: rtspconnection: Add support for parsing custom headers https://bugzilla.gnome.org/show_bug.cgi?id=758235 2015-11-15 02:58:54 -0800 Reynaldo H. Verdejo Pinochet * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/sdp/gstsdpmessage.c: * tests/examples/encoding/encoding.c: Remove unnecessary NULL checks before g_free() g_free() is NULL-safe 2015-11-17 09:06:34 +0900 Vineeth TM * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: xvimagesink/ximagesink: Fix structure memory leak https://bugzilla.gnome.org/show_bug.cgi?id=758204 2015-11-12 14:39:17 +0000 Luis de Bethencourt * gst-libs/gst/pbutils/codec-utils.c: codec-utils: guint8 can't hold value over 255 channels is a guint8, so the max value is 255 and checking if it value is > 256 will never be false. CID 1338687, CID 1338688 2015-11-12 14:18:03 +0000 Luis de Bethencourt * gst-libs/gst/audio/audio-converter.c: audio-converter: remove unneeded check for unsigned < 0 Commit ff6d1a2a25b247688f38e117782a6b43d525706a changed sample's type from gint to gsize (and renamed it to in_samples). gsize is an unsigned long, which means it can never be a negative value and the check making sure that in_samples is >= 0 is never going to be false. Removing it. CID 1338689 2015-11-12 12:21:54 +0000 Luis de Bethencourt * ext/opus/gstopusenc.c: opusenc: avoid potential overflow expression The result of the two expressions will be promoted to guint64 anyway, perform all the arithmetic in 64 bits to avoid potential overflows. CID 1338690, CID 1338691 2015-11-11 14:44:55 +0900 Vineeth TM * tests/check/libs/video.c: tests:video: Fix overlay rectangle and buffer leak Created overlay rectangle is not being freed in video tests pix2 buffer is being created and not freed https://bugzilla.gnome.org/show_bug.cgi?id=757927 2015-11-11 14:37:21 +0900 Vineeth TM * gst-libs/gst/pbutils/encoding-target.c: pbutils:encoding-target: Fix string memory leak https://bugzilla.gnome.org/show_bug.cgi?id=757926 2015-11-11 15:02:39 +0900 Vineeth TM * gst-libs/gst/audio/audio-quantize.c: audio-quantize: Fix dither_buffer memory leak https://bugzilla.gnome.org/show_bug.cgi?id=757928 2015-11-10 13:52:30 +1100 Matthew Waters * ext/gl/gstglstereomix.c: glviewconvert: remove set_format We need the caps to be able to 1. check the caps features 2. get the requested texture-target on input/output 2015-11-11 00:59:16 +1100 Jan Schmidt * ext/vorbis/gstvorbisdec.c: vorbisdec: Re-init on new caps If we get new input caps, then reset the decoder ready for new headers and fresh data. Makes chained oggs work when reusing the decoder. 2015-11-02 23:12:19 +1100 Matthew Waters * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.h: * win32/common/libgstvideo.def: videometa: add GstVideoAffineTransformationMeta Adds a simple 4x4 affine transformations meta for passing arbitrary transformations on buffers. Based on patch by Matthieu Bouron https://bugzilla.gnome.org/show_bug.cgi?id=731791 2015-11-10 09:52:24 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst/audioconvert/gstaudioconvert.c: audio-converter: add output size argument Make it possible to have a different number of output samples than input samples when we, for example, want to add resampling later. 2015-11-07 00:43:55 +0100 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Check API arguments and assert if needed 2015-11-06 19:31:47 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin: Properly deactivate ghostpads Just setting the ghostpad as flushing wasn't enough. It needs to be consistent on the internal proxypad also, otherwise you end up in situations where: * a pending buffer on the target pad triggers the sticky event propagation * the default implementation sees that the proxypad is not flushing, so it tries to push it to the other pad (the actual ghostpad) * the ghostpad is flushing, so returns FALSE * the push_event function sees that pushing the event failed... * ... and pending buffer push returns GST_FLOW_ERROR, instead of GST_FLOW_FLUSHING By using gst_pad_set_active(FALSE), we ensure that both the ghostpad and the proxypad are flushing/deactivated. The situation above will no longer occur, and a GST_FLOW_FLUSHING will be returned. 2015-11-06 18:11:41 +0000 Tim-Philipp Müller * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/plugin.c: audioconvert: fix build Don't include file that is no longer generated, and remove some files that are no longer needed because they have moved into the lib. Fixes distcheck. 2015-11-06 18:00:41 +0100 Wim Taymans * gst-libs/gst/audio/audio-converter.c: audio-converter: require interleaved samples and no resampling We can't yet do resampling or anything other than interleaved audio. 2015-11-06 17:54:21 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: audio: update ORC dist files 2015-11-06 17:49:00 +0100 Wim Taymans * docs/plugins/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-converter.c: * gst-libs/gst/audio/audio-converter.h: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiopack.orc: * gst/audioconvert/Makefile.am: * gst/audioconvert/gstaudioconvert.h: * tests/check/Makefile.am: * win32/common/libgstaudio.def: audio-converter: move audio converter to audio libs Move the audio-converter helper to the audio library. 2015-11-06 17:39:33 +0100 Wim Taymans * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-channel-mix.c: * gst-libs/gst/audio/audio-channel-mix.h: * gst-libs/gst/audio/audio.h: * gst/audioconvert/Makefile.am: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * win32/common/libgstaudio.def: audio-channel-mix: move channel mixer to audio libs Move the channel mixer code to the audio library 2015-11-06 17:29:22 +0100 Wim Taymans * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio.c: * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstchannelmix.c: audio: add debug categories 2015-11-06 16:42:35 +0100 Wim Taymans * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: channelmix: don't limit channelpositions Don't set a limit on the channel positions, just like the metadata. 2015-11-06 16:03:20 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: channelmix: simplify API a little Remove the format and layout from the mix_samples function and use the format when creating the channel mixer object. Also use a flag to handle the unlikely case of non-interleaved samples like we do elsewhere. 2015-11-06 15:50:34 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: channelmix: GstChannel -> GstAudioChannel Rename GstChannel to GstAudioChannel 2015-11-06 12:30:12 +0000 Tim-Philipp Müller * ext/gl/gstglmixerbin.c: glmixerbin: fix minor leak Don't leak removed list node. 2015-11-06 13:02:19 +0100 Wim Taymans * gst-libs/gst/audio/audio-quantize.c: * gst-libs/gst/audio/audio-quantize.h: audio-quantize: update docs Update docs Add another flag for the quantizer 2015-11-06 12:46:36 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/gstchannelmix.c: audioconvert: cleanups and add some docs Add docs for the internal audioconvert object before moving it to the audio library. Remove get_sizes and implement the trivial logic in the element. Remove some unused orc functions 2015-11-06 12:46:12 +0100 Wim Taymans * win32/common/libgstaudio.def: defs: update defs 2015-11-06 12:37:14 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: audio: update orc files 2015-11-06 12:10:48 +0100 Wim Taymans * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-quantize.c: * gst-libs/gst/audio/audio-quantize.h: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiopack.orc: * gst/audioconvert/Makefile.am: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/gstfastrandom.h: audioconvert: move audio quantize code to libs Move the audio quantize code from audioconvert to the audio library. work on making an audio converter helper function similar to the video converter. Fold fastrandom directly into the quantizer, add some ORC code to optimize this later. 2015-11-05 12:42:56 +0100 Wim Taymans * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/gstaudiodecoder.c: * gst/audioconvert/gstaudioconvert.c: * win32/common/libgstaudio.def: audio-channels: rename get_default_mask Rename _get_default_mask() to _get_fallback_mask() to make it more clear that the function only provides a fallback if nothing else can be done. Also clarify this in the documentation. API: gst_audio_channel_get_fallback_mask() 2015-11-05 12:11:19 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Update sink pad templates We always require the channel-mapping-field. If it's 0 we require nothing else, otherwise we need channels, stream-count and coupled count to be available. 2015-11-05 11:34:07 +0100 Thibault Saunier * gst/volume/gstvolume.c: volume: Do not try to get binding value array if we are not processing any sample In some conditions we might process empty buffers, calling gst_control_binding_get_value_array in that case will lead to the assertion: (lt-ges-launch-1.0:18859): GStreamer-CRITICAL **: gst_control_binding_get_value_array: assertion 'values' failed 2015-11-05 10:40:18 +0100 Wim Taymans * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/gstaudiodecoder.c: * gst/audioconvert/gstaudioconvert.c: * win32/common/libgstaudio.def: audio-channels: make method to get default channel-mask Add a new method to get the default channel-mask. Use the new method on audiodecoder and audioconvert. API: gst_audio_channel_get_default_mask() 2014-11-10 11:11:37 +0100 Andreas Frisch * tests/check/libs/video.c: tests: Add a test for video blending over transparent frames And fix the test_overlay_blend test where we blend over a transparent frame and where expecting wrong results https://bugzilla.gnome.org/show_bug.cgi?id=681447 2013-11-30 01:59:55 +0100 Arnaud Vrac * gst-libs/gst/video/video-blend.c: video: blend using OVER operation Also support all premultiplied/non-premultiplied source/destination configurations https://bugzilla.gnome.org/show_bug.cgi?id=681447 2015-11-04 00:12:52 +0200 Sebastian Dröge * tests/check/elements/opus.c: opus: Remove invalid unit test Opus headers should never be in-band, so don't test for correct handling of that. 2015-11-04 00:12:22 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Create an empty taglist if there is none There always have to be 2 buffers in the streamheaders, even if the comment buffer is basically empty. 2015-11-03 14:50:53 +0200 Sebastian Dröge * ext/opus/Makefile.am: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opus: Add proper support for multichannel audio https://bugzilla.gnome.org/show_bug.cgi?id=757152 2015-11-02 17:33:53 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Handle GstAudioClippingMeta instead of the pre-skip field in the OpusHead oggdemux is outputting the meta now, and only outputs if it should really apply to the current buffer. Previously we would skip N samples also if we started the decoder in the middle of the stream. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 16:52:28 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Add GstAudioClippingMeta to buffers that need to be clipped https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 10:30:52 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Disable granule position calculations by the base class It is doing the wrong thing because of the Opus pre-skip: while the timestamps are shifted by the pre-skip, the granule positions are not shifted. oggmux is doing the right thing here already. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-31 15:02:50 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Add some FIXME comments about calculating padding with LPC https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-30 20:57:37 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: Encode exactly the amount of samples we got as input and put correct timestamps on it The first frame has lookahead less samples, the last frame might have some padding or we might have to encode another frame of silence to get all our input into the encoded data. This is because of a) the lookahead at the beginning of the encoding, which shifts all data by that amount of samples and b) the padding needed to fill the very last frame completely. Ideally we would use LPC to calculate something better than silence for the padding to make the encoding as smooth as possible. With this we get exactly the same amount of samples again in an opusenc ! opusdec pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-30 20:47:20 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opusenc: Put lookahead/pre-skip into the OpusHead header https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-03 16:51:47 +0200 Sebastian Dröge * ext/ogg/gstoggstream.c: oggdemux: Create full Opus caps with all fields https://bugzilla.gnome.org/show_bug.cgi?id=757152 2015-11-03 18:30:09 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * win32/common/libgstpbutils.def: codec-utils: Add utilities for Opus caps and the OpusHead header https://bugzilla.gnome.org/show_bug.cgi?id=757152 2015-11-03 11:11:57 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Use GstAudioClippingMeta for Opus for accurate end clipping ... instead of relying on the segment. For the clipping at the start we assume a proper value in the OpusHead, as generated by opusparse or opusenc. Transmuxing in general is not guaranteed to produce the correct values, or even have a OpusHead (e.g. when having RTP input). https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-03 10:58:35 +0200 Sebastian Dröge * ext/ogg/Makefile.am: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: Add GstAudioClippingMeta for Opus for accurate start/end clipping https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 16:19:42 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: * win32/common/libgstaudio.def: audio: Add GstAudioClippingMeta for specifying clipping on encoded audio buffers https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 11:19:23 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: Allow start clipping for Opus The granulepos does not have the pre-skip subtracted while timestamps do, and the last granulepos will be shorter by the number of samples that should be dropped because of padding in the end. As such, extrapolating the granule of the beginning of the first frame will lead to a negative value, which is not a problem but intentional. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-03 16:38:09 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: audio: update disted orc backup files 2015-11-03 14:08:25 +0000 Luis de Bethencourt * gst-libs/gst/audio/gstaudioclock.c: audioclock: use GST_STIME_FORMAT for GstClockTimeDiff GST_STIME_FORMAT is more appropriate for GstClockTimeDiff since it can handle negative values better. https://bugzilla.gnome.org/show_bug.cgi?id=757480 2015-11-03 13:44:39 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Print GstClockTimeDiff as a signed integer in debug logs 2015-11-03 11:59:09 +0100 Wim Taymans * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/gstaudiopack.orc: * gst/audioconvert/audioconvert.c: audio-format: add TRUNCATE_RANGE flag Add a TRUNCATE_RANGE flag for unpack functions to fill the least significate bits with 0 (as did the old code). Also add functions that don't truncate. Use the TRUNC flag in audioconvert for backwards compatibility for now. 2015-11-03 11:57:32 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiopack.orc: audiopack: improve pack functions Avoid shifts by using convh functions. 2015-11-03 11:44:54 +0100 Wim Taymans * gst/audioconvert/gstaudioconvertorc.orc: * tests/check/elements/audioconvert.c: audioconvert: change multiplier for int<->float conversion Use (1 << 31) as the multiplier for int<->float conversions. This makes sure that int->float conversions always end up with floats between [-1.0, 1.0]. For the conversion from float to int, this multiplier will give the complete int range after we perform clipping. Change the unit test to take this into consideration. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755301 2015-11-02 19:40:28 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Improve log messages Make the level of log messages saner and improve some. 2015-11-02 17:32:55 +0000 Luis de Bethencourt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: use GST_STIME_ARGS for GstClockTimeDiff No need to use G_GINT64_FORMAT for potentially negative values of GstClockTimeDiff. Since 1.6 these can be handled with GST_STIME_ARGS. Plus it creates more readable values in the logs. https://bugzilla.gnome.org/show_bug.cgi?id=757480 2015-11-02 16:58:57 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use GST_STIME_ARGS for GstClockTimeDiff No need to manually handle negative values of diff, GST_STIME_ARGS does exactly this. 2015-11-02 16:36:35 +0000 Luis de Bethencourt * ext/ogg/gstoggmux.c: oggmux: Print GstClockTimeDiff as a signed integer in debug logs 2015-11-02 16:09:52 +0000 Luis de Bethencourt * ext/ogg/gstoggdemux.c: oggdemux: Use GstClockTimeDiff and print signed integer in debug logs Use GstClockTimeDiff and Clock macros to print signed integer time differences in the debug logs. https://bugzilla.gnome.org/show_bug.cgi?id=757480 2015-11-02 14:06:39 +0000 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: use GST_STIME_FORMAT for GstClockTimeDiff GST_STIME_FORMAT is more appropriate for GstClockTimeDiff since it can handle negative values better. https://bugzilla.gnome.org/show_bug.cgi?id=757480 2015-11-02 17:14:51 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiometa.h: audio: Fix parameters to gst_buffer_get_audio_downmix_meta() in macro 2015-11-02 15:54:19 +0100 Wim Taymans * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: increase freq limit Raise the frequency limit and try to negotiate to a samplerate of 4*freq when larger then the default samplerate. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=754450 2015-11-02 15:46:22 +0100 Wim Taymans * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: add support for unlimited number of channels Raise the channel limit and set the channel-mask for > 2 channels. 2015-11-02 13:19:09 +0100 Wim Taymans * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: add support for all formats Use the pack functions to also support the other audio formats we have. 2015-11-02 12:09:42 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: subtract time difference with GST_CLOCK_DIFF To ensure the subtraction of two GstClockTime values (which are guint64) can be negative. Use GST_CLOCK_DIFF which returns a gint64. CID 1338049 2015-11-02 11:34:56 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Do not force user to provide an encoding profile name And use the profile called `default` if none provided. 2015-11-02 11:30:07 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Do not unconditionally break when searching for a target Otherwise the loop is useless! Fixes CID 1338051 2015-10-24 20:08:47 +0300 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Clip input buffers to the segment before handling them https://bugzilla.gnome.org/show_bug.cgi?id=757068 2015-10-24 20:05:10 +0300 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Clip input buffers to the segment before handling them https://bugzilla.gnome.org/show_bug.cgi?id=757068 2015-10-24 20:02:13 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: Clip input buffers to the segment before handling them https://bugzilla.gnome.org/show_bug.cgi?id=757068 2015-11-01 23:34:32 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Assume 48kHz if no sample rate is given in the header 2015-10-30 20:59:41 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Place 48kHz first in the caps For all the other sample rates the encoder will have to resample internally. 2015-11-01 23:05:10 +0000 Tim-Philipp Müller * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: audioconvert: update orc backup code to fix build without orc 2015-10-26 21:32:41 +0100 Csaba Toth * gst/tcp/gstmultisocketsink.c: multisocketsink: fix "client-removed" signal on 64-bit platforms and with bindings The client-removed signal used G_INT_TYPE instead of G_SOCKET_TYPE in its definition leading to problems on platforms where the size of a pointer is larger than the size of an integer, It would also not work at all with dynamic language bindings. https://bugzilla.gnome.org/show_bug.cgi?id=757155 2015-10-28 18:36:41 +0100 Joan Pau Beltran * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: fix handling of Bayer format 'gbrg' Due to a typo, videotestsrc did not handle the Bayer format 'gbrg' properly and reported it as invalid, causing negotiation errors. https://bugzilla.gnome.org/show_bug.cgi?id=757264 2015-10-30 17:36:48 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstaudioquantize.h: audioconvert: rework audioconvert Rewrite audioconvert to try to make it more clear what steps are executed during conversion. Add passthrough step that just does a memcpy when possible. Add ORC optimized dither and quantization functions. Implement noise-shaping on S32 samples only and allow for arbitrary noise shaping coefficients if we want this later. 2015-10-30 17:33:32 +0100 Wim Taymans * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: channelmix: fix up API a little don't use gpointer * for something that should be gpointer. 2015-10-28 11:40:42 +0100 Wim Taymans * gst/audioconvert/gstaudioquantize.c: audioquantize: make helper for add with saturation 2015-10-29 00:44:26 +1100 Matthew Waters * ext/gl/gstglstereomix.c: glmemory: add support for rectangle textures Add the various tokens/strings for the differnet texture types (2D, rect, oes) Changes the GLmemory api to include the GstGLTextureTarget in all relevant functions. Update the relevant caps/templates for 2D only textures. 2015-10-29 16:52:31 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Print another time difference as a signed integer instead of a huge unsigned one 2015-10-29 16:01:26 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Print GstClockTimeDiff as a signed integer in debug logs 2015-10-26 19:58:04 -0400 Olivier Crête * gst/audiomixer/gstaudiomixer.c: liveadder: Make latency property be a uint in millisecs This restores roughly the same behaviour as the old liveadder element. Except that the latency now also includes the output-buffer-duration. https://bugzilla.gnome.org/show_bug.cgi?id=757050 2015-10-29 00:01:01 +0530 Nirbheek Chauhan * tools/gst-device-monitor.c: tools: gst-device-monitor: fix two memory leaks The removed GList link needs to be freed too, and the G_OPTION_REMAINING arguments need to be freed. 2015-10-28 15:50:44 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Add a GST_ENCODING_TARGET_PATH envvar to find target files 2015-10-28 15:47:00 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Allow having encoding target without a category set There was already some code to handle that, but the support was not complete in those code paths. 2015-10-27 12:56:48 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Create directory before trying to save encoding targets 2015-10-27 12:50:26 +0100 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Allow specifying the target category in the serialized encoding target 2015-10-27 17:28:06 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstaudioquantize.h: audioconvert: make the quantizer a reusable object Turn the quantizer into a reusable object. 2015-10-27 13:24:31 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: audioconvert: make the channel mixer a separate reusable object A first attempt at making the channel mixer a separate object. 2015-10-28 11:32:57 +0100 Wim Taymans * gst/audioconvert/gstaudioquantize.c: audioquantize: fix 8-pole noise shaping Fix the 8-pole noise shaping error update. We were mixing errors from different channels. 2015-10-27 15:44:06 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Send SEEK events directly to adaptive streaming demuxers This makes sure that they will always get SEEK events, even if we're currently in the middle of a group switch (i.e. switching to another representation/bitrate/etc). https://bugzilla.gnome.org/show_bug.cgi?id=606382 2015-10-06 15:20:51 +0200 Guillaume Desmottes * gst/playback/gstdecodebin2.c: decodebin: fix event leak As stated in GST_PAD_PROBE_HANDLED's documentation, we are supposed to unref the event before returning. Fixes an event leak in the validate.hls.playback.play_15s.hls_bibbop validate scenario. https://bugzilla.gnome.org/show_bug.cgi?id=754459 2015-10-23 19:13:05 +0300 Sebastian Dröge * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: audioconvert: Update disted orc files 2015-10-23 16:58:17 +0200 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstchannelmix.c: audioconvert: use pack/unpack functions Rework the converter to use the pack/unpack functions Because the unpack functions can only unpack to 1 format, add a separate conversion step for doubles when the unpack function produces int. Do conversion to S32 in the quantize function directly. Tweak the conversion factor for doing float->int conversion slightly to get the full range of negative samples, use clamp to make sure we don't exceed our int range on the positive axis (see also #755301) 2015-10-23 12:02:28 +0300 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Send upstream events directly to playsink Send event directly to playsink instead of letting GstBin iterate over all sink elements. The latter might send the event multiple times in case the SEEK causes a reconfiguration of the pipeline, as can easily happen with adaptive streaming demuxers. What would then happen is that the iterator would be reset, we send the event again, and on the second time it will fail in the majority of cases because the pipeline is still being reconfigured 2015-10-23 17:25:50 +0900 Eunhae Choi * tests/check/gst/typefindfunctions.c: tests: typefindfunctions: fix error leaks https://bugzilla.gnome.org/show_bug.cgi?id=757008 2015-09-23 18:47:52 +0200 Thibault Saunier * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Force alpha downstream if foreground color contains alpha Otherwise the foreground color won't be fully represented in the outputted frames. https://bugzilla.gnome.org/show_bug.cgi?id=755482 2015-10-22 12:07:44 +0800 Pavel Bludov * gst-libs/gst/video/video-overlay-composition.h: video: overlay-composition: fix rectangle and composition cast macros Closing parenthesis was missing in two cases. https://bugzilla.gnome.org/show_bug.cgi?id=756893 2015-10-21 14:34:56 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From b99800a to b319909 2015-10-20 17:29:42 +0300 Sebastian Dröge * configure.ac: Use new GST_ENABLE_EXTRA_CHECKS #define https://bugzilla.gnome.org/show_bug.cgi?id=756870 2015-10-21 14:25:47 +0300 Sebastian Dröge * README: * common: Automatic update of common submodule From 9aed1d7 to b99800a 2015-10-20 12:08:23 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbuffer.h: rtp: GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING is Since 1.6.1 2015-10-20 03:58:26 +1100 Matthew Waters * gst/playback/gstdecodebin2.c: decodebin: track the exposable pads through connect_pad The logic introduced by [d50b713: decodebin: set the decode pad target before setting elements to PAUSED] to expose pads would only ever be able to possibly expose one (the last) pad per element. Make it so that any exposable pads are able to be exposed rather than just the last pad returned by connect_element. https://bugzilla.gnome.org/show_bug.cgi?id=742924 2015-10-20 03:52:24 +1100 Matthew Waters * gst/playback/gstdecodebin2.c: decodebin: return the possibly new chain in analyze_new_pad In the case of analyzing a demuxer chain, analyze_new_pad may create a new GstDecodeChain. This was not propagated to the calling function which as of [d50b713f decodebin: set the decode pad target before setting elements to PAUSED] is now required to be able to expose the correct pad. https://bugzilla.gnome.org/show_bug.cgi?id=742924 2015-10-19 15:32:19 +0530 Rajat Verma * gst/playback/gstplaysink.c: playsink: relink text_pad in case of reconfiguration In case of reconfiguration, text_pad should be re-connected with stream synchronizer sink pad. Otherwise we'll leave an unlinked pad around if there always was a streamsynchronizer text pad. https://bugzilla.gnome.org/show_bug.cgi?id=756804 2015-09-14 15:25:11 +0900 eunhae choi * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: fix issue about eos handling during flushing If the flush-start is arrived during _eos_wait() in basesink, the 'eos' flag is overwritten to TRUE after exiting the _eos_wait(). To resolve the overwritten issue, the subclass doing the _eos_wait() call should return the right value. If the eos flag is set to TRUE again, it will cause error(enter the eos flow) of the following state changing from PAUSED to PLAYING in basesink. https://bugzilla.gnome.org/show_bug.cgi?id=754980 2015-10-17 22:25:22 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstsubtitleoverlay.c: decodebin/playbin/playsink/subtitleoverlay: Post async-done on state change failures https://bugzilla.gnome.org/show_bug.cgi?id=756611 2015-10-17 22:20:31 +0300 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Immediately error out if state change fails Otherwise we chain up to the parent class' change_state function and might override the failure with SUCCESS. https://bugzilla.gnome.org/show_bug.cgi?id=756611 2015-10-17 21:47:07 +0300 Sebastian Dröge * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin/uridecodebin: Always post async-done immediately if we're a live pipeline Not only if the base class told us, but also if one of our own elements did. https://bugzilla.gnome.org/show_bug.cgi?id=756611 2015-10-16 03:40:43 +1100 Matthew Waters * gst/playback/gstdecodebin2.c: decodebin: set the decode pad target before setting elements to PAUSED Otherwise caps and context queries will disappear into nothing and therefore fail. With autoplug-query now actually working, users (such as playbin) can proxy these queries to the selected video sink and be able to select an more appropriate configuration. https://bugzilla.gnome.org/show_bug.cgi?id=731204 2015-10-17 20:36:27 +0300 Sebastian Dröge * gst-libs/gst/video/video.c: video: Add out annotations to the out parameters of gst_video_calculate_display_ratio() https://bugzilla.gnome.org/show_bug.cgi?id=754567 2015-10-16 10:48:50 +1100 Matthew Waters * win32/common/libgstrtp.def: win32 update exports for new rtp symbols 2015-07-22 11:31:05 +0200 Stian Selnes * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: rtpbuffer: Add map flag to skip padding Encrypted RTP buffers may contain encrypted padding, hence it's necessary to have an option to relax the validation in order to successfully map the buffer. When the flag GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING is set gst_rtp_buffer_map() will map the buffer like if padding is not present. https://bugzilla.gnome.org/show_bug.cgi?id=752705 2015-10-15 22:40:50 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbuffer.c: Revert "rtpbuffer: increase logging level when map fails" This reverts commit e3c8a820176ba39dfae85944fa9c6ae202ec681d. It causes too much noise in the logs. 2015-10-15 15:32:58 +0200 Miguel París Díaz * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: increase logging level when map fails https://bugzilla.gnome.org/show_bug.cgi?id=756641 2015-10-15 10:01:38 +0900 Vineeth TM * gst/playback/gstplaysink.c: playsink: Fix volume element leak In case sink implements a streamvolume interface, volume element is being got from the sink. But this is transfer full. So the memory should be freed before setting it to NULL. This was resulting in major memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=755867 2015-10-14 00:32:11 +0300 Sebastian Dröge * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Use 8 bit pointer type for byte-based pointer arithmetic Usually these loops only run once, so there's no problem here. But sometimes they run twice, and by adding the number of bytes to a 16 bit pointer type we would advance twice as much as we should. Also use snd_pcm_frames_to_bytes() in alsasrc to calculate the number of bytes to skip, same as we do in alsasink. Thanks to Lucio A. Hernandez for reporting. 2015-10-12 14:02:58 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * tests/check/libs/audioencoder.c: Revert "audioencoder: timestamp headers same as first buffer and use duration 0" This reverts commit dd4d6d9ed54c2a63a7e45661519d9965417707c5. It breaks ogg muxing and the vorbisenc unit test. 2015-10-12 09:36:29 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: liveadder: latency property is an uint64 in audiomixer 2015-08-28 11:44:19 +0200 Havard Graff * gst-libs/gst/audio/gstaudioencoder.c: * tests/check/libs/audioencoder.c: audioencoder: timestamp headers same as first buffer and use duration 0 https://bugzilla.gnome.org/show_bug.cgi?id=754224 2015-10-05 00:55:36 +0100 Olivier Crête * gst/audiomixer/gstaudiomixer.c: liveadder: Remove plugin, replace by compat subclass of audiomixer New subclass with a similar behaviour as the old liveadder, but a slightly different API as the latency is in nanoseconds, not milliseconds. Also, the new liveadder has a effective latency that is latency + output-buffer-duration. In practice, just setting a non-zero latency with the new audiomixer gives you the right behavior in 99% of the cases. 2015-08-28 11:25:22 +0200 Havard Graff * tests/check/libs/audioencoder.c: audioencoder-tests: port to use GstHarness https://bugzilla.gnome.org/show_bug.cgi?id=754223 2015-08-27 17:28:30 +0200 Havard Graff * tests/check/libs/audiodecoder.c: audiodecoder-test: port to using GstHarness https://bugzilla.gnome.org/show_bug.cgi?id=754196 2015-10-07 08:48:15 +0900 Vineeth TM * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Fix build error Build error due to wrong argument type in debug message aagg->priv->offset and next_offset are of type int64, but uint64 formatter is being used in logs. Changing all those to int64 https://bugzilla.gnome.org/show_bug.cgi?id=756065 2015-10-06 21:23:11 +0530 Nirbheek Chauhan * ext/gl/gstglvideomixer.c: glvideomixer: Proxy the ignore-eos videoaggregator property as well Identical to how the z-order property is proxied 2015-10-04 18:36:00 +0100 Sebastian Dröge * sys/xvimage/xvimagepool.c: xvimagesink: Put error message into debug output instead of just throwing it away 2015-10-02 22:19:52 +0300 Sebastian Dröge * configure.ac: * gst-libs/gst/rtsp/gstrtspconnection.c: Update GLib dependency to 2.40.0 2014-03-15 17:35:56 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtpbasepayload: Implement video SDP attributes Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726472 2015-09-25 15:17:53 +0300 Vivia Nikolaidou * tools/gst-play.c: gst-play: Removed erroneous comment The "fall through" comment was wrong. Removed. https://bugzilla.gnome.org/show_bug.cgi?id=755440 2015-09-22 23:12:10 +0300 Vivia Nikolaidou * tools/gst-play.c: gst-play: Add keyboard shortcut '0' to seek to beginning https://bugzilla.gnome.org/show_bug.cgi?id=755440 2015-08-25 16:24:12 +0900 Vineeth T M * gst/videorate/gstvideorate.c: videorate: remove unnecessary break statement Trivial patch to remove unncessary break statement used after goto statement. https://bugzilla.gnome.org/show_bug.cgi?id=754054 2015-08-20 15:59:15 +0900 Vineeth TM * gst-libs/gst/tag/mklicensestables.c: * tests/examples/encoding/encoding.c: * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/icles/stress-playbin.c: * tests/icles/test-effect-switch.c: * tools/gst-device-monitor.c: * tools/gst-discoverer.c: * tools/gst-play.c: gstreamer: base: Fix memory leaks when context parse fails. When g_option_context_parse fails, context and error variables are not getting free'd which results in memory leaks. Free'ing the same. And replacing g_error_free with g_clear_error, which checks if the error being passed is not NULL and sets the variable to NULL on free'ing. https://bugzilla.gnome.org/show_bug.cgi?id=753852 2015-06-24 23:55:35 +0200 Mathieu Duponchelle * gst/encoding/gstencodebin.c: encodebin: Fix special case Allows to run such a command line : gst-launch-1.0 uridecodebin uri=file:///home/meh/Music/sthg.mp4 ! \ encodebin profile-string="audio/x-wav|1" ! filesink location=sthg.wav Previously the code failed because wavenc is considered as a muxer. We still want encodebin to audio/x-wav as an AudioEncodingProfile, so this simple fix allows that. Ability to mux raw streams in containers such as matroskamux is a different issue. https://bugzilla.gnome.org/show_bug.cgi?id=751470 2015-09-29 10:12:28 +0530 Rajat Verma * gst/playback/gstdecodebin2.c: decodebin: free hidden groups at time of switching groups hidden groups should be freed at time of switching groups to avoid memory use from balloning up. https://bugzilla.gnome.org/show_bug.cgi?id=755770 2015-10-02 10:07:33 +0300 Sebastian Dröge * win32/common/libgstpbutils.def: win32: Update exports for new audiovisualizer symbols 2015-10-02 15:04:34 +1000 Jan Schmidt * tests/check/Makefile.am: * tests/check/libs/baseaudiovisualizer.c: tests: Add baseaudiovisualizer test, moved from -bad 2015-10-02 15:05:26 +1000 Jan Schmidt * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Don't fixate framerate if downstream didn't provide one intersection with a downstream that accepts any video/x-raw caps with no further detail won't create a framerate field. If it's not in the caps, don't fixate it, just set it to 30/1 2015-10-01 21:53:20 +0200 Stefan Sauer * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-alsa.xml: docs: add alsamidisrc to docs 2015-10-01 21:43:21 +0200 Antonio Ospite * ext/alsa/Makefile.am: * ext/alsa/gstalsamidisrc.c: * ext/alsa/gstalsamidisrc.h: * ext/alsa/gstalsaplugin.c: midi: add an ALSA MIDI sequencer source The alsamidisrc element allows to get input event from ALSA MIDI sequencer devices, and possibly convert them to sound using some downstream element like fluiddec. Fixes #738687 2015-09-30 19:01:21 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Select the initial offset based on the start segment position instead of always using 0. Otherwise we might output a lot of silence in the beginning instead of outputting from the relevant position. https://bugzilla.gnome.org/show_bug.cgi?id=755623 2015-10-01 15:27:55 +0100 Luis de Bethencourt * gst-libs/gst/pbutils/gstaudiovisualizer.c: visual: make private all variable subclasses don't need Subclasses don't need access to all variables. Making them private. https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-10-01 11:55:59 +0100 Luis de Bethencourt * ext/libvisual/Makefile.am: * ext/libvisual/visual.h: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstaudiovisualizer.c: * gst-libs/gst/pbutils/gstaudiovisualizer.h: visual: merge audiovisalizer base classes Move the audiovisualizer base class to pbutils, so it can be used by plugins from other modules https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-10-01 12:48:52 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: minor clean-up Remove unnecessary brackets from IS_MPEGTS_HEADER macro. 2015-10-01 12:32:33 +0100 Pankaj Darak * gst/typefind/gsttypefindfunctions.c: typefinding: mpeg-ts detection improvement Allow AFC to be 0 for null pid packets. https://bugzilla.gnome.org/show_bug.cgi?id=726117 2015-09-30 18:18:15 +0100 Tim-Philipp Müller * tests/check/elements/subparse.c: tests: subparse: add unit test for closing tag detection should be handled like https://bugzilla.gnome.org/show_bug.cgi?id=755875 2015-09-30 18:17:13 +0100 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: detect closing tags even if there's a space after the slash should be handled like https://bugzilla.gnome.org/show_bug.cgi?id=755875 2015-09-30 13:13:19 +0900 Vineeth TM * tests/check/elements/audiointerleave.c: audiointerleave: typecast bit-mask to guint64 to fix segmentation fault While creating caps in audiointerleave tests, bitmask is being set as 0x9 This is resulting in segmentation fault. Fix the same by typecasting to guint64 https://bugzilla.gnome.org/show_bug.cgi?id=755840 2015-09-29 13:31:18 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix compilation with older glib version Remove weird use of private gtype defines and fix compilation with older glib versions such as 2.36. https://bugzilla.gnome.org/show_bug.cgi?id=755754 2015-09-23 11:59:22 -0400 Perry Hung * gst-libs/gst/app/Makefile.am: app: pass PKG_CONFIG_PATH for gir files for libgstapp as well gir include search directories should respect PKG_CONFIG_PATH, just like we do everywhere else. Makes g-i pick up the right paths when using ./configure --with-pkg-config-path= https://bugzilla.gnome.org/show_bug.cgi?id=755494 2015-09-28 22:20:29 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: gl: chain up to the parent class for GstElement::set_context https://bugzilla.gnome.org/show_bug.cgi?id=705579 2015-08-29 19:16:38 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: check: Add test for videoaggregator sinkpads being sorted by zorder https://bugzilla.gnome.org/show_bug.cgi?id=754285 2015-09-26 10:21:41 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudioaggregator.c: audiomixer: fix deadlock when G_DISABLE_ASSERT is not defined This makes the audiomixer unit test time out in master. Broke with 587e7c4 2015-09-26 00:17:55 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Stop using deprecated gst_segment_to_position() 2015-09-25 23:51:06 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.6.0 === 2015-09-25 23:15:20 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-libs/gst/video/video-orc-dist.c: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.6.0 2015-09-25 22:50:51 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-09-24 18:06:58 +0200 Sebastian Dröge * gst-libs/gst/video/video-orc.orc: video-dither: Use saturated add when adding ordered dither for > 8 bit targets Otherwise our 16 bit integers are going to overflow in intermediate calculations, causing video to become mostly black. https://bugzilla.gnome.org/show_bug.cgi?id=755392 2015-09-24 11:33:24 +0200 Sebastian Dröge * gst-libs/gst/video/video-frame.c: video-frame: Fix gst_video_frame_copy() for formats with pstride==0 v210, UYVP and IYU1 are complex formats for which pixel stride does not really have a meaning. If we copy width*pstride bytes per line, it's not going to do the right thing. As a fallback, copy stride bytes per line. This might copy uninitialized bytes at the end of each line, but at least copies the frame. https://bugzilla.gnome.org/show_bug.cgi?id=755392 2015-09-10 15:08:35 +0200 Aurélien Zanelli * gst-libs/gst/allocators/gstfdmemory.c: fdmemory: remove 'allow-none' annotation in gst_fd_allocator_alloc() doc gst_fd_allocator_alloc() ensure that passed allocator is a fd memory allocator, so that we can't pass NULL allocator. https://bugzilla.gnome.org/show_bug.cgi?id=754833 2015-09-10 15:08:35 +0200 Aurélien Zanelli * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: remove 'allow-none' annotation in gst_dmabuf_allocator_alloc() doc gst_dmabuf_allocator_alloc() ensure that passed allocator is a DMABuf allocator, so that we can't pass NULL allocator. https://bugzilla.gnome.org/show_bug.cgi?id=754833 === release 1.5.91 === 2015-09-18 19:20:00 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.5.91 2015-09-18 19:19:16 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-09-18 18:00:05 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Only skip the remaining part of a GAP buffer We might've queued up a GAP buffer that is only partially inside the current output buffer (i.e. we received it too late!). In that case we should only skip the part of the GAP buffer that is inside the current output buffer, not also the remaining part. Otherwise we forward this pad too far into the future and break synchronization. 2015-09-18 17:48:49 +0200 Christophe Fergeau * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: appsink: Fix 'steaming' typo in API doc There are several occurrences of 'steaming' where 'streaming' was meant. 2015-09-18 11:49:59 +0200 Sebastian Dröge * po/vi.po: * po/zh_CN.po: po: Update translations 2015-09-18 10:59:46 +0530 Ravi Kiran K N * tests/examples/playback/playback-test.c: playback-test: avoid critical on exit Only free vis_entries array when not null on exit. https://bugzilla.gnome.org/show_bug.cgi?id=755201 2015-09-18 09:48:18 +0530 Prashant Gotarne * ext/pango/gstbasetextoverlay.c: basetextoverlay: fix typo in debug log message https://bugzilla.gnome.org/show_bug.cgi?id=755198 2015-09-18 00:20:13 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: Don't throw compiler warnings with G_DISABLE_ASSERT Disable code that warns about unused variables when G_DISABLE_ASSERT is defined, as it is in tarballs and pre-releases. 2015-09-18 00:20:13 +1000 Jan Schmidt * gst/audiomixer/gstaudioaggregator.c: Don't throw compiler warnings with G_DISABLE_ASSERT Disable code that warns about unused variables when G_DISABLE_ASSERT is defined, as it is in tarballs and pre-releases. 2015-09-17 14:27:33 +0900 Vineeth T M * gst-libs/gst/audio/gstaudiosink.c: * gst/tcp/gstmultisocketsink.c: audiosink, multisocketsink: Fix error leak during failures https://bugzilla.gnome.org/show_bug.cgi?id=755143 2015-09-17 13:35:02 +0900 Vineeth T M * ext/gl/gstglbasemixer.c: gl: Fix GError leaks during failures https://bugzilla.gnome.org/show_bug.cgi?id=755140 2015-09-16 19:53:35 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Use the correct caps name for MS Smooth Streaming manifests Thanks to John Chang for reporting. https://bugzilla.gnome.org/show_bug.cgi?id=755098 2015-09-15 15:39:11 -0300 Thiago Santos * ext/opus/gstopusdec.c: opusdec: remove check for number of channels opus decoder can convert from different number of channels, no need to check, just let it negotiate and create a new decoder if needed. https://bugzilla.gnome.org/show_bug.cgi?id=755059 2015-09-15 15:26:44 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: appsink: minor docs fix 2015-09-11 23:36:47 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideopool.c: videopool: ensure allocation alignment is consistent with video alignment requirements Make sure GstAllocationParams alignment is not less than any alignment requirement specified via GstVideoAlignment. https://bugzilla.gnome.org/show_bug.cgi?id=754120 2015-09-11 21:37:08 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Fix mixup of running times and segment positions We have to queue buffers based on their running time, not based on the segment position. Also return running time from GstAggregator::get_next_time() instead of a segment position, as required by the API. Also only update the segment position after we pushed a buffer, otherwise we're going to push down a segment event with the next position already. https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-11 16:56:40 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Use stream time in the position query instead of segment position https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-11 12:22:51 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix mixup of running times and segment positions We have to queue buffers based on their running time, not based on the segment position. Also return running time from GstAggregator::get_next_time() instead of a segment position, as required by the API. Also only update the segment position after we pushed a buffer, otherwise we're going to push down a segment event with the next position already. https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-14 09:36:20 +0900 Vineeth TM * sys/xvimage/xvimagesink.c: xvimagesink: fix error leak when context creation fails When context creation fails, error is getting leaked. https://bugzilla.gnome.org/show_bug.cgi?id=754973 2015-09-11 11:22:35 +0200 Miguel París Díaz * ext/opus/gstopusenc.c: opusenc: improve deprecated properties docs https://bugzilla.gnome.org/show_bug.cgi?id=754819 2015-09-11 11:11:09 +0200 Miguel París Díaz * ext/opus/gstopusenc.c: opusenc: do not throw g_warning when getting deprecated properties https://bugzilla.gnome.org/show_bug.cgi?id=754819 2015-09-11 23:28:37 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playback: Add POINTER_TO_ULONG() macro for consistency 2015-09-11 23:48:05 +0900 Kouhei Sutou * gst/playback/gstplaybin2.c: playback: fix build error for 64bit Windows build by MinGW Casting to gpointer from gulong generates the following warning with 64bit Windows target MinGW: gstplaybin2.c: In function 'pad_added_cb': gstplaybin2.c:3476:7: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] (gpointer) group_id_probe_handler); ^ cc1: all warnings being treated as errors We should cast to guintptr from gulong before we cast to gpointer. https://bugzilla.gnome.org/show_bug.cgi?id=754755 2015-09-09 19:51:18 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: fix caps query to properly handle alpha formats Only accept alpha if downstream has alpha as well. It could theoretically accept alpha unconditionally if blending is properly implemented for handle it but at the moment this is a missing feature. Improves the caps query by also comparing with the template caps to filter by what the subclass supports. https://bugzilla.gnome.org/show_bug.cgi?id=754465 2015-09-09 19:00:33 -0300 Thiago Santos * gst-libs/gst/video/video-format.c: video-format: add missing alpha flag for some formats Some formats didn't have the alpha flag marked, use the correct macro so they get it right. https://bugzilla.gnome.org/show_bug.cgi?id=754808 2015-09-09 12:33:02 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Always take the mutex before flushing the queue Otherwise the application might push new buffers into the queue while we're flushing, potentially causing the GQueue data structure to become inconsistent and causing crashes soon after. https://bugzilla.gnome.org/show_bug.cgi?id=754597 2015-09-08 01:35:19 +0530 Vikram Fugro * gst-libs/gst/app/gstappsrc.c: * tests/check/elements/appsrc.c: appsrc: retain the latest caps in queue when flushing - Retain the latest caps in the internal queue, when flushing. - Add a unit test case for the same. https://bugzilla.gnome.org/show_bug.cgi?id=754597 2015-09-07 00:19:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: video: improve GstVideoFormatUnpack docs https://bugzilla.gnome.org/show_bug.cgi?id=754650 2015-09-06 18:17:15 +0900 Kouhei Sutou * gst-libs/gst/video/video-dither.c: libs: Fix build error on MinGW where "%ll" is not available "ll" isn't available on MinGW. We can use G_GINT64_MODIFIER for portable 64bit size data modifier. https://bugzilla.gnome.org/show_bug.cgi?id=754630 2015-09-05 01:50:41 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: Ensure all arguments to CLAMP are signed int If any of the arguments to CLAMP are unsigned integers, the comparison causes an automatic conversion of the signed int to unsigned, which causes -1 to become UINT_MAX and get clamped to the high value of the CLAMP instead of 0. See 716 at http://c0x.coding-guidelines.com/6.3.1.8.html Also add a test for this. https://bugzilla.gnome.org/show_bug.cgi?id=754576 2015-08-31 10:46:43 +0200 Havard Graff * gst-libs/gst/Makefile.am: libs: build rtp after audio The dependency setup does not seem to work for all systems, causing the build to fail with: gstrtpbaseaudiopayload.c:65:0: fatal error: gst/audio/audio-enumtypes.h: No such file or directory My setup: gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4 autoconf (GNU Autoconf) 2.69 automake (GNU automake) 1.14.1 libtool (GNU libtool) 2.4.2 https://bugzilla.gnome.org/show_bug.cgi?id=754344 2015-08-31 10:49:41 +0100 Tim-Philipp Müller * gst-libs/gst/Makefile.am: libs: rtp is no longer an independent subdir https://bugzilla.gnome.org/show_bug.cgi?id=754344 2015-09-03 17:55:10 +0200 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: fix gamma-decode option We need to use the enum to configure the option now. 2015-09-02 19:16:56 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: lift restriction of changing pixel-aspect-ratio The videoaggregator can convert PAR, there is no reason for restricting it. https://bugzilla.gnome.org/show_bug.cgi?id=754291 2015-09-03 08:58:08 +0530 Prashant Gotarne * ext/pango/gstbasetextoverlay.c: basetextoverlay: FIX crash if padding greater than video size Skipping rendering of textimage if overlay is completely outside video frame. https://bugzilla.gnome.org/show_bug.cgi?id=754429 2015-08-31 11:09:09 +0200 Philippe Normand * gst-libs/gst/app/gstappsrc.c: appsrc: remove duplicate get_size vfunc assignment 2015-08-29 21:38:52 +0200 George Kiagiadakis * gst-libs/gst/allocators/allocators.h: allocators: include gstfdmemory.h in the main library header, allocators.h 2015-08-29 16:51:08 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: variables in clamp_rectangle() should be signed x/y/w/h are signed integers. As can be seen in GstCompositorPad. The prototype for clamp_rectangle was wrong. This commit reverts the change and fixes the prototype. This reverts commit bca444ea4a84c39e9989681f892f6e4cb2033cf9. 2015-08-29 10:44:28 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: fix misleading error message debug detail https://bugzilla.gnome.org/show_bug.cgi?id=754260 2015-08-28 15:21:11 +0100 Luis de Bethencourt * gst/compositor/compositor.c: compositor: remove check for below zero for unsigned value CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative number since it is an unsigned integer. Removing that check and only checking if it is bigger than max by using MIN(). CID 1320707 2015-08-28 09:36:15 -0300 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: implement accept-caps handler The default one will just go through the internal elements which might just be identity when it is in passthrough which will lead to the query being handled by the downstream sink, ignoring all that playsinkconvertbin could actually handle and convert. https://bugzilla.gnome.org/show_bug.cgi?id=754235 2015-08-27 23:08:51 +0200 Carlos Rafael Giani * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiobasesink.h: audiobasesink: Fix incorrect/missing custom slaving method documentation https://bugzilla.gnome.org/show_bug.cgi?id=754199 2015-08-26 15:40:16 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: Actually use the output resolution for clamping The obscured check in compositor was using the dimensions of the pad to clamp the h/w of the pad instead of the output resolution, and was doing an incorrect calculation to do so. Fix that by simplifying the whole calculation by using corner coordinates. Also add a test for this bug which fell through the cracks, and just skip all the obscured tests if the pad's alpha is 0.0. https://bugzilla.gnome.org/show_bug.cgi?id=754107 2015-08-21 16:44:43 +0900 hoonhee.lee * tests/check/elements/audiomixer.c: tests: audiomixer: remove duplicated word in comment https://bugzilla.gnome.org/show_bug.cgi?id=753915 2015-08-20 14:11:56 +0300 Ben Browitt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Always set the pad's buffer_vinfo when storing a buffer Otherwise it might be unset, and then the buffer is used and gst_video_frame_map() will crash because of invalid video-info. https://bugzilla.gnome.org/show_bug.cgi?id=753805 2015-08-19 21:19:05 +0900 Eunhae Choi * gst/subparse/gstsubparse.c: subparse: use g_clear_error instead of g_error_free To avoid invalid pointer accees the err pointer should be set to NULL. By using g_clear_error() it calls free and clear the pointer. https://bugzilla.gnome.org/show_bug.cgi?id=753817 === release 1.5.90 === 2015-08-19 13:10:23 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 1.5.90 2015-08-19 12:39:17 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-08-19 11:23:09 +0300 Sebastian Dröge * po/cs.po: * po/da.po: * po/de.po: * po/hu.po: * po/nb.po: * po/pl.po: * po/ru.po: * po/uk.po: * po/zh_CN.po: po: Update translations 2015-08-19 08:37:46 +0900 Vineeth TM * tools/gst-discoverer.c: tools: discoverer: When info is NULL just print error and return In case discover_uri returns NULL info, passing the info to discoverer APIs result in critical assertion errors. Hence instead of passing NULL info along, print the error and return. https://bugzilla.gnome.org/show_bug.cgi?id=753701 2015-08-18 18:47:22 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin: Handle the preroll multi-queue size" This reverts commit 5c8ef0ea05123506dfc35c70c8b165bca7435dad. 2015-08-18 18:47:21 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin: Store extra_buffer_required per group, not globally" This reverts commit 1ea81114ea6bd48b581f19002018680933aa7a12. 2015-08-18 18:47:18 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin: If extra buffers are going to be required, we're still prerolling" This reverts commit a3b24f0241bd55a005a072ba8ddcd53e0fdbf827. 2015-08-18 16:28:42 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video(en|de)coder: Return TRUE when we consumed a tag event without creating a new event Fixes spurious flow errors that especially break gst-validate. 2015-08-18 16:01:28 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: If there are no tags, don't try to do event handling on a NULL event Fixes some crashes. 2015-08-18 15:58:57 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: If there are no tags, don't try to do event handling on a NULL event Fixes some crashes. 2015-08-18 13:50:17 +0300 Vivia Nikolaidou * tools/gst-play.c: tools: gst-play: Use g_build_filename instead of g_strconcat When running gst-play against a directory name, and suffix the path with a directory separator (e.g. tab completion), gst-play was printing two directory separators in a row. g_build_filename fixes this, and additionally allows for both '/' and '\' as separators on Windows. 2015-08-18 15:16:25 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: If extra buffers are going to be required, we're still prerolling 2015-08-18 15:01:33 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Store extra_buffer_required per group, not globally It's only relevant for each group, and by storing it in the group we have locking and everything else like for the other buffering-related variables. Locking looks a bit fishy still, but it was like that for a long time already so shouldn't be worse than before. 2015-07-30 10:33:25 +0900 Myoungsun Lee * gst/playback/gstdecodebin2.c: decodebin: Handle the preroll multi-queue size Overview: There are some of interleaved streams which has long-term location of audio data. It mean the audio data is located far away more than multiqueue size. In this case, because of multiqueue overrun, the pipeline is stopped. To prevent hanging-like state, the decodebin needs to handle the queue size. Caused: The multiqueue size is not enough, the pipeline will stay being stalled status and decodebin cannot complete to build decode chain. In this issue file, decodebin did not receive no_more_pads signal or audio data yet. Steps to Reproduce: play the high-resolution(4K file) files or some streaming media(push mode). Actual Results: There is no audio or subtitle. We can see only video or infinite loading. Resolution: Decodebin detect this problem, and add extra buffer size to multiqueue. The multiqueue is larger than before, the next data can be pushed the downstream element. Additional Information: The max-preroll extra buffer size is set 8MB. We can use total pre-roll buffer 10MB. Only first overrun callback can handle multiqueue size. https://bugzilla.gnome.org/show_bug.cgi?id=733235 2015-08-18 12:29:29 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoencoder.c: videoencoder: fix tag handling Merge upstream tags with encoder tags and update whenever any of those changes. https://bugzilla.gnome.org/show_bug.cgi?id=679768 2015-08-18 11:45:24 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: fix tag handling Merge upstream tags with encoder tags and update whenever any of those changes. https://bugzilla.gnome.org/show_bug.cgi?id=679768 2015-08-18 12:56:33 +0300 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add typefinder for TTML+XML Used in DASH among other things, as SMPTE Timed Text. 2015-08-18 09:06:39 +0900 Vineeth TM * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: discoverer: Set GError when NULL info is being returned. When discovering the URI, if info is NULL, then instead of just returning NULL, set the GError, so the error can be printed and notified. https://bugzilla.gnome.org/show_bug.cgi?id=753701 2015-08-16 07:18:34 -0300 Thiago Santos * ext/opus/gstopusenc.c: audioencoders: use template subset check for accept-caps It is faster than doing a query that propagates downstream and should be enough Elements: faac, gsmenc, opusenc, sbcenc, voamrwbenc, adpcmenc, sirenenc 2015-08-17 11:18:25 +0900 Vineeth TM * tools/gst-discoverer.c: discoverer: free context and error during failures When g_option_context_parse or gst_discoverer_new fails, then there will be memory leaks for ctx and err variables. Free'ing the same. https://bugzilla.gnome.org/show_bug.cgi?id=753701 2015-08-16 18:28:09 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: try harder to avoid sending unnecessary tag updates 2015-08-16 17:55:22 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix tag handling Before we just merged everything in pretty much random ways ad-hoc instead of keeping state properly. In 0.10 that was how it worked, but in 1.x the tag events sent should always reflect the latest state and replace any previous tags. So save the upstream (stream) tags, and save the tags set by the decoder subclass with merge mode, and then update the merged tags whenever either of those two changes. This slightly changes the behaviour of gst_video_decoder_merge_tags() in case it is called multiple times, since now any call replaces the previously-set tags. However, it leads to much more predictable outcomes, and also we are not aware of any subclass which sets this multiple times and expects all the tags set to be merged. If more complex tag merging scenarios are required, we'll have to add a new vfunc for that or the subclass has to intercept the upstream tags itself and send merged tags itself. https://bugzilla.gnome.org/show_bug.cgi?id=679768 2015-08-14 17:59:29 +0100 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: tests: audiodecoder: add unit test for tag handling https://bugzilla.gnome.org/show_bug.cgi?id=679768 2015-08-14 17:44:59 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix tag handling Before we just merged everything in pretty much random ways ad-hoc instead of keeping state properly. In 0.10 that was how it worked, but in 1.x the tag events sent should always reflect the latest state and replace any previous tags. So save the upstream (stream) tags, and save the tags set by the decoder subclass with merge mode, and then update the merged tags whenever either of those two changes. This slightly changes the behaviour of gst_audio_decoder_merge_tags() in case it is called multiple times, since now any call replaces the previously-set tags. However, it leads to much more predictable outcomes, and also we are not aware of any subclass which sets this multiple times and expects all the tags set to be merged. If more complex tag merging scenarios are required, we'll have to add a new vfunc for that or the subclass has to intercept the upstream tags itself and send merged tags itself. https://bugzilla.gnome.org/show_bug.cgi?id=679768 2015-08-15 22:23:15 -0300 Thiago Santos * ext/vorbis/gstvorbisenc.c: vorbisenc: use template subset check for accept-caps It is faster than doing a query that propagates downstream and should be enough 2015-08-16 12:20:51 -0300 Thiago Santos * ext/vorbis/gstvorbisenc.c: vorbisenc: use more accurate sink pad template caps Removes the need for custom caps query handling and makes it more correct from the beginning on the template. It is a bit uglier to read because there is 1 entry per channel but makes code easier to maintain. 2015-08-15 22:22:41 -0300 Thiago Santos * ext/theora/gsttheoraenc.c: theoraenc: use template subset check for accept-caps It is faster than doing a query that propagates downstream and should be enough 2015-08-16 08:12:01 -0300 Thiago Santos * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: add src and sink query methods Allows subclasses to do their own handling of GstQuery and still chain up to the parent class to handle the ones that they don't want to handle 2015-08-16 12:53:02 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin: Fix list iteration We were using the wrong variable ... CID #1316477 2015-08-15 12:58:40 -0300 Thiago Santos * ext/opus/gstopusdec.c: audiodecoders: use default pad accept-caps handling Avoids useless check of downstream caps when handling an accept-caps query Elements: dtsdec, faad, gsmdec, mpg123audiodec, opusdec, sbcdec, adpcmdec, sirendec 2015-05-04 11:19:28 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Handle flushing with multiple decode groups When an upstream element wants to flush downstream, we need to take all chains/groups into consideration. To that effect, when a FLUSH_START event is seen, after having it sent downstream we mark all those chains/groups as "drained" (as if they had seen a EOS event on the endpads). When a FLUSH_STOP event is received, we check if we need to switch groups. This is done by checking if there are next groups. If so, we will switch over to the latest next_group. The actual switch will be done when that group is blocked. https://bugzilla.gnome.org/show_bug.cgi?id=606382 2015-04-29 15:56:39 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Forward event/queries for unlinked groups When upstream events/queries reach sinkpads of unlinked groups (i.e. no longer linked to the upstream demuxer), this patch attempts to find the linked group and forward it upstream of that group. This is done by adding upstream event/query probes on new group sinkpads and then: * Checking if the pad is linked or not (has a peer or not) * If there is a peer, just let the event/query follow through normally * If there is no peer, we find a pad to which to proxy it and return GST_PROBE_HANDLED if it succeeded (allowing the event/query to be properly returned to the initial called) Note that this is definitely not thread-safe for the time being https://bugzilla.gnome.org/show_bug.cgi?id=606382 2015-08-15 08:18:59 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * win32/common/libgstaudio.def: Revert "audiodecoder: expose default query handling function" Apparently I forgot how gobject works, there is no need to expose it directly as one can call it from the parent_class pointer This reverts commit 8a64592481dab985ca520a5b1cb394a609275c60. 2015-08-15 08:14:00 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: Revert "videodecoder: expose default query handling function" Apparently I forgot how gobject works, there is no need to expose it directly as one can call it from the parent_class pointer This reverts commit ea9b6a7e3c4eea512650adf530b7f1acb0eccd84. 2015-08-15 07:41:24 -0300 Thiago Santos * ext/vorbis/gstvorbisdec.c: vorbisdec: use default pad accept-caps handling Avoids useless check of downstream caps when handling an accept-caps query 2015-08-15 07:40:55 -0300 Thiago Santos * ext/theora/gsttheoradec.c: theoradec: use default pad accept-caps handling Avoids useless check of downstream caps when handling an accept-caps query 2015-08-15 07:31:54 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * win32/common/libgstaudio.def: audiodecoder: add option to use default pad accept-caps handling Add gst_audio_decoder_set_use_default_pad_acceptcaps() to allow subclasses to make videodecoder use the default pad acceptcaps handling instead of resorting to the caps query that is, usually, less efficient and unecessary API: gst_audio_decoder_set_use_default_pad_acceptcaps 2015-08-15 07:20:25 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: videodecoder: add option to use default pad accept-caps handling Add gst_video_decoder_set_use_default_pad_acceptcaps() to allow subclasses to make videodecoder use the default pad acceptcaps handling instead of resorting to the caps query that is, usually, less efficient and unecessary API: gst_video_decoder_set_use_default_pad_acceptcaps 2015-08-15 23:33:14 +1000 Jan Schmidt * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Make stats creation threadsafe, fix a CRITICAL Use the object lock to protect the internal segment when updating against access from getting the stats property. Fix a critical in gst-inspect or when retrieving the stats before any segment has arrived by checking whether the segment has been initted.. 2015-08-12 03:00:15 +1000 Jan Schmidt * gst/typefind/gsttypefindfunctions.c: typefind: Make the H.264 typefind a tiny bit more lenient. When we see prefix NALs before a Subset SPS has been spotted, it might just be because the stream was truncated at the start, so don't count those as either 'bad' or 'good' packets. 2015-08-14 18:43:03 +0200 George Kiagiadakis * gst-libs/gst/app/gstappsink.c: appsink: unref the preroll buffer and cleanup the segments on stop() Just for consistency. No need to keep data around. 2015-08-14 18:35:22 +0200 George Kiagiadakis * gst-libs/gst/app/gstappsink.c: appsink: do not update preroll_caps unless the sink is prerolling Just for consistency with the preroll_segment 2015-08-14 18:06:03 +0200 George Kiagiadakis * tests/check/elements/appsink.c: tests/appsink: add test to ensure that the segment returned by pull-preroll/sample is correct https://bugzilla.gnome.org/show_bug.cgi?id=751147 2015-06-18 12:30:24 +0200 George Kiagiadakis * gst-libs/gst/app/gstappsink.c: appsink: put the correct segment in the preroll sample last_segment is only being updated in dequeue_buffer(), which is only called from _pull_sample(). _pull_preroll() simply re-uses an old or dummy segment while the actual one sits and waits in the queue. https://bugzilla.gnome.org/show_bug.cgi?id=751147 2015-08-14 08:59:51 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: videodecoder: expose default query handling function Subclasses can use it to select what queries they want to handle and forward the rest to the default handling function. API: gst_video_decoder_sink_query_default https://bugzilla.gnome.org/show_bug.cgi?id=753623 2015-08-14 08:58:58 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * win32/common/libgstaudio.def: audiodecoder: expose default query handling function Subclasses can use it to select what queries they want to handle and forward the rest to the default handling function. API: gst_audio_decoder_sink_query_default https://bugzilla.gnome.org/show_bug.cgi?id=753623 2015-08-14 11:11:10 +0200 Edward Hervey * tests/check/generic/states.c: check: Rename states unit test Makes it easier to differentiate from other modules states unit test 2015-08-14 05:48:31 -0300 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: remove accept-caps handling Just let the internal element of the bin do it instead of forcing a caps query to do it. 2015-08-13 13:52:17 -0300 Thiago Santos * gst/videorate/gstvideorate.c: videorate: fixate the pixel-aspect-ratio If the pixel-aspect-ratio is not fixed, try to get it as close to 1/1 as possible https://bugzilla.gnome.org/show_bug.cgi?id=748635 2015-08-11 15:09:10 +0100 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: theoraenc: mention videorate is often needed in docs https://bugzilla.gnome.org/show_bug.cgi?id=748877 2015-08-11 14:10:57 +0200 Sebastian Dröge * gst-libs/gst/Makefile.am: rtp: Depend on the audio library 2015-07-01 16:25:13 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: rtpbaseaudiopayload: Copy metadata in the (de)payloader, but only the relevant ones The payloader didn't copy anything so far, the depayloader copied every possible meta. Let's make it consistent and just copy all metas without tags or with only the audio tag. https://bugzilla.gnome.org/show_bug.cgi?id=751774 2015-08-10 22:03:48 +0200 Joan Pau Beltran * gst/videorate/gstvideorate.c: videorate: add support for bayer formats Since the videorate element just duplicates or drops frames to achieve the desired framerate, it can accept video/x-bayer media (in any format), which are not present in the current caps. Just add "video/x-bayer(ANY);" to the caps of the static pad template (fixing line style to pass the indent commit hook). https://bugzilla.gnome.org/show_bug.cgi?id=753483 2015-08-05 15:32:54 -0400 Nicolas Dufresne * gst-libs/gst/rtp/gstrtpbasedepayload.c: basedepayloader: Don't re-timestamp with running-time There was a confusion, six depayloaders where passing through the timestamp while the base class was re-timestamping to running time. This inconstancy has been unnoticed has in most use cases the incoming segment is [0, inifnity] in which case timestamps are the same as running time. With DTS/PTS shifting added (to avoid negative values) and pcapparse sending a different segment this started being an issue. https://bugzilla.gnome.org/show_bug.cgi?id=753037 2015-08-10 09:49:19 -0300 Thiago Santos videoencoder: remove empty line to make g-i-scanner happy gstvideoencoder.h:228: Warning: GstVideo: "@transform_meta" parameter unexpected at this location: * @transform_meta: Optional. Transform the metadata on ... 2015-08-10 08:17:09 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: documentation cleanup Remove some whitespace and break lines longer than 80 columns 2015-08-10 00:21:42 -0300 Thiago Santos * tests/check/libs/audiodecoder.c: tests: audiodecoder: add test to make sure gap is pushed before segment https://bugzilla.gnome.org/show_bug.cgi?id=753360 2015-08-09 23:23:05 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: * tests/check/libs/videodecoder.c: videodecoder: push pending events before gap Push all pending events before pushing the gap. This ensures the segment is pushed before the gap so it can be properly translated to the running time Includes unit test. https://bugzilla.gnome.org/show_bug.cgi?id=753360 2015-07-30 16:39:03 -0400 Olivier Crête * ext/ogg/gstoggdemux.c: oggdemux: Set chain pointers to NULL Otherwise, they will refer to freed memory https://bugzilla.gnome.org/show_bug.cgi?id=753078 2015-07-31 13:31:56 +0900 Vineeth TM * gst/playback/gstdecodebin2.c: decodebin: fix deadend_details string leak deadend_details need not be returned when the pad is not a deadend. Hence checking if res value is TRUE and clearing the string instead of passing it on https://bugzilla.gnome.org/show_bug.cgi?id=753088 2015-08-04 14:41:10 -0400 Nicolas Dufresne * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Don't set DTS on buffer DTS is for encoded data and have no meaning for raw. It better to not set it, as it's confusing. https://bugzilla.gnome.org/show_bug.cgi?id=752791 2015-08-03 19:48:16 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: swap control binding proxy The ref_object and object parameters were the wrong way around. For the typical use case where an application is setting a GstControlBinding on the returned ghost pad: 1. our control binding would be removed when the new one was set 2. sync_values calls were not being forwarded from the internal pad to the ghost pad. If an application attempts to perform other control binding operations (get_* family of functions) on the internal pad, they will also be forwarded to the ghost pad where a possible GstControlBinding will provide the necessary values. 2015-07-30 18:43:19 -0400 Olivier Crête * ext/ogg/gstoggdemux.c: oggdemux: Return FLUSHING if pad if flushing If the initial seek fails because the pad is flushing, then return GST_FLOW_FLUSHING instead of an error. 2015-07-02 18:37:28 -0400 Olivier Crête * tests/check/elements/audiointerleave.c: tests: Add audiointerleave test to show that queuing works This tests fails without the queuing patch because incoming buffers are not delivered before they are needed. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 21:32:04 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove broken _clip vfunc It never does anything. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-07-02 18:33:43 -0400 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: audiointerleave: Avoid caps processing if not yet negotiated https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-16 17:06:46 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: On timeout, resync pads with not enough data https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 19:50:08 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: aggregator: Queue "latency" buffers at each sink pad. In the case where you have a source giving the GstAggregator smaller buffers than it uses, when it reaches a timeout, it will consume the first buffer, then try to read another buffer for the pad. If the previous element is not fast enough, it may get the next buffer even though it may be queued just before. To prevent that race, the easiest solution is to move the queue inside the GstAggregatorPad itself. It also means that there is no need for strange code cause by increasing the min latency without increasing the max latency proportionally. This also means queuing the synchronized events and possibly acting on them on the src task. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-07-30 15:16:57 +0100 Brian Peters * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: avoid accessing NULL buffer even more Previous commit was incompletely applied. https://bugzilla.gnome.org/show_bug.cgi?id=753001 2015-07-30 14:30:44 +0100 Brian Peters * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: buffer: don't access NULL buffer pointer unmap will set rtpbuffer->buffer to NULL, so we need to save the pointer to access it while the RTP buffer is unmapped. https://bugzilla.gnome.org/show_bug.cgi?id=753001 2015-07-30 12:50:56 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: fix leaks in error code paths This was introduced when reshuffling the buffer unmaps in commit bc14cdf529e21356ea7b2c8f34614958a91f7260 rtp: rtpbasedepayload: add process_rtp_packet() vfunc Fixes make check-valgrind. https://bugzilla.gnome.org/show_bug.cgi?id=750235 2015-07-29 17:48:58 +0100 Luis de Bethencourt * ext/gl/gstglstereomix.c: glstereomix: remove redundant initialization v is initialized in the for loop init, no need to do it twice. Removing first initialization. 2015-07-28 22:30:09 +0300 Sebastian Dröge * tests/check/elements/compositor.c: compositor: Add unit tests for the new aggregator start-time-selection property https://bugzilla.gnome.org/show_bug.cgi?id=749966 2015-06-15 18:30:20 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Add property to select how to decide on a start time Before aggregator based elements always started at running time 0, now it's possible to select the first input buffer running time or explicitly set a start-time value. https://bugzilla.gnome.org/show_bug.cgi?id=749966 2015-07-28 13:57:20 +0300 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: textoverlay: Query downstream caps for checking if caps features are supported, not just accept-caps accept-caps is not recursive and might stop at the next downstream element, while caps queries are generally recursive. The next element might accept any capsfeatures we want, but that doesn't mean that further downstream it will also work. Additionally for the future: We should probably check if downstream *prefers* the overlay meta, and only enforce usage of it if we can't handle the format ourselves and thus would have to drop the overlays. Otherwise we should prefer what downstream wants here. 2015-07-27 18:39:13 +0530 Nirbheek Chauhan * ext/opus/gstopuscommon.c: opuscommon: Use GString instead of snprintf for concating Safer, easier to understand, and more portable. Also, skip all this if the log level is too low. 2015-07-23 15:28:42 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: Use the extents rectangle for positioning the extents rectangle is what you need to know to properly position a buffer that has been rendered in a surface of the ink rectangle size. This patch make the placement on par with the placement we had before without having to over allocate. This patch also enable placement for vertical rendering. Note that the halginement, valighment and line-alignment default are set to the previous default when this property is set. This is for backward compatibility, you can change the value after setting vertical render. https://bugzilla.gnome.org/show_bug.cgi?id=728636 2015-07-23 15:19:47 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Fix clipping issues This patch uses the ink rectangle in order to compute the size of the surface require to render. It also correctly compute the transformation matrix as the ink_rect position might not be at 0, 0. Additionally, shadow_offset and outline_offset (which is in fact the diameter of a dot, not a really an offset) is now taken into account. Redundant matrix operation has been removed for the vertical rendering. Take note that the matrix operation in cairo are excuted in reverse order. https://bugzilla.gnome.org/show_bug.cgi?id=728636 2015-07-24 10:15:21 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: seek at least in steps of a second In case of very short files we might end up seeking in steps of a fraction of a second, which is silly and gives the impression that seeking doesn't actually work. Make minimum seek step a second instead. 2015-07-02 20:10:50 -0400 Olivier Crête * ext/gl/gstglvideomixer.c: glvideomixer: Add GstControlBinding proxy This is used to proxy GstControlBinding to the pad on the parent object. This avoid having to sync the values in the proxy pad, this is too early if you have a queue between the pad and the actual aggregation operation. https://bugzilla.gnome.org/show_bug.cgi?id=734060 2015-07-22 19:27:19 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Register function name Otherwise, it sometimes segfaults with debugging enabled 2015-07-22 19:26:42 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Use 1.0 style buffer allocation 2015-07-22 16:19:48 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Improve further the negotiation function * Only send the caps event once if the query had support for the overlay composition meta. * Only do the allocation query if it is supported through caps. * Send overlay_caps before doing allocation query rather then normal caps https://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-07-22 20:50:10 +0200 Rico Tzschichholz * ext/pango/Makefile.am: basetextoverlay: Add missing linking against -lm 2015-05-19 16:08:08 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudioaggregator.c: * tests/check/elements/audiomixer.c: audioaggregator: Sync pad values before aggregating We need to sync the pad values before taking the aggregator and pad locks otherwise the element will just deadlock if there's any property changes scheduled using GstController since that involves taking the aggregator and pad locks. Also add a test for this. https://bugzilla.gnome.org/show_bug.cgi?id=749574 2015-07-21 18:40:59 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: Ensure meta coordinate are in stream scale The GstVideoOverlayComposition meta coordinates should always be in stream scale, regardless of the window size downstream. This way the sink can always scale the composition if the window size have changed after a buffer (with his meta) was rendered before. https://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-07-21 14:12:41 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: Reorder and cleanup class attribute Also add a minimum amount of comment so we can understand what is doing what. https://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-07-15 21:56:17 +0300 Ville Skyttä * gst/typefind/gsttypefindfunctions.c: typefind: Treat *.umx (Unreal Music Package) as audio/x-mod https://bugzilla.gnome.org//show_bug.cgi?id=752436 2015-07-21 20:52:23 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Read output buffer duration with lock held 2015-06-19 11:57:06 +0100 Julien Isorce * ext/gl/gstglbasemixer.c: gl: use gst_gl_display_create_context in more elements. glbasefilter, glbasemixer and gltestsrc. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-20 16:25:10 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Fix upstream composition handling We need to update the render when upstream composition changes or if it was removed. http://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-07-20 16:20:24 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Clear reconfigure flags before negotation This avoids negotiating twice. Current the _setcaps() patch does not clear the initial reconfigure flags, which lead to systematic double renegotiation. http://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-07-20 15:55:07 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetestoverlay: Always query window dimension Remove the optimization to skip allocation query so we can always have the latest window size information. Also, correctly deal with the case where there is no window size information. http://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-07-20 15:11:06 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Send caps before doing allocation query This is currently a limitation of BaseTransform base class. Which means pretty much every filters out there. http://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-06-18 06:31:00 +0200 Lubosz Sarnecki * ext/pango/gstbasetextoverlay.c: basetextoverlay: Log GstVideoOverlayComposition negotiation https://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-03-25 14:10:10 +0100 Lubosz Sarnecki * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: Receive window size event and adjust rendering * cache window size event and update handle ratio * init width with 1, don't use 0 * don't update overlay when receiving same window size * receive window size from allocation query https://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-03-19 17:59:16 +0100 Lubosz Sarnecki * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetestoverlay: Pass down meta buffers from upstream that supports GstVideoOverlayComposition This makes pipelines with multiple textoverlay elements possible. The meta data is collected from the upstream textoverlay element, merged into a new GstVideoOverlayComposition and passed down downstream. https://bugzilla.gnome.org/show_bug.cgi?id=751157 2015-04-20 15:04:56 +0200 Carlos Rafael Giani * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: Fix PLC frame size calculations Previously, PLC frames always had a length of 120ms, which caused audio quality degradation and synchronization errors. Fix this by calculating an appropriate length for the PLC frame. The length must be a multiple of 2.5ms. Calculate a multiple of 2.5ms that is nearest to the current PLC length. Any leftover PLC length that didn't make it into this frame is accumulated for the next PLC frame. https://bugzilla.gnome.org/show_bug.cgi?id=725167 2015-07-10 12:49:01 -0400 Nicolas Dufresne * gst-libs/gst/rtp/gstrtpbasedepayload.c: depayloader: Use input segment start When there is no clock_base provided, the start position is set to 0 instead of the original segment start value. This would break synchronization if start was not 0. https://bugzilla.gnome.org/show_bug.cgi?id=752228 2015-07-16 21:26:30 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: add DASH MPD typefinder Moved from dashdemux plugin in -bad. 2015-07-16 10:07:45 +0900 Vineeth T M * tests/examples/seek/jsseek.c: jsseek: fix memory leaks ctx, list and visual_entries are not being freed resulting in memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=752454 2015-07-16 17:15:33 +0100 Tim-Philipp Müller * ext/ogg/gstogmparse.c: * ext/pango/gsttextrender.c: * gst/subparse/gstsubparse.c: * gst/videoconvert/gstvideoconvert.c: Update mailing list address from sourceforge to freedesktop 2015-07-16 10:54:29 +0100 Tim-Philipp Müller * tools/gst-device-monitor.c: tools: gst-device-monitor: fix props leak CID 1311942 2015-07-15 18:22:28 +0200 Wim Taymans * tools/gst-device-monitor.c: device-monitor: print device properties 2015-07-15 12:45:10 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/videooverlay.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/videotestsrc.c: video: improve logging Add logging categories for most video objects. Remove some useless debug lines in video-info and videotestsrc. Add a performance debug line in the video scaler. 2015-07-15 12:46:07 +0900 Vineeth TM * tests/examples/seek/jsseek.c: jsseek: fix tag list leak tags are being leaked while updating the streams in jsseek https://bugzilla.gnome.org/show_bug.cgi?id=752400 2015-07-15 10:50:46 +0900 Vineeth TM * tests/examples/playback/playback-test.c: playback-test: fix tag list leak tags are being leaked while updating the streams in playback-test https://bugzilla.gnome.org/show_bug.cgi?id=752397 2015-07-14 17:17:34 -0400 Olivier Crête * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp: Include generated enum types in gstrtsptransport.h GST_TYPE_RTSP_LOWER_TRANS used to be defined in there, not including the generated file makes older gst-p-good fail to build, so it constitues an API break. 2015-07-14 15:58:43 +0200 Wim Taymans * gst/tcp/gstsocketsrc.c: * gst/tcp/gstsocketsrc.h: socketsrc: add caps property Add caps property that allows the src to easily negotiate a format. 2015-07-14 13:00:03 +0900 Vineeth T M * tests/examples/playback/playback-test.c: playback-test: fix memory leak context during main and filter list during init visualization are not being freed resulting in memory leak and app->vis_entries https://bugzilla.gnome.org/show_bug.cgi?id=752359 2015-07-14 00:03:10 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: only try to expose complete groups When switching to a new chain it might be that this new chain is not yet ready to be exposed so check it before exposing. Can happen with mpegts that might delay adding pads or pushing data until it has found the PMT/PAT/PCR and that may take a while depending on the stream. It happened frequently with HLS: http://vevoplaylist-live.hls.adaptive.level3.net/vevo/ch1/appleman.m3u8 2015-07-14 00:02:40 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: fix typo Hided -> hid 2015-05-27 18:55:20 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: rtp: rtpbasedepayload: add process_rtp_packet() vfunc Add process_rtp_packet() vfunc that works just like the existing process() vfunc only that it takes the GstRTPBuffer that the base class has already mapped (with MAP_READ), which means that the subclass doesn't have to map it again, which allows more performant processing of input buffers for most RTP depayloaders. https://bugzilla.gnome.org/show_bug.cgi?id=750235 2015-07-10 11:53:24 +0300 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Require the streamvolume interface on the sink when using the sink's volume/mute properties If the sink has properties named volume and mute, we have no idea about their meaning. The streamvolume interface standardizes the meaning. In the case of osxaudiosink for example, the current volume property has a range of 0.0 to 1.0, but we need 0.0 to 10.0 or similar. Also osxaudiosink has no mute property. As such, the volume element should be used here instead. https://bugzilla.gnome.org/show_bug.cgi?id=752156 2015-07-09 10:47:20 -0400 Nicolas Dufresne * gst-libs/gst/video/video-frame.h: doc/build: Fix doc typos This minor update should workaround a build system bug. While the makefile has been updated to generate more enum type, there is nothing that updates the header and would lead to the generated code to be produced again. This minor doc fix should ensure no one get a build with missing symbols. 2015-07-09 17:20:55 +0300 Sebastian Dröge * win32/common/libgstvideo.def: Revert "win32 def: Remove video flags symbol that don't exist" This reverts commit b20cc6a02a007521eabceeceb60356e5a252f38a. They are actually there in the autogenerated enum header/source file. 2015-07-09 10:15:11 -0400 Nicolas Dufresne * win32/common/libgstvideo.def: win32 def: Remove video flags symbol that don't exist There has been a some refactoring and these symbols don't exist anynmore. So remove it from the win32 def. This should fix distcheck. 2015-07-07 19:56:52 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: fix typo in comment 2015-07-07 15:05:59 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasepayload: fix possible segment event leak Need to clear it when shutting down, not when starting up. Fixes leak in rtp-payloading unit test. 2015-07-07 22:23:57 +0900 Hyunjun Ko * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-overlay-composition.c: video/audio meta: transform_func: return FALSE if not supported or failed https://bugzilla.gnome.org/show_bug.cgi?id=751778 2015-07-07 19:55:44 +0900 Vineeth T M * sys/xvimage/xvimagesink.c: xvimagesink: refactor to use gst_pad_push_event Right now navigation events are being sent via gst_pad_send_event after getting the peer pad of the sinkpad. But the same functionality can be done using gst_pad_push_event without need of getting peer pad in xvimagesink. https://bugzilla.gnome.org/show_bug.cgi?id=752059 2015-07-07 14:32:25 +0300 Sebastian Dröge * gst-libs/gst/video/Makefile.am: * win32/common/libgstvideo.def: video: Add some more GTypes for enums 2015-07-02 07:36:12 +0200 Tobias Mueller * gst-libs/gst/video/video-scaler.c: GstVideoScaler: Initialised scaling functions to get rid of compiler messages E.g. video-scaler.c: In function 'gst_video_scaler_horizontal': video-scaler.c:1332:3: error: 'func' may be used uninitialized in this function [-Werror=maybe-uninitialized] func (scale, src, dest, dest_offset, width, n_elems); ^ video-scaler.c: In function 'gst_video_scaler_vertical': video-scaler.c:1373:3: error: 'func' may be used uninitialized in this function [-Werror=maybe-uninitialized] func (scale, src_lines, dest, dest_offset, width, n_elems); ^ GCC's analyses seem to be correct, for the simple fact that if you pass get_functions a known format, but no hscale or vscale, it'll return True without having done anything. Some callers check for the scale values to be not NULL, but then hscale->resampler.max_taps could return 0. A different approach to the one presented in this patch is to check for those max_taps, too, before calling get_functions. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=752051 2015-07-07 19:45:43 +0900 Vineeth T M * sys/ximage/ximagesink.c: ximagesink: Post navigation events as message on the bus post unhandled events to bus, so that application can utilise the same if needed https://bugzilla.gnome.org/show_bug.cgi?id=752043 2015-07-07 19:35:40 +0900 Vineeth T M * sys/ximage/ximagesink.c: ximagesink: fix navigation event leak Create event only when pad is created and send the event to pad. https://bugzilla.gnome.org/show_bug.cgi?id=752041 2015-07-07 09:31:01 +0900 Vineeth TM * sys/xvimage/xvimagesink.c: xvimagesink: fix pad memory leak pad is not being freed when xwindow is not created https://bugzilla.gnome.org/show_bug.cgi?id=752042 2015-07-07 08:53:09 +0900 Vineeth TM * tools/gst-play.c: gst-play: fix memory leak In gst-play, for GST_MESSAGE_ELEMENT bus message, event is being allocated through gst_navigation_message_parse_event, but not freed. https://bugzilla.gnome.org/show_bug.cgi?id=752040 2015-07-06 18:51:07 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove pixel-aspect-ratio field from the caps returned by getcaps Avoiding not negotiated error while negotiating as we anyway force 1/1 as output 2015-07-03 21:48:52 +0200 Stefan Sauer * docs/plugins/gst-plugins-base-plugins-sections.txt: * sys/ximage/ximage.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvcontext.c: * sys/xvimage/xvimage.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: x/xv_image_sink: rename for consitency Insert '_' to match the CamelCase. This is needed so that the plugin docs can guess the names from the type name. 2015-07-03 21:35:32 +0200 Stefan Sauer * docs/plugins/gst-plugins-base-plugins-docs.sgml: docs: update master doc for plugins 2015-07-06 10:05:53 -0300 Thiago Santos * gst/typefind/gsttypefindfunctions.c: typefind: also check moof to recognize video/quicktime Helps recognizing fragmented files with the right type 2015-07-06 15:36:07 +0300 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: docs: Add new symbols to the docs and .def files 2015-07-06 12:53:15 +0300 Sebastian Dröge * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/video/video-info.h: {audio,video}info: Add GST_TYPE_{AUDIO,VIDEO}_INFO macros 2015-07-06 11:36:58 +0200 Marcin Kolny * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: video-info: implement GstVideoInfo as boxed type GstVideoInfo usually is created on the stack, but boxed type can be useful for bindings. https://bugzilla.gnome.org/show_bug.cgi?id=752011 2015-07-02 20:50:00 +0200 Stian Selnes * gst-libs/gst/rtp/gstrtcpbuffer.c: * tests/check/libs/rtp.c: rtcpbuffer: Fix validation of packets with padding The padding (if any) is included in the length of the last packet, see RFC 3550. Section 6.4.1: padding (P): 1 bit If the padding bit is set, this individual RTCP packet contains some additional padding octets at the end which are not part of the control information but are included in the length field. The last octet of the padding is a count of how many padding octets should be ignored, including itself (it will be a multiple of four). Section A.2: * The padding bit (P) should be zero for the first packet of a compound RTCP packet because padding should only be applied, if it is needed, to the last packet. * The length fields of the individual RTCP packets must add up to the overall length of the compound RTCP packet as received. https://bugzilla.gnome.org/show_bug.cgi?id=751883 2015-07-01 17:09:35 +0200 Stian Selnes * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix setting default pixel-aspect-ratio It's needed to check if pixel-aspect-ratio exists before fixating. It does not exist if input caps is not set yet and allowed caps does not contain pixel-aspect-ratio (e.g. when using GST_VIDEO_CAPS_MAKE) https://bugzilla.gnome.org/show_bug.cgi?id=751932 2015-07-03 21:58:04 +0200 Stefan Sauer * common: Automatic update of common submodule From f74b2df to 9aed1d7 2015-07-03 21:16:27 +0200 Stefan Sauer * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/cdparanoia/gstcdparanoiasrc.h: * gst/adder/gstadder.h: * gst/tcp/gstmultisocketsink.h: docs: order and canonicalize the -sections.txt file Have all sections in alphabetical order. Also make the macro order consistent. This is a preparation for generating the file. Remove GET_CLASS macro for some elements, since it is not used and the header is not installed. 2015-07-03 21:09:29 +0200 Stefan Sauer * ext/cdparanoia/gstcdparanoiasrc.h: cdparanoiasrc: remove unused defines 2015-07-03 21:08:03 +0200 Stefan Sauer * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: fix debug categories Use a local category for the default category and fix the import for the performance category. 2015-07-03 12:17:42 -0400 Olivier Crête * ext/gl/gstglmixerbin.c: * ext/gl/gstglvideomixer.c: glvideomixer, glmixer: Add description and klass 2015-07-02 10:47:45 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Fix bug with unused upstream_has_meta The intention was to skip the allocation query if upstream has decided to use the overlay meta feature in the caps. We can safely assume that upstream have done that query already before making this decision. This is an optimization since doing allocation queries is relatively expensive. CID #1308943 2015-07-02 10:27:39 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: Revert "basetextoverlay: remove dead code" This reverts commit e863e5f8a98ceec0ec0bd24274bbae8795e0ab75. 2015-07-02 14:52:47 +0100 Luis de Bethencourt * ext/pango/gstbasetextoverlay.c: basetextoverlay: remove dead code upstream_has_meta is set to FALSE and never changed. The two checks for if upstream_has_meta will never go to the true branch. Removing the boolean and the true branches of these checks. CID #1308943 2015-06-26 15:34:35 -0400 Nicolas Dufresne * ext/gl/gstglmixer.c: gl: Don't leak pool if set_config failed 2015-07-02 13:15:58 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Don't try to get buffers from an empty adapter 2015-07-01 10:58:07 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: {audio,video}{en,de}oder: Also copy POOL metas and make sure to copy over metas when creating subbuffers POOL meta just means that this specific instance of the meta is related to a pool, a copy should be made when reasonable and the flag should just not be set in the copy. 2015-06-29 18:00:17 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Add transform_meta() vfunc with default implementation The default implementation copies all metadata without tags, and metadata with only the audio tag. Same behaviour as in GstAudioFilter. https://bugzilla.gnome.org/show_bug.cgi?id=742385 2015-06-29 17:38:38 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Add transform_meta() vfunc with default implementation The default implementation copies all metadata without tags, and metadata with only the audio tag. Same behaviour as in GstAudioFilter. https://bugzilla.gnome.org/show_bug.cgi?id=742385 2015-06-29 15:58:38 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add transform_meta() vfunc with default implementation The default implementation copies all metadata without tags, and metadata with only the video tag. Same behaviour as in GstVideoFilter. This currently does not work if the ::parse() vfunc is implemented as all metas are getting lost inside GstAdapter. https://bugzilla.gnome.org/show_bug.cgi?id=742385 2015-06-29 13:59:25 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add transform_meta() vfunc with default implementation The default implementation copies all metadata without tags, and metadata with only the video tag. Same behaviour as in GstVideoFilter. https://bugzilla.gnome.org/show_bug.cgi?id=742385 2015-06-30 10:37:27 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: rtpbaseaudiopayload: Don't copy memory if not needed, just append payload to the RTP buffer 2015-06-30 07:26:00 +0900 danny song * gst/playback/gstplaybin2.c: playbin: remove unnecessary break https://bugzilla.gnome.org/show_bug.cgi?id=751690 2015-06-29 16:16:06 +0100 Luis de Bethencourt * gst-libs/gst/video/video-scaler.c: videoscaler: remove check for below zero for unsigned value CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative number since it is a division of an unsigned integer (i). Removing that check and only checking if it is bigger than max and setting it appropriately. CID #1308950 2015-06-29 13:06:59 +0200 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Also copy metas if their API has no tags attached to it This is the default basetransform behaviour, being more strict than that is not really useful. 2015-06-29 13:06:49 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Also copy metas if their API has no tags attached to it This is the default basetransform behaviour, being more strict than that is not really useful. 2015-06-29 13:06:33 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: Also copy metas if their API has no tags attached to it This is the default basetransform behaviour, being more strict than that is not really useful. 2015-06-29 13:05:54 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideofilter.c: videofilter: Also copy metas if their API has no tags attached to it This is the default basetransform behaviour, being more strict than that is not really useful. 2015-06-25 00:04:11 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.5.2 === 2015-06-24 23:24:01 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 1.5.2 2015-06-24 22:49:29 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-06-24 11:14:21 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2015-06-17 18:03:09 +0800 Song Bing * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Unblock EOS wait when track switching. sink_event () will blocked on EOS event. which will cause can't send event when switch EOS track to non-EOS one. https://bugzilla.gnome.org/show_bug.cgi?id=750761 2015-06-20 13:36:27 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: simplifies and improves sink_get_caps. The problem here was that after removing the formats and all the things we could convert, we then intersected these caps with the template caps. Hence if a subclass offered permissive sink templates (eg all the possible formats videoconvert handles), but only one output format, then at negotiation time getcaps returned caps with the format restricted to that format, even though we do handle conversion. https://bugzilla.gnome.org/show_bug.cgi?id=751255 2015-06-22 20:54:18 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Don't wait for sparse streams when doing stream switches Their stream-start event might come a bit later, like just before the first buffer... and queues might run full before that happens. 2015-06-22 20:29:52 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Add some more debug output 2015-06-22 20:17:56 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Reset group start time when flushing We reset the group start time to the running time of the start of the other streams that are not flushed. This fixes seeking in gapless mode after the first track has played. https://bugzilla.gnome.org/show_bug.cgi?id=750013 2015-06-22 19:51:32 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Only drop everything after the ; of a session header in requests For responses it is actually allowed and used to signal the timeout to the client! https://bugzilla.gnome.org/show_bug.cgi?id=736267 2015-06-18 17:38:09 +0800 Lyon Wang * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Fix alaw/mulaw channel positions For alaw/mulaw we should also try to initialize the channel positions in the ringbuffer's audio info. This allow pulsesink to directly use the channel positions instead of using the default zero-initialized ones, which doesn't work well. https://bugzilla.gnome.org/show_bug.cgi?id=751144 2015-06-22 16:53:06 +0200 Wim Taymans * tests/check/libs/libsabi.c: tests: fix cpp directives 2015-06-22 15:59:42 +0200 Wim Taymans * tests/check/Makefile.am: * tests/check/libs/libsabi.c: * tests/check/libs/struct_ppc64.h: tests: add PPC64 abi struct sizes 2015-06-22 14:51:07 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Reset suburi also when receiving an error message from the sub uridecodebin http://bugzilla.gnome.org/show_bug.cgi?id=751118 2015-06-17 10:20:54 -0500 Brijesh Singh * gst/playback/gstplaybin2.c: playbin: free group->suburi on failure If suburidecodebin is failed to negotiate (e.g file does not exist) then free internal suburi variable so that 'current-suburi' property returns correct status. https://bugzilla.gnome.org/show_bug.cgi?id=751118 2015-06-15 16:08:10 +0200 Guillaume Desmottes * ext/ogg/gstoggdemux.c: oggdemux: set building_chain to NULL when deactivating chain The chain is about to be invalidated so we shouldn't keep it around. Prevent a double free crash when the demuxer is being finalized. https://bugzilla.gnome.org/show_bug.cgi?id=751000 2015-06-15 13:43:53 +0200 Mersad Jelacic * ext/opus/gstopusenc.c: opusenc: Add bitrate to the tags https://bugzilla.gnome.org/show_bug.cgi?id=750992 2015-06-19 19:51:25 +0900 Vineeth T M * tools/gst-play.c: tools: gst-play: fix seeking issue For positive seeking segment.stop value will be -1, when we change rate to -1, then the stop value will be udpated with the current position. And then again if we change rate to 1, the segment.stop value does not get updated and remains as position where we last changed rate to -1. Hence playback stops at that point. In case of positive rates, call gst_element_new_seek with correct values https://bugzilla.gnome.org/show_bug.cgi?id=751213 2015-06-18 21:02:48 -0400 Nicolas Dufresne * gst-libs/gst/rtp/gstrtphdrext.c: doc: Fix gsttrtphdrext section name 2015-06-18 18:23:45 -0400 Nicolas Dufresne * win32/common/libgstvideo.def: video: Add missing new symbol to win32 def file Fixes make distcheck 2015-06-19 02:19:12 +1000 Jan Schmidt * docs/libs/gst-plugins-base-libs-sections.txt: Add gst_video_multiview_guess_half_aspect() to the docs 2015-06-15 16:04:55 +1000 Jan Schmidt * gst-libs/gst/video/video-multiview.c: * gst-libs/gst/video/video-multiview.h: multiview: Add gst_video_multiview_guess_half_aspect() Add a utility function that, given a video size and a packed stereoscopic mode, attempts to guess if the video is packed at half resolution per view or not, since very few videos provide the information. 2015-05-30 02:29:04 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: gl: Add glviewconvert, glstereomix and glstereosplit elements Conversion elements for transforming multiview/stereoscopic video https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-06-17 17:09:46 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: make sure we draw enough border for YUY2 formats Round width up to 2 so that we draw all border pixels for YUY2 formats 2015-06-17 16:43:03 +0200 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix scaling of odd width for YUY2 formats We need to scale groups of 4 bytes for YUY2 formats so round up to 4. It's possible that there is no Y byte for the last pixel so make sure we clamp correctly. 2015-06-17 10:02:08 +0200 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: Fix a wrong naming in the documentation gst_discoverer_stream_get_missing_elements_installer_details does not exist, one should use gst_discoverer_info_get_missing_elements_installer_details 2015-06-16 18:04:57 -0400 Nicolas Dufresne * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gi: Use INTROSPECTION_INIT for --add-init-section This new define was added to common. The new init section fixed compilation warning found in the init line that was spread across all files. 2015-06-16 17:47:24 -0400 Nicolas Dufresne * common: Automatic update of common submodule From 6015d26 to f74b2df 2015-06-16 22:32:49 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: error out instead of crashing if there's no playbin element 2015-06-16 16:08:39 -0400 Nicolas Dufresne * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-dither.c: * gst-libs/gst/video/video-scaler.c: gi: Skip Scaler, Chroma, Conveter, Dither constructor Please box these types before removing the skip mark. 2015-06-16 16:07:27 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-overlay-composition.c: gi: Add (transfer none) for various video meta These method chains gst_buffer_add_meta() which is also transfer none. 2015-06-16 15:50:13 -0400 Nicolas Dufresne * gst-libs/gst/rtsp/gstrtspconnection.c: gi: Fix warnings in GstRtsp * The custom GSource is not boxed (skip for now) * The comment block has wrong name for _read_socket() 2015-06-16 15:16:33 -0400 Nicolas Dufresne * gst-libs/gst/riff/Makefile.am: gi: Don't produce gir and typlib for GstRiff The API does not follow the type naming convention. Re-enable only if one take the time to box and rename (see (rename-to SYMBOL) annotation) all types. 2015-06-16 14:36:44 -0400 Nicolas Dufresne * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts32.c: gi: Skip fft constructor for now These types have never been boxed, hence cannot be used safely in interpreted languages. This fixes warnings. 2015-06-16 14:34:04 -0400 Nicolas Dufresne * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiometa.c: gi: Fix warnings in libgstaudio * Duplicate section * Miss-named parameter * Missing transfer none annotation for meta 2015-06-15 14:29:04 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Print some debug output if we change the timestamp offset 2015-06-15 14:25:43 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Add some more debug output 2015-06-15 14:19:05 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't update the ts-offset before updating the actual configured caps 2015-06-15 14:18:39 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remember if the last LATENCY query returned live or not and use the in the QoS messages 2015-06-14 23:20:38 +0200 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: update zorder documentation. It is not bound between 0 and 10000 anymore. 2015-06-14 23:13:59 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: No need to artificially bound the zorder. It is an unsigned integer so the upper bound is G_MAXUINT. 2015-05-27 12:20:19 +0300 Lazar Claudiu * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: basetextoverlay: add "draw-shadow" and "draw-outline" properties https://bugzilla.gnome.org/show_bug.cgi?id=749823 2015-06-13 13:41:35 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoencoder.c: videoencoder: fix gtk-doc chunk for new function 2015-06-13 18:43:04 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: implement proper dynamic pad removal https://bugzilla.gnome.org/show_bug.cgi?id=750881 2015-05-12 14:12:52 -0400 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: basetextoverlay: Rewrite negotiation method This cleanup the negotiation function by properly splitting the probe and the decisions. This allow handling correctly pipeline where upstream caps have special memory type. An example pipeline is: gltestsrc ! textoverlay text=bla ! fakesink The upstream caps will be memory:GLMemory, which isn't supported by the blitter. https://bugzilla.gnome.org/show_bug.cgi?id=749243 2015-06-05 14:30:12 -0400 Nicolas Dufresne * sys/xvimage/xvimagesink.c: xvimagesink: Don't share internal pool Sharing the internal pool results in situation where the pool may have two upstream owners. This creates a race upon deactivation. Instead, always offer a new pool, and keep the internal pool internal in case we absolutely need it. https://bugzilla.gnome.org/show_bug.cgi?id=748344 2015-06-05 14:28:41 -0400 Nicolas Dufresne * sys/ximage/ximagesink.c: ximagesink: Don't share internal pool Sharing the internal pool results in situation where the pool may have two upstream owners. This create a race upon deactivation. Instead, always offer a new pool, and keep the internal pool internal in case we absolutely need it. https://bugzilla.gnome.org/show_bug.cgi?id=748344 2014-11-26 21:06:57 +0100 Matej Knopp * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * win32/common/libgstvideo.def: videoencoder: Add gst_video_encoder_set_min_pts() For streams with reordered frames this can be used to ensure that there is enough time to accomodate first DTS, which may be less than first PTS https://bugzilla.gnome.org/show_bug.cgi?id=740575 2015-06-12 19:58:34 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: Update .def file for new API 2015-06-06 20:40:13 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: tests: Add test for the 'ignore-eos' compositor sink pad property When the 'ignore-eos' property is set on a pad, compositor will keep resending the last buffer on the pad till the pad is unlinked. We count the buffers received on appsink, and if it's more than the buffers sent by videotestsrc, the test passes. 2015-02-10 00:49:35 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: add "ignore-eos" property for input pads When set, it causes videoaggregator to repeatedly aggregate the last buffer on an EOS pad instead of skipping it and outputting silence. This is useful, for instance, while playing back files seamless one after the other, to avoid videoaggregator ever outputting silence (the checkerboard pattern). It is to be noted that if all the pads on videoaggregator have this property set on them, the mixer will never forward EOS downstream for obvious reasons. Hence, at least one pad with 'ignore-eos' set to FALSE must send EOS to the mixer before it will be forwarded downstream. https://bugzilla.gnome.org/show_bug.cgi?id=748946 2015-06-13 01:35:52 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Copy multiview-mode, flags and view count from ref info When copying info from the reference input state, duplicate all the fields of the video info. The sub-class will have the chance to override them later. 2015-06-12 16:57:39 +0200 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: enforce same taps when combining scalers 2015-06-12 16:52:27 +0200 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: make sure to clamp to max width When estimating the area that should first be vertically scaled, make sure we clamp to the max input size or else we get invalid reads. 2015-06-12 16:47:03 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: video-scaler: Enforce same taps on Y and UV scalers for merged formats Make sure we have the same number of taps for the Y and UV scalers so that the scalers can be merged correctly. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=749764 2015-06-12 12:50:35 +0530 Arun Raghavan * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Add a FIXME 2.0 for gst_rtsp_connection_create_from_socket() There's a couple of redundant arguments from the pre-GIO days. 2015-06-11 23:32:55 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: check for full UTF-8 BOM in MSS typefinder https://bugzilla.gnome.org/show_bug.cgi?id=750802 2015-06-11 18:14:47 +0200 Philippe Normand * gst/typefind/gsttypefindfunctions.c: typefindfunctions: UTF-8 MSS Manifest detection support Check if the first bytes of data contain an UTF-8 BOM. https://bugzilla.gnome.org/show_bug.cgi?id=750802 2015-06-11 16:18:51 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Check in autoplug_continue against the subtitle factory caps correctly 6a2f017bfa9cb73c6db65eea0b84b1d5b56febb7 changed it to check the subtitle factory caps if there is a text-sink but we fail to get its sinkpad. What actually should be done here is to use the factory caps if there is no text-sink at all. https://bugzilla.gnome.org/show_bug.cgi?id=750785 2015-06-11 15:22:04 +0200 Sebastian Dröge * ext/gl/gstglmixerbin.c: gl: Use gst_object_ref_sink() for gl{filter,mixer,src}bin too 2015-06-11 23:01:48 +1000 Jan Schmidt * gst/playback/gstplaybin2.c: playbin: Fix some warnings with clang around multiview enums There is the GstVideoMultiviewMode enum and the GstVideoMultiviewFramePacking, which is a subset of the multiview modes, with the same values as the corresponding types from the full enum. Do some casts and use the right times to avoid implicitly using/passing GstVideoMultiviewFramePacking when a GstVideoMultiviewMode is needed. 2015-06-11 12:21:08 +1000 Jan Schmidt * tests/check/libs/video.c: tests: Fix video libs test for multiview GstVideoInfo change The GstVideoInfo struct was changed late in integrating the multiview changes, and I forgot to run and fix the unit test. 2015-06-11 11:12:39 +1000 Jan Schmidt * gst/playback/gstplaybin2.c: playbin: Implement multiview frame-packing overrides Add GstVideoMultiviewFramePacking enum, and the video-multiview-mode and video-multiview-flags properties on playbin. Use a pad probe to replace the multiview information in video caps sent out from uridecodebin. This is a part implementation only - for full correctness, it should also modify caps in caps events, accept-caps and allocation queries. https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-06-11 11:12:39 +1000 Jan Schmidt * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-multiview.c: * gst-libs/gst/video/video-multiview.h: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: * win32/common/libgstvideo.def: video: Add multiview/stereo support Add flags and enums to support multiview signalling in GstVideoInfo and GstVideoFrame, and the caps serialisation and deserialisation. videoencoder: Copy multiview settings from reference input state Add gst_video_multiview_* support API and GstVideoMultiviewMeta meta https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-06-10 14:33:01 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: rtpbaseaudiopayload: Use GST_BUFFER_PTS() instead of GST_BUFFER_TIMESTAMP() 2015-06-10 12:26:38 +0200 Víctor Manuel Jáquez Leal * gst/playback/gstplaysink.c: playsink: fix the channel of color balance element When traversing the color balance element channel list to find the one that matches with the playsink proxy, the assignation was set to iterator of the playsink proxy, not the balance element. Thus, the mapping to the values of the balance element channel was wrong. This patch fixes the assignation of the color balance element channel, so the mapping to the channel of the color balance element is fixed. https://bugzilla.gnome.org/show_bug.cgi?id=750691 2015-06-10 15:50:12 +0900 Vineeth TM * gst/playback/gstplaysink.c: playsink: cannot enable text flag while playing when text playbin is not enabled in the beginning, then video_srcpad_stream_synchronizer gets linked to videochain->sinkpad and when we try to enable text bin during play, since it is already linked to videochain, text chain does not get linked properly. Hence unlinking the same before linking to text chain https://bugzilla.gnome.org/show_bug.cgi?id=748908 2015-06-10 09:59:49 +0200 Edward Hervey * win32/common/libgstrtsp.def: win32: Update defs file 2015-06-05 22:04:24 -0400 Xavier Claessens * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: GstRTSPConnection: Add GTlsInteraction support https://bugzilla.gnome.org/show_bug.cgi?id=750471 2015-06-09 21:24:07 +0300 Vivia Nikolaidou * tools/gst-play.c: tools: gst-play: don't print 64 whitespaces next to the time indication Printing 64 whitespaces to erase the "Paused" message (after \r) would make it wrap to the next line on shorter terminals. Instead we only print the amount of spaces needed. Also mark the "Paused" string for translation while we're at it. 2015-06-09 14:37:36 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: fix misleading documentation copied from adder 2015-06-09 14:31:15 +0200 Stefan Sauer * Makefile.am: cruft: add the obsolete tmpl dir to cruft-dirs 2015-06-09 22:03:37 +1000 Jan Schmidt * win32/common/libgstaudio.def: Update win32 exports 2013-12-09 18:46:14 +0100 Carlos Rafael Giani * ext/alsa/gstalsasink.c: alsa: report recoverable device failures to base class This gives custom slave methods in the base class a chance to resynchronize themselves Signed-off-by: Carlos Rafael Giani https://bugzilla.gnome.org/show_bug.cgi?id=708362 2013-12-09 17:08:15 +0100 Carlos Rafael Giani * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesink.h: audiobasesink: added custom clock slaving method This new clock slaving method allows for installing a callback that is invoked during playback. Inside this callback, a custom slaving mechanism can be used (for example, a control loop adjusting a PLL or an asynchronous resampler). Upon request, it can skew the playout pointer just like the "skew" method. This is useful if the clocks drifted apart too much, and a quick reset is necessary. Signed-off-by: Carlos Rafael Giani https://bugzilla.gnome.org/show_bug.cgi?id=708362 2015-06-09 11:30:15 +0200 Edward Hervey * common: Automatic update of common submodule From d9a3353 to 6015d26 2015-06-09 10:16:34 +0100 Tim-Philipp Müller * tools/gst-play-1.0.1: * tools/gst-play.c: tools: gst-play: add shortcuts to switch audio/subtitle/video tracks 2014-11-05 09:41:36 +0200 Sreerenj Balachandran * gst/playback/gstplaybackutils.c: playback: Skip 'ANY' capsfeature while finding the count of common capsfeatures https://bugzilla.gnome.org/show_bug.cgi?id=687182 2014-11-05 09:40:43 +0200 Sreerenj Balachandran * gst/playback/Makefile.am: * gst/playback/gstplaybackutils.c: * gst/playback/gstplaybackutils.h: * gst/playback/gstplaybin2.c: playback: Add gstplaybackutils.{h,c} to deploy the common subroutines Bring some of the helper functions in gstplaybin2.c to new files gstplaybackutils.{h,c} which can be utilized by other files in gst/playback too. https://bugzilla.gnome.org/show_bug.cgi?id=687182 2015-06-08 23:07:47 +0200 Stefan Sauer * common: Automatic update of common submodule From d37af32 to d9a3353 2015-06-08 20:32:02 +0300 Vivia Nikolaidou * tools/gst-play.c: tools: gst-play: sort directory entries When adding a directory to the playlist, the order would be whatever g_dir_read_name returned. Sorting these using natural sort order. https://bugzilla.gnome.org/show_bug.cgi?id=750585 2015-06-08 20:17:07 +0100 Tim-Philipp Müller * sys/ximage/ximagesink.c: * sys/xvimage/xvcontext.c: ximagesink, xvimagesink: fix string leaks when setting class hint https://bugzilla.gnome.org/show_bug.cgi?id=750455 2015-06-08 13:01:43 -0400 Nicolas Dufresne * gst-libs/gst/video/video-color.c: video: Allow using bt2020 by name in colorimetry As the lookup stops at the first element in the array with a NULL name, bt2020 could not be used by name. Moving up this entry fixes the issue. 2015-06-05 16:01:05 +0100 Luis de Bethencourt * sys/ximage/ximagesink.c: ximagesink: set WM_CLASS of window Set WM_CLASS of the ximagesink window so window managers can apply rules based on xprop filtering. 2015-06-05 15:58:39 +0100 Luis de Bethencourt * sys/xvimage/xvcontext.c: xvimagesink: set WM_CLASS of window Set WM_CLASS of the xvimagesink window so window managers can apply rules based on xprop filtering. 2015-05-06 14:29:01 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: simplify aggregate returning Rework special handling with goto/labels to only have one case and otherwise just return normally. 2015-05-06 14:19:36 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: refactor caps reconfigure to its own function Makes the aggregation code shorter and easier to read 2015-05-06 13:59:51 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fixing types in aggregate function Correctly use boolean and GstFlowReturn types in the function. 2015-05-06 13:08:11 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use macro to access aggregator src pad Makes code a bit more readable 2015-06-07 23:06:08 +0200 Stefan Sauer * common: Automatic update of common submodule From 21ba2e5 to d37af32 2015-06-07 18:49:48 +0100 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: libvisual: clean dereferences of private structures https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-06-07 18:23:23 +0100 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: libvisual: make private all variable subclasses don't need https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-06-07 17:31:55 +0200 Stefan Sauer * common: Automatic update of common submodule From c408583 to 21ba2e5 2015-06-07 17:00:05 +0200 Stefan Sauer * docs/libs/Makefile.am: * docs/plugins/Makefile.am: docs: remove variables that we define in the snippet from common This is syncing our Makefile.am with upstream gtkdoc. 2015-06-07 17:16:13 +0200 Stefan Sauer * autogen.sh: * common: Automatic update of common submodule From 241fcb7 to c408583 2015-06-07 16:44:31 +0200 Sebastian Dröge * configure.ac: Back to development 2015-06-07 10:55:35 +0200 Sebastian Dröge * gst/audiomixer/gstaudiomixerorc-dist.c: Release 1.5.1 2015-06-07 10:55:35 +0200 Sebastian Dröge * gst/compositor/compositororc-dist.c: Release 1.5.1 === release 1.5.1 === 2015-06-07 10:04:41 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/gstrtsp-enumtypes.h: * win32/common/pbutils-enumtypes.c: * win32/common/pbutils-enumtypes.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 1.5.1 2015-06-07 09:35:03 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2015-06-05 16:44:08 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Always prefer downstream's ssrc suggestion if any Otherwise ssrc changes via rtpsession's (deprecated!) internal-ssrc property are not possible anymore. rtpsession was now patched to only suggest an ssrc if it makes sense to do so. In 2.0 we should get rid of all the properties that are also negotiated via caps, the code and behaviour is too confusing otherwise. https://bugzilla.gnome.org/show_bug.cgi?id=749581 2015-06-05 09:35:39 -0300 Thiago Santos * ext/gl/gstglmixerbin.c: Fix a common typo: retreive -> retrieve Seems to have been copy pasted around a few places 2015-06-05 10:16:56 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: * win32/common/libgstrtp.def: rtcpbuffer: Improve documentation of new functions a bit Also actually add them to the documentation. 2015-06-03 11:20:35 +0200 Jose Antonio Santos Cadenas * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * tests/check/libs/rtp.c: rtcpbuffer: Update package validation to support reduced size rtcp packets According to this section of the rfc. https://tools.ietf.org/html/rfc5506#section-3.4.2 The validation should be updated to accept more types of RTCP packages, with this mask change feedback packages will be also accepted. Change-Id: If5ead59e03c7c60bbe45a9b09f3ff680e7fa4868 2015-06-04 19:03:51 +0200 Mathieu Duponchelle * gst/audioresample/gstaudioresample.c: audioresample: copy metadata that only has the "audio" tag. https://bugzilla.gnome.org/show_bug.cgi?id=750406 2015-06-04 19:00:45 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: copy metadata that only has the "audio" tag. https://bugzilla.gnome.org/show_bug.cgi?id=750406 2015-06-04 17:59:17 +0200 Mathieu Duponchelle * gst/audioconvert/gstaudioconvert.c: audioconvert: copy metadata that only has the "audio" tag. https://bugzilla.gnome.org/show_bug.cgi?id=750406 2015-05-20 18:16:07 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Serialize the top level DiscovererInfo Which contains fields such as duration, uri and tags. https://bugzilla.gnome.org/show_bug.cgi?id=749673 2015-06-04 16:31:12 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Add AAC channel configurations 11, 12 and 14 and levels 6 and 7 2015-06-04 11:54:24 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: If channel/rate negotiation fails, fall back to stereo and 48kHz 2015-06-04 11:45:05 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: gst_structure_fixate_field_nearest_int() only works if the structure has this field Just set the rate/channels directly if the caps don't have this field. 2015-06-02 15:45:13 -0400 Olivier Crête * tests/check/elements/audiointerleave.c: tests: audiointerleave: test not setting positions Disable "channel-positions-from-input", but without actually giving a position table, so every position should be NONE 2015-06-02 15:44:57 -0400 Olivier Crête * tests/check/elements/audiointerleave.c: tests: Fix indentation in audiointerleave test 2015-06-02 16:14:39 +0200 Edward Hervey * tests/check/generic/clock-selection.c: * tests/check/libs/allocators.c: * tests/check/libs/audio.c: * tests/check/libs/fft.c: * tests/check/libs/navigation.c: * tests/check/libs/rtp.c: * tests/check/libs/rtsp.c: * tests/check/libs/rtspconnection.c: * tests/check/libs/tag.c: * tests/check/libs/xmpwriter.c: * tests/check/pipelines/basetime.c: * tests/check/pipelines/capsfilter-renegotiation.c: * tests/check/pipelines/gio.c: * tests/check/pipelines/simple-launch-lines.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: check: Use GST_CHECK_MAIN () macro everywhere Makes source code smaller, and ensures we go through common initialization path (like the one that sets up XML unit test output ...) 2015-06-02 16:02:37 +0200 Edward Hervey * tests/check/elements/opus.c: check: Use GST_CHECK_MAIN () macro everywhere Makes source code smaller, and ensures we go through common initialization path (like the one that sets up XML unit test output ...) 2015-06-02 12:47:50 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for video/x-cavs caps https://bugzilla.gnome.org/show_bug.cgi?id=727731 2015-06-02 12:28:19 +0200 Edward Hervey * win32/common/libgstpbutils.def: win32: Update def file for new encoding API 2015-06-01 19:43:20 -0400 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: audiointerleave: Always have "channels" be the actual pad count Don't force it anywhere https://bugzilla.gnome.org/show_bug.cgi?id=750252 2015-06-01 19:42:49 -0400 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: audiointerleave: Use the channel count from the set caps This is the same number that was used to allocate the buffer 2015-05-29 14:15:31 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: optimise payload mapping for buffers with one memory Micro-optimisation: if the buffer consist of just one memory, we know we have already mapped that memory to read the headers, so no need to map it another time to get to the payload data, we can just set up the payload data details right there and then and avoid another map call in gst_rtp_buffer_get_payload(). Adds up when receiving RTP-payloaded raw video which can easily be thousands of packets per frame. 2015-05-21 13:59:55 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: rtpbasedepayload: provide chain_list function on sink pad Implement a chain_list function, which avoids lots of locking compared to the default fallback implementation in GstPad. We may also want to do some more sophisticated timestamp tracking here at some point, but for now leave it up to the jitterbuffer and/or subclasses (in case buffers in the buffer list have no timestamp set on them, there may only be a timestamp for the whole list on the first buffer). This provides the exact same behaviour as the default fallback implementation. 2015-05-07 10:26:47 +0200 Thibault Saunier * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst/encoding/gstencodebin.c: encodebin: Add a way to enable/disabled a GstEncodingProfile Summary: So that the user can easily use the same encoding profile to render with/without audio/video stream. API: gst_encoding_profile_is_disabled gst_encoding_pofile_set_enabled https://bugzilla.gnome.org/show_bug.cgi?id=749056 2015-05-30 15:34:51 +0100 Luis de Bethencourt * tools/gst-play.c: tools: gst-play: remove unnecessary variable The second assignment of sret is never used. We can remove the first assignment and use the value directly instead. 2015-05-30 08:12:03 +0200 Sebastian Dröge * gst-libs/gst/tag/id3v2frames.c: id3v2frames: Fix compiler warnings id3v2frames.c:951:20: error: unused variable 'utf16enc' [-Werror,-Wunused-const-variable] static const gchar utf16enc[] = "UTF-16"; ^ id3v2frames.c:952:20: error: unused variable 'utf16leenc' [-Werror,-Wunused-const-variable] static const gchar utf16leenc[] = "UTF-16LE"; ^ id3v2frames.c:953:20: error: unused variable 'utf16beenc' [-Werror,-Wunused-const-variable] static const gchar utf16beenc[] = "UTF-16BE"; ^ 2015-05-10 18:55:16 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Add class property to disable caps scaling Add preserve_update_caps_result boolean on the class to allow sub-classes to disable videoaggregator removing sizes and framerate from the update_caps() return result. 2015-05-04 18:17:21 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Catch errors, and allow sub-class to return NULL from get_output_buffer() A return value of GST_FLOW_OK with a NULL buffer from get_output_buffer() means the sub-class doesn't want to produce an output buffer, so skip it. If gst_videoaggregator_do_aggregate() generates an error, make sure to propagate it - don't just ignore and discard the error by over-writing it with the gst_pad_push() result. 2015-05-30 01:03:46 +1000 Jan Schmidt * docs/design/part-stereo-multiview-video.markdown: part-stereo-multiview-video: Add a section of open design questions 2015-05-30 00:58:38 +1000 Jan Schmidt * gst-libs/gst/video/video-format.h: video-format: Fix minor docs typo 2015-03-16 19:37:26 +1100 Jan Schmidt * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: Document the solid-color pattern 2015-03-16 19:28:35 +1100 Jan Schmidt * gst/playback/gstplay-enum.h: playback: Document GST_PLAY_FLAG_SOFT_COLORBALANCE 2014-10-09 01:13:29 +1100 Jan Schmidt * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * win32/common/libgstvideo.def: video: Make gst_buffer_get_video_meta() a real function, Return lowest id Instead of returning the first video meta found on a buffer, return the one with the lowest id (which is usually the same thing, except on multi-view buffers) 2015-05-29 15:30:41 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: don't crash on unknown info types when deserializing Handle unknown info types when deserializing instead of dereferencing NULL pointers. Coverity CID 1302394 2015-05-29 13:15:59 +0200 George Kiagiadakis * gst-libs/gst/sdp/gstsdpmessage.c: sdp: prevent the sdp message parser from reading past the end of the buffer Otherwise, a malformed SDP message could crash the application, or even maliciously gather data from the memory located after this buffer... https://bugzilla.gnome.org/show_bug.cgi?id=750096 2015-05-28 19:49:31 +0200 George Kiagiadakis * tests/check/elements/videorate.c: tests: add test for videorate caps renegotiation after a framerate has been calculated and added to caps The original 0/1 framerate must still be allowed to be configured on the upstream side of videorate, otherwise future caps renegotiation is going to fail. https://bugzilla.gnome.org/show_bug.cgi?id=750032 2015-05-28 12:51:35 +0200 George Kiagiadakis * gst/videorate/gstvideorate.c: videorate: update the caps framerate only in the GST_PAD_SINK transform_caps direction When a stream has a variable framerate, videorate calculates it and forces it on the output caps. However, the code in _transform_caps() currently also does that if the transform is going in the opposite direction (GST_PAD_SRC), so during a renegotiation it tries to force upstream to use the calculated framerate and it fails. https://bugzilla.gnome.org/show_bug.cgi?id=750032 2015-05-26 08:06:50 -0300 Thiago Santos * gst/playback/gstplaysink.c: playsink: use queue to avoid lock in audiotee audio branches This part of pipeline is: tee name=t ! visualizationbin ! streamsynchronizer name=s t. ! s. streamsynchronizer might block and it could starve the visualization branch of the pipeline when it is enabled. The visualization bin has queues internally but the other branch that links the audiotee directly to the synchronizer is vulnerable to block. Adding a queue between "t. ! s." fixes deadlocks. https://bugzilla.gnome.org/show_bug.cgi?id=749676 2015-05-26 13:11:00 +0300 Claudiu Florin Lazar * ext/pango/gstbasetextoverlay.c: basetextoverlay: make deltax and deltay properties controllable This will be more useful once we have absolute direct control bindings. https://bugzilla.gnome.org/show_bug.cgi?id=749824 2015-05-05 18:01:46 +0200 Guillaume Desmottes * ext/ogg/gstoggdemux.c: oggdemux: fix chain leak Don't leak the building_chain when destroying. Fix leaks with the validate.http.playback.reverse_playback.vorbis_theora_1_ogg scenario. https://bugzilla.gnome.org/show_bug.cgi?id=748964 2015-05-25 22:37:56 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: fix parsing of UTF-16 text on systems with crippled iconv Use g_utf16_to_utf8() instead of the more generic g_convert(), so that we can extract text in UTF-16 format even on embedded systems with crippled iconv support. This code path is exercised by the id3demux test_unsync_v23 check in gst-plugins-good. https://bugzilla.gnome.org/show_bug.cgi?id=741144 2015-05-25 22:37:06 +0100 Tim-Philipp Müller * .gitignore: Add new generated rtp enum files to .gitignore 2015-05-24 18:58:21 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: keep configured playback rate and trick mode when seeking Instead of resetting rate to 1.0 2015-05-24 18:47:25 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for new translatable strings 2015-05-24 18:46:21 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: mark more strings for translation 2015-05-23 01:50:11 +0900 danny song * tools/gst-play.c: tools: gst-play: add keyboard shortcut help https://bugzilla.gnome.org/show_bug.cgi?id=749740 2015-05-23 12:02:26 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: add back videoscale unit test Has been removed in 835422b2 as part of porting things over to the new videoscale API. 2015-05-21 16:24:48 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: compositor/glvideomixer: Don't calculate PAR/DAR with unset GstVideoInfos Otherwise we divide by zero. 2015-05-21 16:19:08 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Fix double assignment 2015-05-21 12:10:40 +0100 Tim-Philipp Müller * tools/gst-play-1.0.1: * tools/gst-play.c: tools: gst-play: enable interative mode by default And change --interactive option to --no-interactive. 2015-05-21 13:07:50 +0300 Sebastian Dröge * gst-libs/gst/rtp/Makefile.am: rtp: Clean G-I files on make clean too 2015-05-21 00:56:01 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: compositor/glvideomixer: fix up par handling We were using the wrong formula https://bugzilla.gnome.org/show_bug.cgi?id=749634 2015-05-20 16:23:46 +0300 Sebastian Dröge * gst-libs/gst/rtp/Makefile.am: rtp: Add builddir to the include path for gobject-introspection And also add missing headers/sources https://bugzilla.gnome.org/show_bug.cgi?id=749632 2015-05-20 15:40:53 +0300 Sebastian Dröge * win32/common/libgstrtp.def: * win32/common/libgstrtsp.def: win32: Update exports 2015-05-20 13:36:30 +0300 Sebastian Dröge * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtpdefs.h: * gst-libs/gst/rtp/rtp.h: rtp: Add GstRTPProfile enum 2015-05-20 13:35:13 +0300 Sebastian Dröge * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp: Add FIXME 2.0 comment about GstRTSPTransport being an enum instead of flags 2015-05-20 13:33:42 +0300 Sebastian Dröge * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp: Use glib-mkenums to generate GstRTSPProfile and GstRTSPLowerTrans GTypes 2015-05-20 10:22:48 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: Revert "oggdemux: Prevent seeks when _SCHEDULING_FLAG_SEQUENTIAL is set" This reverts commit 76647f2710d718e27f207b005956b7dba72c2d19. Avoiding pull mode activation is a feature regression, and demuxers should always use pull mode where that is possible, e.g. if there's an upstream queue2 with a ring buffer or a download buffer. This patch made reverse playback no longer possible over http. If the goal is to minimise seeks, then that can still be done by making the demuxer behave differently in pull mode if the SEQUENTIAL flag is set. If there are bugs, like the demuxer needlessly scanning the entire file on start-up in pull mode, then those should be fixed instead. https://bugzilla.gnome.org/show_bug.cgi?id=746010 2015-05-19 19:48:54 +0100 Tim-Philipp Müller * win32/common/libgstpbutils.def: win32: update .def file for new API 2014-10-24 17:49:37 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: don't use soon-to-be-deprecated g_cancellable_reset() From the API documentation: "Note that it is generally not a good idea to reuse an existing cancellable for more operations after it has been cancelled once, as this function might tempt you to do. The recommended practice is to drop the reference to a cancellable after cancelling it, and let it die with the outstanding async operations. You should create a fresh cancellable for further async operations." https://bugzilla.gnome.org/show_bug.cgi?id=739132 2014-10-24 17:49:23 +0100 Tim-Philipp Müller * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesrc.c: gio: don't use soon-to-be-deprecated g_cancellable_reset() From the API documentation: "Note that it is generally not a good idea to reuse an existing cancellable for more operations after it has been cancelled once, as this function might tempt you to do. The recommended practice is to drop the reference to a cancellable after cancelling it, and let it die with the outstanding async operations. You should create a fresh cancellable for further async operations." https://bugzilla.gnome.org/show_bug.cgi?id=739132 2014-10-24 17:48:54 +0100 Tim-Philipp Müller * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: tcp: don't use soon-to-be-deprecated g_cancellable_reset() From the API documentation: "Note that it is generally not a good idea to reuse an existing cancellable for more operations after it has been cancelled once, as this function might tempt you to do. The recommended practice is to drop the reference to a cancellable after cancelling it, and let it die with the outstanding async operations. You should create a fresh cancellable for further async operations." https://bugzilla.gnome.org/show_bug.cgi?id=739132 2015-05-19 18:53:09 +0200 Mathieu Duponchelle * gst-libs/gst/pbutils/gstdiscoverer.h: gstdiscoverer: Add since annotation. Forgot to add the since annotation to the GstDiscovererSerializeFlags in the previous commit. 2015-05-03 03:18:28 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * tests/check/libs/discoverer.c: * win32/common/libgstpbutils.def: discoverer: Add serialization methods. [API] gst_discoverer_info_to_variant [API] gst_discoverer_info_from_variant [API] GstDiscovererSerializeFlags + Serializes as a GVariant + Adds a test + Does not serialize potential GstToc (s) https://bugzilla.gnome.org/show_bug.cgi?id=748814 2015-05-19 16:32:38 +0300 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Try harder to reuse previously configured caps values and give more preference to anything set as properties This affects the pt, ssrc, seqnum-offset and timestamp-offset properties. If they were set from a property, or we configured caps before, we try to use that value for them. Even if the first structure of the downstream caps specifies a different value, we check if the value is supported by other structures. Only if all this fails, we use the values given by downstream in the first structure, i.e. if no properties were set and these are the first caps we negotiate or downstream does not support our values. By doing this we ensure that we don't spuriously change ssrcs or other fields in the middle of the stream (and also consider property values more). Ssrc changes would currently happen after sending an RTX packet (thus creating a new internal source inside the rtpsession), and then renegotiating the payloader (which then gets the RTX ssrc from rtpsession). https://bugzilla.gnome.org/show_bug.cgi?id=749581 2015-05-18 21:09:25 +0200 Stefan Sauer * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-scaler.c: docs: a random set of trivial fixes for the library docs Warnings down to 35, unused symbols doen to 112. 2015-05-18 20:56:28 +0200 Stefan Sauer * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstfdmemory.h: docs: add fdmemory to docs 2015-05-18 20:45:45 +0200 Stefan Sauer * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstfdmemory.h: * gst-libs/gst/video/colorbalance.h: * gst-libs/gst/video/video-scaler.c: docs: a random set of trivial fixes for the library docs All those where super straight forward from the warnings gtkdoc prints. It kind of makes sense to apply them before the list of warnings is >100 and people complain that gtkdoc is noisy. 2015-05-18 20:31:30 +0200 Stefan Sauer * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/sdp/gstmikey.h: mikey: fix a bunch of doc warnings Rename header/source mismatch of parameters. Update the exposed API in sections.txt. 2015-05-18 20:16:32 +0200 Stefan Sauer * gst/audiomixer/gstaudiomixer.c: Revert "doc: Workaround gtkdoc issue" This reverts commit ff6c736fe08e01f4320c4b02e811a0b57cf97cc1. This is fixed by the gtk-doc 1.23 release. cannot contain : http://www.docbook.org/tdg/en/html/para.html http://www.docbook.org/tdg/en/html/refsect2.html 2015-05-18 20:16:32 +0200 Stefan Sauer * gst/compositor/compositor.c: Revert "doc: Workaround gtkdoc issue" This reverts commit ff6c736fe08e01f4320c4b02e811a0b57cf97cc1. This is fixed by the gtk-doc 1.23 release. cannot contain : http://www.docbook.org/tdg/en/html/para.html http://www.docbook.org/tdg/en/html/refsect2.html 2015-05-18 20:01:49 +0200 Stefan Sauer * gst/playback/gstplaybin2.c: Revert "doc: Workaround gtkdoc issue" This reverts commit df7ef3c35d34352257a28307c07d4673f239452e. This is fixed by the gtk-doc 1.23 release. 2015-05-18 11:23:16 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: * tests/check/elements/appsrc.c: appsrc: optimise caps changing when previously-set caps have not taken effect yet Only negotiate/change caps once when setting caps twice and the first-set caps have not been used yet. Based on patch by Eunhae Choi. https://bugzilla.gnome.org/show_bug.cgi?id=747517 2015-05-18 16:16:10 +0900 Vineeth T M * sys/xvimage/xvimagesink.c: xvimagesink: fix pool leak During set caps when config fails, the referenced newpool is not unref ed. https://bugzilla.gnome.org/show_bug.cgi?id=749530 2015-05-18 15:45:01 +0900 eunhae choi * gst/playback/gstplaybin2.c: playbin: check the flags before set again check the previous flags of playsink to avoid the reconfigure of playsink repeatedly https://bugzilla.gnome.org/show_bug.cgi?id=749528 2015-05-16 23:38:14 -0400 Nicolas Dufresne * gst/audiomixer/gstaudiomixer.c: doc: Workaround gtkdoc issue With gtkdoc 1.22, the XML generator fails when a itemizedlist is followed by a refsect2. Workaround the issue by wrapping the refsect2 into para. 2015-05-16 23:38:14 -0400 Nicolas Dufresne * gst/compositor/compositor.c: doc: Workaround gtkdoc issue With gtkdoc 1.22, the XML generator fails when a itemizedlist is followed by a refsect2. Workaround the issue by wrapping the refsect2 into para. 2015-05-16 23:33:55 -0400 Nicolas Dufresne * gst/playback/gstplaybin2.c: doc: Workaround gtkdoc issue With gtkdoc 1.22, the XML generator fails when a itemizedlist is followed by a refsect2. Workaround the issue by wrapping the refsect2 into para. 2015-05-15 14:49:47 +0200 Stefan Sauer * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: playback: use the new gst_object api Use gst_object_has_as_anchestor instead of the now deprecated _has_ancestor. 2015-05-14 16:42:09 +1000 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls We are using shaders everywhere and so they are not needed 2015-05-01 12:04:28 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: gl: element buffers are part of vao state Use them as such. They are also required for GL3 core profile support with glDrawElements on OS X. 2015-05-14 13:04:21 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: compositor: implement proper par handling We were previously failing on different input and output par 2015-05-13 23:54:52 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: gl: don't deadlock on context creation failure https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-13 15:42:15 +0300 Sebastian Dröge * ext/gl/gstglmixerbin.c: glmixerbin: Don't unref pad templates Otherwise we unref the reference that is owned by the element class. 2015-05-13 17:38:35 +1000 Matthew Waters * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: fix rectangle obscure test to clamp against the output frame size Rather than one of the input pad video info's. The test checking this was not constraining the output frame size to ensure that the out of frame stream was not being displayed. 2015-05-13 17:11:55 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: implement par handling We were previously ignoring it completely 2015-05-13 17:10:42 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't upload the vertex data every frame Add the missing cache tracking statement. 2015-05-11 15:54:52 +0300 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Implement GstVideoAggregator::find_best_format() Without this, we will fixate weird pixel-aspect-ratios like 1/2147483647. But in the end, all the negotiation code in videoaggregator needs a big cleanup and videoaggregator needs to get rid of the software-mixer specific things everywhere. 2015-05-10 11:42:21 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: docs: fix up example pipeline 2015-05-09 22:33:26 +0100 Tim-Philipp Müller * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggdemux.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/gio/gstgiosink.c: * gst/gio/gstgiosrc.c: * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: docs: update element example pipelines - gst-launch -> gst-launch-1.0 - use autoaudiosink and audiovideosink more often - review pipeline examples and descriptions 2015-05-10 10:51:09 +1000 Jan Schmidt * win32/common/libgstvideo.def: video: Update win32 exports for new libgstvideo API 2015-05-08 15:21:16 +0300 Vivia Nikolaidou * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: videoconvert: Expose some properties from the videoconverter API Expose chroma resampler, alpha mode, alpha value, chroma mode, matrix mode, gamma mode and primaries mode from the videoconverter API. https://bugzilla.gnome.org/show_bug.cgi?id=749105 2015-05-08 14:57:03 +0300 Vivia Nikolaidou * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-resampler.h: * gst/videoscale/gstvideoscale.c: video-converter: Change some implicit string enums to real enums GST_VIDEO_CONVERTER_OPT_ALPHA_MODE, GST_VIDEO_CONVERTER_OPT_CHROMA_MODE, GST_VIDEO_CONVERTER_OPT_MATRIX_MODE, GST_VIDEO_CONVERTER_OPT_GAMMA_MODE and GST_VIDEO_CONVERTER_OPT_PRIMARIES_MODE were G_TYPE_STRING with only a few valid options. Changed those to real enums. https://bugzilla.gnome.org/show_bug.cgi?id=749104 2015-05-08 15:06:34 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Also negotiate with downstream if needed before handling a GAP event 2015-05-08 15:02:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Also negotiate with downstream if needed before handling a GAP event 2015-05-06 15:46:49 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: Revert "gl: readd glupload/download onto element pads" This reverts commit 87d8270f302b03f63ce04f986d824892a2c131fd. 2015-05-06 15:43:32 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: Revert "Revert "glvideomixer: implement with glmixerbin"" This reverts commit b4bd11f2f3a60224d188b27ab55b278077cb1217. 2015-05-06 12:40:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Try to be smarter when clipping buffers without duration/framerate to the segment 2 second frame duration is rather unlikely... but if we don't clip away buffers that far before the segment we can cause the pipeline to lockup. This can happen if audio is properly clipped, and thus the audio sink does not preroll yet but the video sink prerolls because we already outputted a buffer here... and then queues run full. In the worst case we will clip one buffer too many here now if no framerate is given, no buffer duration is given and the actual framerate is less than 0.5fps. Fixes seeking on HLS/DASH streams, when seeking into the middle of fragments and having no framerate/buffer duration. 2015-05-04 17:59:30 +0200 Guillaume Desmottes * sys/xvimage/xvimagesink.c: xvimagesink: fix navigation event leak when early returning Create the event *after* the early return check so it's not leaked. https://bugzilla.gnome.org/show_bug.cgi?id=748903 2015-05-04 18:00:18 +0200 Guillaume Desmottes * sys/xvimage/xvimagesink.c: xvimagesink: fix navigation event leak when not handled gst_navigation_message_new_event() is *not* consuming the event so we should always drop our extra reference. https://bugzilla.gnome.org/show_bug.cgi?id=748903 2015-05-04 17:58:38 +0200 Guillaume Desmottes * gst-libs/gst/video/navigation.c: navigation: fix structure leak if subclass doesn't implement send_event() The send_event() implementation is supposed to consume @structure. https://bugzilla.gnome.org/show_bug.cgi?id=748903 2015-05-05 15:35:46 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Don't override segment.base from upstream with 0 Upstream might want to use it to properly map timestamps to running/stream times, if we just override it with 0 synchronization will be just wrong. For this we remove some old 0.10 code related to segment accumulation, and remove some more code that is useless now, and accumulate the group start time (aka segment.base offset) manually now. https://bugzilla.gnome.org/show_bug.cgi?id=635701 2015-05-05 13:14:12 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Add some debug output 2015-03-19 10:50:22 +0100 Aurélien Zanelli * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-scaler.c: video: add NV61 format support https://bugzilla.gnome.org/show_bug.cgi?id=746466 2015-05-04 20:33:23 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: add new video API to docs 2015-05-04 10:35:55 +0200 Jose Antonio Santos Cadenas * ext/opus/gstopusheader.c: opusheader: Do not include rate in caps if it is 0 As expressed in gst_opus_header_create_caps, value 0 means unset. Setting rate value to 0 make negotiation with decoder fail. https://bugzilla.gnome.org/show_bug.cgi?id=748875 2015-05-04 02:18:22 +1000 Jan Schmidt * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: video: check colorimetry and chroma_site equality in gst_video_info_is_equal() Add VideoInfo accessors for colorimetry and chroma_site and use them when checking the equality of two GstVideoInfo 2015-05-04 02:10:17 +1000 Jan Schmidt * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * win32/common/libgstvideo.def: video-color: Add gst_video_colorimetry_is_equal() Add a function for comparing the equality of 2 colorimetry structures. 2015-04-10 16:05:45 +0900 Young Han Lee * ext/ogg/gstoggdemux.c: oggdemux: remove unused code These lines have done nothing for about 10 years. https://bugzilla.gnome.org/show_bug.cgi?id=748820 2015-03-13 06:10:52 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: tests: Add a check for the new compositor pad-is-obscured optimization We verify that all the buffers on an obscured sinkpad are skipped by overriding the map() function in the GstVideoMeta of the buffers to set a variable when called. We also test that the buffers do get mapped when they're not obscured. Blame^WCredit for the GstVideoMeta map() idea goes to Tim. https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-18 15:10:00 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Only map the frame from a buffer if it will be used It's a waste of resources to map it if it won't be converted or used at all. Since we moved the frame mapping down, we need to use the GST_VIDEO_INFO accessor macros now in the code above that instead of the GST_VIDEO_FRAME accessor macros. https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-18 15:09:02 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: use accessor macros for consistency https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-18 15:09:02 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Skip pads that are completely obscured by a higher zorder pad For each frame, compare the frame boundaries, check if the format contains an alpha channel, check opacity, and skip the frame if it's going to be completely overwritten by a higher zorder frame. The check is O(n^2), but that doesn't matter here because the number of sinkpads is small. More can be done to avoid needless drawing, but this covers the majority of cases. See TODOs. Ideally, a reverse painter's algorithm should be used for optimal drawing, but memcpy during compositing is small compared to the CPU used for frame conversion on each pad. https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-10 15:24:28 +0300 Sreerenj Balachandran * gst-libs/gst/pbutils/codec-utils.c: pbutils: Use more strict profile checking for hevc Use the profile_idc value to set the profile string in caps. Don't use compatibility flags for this purpose. https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-30 14:55:14 +0530 Ravi Kiran K N * gst-libs/gst/video/video-converter.c: video-converter: Remove unused macro Remove unused macro GET_TMP_LINE https://bugzilla.gnome.org/show_bug.cgi?id=748687 2015-04-30 11:15:40 +1000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: gl: readd glupload/download onto element pads Allows insertion of gl elements into non-gl pipelines without converter (upload/download) elements. https://bugzilla.gnome.org/show_bug.cgi?id=743974 2015-04-29 22:55:00 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: Revert "glvideomixer: implement with glmixerbin" This reverts commit 0fb56738a14391f248aa0be8756adeaf978baa0c. 2015-04-29 15:44:59 +0100 Tim-Philipp Müller * tools/gst-play.c: gst-play: add some more key navigation mappings And don't feed multi-character key descriptors to the event handler, it won't be what it expects. 2015-04-29 15:30:02 +0100 Tim-Philipp Müller * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * win32/common/libgstvideo.def: navigation: sprinkle some since markers and add new API to .def file https://bugzilla.gnome.org/show_bug.cgi?id=747245 2015-04-02 16:16:58 +0200 Edward Hervey * tools/gst-play.c: tools: Add mouse/keyboard handling from messages Allows the user to control playback with the window in focus https://bugzilla.gnome.org/show_bug.cgi?id=747245 2015-04-02 16:10:32 +0200 Edward Hervey * sys/xvimage/xvimagesink.c: xvimagesink: Post unhandled navigation events on the bus https://bugzilla.gnome.org/show_bug.cgi?id=747245 2015-04-02 16:09:13 +0200 Edward Hervey * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: video: Add a new "event" navigation message type This will be useful for elements that wish to post unhandled navigation events on the bus to give the application a chance to do something with it https://bugzilla.gnome.org/show_bug.cgi?id=747245 2015-04-28 17:24:04 +0100 Tim-Philipp Müller * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: fix includes and compilation against opus in non-standard prefix https://bugzilla.gnome.org/show_bug.cgi?id=748594 2015-04-28 16:58:21 +0200 Mersad Jelacic * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: don't use deprecated gst_buffer_new_and_alloc Use the helper function available in the base class instead. https://bugzilla.gnome.org/show_bug.cgi?id=748585 2015-04-28 20:11:07 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glupload: provide the sink template caps that could be used https://bugzilla.gnome.org/show_bug.cgi?id=746399 2015-04-28 12:01:02 +0200 Wim Taymans * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * win32/common/libgstvideo.def: video-info: expose InterlaceMode conversion to/from string Expose the methods used to convert a GstVideoInterlaceMode to and from a string. 2015-04-27 11:26:10 +0100 Luis de Bethencourt * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/encoding/gstsmartencoder.c: Rename property enums from ARG_ to PROP_ Property enum items should be named PROP_ for consistency and readability. 2015-04-27 11:06:58 +0200 Matthieu Bouron * gst/videoconvert/gstvideoconvert.c: videoconvert: Keep colorimetry and chroma-site fields if passthrough https://bugzilla.gnome.org/show_bug.cgi?id=748141 2015-04-27 10:08:17 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: audio: Change the remaining "samples" in the ::delay() vfunc docs to "frames" https://bugzilla.gnome.org/show_bug.cgi?id=748289 2015-04-27 15:20:56 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: gl: unref display/other-context in the correct place Otherwise state changes from PLAYING->READY->PAUSED will cause there to to be no display configured on the element. https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-26 20:13:01 +0100 Tim-Philipp Müller * tests/check/pipelines/tcp.c: tests: tcp: remove SOCK_CLOEXEC which causes build problems on OS/X It's not needed here. https://bugzilla.gnome.org/show_bug.cgi?id=747692 2015-04-26 21:08:14 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: audio: The delay vfunc returns the number of frames, not samples https://bugzilla.gnome.org/show_bug.cgi?id=748289 2015-04-26 18:04:16 +0100 Tim-Philipp Müller * gst/rawparse/Makefile.am: Remove obsolete Android build cruft This is not needed any longer. 2015-04-26 17:49:33 +0100 Tim-Philipp Müller * Android.mk: * android/NOTICE: * android/alsa.mk: * android/app.mk: * android/app_plugin.mk: * android/audio.mk: * android/audioconvert.mk: * android/audioresample.mk: * android/audiotestsrc.mk: * android/decodebin.mk: * android/decodebin2.mk: * android/gdp.mk: * android/pbutils.mk: * android/playbin.mk: * android/queue2.mk: * android/riff.mk: * android/rtp.mk: * android/rtsp.mk: * android/sdp.mk: * android/tag.mk: * android/tcp.mk: * android/typefindfunctions.mk: * android/video.mk: * android/videoconvert.mk: * android/videoscale.mk: * android/videotestsrc.mk: * ext/ogg/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/playback/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * tools/Makefile.am: Remove obsolete Android build cruft This is not needed any longer. 2015-04-26 14:37:56 +0100 Tim-Philipp Müller * tests/check/gst/typefindfunctions.c: tests: typefindfunctions: add test for UTF-16 MSS manifest typefinding 2015-04-26 14:44:33 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: don't read more data than needed in MSS typefinder 2015-04-26 14:27:30 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: detect MSS manifests without using g_convert() Embedded systems often have limited charset conversion functionality, so don't rely on g_convert() (i.e. iconv) for UTF-16 to UTF-8 conversions, we can easily enough do that ourselves by converting to native endianness and then using GLib's helper functions. 2015-04-25 18:45:50 +0200 Stefan Sauer * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: audiovisualizer: fix the license from GPL to LGPL This was a copy'n'paste buf in the initial commit done by myself. 2015-04-24 14:59:21 +0200 Guillaume Desmottes * gst-libs/gst/tag/gstxmptag.c: xmptag: fix invalid reads in GST_DEBUG statement Don't try to print a string that is not NUL-terminated. This log line does not really seem useful so let's just drop it. https://bugzilla.gnome.org/show_bug.cgi?id=748413 2015-04-24 17:10:59 +0100 Luis de Bethencourt * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultioutputsink.c: * gst/videotestsrc/gstvideotestsrc.c: remove unused enum items PROP_LAST This were probably added to the enums due to cargo cult programming and are unused. Removing them. 2015-04-03 00:44:12 +0900 Wonchul Lee * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Add sink and src query virtual method API: GstAudioDecoderClass::src_query() API: GstAudioDecoderClass::sink_query() https://bugzilla.gnome.org/show_bug.cgi?id=747293 2015-04-23 15:57:37 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: define GST_CHECK_TEST_ENVIRONMENT_BEACON Make sure the test environment is set up. https://bugzilla.gnome.org//show_bug.cgi?id=747624 2015-04-23 15:42:41 +0100 Tim-Philipp Müller * configure.ac: configure: bump automake requirement to 1.14 and autoconf to 2.69 This is only required for builds from git, people can still build tarballs if they only have older autotools. https://bugzilla.gnome.org//show_bug.cgi?id=747624 2015-04-23 15:14:07 +0100 Tim-Philipp Müller * .gitignore: * tests/check/libs/.gitignore: * tests/check/pipelines/.gitignore: Update .gitignore 2015-04-23 09:50:12 +0530 Ravi Kiran K N * gst-libs/gst/video/video-converter.c: video-converter: n_lines member should be a guint not a boolean https://bugzilla.gnome.org/show_bug.cgi?id=748348 2015-04-21 15:27:57 +0200 Guillaume Desmottes * ext/ogg/gstoggdemux.c: oggdemux: fix event leaks gst_event_replace() takes its own reference on the event so we should drop ours after creating and storing an event using it. This fix leaks which can be reproduced using the validate.http.media_check.vorbis_theora_1_ogg scenario. https://bugzilla.gnome.org/show_bug.cgi?id=748247 2015-04-22 18:54:45 +0900 Vineeth T M * ext/gl/gstglmixer.c: glmixer: Possible null pointer dereference While printing error message when context fails, error variable is not being used anymore so it will lead to null pointer dereference https://bugzilla.gnome.org/show_bug.cgi?id=748287 2015-04-22 10:34:09 +0200 Sebastian Dröge * INSTALL: Remove INSTALL file autotools automatically generate this, and when using different versions for autogen.sh there will always be changes to a file tracked by git. 2015-04-22 10:33:58 +0200 Sebastian Dröge * LICENSE_readme: Remove LICENSE_readme It's completely outdated and just confusing, better if people are forced to look at the actual code in question than trusting this file. 2015-04-21 13:31:44 +0200 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix YUY2 scaling some more Take into account the different steps between Y and UV when calculating the line size for vertical resampling or else we might not resample enough pixels and leave bad lines. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747790 2015-04-21 13:16:29 +0200 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: scale enough pixels in YUY2 (and friends) mode Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747790 2015-04-21 12:19:46 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: gldisplay: synchronize the searching and creation of GstGLContext's Ootherwise we could end up with multiple elements in different chains each creating a context. Fixes context creation with glvideomixer. 2015-04-15 15:22:37 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: fix caps leak in gst_gl_mixer_pad_sink_getcaps() Caps refcounting was all wrong in this function. Rewrote it and add some comments to make it clearer. Fix caps leaks with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747915 Signed-off-by: Guillaume Desmottes 2015-04-17 16:21:05 +0900 Hyunjun Ko * tests/check/libs/rtpbasedepayload.c: tests: rtpbasedepayload: fix crash in test when passing varargs Need to pass 64 bits where 64 bits are expected. https://bugzilla.gnome.org/show_bug.cgi?id=748027 2015-04-17 11:18:22 +0530 Ravi Kiran K N * gst-libs/gst/video/video-converter.c: video-converter: Remove unused variables Remove unused variables n_taps, max_taps in setup_scale() https://bugzilla.gnome.org/show_bug.cgi?id=748021 2015-04-16 10:03:05 -0300 Thiago Santos * gst-libs/gst/video/gstvideoutils.h: video: add missing part of documentation text 2015-03-31 13:26:21 +0200 Guillaume Desmottes * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix GstToc leak when parsing toc messages gst_message_parse_toc() returns a reffed GstToc which is owned by the GstDiscovererInfo. But we have to make sure we unref its previous value before setting the new one. https://bugzilla.gnome.org/show_bug.cgi?id=747103 2015-04-16 14:17:04 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix caps leak when early returning https://bugzilla.gnome.org/show_bug.cgi?id=747993 Signed-off-by: Guillaume Desmottes 2015-04-16 14:21:16 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: unref owned caps when finalizing the mixer Fix a caps leak with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747915 Signed-off-by: Guillaume Desmottes 2015-04-15 15:16:33 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: pass the proper free function to frames and buffers array 'array_buffers' contain borrowed GstBuffer and so shouldn't have a free function. 'frames' is the one containing GstGLMixerFrameData and so should use _free_glmixer_frame_data as free function. Fix GstGLMixerFrameData leaks with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747913 Signed-off-by: Guillaume Desmottes 2015-04-17 14:09:47 +0200 Sebastian Dröge * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: gl: Remove some empty ::finalize() implementations 2015-04-17 11:45:34 +0200 Edward Hervey * win32/common/libgstallocators.def: win32: Update defs for new API 2015-04-17 09:31:40 +0200 Wim Taymans * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstfdmemory.h: allocators: make GstFdAllocator non-abstract Make the GstFdAllocator non-abstract because it is perfectly possible to make memory from a generic fd. Mark the memory as simply "fd". 2015-04-15 11:24:17 +0200 Bernhard Miller * gst/audioconvert/gstchannelmix.c: audioconvert: fix mixed usage of gint and gint32 in int matrix This is a fixup for b2db18cda2e4e7951655cb2a34108a8523b6eca9 audioconvert: avoid float calculations when mixing integer-formatted channels The int matrix was using gint and gint32 synonymously, which can theoretically cause problems if gint and gint32 are actually different types. https://bugzilla.gnome.org/show_bug.cgi?id=747005 2015-04-14 12:47:07 +0100 Tim-Philipp Müller * common: * gst/gio/gstgio.c: gio: fix gvfs plugin dependencies Try harder to look for gvfs backend changes in the right place, to make sure the plugin gets reloaded when backends are removed or installed. We watch the gvfs mounts directory because the files there contain absolute paths to the backend executables, and those may not be in the usual gio path. https://bugzilla.gnome.org/show_bug.cgi?id=747841 2015-04-14 15:08:09 +0100 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: disconnect scale callback in scrubby When the position slider's button is released, disconnect the "value_changed" callback to avoid triggering false seek callbacks. 2015-04-13 17:35:36 +0100 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: keep scrubby command consistent scrubby has two options, wav and playbin. Wav takes a file location so make the playbin option take a file location as well instead of an uri. This also means the usage help string will be correct for the playbin option. 2015-04-13 17:28:45 +0100 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: no need to set intermediate states 2015-04-13 16:09:26 +0100 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: wavparse doesn't need dynamic linking In scrubby, there is no need to link wavparse with the sink dynamically. The pad is available when the element is generated. Change video and audio sinks to the automatically detected sinks. 2015-04-11 19:51:54 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Break instead of return if default negotiation on GAP events fails Otherwise we're going to leak the event. 2015-04-11 00:03:29 +0100 Tim-Philipp Müller * gst/app/Makefile.am: * gst/videorate/Makefile.am: app, videorate: fix CFLAGS and LIBADD order Make sure local headers are included before installed -base. 2015-04-10 14:30:36 +0100 Luis de Bethencourt * tests/examples/playrec/playrec.c: examples: remove reference to 0.10 in playrec 2015-04-10 13:41:39 +0100 Luis de Bethencourt * tests/examples/overlay/gtk-videooverlay.c: examples: remove deprecated function in gtk-videooverlay gtk_widget_set_double_buffered () has been deprecated since GTK 3.14. Also, widgets are realized automatically and gtk_wiget_realize () is only meant to be used in widget implementations. 2015-04-09 17:03:11 +0200 Guillaume Desmottes * ext/pango/gstbasetextoverlay.c: basetextoverlay: fix buffer leak in chain function If we don't consume the buffer by passing its reference to overlay->text_buffer then we need to unref it. Fix a leak with validate.file.playback.fast_forward.test5_mkv when running inside Valgrind. https://bugzilla.gnome.org/show_bug.cgi?id=747602 2015-04-08 18:32:29 +0300 Ilya Konstantinov * gst-libs/gst/app/gstappsrc.c: appsrc: docs grammar fixes https://bugzilla.gnome.org/show_bug.cgi?id=747516 2015-04-09 16:49:44 +0100 Luis de Bethencourt * tests/examples/gio/giosrc-mounting.c: examples: add example description to giosrc-mounting Also, use GST_MESSAGE_TYPE instead of accessing the GstMessage structure 2015-04-09 16:20:44 +0100 Vincent Penquerc'h * tests/check/elements/audiomixer.c: tests: fix type mismatch in varargs passing A bitmask is 64 bits, but integer immediates are passed as int in varargs, which happen to be 32 bit with high probability. This triggered a valgrind jump-relies-on-uninitalized-value report well away from the site, since it doesn't trigger on stack accesses, and there must have been enough zeroes to stop g_object_set at the right place. 2015-04-09 13:00:02 +0100 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: fix ring buffer leak on open failure 2015-04-09 12:59:38 +0100 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: fix ring buffer leak on open failure 2015-04-09 11:23:25 +0100 Luis de Bethencourt * tests/examples/encoding/encoding.c: examples: reuse variables in encoding example 2015-04-08 20:49:24 -0700 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't post error messages while holding the stream lock 2015-04-08 20:48:39 -0700 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't get and parse the current srcpad caps We only get here if we don't have any srcpad caps, and we're going to override the GstAudioInfo a few lines below anyway without ever using it if for whatever reason we get caps here. 2015-04-08 20:45:58 -0700 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Try to invent default caps instead of setting none at all when getting a GAP event before CAPS Otherwise we would forward the GAP event without ever providing any caps, which then would make decodebin expose a srcpad without any caps set. That's confusing for applications and can lead to all kinds of interesting bugs. Instead do the same as already is done in GstAudioDecoder, and try to invent caps based on the sinkpad caps and the caps allowed by downstream and the srcpad template caps. https://bugzilla.gnome.org/show_bug.cgi?id=747190 2015-04-08 20:44:15 -0700 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Also log the pointer value of sticky events in debug output Makes it easier to follow them in the debug logs. 2015-04-08 19:29:40 -0700 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove broken timestamps-going-backwards check This would've also triggered if for some reason the segment was updated in such a way that PTS went backwards, but the running time increased. Like what happens when non-flushing seeks are done. We're doing a proper buffer-from-the-past check a few lines below based on the running time, which is the only time we should care about here. 2015-04-08 17:12:22 +0100 Luis de Bethencourt * tests/examples/dynamic/addstream.c: examples: remove unused return value in addstream Removing unused return value of pause_play_stream (). Fixing code style to satisfy the git hook. 2015-04-08 15:31:39 +0100 Luis de Bethencourt * tests/examples/dynamic/sprinkle.c: examples: avoid sprinkle running endlessly Quit sprinkle when there are no more frequencies to remove. Also rename for readability the check for linking elements. 2015-04-08 16:15:43 +0200 Edward Hervey * common: * tests/check/Makefile.am: tests: Use AM_TESTS_ENVIRONMENT Needed by the new automake test runner 2015-04-07 16:43:59 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtcpbuffer.h: rtp: rtcpbuffer: fix typo in enum and in docs. Spotted by Rob Swain. 2015-04-07 15:32:35 +0100 Luis de Bethencourt * tests/examples/app/appsink-src2.c: tests: remove unused filename string from appsink-src2 2015-04-07 15:30:30 +0100 Luis de Bethencourt * tests/examples/app/appsink-src.c: tests: check file exists before running appsink-src 2015-04-07 15:16:41 +0100 Luis de Bethencourt * tests/examples/app/appsink-src.c: * tests/examples/app/appsink-src2.c: * tests/examples/app/appsrc_ex.c: tests: add missing license headers for example apps 2015-04-06 19:20:00 -0700 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: {audio,video}decoder: Forward SEGMENT_DONE events immediately and drain decoders Otherwise we're going to wait with draining until the next data comes, which is a bit suboptimal and might take a long time... or maybe never happens. 2015-04-05 13:53:38 +0100 Tim-Philipp Müller * tests/check/elements/appsrc.c: tests: appsrc: clean up block_deadlock test and make it work in valgrind Remove all the bus watch and main loop code from the block_deadlock test, it's not needed: neither pipeline will ever post an EOS or ERROR message on the bus, and we're the only ones posting an error, from a timeout. Might just as well just sleep for a bit and then do whatever we want to do. Don't gratuitiously set tcase timeout, just use whatever is the default (or set via the environment). Make individual pipeline runs shorter. Check for valgrind and only do a handful iterations when running in valgrind, not 100 (each iteration takes about 4s on a core i7). Make videotestsrc output smaller buffers than the default resolution, we don't care about the buffer contents here anyway. Fixes test timeouts when run in valgrind. 2015-04-05 12:30:39 +0100 Tim-Philipp Müller * tests/check/elements/multisocketsink.c: tests: multisocketsink: fix flaky unit test On slower systems, or under high system load (e.g. check-valgrind), the sending_buffers_with_9_gstmemories test would sometimes fail, because the read call only returns 32 bytes instead of the full 36 bytes expected. This is because multisocketsink might end up doing a partial write of 32 bytes first, and then write the missing 4 bytes later, but since we don't wait for all of data to be written, there's a short window where our read call in the unit test might then only receive the 32 bytes written so far, which makes it deeply unhappy. Instead, make sure we loop to read all bytes. 2015-04-04 21:38:40 +0100 Tim-Philipp Müller * gst/tcp/gstmultisocketsink.c: tcpserversink: don't error out if clients send us something, just ignore it We don't expect clients to send us any data, but if they do, just ignore it. Web browsers might send us an HTTP request for example, but some will still be happy if we just send them data without a proper HTTP response. There was a bug in the reading code path. We only have a small read buffer and would provoke an EWOULDBLOCK trying to read because we don't bail out of the loop early enough. https://bugzilla.gnome.org/show_bug.cgi?id=743834 2015-04-04 01:23:48 +0100 Tim-Philipp Müller * tests/check/pipelines/basetime.c: tests: basetime: fix timeouts when running under valgrind This test sets a rather short timeout, increase this when we run under valgrind. Also add a short sleep to the fakesrc ! fakesink pipeline to avoid thrashing the CPU, which would often not stop the main loop when it should. Also fix wrong (0.10) return value from pad probe callback. 2015-04-04 00:46:46 +0100 Tim-Philipp Müller * gst/videorate/gstvideorate.c: videorate: downgrade left-over ERROR debug message 2015-04-04 00:42:52 +0100 Tim-Philipp Müller * gst/videorate/gstvideorate.c: * tests/check/elements/videorate.c: videorate: fix a couple of memory leaks tests: videorate: fix leak in unit test 2015-04-03 18:18:32 -0400 Nicolas Dufresne * docs/libs/gst-plugins-base-libs-sections.txt: doc: Add gst_video_encoder_get_allocator() to doc 2015-04-03 21:00:53 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstexiftag.c: tag: exiftag: don't try to convert utf-8 to latin1 if string is ASCII already Bypass g_convert/iconv if there's nothing to convert. That way, conversion won't fail on systems where iconv doesn't support converting utf-8 to latin1 and there's nothing to convert. https://bugzilla.gnome.org/show_bug.cgi?id=723252 2015-04-03 18:57:43 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From bc76a8b to c8fb372 2015-03-12 16:01:48 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: fix wrong duration on partial streams with a skeleton index When a stream has a skeleton index, the stream time is taken from that index. However, when part of the stream is captured, the index is invalid as its offsets are now wrong. To avoid this, we ignore the index when the last offset points beyond the end of the stream (when its byte length is known). https://bugzilla.gnome.org/show_bug.cgi?id=744070 2015-03-18 16:32:53 +0000 Vincent Penquerc'h * ext/pango/gstbasetextoverlay.c: textoverlay: fix disappearing text with high deltax When deltax is large enough to cause the text to push past the width of the frame, it would disappear due to a bug in setting the layout width. While there, fix a log printing an incorrect width to set. https://bugzilla.gnome.org/show_bug.cgi?id=739689 2014-12-17 12:17:09 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: fix deadlock when not pulling a buffer from collectpads oggmux keeps a cached buffer per pad, and pulls buffers from collectpads to this cached buffer for all pads before processing the best pad. In some cases, the move from collectpads buffer to cached buffer is delayed till next call. However, when there is only one pad, this can't be delayed till next call as there will be a deadlock since collectpads has no other pad to push to. https://bugzilla.gnome.org/show_bug.cgi?id=740565 2015-03-25 15:36:38 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin2: fix deadlock on chain shutdown When shutting down the chain, we can get a deadlock when removing a pad, if that chain was being busy streaming but blocked (eg, while waiting for a queue to have free space). https://bugzilla.gnome.org/show_bug.cgi?id=746480 2015-04-03 13:20:58 +0100 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: add license header to scrubby 2015-03-19 10:48:15 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/video/gstvideodecoder.c: audio,video: use gst_segment_is_equal instead of memcmp memcmp will blindly compare the reserved fields, as well as any padding the compiler may choose to sprinkle in GstSegment. Fixes valgrind complaints in unit tests, as well as some found via https://bugzilla.gnome.org/show_bug.cgi?id=738216 2014-04-04 12:32:14 +0100 Vincent Penquerc'h * sys/xvimage/xvimageallocator.c: xvimagsink: fix failure to allocate large shared memory blocks A previous patch increased allocations by 15 bytes in order to ensure 16 byte alignment for g_malloc blocks. However, shared memory is already block aligned, and this extra 15 bytes caused allocation to fail when we were already allocating to the shared memory limit, which is a lot smaller than typical available RAM. Fix this by removing the alignment slack when allocating shared memory. https://bugzilla.gnome.org/show_bug.cgi?id=706066 2014-04-04 12:40:14 +0100 Vincent Penquerc'h * sys/ximage/ximagepool.c: ximage: do not allocate extra alignment slack for shared memory A previous patch increased allocations by 15 bytes in order to ensure 16 byte alignment for g_malloc blocks. However, shared memory is already block aligned, and this extra 15 bytes is not needed. Since shared memory limits are low compared to RAM, we remove this waste. https://bugzilla.gnome.org/show_bug.cgi?id=727236 2015-04-03 13:56:28 +0900 Chihyoung Kim * configure.ac: tests: require Gtk+ 3.10 for examples Fixes build of playback and seek tests when an older Gtk+ version is present on the system. https://bugzilla.gnome.org/show_bug.cgi?id=747283 2015-04-03 11:46:12 +0530 Arun Raghavan * ext/opus/gstopusenc.c: opus: Fix incorrect fall-through condition in property getter 2014-12-09 13:18:42 +0100 Thibault Saunier * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * tests/check/elements/videorate.c: videorate: Detect framerate if not forced to variable downstream In case upstream does not provide videorate with framerate information, it will detect the current framerate from the buffer it received, but if downstream forces the use of variable framerate (most probably through the use of a caps filter with framerate = 0 / 1), videorate will respect that. And add some unit tests https://bugzilla.gnome.org/show_bug.cgi?id=734424 2014-12-09 11:31:30 +0100 Thibault Saunier * gst/videorate/gstvideorate.c: videorate: Do not loop forever pushing first buffer when variable framerate In the case the framerate is variable (represented by framerate=0/1), we currently end up loop pushing the first buffer and then recompute diff1 and diff2 without updating the videorate->next_ts at all leading to infinitely looping pushing that first buffer. In the case of variable framerate, we should just compute the next_ts as previous_pts + previous_duration. https://bugzilla.gnome.org/show_bug.cgi?id=734424 2015-04-02 14:32:15 +0100 Luis de Bethencourt * tests/examples/playback/playback-test.c: playback-test: update deprecated API 2015-04-02 11:33:12 +0100 Luis de Bethencourt * tests/icles/test-colorkey.c: * tests/icles/test-videooverlay.c: tests: fix deprecated API in colorkey and videooverlay 2015-04-02 11:14:08 +0100 Luis de Bethencourt * tests/examples/seek/scrubby.c: examples: fix deprecated API in scrubby 2015-03-06 21:12:52 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Query latency on first incoming buffer. And keep on querying upstream until we get a reply. Also, the _get_latency_unlocked() method required being calld with a private lock, so removed the _unlocked() variant from the API. And it now returns GST_CLOCK_TIME_NONE when the element is not live as we think that 0 upstream latency is possible. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-04-01 20:32:41 -0400 Olivier Crête * gst/audiomixer/gstaudiomixer.c: * tests/check/elements/audiomixer.c: audiomixer: Allow downstream caps with a non-default channel-mask Instead of failing, take the downstream channel mask if the channel count is 1. 2015-03-19 14:34:07 +0100 Guillaume Desmottes * ext/ogg/gstoggdemux.c: oggdemux: don't use GST_ERROR() for debug messages Fix https://bugzilla.gnome.org/show_bug.cgi?id=746457 2015-04-01 15:58:28 +0100 Luis de Bethencourt * tests/examples/audio/volume.c: tests: use elapsed label of volume example 2015-03-30 11:24:46 +0200 Bernhard Miller * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstchannelmix.c: audioconvert: avoid float calculations when mixing integer-formatted channels The patch calculates a second channel mixing matrix from the current one. The matrix contains the original values * (2^10) as integers. This matrix is used when integer-formatted channels are mixed. On a ARM Cortex-A8, single core, 800MHz this improves performance in a testcase from 29s to 9s for downmixing 6 channels to stereo. https://bugzilla.gnome.org/show_bug.cgi?id=747005 2015-04-01 15:02:13 +0100 Luis de Bethencourt * tests/examples/audio/volume.c: tests: fix deprecated API in audio volume example 2015-04-01 14:37:23 +0100 Luis de Bethencourt * tests/examples/seek/jsseek.c: jsseek: update deprecated GTK API 2015-04-01 13:50:51 +0100 Luis de Bethencourt * tests/examples/seek/jsseek.c: jsseek: switch deprecated GtkTable for GtkGrid 2015-04-01 11:01:57 +0100 Luis de Bethencourt * tests/examples/audio/audiomix.c: tests: update deprecated GTK API in audiomix 2015-03-31 16:27:00 +0200 Edward Hervey * ext/gl/gstglvideomixer.c: glvideomixer: Don't use context if not present Avoids assertions at runtime 2015-03-31 11:21:25 +0200 Edward Hervey * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: introspection: Don't use g-ir-scanner cache at compile time It pollutes user directories and we don't need to cache it https://bugzilla.gnome.org/show_bug.cgi?id=747095 2014-04-10 12:03:05 +0100 Vincent Penquerc'h * gst-libs/gst/tag/id3v2frames.c: id3v2: ignore RVA2 tags with more than 64 peak bits The spec for this does not say nor imply how this should be interpreted. The previous code would try to shift by 64 bits, which is undefined. Coverity 1195119 https://bugzilla.gnome.org/show_bug.cgi?id=727955 2015-03-30 10:50:45 +0100 Luis de Bethencourt * gst/playback/gstplaybin2.c: playbin: avoid possible deference of null pointer For safety, check the pointer playbin->curr_group is valid before reading parameters of the structure. CID #1291624 2015-03-28 16:59:23 +0100 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: oggdemux: resurrect some flow return handling https://bugzilla.gnome.org/show_bug.cgi?id=744572 2015-03-27 20:16:28 +0100 Nicola Murino * gst-libs/gst/app/gstappsrc.c: appsrc: handle a sample not having caps or a buffer more gracefully https://bugzilla.gnome.org/show_bug.cgi?id=746908 2015-03-27 16:22:36 -0400 Nicolas Dufresne * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: basedepay: Handle initial gaps and no clock-base When generating segment, we can't assume the first buffer is actually the first expected one. If it's not, we need to adjust the segment to start a bit before. Additionally, we if don't know when the stream is suppose to have started (no clock-base in caps), it means we need to keep everything in running time and only rely on jitterbuffer to synchronize. https://bugzilla.gnome.org/show_bug.cgi?id=635701 2015-03-26 23:53:44 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: improve debug message by printing the object Print the pad object that EOS'd too early 2015-03-27 13:39:43 +0800 Song Bing * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Keep sticky events around when doing a soft reset The current code will first discard all frames, and then tries to copy all sticky events from the (now discarded) frames. Let's change the order. https://bugzilla.gnome.org/show_bug.cgi?id=746865 2015-03-26 18:03:12 -0700 David Schleef * gst-libs/gst/riff/riff-ids.h: riff: Add FLLR tag 2015-03-25 18:40:25 -0400 Nicolas Dufresne * gst-libs/gst/rtp/gstrtpbasedepayload.c: * tests/check/libs/rtpbasedepayload.c: basedepayload: Fix generated segment This fixes playback position in RTSP. https://bugzilla.gnome.org/show_bug.cgi?id=635701 2015-03-25 08:20:03 -0300 Thiago Santos * gst/playback/gstplaybin2.c: playbin: ignore new pads if it is shutting down If a new pad is added after playbin has been put to READY/NULL it should ignore new pads as it is shutting down. This can happen when the pipeline fails to preroll (is still in READY) and the user gives up on waiting or an error that doesn't reach the demuxer occurs (on some event handling) and it will continue to work and exposing pads while playbin has been put to NULL. Without this check an input-selector is created and set to PAUSED state, preventing playbin from properly shutting down in case it has data blocked inside it. 2015-03-24 15:47:20 -0400 Nicolas Dufresne * ext/theora/gsttheoradec.c: Revert "theoradec: Disable usage of crop meta" This reverts commit da52868f468bd75ddb595a3eb52aaa38ecbbac41. 2015-03-24 15:18:36 -0400 Nicolas Dufresne * gst/videorate/gstvideorate.c: videorate: Don't leak the pools gst_query_set_nth_alloction_pool() is transfer none on the pool, so we must unref the pool when done. 2015-03-01 11:44:22 -0500 Nicolas Dufresne * ext/theora/gsttheoradec.c: theoradec: Disable usage of crop meta This is a temporary workaround that simply disables usage of crop meta for now. https://bugzilla.gnome.org/show_bug.cgi?id=741030 2015-03-24 16:18:22 +0000 Luis de Bethencourt * gst/audiomixer/gstaudioaggregator.c: audioaggregator: check sink caps are valid 2015-03-24 16:17:00 +0000 Luis de Bethencourt * gst/audiomixer/gstaudioaggregator.c: Revert "audioaggregator: check sink caps are valid" This reverts commit 6d4d0d1cdf7c7531fbf72ce39e1eab1260d20550. Never put code with side effects into an assertion, it can be compiled out 2015-03-24 15:45:25 +0000 Luis de Bethencourt * gst/audiomixer/gstaudioaggregator.c: audioaggregator: check sink caps are valid CID #1291622 2015-03-24 17:28:51 +0200 Ilya Konstantinov * gst/audioconvert/gstaudioquantize.c: audioconvert: Eliminate unsigned quantizers audio_convert_convert unpacks to default format (signed) before calling quantize, and the unsigned variants were equivalent to signed anyway, so we just get rid of them. 2015-03-24 03:01:22 +0200 Ilya Konstantinov * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstfastrandom.h: audioconvert: Avoid int division in quantization Since range size is always 2^n, we can simply use modulo (implemented with a bitmask). The previous implementation used 64-bit integer division, which is done in software on ARMv7. Although the divisor was constant, the division could not be transformed into "multiplication by magic number" since the dividend was 64-bit. The now-unused and not-so-fast gst_fast_random_(u)int32_range functions were removed. Also, implementing bug fixes: 1) ADD_DITHER_TPDF_HF_I no longer discards bias. 2) We change TPDF's noise range to be the same as RPDF's. Previously, RPDF's noise ranged: { bias - dither, bias + dither } while TPDF's noise ranged: { bias/2 - dither/2, bias/2 + dither/2 - 1 } + { bias/2 - dither/2, bias/2 + dither/2 - 1 } = { bias - dither, bias + dither - 2 } Now, both range: { bias - dither, bias + dither - 1 } https://bugzilla.gnome.org/show_bug.cgi?id=746661 2015-03-24 15:13:52 +0000 Luis de Bethencourt * ext/opus/gstopusenc.c: opusenc: fall through switch statement Adding a comment makes coverity happy and quells the issue. CID 1291629 2015-03-24 19:04:26 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Check if there's a previous buffer to 'keep' If we want to keep a previous buffer but there's no previous buffer, we actually need more data instead. 2015-02-16 09:25:03 +1000 Duncan Palmer * gst/playback/gstdecodebin2.c: decodebin2: Set multiqueue sizes before use-buffering. This fixes a race where the use-buffering property on a multiqueue was set before the queue depth was changed from it's high preroll limits to lower playback limits. This resulted in buffering messages being emitted by the multiqueue in the short window between use-buffering being set and the queue depth being reset. https://bugzilla.gnome.org/show_bug.cgi?id=744308 2015-03-24 10:46:44 +0000 Luis de Bethencourt * gst-libs/gst/allocators/gstfdmemory.c: Revert "fdmemory: freed pointer will always be 0" This reverts commit 7fbcefb753f944a79eae6957ea2789c960eb9eea. 2015-03-24 10:19:05 +0000 Luis de Bethencourt * gst-libs/gst/allocators/gstfdmemory.c: fdmemory: freed pointer will always be 0 2015-03-23 13:15:30 +0100 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Set output format immediately after creating the encoder instance We know the caps by then, there's no need to wait until we actually receive the first buffer. 2015-03-23 13:13:35 +0100 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: Remove another unused variable 2015-03-23 13:11:42 +0100 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: opusenc: Remove useless headers and header_sent variables from the instance struct They are only used inside a single function. 2015-03-23 12:09:25 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Take channels and sample rate from the caps if we have no stream header 2015-03-23 12:07:52 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Reset the decoder if the caps change 2015-03-23 11:57:09 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Take output sample rate from the stream headers too This way we let opusdec do the resampling if needed and don't carry around buffers with a too high sample rate if not required. While Opus always uses 48kHz internally, this information from the header specifies which frequencies are safe to drop. 2015-03-23 11:56:09 +0100 Sebastian Dröge * ext/opus/gstopusheader.c: opusheader: Put number of channels and sample rate into the caps https://bugzilla.gnome.org/show_bug.cgi?id=746617 2015-03-20 17:45:03 +0900 Wonchul Lee * ext/ogg/gstoggdemux.c: oggdemux: Fix compiler warning gstoggdemux.c:1233:11: error: format specifies type 'long' but the argument has type 'ogg_int64_t' (aka 'long long') [-Werror,-Wformat] granule); ^~~~~~~ https://bugzilla.gnome.org/show_bug.cgi?id=746512 2015-03-19 13:31:07 +0100 Wim Taymans * win32/common/libgstallocators.def: defs: update 2015-03-19 12:42:23 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-convert: fix clamping for 16 bits alpha mult 2015-03-18 20:38:20 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-frame.c: video-frame: fix height/width assertions As commit 274984e8 states: When doing CROP META it is expected that the width and/or height in the GstVideoMeta is bigger or equal to the caps negotiated size. https://bugzilla.gnome.org/show_bug.cgi?id=741030 2015-03-18 15:12:03 +0100 Wim Taymans * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstfdmemory.h: fdmemory: make a base class for allocating fd-backed memory Make a base class that can help with allocating fd-backed memory. Make dmabuf extend from the base class. We can now make methods to check if memory has an fd and get the fd for all the different types of fd-backed memory. 2014-11-13 20:39:11 -0500 Olivier Crête * tests/check/elements/audiointerleave.c: audiointerleave: Add unit tests Almost a copy of the "interleave" unit tests, improved to support the thread on the src pad on GstAggregator. https://bugzilla.gnome.org/show_bug.cgi?id=740236 2015-03-06 13:49:48 -0500 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: audiointerleave: Set src caps in aggregate This prevents races between the setcaps of the sink pads https://bugzilla.gnome.org/show_bug.cgi?id=740236 2014-11-13 15:40:15 -0500 Olivier Crête * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: audiointerleave: Add interleave element based on audioaggregator https://bugzilla.gnome.org/show_bug.cgi?id=740236 2015-03-06 16:51:12 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Print a message when a buffer is late https://bugzilla.gnome.org/show_bug.cgi?id=740236 2014-11-15 17:54:51 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Don't re-send the caps if they did not change https://bugzilla.gnome.org/show_bug.cgi?id=740236 2014-11-06 17:15:17 -0500 Olivier Crête * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudioaggregator.c: * gst/audiomixer/gstaudioaggregator.h: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audioaggregator: Split base class from audiomixer Also: - Don't modify size on early buffer The size is the size of the buffer, not of remaining part. - Use the input caps when manipulating the input buffer Also store in in the sink pad - Reply to the position query in bytes too - Put GAP flag on output if all inputs are GAP data - Only try to clip buffer if the incoming segment is in time or samples - Use incoming segment with incoming timestamp Handle non-time segments and NONE timestamps - Don't reset the position when pushing out new caps - Make a number of member variables private - Correctly handle case where no pad has a buffer If none of the pads have buffers that can be handled, don't claim to be EOS. - Ensure proper locking - Only support time segments https://bugzilla.gnome.org/show_bug.cgi?id=740236 2015-03-16 20:41:19 +0100 Sebastian Dröge * tests/check/elements/multisocketsink.c: multisocketsink: Allocate enough memory on the stack in the test Otherwise we just overwrite other things on the stack and cause crashes. 2015-03-07 22:08:40 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Release pad object lock before dropping buffer Otherwise, the locking order is violated and deadlocks happen. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 20:22:13 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Only ignore pads with no buffers on timeout When the timeout is reached, only ignore pads with no buffers, iterate over the other pads until all buffers have been read. This is important in the cases where the input buffers are smaller than the output buffer. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 20:25:03 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Only advance by the buffer size when a buffer is late https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-16 11:53:24 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix playback regression on streams with clipped data at start The code that was calculating the start granule from packet durations was interpreting a negative value as an error, but this is actually a valid case, to indicate clipping of data at start. https://bugzilla.gnome.org/show_bug.cgi?id=743900 2015-03-16 03:53:33 +1100 Jan Schmidt * gst/compositor/compositororc.orc: compositor: Revert most of previous patch. The calculation doesn't produce the same results. Keep just the change to divide alpha by 255 instead of 256, for slightly better accuracy 2015-03-15 17:27:33 +0100 Wim Taymans * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstfdmemory.h: fdmemory: add flags to control behaviour Add some flags to the GstFdMemory to control how memory is mapped and unmapped. 2015-03-15 16:41:21 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/libs/allocators.c: allocators: add allocators test 2015-03-15 15:16:23 +0100 Wim Taymans * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstfdmemory.c: * gst-libs/gst/allocators/gstfdmemory.h: fdmemory: add fd backed GstMemory to separate file Make a separate file for the code to handle the fd backed memory. This would make it possible later to add other allocators also using fd backed memory. 2015-03-16 00:22:14 +1100 Jan Schmidt * gst/compositor/compositororc.orc: compositor: Fix blending functions Correctly calculate alpha in a few places by dividing by 255, not 256. Fix the argb and bgra blending functions to avoid an off-by-one error in the calculations, so painting with alpha = 0xff doesn't ever bleed through from behind 2015-03-14 18:08:15 +0000 Thiago Santos * gst/playback/gststreamsynchronizer.c: streamsynchronizer: fix deadlock condition The variables could have changed when the lock was released to push a gap event. Streamsynchronizer needs to check them again before going to sleep. Bonus: fix a comment typo 2015-03-14 16:25:29 +0000 Matthew Waters * ext/gl/gstglmixer.c: glsyncmeta: make context to wait and set sync explicit otherwise we may wait on a sync object in same context by accident 2015-03-13 18:07:12 +0000 Ramiro Polla * gst/playback/gstplaysink.c: playsink: remove redundant else statements 2015-03-13 18:23:46 +0000 Ramiro Polla * gst/playback/gstplaybin2.c: playbin: don't escape percent sign in documentation code sample 2014-11-03 12:47:18 +0000 William Manley * configure.ac: * tests/check/Makefile.am: * tests/check/pipelines/tcp.c: Add test_that_multisocketsink_and_socketsrc_preserve_meta This test is in a seperate commit to the previous two because it depends on and tests the functionality in both. 2015-03-13 16:19:28 +0000 William Manley * gst/tcp/gstsocketsrc.c: socketsrc: Add support for GstNetControlMessageMeta multisocketsink now understands the new GstNetControlMessageMeta to allow sending control messages (ancillary data) with data when writing to Unix domain sockets. Thanks to glib's `GSocketControlMessage` abstraction the code introduced in this commit is entirely portable and doesn't introduce and additional dependencies or conditionally compiled code, even if it is unlikely to be of much use on non-UNIX systems. 2014-10-30 17:53:15 +0000 William Manley * configure.ac: * gst/tcp/gstmultisocketsink.c: multisocketsink: Add support for GstNetControlMessageMeta multisocketsink now understands the new GstNetControlMessageMeta to allow sending control messages (ancillary data) with data when writing to Unix domain sockets. A later commit will introduce a new socketsrc element which will similarly understand `GstNetControlMessageMeta`. This, when used with a `GSocketControlMessage` of type `GUnixFDMessage` will allow GStreamer to send and receive file-descriptions in ancillary data, the first step to using memfds to implement zero-copy video IPC. Thanks to glib's `GSocketControlMessage` abstraction the code introduced in this commit is entirely portable and doesn't introduce and additional dependencies or conditionally compiled code, even if it is unlikely to be of much use on non-UNIX systems. 2015-03-13 13:56:13 +0000 William Manley * gst/tcp/gstsocketsrc.c: * gst/tcp/gstsocketsrc.h: * tests/check/pipelines/tcp.c: socketsrc: Add `connection-closed-by-peer` signal This provides notification that the socket in use was closed by the peer and gives an opportunity to replace it with a new one which is not closed, allowing reading from many sockets in order. I use this in pulsevideo to implement reconnection logic to handle the pulsevideo service dieing, such that is can be restarted without disrupting downstream. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=739546 2015-03-13 13:43:59 +0000 William Manley * gst/tcp/gstsocketsrc.c: socketsrc: Tidy up usage of `g_object_unref`/`g_clear_object` and locking This is clearer, and should make future changes safer. No functional change intended. See https://bugzilla.gnome.org/show_bug.cgi?id=739546 2015-03-13 13:30:48 +0000 William Manley * gst/tcp/gstsocketsrc.c: socketsrc: Refactor to simplify * Don't bother polling, just do a blocking read, the `GCancellable` will take care of unlocking. This should also be faster on MS Windows where the GIO documentation for `g_socket_get_available_bytes` states: "Note that on Windows, this function is rather inefficient in the UDP case". * Implement `GstPushSrc.fill` rather than `GstPushSrc.create`. This means that we will be using the downstream allocator which may be more efficient. It also means that socketsrc is likely to respect its "blocksize" property (assuming that there is enough data available). See https://bugzilla.gnome.org/show_bug.cgi?id=739546 2014-11-03 02:47:14 +0000 William Manley * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/inspect/plugin-tcp.xml: * gst/tcp/Makefile.am: * gst/tcp/gstsocketsrc.c: * gst/tcp/gstsocketsrc.h: * gst/tcp/gsttcpplugin.c: * tests/check/pipelines/tcp.c: * win32/vs7/libgsttcp.vcproj: * win32/vs8/libgsttcp.vcproj: tcp: Add element socketsrc `socketsrc` can be considered a source counterpart to `multisocketsink`. It can be considered a generalization of `tcpclientsrc` and `tcpserversrc`: it contains all the logic required to communicate over the socket but none of the logic for creating the sockets/establishing the connection in the first place, allowing the user to accomplish this externally in whatever manner they wish making it applicable to other types of sockets besides TCP. This commit essentially copies the implementation directly from tcpserversrc. Later patches will tidy the implementation up and re-implement `tcpclientsrc` and `tcpserversrc` in terms of `socketsrc`. See https://bugzilla.gnome.org/show_bug.cgi?id=739546 2015-03-13 23:24:23 +0530 Arun Raghavan * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Log with the ringbuffer object where possible 2015-03-13 12:49:31 +0000 William Manley * gst/tcp/gstmultisocketsink.c: * tests/check/elements/multisocketsink.c: multisocketsink: Map `GstMemory`s individually when sending If a buffer is made up of non-contiguous `GstMemory`s `gst_buffer_map` has to copy all the data into a new `GstMemory` which is contiguous. By mapping all the `GstMemory`s individually and then using scatter-gather IO we avoid this situation. This is a preparatory step for adding support to multisocketsink for sending file descriptors, where a GstBuffer may be made up of several `GstMemory`s, some of which are backed by a memfd or file, but I think this patch is valid and useful on its own. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=746150 2015-03-13 10:25:35 +0000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: get the context from basemixer/basefilter 2015-03-13 09:38:54 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: gl: retreive the gldisplay/app gl context as soon as possible fixes the usage of gst_gl_display_filter_gl_api 2015-03-13 10:30:43 +0000 Nicolas Dufresne * gst-libs/gst/video/video-frame.c: video-frame: Relax width/height assertion When doing CROP META it is exepcted that the width and/or height in the GstVideoMeta is bigger or equal to the caps negotiated size. 2015-03-12 16:32:31 +0000 Nicolas Dufresne * gst-libs/gst/video/gstvideopool.c: videopool: Choose the biggest buffer size We should respect what has been negotiated. 2015-03-12 17:11:31 +0000 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Fix discont detection and buffer alignment code Actually accumulate the sample counter to check the accumulated error between actual timestamps and expected ones instead of just resetting the error back to 0 with every new buffer. Also don't reset discont_time whenever we don't resync. The whole point of discont_time is to remember when we first detected a discont until we actually act on it a bit later if the discont stayed around for discont_wait time. https://bugzilla.gnome.org/show_bug.cgi?id=746032 2015-03-03 17:26:47 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: gl: store the list of contexts within gldisplay Removes the reliance on the allocation query to propogate GL contexts. Allows thread safely getting a context for the a specific thread. 2015-02-26 13:45:56 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: implement with glmixerbin The relevant properties are forwarded to/from the containing bin and sink pads. 2015-02-26 00:20:37 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: glmixer: remove usage of upload/download objects 2015-02-25 23:48:56 +1100 Matthew Waters * ext/gl/gstglmixerbin.c: * ext/gl/gstglmixerbin.h: gl: new glmixerbin element 2015-02-11 14:48:45 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglvideomixer.h: gl: add a new glbasemixer class below glmixer It deals with propagating the gl display/contexts throughout the application/pipeline 2015-03-12 10:06:15 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: recover from EOS when searching for chain in push mode If we get EOS when we're trying to build a chain, we disable seeking and continue instead of posting an error. This can happen for corner cases such as a stream with a video that stops before the end, for instance. https://bugzilla.gnome.org/show_bug.cgi?id=745980 2015-03-11 16:46:38 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix seeking in files with a "missing" stream When looking for pages when seeking, we stop looking for non sparse streams if we don't find one within a given threshold. This fixes seeking filling up queues and blocking in corner cases such as an audio file with a pathological 1 frame video stream (yes, I saw one). https://bugzilla.gnome.org/show_bug.cgi?id=745980 2015-03-13 01:06:57 +1100 Jan Schmidt * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-dither.c: * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-resampler.h: * gst-libs/gst/video/video-scaler.c: * gst/videoscale/gstvideoscale.h: docs: Add new video functions and objects. Cleanup a little. Add GstVideoChroma, GstVideoDither, GstVideoScaler and friends to the docs. Remove and clean up a few obsolete/deleted refs and typos 2015-03-12 12:49:40 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: replace cbr and constrained-vbr properties with an enum It was deemed confusing before. https://bugzilla.gnome.org/show_bug.cgi?id=744909 2015-03-12 12:17:11 +0000 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Disconnect signals and invalidate group if it fails to activate Otherwise playbin might move to the group directly after EOS of the next group, and then error out again. 2015-02-01 03:39:07 +1100 Jan Schmidt * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: Fix decoding in the presence of GstVideoCropMeta Store the video info of the internal frame decode width/height separate to the exposed (cropped) frame info, so that it can be used for mapping the downstream allocated video frame buffer correctly when using GstVideoCropMeta. Fixes playback of files with sizes that aren't a multiple of 16-pixels width or height. https://bugzilla.gnome.org/show_bug.cgi?id=741030 2015-03-12 01:49:58 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudiomixer.c: audiomixer: Add locking to fill_buffer and fix mix_buffer The audiomixer pad struct fields may be changed from other threads 2015-03-12 01:56:44 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audiomixer: Mark a discont when we receive a new segment event This allows us to handle new segment events correctly; either by dropping buffers or inserting silence; for example if the offset is changed on an srcpad connected to audiomixer. 2015-01-20 19:53:09 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: While aggregating, sync values for all pads before converting frames 2015-03-03 15:18:04 +0800 Song Bing * tests/check/pipelines/streamsynchronizer.c: streamsynchronizer: Should wait state change complete before start another state change Should wait state change complete before start another state change. Can't ensure can received async-done message when state change from PLAYING to PAUSED. https://bugzilla.gnome.org/show_bug.cgi?id=736655 2015-02-27 16:40:23 +0800 Song Bing * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Remove unnecessary ERROR message. Remove unnecessary ERROR message. Push GAP will fail as flushing. Needn't ERROR message. https://bugzilla.gnome.org/show_bug.cgi?id=736655 2015-03-05 17:42:53 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: do not send seek events from the streaming thread This will usually deadlock, despite this patch being in master for quite some time and working fine. Nevertheless, we deem it to be not working, disregarding facts. As such, we fix it by keeping track of seek events, and sending them upstream from a separate thread. Buffers are then discarded till we get a new segment with the expected seqnum. 2015-02-23 13:07:41 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: set correct seqnum on segment events after a seek in push mode There is already a seqnum field for this, which was used to overwrite the seqnum that was set by the push specific code. 2015-02-23 11:30:36 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: try harder to query duration from upstream READY->PAUSED can be too early as souphttpsrc can get the HTTP headers after this. Try again in the chain function. Also use seeking query to disable seeking if upstream reports being unseekable. 2014-10-31 10:55:14 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: add non flushing time seeking in push mode Some resetting code has to be done in the NEW_SEGMENT event handler, instead of the missing FLUSH_STOP one. Segment base was also wrongly accounted for. This was hidden by the fact that flushing resets the base. A discontinuity is now also signalled on seeking. We have to also ensure that the discontinuity "sticks" till a buffer with a valid timestamp goes out, or the audio decoder base class will ignore the discontinuity for purposes of keeping track of the current time. This allows using non flushing segment seeks for looping HTML audio in particular, and more generally non flushing seeks. https://bugzilla.gnome.org/show_bug.cgi?id=729198 2015-02-04 17:13:44 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix wrong first granule The code was using the first nonnegative granulepos to seed the granule tracking, which appeared to work since headers have zero granulepos. However, this does not work for files with a hole at start, which are common in live streaming. The correct behavior is to look for the first granule, and subtract the duration of all the packets finishing on this page. The function which does this relies on the fact that the ogg_stream structure can be duplicated by shallow copy, in order to pull the packets from the first page(s) on the copy without affecting the original stream state. 2015-03-11 09:48:20 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix border handling of YUY2 and friends Don't draw the border in groups of 4 pixels for YUY2 but instead in groups of 2 with alternating U and V. This avoids a crash on odd width borders. 2015-03-11 09:47:23 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: force yuv conversion for border Make sure we always do yuv conversion for the border. 2015-03-10 17:29:51 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix A422 subsampling description 2015-03-10 15:12:30 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add table based matrix8 implementation Based on patch from Mozzhuhin Andrey Add a table based matrix8 multiplication implementation. The algorithm does not do any clipping so we need to make sure we never call this on input that might need to be clipped. In general, this algorithm is 2 times faster than the orc optimized one and would be chosen for all RGB -> YUV conversions and some YUV->YUV and RGB->RGB conversions. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732186 2015-03-10 11:55:11 +0100 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add all colors mode 2015-03-10 10:19:22 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add support for 10 bit planar AYUV formats 2015-03-10 09:27:08 +0000 Tim-Philipp Müller * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst/playback/gstsubtitleoverlay.c: * gst/volume/gstvolume.c: * sys/xvimage/xvimagepool.c: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/video.c: Fix double semicolons 2015-03-09 21:35:59 -0400 Olivier Crete * gst/videorate/gstvideorate.c: videorate: Accept any capsfeatures 2015-03-09 16:28:02 +0100 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: validate parsed colorimetry Validate the parsed colorimetry and reset to defaults when we get RGB with a matrix or YUV without a matrix. 2015-03-09 16:01:19 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: detect identity matrix Do nothing if we have an identity matrix conversion. 2015-03-09 15:58:50 +0100 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: use default colorimetry on error When we fail to parse the colorimetry property, fall back to the default colorimetry for the format and dimension instead of leaving things undefined. 2015-03-09 11:25:41 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideoencoder.c: videoencoder: unused value Value set in ret is immediately overwritten in the next line outside of the if block. Run reset but don't store return. CID #1226470 2015-03-09 12:13:44 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: only convert to/from rgb when needed Only use the YUV->RGB matrix when we have YUV as input and only use the matrix when we need to make YUV output. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745780 2015-03-09 11:12:46 +0100 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: Link to an explanation why the seqnum comparison function does the right thing even for wraparounds 2015-02-22 21:13:35 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: videodecoder: only return EOS upon clipping if applicable See also https://bugzilla.gnome.org/show_bug.cgi?id=709224 2015-02-22 21:11:50 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: only return EOS upon clipping if applicable See also https://bugzilla.gnome.org/show_bug.cgi?id=709224 2015-03-07 16:49:07 +0100 Sebastian Dröge * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: Update orc generated C files 2015-03-06 20:11:00 -0500 Nicolas Dufresne * ext/gl/gstglmixer.c: glmixer: Don't share our downstream pool with upstream Pool cannot have multiple owner. This can lead to spurious pool was flushing error. https://bugzilla.gnome.org/show_bug.cgi?id=74570 2015-03-06 18:15:11 +0100 Sebastian Dröge * ext/gl/gstglmixer.c: gl: Remove format info in glcolorconvert's transform_caps function instead of on every caller ... and let glmixer actually transform the caps it is supposed to transform instead of inventing new caps. 2015-03-06 18:49:16 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: Revert "videoaggregator: Create new caps from the video-info" This reverts commit 78215be0dfbb4e8ed4f249e161a94c644328d28d. because it broke glvideomixer with custom caps features. 2015-03-06 14:36:26 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Create new caps from the video-info In case the original caps were missing some optional fields like interlace-mode. We assume default values for those everywhere, but they can still cause negotiation to fail if a downstream element expects the field to be there and at a specific value. 2015-03-06 12:54:56 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add transfer full annotation for config 2015-03-06 09:30:51 +0530 Ravi Kiran K N * gst-libs/gst/video/video-converter.c: video-converter: correct right-border location for YUY2, YVYU, UYVY Remove 'r_border /= 2' in convert_fill_border(). It doesn't take the right border to correct location. https://bugzilla.gnome.org/show_bug.cgi?id=745719 2015-03-05 12:31:06 +0100 Sebastian Dröge * gst/volume/gstvolume.c: volume: Explicitly cast integers to doubles and then back to integers after multiplication gcc 4.9.1 on ARM seems to have a bug that causes it to cast the float to an integer first, resulting in a 0 scale factor for volume < 1.0. As a side effect this change here will also improve accuracy of the result a bit because we go via doubles instead of floats. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65325 https://bugzilla.gnome.org/show_bug.cgi?id=745667 2015-03-05 09:52:18 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: avoid scaler when size is unchanged 2015-03-04 16:45:35 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: add horizontal 2tap u16 orc function Add slightly faster u16 horizontal resampler orc function. 2015-03-04 13:16:03 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: Revert "audiomixer: Latency is twice the output buffer duration, not only once" This reverts commit d387cf67df91b59540f32ee17b4c02f747969add. The analysis was wrong: The first 20ms of latency are introduced by the source already and put into the latency query, making it only necessary to cover the additional 20ms of audiomixer inside audiomixer. 2015-03-04 12:28:47 +0100 Wim Taymans * tests/check/libs/video.c: check: add another generic converter test Run conversion and scaling with borders. 2015-03-04 12:21:33 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * tests/check/libs/video.c: video-converter: don't reuse the input line when adding borders When we need to add borders, we need a writable input line, so don't reuse the source memory directly. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745207 2015-03-04 09:24:27 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix latency query in FEC case The max latency parameter is "the maximum time an element synchronizing to the clock is allowed to wait for receiving all data for the current running time" (docs/design/part-latency.txt). https://bugzilla.gnome.org/show_bug.cgi?id=744338 2015-03-03 16:36:20 -0500 Nicolas Dufresne * ext/pango/gstbasetextoverlay.c: textoverlay: Re-render if video size changed https://bugzilla.gnome.org/show_bug.cgi?id=745554 2015-03-03 20:03:55 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Latency is twice the output buffer duration, not only once Let's assume a source that outputs outputs 20ms buffers, and audiomixer having a 20ms output buffer duration. However timestamps don't align perfectly, the source buffers are offsetted by 5ms. For our ASCII art picture, each letter is 5ms, each pipe is the start of a 20ms buffer. So what happens is the following: 0 20 40 60 OOOOOOOOOOOOOOOO | | | | 5 25 45 65 IIIIIIIIIIIIIIII | | | | This means that the second output buffer (20 to 40ms) only gets its last 5ms at time 45ms (the timestamp of the next buffer is the time when the buffer arrives). But if we only have a latency of 20ms, we would wait until 40ms to generate the output buffer and miss the last 5ms of the input buffer. 2015-03-03 22:56:37 +0530 Arun Raghavan * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiosink.c: audiobasesink: Reset audio clock if necessary When the ringbuffer is deactivated and then acquired, if the audio clock provided by the sink gets reset to zero, we need to add an offset to the clock to make sure that subsequent samples are written out at the right times. While we need to leave this to derived classes to take care of when they provide their own clock (since that clock may or may not be reset to zero), we can do this ourselves if we know the provided clock is our own (which does reset to zero on a re-acquire). 2015-03-02 16:42:23 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: avoid making scalers for outsize == 0 2015-03-02 16:33:09 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: video-converter: v-resample enough pixels When we are using the fast linear resampler, use the ->inc to calculate the first and last pixel we need so that we can do vertical resampling on the right amount of pixels. 2015-03-02 15:07:34 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc.orc: video-orc: fix unpack functions for RGB/RGB15 on BE Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745337 2015-03-02 13:27:23 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-format: more fixes for big endian 2015-03-02 12:26:23 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-format: add big-endian versions of RGB/BGR 15/16 pack/unpack Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745337 2015-02-28 13:31:41 +0000 Tim-Philipp Müller * tools/gst-play.c: gst-play: fix compiler warning ‘return’ with no value, in function returning non-void 2015-02-28 12:26:21 +0000 Tim-Philipp Müller * tools/gst-play-1.0.1: * tools/gst-play.c: gst-play: add keyboard shortcut to cycle through trick modes Make "t" activate trick modes and cycle through the various modes. 2015-02-28 11:37:27 +0000 Tim-Philipp Müller * tools/gst-play.c: gst-play: fix indentation Prevent gst-indent from messing up indentation, it really doesn't like the G_GNUC_PRINTF thing here. 2015-02-27 20:22:59 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: * tests/check/libs/audioencoder.c: * tests/check/libs/videodecoder.c: * tests/check/libs/videoencoder.c: tests: fix crashes in {audio,video}{decoder,encoder} tests on 32-bit Don't feed 64-bit integer variable into vararg function that expects an unsigned integer to go with GST_TAG_TRACK_NUMBER. This would cause crashes on 32-bit platforms, and if not that then test failures if the comparisons fail later (at least on big endian platforms). 2015-02-27 15:07:36 -0500 Olivier Crête * gst-libs/gst/pbutils/descriptions.c: pbutils: description: Make static strings static Otherwise, they're not guaranteed to still be valid when leaving the scope. https://bugzilla.gnome.org/show_bug.cgi?id=673976 2015-02-27 14:28:35 +0000 Tim-Philipp Müller * tests/check/libs/pbutils.c: tests: pbutils: more checking of returned description strings https://bugzilla.gnome.org/show_bug.cgi?id=673976 2015-02-27 00:36:43 +0530 Arun Raghavan * gst/adder/gstadder.c: adder: Drop custom latency querying logic The default latency query handler now implements the same logic already. 2015-02-26 14:47:28 +0000 Luis de Bethencourt * gst-libs/gst/video/video-converter.c: video-converter: remove check for below zero for unsigned int CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative number since it in an unsigned integer. Removing that check and only checking if it is bigger than max and setting it appropriately. CID #1271606 2015-02-26 12:06:23 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: playback: Fix broken GList modification When we modify a GList (via g_list_delete_link), always reassign the new head to the original GList. Otherwise we end up with filtered_errors being corrupt (the head might have been the element removed) 2015-02-26 11:06:35 +0000 Tim-Philipp Müller * tools/gst-play-1.0.1: gst-play: add new keyboard shortcuts to man page 2015-02-26 10:57:56 +0000 Tim-Philipp Müller * tools/gst-play.c: gst-play: more fine-grained playback rate control Use smaller steps for lower rates to allow more fine-grained control. Handle jump across 0 properly from both sides (just flip direction where we would have gone down to 0 instead). Don't artificially limit rates to +/- 10x. Print new rate. https://bugzilla.gnome.org/show_bug.cgi?id=745174 2015-02-26 10:20:20 +0000 Tim-Philipp Müller * tools/gst-play.c: gst-play: stash current playback rate in app structure https://bugzilla.gnome.org/show_bug.cgi?id=745174 2015-02-25 18:52:11 +0100 Víctor Manuel Jáquez Leal * tools/gst-play.c: gst-play: support changing the playback rate in interactive mode It is fun to have this feature, also it is useful for testing decoders. https://bugzilla.gnome.org/show_bug.cgi?id=745174 2015-02-25 17:00:34 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: we can use the scaler without scalers to copy 2015-02-25 16:50:02 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: only make a scaler when we are scaling Only make a scaler when we are actually doing any scaling. Without scalers, the scale function will simply do a copy. 2015-02-25 16:49:20 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: add support for copy When no scalers are given, simply do a copy of the requested area. 2015-02-25 16:15:52 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: activate scaler fastpath depending on method Only activate the scaler fastpath for x2 up and downscale when the scaler method is respectively nearest and linear because that is what those fastpaths really implement. 2015-02-25 15:33:26 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: add scaler optimization If we are vertically downscaling, it is better to first downscale and then do the horizontal scaling in most cases. 2015-02-25 15:32:57 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: remove unused case 2015-02-25 11:38:17 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video-converter: don't overwrite border alpha Let border alpha and image alpha be independent. 2015-02-24 17:33:57 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: use 1.0 as default alpha 2015-02-24 17:26:31 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: add alpha handling Add support for alpha. Make it possible to copy, set and multiply the alpha value of a frame during conversion. Set the border alpha to 0xff by default. Go over some of the fastpaths and add alpha handling. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745006 2015-02-24 17:20:53 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix chroma subsampling Also adjust the output line number with the offset. 2015-02-24 10:01:18 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: disable fastpath when scaling and gamma Disable the fastpath when scaling and doing gamma remap. 2015-02-24 09:54:18 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: don't do gamma on alpha channel The alpha channel is not supposed to be gamma encoded. 2015-02-24 16:06:08 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: fix deadlock when resetting buffering This function is static, and only ever called with the expose lock taken. It thus has no reason to take this lock itself. This was introduced by one of my locking fixes from 741355. https://bugzilla.gnome.org/show_bug.cgi?id=741355 2015-02-24 12:38:10 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-converter.c: video-converter: minor docs fix 2014-05-27 13:54:06 +0000 Vincent Penquerc'h * gst/playback/gstplaybin2.c: playbin: forward template and ring buffer settings to existing decodebins https://bugzilla.gnome.org/show_bug.cgi?id=744844 2015-02-23 17:24:52 +0000 Luis de Bethencourt * gst/playback/gstdecodebin2.c: decodebin: move null check Check if dbin->decode_chain is NULL before running drain_and_switch_chains() because if it is, we shouldn't run that function or it will segfault. CID #1271074 2015-02-23 01:32:14 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't send pending events before decode Make sure to update the output segment to track the segment we're decoding in, but don't actually push it downstream until after buffers are decoded. https://bugzilla.gnome.org/show_bug.cgi?id=744806 2015-02-08 05:19:25 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add drain() vfunc drain() is a new vfunc which does what finish() does, while explicitly requiring the decoder be able to continue processing data afterward. https://bugzilla.gnome.org/show_bug.cgi?id=734617 2015-02-22 16:57:57 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: Revert "videodecoder: drain current segment upon new one to ensure correct flow return" This reverts commit cc1b4eaf9ebe4568f9c2c64338cef1b2edbdca3f. See https://bugzilla.gnome.org/show_bug.cgi?id=734617 2015-02-22 16:57:50 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: Revert "audiodecoder: drain current segment upon new one to ensure correct flow return" This reverts commit 696b8cdc40f033ff0a45ebe620279130152fb2f8. See https://bugzilla.gnome.org/show_bug.cgi?id=734617 2015-02-21 17:42:08 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: videodecoder: drain current segment upon new one to ensure correct flow return See also https://bugzilla.gnome.org/show_bug.cgi?id=709224 2015-02-21 17:41:50 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: drain current segment upon new one to ensure correct flow return See also https://bugzilla.gnome.org/show_bug.cgi?id=709224 2015-02-20 12:34:11 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Only consider non-parser factories for generating the post-parser capsfilter caps Otherwise if there are multiple parsers we would most likely break negotiation of the stream-format/alignment wanted by the decoders as parsers generally support all possible stream-formats and alignments. 2015-02-19 15:51:19 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: audio: video: fix a few GI annotations transfer-full -> transfer full @Since -> Since 2015-02-05 12:07:50 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: fix deadlock between downward state change and pad addition If caps on a newly added pad are NULL, analyze_new_pad will try to acquire the chain lock to add a probe to the pad so the chain can be built later. This comes from the streaming thread, in response to headers or other buffers causing this pad to be added, so the stream lock is taken. Meanwhile, another thread might be destroying the chain from a downward state change. This will cause the chain to be freed with the chain lock taken, and some elements are set to NULL here, which can include the parser. This causes pad deactivation, which tries to take the element's pad's stream lock, deadlocking. Fix this by keeping track of which elements need setting to NULL, and only do this after the chain lock is released. Only the chain manipulation needs to be locked, not the elements' state changes. https://bugzilla.gnome.org/show_bug.cgi?id=741355 2015-02-04 11:46:09 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: guard against the decode chain going while a pad is added https://bugzilla.gnome.org/show_bug.cgi?id=741355 2015-02-03 17:06:43 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: possible fix for deadlock when spamming "next song" There was a deadlock between a thread changing decodebin/demuxer state from PAUSED to READY, and another thread pushing data when starting. From the stack trace at https://bug741355.bugzilla-attachments.gnome.org/attachment.cgi?id=292471, I deduce the following is happening, though I did not reproduce the problem so I'm not sure this patch fixes it. The streaming thread (thread 2 in that stack trace) takes the demuxer's sink pad's stream lock in gst_ogg_demux_perform_seek_pull and will activate a new chain. This ends up causing the expose lock being taken in _pad_added_cb in decodebin. Meanwhile, a state changed is triggered on thread 1, which takes the expose lock in decodebin in gst_decode_bin_change_state, then frees the previous chain, which ends up calling gst_pad_stop_task on the demuxer's task, which in turn takes the demuxer's sink pad's stream lock, deadlocking as both threads are now waiting for each other. https://bugzilla.gnome.org/show_bug.cgi?id=741355 2015-02-18 20:58:15 -0300 Thiago Santos * gst-libs/gst/tag/gsttagdemux.c: tagdemux: ensure tags have been fetched before pulling data Otherwise upstream can get confused about offsets as there will be a jump once the tags have been parsed due to the stripped area. If upstream pulls from 0 to 100, and then tagdemux does the tag reading and finds out that the first 200 bytes are the tag, the next pull from upstream will have an offset of 200 bytes. So upstream will get the following data: 0 - 100, 300 - (EOS), as it will continue requesting from where it has last stopped, but tagdemux will add an offset to skip the tags. This patch makes sure that the tags have been parsed and skipped since the first pull range call. https://bugzilla.gnome.org/show_bug.cgi?id=744580 2015-02-19 01:30:05 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Reset the default query return value when the iterator has to resync 2015-02-19 01:21:47 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Let the latency query fail if one of the source queries fails 2015-02-18 17:41:25 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Remove g_warnings() for the deprecated audio property Otherwise there are g_warnings() already when just using gst-inspect or dumping a pipeline graph. 2015-02-18 11:34:15 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: description: fix MPEG-2 video profiles in description We would accidentally use the profile nick as profile name in the description for MPEG video that's not version 4. 2015-01-29 18:49:45 -0500 Olivier Crête * gst/playback/gsturidecodebin.c: uridecodebin: Pass object, not GValue to debug print 2015-02-16 23:54:28 +0000 Tim-Philipp Müller * ext/libvisual/gstaudiovisualizer.c: audiovisualizer: don't use private GMutex implementation details Don't use private GMutex implementation details to check whether it has been freed already or not. Just turn dispose function into finalize function which will only be called once, that way we can just clear the mutex unconditionally. 2015-02-15 13:51:36 +0800 Song Bing * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Use the same waiting function for EOS and stream switches Also improve the waiting condition for stream switches, which was assuming before that the condition variable will only stop waiting once when it is signaled. But the documentation says that there might be spurious wakeups. https://bugzilla.gnome.org/show_bug.cgi?id=736655 2015-01-26 11:14:13 +0800 Song Bing * tests/check/Makefile.am: * tests/check/pipelines/streamsynchronizer.c: streamsynchronizer: Unit test for streamsynchronizer's EOS handling Test that a pipeline can change from PLAYING to PAUSED and back in the following scenarios: 1. One track reach EOS after pushed some buffers while another track still pushes buffers 2. One track reach EOS without buffers while another track still pushes buffers https://bugzilla.gnome.org/show_bug.cgi?id=736655 2015-01-12 17:40:25 +0800 Song Bing * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Send GAP events from the pads' streaming threads Change the GAP events that are currently sent from the chain function of the current pad to all other EOS pads. They should instead be sent from their own streaming threads. https://bugzilla.gnome.org/show_bug.cgi?id=736655 2015-01-12 16:08:33 +0800 Song Bing * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: Send GAP event to finish preroll when change state from PLAYING to PAUSED Wait in the event function when EOS is received until all pads are EOS and then forward the EOS event from each pads own event function. Also send a new GAP event for EOS pads from the event function whenever going from PLAYING->PAUSED by shortly waking up the GCond. This is needed to allow sinks to pre-roll again, as they did not receive EOS yet because we blocked that, but also will never get data again. https://bugzilla.gnome.org/show_bug.cgi?id=736655 2015-02-16 09:48:03 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: Revert "codec-utils: Handle the two rext profiles for h265" This reverts commit 19b93566801a56e7b043a670b7edcf8f2da06619. These two "profiles" are actually a complete set of profiles, which we will need to handle separately. Unfortunately it seems like we need information from the SPS to detect the exact profile. 2015-02-15 20:08:36 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: description: move some code into utility function 2015-02-15 20:05:13 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: add H.265 profile to description if available https://bugzilla.gnome.org/show_bug.cgi?id=673976 2015-02-15 19:03:38 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: add MPEG-4 video profile to description if available https://bugzilla.gnome.org/show_bug.cgi?id=673976 2015-02-15 18:37:38 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: add Dirac/VC-2 profile to description if available https://bugzilla.gnome.org/show_bug.cgi?id=673976 2015-02-15 18:14:18 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: add H.264 profile to description if available https://bugzilla.gnome.org/show_bug.cgi?id=673976 2015-02-13 22:56:00 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/install-plugins.c: install-plugins: fix indentation and add Since marker Forgot to squash this into the actual patch before pushing. 2015-02-13 22:49:04 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstpbutils.def: install-plugins: add new API to exports .def and to docs https://bugzilla.gnome.org/show_bug.cgi?id=744465 2015-02-03 10:47:11 +0100 Kalev Lember * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: install-plugins: Add API to suppress confirmation before searching The new gst_install_plugins_context_set_confirm_search() API can be used to pass a hint to modify the behaviour of the external installer process. https://bugzilla.gnome.org/show_bug.cgi?id=744465 2015-02-02 16:16:46 +0100 Kalev Lember * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: install-plugins: Add API for passing desktop ID and startup ID The new gst_install_plugins_context_set_desktop_id() and gst_install_plugins_context_set_startup_notification_id() API can be used to pass extra details to the external installer process. https://bugzilla.gnome.org/show_bug.cgi?id=744465 2015-02-13 16:03:53 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use new gst_aggregator_pad_drop_buffer() 2015-02-13 16:06:34 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: use new gst_aggregator_pad_drop_buffer() 2015-02-12 15:48:07 +0000 Tim-Philipp Müller * tests/check/elements/compositor.c: tests: remove GST_DISABLE_PARSE guards from two tests that don't require it 2015-02-12 15:48:07 +0000 Tim-Philipp Müller * tests/check/elements/audiomixer.c: tests: remove GST_DISABLE_PARSE guards from two tests that don't require it 2015-02-12 11:26:44 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: calculate stream_time used to sync pad values correctly Use pad (input) segment to calculate the stream time from the input timestamp, not the aggregator (output) segment. 2015-02-12 12:08:16 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video-orc: update with new methods 2015-02-12 11:38:20 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc.orc: video-format: add orc function for RGB15/16 unpack 2015-02-10 21:57:02 -0800 Stefan Sauer * gst/playback/gstplaybin2.c: playbin: improve debug log Log the human readable pad_link_return desc as well. 2015-02-11 15:57:54 +0200 Sebastian Dröge * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Handle the two rext profiles for h265 These values are for now taken from x265 and need to be checked against the spec. Especially we need to check if information from other fields need to be taken into consideration too, e.g. the bit depth and chroma index from the SPS. This however makes 4:4:4 output of x265enc actually work. 2015-02-11 13:43:11 +0100 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst/adder/gstadder.c: * gst/playback/gsturidecodebin.c: Improve and fix LATENCY query handling This now follows the design docs everywhere, especially the maximum latency handling. https://bugzilla.gnome.org/show_bug.cgi?id=744106 2015-02-11 14:16:21 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: Improve and fix LATENCY query handling This now follows the design docs everywhere, especially the maximum latency handling. https://bugzilla.gnome.org/show_bug.cgi?id=744106 2015-02-11 14:16:21 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: Improve and fix LATENCY query handling This now follows the design docs everywhere, especially the maximum latency handling. https://bugzilla.gnome.org/show_bug.cgi?id=744106 2015-02-11 14:16:21 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: Improve and fix LATENCY query handling This now follows the design docs everywhere, especially the maximum latency handling. https://bugzilla.gnome.org/show_bug.cgi?id=744106 2015-02-11 13:32:25 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: * win32/common/libgstvideo.def: video-scaler: add 2d scaler Make a convenience function that combines 2 scalers to perform a 2d scale. This removes quite a bit of overhead in method calls when doing a typical scale and it also can reuse a piece of unused memory in the vertical scaler. Use the 2d scaler in video-converter and remove the other scalers and temp memory. 2015-02-10 16:43:03 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: Fix YUY2 formats and friends Only merge scalers for selected formats. Use nearest neighbour scaling for chroma when doing nearest neighbour for the luma. Also fastpath GRAY16_OE in nearest neighbour. configure parameters correctly for packed fastpath. 2015-02-10 16:40:21 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: Small performance tweaks Small performance tweaks for RGB and friends. Add, but ifdef out, alternative nearest neighbour scaling, it is slower than the current table based version. Use memcpy instead of orc_memcpy because it is measurably faster. Fix YUY2 and friends vertical scaling. 2015-02-10 16:44:38 +0100 Sebastian Dröge * gst-libs/gst/video/video-scaler.c: video-scaler: Guard against (impossible) bits!=16 && bits!=8 case to fix compiler warning with clang video-scaler.c:1331:14: error: variable 'func' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] } else if (bits == 16) { ^~~~~~~~~~ video-scaler.c:1348:3: note: uninitialized use occurs here func (scale, src_lines, dest, dest_offset, width, n_elems); ^~~~ video-scaler.c:1331:10: note: remove the 'if' if its condition is always true } else if (bits == 16) { ^~~~~~~~~~~~~~~~ video-scaler.c:1260:27: note: initialize the variable 'func' to silence this warning GstVideoScalerVFunc func; ^ = NULL 2015-02-10 16:38:05 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Use correct enum type to fix compiler warnings with clang video-converter.c:3406:12: error: implicit conversion from enumeration type 'GstVideoFormat' to different enumeration type 'GstFormat' [-Werror,-Wenum-conversion] format = convert->fformat[plane]; ~ ^~~~~~~~~~~~~~~~~~~~~~~ video-converter.c:3413:44: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] gst_video_scaler_horizontal (h_scaler, format, ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ video-converter.c:3471:12: error: implicit conversion from enumeration type 'GstVideoFormat' to different enumeration type 'GstFormat' [-Werror,-Wenum-conversion] format = convert->fformat[plane]; ~ ^~~~~~~~~~~~~~~~~~~~~~~ video-converter.c:3487:42: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] gst_video_scaler_vertical (v_scaler, format, lines, d + out_x, i, ~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ video-converter.c:3551:12: error: implicit conversion from enumeration type 'GstVideoFormat' to different enumeration type 'GstFormat' [-Werror,-Wenum-conversion] format = convert->fformat[plane]; ~ ^~~~~~~~~~~~~~~~~~~~~~~ video-converter.c:3569:46: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] gst_video_scaler_horizontal (h_scaler, format, ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ video-converter.c:3577:42: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] gst_video_scaler_vertical (v_scaler, format, lines, d + out_x, i, ~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ 2015-02-10 15:25:04 +0000 Luis de Bethencourt * gst-libs/gst/video/video-scaler.c: video-converter: bits variable always set In function gst_video_scaler_vertical() the bits variable is always set to either 8 or 16 in every possible format. No need to initialize it. If the format isn't valid it goes to no_func, so there is no need to handle the case of bits not being 8 or 16. CID #1268401 2015-02-10 11:15:22 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: only enable backlog for interlaced video Skip lines we don't need. 2015-02-10 10:56:37 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: When receiving timeout before caps, make sure to also advance our frame counter Otherwise we will directly go EOS on the next non-timeout. 2015-02-10 09:30:44 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add fastpath for NV formats 2015-02-10 09:20:12 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix pstride of NV16 and NV24 formats 2015-02-09 00:59:30 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix buffer selection when duration=-1 If the src framerate and videoaggreator's output framerate were different, then we were taking every single buffer that had duration=-1 as it came in regardless of the buffer's start time. This caused the src to possibly run at a different speed to the output frames. https://bugzilla.gnome.org/show_bug.cgi?id=744096 2015-02-09 18:01:30 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspmessage.c: * tests/check/libs/rtsp.c: rtspmessage: map headers we know that are added by string to their enum That way we can look them up by their field enum later as well. 2015-02-09 17:49:12 +0000 Tim-Philipp Müller * tests/check/libs/rtsp.c: tests: rtsp: add some unit tests for new GstRTSPMessage API 2015-02-09 16:24:19 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: * win32/common/libgstrtsp.def: rtspmessage: add API to add and get custom headers Add API to add and get custom headers that are not covered by our header fields enum. This is backwards compatible in that it will also work for our defined fields, so if we ever add a new header field to the enum, get_header_by_name() for the same header string will still work. API: gst_rtsp_message_add_header_by_name() API: gst_rtsp_message_take_header_by_name() API: gst_rtsp_message_remove_header_by_name() API: gst_rtsp_message_get_header_by_name() 2015-02-09 17:51:00 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: Add more fastpaths Add fastpaths for all planar conversion and scaling. Improve gray and alpha handling. Add option to specify the chroma resampler method and set to linear as default. 2015-02-09 13:20:43 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add generic planar scaler/converter Add code to convert and scale between any planar format and use it in the fastpaths of some planare converters. 2015-02-09 10:20:37 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Fix compiler warnings by using the correct enum type video-converter.c:3645:24: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] convert->fformat = fformat; ~ ^~~~~~~ video-converter.c:3667:24: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] convert->fformat = fformat; ~ ^~~~~~~ video-converter.c:3963:50: error: implicit conversion from enumeration type 'const GstVideoFormat' to different enumeration type 'GstFormat' [-Werror,-Wenum-conversion] if (!setup_scale (convert, transforms[i].fformat)) ~~~~~~~~~~~ ~~~~~~~~~~~~~~^~~~~~~ 2015-02-08 14:32:22 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: don't set element factory details This is an abstract base class, not an element. 2015-02-07 03:56:05 +1100 Jan Schmidt * ext/ogg/gstoggmux.c: oggmux: Don't pass GstCollectData as a GstObject to GST_DEBUG 2015-02-06 13:39:04 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: video-converter: add more scaler fastpaths 2015-02-06 13:25:51 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: video-orc: fix loading of param param loading ignores the x4, loading only part of the param. 2015-02-06 12:35:01 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add border and crop to more fastpaths 2015-02-06 12:28:54 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix border for YUY2 and friends Convert as many pixels as the max subsampling so that we convert a complete group of pixels. 2015-02-05 15:57:59 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.h: audiomixer: remove now-unused base_time field in object structure 2015-02-06 15:39:14 +0530 Ravi Kiran K N * gst-libs/gst/video/video-converter.c: video-converter: support AYUV border Convert the border color from ARGB to AYUV, using colorimetry matrix when output format is YUV. https://bugzilla.gnome.org/show_bug.cgi?id=741640 2015-02-06 10:57:14 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix swapped border width And also do nothing when there is no border. 2015-02-06 10:56:21 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: actually draw the border in some fastpaths Don't forget to draw the border after doing the fastpath conversion. 2015-02-06 10:53:20 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: clamp width and heigth Clamp the width and height based on the in and out offsets. 2015-02-06 10:50:09 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: add unaligned fallbacks Add fallback C implementations for when we can't call the ORC function because of bad alignment. 2015-01-28 05:20:19 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Where possible, skip decode for GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO If we have timestamps on input buffers and are in trickmode no-audio mode, then don't pass anything to the subclass for decode and simply send gap events downstream Only for forward playback for now - reverse requires accumulating GAP events and pushing out in reverse order. https://bugzilla.gnome.org/show_bug.cgi?id=735666 2015-02-05 17:44:59 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Re-work GAP buffer and trick-mode handling In trickmode no-audio mode, or when receiving a GAP buffer, discard the contents and render as a GAP event instead. Make sure when rendering a gap event that the ring buffer will restart on PAUSED->PLAYING by setting the eos_rendering flag. This mostly reverts commit 8557ee and replaces it. The problem with the previous approach is that it hangs in wait_preroll() on a PLAYING-PAUSED transition because it doesn't commit state properly. https://bugzilla.gnome.org/show_bug.cgi?id=735666 2015-02-03 20:38:44 +1100 Jan Schmidt * ext/ogg/gstoggdemux.c: oggdemux: Add a little timestamping debug output 2015-02-03 01:19:05 +1100 Jan Schmidt * ext/theora/gsttheoradec.c: theora: If no header packets in stream, look for them in the caps Makes theora work in cases where the header packets are only in the caps (because theoradec was connected to oggdemux late and missed the beginning of the stream) 2015-02-02 22:23:51 +1100 Jan Schmidt * ext/theora/gsttheoradec.c: theora: Remove FIXME and return GST_CUSTOM_FLOW_DROP for header packet handling This FIXME is easily fixed :) 2015-01-31 05:12:10 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Remove pointless else{} around some code 2015-01-31 05:09:46 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Fix reverse playback when there's only one gather set. The decoder can fail to drain on EOS if there was only one gather set, because it will never have sent the segment event downstream and set the output segment, and fail to detect that the rate < 0.0 Make sure to send pending events before sending all the gather data for decode. 2014-10-09 03:31:58 +1100 Jan Schmidt * gst-libs/gst/video/video-frame.h: video: Fix simple typo in GstVideoFrameMapFlags docs 2015-02-05 17:49:55 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add crop and border to some fastpaths 2015-02-05 17:18:20 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: add support for borders in scale fastpath Add support for borders and cropping in the scaler fastpaths. 2015-02-05 15:48:41 +0000 Tim-Philipp Müller * tests/check/elements/compositor.c: tests: compositor: add unit test for proper segment.base handling As adjusted by gst_pad_set_offset(), or when doing segment seeks or looping for example. 2015-02-05 15:23:04 +0000 Tim-Philipp Müller * tests/check/elements/audiomixer.c: tests: audiomixer: add unit test for proper segment.base handling As adjusted by gst_pad_set_offset(), or when doing segment seeks or looping for example. See previous audiomixer commit. 2015-02-05 16:02:54 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Remove weird and wrong segment handling There's no reason why audiomixer should override the segment base of upstream with whatever value it got from a SEEK event, or even worse... with 0 if there was no SEEK event yet. This broke synchronization if upstream provided a segment base other than 0, e.g. when using pad offsets. Also that this code did things conditional on the element's state should've been a big warning already that something is just wrong. If this breaks anything else now, let's fix it properly :) Also don't do fancy segment position trickery when receiving a segment event. It's just not correct. 2015-02-05 15:03:24 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: disable fastpath for crop and border Add crop and border properties to the fastpath table and only select fastpath functions when it can handle the cropping or borders. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=744028 2015-02-04 18:01:51 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: video-converter: add fastpath for some gray formats 2015-02-04 17:44:31 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: video-converter: add fastpath for some more RGB formats Add fastpath for RGB and BGR. Add fastpath for nearest resampling for RGB15 and RGB16 formats. 2015-02-04 16:37:22 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: skip lines we don't need Make sure to skip unused lines instead of doing a useless horizontal resampling. 2015-02-04 12:08:21 +0000 Luis de Bethencourt * gst/videoscale/gstvideoscale.c: videoscale: fix memory leak In gst_video_scale_fixate_caps () it can goto done without freeing the memory of the tmp GstStructure. This makes it go out of scope and leak. CID #1265766 2015-02-04 11:25:54 +0000 Luis de Bethencourt * gst-libs/gst/video/video-resampler.c: video-resampler: make sure params.envelope is initialized In gst_video_resampler_init () if method is GST_VIDEO_RESAMPLER_METHOD_NEAREST then params.envelope is not initialized but still used later in line 382. Make sure this variable is initiliazed to avoid undefined behaviour. CID #1256568 2015-02-03 12:23:06 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video{enc,dec}oder: Don't reset latency all the time and handle max=GST_CLOCK_TIME_NONE correctly max=NONE means that *this* element has no maximum latency. If upstream had a maximum latency we must not override it with NONE. 2015-02-03 12:15:25 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio{enc,dec}oder: Always directly post latency messages on the bus when the subclass sets the latency Instead of doing it only in setcaps for the encoder, and never at all for the decoder. 2015-02-03 12:12:18 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio{enc,dec}oder: Handle max_latency == GST_CLOCK_TIME_NONE And initialize the latencies with 0 and NONE. 2015-02-03 15:30:08 +1100 Matthew Waters * ext/gl/gstglmixer.c: gl: remove the egl caps from the src pads we don't actually support producing EGLImage buffers anywhere. 2015-02-03 00:11:06 +1100 Matthew Waters * ext/gl/gstglmixer.c: glupload/download/convert: provide transform_caps functions Allows finer grain decisions about formats and features at each stage of the pipeline. Also provide propose_allocation for glupload besed on the supported methods. 2015-01-28 05:26:06 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Don't render a GAP silence buffer Don't render out silence samples to a buffer, just start the clock running, since any buffer with the GAP flag will be discarded in render() now anyway. 2015-01-28 22:42:17 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Make sure the ringbuffer is started before waiting Don't call the basesink wait_event implementation until we're sure the ringbuffer is running, because it might wait on a non-running clock. 2015-01-27 02:04:22 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: drop GAP buffers, or all buffers in trickmode no-audio mode Make the base audio sink throw away buffers marked GAP, or all incoming buffers when performing a trick play with GST_SEGMENT_TRICKMODE_NO_AUDIO flag set, and make sure to start the ringbuffer when that happens so the clock starts running. Preserve the timing calculations when rendering, so state is all updated the same, but just don't render samples. https://bugzilla.gnome.org/show_bug.cgi?id=735666 2015-01-29 17:58:27 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not throw a flow error on flushing If the streaming task attempts to read a chain while the pipeline is stopping (which can happen if the pipeline stops shortly after start or a new URI being setup in gapless playback case), it will see a flushing return from upstream, and should then also return flushing to the caller, rather than emit a flow error. https://bugzilla.gnome.org/show_bug.cgi?id=722442 2015-01-28 00:13:46 +1100 Alessandro Decina * ext/gl/gstglmixer.c: gl: initial support for texture targets other than GL_TEXTURE_2D Make GstGLMemory hold the texture target (tex_target) the texture it represents (tex_id) is bound to. Modify gst_gl_memory_wrapped_texture and gst_gl_download_perform_with_data to take the texture target as an argument. This change is needed to support wrapping textures created outside libgstgl, which might be bound to a target other than GL_TEXTURE_2D. For example on OSX textures coming from VideoToolbox have target GL_TEXTURE_RECTANGLE. With this change we still keep (and sometimes imply) GL_TEXTURE_2D as the target of textures created with libgstgl. API: modify GstGLMemory API: modify gst_gl_memory_wrapped_texture API: gst_gl_download_perform_with_data 2015-01-28 16:43:59 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: change audio property to audio-type This is now an enum with values generic (default) and voice. https://bugzilla.gnome.org/show_bug.cgi?id=740891 2015-01-26 11:29:08 +0100 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: aggregator: Make the PAD_LOCK private Instead of using the GST_OBJECT_LOCK we should have a dedicated mutex for the pad as it is also associated with the mutex on the EVENT_MUTEX on which we wait in the _chain function of the pad. The GstAggregatorPad.segment is still protected with the GST_OBJECT_LOCK. Remove the gst_aggregator_pad_peak_unlocked method as it does not make sense anymore with a private lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 11:32:47 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: aggregator: More fixes around locking when accessing protected private fields In some more places we were accessing GstAggregator->segment and GstAggregator->seqnum without holding the GST_OBJECT_LOCK https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 11:25:54 +0100 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: aggregator: Hide GstAggregatorPad buffer and EOS fileds And add a getter for the EOS. The user should always use the various getters to access those fields https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 11:25:54 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Hide GstAggregatorPad buffer and EOS fileds And add a getter for the EOS. The user should always use the various getters to access those fields https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:09:13 -0500 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Make flush start/stop test non-racy The flush stop could have happened between the source trying to push the segment event and the buffer, this would cause a warning. Prevent that by taking the source's stream lock while flushing. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:43:12 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Document locking for gst_aggregator_get_latency_unlocked() Renamed it to _unlocked() to make it clear. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-22 17:41:24 -0500 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Replace racy timeout based tested with drain query Using the drain query, we can be certain that the buffer has done going through the aggregator by taking the stream locks. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-14 14:45:06 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Lock access to members of GstAggregatorPad Take the pad's object lock before accessing members of the GstAggregatorPad structure. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:32:34 -0500 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Avoid race in caps negotiation With the current audiomixer, the input caps need to be the same, otherwise there is an unavoidable race in the caps negotiation. So enforce that using capsfilters https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:47:40 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Clear GstAudioInfo the the caps When clearing the caps, also clear the matching GstAudioInfo https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:39:24 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Don't reset caps on flush A flush event doesn't invalidate the previous caps event. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-14 14:35:15 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: aggregator: Replace event lock with pad's object lock Reduce the number of locks simplify code, what is protects is exposed, but the lock was not. Also means adding an _unlocked version of gst_aggregator_pad_steal_buffer(). https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-29 02:28:38 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: If getting a timeout before having caps, just advance our position This can happen if this is a live pipeline and no source produced any buffer and sent no caps until an output buffer should've been produced according to the latency. This fix is similar in spirit to commit be7034d1 by Sebastian for audiomixer. 2015-01-28 17:44:57 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Fix compiler warnings video-converter.c:3073:48: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] gst_video_scaler_horizontal (h_scaler, format, ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ video-converter.c:3081:44: error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' [-Werror,-Wenum-conversion] gst_video_scaler_vertical (v_scaler, format, lines, d, i, out_w); ~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ video-converter.c:3137:24: error: implicit conversion from enumeration type 'const GstVideoFormat' to different enumeration type 'GstFormat' [-Werror,-Wenum-conversion] convert->fformat = GST_VIDEO_INFO_FORMAT (in_info); ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../gst-libs/gst/video/video-info.h:125:43: note: expanded from macro 'GST_VIDEO_INFO_FORMAT' ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../gst-libs/gst/video/video-format.h:361:59: note: expanded from macro 'GST_VIDEO_FORMAT_INFO_FORMAT' ~~~~~~~~^~~~~~ video-converter.c:3157:24: error: implicit conversion from enumeration type 'GstVideoFormat' to different enumeration type 'GstFormat' [-Werror,-Wenum-conversion] convert->fformat = GST_VIDEO_FORMAT_GRAY8; 2015-01-28 17:43:59 +0100 Sebastian Dröge * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: Update orc files 2015-01-28 17:37:35 +0100 Wim Taymans * win32/common/libgstvideo.def: defs: update 2015-01-28 17:32:12 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: video-converter: add fast-path scaler for some packed YUV formats Add fast path scaling for YUY2 and other packed YUV formats. Add a new method to merge the scalers of the Y and UV components into one scaler. Add faster horizontal 2tap scaler. See https://bugzilla.gnome.org/show_bug.cgi?id=741987 2015-01-28 17:30:53 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: don't do dithering 2015-01-28 17:30:14 +0100 Wim Taymans * gst-libs/gst/video/video-converter.h: video-converter: the default is BAYER dithering 2015-01-28 17:29:45 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: don't do dither when set to NONE 2015-01-28 11:38:16 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix taps calculation for pstride == 1 Take pstride into consideration when calculating the scaler taps. 2015-01-28 04:51:25 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Make sure the ringbuffer really starts when we need it to Some audio sink sub-classes (pulsesink) don't start their clock when the ringbuffer starts, but always have to on EOS. When we explicitly need to start the ringbuffer, make sure sub-classes will do it by (ab)using the existing eos_rendering flag. 2014-12-11 01:54:07 +1100 Jan Schmidt * tests/examples/playback/playback-test.c: playback-test: Support new skip seek flags Support the new SEEK_TRICKMODE_KEY_UNITS and SEEK_TRICKMODE_NO_AUDIO flags added to core https://bugzilla.gnome.org/show_bug.cgi?id=735666 2015-01-27 13:39:14 +0000 Luis de Bethencourt * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst/adder/gstadderorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/volume/gstvolumeorc-dist.c: orc: update orc files 2015-01-27 10:28:35 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add fastpath for planar scaling Add fastpaths for scaling of planar subsampled formats. See https://bugzilla.gnome.org/show_bug.cgi?id=741987 2015-01-27 10:04:11 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: add support for monochroma formats Add support for scaling of images with pstride == 1. This can be used to scale individual planes later. Rework some of the scaling code to take the pstride as a parameter. 2015-01-27 09:51:47 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: disable chroma and matrix operations Ignore chroma subsampling and color matrix transformations like the old videoscale used to do. This is to make the performance like it was before. See https://bugzilla.gnome.org/show_bug.cgi?id=741987 2015-01-26 12:52:40 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix GBR unpack 2015-01-27 01:31:50 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Fix typo in documentation Fix a couple of harmless warnings in the gtk-doc parsing 2015-01-26 09:22:23 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix crash when receiving buffer without timestamps Unset out buffer in clip function when we unref the buffer to be clipped, otherwise aggregator will continue to use the already- freed buffer. Fixes crash when buffers without timestamps are being fed to aggregator. Partly because aggregator ignores the error flow return. https://bugzilla.gnome.org/show_bug.cgi?id=743334 2015-01-23 12:46:41 +0100 Edward Hervey * gst-libs/gst/video/video-dither.c: video: Fix leaked dither object in error cases Coverity CID : 1256564 2015-01-21 15:22:15 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: visual: fix caps leak Fix leak of caps event and of caps objects when setting caps on sink and src pads. Sync audiovisualizer class implementation to the one in gst-plugins-bad. This commit matches c5ef1bee7318f057aa1f542d5a1474b75e85131a in that module. https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-01-21 14:46:15 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: visual: post QoS messages when dropping frames due to QoS https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-01-21 09:49:47 +0100 Sebastian Dröge * ext/cdparanoia/gstcdparanoiasrc.h: * gst-libs/gst/video/video-format.c: * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioquantize.c: * gst/audioresample/gstaudioresample.c: * gst/audioresample/resample.c: Constify some static arrays everywhere 2015-01-21 09:42:21 +0100 Sebastian Dröge * ext/alsa/gstalsa.c: alsa: Constify channel position table 2015-01-21 09:41:23 +0100 Sebastian Dröge * ext/alsa/gstalsa.c: alsa: Fix indention 2015-01-21 08:33:57 +0100 Thomas Roos * ext/alsa/gstalsa.c: alsa: Allow to use 8 bit samples with ALSA 8 bit samples have no (0) as endianness, not the native endianness. https://bugzilla.gnome.org/show_bug.cgi?id=739446 2015-01-21 09:39:30 +0100 Sebastian Dröge * gst-libs/gst/audio/audio-format.c: audio-format: Constify the audio format table 2015-01-21 09:37:30 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiosrc.c: audiosrc: Fill in the correct silence For unsigned raw formats this is not all zeroes, and for non-raw formats we just continue to assume all zeroes for now. https://bugzilla.gnome.org/show_bug.cgi?id=739446 2015-01-21 08:47:26 +0100 Thomas Roos * gst-libs/gst/audio/gstaudiosink.c: audiosink: Fill in the correct silence For unsigned raw formats this is not all zeroes, and for non-raw formats we just continue to assume all zeroes for now. https://bugzilla.gnome.org/show_bug.cgi?id=739446 2015-01-20 19:14:21 +0100 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: appsink: Only emit EOS signal after all buffers are consumed Otherwise the application will possibly shut down the pipeline already because EOS is received, while there are still some buffers pending. 2015-01-20 15:08:24 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: dcodebin2: fix lock/unlock mismatch on multiqueue overrun 2015-01-13 16:07:06 +0100 Jan Alexander Steffens (heftig) * gst/audioresample/resample.c: audioresample: Try to prevent endless looping Speex may decide not to consume any samples because it can't write any. I've seen a hang during draining caused by the resample loop never terminating. In that case, resampling happened as normal until olen was 0 but ilen was still 1. _process_native then reduced ichunk to 0, so ilen never decreased below 1 and the loop never terminated. Instead of reverting 684cf44 ({audioresample: don't skip input samples), break only if all output samples have been produced and speex refuses to consume any more input samples. https://bugzilla.gnome.org/show_bug.cgi?id=732908 2015-01-19 12:37:23 +0000 Vincent Penquerc'h * gst/compositor/blend.c: compositor: fix illegal memory access in blend function with negative ypos https://bugzilla.gnome.org/show_bug.cgi?id=741115 2015-01-19 11:17:18 +0100 Sebastian Dröge * gst/videorate/Makefile.am: videorate: Add $(GST_PLUGINS_BASE_CFLAGS) to be able to find gst/video/video.h 2015-01-18 14:58:36 -0500 Nicolas Dufresne * gst/videorate/Makefile.am: * gst/videorate/gstvideorate.c: videorate: Implement allocation query The videorate element keeps 1 buffer internally. This buffer need to be requested during allocation query otherwise the pipeline may stall. https://bugzilla.gnome.org/show_bug.cgi?id=738302 2015-01-18 14:17:07 -0500 Nicolas Dufresne * gst/videorate/Makefile.am: * gst/videorate/gstvideorate.c: Revert "videorate: Implement allocation query" This reverts commit 3c04db4a307048db70ee1d08c1d62e26ad9569d8. 2015-01-18 11:02:00 -0500 Nicolas Dufresne * gst/videorate/Makefile.am: * gst/videorate/gstvideorate.c: videorate: Implement allocation query VideRate keeps 1 buffer in order to duplicate base on closest buffer relative to targeted time. This extra buffer need to be request otherwise the pipeline may stall when fixed size buffer pool is used. https://bugzilla.gnome.org/show_bug.cgi?id=738302 2015-01-17 14:51:48 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Fix compilation 2015-01-12 14:38:09 +0100 Branislav Katreniak * gst/playback/gstdecodebin2.c: decodebin: do call set_queue_size in no_more_pads_cb Consider pipeline: gst-launch-1.0 playbin uri=http://example.com/a.ogg Consider 128kbit audio stream. As soon as uridecodebin detects the bitrate, it configures its input queue2 max-size to 32000 bytes. The 2MB buffer in multiqueue is nearly 2 orders of magnitude bigger. This non-deterministically drives queue2 buffer anywhere from 100% to 0% until multiqueue is filled. This patch sets multiqueue size to 5 buffers early in no_more_pads_cb. Partly reverts commit db771185ed750627a6a1824c42b651d739e1b4a4. https://bugzilla.gnome.org/show_bug.cgi?id=740689 2015-01-16 15:21:14 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: free old groups when switching groups Old groups are freed with one switch's delay when switching groups. They're freed in a scratch thread to avoid delaying the switch. 2014-12-12 17:02:35 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: fix clipped duration determination for non 0 based segments https://bugzilla.gnome.org/show_bug.cgi?id=740422 2015-01-15 10:51:37 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioutilsprivate.c: audio: Keep caps features when building the downstream filter Based on 5fd4e3e0b6cc4f30d7b1489a105db946b43f1a9f for video by Alessandro Decina. 2015-01-15 13:54:14 +1100 Alessandro Decina * gst-libs/gst/video/gstvideoutilsprivate.c: videoutils: keep caps features in account when building the downstream filter See 00c2ce6 and https://bugzilla.gnome.org/show_bug.cgi?id=741263 for reference. 2015-01-15 09:47:45 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: glvideomixer: don't upload if alpha <= 0 Implemented using a upload_buffer vfunc within GstGLMixer allowing NULL uploaded buffers. 2015-01-14 23:48:16 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Document the zorder pad property from gstvideoaggregator 2015-01-14 10:35:34 -0300 Thiago Santos * tests/examples/playback/playback-test.c: examples: playback: add labels with supported seek range Add the supported seeking range in the advanced seek area. Also implement seeking querying the pipeline to retrieve those values and show to the user. It is done in a smaller frequency compared to the position/duration querying. 2015-01-13 19:25:52 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: disable pad link checks as it has already been done Decodebin has already added the element to the bin and should only select caps compatible pads. It should disable the pad link checks to avoid doing those again. https://bugzilla.gnome.org/show_bug.cgi?id=742885 2015-01-14 22:08:43 +1100 Matthew Waters * ext/gl/gstglmixer.c: gl: split glcolorconvert usage from glupload the separation allows the transfer operation to occur in a separate thread/time which may increase performance in specific circumstances. 2015-01-13 16:58:34 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: visual: cleanup Shameful fix to a silly mistake in the previous commit. Above email address for any mockery 2015-01-13 16:36:09 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: visual: handle the return of the setup function Make the baseclass future proof by handling the gboolean return of the setup function. So if/when a child class uses this the base class is ready. 2015-01-13 16:09:49 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: Revert "visual: remove unnecessary variable" This reverts commit a91d521a3602f33083405467db9454d422b9da1b. Being a base class it is better to check the value instead of ignoring it since a child class could be created that returns valuable information. 2015-01-13 15:07:56 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: visual: remove unnecessary variable klass->setup (scope) will always return TRUE since all children of this class do so, no need to store the return. Besides, the value is overwritten a few lines down before it is ever used. Save the unnecessary memory and instructions. CID #1226467 2015-01-13 14:54:26 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: Don't do any conversions if the pad is completely transparent anyway 2015-01-12 21:25:14 +0100 Stefan Sauer * gst/compositor/.gitignore: gitignore: ignore more files 2015-01-12 15:27:18 +0000 Luis de Bethencourt * ext/libvisual/gstaudiovisualizer.c: visual: use unused value ret is assigned but not used and in the next cycle of the loop it is overwritten with default_prepare_output_buffer (). If there is a flow error the function should return instead. CID #1226475 2015-01-12 15:56:06 +0100 Stefan Sauer * common: Automatic update of common submodule From f2c6b95 to bc76a8b 2015-01-08 21:20:14 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: start ringbuffer if needed upon commit ... to provide for a running clock. 2015-01-02 14:34:41 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: fix comment typo 2015-01-09 15:38:09 +0000 Luis de Bethencourt * gst-libs/gst/video/video-dither.c: video-dither: remove check for below zero for unsigned value CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative number since it is an unsigned integer. Removing that check and only checking if it is bigger than max and setting it appropriately. CID 1256559 2015-01-09 15:28:06 +0000 Luis de Bethencourt * gst-libs/gst/video/video-resampler.c: video-resampler: remove check for below zero for unsigned value CLAMP checks both if n_taps is '< 0' and '> max_taps'. n_taps will never be a negative number because it is an unsigned integer. Removing that check and only making sure it isn't set bigger than max. CID 1256558 2015-01-08 10:45:46 +0100 Sebastian Dröge * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-info.c: video: Add support for BT2020 colorspace (UHD) 2015-01-07 15:54:58 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: remove useless debug 2015-01-07 15:52:57 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video-converter: add options to control chroma resampling Add an option to disable chroma resampling. Improve the matrix option values so that you can choose to use the input or output matrix or disable conversion. 2015-01-02 15:27:23 +0000 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: remove unused enum 2014-12-31 19:40:20 +0000 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: fix silly GQueue iteration code 2014-12-30 19:43:43 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: glmixer, glvideomixer: update for GstAggregatorPadForeachFunc change 2014-12-30 19:26:47 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: glmixer: update for aggregator start/stop vfunc change 2014-12-30 18:01:34 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: update for aggregator start/stop vfunc change 2014-12-30 17:56:35 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: update for aggregator start/stop vfunc change 2014-12-30 15:29:36 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: fix output-block-size property description 2014-12-28 01:13:33 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: aggregator: make padding larger Esp. the class structures, can't have enough spare space for virtual functions. 2014-12-26 20:48:55 +0000 Sam Thursfield * gst-libs/gst/pbutils/gstdiscoverer-types.c: Fix documentation that incorrectly says a return value should be freed The gst_discoverer_info_get_missing_elements_installer_details() documentation and annotation says that the return value should be freed with g_strfreev(), but actually it's owned by the GstDiscovereInfo object and should definitely not get freed by the caller as well. https://bugzilla.gnome.org/show_bug.cgi?id=742006 2014-12-27 15:50:17 +0530 Nirbheek Chauhan * ext/gl/gstglvideomixer.c: glvideomixer: Point to compositor for the pad properties documentation 2014-12-27 15:49:47 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Document the pad properties 2014-12-27 15:49:39 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudiomixer.c: audiomixer: Document the pad properties 2014-12-27 14:44:51 +0530 Nirbheek Chauhan * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Explicitly document that buffer-time and latency-time may be ignored 2014-12-26 18:55:08 -0300 Thiago Santos * ext/ogg/gstoggmux.c: oggmux: only clip by duration if end of buffer is ahead of segment It might happen that the timestamp is before the segment and the check would succeed. In this case reducing the duration makes no sense and would lead to broken results. 2014-12-22 22:04:41 +0100 Sebastian Dröge * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Report our latency properly in live mode While we have no latency at all in theory, any other live source has the duration of one buffer as minimum latency. Do the same in videotestsrc. https://bugzilla.gnome.org/show_bug.cgi?id=741879 2014-12-22 22:00:26 +0100 Sebastian Dröge * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Report our latency properly in live mode While we have no latency at all in theory, any other live source has the duration of one buffer as minimum latency. Do the same in audiotestsrc. https://bugzilla.gnome.org/show_bug.cgi?id=741879 2014-12-23 12:24:48 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: If getting a timeout before having caps, just advance our position This can happen if this is a live pipeline and no source produced any buffer and sent no caps until the an output buffer should've been produced according to the latency. 2014-12-23 12:15:50 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Make sure to release the current buffer in reset() If we didn't output the last one in aggregate because we were shutting down earlier we might otherwise leak it. 2014-12-23 11:45:50 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audiomixer: Change blocksize property to output-buffer-duration in time format This makes the interface of audiomixer independent of the actual caps. 2014-12-22 22:11:30 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Use the src query implementation of aggregator as the default case 2014-12-22 22:11:13 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Use the src query implementation of aggregator as the default case 2014-12-22 09:25:04 -0500 Song Bing * gst-libs/gst/video/gstvideopool.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: videopool: update video alignment after applying Video buffer pool will update video alignment to respect stride alignment requirement. But haven't updated it to video alignment in configure. Which will cause user get wrong video alignment. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741501 2014-11-28 14:36:23 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: get the internal time before the clock reset Otherwise calls to get the clock time might change its internal state and the internal/external time for calibration get unbalanced leading to a clock jump https://bugzilla.gnome.org/show_bug.cgi?id=740834 2014-12-22 11:45:53 +0100 Sebastian Dröge * MAINTAINERS: MAINTAINERS: Update my mail address 2014-12-22 11:38:20 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video{en,de}coder: Call reset() before the start() vfunc This makes sure that the element is in the same state before start() is called the very first time and every future call after the element was used already. Also it ensure that we always have a clean state before start(), cleaned the same way in every case. 2014-12-22 11:36:58 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Call reset() before the start() vfunc to guarantee a clean state The same was done already in the decoder, and we cleaned some state just above manually that would also be taken care of by reset(). This makes sure that the element is in the same state before start() is called the very first time and every future call after the element was used already. 2014-12-22 11:33:14 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video{en,de}coder: Reset the codec after calling the stop() vfunc The stop() vfunc might mess with some of our fields we have just reset, which could cause memory leaks or invalid state taken over to later. Also the stop() vfunc, or anything called until it from another thread, might want to be able to use the fields that were just resetted and become confused because of that. In the decoder we already had a workaround for things like this happening, this workaround is not needed anymore. 2014-12-22 10:45:37 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: audiobase{sink,src}: Don't hold the object lock while calling create_ringbuffer() vfunc The implementation of that vfunc might want to use the object lock for something too. It's generally not a good idea to keep the object lock while calling any function implemented elsewhere. Also the ringbuffer can only be NULL at this point, remove a useless if block. And in the sink actually hold the object lock while setting the ringbuffer on the instance. Code accessing this is expected to use the object lock, so do it here ourselves too. 2014-12-21 07:47:25 -0500 Stefan Sauer * gst/audiomixer/Makefile.am: audiomixer: fix build flag order Have the libraries/inlcudes from plugins-bad first to avoid picking up the installed version. Fixes the build when the local api changed. 2014-12-19 13:04:58 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audiomixer: Track discont-time per pad instead of globally We do discont handling per pad, not per element! 2014-12-18 23:33:58 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: We're only EOS if all our pads are actually EOS Having a buffer or not on the pad is irrelevant. 2014-12-18 22:42:14 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: The pad's size is always supposed to be the whole buffer size And the offset the offset into that buffer. Changing the size will cause all kinds of assumptions to fail and cause crashes. 2014-12-18 22:04:38 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't try to map NULL buffers 2014-12-18 22:03:04 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Make sure to always update the pad's videoinfo together with buffers Otherwise the videoinfo and the buffer content can go out of sync. 2014-12-18 13:24:22 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff-media: Error out early if we observe an invalid audio format 2014-12-18 13:22:17 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff: Also handle invalid block aligns for raw audio Fixes audio playback of http://demo.archermind.com/Test%20Sample/Video/MPEG%204/Divx3/Low-Motion/576-320.avi Audio and video together is still broken because of other issues. 2014-12-18 11:48:37 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: Fix memory leak when no buffer is available for a pad currently CID 1258718 2014-12-18 10:57:13 +0100 Edward Hervey * gst-libs/gst/audio/Makefile.am: audio: Fix private header include/dist We want to dist it, but we don't want to install it. Fixes make dist/distcheck 2014-12-18 10:53:20 +0100 Sebastian Dröge * common: Automatic update of common submodule From ef1ffdc to f2c6b95 2014-12-17 21:52:13 -0300 Thiago Santos * ext/opus/gstopusenc.c: opusenc: plug ref leak of template caps the pad template caps is already a new ref. No need to copy. 2014-12-17 19:14:38 -0300 Thiago Santos * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: audio: fix GI annotations for proxy caps function Add the annotations to parameters that can be null and also for stating the ownership of the returned caps 2014-12-17 15:21:48 -0300 Thiago Santos * tests/check/libs/audiodecoder.c: tests: audiodecoder: tests for caps query implementation Copied from videodecoder tests and updated to audio features 2014-12-17 15:21:16 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * win32/common/libgstaudio.def: audiodecoder: expose getcaps virtual function Allows subclasses to do custom caps query replies. Also exposes the standard caps query handler so subclasses can just extend on top of it instead of reimplementing the caps query proxying. 2014-12-16 18:36:57 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: implement caps and accept-caps queries Allows decoders to proxy downstream restrictions on caps. Also implements accept-caps query to prevent regressions caused by the new fields on the return of a caps query that would cause the accept-caps to fail as it uses subset caps comparisons 2014-12-16 11:13:40 -0300 Thiago Santos * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioutilsprivate.c: * gst-libs/gst/audio/gstaudioutilsprivate.h: audioencoder: refactor getcaps proxy function to be reusable Makes the audioencoder's getcaps function that proxies downstream restriction available to other elements in the audio module to use it 2014-12-17 14:18:03 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * tests/check/libs/videodecoder.c: * win32/common/libgstvideo.def: videodecoder: expose getcaps virtual function Allows subclasses to do custom caps query replies. Also exposes the standard caps query handler so subclasses can just extend on top of it instead of reimplementing the caps query proxying. https://bugzilla.gnome.org/show_bug.cgi?id=741263 2014-12-15 18:46:21 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: accept-caps should only require fields from the template With the new caps query results the caps returned might have extra fields that are not required by the decoder (framerate for image decoders) and it causes a regression making, for example, jpegdec reject caps that don't have framerates. The accept-caps implementation will do 2 checks: 1) Do subset check with the template caps, making sure all the required fields that are present on the template are present on the received caps. 2) Do a intersection check with the result of a caps query, making sure that downstream can accept the fields in the received caps. https://bugzilla.gnome.org/show_bug.cgi?id=741263 2014-12-09 16:08:12 -0300 Thiago Santos * gst-libs/gst/video/gstvideoutilsprivate.c: videoutils: proxy filter when doing a caps query downstream Allows downstream to use the filter and possibly reduce caps complexity to speed up negotiation https://bugzilla.gnome.org/show_bug.cgi?id=741263 2014-12-09 16:05:27 -0300 Thiago Santos * gst-libs/gst/video/gstvideoutilsprivate.c: videoutils: return empty if the element has no possible allowed caps Instead of returning the template caps and having a failure happen later because there are no possible caps https://bugzilla.gnome.org/show_bug.cgi?id=741263 2014-12-08 16:33:33 -0300 Thiago Santos * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutilsprivate.c: * gst-libs/gst/video/gstvideoutilsprivate.h: * tests/check/libs/videodecoder.c: videodecoder: implement caps query Refactor the encoder's caps query proxying function to a common place and use it in the videodecoder to proxy downstream restrictions. The new function is private to the gstvideo lib. https://bugzilla.gnome.org/show_bug.cgi?id=741263 2014-12-17 19:51:32 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: aggregator: Add function to allow subclasses to set their own latency For audiomixer this is one blocksize, for videoaggregator this should be the duration of one output frame. 2014-12-17 19:51:32 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Add function to allow subclasses to set their own latency For audiomixer this is one blocksize, for videoaggregator this should be the duration of one output frame. 2014-12-17 19:37:22 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Make sure to not have pads being behind the current offset We would break sync between the different streams then. 2014-12-17 17:54:09 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: aggregator: Add a timeout parameter to ::aggregate() When this is TRUE, we really have to produce output. This happens in live mixing mode when we have to output something for the current time, no matter if we have enough input or not. 2014-12-17 17:54:09 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: aggregator: Add a timeout parameter to ::aggregate() When this is TRUE, we really have to produce output. This happens in live mixing mode when we have to output something for the current time, no matter if we have enough input or not. 2014-12-17 18:20:15 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add queues after the (live) sources in the unit test 2014-12-17 12:01:19 +0000 Tim-Philipp Müller * configure.ac: configure: require release version of orc now that there is one 2014-12-16 17:37:12 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Implement get_next_time() 2014-12-05 18:19:54 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: aggregator: make the src pad task drive the pipeline for live pipelines This removes the uses of GAsyncQueue and replaces it with explicit GMutex, GCond and wakeup count which is used for the non-live case. For live pipelines, the aggregator waits on the clock until either data arrives on all sink pads or the expected output buffer time arrives plus the timeout/latency at which time, the subclass produces a buffer. https://bugzilla.gnome.org/show_bug.cgi?id=741146 2014-12-08 15:18:25 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: always try to use newer buffers instead of dropping them for being too old. This ensures that the newest buffer is always used for rendering 2014-12-16 12:57:55 +0100 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximagesink: clear src and dest rectangles Now that the center function also takes into account the x and y coordinates of the dest rectangle, better clear all the fields before using them. 2014-12-16 12:10:53 +0100 Song Bing * gst-libs/gst/video/gstvideopool.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: videopool: update buffer size after video alignment Update the new buffer size after alignment in the pool configuration before calling the parent set_config. This ensures that the parent knows about the buffer size that we will allocate and makes the size check work in the release_buffer method. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741420 2014-12-15 20:57:14 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.h: audiobasesrc/sink: Add _CAST macros 2014-12-15 14:10:17 +0100 Edward Hervey * gst-libs/gst/video/gstvideosink.c: * tests/check/libs/video.c: video: Fix non-default usage of gst_video_sink_center_rect Make sure we take into account non-0 x/y destination rectangles 2014-12-15 12:12:44 +0000 Tim-Philipp Müller * tests/examples/playback/playback-test.c: examples: improve playback-test help text a little And allow pipeline type to be specified as string. 2014-12-15 10:35:35 +0100 Sebastian Dröge * ext/pango/gstbasetextoverlay.h: pango: Add license/copyright header to header file 2014-12-15 09:45:43 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin: Only emit the drain signal for the main decode chain, not any subchains" This reverts commit a391dfe17f1a325f60e1d51a6d40c1a68eb196de. It breaks gapless playback: https://bugzilla.gnome.org/show_bug.cgi?id=740045 2014-12-09 03:18:37 +0100 Matej Knopp * gst/audiorate/gstaudiorate.c: audiorate: Fill gap events https://bugzilla.gnome.org/show_bug.cgi?id=741281 2014-12-10 16:10:58 +0530 Sanjay NM * gst-libs/gst/audio/gstaudiodecoder.c: audio: Add error handling to gst_audio_decoder_drain() https://bugzilla.gnome.org/show_bug.cgi?id=740686 2014-12-13 16:14:49 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioclock.c: audioclock: Fix redundant definitions compiler warning gstaudioclock.c:51:31: error: redundant redeclaration of 'gst_audio_clock_init' [-Werror=redundant-decls] G_DEFINE_TYPE (GstAudioClock, gst_audio_clock, GST_TYPE_SYSTEM_CLOCK); gstaudioclock.c:51:31: error: redundant redeclaration of 'gst_audio_clock_class_init' [-Werror=redundant-decls] G_DEFINE_TYPE (GstAudioClock, gst_audio_clock, GST_TYPE_SYSTEM_CLOCK); 2014-12-13 16:04:40 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioclock.c: audioclock: No need to get the parent class in class_init, G_DEFINE_TYPE does that for us 2014-12-13 16:01:44 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioclock.c: audioclock: Use G_DEFINE_TYPE instead of a custom get_type() function 2014-12-12 08:32:15 -0800 Zaheer Abbas Merali * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: fix spelling of word in comment 2014-12-12 14:59:49 +0000 Tim-Philipp Müller * tests/check/libs/rtpbasedepayload.c: tests: rtpbasepayload: fix indentation 2014-12-12 14:59:03 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: tests: audiodecoder: fix indentation 2014-12-12 14:56:36 +0000 Tim-Philipp Müller * tests/check/libs/audiodecoder.c: tests: audiodecoder: fix broken refcounting in unit test The set_format vfunc does not pass ownership of the caps to the decoder, so we mustn't unref the caps there. gst_event_new_caps() does not take ownership of the caps passed, so we must unref the caps afterwards. Fixes leaks when running test in valgrind in 1.4 branch. 2014-11-27 20:48:24 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Hide some more fields from the API + Add some documentation 2014-12-12 10:02:43 +0100 Sebastian Dröge * gst-libs/gst/video/video-orc-dist.c: video: Update disted orc source files 2014-12-12 10:01:36 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: Revert "video-converter: Fix compiler warning because of missing prototype of non-static function" This reverts commit 406f32a9468c837a4d71f988de10dc2198a8edc9. The problem was apparently that my video-orc.h was not updated and did not include the prototype for that function. Only a "make clean" caused it to be regenerated. 2014-12-12 09:51:05 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Fix compiler warning because of missing prototype of non-static function video-converter.c:838:1: error: no previous prototype for function '_custom_video_orc_matrix8' [-Werror,-Wmissing-prototypes] 2014-12-09 22:47:31 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: do not use fixed caps on source pad decoders can change the caps on their source pads, so they don't use fixed caps. Having fixed caps can cause renegotiation issues. 2014-12-09 22:46:42 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not use fixed caps on source pad decoders can change the caps on their source pads, so they don't use fixed caps. Having fixed caps can cause renegotiation issues. 2014-12-11 13:45:38 +0100 Thibault Saunier * gst/playback/gstplaybin2.c: playbin: Do not mix up stream type when getting stream combiner element We were always returning the video stream combiner whatever stream type combiner was wanted. 2014-12-11 18:15:02 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: gl: fixup vao and vbo usage for legacy GL 2014-12-10 13:23:23 -0300 Thiago Santos * gst/playback/gstplaybin2.c: playbin2: always unref the combiner sinkpad when removing the srcpad Create a function to do the pad cleanup of the GstSourceCombine struct and use it to not forget to also cleanup the sink pad and fix a memory leak. https://bugzilla.gnome.org/show_bug.cgi?id=741198 2014-12-10 16:42:12 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: video-orc: make RGB pack/unpack faster Avoid all the merging and splitting and use a pair of shifts and or 2014-12-11 01:53:15 +1100 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add GST_VIDEO_DECODER_CAST macro It's used in some macros already, so let's make it exist. 2014-11-25 13:31:48 +0100 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: No remove child if destroyed. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=740730 2014-12-08 18:53:35 +1100 Jan Schmidt * tests/icles/test-reverseplay.c: reverse-play: fix seek to end when starting reverse Start reverse playback by actually seeking to the end of the file. 2014-12-06 21:02:37 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: set bits and format after conversion Update the current format, bits and pstride. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741187 2014-12-05 22:09:45 -0300 Thiago Santos * gst-libs/gst/video/video-converter.c: video-converter: free dither_lines Avoid a memory leak 2014-12-05 18:16:53 -0500 Nicolas Dufresne * configure.ac: Bump ORC requirement to 4.22.1 We now depend on git commit f1cfa5, "orcc: allow setting custom backup function" 2014-12-05 14:51:28 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: use custom backup function Use the new orc feature to set a custom backup function. 2014-12-05 12:18:42 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc.orc: video-converter: improve matrix8 function Avoid using a constant. Avoid doing saturated adds, results are not supposed to overflow here. Rework the C backup function a little in preparation for custom backup functions in ORC. See https://bugzilla.gnome.org/show_bug.cgi?id=741015 2014-11-28 15:06:27 +0100 Mathieu Duponchelle * gst-libs/gst/audio/gstaudiodecoder.c: * tests/check/libs/audiodecoder.c: audiodecoder: Push pending events before sending EOS. Segments are added to the pending events, and pushing a segment is mandatory before sending EOS. + Adds a test. https://bugzilla.gnome.org/show_bug.cgi?id=740853 2014-11-27 05:53:20 +0100 Mathieu Duponchelle * ext/ogg/gstoggdemux.c: oggdemux: Fix seeking before the first frame. The previous code was setting keytarget to target to make sure the keyframe found for each pad was indeed before the target. Then if target == keytarget, it assumed a keyframe had been found, which was not the case if target was before the first frame in the file. This patch checks that a keyframe was indeed found, and if not seeks to 0, without bisecting again. Assuming default gst qa assets in $HOME/gst-validate seek_before_first_frame.scenario: description, seek=true, handles-states=true pause, playback-time=0.0 seek, playback-time=0.0, start=0.0, flags=accurate+flush seek, playback-time=0.0, start=0.01, flags=accurate+flush seek, playback-time=0.0, start=0.1, flags=accurate+flush GST_DEBUG=*theoradec*:2 gst-validate-1.0 playbin \ uri=file://$HOME/gst-validate/gst-qa-assets/medias/ogg/vorbis_theora.0.ogg \ --set-scenario seek_before_first_frame.scenario https://bugzilla.gnome.org/show_bug.cgi?id=741097 2014-10-08 08:54:57 +0200 Edward Hervey * gst/playback/gstplaybin2.c: playbin: Only check sinks which are in >= GST_STATE_READY Otherwise we endup with bogus caps intersection (from the pad template caps and not from what the actual hardware/device supports) https://bugzilla.gnome.org/show_bug.cgi?id=738131 2014-12-03 10:15:18 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix chroma resampling check Decide if we need chroma resampling by checking if we have a progressive or interlaced chroma resampler. 2014-12-03 10:14:34 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: only do dithering when needed Only do dithering when one of the quantizers is > 1. 2014-12-02 15:58:00 -0500 Chad * gst/audiorate/gstaudiorate.c: audiorate: Use gst_util_uint64_scale_int_round() Using gst_util_uint64_scale_int() causes slight drift which accumulates over time. https://bugzilla.gnome.org/show_bug.cgi?id=741045 2014-12-02 13:39:52 +0100 Wim Taymans * win32/common/libgstvideo.def: defs: update defs file 2014-12-02 11:51:19 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: videoconvert: add dither-bits option Fix the dither option. Add a new option to set the quantizer 2014-12-02 11:48:11 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: add where orc functions could go Add the disabled orc functions in #if 0 lines for when we can enable them. 2014-12-02 11:40:59 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-dither.c: video-converter: add dithering Use the new dither object to perform dithering. Add option to select dithering method. Add option to quantize to a specific value 2014-12-02 11:39:42 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add palette when needed 2014-12-02 11:32:28 +0100 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-dither.c: * gst-libs/gst/video/video-dither.h: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video.h: video-dither: add video dither helper object Add a new object that implements various dithering methods. 2014-12-01 22:28:52 -0300 Thiago Santos * tools/gst-play.c: gst-play: do not set system's volume to 100% by default Only change the volume if requested 2014-12-01 09:50:24 +0100 Thomas Klausner * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Use EPIPE instead of ESTRPIPE if the latter does not exist NetBSD does not have ESTRPIPE. https://bugzilla.gnome.org/show_bug.cgi?id=740952 2014-11-28 14:28:06 +0100 Sebastian Dröge * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggmux.c: * ext/vorbis/gstvorbisdec.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/id3v2frames.c: * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/video-converter.c: * gst/adder/gstadder.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultioutputsink.c: * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: * tools/gst-discoverer.c: Don't compare booleans for equality to TRUE and FALSE TRUE is 1, but every other non-zero value is also considered true. Comparing for equality with TRUE would only consider 1 but not the others. 2014-11-16 15:54:56 +0100 Thibault Saunier * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst/encoding/gstencodebin.c: * win32/common/libgstpbutils.def: encodebin: Add a way to disable caps renegotiation for output stream format In some cases, the user might want the stream outputted by encodebin to be in the exact same format during all the stream. We should let the user specify when this is the case. This commit add some API in the GstEncodingProfile to determine whether the format can be renegotiated after the encoding started or not. API: gst_encoding_profile_set_allow_dynamic_output gst_encoding_profile_get_allow_dynamic_output https://bugzilla.gnome.org/show_bug.cgi?id=740214 2014-11-28 13:31:39 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: remove libs/video and videoconvert test from valgrind blacklist Seem to work fine. 2014-11-28 13:29:37 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: don't run orc/* tests under valgrind They just seem to blow up for some reason that needs investigating. 2014-11-28 13:11:33 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gsttagmux.c: tagmux: fix criticals when there are no tags at all 2014-11-21 01:47:35 +1100 Jan Schmidt * tests/icles/test-reverseplay.c: test-reverseplay: Use uridecodebin for input Work with any installed URI handler Add some more debug output 2014-11-28 10:27:28 +0100 Sebastian Dröge * gst-libs/gst/video/video-frame.c: video-frame: Mapping a frame with inconsistent values between GstVideoMeta and GstVideoInfo is a bug It will cause the frame to be initialized with inconsistent values that then later can cause crashes or any other kind of interesting and hard to debug bugs. 2014-11-28 10:23:55 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: Failure to map a video frame is not just a warning Also add some warning debug output if mapping a output buffer fails 2014-11-28 10:22:44 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Failure to map a video frame is not just a warning 2014-11-27 21:05:45 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gldisplay: implement runtime GL api filtering Needed so that the pipeline/application can limit the choice of GL api to what it supports 2014-10-17 15:22:24 +0200 Matthew Waters * ext/gl/gstglmixer.c: gl: add a sync meta for synchronizing across GL contexts A context can create a GLsync object that can be waited on in order to ensure that GL resources created in one context are able to be used in another shared context without any chance of reading invalid data. This meta would be placed on buffers that are known to cross from one context to another. The receiving element would then wait on the sync object to ensure that the data to be used is complete. 2014-11-14 00:20:10 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add support for gl3 2014-11-27 21:22:44 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Minor cleanup 2014-11-26 15:02:14 +0100 Sebastian Dröge * gst/compositor/compositor.c: * gst/compositor/compositorpad.h: compositor: Implement rescaling of the input via pad properties compositor has now the same interface as glvideomixer. 2014-11-27 20:34:25 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Copy over more fields from the relevant video-info gst_video_info_set_format() will reset the complete video-info, but we want to keep values like the PAR, colorimetry and chroma site. Otherwise we risk setting different values on the srcpad caps than what is actually inside the buffers. 2014-11-27 20:25:29 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Directly use the converters video-info instead of recalculating it 2014-11-27 19:52:20 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do source pad negotiation only from the aggregated function Otherwise we might negotiate from the sinkpad streaming threads at the same time as on the srcpad streaming thread, and then all kinds of crazy bugs happen that don't make any sense at all. 2014-11-27 16:43:39 +0100 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: audiomixer: Do not try to resize a buffer to a negative size on EOS 2014-11-27 18:46:03 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoconvert: Hide all conversion related fields And do not delay the setting of the conversion_info https://bugzilla.gnome.org/show_bug.cgi?id=740768 2014-11-26 18:24:05 +0100 Thibault Saunier * ext/gl/gstglmixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Expose vmethods to set converters and prepare/clean frames This gives more flexibility to the subclasses and permits to remove the GstVideoAggregatorClass->disable_frame_conversion ugly API. WARNING: This breaks the API as it removes the disable_frame_conversion field API: + GstVideoAggregatorClass->find_best_format + GstVideoAggregatorPadClass->set_format + GstVideoAggregatorPadClass->prepare_frame + GstVideoAggregatorPadClass->clean_frame - GstVideoAggregatorClass->disable_frame_conversion https://bugzilla.gnome.org/show_bug.cgi?id=740768 2014-10-31 11:01:47 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Let a full renegotiation happen after removing the last pad With the current code, we will end up setting the preferred downstream format as the srcpad format, and it might not be accepted by the next sinkpad to be added. We should instead let the next sinkpad reconfigure everything. 2014-11-27 17:10:31 +0100 Edward Hervey * common: Automatic update of common submodule From 7bb2bce to ef1ffdc 2014-11-27 15:28:36 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video-blend: make use of x offset when unpacking overlay image pixels Now that it's implemented we can use it, which is a minor optimisation when the image to overlay gets cropped on the left. 2014-11-27 15:04:12 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-format.c: video-format: sprinkle some 'restrict' keywords in pack/unpack functions In cases where we just call orc directly this is somewhat superfluous, but let's do it anyway for consistency. In other cases the compiler can hopefully use this to optimise memory access a little. 2014-11-27 13:01:03 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: handle x offset in unpack Add support for x offset in almost all unpack methods. Fix naming of source and dest pixels. Add const to source pixels. 2014-11-27 10:51:58 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: improve unpack i420 unpack_i420 does not need extra code to handle odd widths, the orc code already handles it fine. 2014-11-27 09:45:07 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: use old property name Unbreak ABI by changing to the old property name again. https://bugzilla.gnome.org/show_bug.cgi?id=740798 2014-11-25 13:39:07 +0100 Thibault Saunier * gst/playback/gstdecodebin2.c: decodebin: Analyze source pad before setting to PAUSED for 'simple demuxers' Before we were setting them to PAUSED and (much) later connecting to their source pad caps notify signal. There was a race where that demuxer was pushing a caps and later a buffer on its source pad when we were not even connected to its source pad caps notify signal leading to decodebin missing the information and not keeping on building the pipeline on CAPS event thus the demuxer was posting an ERROR (not linked) message on the bus. This need to be done for 'simple demuxers' because those have one ALWAYS source pad, not like usual demuxers that have several dynamic source pads. A "simple demuxer" is a demuxer that has one and only one ALWAYS source pad. https://bugzilla.gnome.org/show_bug.cgi?id=740693 2014-11-25 16:46:50 +0100 Mathieu Duponchelle * gst/playback/gstdecodebin2.c: decodebin2: Take STREAM_LOCK before sending sticky events. There was a race where: 1) we would put the element to PAUSED 2) It would get data sent to it from upstream 3) It would thus send caps 3) caps_notify_cb would continue autoplugging 4) caps would flow downstream, the last pad would get exposed 5) we were still not done sending the sticky events Taking the stream lock on the new element's sinkpad and only releasing it when sticky events have all been sent prevents the caps from reaching the source pad of the element before we're all set. https://bugzilla.gnome.org/show_bug.cgi?id=740694 2014-08-06 19:31:25 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: detect mp4 common file format variant Used e.g. by UltraViolet. 2014-11-26 13:06:21 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Also sync pad properties to the controller if conversion is disabled 2014-11-26 12:35:52 +0100 Sebastian Dröge * gst/compositor/compositor.c: * gst/compositor/compositorpad.h: compositor: Remove unused zorder pad property It's handled in videoaggregator already. 2014-11-25 22:01:08 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: alsasrc: debug message fixes In the same vein as 74e9640a. 2014-11-25 18:53:55 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: GstVideoMeta is supported just fine, tell upstream about that Also provide a GstVideoBufferPool to upstream just in case. 2014-11-25 17:42:07 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scale: combine adds when max_taps equals combine size When the amount of pixels/lines matches the amount we can combine, combine the adds and multiplies and do the scale as a separate operation. 2014-11-25 17:25:02 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: combine scaling operations Combine add and scale of multiple lines/pixels to reduce the amount of read and writes to temporary memory. 2014-11-25 14:45:23 +0000 Tim-Philipp Müller * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: timeoverlay: add "time-line" property So we can also show running time or stream time, not just the buffer time stamps. 2014-11-25 11:54:51 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: add property to do scaling after gamma-decode 2014-11-25 11:28:42 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: add more scaling filters Adjust the filter parameters so that they use the same number of taps and method as the old ones. Add some new filters 2014-11-25 10:36:13 +0100 Wim Taymans * gst-libs/gst/video/video-resampler.c: video-resampler: remove print 2014-11-25 10:32:02 +0100 Wim Taymans * gst-libs/gst/video/video-resampler.c: video-resampler: improve variable taps Improve quality of variable taps on all methods by reusing the lanczos parameters where possible. 2014-11-25 09:11:31 +0100 Wim Taymans * gst-libs/gst/video/video-resampler.c: video-resampler: Fix lanczos parameters for variable taps when using variable taps and when we are limiting the number of taps, recalculate the lanczos parameters to match the clamped value. Set the max number of taps to 128 2014-11-25 11:38:34 +0300 Andrei Sarakeev * gst/playback/gstplaysink.c: playsink: Reset mute property of the sink to playsink's value when setting up the audio chain Otherwise the following can happen: 1. set mute=true 2. play media1 (Ok) 3. play media without audio (audiochain removed) 4. play media2 (audiochain created, mute=*false*) https://bugzilla.gnome.org/show_bug.cgi?id=740675 2014-11-25 11:38:34 +0300 Andrei Sarakeev * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: fix typo in header file https://bugzilla.gnome.org/show_bug.cgi?id=740675 2014-11-25 09:08:18 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for audio/x-audible 2014-11-25 01:02:28 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefind: improve 'audible' audio typefinder a little Don't return NEARLY_CERTAIN just based on 4 bytes. Also change media type to audio/x-audible. https://bugzilla.gnome.org/show_bug.cgi?id=715050 2013-11-23 11:36:43 +1000 Jonathan Matthew * gst/typefind/gsttypefindfunctions.c: typefindfunctions: add audio/audible typefinder https://bugzilla.gnome.org/show_bug.cgi?id=715050 2014-06-16 11:46:18 +0200 Branislav Katreniak * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Change the log messages in xrun_recovery() from DEBUG to WARNING xrun_recovery() runs when there is an error https://bugzilla.gnome.org/show_bug.cgi?id=740615 2014-11-24 12:47:11 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: keep track of required temp lines Make a small object to hold a pool of allocated temp lines. Keep track of how many temp lines each conversion stage needs and use this to allocate just enough temp lines from the temp lines object. from the temp lines object. 2014-11-24 12:45:02 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: use err line in fastpath Use the error line for temporary storage in the fastpath so that we don't have to allocate any other temp lines. 2014-11-05 20:18:06 +1100 Matthew Waters * ext/gl/gstglmixer.c: glupload: rearchitecture for non GLMemory inputs/outputs Allows other memory types to be implemented/returned/used by the caller. 2014-11-22 21:51:33 +0100 Matej Knopp * gst-libs/gst/video/gstvideoencoder.c: videoencoder: don't complain about PTS != DTS on keyframes It is valid for streams with b-frames https://bugzilla.gnome.org/show_bug.cgi?id=740556 2014-11-21 16:06:54 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: handle mixed interlaced When dealing with mixed interlaced, setup a scaler and chroma-resampler for both interlaced and progressive frames and switch between them depending on the interlace mode of the input frame. 2014-11-21 16:04:11 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: Cleanup options parsing Cleanup option parsing Add some debug 2014-11-21 15:59:47 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: there is no need to apply x offset to temp lines 2014-11-21 15:58:34 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: ensure both fields have the same number of taps 2014-11-21 11:15:04 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: rework the options a little Rework the options a little to make it nicer to set defaults. 2014-11-21 11:12:50 +0100 Wim Taymans * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-resampler.h: video-resampler: add option to limits taps Add an option to limit the number of taps to use in automatic mode. The problem is that for lanczos, we might use more taps than what we can handle with the current precision. Rework the other options a little to make it nicer to set defaults. 2014-11-20 18:20:00 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update orc files 2014-11-20 15:53:23 +0100 Edward Hervey * win32/common/libgstvideo.def: win32: Update defs file 2014-11-19 21:18:04 +0900 Hyunjun Ko * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: fix warning on param name mismatch https://bugzilla.gnome.org/show_bug.cgi?id=740013 2014-11-19 17:02:40 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't output 0-duration buffers at the segment end https://bugzilla.gnome.org/show_bug.cgi?id=740376 2014-11-18 00:04:59 +1100 Jan Schmidt * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/test-reverseplay.c: tests: Add reverse playback verification test Plays a requested URI forward to EOS, then backward and checks that the same timestamp range(s) are covered. 2014-11-12 15:23:37 +0100 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Operate in a zero-latency mode if drop-only is set to TRUE There's no reason why we would have to wait for the next buffer to decide whether to output the current one or not. We just have to check if the current one is earlier than our expected next time, which is the previous frame timestamp plus the expected frame duration. https://bugzilla.gnome.org/show_bug.cgi?id=740018 2014-11-19 14:38:03 +0100 Sebastian Dröge * gst-libs/gst/video/video-converter.c: video-converter: Use correct enum, GstVideoFormat instead of GstFormat 2014-11-19 13:25:13 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix size check Add some debug, fix size check that decides what scaling to do first and when to do conversion. 2014-11-19 12:53:03 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: avoid primaries conversion when asked Don't do conversion between primaries when the option is disabled. Only do some matrix code when needed. 2014-11-19 12:41:21 +0100 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: add a note about subsampled formats Add a note about gst_video_info_set_format() and interlaced formats. 2014-11-19 12:05:02 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-info.c: video-info: handle interlaced size correctly Refactor GstVideoInfo init, make function to set default colorimetry. Call fill_planes after we configure the GstVideoInfo with parameters from the caps. The size of the chroma planes for interlaced vertically subsampled formats needs to be rounded up to 2, we have 2 fields with each the same anount of chroma lines. 2014-11-19 12:04:02 +0100 Wim Taymans * gst-libs/gst/video/video-color.c: video-color: return FALSE on unparsable colorimetry 2014-11-19 09:40:05 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: handle unpack interlaced subsampled formats For interlaced vertically subsampled formats the check for even lines needs to take into account the two fields. 2014-11-19 09:39:32 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix interlaced shift 2014-11-19 09:30:14 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: keep a small backlog of lines Allow lines to jump backwards slightly, usefull for interlaced content. 2014-11-19 09:28:52 +0100 Wim Taymans * gst-libs/gst/video/video-chroma.c: video-chroma: Fix interlaced chroma resampling Use the interlaced flag to select the right resampler. 2014-11-18 16:36:08 +0100 Wim Taymans * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-scaler.c: video: add some more debuging 2014-11-18 16:35:13 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix interlacing some more Use the right phase. Take the right lines from interlaced content. 2014-11-18 12:53:06 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video-converter: fix dither method 2014-11-18 12:52:27 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: fix some leaks And remove some unused fields. 2014-11-18 12:20:26 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video-converter: add support for gamma and primaries Keep only 1 structure with all matrix information. Add structure to hold gamma information. Add more options to control gamma, primaries and color matrix handling. Add functions to compute transformations to and from XYZ and use this to convert between primaries. Merge gamma into the convert to and from RGB stage. Fix border val. Simplify the fastpath table, remove unused fields, add some more checks. 2014-11-18 11:09:40 +0100 Wim Taymans * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video-color: add method to get primaries info 2014-11-18 11:08:10 +0100 Wim Taymans * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-info.c: video-color: fix default 601 primaries 2014-11-18 11:06:20 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix interlaced taps setup 2014-11-14 09:15:22 +0100 Wim Taymans * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-info.c: video-color: make sRGB colorimetry the default for RGB 2014-11-13 12:03:26 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: split YUV to and from RGB conversions Prepare for doing full gamma corrected conversion and scaling by first splitting the conversions from and to RGB into separate steps. split scaling in downscaling and upscaling steps to be performed before and after conversion respectively. 2014-11-13 12:02:07 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: don't convert too much because we do conversion after downscaling we only need to convert the smallest width. 2014-11-13 12:00:05 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc.orc: video-converter: add orc splat functions to draw border 2014-11-17 14:05:01 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix up QoS handling for live sources Only attempt adaptive drop when we are not live https://bugzilla.gnome.org/show_bug.cgi?id=739996 2014-11-05 21:52:44 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: Revert "basetextoverlay: Fix segfault when overlay outside the frame" This is not correct. overlay->silent is a property and we should not just flip the property forever because one text we render is outside of the frame. The next one might not be, the positioning properties can be changed after all. The lower layers should handle clipping, and now do. This reverts commit 1cc311156cc3908d1d9888fbcda67305fc647337. https://bugzilla.gnome.org/show_bug.cgi?id=738984 https://bugzilla.gnome.org/show_bug.cgi?id=739281 2014-11-05 21:46:47 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: Revert "basetextoverlay: segfault when xpos >= video size" This is not right, even if it might avoid a crash. We don't want to just set xpos/ypos to 0 in those cases. Clipping should be done properly, see bug #739281 for that. This reverts commit 900d0267d511e9553eec44d948d7e33ead7dc903. https://bugzilla.gnome.org/show_bug.cgi?id=738984 https://bugzilla.gnome.org/show_bug.cgi?id=739281 2014-11-17 18:50:04 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: add read-only context property 2014-11-16 23:26:45 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video-blend: minor optimisation Only need to run matrix on those pixels which will actually be used. 2014-11-16 19:28:54 +0000 Tim-Philipp Müller * tests/icles/Makefile.am: * tests/icles/test-overlay-blending.c: tests: make overlay blending test slightly less boring 2014-11-16 16:34:31 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video-blend: fix clipping of overlay images on the left Fix clipping of images that are partially left of the video surface, they would get clipped on the right side instead of the left side, because the video unpack functions currently ignore the x offset parameter. Work around that until that is implemented. https://bugzilla.gnome.org/show_bug.cgi?id=739281 2014-11-16 16:31:45 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video-blend: fix allocation of temp src line for wide sources Fix allocation of temporary source line buffers for source images that are wider than the video overlay surface. 2014-11-16 01:34:09 +0000 Tim-Philipp Müller * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/test-overlay-blending.c: tests: add visual overlay composition blending test Shows visual result of blending a logo on top of a video surface, esp. when the logo is partially outside of the video surface and needs to be clipped. https://bugzilla.gnome.org/show_bug.cgi?id=739281 2014-11-16 01:32:55 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: fix leak in video unit test 2014-11-10 16:36:35 +0530 Vineeth T M * gst-libs/gst/video/video-blend.c: video-blend: fix blending of rectangles partially or fully outside of the video In case of overlay being completely or partially outside the video frame, the offset calculations are not right, which resulted in the overlay not being displayed as expected, or crashes due to invalid memory access. When the overlay rectangle is completely outside, we need not render the overlay at all. For partial display of overlay rectangles, src_yoff was not being calculated, hence it was always clipping the bottom half of the overlay, By calculating the src_yoff, now the overlay is clipped properly. https://bugzilla.gnome.org/show_bug.cgi?id=739281 2014-11-10 12:12:42 +0530 Vineeth T M * tests/check/libs/video.c: tests: video: add video blend test Add test to check rendering of overlays of different sizes that are completely or partially outside the video surface. Once the overlay is blended to the video, verify if the position of the blended overlay is as expected, by comparing the pixels of the blended video with the expected values. https://bugzilla.gnome.org/show_bug.cgi?id=739281 2014-11-15 23:15:06 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update to git 2014-11-15 23:13:42 +0000 Tim-Philipp Müller * gst/gio/gstgiostreamsink.c: * gst/gio/gstgiostreamsrc.c: * gst/playback/gstplaybin2.c: docs: fix some gtk-doc warnings Deprecated entities found in documentation for xyz:Long_description . 2014-11-12 09:57:38 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: take offset into account when unpacking When we can directly take the input line from the source frame when unpacking, also take into account the x offset. 2014-11-12 09:57:12 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add some notes 2014-11-11 16:19:03 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: defs: update defs and docs 2014-11-11 16:11:15 +0100 Wim Taymans * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * tests/check/libs/video.c: video-color: add gamma encode/decode functions Add functions to encode and decode gamma. Add unit test to check that encode and decode are eachothers inverse and that the limits are respected. 2014-11-11 14:23:55 +1100 Matthew Waters * ext/gl/gstglmixer.c: gl: remove the width/height fields from the caps to support frame resizing It was previously only occuring with sysmem caps features https://bugzilla.gnome.org/show_bug.cgi?id=739334 2014-11-10 14:53:13 +0100 Wim Taymans * tests/check/libs/video.c: test: add scaling test Sort pack and unpack performance measurements 2014-11-10 12:01:48 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc.orc: video-orc: update disted file and disable one failing function 2014-10-24 17:08:43 +0200 Wim Taymans * gst/videoscale/Makefile.am: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_fill_borders.h: * gst/videoscale/vs_image.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_lanczos.c: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: * tests/check/Makefile.am: videoscale: port to new API 2014-11-10 11:40:11 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: video-orc: use faster saturating conversions saturating conversions are generally faster. 2014-11-07 15:45:04 +0100 Wim Taymans * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-orc.orc: video-chroma: add ORC version of UP_H2_CS It is however slower than the C version and thus disabled. 2014-11-09 14:44:36 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for Apple Core Audio Format https://bugzilla.gnome.org/show_bug.cgi?id=739840 2014-11-09 12:53:32 +0100 Peter G. Baum * gst/typefind/gsttypefindfunctions.c: typefind: recognize Apple Core Audio Format (CAF) Specification 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=739840 2014-11-09 10:47:14 +0100 Sebastian Dröge * tests/check/pipelines/capsfilter-renegotiation.c: capsfilter-renegotiation: Use assertions from libcheck for more information on failures 2014-11-07 12:06:10 +0100 Wim Taymans * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: * tests/check/libs/video.c: video-chroma: ORCify 2x vertical upsampling Make an ORC version of the 2x vertical upsampling code. Improve unit tests, test chroma up and down sampling. memset buffer in conversion to make valgrind happy. 2014-11-06 14:14:22 +0000 William Manley * gst/tcp/gstmultihandlesink.c: * gst/tcp/gsttcpserversink.c: tcpserversink: Don't leak a `GSocket` and a `GInetSocketAddress` when accepting a connection. Discovered by `make check-valgrind` with the new `socketintegrationtest`. https://bugzilla.gnome.org/show_bug.cgi?id=739544 2014-11-03 01:08:27 +0000 William Manley * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: * tests/check/pipelines/tcp.c: tests: Add TCP pipelines test There don't seem to be any unit tests for the socket handling elements. As I am about to attempt some refactorings I've added some basic tests which exercise some of the happy-paths in tcpclientsrc, tcpserversrc, tcpserversink and tcpclientsink. They should let me know if I've caused serious breakage. They are far from exhaustive but are sufficient for me to have caught a few memory-leaks in the existing code. https://bugzilla.gnome.org/show_bug.cgi?id=739544 2014-11-06 18:18:50 +0100 Wim Taymans * tests/check/libs/video.c: tests: add video conversion test Go through all conversions and make a list of performance. 2014-11-06 18:13:12 +0100 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: use h-cosited chroma for HD video by default 2014-11-06 18:09:04 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: clamp lines 2014-11-06 16:29:16 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video-orc: update disted files 2014-11-06 16:18:25 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc.orc: video-converter: ORCify 8<->16 conversion 2014-11-06 15:30:02 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: unpack into the destination when needed Make sure we write into the destination line when we can propose the dest allocator. 2014-11-06 15:29:50 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add more debug 2014-11-06 15:01:27 +0100 Sebastian Dröge * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: Update disted orc files 2014-11-06 13:08:42 +0100 Wim Taymans * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-orc.orc: * tests/check/libs/video.c: video-chroma: optimize chroma subsampling a little Combine multiplies in 4x filters. Rename conversion functions to make them nicer in orc. Add ORC versions for various downsampling algorithms Add unit test chroma resampler 2014-11-06 10:43:11 +0100 Wim Taymans * tests/check/libs/video.c: tests: make pack/unpack test Make a more complete pack/unpack test, check if the image after pack/unpack has the same color and precision, and has correctly duplicated subsampled pixels. 2014-11-06 10:42:09 +0100 Wim Taymans * tests/check/libs/video.c: tests: get the correct number of video formats Make a method to get the number of formats (including the last one). 2014-11-06 09:44:14 +0100 Wim Taymans * gst-libs/gst/video/video-format.h: video-format: update some docs and add a FIXME(2.0) 2014-11-06 09:38:06 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: add range extension to BGR_10XE format 2014-11-06 09:34:59 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc.orc: video-format: fix pack of 4:2:0 formats When packing 4:2:0 formats, we need to take the chroma from the even lines, for the odd lines we only take luminance. 2014-11-06 09:32:21 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix range extension of UYVP We need to shift the top 6 bits to the lower 6 bits 2014-11-06 09:28:06 +0100 Wim Taymans * gst-libs/gst/video/video-chroma.c: video-chroma: do h subsampling after v subsampling We only need to do the horizontal subsampling on 1 line if we do it after vertical subsampling and we also avoid doing vertical subsampling on unused pixels. 2014-11-06 09:39:08 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: dist header file needed for ABI checks on powerpc32 Fixes 'make check' on debian powerpc32 buildbot: libs/libsabi.c:95:26: fatal error: struct_ppc32.h: No such file or directory 2014-11-05 04:34:44 +0900 Danny Song * tests/check/elements/adder.c: test : fix leaks in adder unit test https://bugzilla.gnome.org/show_bug.cgi?id=739640 2014-11-05 11:54:31 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: keep separate lines with border Make separate with a border around them so that we can avoid a memcpy. 2014-11-05 11:52:21 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: avoid memcpy when not needed 2014-11-05 11:51:44 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: pass output line correctly 2014-11-04 09:30:45 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: rework the converter to allow more optimizations Rework the converter, keep track of the conversion steps by chaining the cache objects together. We can then walk the chain and decide the optimal allocation pattern. Remove the free function, we're not going to need this anytime soon. Keep track of what output line we're constructing so that we can let the allocator return a line directly into the target image when possible. Directly read from the source pixels when possible. 2014-11-04 11:03:50 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix temp line allocation We need to allocate the templine with the amount of pixels we are going to handle, which we only know for the vertical resampler when we are asked to resample. 2014-11-04 11:02:49 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix taps in interlaced mode 2014-11-04 11:01:52 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix phases in interlaced mode 2014-11-04 09:29:58 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: video-orc: fix v_2tap_u16 2014-11-03 16:18:41 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add extra pixels for the border We need extra pixels for the border. 2014-11-03 16:13:23 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Swap source/destination parameters of gst_video_converter_frame() 2014-11-03 15:36:26 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: add support for 16bits formats Add scaler functions for 16 bits formats. Rename the scaler functions so that 16bits versions don't look too weird. Remove old unused h_2tap functions Fix v_ntap functions, it was using 1 tap too little. 2014-11-03 15:33:24 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: Add support for 16 bits formats Rework the way we track the current state of the video through the different conversion phases and use this to make sure we use the right format and pstride where needed. 2014-10-22 13:37:40 +0100 William Manley * gst-libs/gst/allocators/gstdmabuf.c: docs: gst_dmabuf_allocator_alloc: Improve documentation https://bugzilla.gnome.org/show_bug.cgi?id=739545 2014-11-03 10:07:56 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: video-orc: comment out unused function A faster version of 4tap horizontal scaling causes segfaults in ORC presumably because it uses too many registers so disable it to avoid crashing in the ORC tests. 2014-11-02 21:45:30 +0100 Andreas Frisch * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: return available factory CAPS instead of ANY on CAPS query https://bugzilla.gnome.org/show_bug.cgi?id=739536 2014-11-03 08:12:44 +0100 Sebastian Dröge * gst-libs/gst/video/video-scaler.c: video-scaler: Fix compiler warning video-scaler.c:151:58: error: implicit conversion from enumeration type 'GstVideoScalerFlags' to different enumeration type 'GstVideoResamplerFlags' [-Werror,-Wenum-conversion] gst_video_resampler_init (&scale->resampler, method, flags, out_size, ~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~ 2014-11-01 20:08:01 +0000 Luis de Bethencourt * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: Do not use deprecated gtk-doc 'Rename to' tag GObject introspection GTK-Doc tag "Rename to" has been deprecated, changing to rename-to annotation. https://bugzilla.gnome.org/show_bug.cgi?id=739514 2014-11-01 14:58:13 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: video: fix some g-i / gtk-doc warnings 2014-11-01 14:47:26 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update disted orc backup functions Fixes build without orc. 2014-11-01 14:28:55 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-blend.c: video: add video blend helper functions to docs I don't think those were ever meant to be made public, but they are, so we might as well document them. 2014-11-01 13:14:32 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: ORCify vertical ntap function 2014-11-01 12:58:01 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: handle 4tap interlaced 2014-10-31 16:53:06 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video-orc: update dist files 2014-10-31 16:49:43 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: add ORC optimized ntap horizontal scalers 2014-10-29 16:28:28 +0530 Ravi Kiran K N * tests/icles/playback/test.c: * tests/icles/playback/test2.c: * tests/icles/playback/test4.c: tests/playback: quit from main loop Listen for eos and error signal to quit main loop. https://bugzilla.gnome.org/show_bug.cgi?id=739346 2014-10-29 16:26:07 +0530 Ravi Kiran K N * tests/icles/playback/test2.c: * tests/icles/playback/test4.c: tests/playback: correct state change checking Correct the test apps check if result of state change is not failure as the state change can happen async https://bugzilla.gnome.org/show_bug.cgi?id=739346 2014-10-31 22:52:43 +1100 Jan Schmidt * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: Update disted orc files for new functions. Fixes the build when building without ORC 2014-10-31 12:52:07 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: advertise support for changing input caps mid-stream https://bugzilla.gnome.org/show_bug.cgi?id=739334 2014-10-31 11:07:06 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: align offsets to subsampling Only apply an offset that is a multiple of the subsampling. To handle arbitrary offsets in the future, we need to be able to chroma-resample part of the borders. 2014-10-31 10:38:15 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: clamp output lines 2014-10-31 10:34:46 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: add alignment checks Some of the ORC functions need specific alignment 2014-10-31 10:33:42 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: fix offset check 2014-10-30 18:41:01 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: also chroma up/downsample when scaling 2014-10-30 18:40:43 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: clamp input lines correctly 2014-10-30 23:53:39 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-scaler.c: video-scaler: fix build without orc https://bugzilla.gnome.org/show_bug.cgi?id=739433 2014-10-30 17:30:33 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add border color 2014-10-30 16:57:20 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video-converter: add support for src/dest regions Add support for cropping the source and placing the converted image into a rectangle in the destination frame. Add an option to add a border and border color. 2014-10-30 14:49:05 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: remove storage of never used values These two values are stored just before the function returns and they go out of scope. 2014-06-10 09:33:40 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: update output segment stop time to match clipped samples This will let oggmux generate a granpos on the last page that properly represents the clipped samples at the end of the stream. 2014-06-05 14:50:15 +0100 Vincent Penquerc'h * ext/vorbis/gstvorbisenc.c: vorbisenc: push an updated segment stop time when we know it When encoding, libvorbis will tell us how many samples are encoded in the buffer it returns. This number may be less than the maximum of samples in the block, if this is the last packet. In we have no segment end time, we set it to the end time of that last sample to tell downstream that the buffer contains less samples. 2014-06-05 14:54:31 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: set correct granpos on last page when samples are clipped Samples may be clipped at the end, and this is conveyed by a granulepos that's smaller than it would otherwise be. Use the segment stop time to detect this, and calculate the right granulepos. 2014-06-05 11:26:08 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: fix last buffer timestamp when samples are clipped The end of a stream can be clipped by setting the granulepos of the last page to a lower value that it otherwise would be. 2014-10-30 14:48:45 +0100 Wim Taymans * tests/check/libs/video.c: tests: fix test 2014-10-30 23:08:00 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: don't get the current caps from GstVideoInfo for the srcpad It's missing the caps features needed. 2014-10-03 12:42:46 +0100 Vincent Penquerc'h * tools/gst-discoverer.c: gst-discoverer: error out on failure to copy This should not really fail, but let's check return value anyway as it guards against future changes. Coverity 1135731 2014-10-03 12:28:30 +0100 Vincent Penquerc'h * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: add a const where appropriate 2014-10-03 12:08:05 +0100 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: remove unneeded test We've already bailed out if we have less than 5 bytes. Coverity 1226441 2014-10-30 11:33:17 +0000 Tim-Philipp Müller * win32/common/libgstvideo.def: Update libgstvideo.def for resampler -> video_resample renaming 2014-10-30 11:46:14 +0100 Wim Taymans * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: add more ORC functions Add the old ORC functions for nearest and linear. Label them as Low quality because they are not as accurate but ORC lacks opcodes to express this for now. 2014-10-30 11:43:52 +0100 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-resampler.c: * gst-libs/gst/video/video-resampler.h: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: video-scaler: rename resampler to video-resampler Prefix the resampler with video-. It we would like to reuse the resampler for audio later, we can copy/move it and deprecate this one. 2014-10-29 17:38:33 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: video-scaler: remove color range argument We just need to clip to the format limits, if there is extra headroom in the range we can use that without problems. 2014-10-29 17:14:51 +0100 Wim Taymans * win32/common/libgstvideo.def: defs: update defs 2014-10-29 16:20:56 +0100 Wim Taymans * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video-scaler.c: video-scaler: add ORC optimized versions Add ORC optimized versions of 2 and 4tap vertical scaling. Provide a high quality 12 bits and a low quality 6 bits version. 2014-10-29 16:13:02 +0100 Wim Taymans * gst-libs/gst/video/video-scaler.c: video-scaler: add precision to make_s16_taps 2014-10-29 13:19:00 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: copy config fields When setting a new config, copy all the fields into our own config and not only the ones we know about. 2014-10-29 13:17:39 +0100 Wim Taymans * gst-libs/gst/video/resampler.c: * gst-libs/gst/video/resampler.h: * gst-libs/gst/video/video-scaler.c: resampler: make offset/phase/n_taps uint32 Make various resizer fields uint32 so that we can use them in ORC functions later. 2014-10-27 11:59:14 +0100 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: don't convert too much Always convert the smallest width. 2014-10-27 10:13:47 +0100 Wim Taymans * gst-libs/gst/video/resampler.c: * gst-libs/gst/video/video-scaler.c: * tests/check/libs/video.c: resampler: make shift easier to use 2014-10-26 05:58:56 +0100 Wim Taymans * gst-libs/gst/video/resampler.c: * gst-libs/gst/video/resampler.h: * gst-libs/gst/video/video-converter.c: resampler: add parameters to cubic filter Improve cubic filter and add parameters. Switch to mitchell filter by default. 2014-10-24 16:51:37 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: * tests/check/libs/video.c: video-scaler: add extra options 2014-10-24 16:42:11 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: video-converter: define some options 2014-10-24 16:23:53 +0200 Wim Taymans * gst-libs/gst/video/resampler.c: * gst-libs/gst/video/resampler.h: resampler: add some options 2014-10-24 15:42:31 +0200 Wim Taymans * gst-libs/gst/video/resampler.c: resampler: limit max number of taps Don't use more taps than the input size. 2014-10-24 15:28:22 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: add scaling support Add scaling support for the video-converter object 2014-10-24 15:25:33 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-scaler.c: * gst-libs/gst/video/video-scaler.h: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: video-scaler: add video scaler helper object Add a video scaler object build on top of the resampler. It has implementation to deal with interlaced video as well as horizontal and vertical scaling functions. 2014-10-24 13:01:12 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/resampler.c: * gst-libs/gst/video/resampler.h: video: add generic resampler Add an object that can generate a set of resample filter coefficients. 2014-10-24 12:11:43 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: video-converter: rework the generic converter function Use a LineCache object to track and process lines between unpack, upsample, convert, downsample and pack stages. This simplifies the main core processing function a lot and allows for future additions easily. Add support for interlaced formats in chroma up and downsampling. 2014-10-24 11:45:13 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst/videoconvert/gstvideoconvert.c: video-convert: swap src and dest It is more natural and consistent with other uses. 2014-10-24 11:35:31 +0200 Wim Taymans * gst-libs/gst/video/video-chroma.c: video-chroma: fix typo 2014-10-29 08:27:57 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: glmixer:fix incorrect parameter passed to handle_set_context 2014-10-27 17:56:51 +0100 Sebastian Dröge * common: Automatic update of common submodule From 84d06cd to 7bb2bce 2014-10-23 14:41:13 +0530 Vineeth T M * gst-libs/gst/video/video-blend.c: video-blend: segfault when xpos >= video size When the xpos is given as greater than or equal to the video size, we get a segfault, due to improper condition. Hence adding proper conditions. https://bugzilla.gnome.org/show_bug.cgi?id=738984 2014-10-23 14:38:07 +0530 Vineeth T M * ext/pango/gstbasetextoverlay.c: basetextoverlay: segfault when xpos >= video size When the xpos is given as greater than or equal to the video size, we get a segfault, due to improper condition. Hence adding proper conditions. https://bugzilla.gnome.org/show_bug.cgi?id=738984 2014-10-26 21:31:36 +0000 Tim-Philipp Müller * tests/examples/app/.gitignore: examples: add new appsink example to .gitignore 2014-10-26 11:04:47 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin: fix the autoplugging of parser elements" This reverts commit 2b0d3927410ae24e6b0fce100bd4ebbbe805a66f. This breaks cases where an actual second parser is required after the parser, e.g. to do timestamp corrections. See https://bugzilla.gnome.org/show_bug.cgi?id=738416 2014-10-26 11:04:38 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin: Fix locking" This reverts commit aa94d5dc9aa6ef381da6b60a67f218117c662958. 2014-10-25 18:50:42 +0100 Tim-Philipp Müller * tests/check/elements/audiomixer.c: tests: fix audiomixer test on big endian systems 2014-10-24 13:09:42 +0100 Tim-Philipp Müller * tests/check/elements/playbin-complex.c: tests: fix playbin-complex test on big endian 2014-10-24 13:04:07 +0100 Tim-Philipp Müller * tests/check/libs/struct_ppc32.h: tests: fix expected GstRTSPTimeRange structure size for ABI test for ppc32 Also see https://bugzilla.gnome.org/show_bug.cgi?id=695276 2014-10-24 12:26:40 +0100 Tim-Philipp Müller * tests/check/elements/adder.c: tests: fix adder check on big-endian 2014-10-24 10:17:47 +0100 Tim-Philipp Müller * android/rtsp.mk: * gst-libs/gst/rtsp/.gitignore: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtsp-marshal.list: * gst-libs/gst/rtsp/gstrtspextension.c: rtsp: use generic marshaller 2014-10-24 00:35:22 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: override the caps query in order to 'convert' capsfeatures Otherwise, it is only possible for the sink pads and the src pads to have the exact same caps features. We can convert from any feature to another feature so support that. 2014-10-23 23:55:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: override the accept caps query in order to 'convert' capsfeatures Otherwise, it is only possible for the sink pads and the src pads to have the exact same caps features. We can convert from any feature to another feature so support that. 2014-08-14 23:29:00 +1000 Matthew Waters * ext/gl/gstglmixer.c: gl: propogate other-context using GstContext 2014-10-23 11:22:35 +0200 Thibault Saunier * ext/pango/gstbasetextoverlay.c: basetextoverlay: Make GstBaseTextOverlay::font-desc readable 2014-10-21 13:01:16 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From a8c8939 to 84d06cd 2014-10-21 13:30:27 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Fix locking The chain mutex needs to be locked when looking at chain->elements. Move code around a bit to require only one lock() and unlock(). 2014-10-21 12:58:41 +0300 Sreerenj Balachandran * gst/playback/gstdecodebin2.c: decodebin: fix the autoplugging of parser elements If there are two parser elements available for the same media format, then decodebin is autoplugging an extra capsfilter and parser irrespective of caps and rank. So restrict the decodebin from autoplugging multiple parser elements back to back in adjacent positions with in a single DecodeChain for the same media format. https://bugzilla.gnome.org/show_bug.cgi?id=738416 2014-10-21 12:57:59 +0200 Stefan Sauer * README: * common: Automatic update of common submodule From 6e75498 to a8c8939 2014-10-21 14:43:30 +0530 Vineeth T M * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: assertion error timestamp_offset is being declared as an int64 variable, for which the min value of G_MININT64 is -9223372036854775808 Changing the minimum and maximum limit for the offset variable. https://bugzilla.gnome.org/show_bug.cgi?id=738568 2014-10-13 00:03:55 +0300 Sreerenj Balachandran * gst/playback/gstdecodebin2.c: decodebin: optimize the code a bit by avoiding unnecessary string comparisons https://bugzilla.gnome.org/show_bug.cgi?id=738416 2014-10-13 00:03:20 +0300 Sreerenj Balachandran * gst/playback/gstdecodebin2.c: decodebin: Fix typo in comment https://bugzilla.gnome.org/show_bug.cgi?id=738416 2014-10-20 18:25:08 +0530 Vineeth T M * gst/audiomixer/gstaudiomixer.c: audiomixer: critical error for blocksize, timeout min/max values Audiomixer blocksize, cant be 0, hence adjusting the minimum value to 1 timeout value of aggregator is defined with MAX of MAXINT64, but it cannot cross G_MAXLONG * GST_SECOND - 1 Hence changed the max value of the same https://bugzilla.gnome.org/show_bug.cgi?id=738845 2014-10-01 15:04:09 -0700 Aleix Conchillo Flaqué * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: call watch notify before freeing any watch resources This gives control to the notify function allowing it to finish other watch related functionality. https://bugzilla.gnome.org/show_bug.cgi?id=737752 2014-10-21 06:04:10 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: fixup eglimage include path 2014-10-21 02:52:05 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fixate the parts of the caps we don't know how to deal with fixes glvideomixer with video/x-raw,width=foo i.e. no format field. 2014-10-18 10:03:43 +0200 Matthew Waters * ext/gl/gstglmixer.c: glbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option 2014-10-20 10:34:27 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: operate on caps rather than video info Otherwise the CapsFeatures will be lost along with the possibility of multiple output types and formats. https://bugzilla.gnome.org/show_bug.cgi?id=738129 2014-10-20 15:31:29 +0200 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: appsink: Fix gst_app_sink_pull() docs to transfer full for the return value Also we get a GstSample, not a GstBuffer here. 2014-10-17 12:10:44 +0200 Stefan Sauer * gst/typefind/gsttypefindfunctions.c: typefind: use gslice for typefine data Also use our free function in the failure case. 2014-10-13 15:58:56 +0100 Tim-Philipp Müller * gst/encoding/gstencodebin.c: encodebin: fix some leaks in error code path Fixes test_encodebin_sink_pads_nopreset_static running under valgrind. 2014-10-13 05:08:41 +0100 Tim-Philipp Müller * Makefile.am: * common: tests: parallelise 'make valgrind' Use $(MAKE) instead of 'make' inside the Makefile, otherwise the make will run as if -j1 had been specified and complain about the job server not being available, and with $(MAKE) in inherits the parent make's settings it seems. Upgrade common submodule for parallel check-valgrind. 2014-10-03 12:57:52 +0200 Peter G. Baum * gst-libs/gst/riff/riff-media.c: riff-media: allow more channel_masks Allow partial valid channel masks. Set channel mask to 0 for non-valid channel masks. https://bugzilla.gnome.org/show_bug.cgi?id=733405 2014-10-03 12:54:17 +0200 Peter G. Baum * gst-libs/gst/audio/audio-channels.c: audio-channels: allow partially valid channel_mask Since WAVEFORMATEXTENSIBLE allows to have more channels than bits in the channel mask we should allow this, too, to avoid loss of information. https://bugzilla.gnome.org/show_bug.cgi?id=733405 2014-10-13 22:24:31 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: should post DECODE errors and not ENCODE Fix error code for audio decoder 2014-10-13 13:27:55 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Call the pad's parent class finalize method 2014-10-13 13:27:11 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Only finalize the other context in finalize() Otherwise we change a value of a property when going to READY state, which is unexpected behaviour. 2014-10-13 11:53:47 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: glmixer: Add other-context property 2014-10-10 18:49:29 +0100 Luis de Bethencourt * gst-libs/gst/video/video-blend.c: videoblend: Avoid assigning a negative value to a guint There are some few but certain conditions where it is possible for the dest_width to be smaller than x. So we check this before assigning a negative value to src_width, which is a unsigned and would be promoted to a number that can segfault videoblend. https://bugzilla.gnome.org/show_bug.cgi?id=738242 2014-10-10 10:05:19 +0530 Luis de Bethencourt * ext/pango/gstbasetextoverlay.c: basetextoverlay: Fix segfault when overlay outside the frame When the textoverlay is set outside the video frame by deltax or deltay the calculation segfaults, but it is also unnecessary since it doesn't need to be displayed. So we should clip the text. https://bugzilla.gnome.org/show_bug.cgi?id=738242 2014-10-10 17:32:41 -0400 Olivier Crête * gst-libs/gst/pbutils/missing-plugins.c: pbutils: Rename clock-base/seqnum-base to timestamp-offset/seqnum-offset To match how they were renamed elsewhere. 2014-10-10 12:14:17 +0300 Heinrich Fink * gst/playback/gstplaysink.c: playsink: Use correct property enum value for video-filter property installation 2014-10-09 14:51:56 +0200 Aurélien Zanelli * tests/check/elements/audiomixer.c: test: use G_GSIZE_FORMAT in audiomixer test https://bugzilla.gnome.org/show_bug.cgi?id=738227 2014-10-06 21:46:24 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: aggregator: add latency query handling 2014-10-06 21:46:24 +1100 Matthew Waters * gst/audiomixer/gstaudiomixer.c: aggregator: add latency query handling 2014-10-06 18:33:52 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: support unresponsive pads Render unresponsive pads with the last video frame received. 2014-10-06 18:10:38 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: remove the use of the queued buffer on sink pads That data is now held by the aggregator class 2014-10-08 16:50:52 +0100 Luis de Bethencourt * gst/videoscale/gstvideoscale.c: videoscale: remove FIXME about NV21 support NV21 is already supported so removing FIXME about adding support for it. 2014-10-08 11:26:24 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add gradient pattern Makes a gradient between background and foreground color. 2014-10-06 15:17:42 +0200 Wim Taymans * gst-libs/gst/video/video-chroma.c: video-chroma: improve 4x downsampling coefficients 2014-10-06 22:13:00 +0200 Peter G. Baum * gst/audioresample/gstaudioresample.h: audioresample: remove unused variables https://bugzilla.gnome.org/show_bug.cgi?id=738026 2014-10-07 05:50:56 +0900 Danny Song * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Remove leftover #define from 0.10 https://bugzilla.gnome.org/show_bug.cgi?id=738018 2014-10-07 12:10:42 +0400 Andrei Sarakeev * gst/playback/gstdecodebin2.c: decodebin: Only emit the drain signal for the main decode chain, not any subchains https://bugzilla.gnome.org/show_bug.cgi?id=738064 2014-10-06 13:09:00 +0200 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: audiomixer: Handle seek event in READY state 2014-09-23 15:59:10 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do not wrongly set the aggregator.segment The aggregator.segment is not to be initialized by the subclasses but by the aggregator itself. Moreover, initializing it on start would make us loose the information coming from the initial seek. 2014-07-21 11:07:19 +0200 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audiomixer: Set the sinkpad segments basetime after seeking Otherwise stream offset and running time comparison will not be correct, leading to segfaults after seeks 2014-07-30 11:57:46 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Make sure not to unref a NULL pointer 2014-05-28 16:29:37 +0200 Thibault Saunier * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audiomixer: Port to GstAggregator https://bugzilla.gnome.org/show_bug.cgi?id=737183 Co-Authored by: Mathieu Duponchelle 2014-10-06 10:15:13 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Free factories array when delaying autoplugging due to non-final caps 2014-10-06 10:11:47 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Unmap and free GstVideoFrames as needed after conversion and errors 2014-10-06 10:11:05 +0300 Sebastian Dröge * gst-libs/gst/video/video-converter.c: videoconverter: Free the converter config in free() 2014-10-02 21:20:48 +0200 Aurélien Zanelli * gst/playback/gstdecodebin2.c: decodebin: unref decode pad after usage https://bugzilla.gnome.org/show_bug.cgi?id=737757 2014-10-04 23:09:19 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Stop storing if we received EOS This was never reset when going from PAUSED->READY and resulted in encoders being not reusable after EOS. They just rejected any buffer because they received EOS in their previous life. The flag wasn't used anywhere except for rejecting buffers after EOS, and this is now handled by GstPad directly. 2014-09-18 17:14:22 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: 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 2014-10-02 00:14:03 +0200 Aurélien Zanelli * ext/vorbis/gstvorbisdeclib.c: vorbisdec: don't reorder streams with channels count greater than eight vorbis_reorder_map is defined for eight channels max. If we have more than eight channels, it's the application which shall define the order. Since we set audio position to none, we just interleave all the channels without any particular reordering. https://bugzilla.gnome.org/show_bug.cgi?id=737742 2014-03-04 16:51:11 +0200 Andres Gomez * gst/playback/gsturidecodebin.c: uridecodebin: Removed setting "iradio-mode" property in the source element The "iradio-mode" property used to have a default FALSE value in HTTP source elements but now it should default to TRUE or just do not exist as a property so it is not really needed to set it any more in uridecodebin. Apart from that this code could've never worked as uridecodebin looks for a string-typed iradio-mode property, but it's a boolean in all sources. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725383 2014-10-02 02:46:58 +1000 Jan Schmidt * docs/design/part-stereo-multiview-video.markdown: design: Add a proposal for handling stereoscopic 3D and multiview 2014-10-01 17:22:59 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Also copy over the chroma siting and colorimetry when deciding on a conversion 2014-10-01 17:18:05 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: 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. 2014-10-01 17:11:16 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: 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 2014-10-01 11:16:30 +0200 Aurélien Zanelli * gst-libs/gst/video/gstvideoencoder.c: videoencoder: release frame in finish_frame when no output state is configured Otherwise, frame is leaked. https://bugzilla.gnome.org/show_bug.cgi?id=737706 2014-09-30 20:39:36 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: update element documentation 2014-09-25 17:32:32 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video-converter: add orc optimized matrix8 function Add an ORC implementation of the matrix8 function. Regenerate video-orc-dist.[ch] 2014-09-29 19:45:22 +0530 Arun Raghavan * gst-libs/gst/audio/gstaudiobasesink.c: audio: Fix up a comment in GstAudioBaseSink Rewrote the comment to not be PulseAudio-specific. 2014-09-28 16:58:42 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: 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 2014-09-27 20:05:38 +0200 Rico Tzschichholz * gst-libs/gst/video/Makefile.am: video: Make sure to link against libm 2014-09-27 15:58:51 +0100 Tim-Philipp Müller * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: xvimagesink: get rid of unnecessary private struct for pool 2014-09-27 15:53:43 +0100 Tim-Philipp Müller * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: ximagesink: get rid of unnecessary private struct for pool This is not exposed as API after all. 2014-09-24 20:38:31 +0530 Arun Raghavan * gst-libs/gst/audio/gstaudioiec61937.c: audio: Trivial comment for unhandled MPEG-2 payloading case The spec mentions a version of the MPEG-2 frame with a base frame and extension frame. I don't have IEC 13818-3 to figure out what that is, and don't see any references in search results, so it's a FIXME for now. https://bugzilla.gnome.org/show_bug.cgi?id=736797 2014-09-24 20:11:49 +0530 Arun Raghavan * gst-libs/gst/audio/gstaudioiec61937.c: audio: Fixes for MPEG-2 LSF IEC61937 payloading The low sample frequency case for MPEG-2 is <=12kHz (the 32kHz number applies to MPEG-1). https://bugzilla.gnome.org/show_bug.cgi?id=736797 2014-09-17 17:40:04 +0530 Anuj Jaiswal * gst-libs/gst/audio/gstaudioiec61937.c: audio: correct condition for MPEG case. Signed-off-by: Anuj Jaiswal https://bugzilla.gnome.org/show_bug.cgi?id=736797 2014-09-26 18:14:11 +0200 Wim Taymans * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-orc.orc: video: improve YUV -> RGB conversion Reorganize orc instructions to free up some registers. We can reuse the ORC code to implement the generic AYUV->ARGB matrix. 2014-09-26 16:35:51 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrcorc.orc: videotestsrc: storel is better then copyl It is better to use storel to splat the variable into the destination. ORC doesn't know when a variable is last written to so it can't yet optimize away the copy operation. 2014-09-26 15:00:12 +0100 Luis de Bethencourt * gst/videoscale/vs_lanczos.c: videoscale: avoid recalculating values Avoid recalculating values used multiple times as base of index. Plus some style fixes. https://bugzilla.gnome.org/show_bug.cgi?id=737400 2014-09-26 09:14:51 +0530 Ravi Kiran K N * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_lanczos.c: videoscale: support lanczos method for NV formats Support lanczos scaling method for NV12 and NV21 formats. Scale the 'Y' plane and scale 'NV' plane. Implementation for submethods - int16, int32, float and double https://bugzilla.gnome.org/show_bug.cgi?id=737400 2014-09-26 01:34:54 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: 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). 2014-09-25 15:19:21 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update disted orc backup files 2014-09-24 16:55:49 +0200 Wim Taymans * gst-libs/gst/video/gstvideoaggregator.c: video: use video lib conversion code instead of copy 2014-09-24 16:19:30 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-converter.c: * gst-libs/gst/video/video-converter.h: * gst-libs/gst/video/video.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * win32/common/libgstvideo.def: video: convertor -> converter 2014-09-24 15:49:42 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-convertor.c: * gst-libs/gst/video/video-convertor.h: * gst-libs/gst/video/video-orc.orc: * gst-libs/gst/video/video.h: * gst/videoconvert/Makefile.am: * gst/videoconvert/gstcms.c: * gst/videoconvert/gstcms.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * gst/videoconvert/gstvideoconvertorc.orc: * gst/videoconvert/videoconvert.h: * tests/check/Makefile.am: * win32/common/libgstvideo.def: video: move videoconvert code to video library Move the conversion code used in videoconvert to the video library and expose a simple but generic API to do arbitrary conversion. It can currently do colorspace conversion but the plan is to add videoscale to it as well. See https://bugzilla.gnome.org/show_bug.cgi?id=732415 2014-09-24 11:04:15 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst/videoconvert/videoconvert.c: * win32/common/libgstvideo.def: video-color: add gst_video_color_matrix_get_Kr_Kb() Move the function to get the color matrix coefficients from videoconvert to the video library. 2014-09-23 14:14:36 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiosink.c: audiosink: compensate for segment restart with clock's time_offset When playing chained data the audio ringbuffer is released and then acquired again. This makes it reset the segbase/segdone variables, but the next sample will be scheduled to play in the next position (right after the sample from the previous media) and, as the segdone is at 0, the audiosink will wait the duration of this previous media before it can write and play the new data. What happens is this: pointer at 0, write to 698-1564, diff 698, segtotal 20, segsize 1764, base 0 it will have to wait the length of 698 samples before being able to write. In a regular sample playback it looks like: pointer at 677, write to 696-1052, diff 19, segtotal 20, segsize 1764, base 0 In this case it will write to the next available position and it doesn't need to wait or fill with silence. This solution is borrowed from pulsesink that resets the clock to start again from 0, which makes it reset the time_offset to the time of the last played sample. This is used to correct the place of writing in the ringbuffer to the new start (0 again) https://bugzilla.gnome.org/show_bug.cgi?id=737055 2014-09-21 13:16:43 +0200 Ognyan Tonchev * gst-libs/gst/video/gstvideopool.c: videopool: add missing annotation for gst_video_buffer_pool_new() https://bugzilla.gnome.org/show_bug.cgi?id=737072 2014-09-24 14:29:37 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: skip input frames with an alpha of 0 2014-09-24 13:13:19 +1000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: 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 2014-09-23 23:12:19 +0300 Sebastian Dröge * gst/videoscale/vs_4tap.c: videoscale Use stride instead of width in more places 2014-09-19 12:31:49 +0530 Sanjay NM * gst/videoscale/vs_4tap.c: videoscale: Use width instead of stride in buffer offset calculation https://bugzilla.gnome.org/show_bug.cgi?id=736944 2014-09-23 11:56:33 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: reshuffle code in error handling Move the assert to the error handling block at the end of the function so the the logging is still triggered. Reword the logging slightly and add another comment to hint what went wrong. Fixes #737138 2014-09-22 20:15:13 +0200 Stefan Sauer * gst-libs/gst/video/gstvideoencoder.c: videoencoder: log the timestamps if we are unhappy about them When complaining about the DTS!=PTS on keyframes log the actualy timestamps. 2014-09-22 10:42:47 +0200 Wim Taymans * tests/check/Makefile.am: tests: add orc test for videoconvert 2014-09-22 10:40:01 +0300 Sebastian Dröge * tools/gst-play.c: gst-play: Fix format string compiler warning gst-play.c:92:28: error: format string is not a string literal [-Werror,-Wformat-nonliteral] len = g_vasprintf (&str, format, args); ^~~~~~ 2014-09-19 14:58:20 +0200 Edward Hervey * tests/examples/overlay/gtk-videooverlay.c: example/overlay: Specify minimum gdk version Avoids deprecation warnings (such as for gtk_widget_set_double_buffered() which became deprecated from 3.14) 2014-09-21 21:36:49 +1000 Matthew Waters * ext/gl/gstglmixer.c: glupload: provide the output buffer that is rendered into Allows callers to properly reference count the buffers used for rendering. Fixes a redraw race in glimagesink where the previous buffer (the one used for redraw operations) is freed as soon as the next buffer is uploaded. 1. glimagesink uploads in _prepare() to texture n 1.1 glupload holds buffer n 2. glimagesink _render()s texture n 3. glimagesink uploads texture n+1 3.1 glupload free previous buffer which deletes texture n 3.2 glupload holds buffer n+1 4. glwindow resize/expose 5. glimagesink redraws with texture n The race is that the buffer n (the one used for redrawing) is freed as soon as the buffer n+1 arrives. There could be any amount of time and number of redraws between this event and when buffer n+1 is actually rendered and thus replaces buffer n as the redraw source. https://bugzilla.gnome.org/show_bug.cgi?id=736740 2014-09-19 18:29:54 +0100 Tim-Philipp Müller * tools/gst-play.c: gst-play: add --quiet option to suppress output 2014-09-19 15:32:33 +0530 Sanjay NM * ext/gl/gstglmixer.c: gl: Removed unreachable break, unused variable https://bugzilla.gnome.org/show_bug.cgi?id=736957 2014-09-05 13:49:46 -0300 Thiago Santos * ext/pango/gstbasetextoverlay.c: basetextoverlay: Do not fail the negotiation if query fails The allocation query failure doesn't mean that the negotiation has failed as the element can allocate buffers itself. Instead, only fail if the pads are flushing and the allocation query failed. https://bugzilla.gnome.org/show_bug.cgi?id=735844 2014-09-18 15:45:43 +0530 Sanjay NM * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: Added NV support for 4Tap resize https://bugzilla.gnome.org/show_bug.cgi?id=736845 2014-09-18 12:29:37 +0400 Andrei Sarakeev * gst/playback/gstplaybin2.c: playbin: Don't leak input-selector sinkpads https://bugzilla.gnome.org/show_bug.cgi?id=736861 2014-09-18 12:39:48 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Simplify code a bit 2014-09-17 14:34:25 +0200 Ognyan Tonchev * gst/encoding/gststreamsplitter.c: streamsplitter: do not leak events when flushing them https://bugzilla.gnome.org/show_bug.cgi?id=736796 2014-09-17 14:18:49 +0200 Ognyan Tonchev * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: do not leak events when flushing them https://bugzilla.gnome.org/show_bug.cgi?id=736796 2014-09-17 14:11:21 +0200 Ognyan Tonchev * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not leak events when flushing them https://bugzilla.gnome.org/show_bug.cgi?id=736796 2014-09-17 14:08:17 +0200 Ognyan Tonchev * gst-libs/gst/video/gstvideoencoder.c: videoencoder: do not leak events when flushing them https://bugzilla.gnome.org/show_bug.cgi?id=736796 2014-09-17 12:17:27 +0200 Ognyan Tonchev * tests/check/libs/audiodecoder.c: audiodecoder: extend flush_events test to check for event leaks https://bugzilla.gnome.org/show_bug.cgi?id=736788 2014-09-17 12:17:53 +0200 Ognyan Tonchev * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't leak events https://bugzilla.gnome.org/show_bug.cgi?id=736788 2014-09-16 13:32:52 +0200 Ognyan Tonchev * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: do not leak uid after parsing TOC select event https://bugzilla.gnome.org/show_bug.cgi?id=736739 2014-09-17 10:51:59 +0530 Ravi Kiran K N * gst/typefind/gsttypefindfunctions.c: typefind: correct the condition for irap flag https://bugzilla.gnome.org/show_bug.cgi?id=736779 2014-09-16 21:42:46 +0300 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Add audio/videoconvert in front of the audio/video-filters audioresample and videoscale is something the application will have to do if required, but we can at least help here by adding the audioconvert/videoconvert elements. https://bugzilla.gnome.org/show_bug.cgi?id=735748 2014-09-16 11:41:16 +0200 Ognyan Tonchev * ext/gl/gstglmixer.c: glmixer: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736729 2014-09-16 01:07:18 +0300 Sebastian Dröge * gst-libs/gst/video/video-frame.c: video-frame: Don't ref buffers twice when mapping 2014-09-16 00:41:55 +0300 Sebastian Dröge * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: app: Add FIXME comment for making the instance/class structs private 2014-09-15 21:51:15 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.h: appsrc: fix recent ABI breakage caused by GstAppSrc structure size increase Also fixes 'make check'. https://bugzilla.gnome.org/show_bug.cgi?id=728379 2014-09-15 16:23:57 +0200 Ognyan Tonchev * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not leak pool and allocator in error case https://bugzilla.gnome.org/show_bug.cgi?id=736679 2014-09-12 14:41:01 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideofilter.c: videofilter: Use new GST_VIDEO_FRAME_MAP_FLAG_NO_REF https://bugzilla.gnome.org/show_bug.cgi?id=736118 2014-09-12 14:39:16 +0300 Sebastian Dröge * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-frame.h: video-frame: Add GST_VIDEO_FRAME_MAP_FLAG_NO_REF This makes sure that the buffer is not reffed another time when storing it in the GstVideoFrame, keeping it writable if it was writable. https://bugzilla.gnome.org/show_bug.cgi?id=736118 2014-09-12 14:27:44 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideofilter.c: videofilter: Unref buffers before calling the transform_frame functions GstVideoFrame has another reference, so the buffer looks unwriteable, meaning that we can't attach any metas or anything to it https://bugzilla.gnome.org/show_bug.cgi?id=736118 2014-09-05 09:54:10 -0700 Garg * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Fix deadlock caused by holding object lock while calling clock functions Issue: During a PAUSED->PLAYING transition when we are rendering an audio buffer in AudioBaseSink we make adjustments to the sink's provided clock i.e. fix clock calibration using the external pipeline clock, within "gst_audio_base_sink_sync_latency function inside gstaudiobasesink.c". For the calibration adjustment we need to get the sink clock time using "gst_audio_clock_get_time". But before calling "gst_audio_clock_get_time" we acquire the Object Lock on the Sink. If sink is a pulsesink, "gst_audio_clock_get_time" internally calls "gst_pulsesink_get_time" which needs to acquire Pulse Audio Main Loop Lock before querying Pulse Audio for its stream time using "pa_stream_get_time". Please see "gst_pulsesink_get_time in pulsesink.c". So the situation here is we have acquired the Object lock on Sink and need PA Main Loop Lock. Now Pulse Audio Main Thread itself might be in the process of posting a stream status message after Paused to Playing transition which in turn acquires the PA Main loop lock and needs the Object Lock on Pulse Sink. This causes a deadlock with the earlier render thread. Fix: Do not acquire the object Lock on Sink before querying the time on PulseSink clock. This is similar to the way we have used get_time at other places in the code. Acquire it after the get_time call. This way PA Main loop will be able to post its stream status message by acquiring the Sink Object lock and will eventually release its Main Loop lock needed for gst_pulsesink_get_time to continue. https://bugzilla.gnome.org/show_bug.cgi?id=736071 2014-09-04 11:56:50 +0200 Nicola Murino * tests/examples/app/Makefile.am: * tests/examples/app/appsink-src2.c: appsrc: Add example that shows gst_app_src_push_sample() usage 2014-09-05 11:14:51 +0200 Nicola Murino * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * win32/common/libgstapp.def: appsrc: Add push_sample() convenience function for easy appsink -> appsrc use https://bugzilla.gnome.org/show_bug.cgi?id=728379 2014-09-11 22:19:05 +0100 Tim-Philipp Müller * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: xvimagesink: only try to set XV_ITURBT_709 port attribute if it exists Don't try to set port attribute that's not advertised by the adaptor. Fixes videotestsrc ! xvimagesink aborting with X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 151 (XVideo) Minor opcode of failed request: 13 () on intel HD4600 graphics with kernel 3.16, xserver 1.15, intel driver 2.21.15. 2014-09-11 16:58:35 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: protect buffering message handling Use the object lock to avoid concurrent processing which leads to small disasters (assertions or crashes) 2014-09-10 17:24:39 +0100 Tim-Philipp Müller * ext/opus/gstopusdec.c: Fix up one-element lists in template caps 2014-09-09 11:37:26 +0200 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: ignore timeout in session request header The timeout parameter is only allowed in a session response header but some clients, like Honeywell VMS applications, send it as part of the session request header. Ignore everything from the semicolon to the end of the line when parsing session id. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=736267 2014-03-28 13:02:54 +0100 George Kiagiadakis * gst/playback/gstplaybin2.c: playbin: filter out buffering messages when switching uri When switching URI from about-to-finish, playbin starts decoding the new URI and the queue2 inside uridecodebin starts emitting buffering messages immediately. However, the queue(s) inside playsink still have buffers to play and the pipeline doesn't need to pause for buffering, so we should not send those buffering messages up to the application, otherwise there is an audible glitch caused by pausing the pipeline for a very short time. https://bugzilla.gnome.org/show_bug.cgi?id=727255 2014-07-08 12:37:41 -0400 Kipp Cannon * gst/audioresample/resample.c: audioresample: don't skip input samples when downsampling, the output buffer can be filled before all the input samples are consumed. this is correct: when downsampling, several input samples are needed for each output sample, so when only a small number of input samples are available the number of output samples produced can be 0. the resampler, however, was discarding those extra input samples instead of clocking them into its filter history for the next iteration. this patch fixes this by removing the check that the output buffer is full. the code now always loops until all input samples are consumed, and relies on the calling code to have provided a suitably sized location for the output. note that there are already other checks in place in the calling code to ensure that this is the case. https://bugzilla.gnome.org/show_bug.cgi?id=732908 2013-01-31 13:49:00 +0100 Arnaud Vrac * ext/pango/gstbasetextoverlay.c: basetextoverlay: get framerate from previously parsed video info 2013-01-31 13:47:35 +0100 Arnaud Vrac * ext/pango/gstbasetextoverlay.c: basetextoverlay: do not ask for a bufferpool when checking for composition meta 2014-09-04 15:06:31 +0200 Arnaud Vrac * ext/pango/gstbasetextoverlay.c: basetextoverlay: schedule reconfigure on source pad when negotiation fails The source pad might be flushing while negotiating, resulting in set_caps or the ALLOCATION query failing. In this case set the reconfigure flag on the source pad so that negotiation is retried on the next buffer. 2013-01-31 15:38:18 +0100 Arnaud Vrac * ext/pango/gstbasetextoverlay.c: basetextoverlay: just forward the seek event to sink pads like other events https://bugzilla.gnome.org/show_bug.cgi?id=735844 2014-09-04 12:13:45 +0200 Nicola Murino * ext/pango/gstbasetextoverlay.c: basetextoverlay: remove unneeded cairo transparence setting he code here: http://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/ext/pango/gstbasetextoverlay.c#n1554 should make transparent the box that contains the text, I think this code is not correct, it should be: if (overlay->want_shading) { double alpha = overlay->shading_value / 255.0; cairo_paint_with_alpha (cr, alpha); } however I think this code could be removed, we already do a shaded background, why shade the box behind the text with cairo too? only one shading is needed so we must shade with cairo or with methods like these: http://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/ext/pango/gstbasetextoverlay.c#n1642 not both https://bugzilla.gnome.org/show_bug.cgi?id=736028 2014-09-02 13:10:34 +0200 Nicola Murino * ext/pango/gstbasetextoverlay.c: basetextoverlay: Make shading_value a property https://bugzilla.gnome.org/show_bug.cgi?id=735879 2014-09-03 15:23:26 +0530 Vineeth T M * gst/videorate/gstvideorate.c: videorate: GstStructure refcount critical message s3 is not being initialized when run in a loop and the same was being freed, which resulted in the crash https://bugzilla.gnome.org/show_bug.cgi?id=735952 2014-09-02 15:37:38 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Also include the raw caps in the error message, not just the human readable description 2014-09-02 12:59:18 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Include codec description for missing plugins in the error message If we had plugins and an error occurred we only include the error message caused by this, otherwise we will include the codec description as generated from the caps. This allows to detect which exact codec was missing instead of getting a generic "no suitable decoders found" error message. 2014-09-01 15:23:27 -0300 Thiago Santos * tests/check/elements/textoverlay.c: tests: textoverlay: add test to reproduce fakesink scenario Adds a new test to textoverlay to make sure it can properly handle elements that have ANY caps but fail to add the overlay meta in the allocation query. This test verifies that textoverlay won't use the caps features even knowing that the overlay meta is accepted when querying the downstream caps because it also needs downstream to confirm by putting the meta in the allocation query. https://bugzilla.gnome.org/show_bug.cgi?id=735800 2014-09-01 12:38:02 -0300 Thiago Santos * ext/pango/gstbasetextoverlay.c: basetextoverlay: properly fallback to non-overlay caps When downstream claims to accept the overlay meta but fails to provide it in the allocation query, properly fallback to setting a new caps without the overlay meta as that is not going to be used. Only do this if the original caps doesn't have the overlay already, otherwise there isn't much that can be done. https://bugzilla.gnome.org/show_bug.cgi?id=735800 2014-09-01 15:06:51 +0200 Guillaume Desmottes * ext/ogg/gstoggdemux.c: oggdemux: don't set segment.base in pad_submit_packet() Setting segment.base in the segment sent from gst_ogg_demux_handle_page() is enough to ensure that chained oggs are played corretly (see bgo#706569). Tweaking the base in gst_ogg_pad_submit_packet() as well result in delays when playing a file with start != -1. https://bugzilla.gnome.org/show_bug.cgi?id=735808 2014-09-01 12:28:24 +0300 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: textoverlay: Don't hold any mutexes while calling negotiate It's not done in any other code calling negotiate and will cause deadlocks as it is sending events and queries in the pipeline. Specifically this pipeline was deadlocking: gst-launch-1.0 videotestsrc ! textoverlay ! textoverlay ! fakesink 2014-08-29 14:00:06 +0200 Guillaume Desmottes * ext/ogg/gstoggdemux.c: oggdemux: accumulate base time Base time should be accumulated so non flushing seeks have the expected base. Not accumulating result in segments appearing as "too late" and so are not played by the sink. https://bugzilla.gnome.org/show_bug.cgi?id=735509 2014-08-29 19:15:56 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: remove code that can't be reached If this code could ever be reached, it would leak memory (CID 1231978), but gst_caps_get_features() never returns NULL, so that can't happen. 2014-08-29 18:18:10 +0100 Tim-Philipp Müller * gst/encoding/gstencodebin.c: encoding: remove assignment that's no longer needed CID 1231980 2014-07-23 21:25:24 +0200 Peter G. Baum * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-read.c: riff: Recognize RF64 as RIFF file https://bugzilla.gnome.org/show_bug.cgi?id=735631 2014-08-27 13:45:57 +0200 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Protect readsrc, writesrc and controllsrc with a mutex Fixes a crash when controlsrc, readsrc or writesrc are modified from gst_rtsp_source_dispatch_read/write and gst_rtsp_watch_reset at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=735569 2014-08-28 17:13:05 +0300 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: setcaps() always returns TRUE and the return value is unused Change it to a void return value. The caps are forwarded afterwards via gst_pad_event_default() and not inside this function. CID 1226477 2014-08-28 17:06:22 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix broken boolean expression We can seek with end_type==NONE and end_type==SET && end_position=-1. The check for end_type!=NONE made the second condition impossible. CID 1226440 2014-08-28 17:00:26 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Fix broken boolean expression We can seek with end_type==NONE and end_type==SET && end_position=-1. The check for end_type!=NONE made the second condition impossible. CID 1226439 2014-08-25 20:59:40 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin: Include information from the error messages of tried but failed elements in the missing plugin errors 2014-08-25 16:22:46 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Initialize local variables for every retry 2014-08-25 15:15:06 +0300 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Remove error case that resulted in two error messages We already send one in gst_decode_bin_expose() for this case. Only if we're unable to typefind the caps another error message is needed. 2014-08-24 22:36:59 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: tighten checks for 'freeform mp3' a little Freeform mp3s typically have bitrates higher than the otherwise max allowed rate. Prevents misdetection of some truetype font files as mp3. https://bugzilla.gnome.org/show_bug.cgi?id=732923 2014-08-25 13:14:36 +0300 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't ignore ::start/stop return values 2014-08-19 17:01:36 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: unref the GstGLUpload in the pad if freed while running Dynamic pipelines that get and release the sink pads will finalize the pad without going through gst_gl_mixer_stop() which is where the upload object is usually freed. Don't leak objects in such case. 2014-08-14 23:51:21 -0400 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: glvideomixer: avoid gl resource race condition between different thread https://bugzilla.gnome.org/show_bug.cgi?id=734830 2014-08-19 14:44:29 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't clobber unnecessary GstVideoInfo fields otherwise we might clobber other important fields such as the frame rate. 2014-08-19 14:43:42 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: get the attribute from the correct shader 2014-08-18 13:04:31 +0100 Tim-Philipp Müller * gst-plugins-base.spec.in: spec: add gst-device-monitor-1.0 to RPM .spec file https://bugzilla.gnome.org/show_bug.cgi?id=734944 2014-08-14 16:57:01 -0300 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: only intersect with the filter at the end Otherwise we might change some capsfeatures from ANY to the specific value from the filter and do not filter those out in case the sink doesn't support them https://bugzilla.gnome.org/show_bug.cgi?id=734822 2014-08-15 13:31:53 +0200 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Set 'processing = FALSE' when done discovering SYNC This avoids a race where we would get new tag but we are already prerolled and analyzing results. It is the way it is supposed to be handled as stated in comment: "If preroll is complete, drop these tags - the collected information is possibly already being processed and adding more tags would be racy" 2014-08-14 17:21:44 -0300 Thiago Santos * win32/common/libgstvideo.def: gstvideo: add missing entry to win32 .def gst_video_guess_framerate 2014-08-14 23:53:16 +1000 Jan Schmidt * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add gst_video_guess_framerate() function Takes a nominal frame duration and returns a standard FPS if it matches closely enough (< 0.1%), or else calculates a framerate that'll do. 2014-08-15 01:04:45 +1000 Jan Schmidt * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-overlay-composition.c: video: Various simple docs fixes 2014-08-08 20:01:20 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Reset last_timestamp_out on new segment Reset last_timestamp_out when applying the output segment change, to avoid decoder confusion over new timestamp timelines when a seamless segment change happens. Move some locks/unlocks to later when they're actually needed. https://bugzilla.gnome.org/show_bug.cgi?id=734617 2014-07-14 12:29:50 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: handle group switching for deadend group Gracefully handle switching groups that all pads are deadend. This can happen when quickly switching programs on mpegts as the output is unaligned it can happen that not enough data was accumulated at parsers to generate any buffers, causing the stream to receive EOS before any data can be decoded. To handle this scenario, the _expose function now also gets if there is any next group to be exposed along with the list of endpads. If there are no endpads and there is another group to expose it will switch to this next group and then retry exposing the streams. Also, the requirement to only switch from the chain that has the endpad had to be modified to care for when the drainpad is NULL https://bugzilla.gnome.org/show_bug.cgi?id=733169 2014-07-11 18:51:44 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: consider all deadend pads as drained Otherwise when switching out a group with a deadend pad it will block as it would be waiting for EOS on a deadend that already got one https://bugzilla.gnome.org/show_bug.cgi?id=733169 2014-08-12 13:41:04 -0300 Thiago Santos * ext/pango/gstbasetextoverlay.c: basetextoverlay: fix caps negotiation filter 2014-08-13 14:28:05 +0300 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Make sure to intersect raw caps with our converter caps Otherwise we end up allowing video/x-raw with arbitrary caps features that are not handled by our converters. https://bugzilla.gnome.org/show_bug.cgi?id=734683 2014-08-12 23:18:57 +1000 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't drain and flush on SEGMENT events. As was done for the base video decoder in commit 695675, don't flush out the decoder on a new SEGMENT event. Segment events may be a new segment, but are also often segment updates for the current segment where the old data should be kept. For new segments, a STREAM_START event will already trigger a drain, but make sure to flush any remaining partial data then as well. https://bugzilla.gnome.org/show_bug.cgi?id=734666 2014-08-11 10:15:14 +0530 Sanjay NM * gst/videoscale/gstvideoscale.c: videoscale: Add NV21 support https://bugzilla.gnome.org/show_bug.cgi?id=734650 2014-08-11 18:21:26 +0200 Matthieu Crapet * tests/icles/playback/decodetest.c: * tests/icles/playback/test.c: * tests/icles/playback/test5.c: tests: fix decodebin signal used in icles/playback/ decodetest, test and test5 Since release 1.1.4, "new-decoded-pad" no longer exists. 2014-08-08 12:46:47 -0300 Thiago Santos * ext/pango/gstbasetextoverlay.c: * tests/check/elements/textoverlay.c: basetextoverlay: rework caps negotiation Make textoverlay negotiate caps more correctly. 1) Check what caps we received in the video-sink 2) If it already has the overlay meta -> use it directly 3) If it doesn't, textoverlay try adding the overlay meta and using it, if downstream doesn't support it, just use what is received in the video-sink 4) Check if the allocation query also supports the meta to enable really using it Before it wasn't really doing renegotiation of any kind, just re-checking if it should use the overlay meta or not Also had to update the caps in the test as memory:SystemMemory seems to be required when you use a caps feature otherwise intersection/subset checks will fail. https://bugzilla.gnome.org/show_bug.cgi?id=733916 2014-08-07 19:54:36 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: push the caps event as soon as we receive it Along with the required mandatory dependent events. Some elements need to perform an allocation query inside ::negotiated_caps(). Without the caps event being sent prior, downstream elements will be unable to answer and will return an error. https://bugzilla.gnome.org/show_bug.cgi?id=732662 2014-08-07 17:35:05 -0300 Thiago Santos * ext/pango/gstbasetextoverlay.c: basetextoverlay: always intersect with the filter caps Avoids returning values that upstream can't produce https://bugzilla.gnome.org/show_bug.cgi?id=733916 2014-07-30 16:59:15 -0300 Thiago Santos * gst/encoding/gstencodebin.c: * tests/check/elements/encodebin.c: encodebin: delay missing encoder error as passthrough is still possible Set up a fakesink with a pad probe to replace the missing encoder to detect if encoding was really required and only error out in this case. Otherwise just let passthrough branch work. This delays the error posting from the set_state function to when buffers are really flowing. Unit test updated accordingly https://bugzilla.gnome.org/show_bug.cgi?id=650652 2014-08-08 14:08:19 +0200 Sebastian Rasmussen * ext/opus/gstopusenc.c: opusenc: Unref pad template caps after usage Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734517 2014-08-11 10:57:43 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Remove buffering special casing for adaptive streaming demuxers They output smaller buffers now and we should be able to handle the buffering limits like in every other situation now. 2014-08-07 10:44:03 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't set decoding timestamps on raw video https://bugzilla.gnome.org/show_bug.cgi?id=733720 2014-08-07 18:10:41 +0300 George Kiagiadakis * gst-libs/gst/video/gstvideodecoder.c: videodecoder: In reverse playback, flush the output queue after decoding each keyframe chain This fixes the reverse playback scenario when upstream is not fully parsing the stream and does not send every keyframe chain separately with the DISCONT flag on the keyframe. To explain this, let's suppose we have this stream: 0 1 2 3 4 5 6 7 8 K K K In most circumstances, the upstream parser will chain in the decoder the buffers in the following order: 6 7 8 3 4 5 0 1 2 D D D In this case, GstVideoDecoder will flush the parse queue every time it receives discont (D) and we will eventually get in the output queue: (flush here) 8 7 6 (flush here) 5 4 3 (flush here) 2 1 0 In case the upstream parser doesn't do this work, though, GstVideoDecoder will receive the whole stream at once and will flush the parse queue afterwards: 0 1 2 3 4 5 6 7 8 D During the flush, it will look backwards for keyframes and will decode in this order: 6 7 8 3 4 5 0 1 2 This is the same order that it would receive from upstream if upstream was parsing and looking for the keyframes, only that now there is no flushing of the output queue in between keyframes, which will result in the output queue looking like this: 2 1 0 6 5 3 8 7 6 This will confuse downstream obviously and will play incorrectly. This patch forces the decoder to flush the output queue every time it picks a new keyframe to decode, so it will end up decoding 6 7 8 and then flushing before picking 3 for decoding, so the output will get 8 7 6 before 6 5 3 and the video will play back correctly. https://bugzilla.gnome.org/show_bug.cgi?id=734441 2014-08-10 18:07:28 +0100 Tim-Philipp Müller * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: opengl: update element docs for 1.x 2014-08-10 17:30:18 +0100 Tim-Philipp Müller * configure.ac: configure: use pkg-config to detect x11 and xv libs AC_PATH_XTRA macro unnecessarily pulls in libSM and libICE. https://bugzilla.gnome.org/show_bug.cgi?id=731047 2014-08-10 17:27:14 +0100 Tim-Philipp Müller * sys/xvimage/xvimageallocator.c: xvimage: fix crash when outputting debug log Can't print a GstMemory via GST_PTR_FORMAT, it will crash inside GObject checking if it's a GObject, and we can't check generically whether it's a derived GstMemory type, as boxed types don't allowe derivation. 2014-08-09 11:17:44 +0200 Sebastian Rasmussen * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Unref allowed caps after usage Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734522 2014-08-09 14:24:59 +0200 Sebastian Rasmussen * ext/opus/gstopusheader.c: opus: Improve annotation of internal function https://bugzilla.gnome.org/show_bug.cgi?id=734543 2014-08-09 14:14:48 +0200 Sebastian Rasmussen * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Mark caps argument as not being transferred https://bugzilla.gnome.org/show_bug.cgi?id=734540 2014-08-09 14:20:32 +0200 Sebastian Rasmussen * ext/vorbis/gstvorbisenc.c: vorbisenc: Improve annotation of internal function https://bugzilla.gnome.org/show_bug.cgi?id=734541 2014-08-07 19:18:49 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add a background property That's compatible with the compositor/videomixer property https://bugzilla.gnome.org/show_bug.cgi?id=731954 2014-08-06 13:41:46 +0200 Sebastian Rasmussen * tests/check/elements/appsrc.c: * tests/examples/app/appsink-src.c: * tests/examples/audio/audiomix.c: * tests/examples/audio/volume.c: * tests/examples/dynamic/codec-select.c: * tests/examples/seek/scrubby.c: * tests/examples/snapshot/snapshot.c: * tests/icles/stress-videooverlay.c: * tests/icles/test-textoverlay.c: tests: Add missing unrefs of objects after use Unreffing the objects returned by gst_bin_get_by_name() and gst_pipeline_get_use() were missing in several tests, so add these. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734359 2014-08-06 13:22:56 +0200 Sebastian Rasmussen * ext/ogg/gstoggdemux.c: oggdemux: Unref peer pad after use in error case Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734350 2014-08-06 10:07:42 +0200 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Some minor fixes and cleanup 2014-08-06 09:59:32 -0400 Wang Xin-yu (王昕宇) * gst-libs/gst/app/gstappsrc.c: appsrc: Make caps set action queued together with buffer https://bugzilla.gnome.org/show_bug.cgi?id=729760 2014-08-01 15:00:46 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Keep a reference to the playsink sinkpads Otherwise playsink might get shut down without us noticing that our pad references are gone now. Probably fixes https://bugzilla.gnome.org/show_bug.cgi?id=733165 2014-07-30 20:53:53 +0300 Mohammed Sameer * gst/playback/gststreamsynchronizer.c: streamsynchronizer: don't unset DISCONT flag Unsetting DISCONT flag means we need to copy the buffer. This copy operation mandates that all GstMemory should be copy-able which is not always the case https://bugzilla.gnome.org/show_bug.cgi?id=727409 2014-07-31 18:40:59 +0200 Edward Hervey * Makefile.am: * common: Makefile: Add usage of build-checks step Allows building checks without running them 2014-07-31 16:09:41 +0200 Edward Hervey * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpbasepayload.c: check: Fix include path of rtp checks Fixes make distcheck 2014-07-30 15:23:39 +0200 Thibault Saunier * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: discoverer: Always set the pipeline back to NULL after an error Otherwize the pipeline would be in an wrong state and on the next iteration any kind of error could happen Everytime an error happens in a pipeline the application has to set the pipeline back to NULL instead of READY. https://bugzilla.gnome.org/show_bug.cgi?id=733976 2014-07-29 14:20:42 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin: add missing 'time' word to debug message It prints the buffers, bytes and time limits, but 'time' was missing from the string. 2014-07-28 16:56:08 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Pass through NO_PREROLL state change returns Fixes playback of live pipelines. 2014-07-28 16:55:17 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Pass through NO_PREROLL state change returns Fixes playback of live pipelines. 2014-07-26 14:52:01 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: playbin: fix 'attempt to unlock mutex that was not locked' in error code path Fixes playbin unit test with latest GLib. 2014-07-08 16:59:37 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Don't delay set_format This prevent implementing allocation query, as the format need to be known in order to determin the size and number of buffers needed. Note: This may lead to few regressions that will need fixing https://bugzilla.gnome.org/show_bug.cgi?id=732288 2014-07-23 10:25:31 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: gl: fix multi gl object leaks 1. fix FBO leaks in decide_allocation 2. fix texture leaks in decide_allocation and reset 3. fix texture leaks in FBO incomplete error path 2014-07-23 19:51:36 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Don't unref caps for which we don't own a reference... get one first https://bugzilla.gnome.org/show_bug.cgi?id=733615 2014-07-23 12:36:15 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Go asynchronously from READY to PAUSED We now add all our elements to uridecodebin *after* GstBin::change_state(READY->PAUSED), so we need to post async-start and async-done messages ourselves if we want to work async. https://bugzilla.gnome.org/show_bug.cgi?id=733495 2014-07-23 12:27:36 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Go asynchronously from READY to PAUSED We now add all our elements to uridecodebin *after* GstBin::change_state(READY->PAUSED), so we need to post async-start and async-done messages ourselves if we want to work async. https://bugzilla.gnome.org/show_bug.cgi?id=733495 2014-07-21 15:54:05 +0300 Vivia Nikolaidou * tools/gst-discoverer.c: discoverer: Pretty-print topology tags Call the code used in properties for topology tags too. Side-effect achieved: more tags printed, buffers (e.g. images) shortened. 2014-07-21 13:53:17 +0200 Sebastian Dröge * tools/gst-discoverer.c: discoverer: Fix code style a bit if (...) one_line; else if (...) { many_lines; } else one_line; looks a bit confusing. 2014-07-21 13:48:31 +0300 Vivia Nikolaidou * tools/gst-discoverer.c: discoverer: prettier image tag printing Rather than dumping the serialized sample value, the code now prints the number of bytes in the buffer, then the caps in a human-readable format. https://bugzilla.gnome.org/show_bug.cgi?id=733482 2014-07-10 12:39:46 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Handle CAPS events immediately instead of delaying them https://bugzilla.gnome.org/show_bug.cgi?id=733147 2014-07-11 21:51:05 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Handle CAPS events immediately instead of delaying them https://bugzilla.gnome.org/show_bug.cgi?id=733147 2014-07-15 17:34:01 +0200 Sebastian Dröge * tests/check/elements/playbin.c: playbin: Fix unit test for last change It will successfully asynchronously go to PAUSED now and later fail. 2014-07-15 17:23:24 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Create new sources after chaining up to the parent class Otherwise we start the new sources already before the parent class got ready to start. 2014-07-15 17:20:05 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Create new sources after chaining up to the parent class Otherwise we start the new sources already before the parent class got ready to start. 2014-07-10 16:26:08 +0200 Sebastian Dröge * tests/check/elements/playbin-complex.c: playbin-complex: Change template name from %d to the more common %u 2014-07-10 16:24:36 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Link Parser/Converter directly and already connect to pad-added and other signals before setting elements to PAUSED otherwise we're going to a) start Parser/Converter before they are linked to their capsfilter, breaking their negotiation of a proper stream format b) start demuxers without having connected to their pad-added signals. We miss pads and in the worst case don't link any pads at all 2014-07-10 12:51:22 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Send sticky events to the new element after setting it to PAUSED ... and if this fails for whatever reason we skip the element and instead try with the next element. This allows us to handle elements that fail when setting caps on them by just skipping to the next alternative element. 2014-07-10 12:50:17 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Only link elements further after setting them to PAUSED They might fail to go to PAUSED, and when connecting them further we might already expose their srcpads on decodebin if we're unlucky. This prevents us to handle failures going to PAUSED gracefully. 2014-07-10 12:22:35 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Remove ERROR message filter after we set the element to PAUSED This allows us to catch more errors gracefully and switch to an alternative element instead. 2014-07-10 12:17:52 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Only continue autoplugging once the pad has final caps If the caps query returned us fixed caps this doesn't mean yet that these caps are actually complete (fields might be missing). It allows to do us some decisions, but the selection of the next element should be delayed as only complete caps allow proper selection of the next element. 2014-07-10 12:03:46 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Consider the caps after the capsfilter after parsers for autoplugging Otherwise we might try to continue autoplugging e.g. for a specific stream-format although the parser could convert to something else, thus giving us potentially less options for decoders. 2014-07-21 00:17:38 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/missing-plugins.c: pbutils: fix missing plugin description for missing elements CID: 1226445 2014-07-19 18:04:35 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.4.0 === 2014-07-19 17:04:57 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.4.0 2014-07-19 16:27:43 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-07-18 21:19:03 -0400 Youness Alaoui * gst-libs/gst/app/gstappsrc.c: appsrc: Fix memory leak with callback notify not being called in dispose https://bugzilla.gnome.org/show_bug.cgi?id=733386 2014-07-19 12:29:56 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2014-07-18 16:01:23 +0530 Nirbheek Chauhan * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Add example for using encoder presets with profiles https://bugzilla.gnome.org/show_bug.cgi?id=733349 2014-07-18 15:46:05 +0530 Nirbheek Chauhan * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Fix typos and old API in docs https://bugzilla.gnome.org/show_bug.cgi?id=733349 2014-07-17 14:36:16 +0100 Tim-Philipp Müller * sys/xvimage/xvimagesink.c: xvimagesink: fix property description string Spotted by Josep Torra. 2014-07-15 16:56:30 +0200 Piotr Drąg * po/POTFILES.in: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=733207 2014-07-12 10:33:30 +0530 Arun Raghavan * gst/playback/gstplaysink.c: playsink: Fix filter property getter The switch-case set was incomplete. https://bugzilla.gnome.org/show_bug.cgi?id=733012 === release 1.3.91 === 2014-07-11 11:21:29 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.3.91 2014-07-11 11:21:05 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-07-11 10:13:03 +0200 Edward Hervey * configure.ac: * ext/libvisual/plugin.c: * ext/libvisual/visual.c: libvisual: Remove < 0.4 support And remove the version guards that went along with it https://bugzilla.gnome.org/show_bug.cgi?id=733046 2014-07-10 18:17:47 -0400 Nicolas Dufresne * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Ensure _get_fd() works even for shared memory Fixes regression introduced by: commit b60888fd4bcacd42bb4e27fa938272d6e72c5c32 Author: Michael Olbrich Date: Tue May 20 11:18:56 2014 +0200 dmabuf: share the mapping with shared copies of the memory https://bugzilla.gnome.org/show_bug.cgi?id=730441 2014-07-11 09:41:05 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.h: * ext/gl/gstglvideomixer.h: gl: Move GstGLMixer to the plugin for now It depends on GstAggregator and we don't want to install headers for that yet. https://bugzilla.gnome.org/show_bug.cgi?id=732207 2014-07-10 15:52:46 +0100 Philip Withnall * ext/opus/gstopusheader.c: opus: Fix a double-unref in the Opus header code The headers were never getting reffed when being added to the headers list, which is later unreffed-and-freed by the caller (e.g. gst_opus_parse_parse_frame()). https://bugzilla.gnome.org/show_bug.cgi?id=733013 2014-07-11 08:51:58 +0200 Sebastian Dröge * po/vi.po: po: Update translations 2014-07-06 23:30:53 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix some more the locking logic in update_src_caps We need the GST_OBJECT_LOCK only to iterate the sinkpads, nothing else. https://bugzilla.gnome.org/show_bug.cgi?id=732750 2014-07-06 22:16:48 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix broken locking in update_src_caps function We would unlock an already-unlocked mutex that we never re-locked. https://bugzilla.gnome.org/show_bug.cgi?id=732750 2014-07-03 13:46:08 -0700 Evan Nemerson * gst-libs/gst/sdp/sdp.h: sdp: add gstmikey.h to sdp.h https://bugzilla.gnome.org/show_bug.cgi?id=732709 2014-07-03 18:32:02 +0200 Sebastian Rasmussen * gst-libs/gst/riff/riff-read.c: riff: Print invalid fourcc in error message in hex Previously this was printed as characters which caused later processing of the error message to sometimes warn about non-UTF-8 characters. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732697 2014-06-20 18:02:31 +0200 Gwenole Beauchesne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: parse any source data that is still available. Fix gst_video_decoder_parse_available() to really parse any pending source data that is still available in the adapter. This is a memory optimization to avoid expansion of video packed added to the adapter, but also a fix to EOS condition when the subclass parse() function ultimately only needed to call into gvd_have_frame() and no additional source bytes were consumed, i.e. gvd_add_to_frame() is not called. This situation can occur when decoding H.264 streams in byte-stream/nal mode for instance. A decoder always requires the next NAL unit to be parsed so that to determine picture boundaries. When a new picture is found, no byte is consumed (i.e. gvd_add_to_frame() is not called) but gvd_have_frame() is called (i.e. priv->current_frame is gone). Also make sure to avoid infinite loops caused by incorrect subclass parse() implementations. This can occur when no byte gets consumed and no appropriate indication (GST_VIDEO_DECODER_FLOW_NEED_DATA) is returned. https://bugzilla.gnome.org/show_bug.cgi?id=731974 Signed-off-by: Gwenole Beauchesne 2014-07-02 15:50:23 +0200 Wim Taymans * tests/examples/dynamic/codec-select.c: tests: codec-select: fix compilation 2014-07-02 15:49:38 +0200 Wim Taymans * gst-libs/gst/sdp/gstmikey.h: mikey: add more Since markers for new methods 2014-07-02 15:38:41 +0200 Wim Taymans * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * tests/check/libs/mikey.c: * win32/common/libgstsdp.def: mikey: make message and payload mini-objects Make the MIKEY message and payload objects miniobjects so that they have a GType and are refcounted. We can reuse the dispose method to clear our payload objects. Add some annotations. Implement a copy function for the MIKEY message. Fix the unit test. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732589 2014-07-02 00:21:00 +0200 Sebastian Rasmussen * tests/examples/dynamic/codec-select.c: tests: codec-select: Plug element name memory leak https://bugzilla.gnome.org/show_bug.cgi?id=732593 2014-07-01 16:14:43 -0700 Evan Nemerson * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/video-tile.c: docs: Assorted documentation and introspection fixes for new 1.4 API https://bugzilla.gnome.org/show_bug.cgi?id=732595 2014-07-01 12:52:39 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: reset QoS on segment event https://bugzilla.gnome.org/show_bug.cgi?id=732540 2014-07-01 16:19:22 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: * tests/check/libs/rtspconnection.c: rtspconnection: also allow POST before GET Don't only allow GET and then POST request to setup tunneling over HTTP but also allow POST and then GET. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732459 2014-06-28 17:08:06 +0200 Sebastian Dröge * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: libvisual: Rename get_type() function to prevent conflicts with static linking https://bugzilla.gnome.org/show_bug.cgi?id=728443 2014-06-28 17:01:52 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: badvideo: Rename videoconvert functions to prevent conflicts with static linking https://bugzilla.gnome.org/show_bug.cgi?id=728443 2014-06-28 09:43:48 -0300 Thiago Santos * tests/check/elements/compositor.c: compositor: tests: Fix pad leak Remember to unref requested pad === release 1.3.90 === 2014-06-28 11:01:13 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.3.90 2014-06-28 10:56:36 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-06-27 14:24:10 -0300 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: fix caps leak Let go the reference to the converter caps after using it 2014-06-27 10:41:55 +0100 Tim-Philipp Müller * tools/.gitignore: * tools/Makefile.am: * tools/gst-device-monitor-1.0.1: * tools/gst-device-monitor.c: tools: add gst-device-monitor-1.0 utility Just shows devices with basic info and exits. Or will wait for more devices to show up or be removed with the --follow option. It's also possible to pass filters as command line arguments in the form DEVICE_CLASSES or DEVICE_CLASSES:CAPS. 2014-06-26 16:18:05 +0200 Sebastian Dröge * gst-libs/gst/audio/streamvolume.h: * gst-libs/gst/tag/xmpwriter.h: libs: There is no G_TYPE_CHECK_INTERFACE_TYPE and G_TYPE_CHECK_INTERFACE_CAST Remove the macros that used them, nobody could've used them anyway. 2014-06-27 00:09:08 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix a refcount error when keeping the buffer We take a ref on the pad's buffer at the beginning so we need to unref when we are done in all cases. 2014-06-26 11:35:43 +0200 Gwenole Beauchesne * gst-libs/gst/pbutils/codec-utils.c: pbutils: handle more H.264 profiles and levels. Recognize H.264 Level 5.2, as exposed by modern 2160p30+ streams, i.e. commonly known as 4K. Also add initial support for handling Annex.G (SVC) profiles. https://bugzilla.gnome.org/show_bug.cgi?id=732269 Signed-off-by: Gwenole Beauchesne 2014-06-26 04:27:31 +1000 Jan Schmidt * gst/typefind/gsttypefindfunctions.c: typefind: Bump iso mp4 typefinder to PRIMARY. Add mp4 extension hint. Fixes a problem with at least one file being detected incorrectly as DTS because there's DTS packets early enough in the file. 2014-06-22 13:14:27 +0100 Julien Isorce * ext/gl/gstglvideomixer.c: gl: enable glvideomixer on GLES2 2014-06-25 12:00:34 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: bas output width/height on the pad properties Allows automatic negotiation of the size in the following case: gst-launch-1.0 glvideomixer name=m sink_0::xpos=0 sink_1::xpos=320 ! glimagesink \ videotestsrc ! m. \ videotestsrc pattern=1 ! m. https://bugzilla.gnome.org/show_bug.cgi?id=731878 2014-06-25 10:18:48 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't clobber already allocated shader 2014-06-24 08:01:21 +0200 Edward Hervey * gst/compositor/Makefile.am: compositor: Fix Makefile CFLAGS/LIBADD ordering We want to use the libraries from -bad if/when present 2014-06-23 22:40:23 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: don't clobber already heap allocated video frame CID # 1223440 2014-06-23 22:36:23 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix up the parent chaining for dispose and finalize 2014-06-23 01:02:22 +0100 Tim-Philipp Müller * tests/check/libs/rtpbasedepayload.c: tests: fix vararg handling in rtpbasedepayload unit test Makes it pass on 32-bit systems. 2014-06-23 00:33:18 +0100 Tim-Philipp Müller * tests/check/libs/rtpbasepayload.c: tests: fix vararg handling in rtpbasepayload unit test Makes it pass on 32-bit systems. 2014-06-22 20:42:13 +0200 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Filter out ANY capsfeatures from the converter caps We can't convert to ANY capsfeatures, they are only there so that we can passthrough whatever downstream can support... but we definitely don't want to return them to upstream. 2014-06-22 19:36:14 +0200 Sebastian Dröge * configure.ac: Back to development 2014-06-22 19:22:28 +0200 Sebastian Dröge * gst/compositor/compositororc-dist.c: Release 1.3.3 === release 1.3.3 === 2014-06-22 18:07:57 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.3.3 2014-06-22 17:25:42 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-06-22 14:23:32 +0200 Sebastian Dröge * po/da.po: * po/de.po: * po/hu.po: * po/id.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/uk.po: po: Update translations 2014-06-21 16:52:51 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.h: libs:video: Properly declare APIs as UNSTABLE 2014-06-20 22:02:07 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: libs: videoaggregato: Do not import videoconvert.h in gstvideoaggregatorpad.h + Add a Private structure to the GstVideoAggregatorPad + Add some padding 2014-06-20 11:10:45 +0200 Thibault Saunier * ext/gl/gstglvideomixer.c: gl:glvideomixer: Add the Compositor in the element metadata class So it is possible to pick one compositing element from the registry 2014-05-22 19:46:02 +0200 Mathieu Duponchelle * gst/compositor/Makefile.am: * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/blendorc.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: * gst/compositor/compositororc.orc: * gst/compositor/compositorpad.h: * tests/check/elements/compositor.c: compositor: Add a new compositor based on the new GstVideoAggregator base class It is a replacement for videomixer with a similare API Co-Authored by: Thibault Saunier https://bugzilla.gnome.org/show_bug.cgi?id=731919 2014-06-10 11:26:53 +0200 Thibault Saunier * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: Port glmixer to the GstVideoAggregator baseclass https://bugzilla.gnome.org/show_bug.cgi?id=731921 2014-06-03 19:00:34 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Create a new GstVideoAggregator baseclass This base class has been added to a newly created libgstbadvideo library Co-Authored by: Thibault Saunier https://bugzilla.gnome.org/show_bug.cgi?id=731918 2014-06-20 11:00:14 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * tests/check/libs/audiodecoder.c: audiodecoder: Don't be too picky about the output frame counter With most decoder libraries, and especially when accessing codecs via OpenMAX or similar APIs, we don't have the ability to properly related the output buffers to a number of input samples. And could e.g. get a fractional number of input buffers decoded at a time. Previously this would in the end lead to an error message and stopped playback. Change it to a warning message instead and try to handle it gracefully. In theory the subclass can now get timestamp tracking wrong if it completely misuses the API, but if on average it behaves correct (and gst-omx and others do) it will continue to work properly. Also add a test for the new behaviour. We don't change it in the encoder yet as that requires more internal logic changes AFAIU and I'm not aware of a case where this was a problem so far. 2014-06-15 15:18:46 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: silence incorrect number of arguments in format warning 2014-06-15 13:59:07 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: wire up the alpha pad property 2014-06-15 13:44:04 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: support input frame scaling 2014-06-15 12:26:21 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add positioning of input streams https://bugzilla.gnome.org/show_bug.cgi?id=729798 2014-06-12 12:36:26 +0200 Michael Olbrich * gst/tcp/gsttcpserversrc.c: tcpserversrc: close the server socket after accepting a connection g_socket_accept() is only called once for a server socket. So keeping the socket open ist just confusing possible clients. https://bugzilla.gnome.org/show_bug.cgi?id=731566 2014-06-13 10:04:47 +0100 Tim-Philipp Müller * gst/tcp/gsttcpclientsrc.c: tcpclientsrc: return FLUSHING when select() is canceled https://bugzilla.gnome.org/show_bug.cgi?id=731567 2014-06-12 13:23:29 +0200 Michael Olbrich * gst/tcp/gsttcpserversrc.c: tcpserversrc: return FLOW_FLUSHING instead of an error when accept/select is canceled Canceling the accept/select happens when the source is shut down. This is not an error and the GST_FLOW_ERROR causes problems when only part of the pipeline is shut down. https://bugzilla.gnome.org/show_bug.cgi?id=731567 2014-06-12 11:55:59 +0200 Edward Hervey * gst-libs/gst/sdp/gstmikey.c: mikey: Fix Wall to NTP conversion We are scaling from a unit in microseconds to a unit in ((1 << 32) per seconds). We therefore scale the microseconds values by: value of a second in the target unit (1 << 32) -------------------------------------------------------------- value of a second in the origin format (1 000 000 microsecond) 2014-06-06 12:18:49 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: allow unset seek stop time in push mode 2014-06-11 12:50:23 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: docs: add streamsynchronizer to documentation 2014-06-11 12:43:35 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: docs: add playsink element to documentation 2014-06-11 10:53:50 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: docs: add navigation interface to docs 2014-06-10 12:59:53 -0300 Thiago Santos * gst-libs/gst/app/gstappsrc.c: appsrc: add send_event handler for flushing Adds a send_event handling for allowing appsrc to flush its internal data, allowing users to flush the pipeline without setting it to null. https://bugzilla.gnome.org/show_bug.cgi?id=724231 2014-06-09 21:05:00 -0300 Thiago Santos * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_image.h: videoscale: vs_image: strides are a gsize The strides that are set from the GstVideoInfo structs are a gsize. Using an int can cause overflows when dealing with large enough images https://bugzilla.gnome.org/show_bug.cgi?id=731195 2014-06-09 19:44:56 -0300 Thiago Santos * gst-libs/gst/video/video-info.c: * tests/check/libs/video.c: video: avoid overflows when doing int operations for size size is a gsize, so cast the operands to it to avoid overflows and setting wrong value to the video size. Includes tests. https://bugzilla.gnome.org/show_bug.cgi?id=731195 2014-06-09 10:53:03 +0200 Edward Hervey * ext/theora/gsttheoraenc.c: theoraenc: Remove unneeded check running timestamps are guaranteed to be positive and valid since the GstVideoEncoder base class will clip incoming buffers CID #1139797 2014-06-09 10:38:53 +0200 Edward Hervey * ext/vorbis/gstvorbisenc.c: vorbisenc: add missing va_end in variadic function Coverity 1139944 2014-06-06 10:35:31 +0100 Vincent Penquerc'h * tests/check/libs/videodecoder.c: tests: fix uninitialized variable use in video decoder test 2014-06-05 15:35:31 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Also catch CODEC_NOT_FOUND errors and delay them until all decodebins are done 2014-06-04 17:00:34 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Ignore missing-plugin messages unless all decodebins post one When playing RTSP streams there will be one decodebin per stream. If some of them fail because of a missing plugin we should not fail completely but play the supported streams at least. https://bugzilla.gnome.org/show_bug.cgi?id=730868 2014-06-04 14:14:14 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Do async-done on expose errors too 2014-05-20 12:28:15 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: fix checking mmap flags A simple '&' is not sufficiant. With mmapping_flags == PROT_READ and prot == PROT_READ|PROT_WRITE the check produces the wrong result. Change the check to make sure that prot is a subset of mmapping_flags. https://bugzilla.gnome.org/show_bug.cgi?id=730559 2014-06-03 15:16:44 +0100 Vincent Penquerc'h * ext/alsa/gstalsasink.c: alsasink: make gst-ident happy 2014-06-03 15:10:33 +0100 Vincent Penquerc'h * ext/alsa/gstalsasink.c: alsasink: fix occasional crash intersecting invalid values When a pipeline using alsasink and push mode upstream fails to preroll, the following state will be the case: - A loop upstream will be PAUSED, pushing a first buffer - alsasink will be READY, pending PAUSED, because async On error, the pipeline will switch to NULL. alsasink is in READY, so goes to NULL immediately. It zeroes its cached caps. Meanwhile, the upstream loop can cause a caps query, conccurent with the state change. This will use those cached caps. If the zeroing happens between the NULL test and the dereferencing, GStreamer will critical down in the GstValue code. Since it appears that such a gap between states (PAUSED and pushing upstream, and NULL downstream) is expected, we need to protect the read/write access to the cached caps. This fixes the critical. See https://bugzilla.gnome.org/show_bug.cgi?id=731121 2013-10-14 18:56:55 -0300 Thibault Saunier * gst-libs/gst/video/gstvideodecoder.c: * tests/check/libs/videodecoder.c: videodecoder: Keep still meaningfull pending events on FLUSH_STOP Only EOS and segment should be deleted in that case. + Add a testcase https://bugzilla.gnome.org/show_bug.cgi?id=709868 2013-10-14 18:48:08 -0300 Thibault Saunier * gst-libs/gst/audio/gstaudiodecoder.c: * tests/check/libs/audiodecoder.c: audiodecoder: Keep still meaningfull pending events on FLUSH_STOP Only EOS and segment should be deleted in that case. https://bugzilla.gnome.org/show_bug.cgi?id=709868 2013-10-14 18:45:10 -0300 Thibault Saunier * gst-libs/gst/video/gstvideoencoder.c: * tests/check/libs/videoencoder.c: videoencoder: Keep still meaningfull pending events on FLUSH_STOP Only EOS and segment should be deleted in that case. https://bugzilla.gnome.org/show_bug.cgi?id=709868 2013-10-10 18:50:17 -0300 Thibault Saunier * gst/encoding/gststreamsplitter.c: streamsplitter: Keep still meaningfull pending events on FLUSH_STOP Only EOS and segment should be deleted in that case. https://bugzilla.gnome.org/show_bug.cgi?id=709868 2013-10-10 18:48:47 -0300 Thibault Saunier * gst-libs/gst/audio/gstaudioencoder.c: * tests/check/libs/audioencoder.c: audioencoder: Keep still meaningfull pending events on FLUSH_STOP Only EOS and segment should be deleted in that case. https://bugzilla.gnome.org/show_bug.cgi?id=709868 2014-06-02 12:40:27 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: consider all opus packets as "keyframes" This lets oggdemux determine they are not delta units, and removes spurious per packet warnings about being unable to determine the packet's keyframeness. 2014-05-12 17:13:50 +0200 Edward Hervey * gst-libs/gst/sdp/gstmikey.c: mikey: Free MikeyPayload in error cases CID #1212136 2014-03-16 14:27:30 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: * tests/check/elements/decodebin.c: decodebin: aggregate buffering messages Aggregate buffering messages to only post the lower value to avoid setting pipeline to playing while any multiqueue is still buffering. There are 3 scenarios where the entries should be removed from the list: 1) When decodebin is set to READY 2) When an element posts a 100% buffering (already implemented) 3) When a multiqueue is removed from decodebin. For item 3 we don't need to handle it because this should only happen when either 1 is hapenning or when it is playing a chained file, for which number 2 should have happened for the previous stream to finish https://bugzilla.gnome.org/show_bug.cgi?id=726423 2014-05-28 10:23:24 +0100 Philip Withnall * gst-libs/gst/audio/audio-format.c: audio: Add a missing precondition to gst_audio_format_from_string() https://bugzilla.gnome.org/show_bug.cgi?id=730874 2014-05-26 20:57:30 -0300 Thiago Santos * tests/check/libs/audiodecoder.c: * tests/check/libs/videodecoder.c: tests: videodecoder: audiodecoder: add tests for eos after segment Tests that pushing a buffer after the segment returns EOS 2014-05-26 21:24:07 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: actually return the push result in backwards playback It was always returning _OK regardless of what downstream returned 2014-05-26 12:44:48 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: return EOS when segment is over if a buffer is clipped by being completely out of segment, check if this buffer is after the end of the segment and return EOS upstream https://bugzilla.gnome.org/show_bug.cgi?id=709224 2014-05-26 12:44:38 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: return EOS when segment is over if a buffer is clipped by being completely out of segment, check if this buffer is after the end of the segment and return EOS upstream https://bugzilla.gnome.org/show_bug.cgi?id=709224 2014-05-26 11:45:29 -0300 Thiago Santos * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: use new gstutils helper GstFlowCombiner Fixes the handling of GST_FLOW_EOS by using the helper object from gstutils that does the correct combination of flow returns. https://bugzilla.gnome.org/show_bug.cgi?id=709224 2014-05-10 18:32:28 +0200 Miguel París Díaz * ext/opus/gstopusenc.c: opusenc: Use aux vars to minimize critical region This avoid dead lock between gst_audio_encoder_finish_frame() and gst_opus_enc_get_property(). Also, now bytes var is set into protected section. https://bugzilla.gnome.org/show_bug.cgi?id=729882 2014-05-23 19:21:35 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: play: use cubic volume factor when adjusting volume This is more natural and better-suited for a playback application. 2014-05-21 13:23:24 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.3.2 === 2014-05-21 13:06:34 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.3.2 2014-05-21 12:01:15 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-05-21 10:50:56 +0200 Sebastian Dröge * common: Automatic update of common submodule From 211fa5f to 1f5d3c3 2014-05-21 10:43:49 +0200 Sebastian Dröge * tests/check/libs/video.c: video: And check comparison for real 2014-05-21 10:40:32 +0200 Sebastian Dröge * tests/check/libs/video.c: video: Fix broken comparison in unit test libs/video.c:540:50: error: comparison of constant 2 with boolean expression is always false [-Werror,-Wtautological-constant-out-of-range-compare] && !GST_VIDEO_INFO_N_PLANES (&vinfo) > 2) { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~ 2014-05-20 15:59:53 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp-transport: clarify port usage Comment in the docs what the client_port and server_port fields are used for in TCP mode (if the application wants to set those values). 2014-05-20 11:18:56 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: share the mapping with shared copies of the memory With lots of shared memory instances (e.g. created by a RTP payloader) the overhead of duplicating the file descriptor and creating extra mappings is significant. To avoid this, the parent memory maps the whole region and the shared copies just reuse the same mapping. https://bugzilla.gnome.org/show_bug.cgi?id=730441 2014-05-19 13:28:52 +0200 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Add read source on write socket. Add a read source on write socket when lost tunnel. To be able to detect when clint closes get channel. This is already done in gst_rtsp_source_dispatch_write but only when the queue is empty. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=730368 2014-05-20 09:48:56 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Always take the playsink lock when adding or removing pad probes Otherwise we might end up inside the callback without having stored the probe id... then try to remove that probe (not!) from the callback and wait forever for the pad to unblock. 2014-05-19 13:57:41 +0100 Vincent Penquerc'h * ext/alsa/gstalsasink.c: alsasink: pass correct error to g_strerror The error we get is a negated errno. While there, fix a couple typos in messages. 2014-05-19 11:17:33 +0200 Sebastian Dröge * tools/gst-play.c: gst-play: Free playlist_file string if only printing the version 2014-05-13 14:08:20 +0600 Anuj Jaiswal * tools/gst-play.c: audio_sink and video_sink leakage fixed https://bugzilla.gnome.org/show_bug.cgi?id=730010 2014-05-13 11:51:55 +0200 Edward Hervey * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Don't use argument for local storage By re-using the uri argument for storing local data, we could end up in a situation where we would free uri ... which would actually be the string passed in argument. Instead explicitely use a local variable. Fixes double-free issues. CID #1212176 2014-05-12 13:18:50 -0400 Nicolas Dufresne * gst-libs/gst/video/video-info.c: video-info: Also check the stride and offset are equal gst_video_info_is_equal() was not checking if stride and offset had changed. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-12 17:17:07 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Free data after removing it from the list While it wouldn't have caused any failures (g_list_remove doesn't dereference the provided pointer), it does make the code cleaner. CID #1212174 2014-05-12 17:15:17 +0200 Edward Hervey * gst-libs/gst/sdp/gstmikey.c: mikey: Actually replace payload ... This function is intented to replace the payload, let's actually do that instead of putting back the same (freed) payload CID #1212175 2014-05-12 17:13:50 +0200 Edward Hervey * gst-libs/gst/sdp/gstmikey.c: mikey: Free MikeyPayload in error cases CID #1212135 CID #1212136 CID #1212137 CID #1212138 2014-05-10 23:50:44 +0200 Thibault Saunier * ext/pango/gstbasetextoverlay.c: pango: Do not try to add a feature to a caps features ANY It does not makes sense and asserts 2014-05-09 15:32:18 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstxmptag.c: tag: xmp: fix leaks in error code paths CID 1212133 2014-05-06 11:12:19 +0200 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Reset control_stream. Reset control_stream when gst_rtsp_connection_close. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=729632 2014-04-15 14:51:46 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Retry setting configuration with modified config Buffer pool set_config() may return FALSE if requested configuration needed small changes. Reget the config and try setting it again. This ensure we have a configured pool if possible. 2014-05-08 17:10:26 +0200 Wim Taymans * gst/playback/gsturidecodebin.c: uridecodebin: use downloadbuffer for download buffering Use the new downloadbuffer element to implement the download buffering feature Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680183 2014-05-06 13:01:32 -0400 Luis de Bethencourt * ext/ogg/gstoggmux.c: oggmux: push eos event when empty pad data If gst_ogg_mux_queue_pads returns NULL it means we are at EOS, because we get a NULL buffer and this function never sets bestpad. https://bugzilla.gnome.org/show_bug.cgi?id=729315 2014-05-06 08:07:38 +0000 Руслан Ижбулатов * configure.ac: configure: Use X11 detection macro from common https://bugzilla.gnome.org/show_bug.cgi?id=729621 2014-05-06 07:51:11 +0100 Tim-Philipp Müller * tests/examples/playback/playback-test.c: examples: playback-test: fix crashes when setting buffer-size playbin's buffer-size property takes a gint, not a gint64, so only pass the bits expected to the vararg function, or the terminator might not be found, leading to crashes, esp. with negative numbers. Spotted by Ravi Kiran K N https://bugzilla.gnome.org/show_bug.cgi?id=729617 2014-05-06 07:50:16 +0100 Tim-Philipp Müller * tests/examples/playback/playback-test.c: examples: fix indentation of playback-test 2014-05-06 08:13:24 +0100 Tim-Philipp Müller * tests/examples/playback/playback-test.c: Revert "playback-test: Set buffer-size only for non-negative size" This reverts commit 07a637e2847d56d0f2b0c0ac9095bf37dd324e26. 2014-05-06 11:31:18 +0530 Ravi Kiran K N * tests/examples/playback/playback-test.c: playback-test: Set buffer-size only for non-negative size https://bugzilla.gnome.org/show_bug.cgi?id=729617 2014-05-05 23:29:44 -0400 Luis de Bethencourt * win32/common/libgstpbutils.def: win32: Update defs file commit 622007e7db7e3d32bf8e04e673e057897b646220 added the function gst_discoverer_info_get_missing_elements_installer_details (). It needs to be added to the defs file. 2014-05-04 15:54:54 +0000 Руслан Ижбулатов * configure.ac: * gst-libs/gst/rtsp/Makefile.am: rtsp: Link to ws2_32 on Windows Needed for getsockname and setsockopt https://bugzilla.gnome.org/show_bug.cgi?id=729514 2014-05-04 15:54:06 +0000 Руслан Ижбулатов * configure.ac: Make X11 detection more precise Don't be content with just X11/Xlib.h, check for X11/XKBlib.h as well. This prevents false positives (for example, from partial X11 headers installed by tcl/tk). https://bugzilla.gnome.org/show_bug.cgi?id=729513 2014-05-04 15:57:35 +0000 Руслан Ижбулатов * tests/examples/playback/playback-test.c: tests: fix printf format compiler warning in playback test on win32 https://bugzilla.gnome.org/show_bug.cgi?id=729515 2014-05-04 18:14:54 +0100 Tim-Philipp Müller * tests/check/libs/.gitignore: Add new unit test binary to .gitignore 2014-01-14 15:39:55 +0100 Thibault Saunier * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: Add APIs to simply get installer details for missing plugins Currently the API is far from optimal and the user has to work around our badly defined API to simply install missing plugins. API: new: gst_discoverer_info_get_missing_elements_installer_details deprecated: gst_discoverer_info_get_misc gst_discoverer_stream_info_get_misc https://bugzilla.gnome.org/show_bug.cgi?id=720596 2014-05-03 20:48:27 +0200 Sebastian Dröge * configure.ac: Back to development 2014-05-03 18:16:21 +0200 Sebastian Dröge * gst/audiomixer/gstaudiomixerorc-dist.c: Release 1.3.1 2014-05-03 18:57:38 +0200 Sebastian Dröge * tests/check/Makefile.am: textoverlay: Link unit test with the local version of the library, not an installed one === release 1.3.1 === 2014-05-03 17:50:10 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/video/video-orc-dist.c: * gst-plugins-base.doap: * gst/adder/gstadderorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/volume/gstvolumeorc-dist.c: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 1.3.1 2014-05-03 17:48:04 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-05-03 17:22:10 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2014-05-02 19:09:59 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtpbasepayload.c: rtpbasepayload: Implement reconfigure event & renegotiation without subclass Implement the reconfigure event, also do correct downstream caps negotiation if the subclass doesn't implementy set_caps. https://bugzilla.gnome.org/show_bug.cgi?id=725361 2014-05-02 19:09:44 -0400 Olivier Crête * tests/check/libs/rtpbasepayload.c: tests/check/libs/rtpbasepayload.c: Run gst-indent https://bugzilla.gnome.org/show_bug.cgi?id=725361 2014-05-03 10:14:51 +0200 Sebastian Dröge * common: Automatic update of common submodule From bcb1518 to 211fa5f 2014-05-02 18:30:16 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Save the PT after fixating 2014-05-02 19:36:34 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspdefs: remove outdated comments 2014-05-02 15:09:35 +0100 Vincent Penquerc'h * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: avoid underflow in size calculation 2014-05-01 19:31:09 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not parse caps for not using it Saving some cpu 2014-01-03 11:06:22 +0100 John Bassett * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: restrict initial random sequence number to be <= 32767 In order to prevent SRTP roll over counter issues the initial sequence number is restricted to <= 32767. This is recommended by RFC 4568 section 6.4. 2014-05-01 15:11:04 +0200 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Add some more gobject-introspection annotations for bindings https://bugzilla.gnome.org/show_bug.cgi?id=729123 2014-05-01 13:15:57 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Don't block on non-serialized events https://bugzilla.gnome.org/show_bug.cgi?id=729321 2014-05-01 13:08:24 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't block on non-serialized events https://bugzilla.gnome.org/show_bug.cgi?id=729321 2014-05-01 13:06:53 +0200 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Don't block on non-serialized events https://bugzilla.gnome.org/show_bug.cgi?id=729321 2014-05-01 13:05:05 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Don't block on non-serialized events https://bugzilla.gnome.org/show_bug.cgi?id=729321 2014-04-30 11:06:27 +0100 Vincent Penquerc'h * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: check claimed data size against available size Coverity 1208773 2014-04-23 08:06:36 +0200 Göran Jönsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Empty queue when flush. Empty the watchs queue when calling gst_rtsp_watch_set_flushing with flushing variabel is TRUE. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728772 2014-03-16 16:09:36 +0100 Ognyan Tonchev * tests/check/libs/rtspconnection.c: rtspconnection: Add more tests Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728907 2014-04-29 10:15:47 -0400 Luis de Bethencourt * gst/videotestsrc/videotestsrc.c: videotestsrc: fix undefined behaviour of left-shift With a small type for the color values being left-shifted, the result is undefined and it could potentially overflow. https://bugzilla.gnome.org/show_bug.cgi?id=729195 2014-04-29 10:59:02 +0100 Tim-Philipp Müller * win32/common/libgstrtsp.def: * win32/common/libgstsdp.def: win32: fix export files again Revert unintended parts of d8a0927930a87a2eb60d4c98cb3fea8aed911b27 2014-04-29 11:39:18 +0200 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: * win32/common/libgstrtsp.def: * win32/common/libgstsdp.def: Add mikey.h file 2014-04-29 09:58:21 +0200 Haakon Sporsheim * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Make caps writable before fixating https://bugzilla.gnome.org/show_bug.cgi?id=729114 2014-04-29 09:54:18 +0200 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: Add array length annotation to gst_sdp_message_parse_buffer https://bugzilla.gnome.org/show_bug.cgi?id=729123 2014-04-29 08:46:02 +0200 Stian Selnes * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: fix memory leak when gst_rtp_buffer_map fails Make sure rtp->data[3] is set before jumping to error path. https://bugzilla.gnome.org/show_bug.cgi?id=729117 2014-04-28 18:47:06 +0530 Ravi Kiran K N * tools/gst-play.c: gst-play: add option to supply media files from playlist file https://bugzilla.gnome.org/show_bug.cgi?id=728845 2014-04-27 00:49:01 +0100 Tim-Philipp Müller * gst/gio/gstgiobasesink.c: giobasesink: we mustn't change the format of a query response Not even in the DEFAULT case. That's bad 0.10 behaviour, no caller is ever going to check the format of the response. 2014-04-27 00:25:16 +0100 Tim-Philipp Müller * gst/playback/gstplay-enum.c: playbin: add nick for soft colorbalance play flag to fix gst-inspect Fix gst-inspect-1.0 playbin criticals when printing the flags, which was caused by a missing nick name for one of the flags. 2014-04-26 23:26:09 +0100 Tim-Philipp Müller * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtppayloads.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstsdpmessage.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/playback/gstplaybin2.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: docs: remove outdated and pointless 'Last reviewed' lines from docs They are very confusing for people, and more often than not also just not very accurate. Seeing 'last reviewed: 2005' in your docs is not very confidence-inspiring. Let's just remove those comments. 2014-04-25 17:32:59 +0200 Sebastian Dröge * gst/gio/gstgiobasesink.c: giobasesink: Implement handling of the SEEKING query 2014-04-25 11:30:37 +0200 Edward Hervey * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Plug caps leaks We were returning in various places without unreffing the caps, and we were also leaking (overwriting) the caps we got from _get_current_caps() Spotted by Haakon Sporsheim in #gstreamer 2014-04-22 18:28:10 +0200 Sebastian Dröge * gst/audioresample/resample.c: audioresample: Don't left-shift into the sign bit, instead use unsigned integers 2014-04-22 00:21:01 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: avoid adding empty strings Fixes assertion with some jpeg files 2014-04-21 15:35:32 +0200 Wim Taymans * tools/gst-play.c: play: Improve pipeline states First set the pipeline to the PAUSED state to check if we are dealing with a live pipeline or not. Then move to the desired state. If we don't do this, it is possible that we receive a BUFFERING message before we know that the pipeline is live and we would set the pipeline to PAUSED and deadlock. 2014-04-21 15:33:10 +0200 Wim Taymans * tools/gst-play.c: play: Update buffering state for live pipelines Update the buffering variable, even for live pipelines so that we don't print \n for each buffering message. 2014-04-16 19:53:14 +0200 Sebastian Dröge * gst-libs/gst/video/video-frame.c: videoframe: Initialise GstVideoFrame to zeroes if mapping fails This should allow for more meaningful errors. Dereferencing NULL is more useful information than dereferencing a random address happened to be on the stack. 2014-04-16 11:43:40 +0100 Vincent Penquerc'h * gst-libs/gst/tag/gstexiftag.c: exiftag: catch buffer mapping failure Might be what caused: Coverity 1139734 2014-04-15 19:17:06 +0200 Sebastian Dröge * tests/check/elements/audioresample.c: audioresample: Fix memory leaks in test 2014-04-15 19:16:44 +0200 Sebastian Dröge * gst/audioresample/gstaudioresample.c: * gst/audioresample/resample.c: audioresample: Fix up indention 2014-04-15 19:16:18 +0200 Sebastian Dröge * gst/audioresample/resample_sse.h: audioresample: Fix out of bounds memory accesses 2014-04-15 13:57:08 +0200 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: pango: Make static caps actually static to fix a memory leak 2014-04-15 13:54:45 +0200 Sebastian Dröge * tests/check/elements/videotestsrc.c: videotestsrc: Fix memory leak in test 2014-04-15 13:48:46 +0200 Sebastian Dröge * tests/check/elements/encodebin.c: encodebin: Fix memory leak in test 2014-04-15 13:48:17 +0200 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Free preset name in finalize 2014-04-15 13:39:39 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Clear Ogg streams before initing them They might've been inited before, in which case we leak memory when initing them again without clearing. 2014-04-15 13:03:34 +0200 Sebastian Dröge * tests/check/elements/audioconvert.c: audioconvert: Fix leaks in unit test 2014-04-15 11:55:22 +0200 Sebastian Dröge * tests/check/libs/videodecoder.c: * tests/check/libs/videoencoder.c: videoencoder/decoder: Fix memory leaks in the tests 2014-04-15 11:53:43 +0200 Sebastian Dröge * tests/check/libs/audiodecoder.c: audiodecoder: Actually allocate enough memory for 64 bits, not just 32 bits Also fix a memory leak. 2014-04-15 11:43:41 +0200 Sebastian Dröge * tests/check/libs/audioencoder.c: audioencoder: Fix memory leaks in unit test 2014-04-15 10:29:12 +0200 Sebastian Dröge * tests/check/libs/rtp.c: rtp: Fix GBytes memory leak in test 2014-04-12 07:10:36 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepay: add stats property Add a stats property that holds a structure with all the current values of the depayloader. See https://bugzilla.gnome.org/show_bug.cgi?id=646577 2014-04-12 06:43:24 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: update docs 2014-04-12 06:27:36 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: add current timestamp and seqnum offset to stats Expose the current timestamp and seqnum offset in the stats See https://bugzilla.gnome.org/show_bug.cgi?id=646577 2014-04-11 10:24:10 +0200 Josep Torra * ext/pango/gsttextrender.c: * ext/pango/gsttextrender.h: textrender: push segment event after caps event Fixes warning "Sticky event misordering, got 'segment' before 'caps'". 2014-04-10 16:08:29 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: use G_GUINT64_CONSTANT instead of ll suffix Thanks slomo for pointing out it's not standard. 2014-04-10 15:55:57 +0100 Vincent Penquerc'h * sys/xvimage/xvcontext.c: xvimage: remove dead code matching_attr can not be NULL here, we've tested that away a few lines beforehand. Coverity 1139655 2014-04-10 15:51:05 +0100 Vincent Penquerc'h * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: bail out on unsupported caps This avoids using uninitialized data (and properly rejects caps). Coverity 1139898 2014-04-10 15:16:03 +0100 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: remove pointless checks for data being NULL It was already checked in an early out, and as it's only incremented for at most the size of the passed buffer, it can only become NULL in an address wraparound. While there, don't cast away const on a pointer. Coverity 1139845 2014-04-10 13:34:58 +0100 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin: consider "no demuxer" case to not have dynamic pads This fixes a possible NULL dereference. Coverity 1195146 2014-04-10 13:28:30 +0100 Vincent Penquerc'h * gst/encoding/gstencodebin.c: encodebin: guard against gst_pad_get_peer returning NULL If it does, the pad may be leaked if it's a request pad, though. Coverity 1139799 2014-04-10 13:26:42 +0100 Vincent Penquerc'h * gst/encoding/gstencodebin.c: encodebin: guard against pathological NULL dereference Coverity 1139798 2014-04-10 12:32:24 +0100 Vincent Penquerc'h * gst/audioresample/resample.c: audioresample: reject 0 denominator when creating resampler Coverity 1195140, 1195139, 1195138 2014-04-10 12:14:48 +0100 Vincent Penquerc'h * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: guard against NULL pointer dereference on error If gst_video_overlay_rectangle_apply_global_alpha is called with a rectangle with unsuitable alpha, expanding the alpha plane will fail, and thus lead to dereferencing a NULL src pointer. It's not certain this will happen in practice, as the function is static and callers might ensure suitable alpha before calling, but there is no apparent explicit such check. Add prologue asserts for proper alpha to explicitely prevent this. Coverity 1139707 2014-04-10 12:10:47 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstvideometa.c: videometa: fix texture_type memcpy size Coverity 1139589, 1139588 2014-04-10 11:19:26 +0100 Vincent Penquerc'h * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: fix multi statement macros Wasn't playing nice with an if statement below. Coverity 1139767 2014-04-10 11:14:25 +0100 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: guard aginst overflow An audio CD may contain about a tenth of the samples 32 bit can represent, so it doesn't seem likely this will be hit in practice. Coverity 1139805 2014-04-10 12:30:50 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: descriptions: default to systemstream=false for partial video/mpeg caps Assume systemstream=false for video/mpeg caps where that field is missing. 2014-04-10 10:57:53 +0100 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: avoid possible sample count overflow At 48 kHz, 2<<31 samples is reached before 13 hours so it sounds plausible this would be hit. Coverity 1139800, 1139801 2014-04-10 10:45:21 +0100 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: fix comparison to unset timestamp Also rejects negative timestamps that aren't GST_CLOCK_TIME_NONE. Coverity 1139797 2014-04-10 10:33:46 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: fix a few left shifts operations on 32 bits cast to 64 bits This should not cause any actual bug since Theora and Daala have a maximum shift of 31, and a packet duration of 2^31 seems very implausible. But it fixes: Coverity 1139804, 1139803, 1139802 2014-04-10 10:29:34 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: remove NULL test after dereference And add NULLness asserts at top of function. The only call to this passes local variable pointers, so non NULL. Coverity 206375 2014-04-10 10:25:46 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: test for failure to return tag It should really not happen unless the tag list it corrupt, but the API returns a failure code so we may as well use it. Coverity 1139595 2014-04-10 10:22:43 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not dereference NULL pad in warning message Coverity 1197695 2014-04-10 09:18:05 +0200 Sebastian Dröge * gst-libs/gst/video/video-event.c: video-event: Update the running times in the force-keyunit events from the pad offsets 2014-04-09 16:03:15 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: In adaptive streaming mode, only have a fixed buffer limit for the non-buffering multiqueue 2014-04-09 11:02:00 +0100 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: add missing va_end in variadic function Coverity 1139944 2014-04-08 16:23:50 +0100 Vincent Penquerc'h * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: test for frame NULLness before dereferencing it Coverity 1195172, 1195171 2014-04-08 15:43:50 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: guard against address parse errors. 2014-03-25 17:11:34 +0100 Mathieu Duponchelle * gst/adder/gstadder.c: adder: rework the logic to check if eos has to be sent. Checking the size available was incorrect, and the infos for per-pad EOS are available. Same logic as audiomixer. fixes: https://bugzilla.gnome.org/show_bug.cgi?id=727025 2014-04-08 12:46:21 +0200 Josep Torra * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: parse channels field from compressed audio caps Also parse channels as an optional field in the caps for compressed audio formats. 2014-04-06 22:26:20 +1000 Jan Schmidt * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Consider all caps for overlays, not just the first. Check all supported caps on the overlay video pad, not just the first of (possibly) many. 2014-04-05 13:25:46 +0100 Tim-Philipp Müller * tools/gst-play-1.0.1: tools: update gst-play-1.0 man page 2014-04-02 07:20:43 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not deactivate the bufferpool, just unref Videodecoder does late renegotiation, it will wait for the next buffer before renegotiating its caps and bufferpool. It might happen that downstream element switched from passthrough to non-passthrough and sent a reconfigure upstream (that caused this renegotiation). This downstream element will ask the video sink below for the bufferpool with an allocation query and will get the same bufferpool that videodecoder is holding, too. When renegotiating, if videodecoder deactivates its bufferpool it might be deactivating the bufferpool that some element downstream is using and cause the pipeline to fail. https://bugzilla.gnome.org/show_bug.cgi?id=727498 2014-02-24 11:17:05 -0500 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: clip start samples to match clipped start time Clock slaving can clip start time to zero, giving us a shorted duration than we originally got. To keep in sync, we must then discard the samples falling before that zero timestamp. This possibly fixes random distortion caused by constant PA underflows which are never resynced. 2014-04-04 17:36:04 +0200 Wim Taymans * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * tests/check/libs/mikey.c: * win32/common/libgstsdp.def: mikey: Fix the KEMAC payload The KEMAC payload actually needs to have subpayloads and the key should go into the KEY_DATA subpayload. Add support for subpayloads and implement the KEY_DATA payload. Add some pointers to the conversion functions that allow us to add encryption and decryption later. 2014-04-04 02:14:50 +1100 Jan Schmidt * gst/playback/gstplaybin2.c: playbin: Drop reference to any source element in NULL state Drop the reference instead of waiting for either finalize(), or for a new source when reused. Everyone else already forgot about the old source. 2014-04-01 10:38:23 +0200 Göran Jönsson * win32/common/libgstrtsp.def: rtspconnection: Added gst_rtsp_watch_set_flushing to list. Added gst_rtsp_watch_set_flushing to list in file libgstrtsp.def 2014-04-02 23:05:11 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: fix array initialization 2014-04-02 22:43:41 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: fix assignment of temporary variables 2014-03-30 18:26:59 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Always drain the decoder after a discont group in reverse playback mode 2014-03-30 17:54:11 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Flush the decoder once per discont group, not once per keyframe 2014-03-30 17:54:11 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Handle reverse playback with multiple GOPs per discont group properly baseparse will reverse each GOP for us already, so the segment events can be after our keyframe. Make sure to get it and all other relevant sticky events before starting to decode. 2014-03-29 10:23:05 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Log event types of events that are pushed downstream 2014-03-27 20:15:01 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: In reverse playback mode we need to finish the subclass after passing all frames to it 2014-03-28 09:32:20 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: add flush method Add a method to set/unset the flushing state that makes _wait_backlog() unlock. See https://bugzilla.gnome.org/show_bug.cgi?id=725898 2014-03-27 16:43:10 -0400 Nicolas Dufresne * sys/ximage/ximagesink.c: ximagesink: only extrapolate alpha mask for 32-bit depth Instead of passing bogus alpha mask values when there's no alpha. https://bugzilla.gnome.org/show_bug.cgi?id=727188 2014-03-25 11:14:51 +0100 Wim Taymans * gst-libs/gst/sdp/gstmikey.c: mikey: fix return values of g_return_* 2014-03-25 11:07:34 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.c: rtsptransport: UDP is also default for SAVP and AVPF 2014-03-20 12:29:33 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: docs: add MIKEY docs 2014-03-15 18:46:52 +0100 Wim Taymans * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstmikey.c: * gst-libs/gst/sdp/gstmikey.h: * tests/check/Makefile.am: * tests/check/libs/mikey.c: * win32/common/libgstsdp.def: mikey: add MIKEY parsing helpers MIKEY is defined in RFC 3830 and is used to exchange SRTP encryption parameters between a sender and a receiver in a secure way. This library implements a subset of the features, enough to implement RFC 4567, using MIKEY in SDP and RTSP. 2014-03-16 17:04:44 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix minor memory leaks in error handling Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726642 2014-03-16 17:06:02 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix connection_poll() * Only check for conditions we are interested in. * Makes no sense to specify G_IO_ERR and G_IO_HUP in condition, they will always be reported if they are true. * Do not create timed source if timeout is NULL. * Correctly wait for sources to be dispatched, context_iteration() is not guaranteed to always block even if set to do so. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726641 2014-03-20 09:18:31 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: add pt and ssrc to stats 2014-03-16 08:34:30 -0300 Thiago Santos * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: tests: decodebin: port old decodebin2 test for parser and decoder linking They were in the old decodebin2.c tests file and were never ported. Now we can get rid of decodebin2.c 2014-03-16 17:00:38 +0100 Arun Raghavan * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: * tests/examples/playback/playback-test.c: playback: Add video-/audio-filter properties This provides an audio-filter and video-filter property to allow applications to set filter elements/bins. The idea is that these will e applied if possible -- for non-raw sinks, the filters will be skipped. If the application wishes to force the application of the filters, this can be done by setting the new flag introduced on playsink - GST_PLAY_FLAG_FORCE_FILTERS. https://bugzilla.gnome.org/show_bug.cgi?id=679031 2014-03-16 18:38:25 +0100 Sebastian Dröge * gst/playback/gstplay-enum.h: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: Revert "playback: Add video-/audio-filter properties" This reverts commit fb8fdedb4f4649aa33700bbc720131c1678df49f. 2014-03-15 16:05:22 +0100 Arun Raghavan * gst/playback/gstplay-enum.h: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playback: Add video-/audio-filter properties This provides an audio-filter and video-filter property to allow applications to set filter elements/bins. The idea is that these will be applied if possible -- for non-raw sinks, the filters will be skipped. If the application wishes to force the application of the filters, this can be done by setting the new flag introduced on playsink - GST_PLAY_FLAG_FORCE_FILTERS. https://bugzilla.gnome.org/show_bug.cgi?id=679031 2014-03-16 11:23:16 +0100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: move gl elements to ext subdirectory 2014-03-15 20:21:32 +0000 Руслан Ижбулатов * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Silence a compiler warning Cast the argument into (const char *) on W32, as winsock2 expects it. https://bugzilla.gnome.org/show_bug.cgi?id=726433 2014-03-15 11:24:23 +0100 Arun Raghavan * gst/playback/gstplaysink.c: playsink: Fix documentation for what the audio chain looks like https://bugzilla.gnome.org/show_bug.cgi?id=679031 2014-03-11 21:58:49 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update plugin docs and remove old properties and signals Re-generate .args and .signals file from scratch so that old signals that no longer exist (such as the 'new-decoded-pad' signal on decodebin) no longer show up in the documentation. 2014-03-11 22:36:01 +0100 Stefan Sauer * gst/audiomixer/gstaudiomixer.c: audiomixer: set a group-id on the stream-start event Set a default group-id to fix a warning printed by the sink. 2014-03-11 22:15:13 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: set a group-id on the stream-start event Set a default group-id to fix a warning printed by the sink. 2014-03-11 17:39:54 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add new header file 2014-03-06 12:59:08 -0300 Thiago Santos * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggmux: implement vp8 granulepos function Add an extra function to the oggstream map to inform it about the incoming buffers. This way oggmux can keep a count on the vp8 invisible frames and calculate the granulepos correctly. https://bugzilla.gnome.org/show_bug.cgi?id=722682 2014-03-05 16:34:42 -0300 Thiago Santos * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggmux: create vp8 header data if not provided in caps vp8 stream header shouldn't be assumed to be provided in caps always as this would repeat the same code in all demuxers/encoders. Instead, make oggmux generate them if they are not supplied. https://bugzilla.gnome.org/show_bug.cgi?id=722682 2014-03-06 13:55:17 +0100 Göran Jönsson * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: rtspconnection: gst_rtsp_watch_wait_backlog New method that wait until there is room in backlog queue. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725898 2014-03-06 13:50:27 +0100 David Svensson Fors * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: GstRTSPWatch func for tunnel GET response Add a callback in GstRTSPWatch where the response to HTTP GET for tunneled connections can be modified. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725878 2014-03-06 15:34:47 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspdefs: add RFC 4567 headers and status code This new Header and status code is used for SRTP 2014-03-07 17:09:24 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin: Buffer up to 5 seconds in multiqueue buffering mode 2 seconds might be too small for some container formats, e.g. MPEGTS with some video codec and AAC/ADTS audio with 700ms long buffers. The video branch of multiqueue can run full while the audio branch is completely empty, especially because there are usually more queues downstream on the audio branch. 2014-03-06 22:37:44 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Keep the number of buffers after an adaptive streaming demuxer lower Usually these buffers are multiple seconds large, and having a maximum of 5 buffers in the multiqueue there can use a lot of memory. Lower this to 2 for adaptive streaming demuxers. 2014-03-06 22:28:46 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Simplify adaptive streaming demuxer code a bit 2014-03-06 17:49:09 +0000 Adrien Schwartzentruber * ext/pango/gstbasetextoverlay.c: pango: demote debug WARNING to LOG for variable framerate video input No need why we need to warn about that, it's perfectly allowed. https://bugzilla.gnome.org/show_bug.cgi?id=725837 2014-01-30 15:41:49 +0000 Matthieu Bouron * tests/check/Makefile.am: * tests/check/elements/textoverlay.c: tests: add textoverlay passthrough with composition feature unit tests https://bugzilla.gnome.org/show_bug.cgi?id=721953 2014-01-23 12:20:05 +0000 Matthieu Bouron * ext/pango/gstbasetextoverlay.c: pango: basetextoverlay: handle video/x-raw(ANY) if downstream supports the GstVideoOverlayCompositionMeta API https://bugzilla.gnome.org/show_bug.cgi?id=721953 2014-01-23 12:19:13 +0000 Matthieu Bouron * gst-libs/gst/video/video-overlay-composition.h: video-overlay-composition: add GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION 2014-03-04 16:51:58 +0200 Andres Gomez * REQUIREMENTS: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.signals: docs: Removing GnomeVFS left bits gnomevfs was removed time ago but there are still some left bits. https://bugzilla.gnome.org/show_bug.cgi?id=725658 2014-03-05 00:35:30 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: lower H.263 typefinder max probability The typefinder returns LIKELY for as little as one possible sync and no bad sync (not even taking into account how much data was looked at for that). It's generally just not fit for purpose, so should just not return anything like LIKELY at all ever, even more so since it only recognises one out of ten H263 files, and likes to mis-detect mp3s as H263. https://bugzilla.gnome.org/show_bug.cgi?id=700770 https://bugzilla.gnome.org/show_bug.cgi?id=725644 2014-03-02 11:58:58 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: * tests/check/libs/rtspconnection.c: rtspconnection: Call closed() when GET is closed in tunneled mode This patch adds read source on the write socket in tunneled mode and we get a callback when client disconnects the GET channel. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725313 2014-03-02 12:58:21 +0100 Sebastian Rasmussen * gst-libs/gst/video/video-format.c: videoformat: Remove duplicate/incorrect section Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521 2014-03-02 12:54:08 +0100 Sebastian Rasmussen * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/video/video-format.c: docs: Add annotations for return values Rephrase and clarify some return value descriptions Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521 2014-03-02 05:06:07 +0100 Sebastian Rasmussen docs: Fix argument and annotation typos * colorbalance: Fix misspelled annotation * rtsp: Replace incorrectly documented function argument * sdp: Escape @ character to avoid gtk-doc warning * video-*: Add missing annotation colon * videodecoder/video-color: Fix function argument typos * videoutils: Remove unknown annotation field Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521 2014-03-02 05:09:05 +0100 Sebastian Rasmussen * .gitignore: .gitignore: Ignore gcov intermediate files https://bugzilla.gnome.org/show_bug.cgi?id=725479 2014-02-28 09:34:31 +0100 Sebastian Dröge * common: Automatic update of common submodule From fe1672e to bcb1518 2014-02-20 20:01:30 +0000 Matthieu Bouron * gst/playback/gstplaybin2.c: playbin: improve autoplug_query_caps return Makes autoplug_query_caps return downstream_caps + intersect_first(filter_caps, element_caps) https://bugzilla.gnome.org/show_bug.cgi?id=724828 2014-02-26 22:11:01 +0100 Stefan Sauer * common: Automatic update of common submodule From 1a07da9 to fe1672e 2014-02-26 11:43:06 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix build with older GLib versions The gio/gnetworking.h header is only available since glib 2.36 https://bugzilla.gnome.org/show_bug.cgi?id=725206 2014-02-26 11:45:24 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Add missing include https://bugzilla.gnome.org/show_bug.cgi?id=725206 2014-02-21 14:01:37 +0000 Matthieu Bouron * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: improve gst_play_sink_convert_bin_getcaps return If we have the peer caps and a caps filter, return peer_caps + intersect_first (filter, converter_caps) instead of intersect_first (filter, peer_caps + converter_caps) and preservers downstream caps preference order. https://bugzilla.gnome.org/show_bug.cgi?id=724893 2014-01-31 00:06:18 +0100 Sebastian Rasmussen * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/rtp-basepayloading.c: * tests/check/libs/rtpbasedepayload.c: * tests/check/libs/rtpbasepayload.c: tests: Refactor RTP basepayloading test into pay/depay parts Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723328 2014-01-31 00:19:16 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Let caps event also configure seqnum-offset Previously the sequence number kept track of by GstRTPBasePayload would only be set when going from READY to PAUSED state. This meant that a downstream element that attempted to configure a basepayloader by setting seqnum-offset e.g. in its sinkpad's caps template would have trouble configuring the basepayloader. The reason was that the caps event which arrives with the desired value for seqnum-offset did not arrive at the basepayloader until caps negotiation took place, significantly later than the transition from READY to PAUSED. The result after this patch is that the default value for the seqnum-offset property, or later set values for this property, will take effect when going from READY to PAUSED like before. In addition the an arriving caps event will also affect the basepayloaders configured sequence number as the event arrives. 2014-01-31 00:18:35 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Fix payload type property boundary value The payload type field in an RTP packet header is 7 bits wide, hence the boundary values ought to be 0x00 and 0x7f, not the previously stated values 0x00 and 0x80. 2014-01-31 00:06:30 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Fix typos in comments 2014-02-21 19:28:55 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideopool.c: docs: add GstVideoPool to docs 2014-02-21 09:53:09 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: If we have a demuxer without dynamic srcpads, just assume no-more-pads Otherwise we will wait until the multiqueue after the demuxer will overrun, which is clearly not needed then. 2014-02-21 09:43:38 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Also make sure to not duplicate an element factory after a group If we are using an adaptive stream demuxer, which outputs a non-container stream, we are putting another multiqueue after the *parser* following the adaptive stream demuxer. We do not want to add another instance of the same parser right after this multiqueue. 2014-02-20 15:38:48 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: During pre-rolling always use the auto-preroll limits on multiqueues Even if we're buffering in the multiqueues. 2014-02-20 15:37:54 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Pass through the seekability information when setting multiqueue limits 2014-02-20 15:36:47 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: During exposing of pads don't set the multiqueue limits multiple times to different values Instead just set them once in the very end to the correct values. 2014-02-20 15:07:26 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Only enable multiqueue buffering once we're pre-rolled Otherwise we will emit buffering messages not just from the last multiqueue but also from previous multiqueues... confusing the application with different percentages during pre-rolling. 2014-02-20 15:02:09 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Make sure that we always have a second multiqueue for adaptive streaming demuxers For adaptive streaming demuxer we insert a multiqueue after this demuxer. This multiqueue will get one fragment per buffer. Now for the case where we have a container stream inside these buffers, another demuxer will be plugged and after this second demuxer there will be a second multiqueue. This second multiqueue will get smaller buffers and will be the one emitting buffering messages. If we don't have a container stream inside the fragment buffers, we'll insert a multiqueue below right after the next element after the adaptive streaming demuxer. This is going to be a parser or decoder, and will output smaller buffers. 2014-02-19 10:21:16 +0100 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Always use buffering in multiqueue for adaptive streams 2014-02-19 10:06:13 +0100 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Only add a queue2 for buffering for non-adaptive streaming streams 2013-02-06 08:46:58 -0300 Thiago Santos * gst/playback/gsturidecodebin.c: uridecodebin: pass on the buffering property for adaptive streams Adaptive streams should download its data inside the demuxer, so we want to use multiqueue's buffering messages to control the pipeline flow and avoid losing sync if download rates are low; https://bugzilla.gnome.org/show_bug.cgi?id=707636 2014-02-21 19:07:59 +0000 Tim-Philipp Müller * tests/check/libs/.gitignore: tests: add new unit tests to .gitignore 2014-02-19 13:54:17 +0100 Ognyan Tonchev * tests/check/Makefile.am: * tests/check/libs/rtspconnection.c: rtspconnection: New unit test See https://bugzilla.gnome.org/show_bug.cgi?id=724720 2014-02-19 13:53:06 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Remove read child source when POST is disconnected Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724720 2014-02-19 16:10:25 -0800 Aleix Conchillo Flaqué * win32/common/libgstrtsp.def: defs: update for new rtspconnection symbols 2014-02-19 01:55:50 -0300 Thiago Santos * ext/ogg/gstoggdemux.c: oggdemux: allow file to go until the end in push mode When seeking back to original state after duration seeks, let upstream know that we want the whole file, including the last byte that wasn't requested on the duration seeks. https://bugzilla.gnome.org/show_bug.cgi?id=724633 2014-02-19 23:54:59 -0300 Thiago Santos * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: remove unused instance variable event It is never set to anything 2014-02-16 17:39:35 -0800 Aleix Conchillo Flaqué * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: allow specifying a certificate database Two new functions have been added, gst_rtsp_connection_set_tls_database() and gst_rtsp_connection_get_tls_database(). The certificate database will be used when a certificate can't be verified with the default database. https://bugzilla.gnome.org/show_bug.cgi?id=724393 2014-02-16 23:55:17 -0800 Aleix Conchillo Flaqué * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: get rid of superfluous whitespaces 2014-02-18 20:48:57 +0100 Stefan Sauer * tests/check/elements/encodebin.c: encodebin: simplify tests Also use the profile helper for the ogg profile here. 2014-02-18 13:08:09 -0500 Nicolas Dufresne * gst-libs/gst/video/video-info.c: video: Fix NV12_64Z32 default offset and size This was a regression introduced by f52fd7a68, where we started using the stride to encode the dimensions in tiles. This patch simply updates offset and size calculation as described in the documentation, part-mediatype-video-raw.txt. 2014-02-18 15:02:57 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Keep inputselector around until we release its pads Otherwise there's an interesting race condition when we destroy the inputselector (actually it will be destroyed later when its state change message gets destroyed) and afterwards release its sinkpad. This is the code path when the last channel is removed from the input selector. Gave this warning sometimes, for chained oggs or whenever else we change decode groups: GStreamer-CRITICAL **: Padname '':sink_0 does not belong to element inputselector0 when removing 2014-02-18 10:42:04 +0000 Tim-Philipp Müller * gst/audioconvert/gstchannelmix.c: audioconvert: never do mixing for 1->1 channel conversions MONO and NONE position are the same, for example, but in general there isn't much to do here for such a conversion. Fixes problem in audioconvert, which would end up using a mixmatrix when converting between different mono format because it thinks MONO positioning is different from unpositioned channels, which is not the case in this special case. The mixmatrix would end up being 0.0 so audioconvert would convert to silence samples. https://bugzilla.gnome.org/show_bug.cgi?id=724509 2014-02-18 10:32:46 +0000 Rafał Mużyło * gst-libs/gst/audio/audio-info.c: audio: map channels=1,channel-mask=0 to MONO instead of NONE Fixes problem in audioconvert, which would end up using a mixmatrix when converting between different mono format because it thinks MONO positioning is different from unpositioned channels, which is not the case in this special case. The mixmatrix would end up being 0.0 so audioconvert would convert to silence samples. https://bugzilla.gnome.org/show_bug.cgi?id=724509 2014-02-16 21:24:29 +0100 Stefan Sauer * tests/check/elements/encodebin.c: encodebin: refactor tests Add a new test to demo how to get missing plugin message. Split some tests that unneccesarily munge unrelated checks into one test. 2014-02-16 15:32:47 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Only remove the complete text chain if the text pad goes away If the text pads does not go away we just set the overlay to silent, which allows us to immediately re-enable subs later again. However before this change we also released the streamsynchronizer text pads, which deadlocked because there was still dataflow going on. Just do this only if we remove the complete chain. https://bugzilla.gnome.org/show_bug.cgi?id=683504 2014-02-14 20:16:04 +0000 Tim-Philipp Müller * tools/Makefile.am: * tools/gst-play.c: tools: gst-play: add volume control 2014-02-13 16:03:01 -0300 Thiago Santos * ext/ogg/gstoggmux.c: oggmux: properly flush when seeking at the beginning Reset all internal status when collect pads forwards a flush-stop from the pads to be able to start the stream again. 2014-02-12 17:34:32 +0100 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Don't leak pad references 2014-02-02 23:59:36 +0100 Sebastian Rasmussen * tests/check/Makefile.am: tests: Don't build disabled plugins' check tests Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723492 2014-02-11 16:35:45 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: First try to get the pad's current caps, then query caps The caps query might give us ANY caps while the pad has fixed caps configured currently. 2014-02-10 16:33:50 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Fix memory leak in autoplugging code We should not leak element factories ideally. 2014-02-10 16:33:35 +0100 Sebastian Dröge * tests/check/elements/playbin-complex.c: playbin: Fix memory leak in unit test 2014-02-09 23:17:03 +0100 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Remove unused function 2014-02-09 11:28:48 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiosrc.h: audiosrc: Fix typo in docs We read *from* the audio device, not to it. 2014-02-08 20:08:29 +0100 Sebastian Dröge * tests/check/elements/opus.c: opus: Remove unused variable from unit test 2014-02-08 17:11:54 +0100 Sebastian Dröge * tests/check/elements/videoscale.c: videoscale: Fix compiler warning in unit test error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' 2014-02-08 17:11:04 +0100 Sebastian Dröge * tests/check/elements/videoconvert.c: videoconvert: Fix compiler warning in unit test error: implicit conversion from enumeration type 'GstFormat' to different enumeration type 'GstVideoFormat' 2014-02-08 17:07:15 +0100 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Fix types for comparisons Storing a 64 bit integer in a 32 bit integer and then checking for the error cases might not be ideal. error: comparison of constant -9223372036854775808 with expression of type 'guint' (aka 'unsigned int') is always true 2014-02-08 17:02:27 +0100 Sebastian Dröge * ext/ogg/gstoggmux.h: oggmux: Fix typo in header include guard clang does not like this. 2014-02-08 17:01:38 +0100 Sebastian Dröge * ext/alsa/gstalsaplugin.c: alsa: Make clang happy with our g_strdup_vprintf() wrapper 2014-02-07 15:33:34 +0100 Wim Taymans * tests/examples/playback/playback-test.c: playback-test: allow seeking outside of the range For download buffer, allow seeking outside of the already downloaded area. 2014-02-07 02:09:10 -0300 Thiago Santos * ext/pango/gstbasetextoverlay.c: basetextoverlay: use correct segment for text video time uses the 'segment' and the text time should use the 'text_segment'. If different segments are used for video and text it would lead to out of sync video/subtitles. 2014-02-04 14:31:29 +0100 Wim Taymans * tests/check/libs/rtp.c: check: add some more checks Add header and payload length check in case of CSRCs. See https://bugzilla.gnome.org/show_bug.cgi?id=723196 2014-02-03 02:35:57 +0100 Sebastian Rasmussen * tests/examples/seek/jsseek.c: jsseek: Add missing HAVE_X check Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723507 2014-02-04 13:55:49 +0100 Eric Trousset * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Forward TIME seeks upstream too, maybe upstream can handle that https://bugzilla.gnome.org/show_bug.cgi?id=723597 2014-01-31 23:27:03 +0100 Stefan Sauer * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/gstaudiometa.c: docs: doc fixes for audio library Add sections docs for audiometa. Fix sections docs for audiochannels. Remove old mixerutil section. 2014-01-31 13:40:36 +0000 Julien Isorce * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: ensure having caps when setting the buffer pool config It happens if downstream does not propose a buffer pool. GST_DEBUG=2 gst-launch-1.0 videotestsrc ! fakesink https://bugzilla.gnome.org/show_bug.cgi?id=723271 2014-01-30 21:18:04 +0100 Sebastian Dröge * tools/gst-play.c: gst-play: Support non-ASCII tags By calling setlocale() to get us multi-byte/UTF-8 support. https://bugzilla.gnome.org/show_bug.cgi?id=723164 2014-01-28 14:28:27 +0100 Bastien Nocera * tools/gst-discoverer.c: gst-discoverer: Support non-ASCII tags By calling setlocale() to get us multi-byte/UTF-8 support. https://bugzilla.gnome.org/show_bug.cgi?id=723164 2014-01-30 10:43:48 +0100 Edward Hervey * common: Automatic update of common submodule From d48bed3 to 1a07da9 2014-01-29 13:58:07 -0300 Thiago Santos * gst/encoding/gststreamsplitter.c: streamsplitter: push pending events before eos Push any pending events downstream before pushing eos 2014-01-29 12:33:21 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/audioencoder.c: tests: audioencoder: add tests analogous to the videoencoder ones 2014-01-29 12:32:16 -0300 Thiago Santos * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: push pending events and tags before EOS if there are tags or events pending and an EOS is received, push those events and tags before the EOS. 2014-01-28 15:25:05 -0300 Thiago Santos * tests/check/libs/videoencoder.c: tests: videoencoder: check that tags are pushed before eos Check that if a new tag event is received right before eos it is pushed before the eos 2014-01-28 15:30:35 -0300 Thiago Santos * gst-libs/gst/video/gstvideoencoder.c: videoencoder: push tags and events before eos if any tags or events are pending, push them before pushing eos 2014-01-28 15:06:39 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/videoencoder.c: tests: videoencoder: basic videoencoder base class test Adds a single test for video encoding 2013-11-26 01:13:45 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Do cosmetic changes to rtptime calculations * Change running time type to guint64 * Use GST_CLOCK_TIME_NONE() to check for invalid timestamps * Name variables so ns-based and hz-based timestamps are evident Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383 2014-01-28 00:40:38 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Expose running-time of payloaded stream https://bugzilla.gnome.org/show_bug.cgi?id=719415 2014-01-22 17:47:02 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Improve documentation for perfect-rtptime Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383 2014-01-16 16:58:43 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Fix typos in documentation for properties Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383 2014-01-28 00:19:07 +1100 Alessandro Decina * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin: make it possible to register multiple handlers for autoplug-select Change the way autoplug-select is accumulated so that it's possible to have multiple handlers. The handlers keep getting called as long as they keep returning GST_AUTOPLUG_SELECT_TRY. One practical example of when this is needed is when hooking into playbin's uridecodebin, which is perhaps not very elegant but the only way to influence which streams playbin autoplugs/exposes. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723096 2014-01-16 21:49:59 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbasepayload.c: * tests/check/libs/rtp-basepayloading.c: rtpbasepayload: Add statistics property This property allows for an atomically retrieved set of properties that can e.g. be used to generate RTP-Info headers. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719415 2013-07-26 15:44:28 +0200 Sjoerd Simons * gst/playback/gsturidecodebin.c: uridecodebin: Drop hardcoded list of media suitable for download buffering Discussion on IRC indicated that the main reason for this list was to prevent demuxers that can trigger a lot of seeking from using progressive buffering using queue2 (which due to being seekable triggers that behaviour). However given that upstream can indicate seeks are possible but should be avoided via a scheduling query, this extra whitelisting shouldn't be necessary for well-behaved demuxers. https://bugzilla.gnome.org/show_bug.cgi?id=704933 2014-01-24 12:19:43 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: tweak the scoring algorithm Make a little table of conversions and manually score them. Use this info to define better weights for the scoring algorithm. give separate scores for doing changes and the impact of the change, This allows us to avoid conversion when we can but still allow fairly lossless changes. The old code did not penalize GRAY conversions, PAL conversions were punished too low and depth conversions too high. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=722656 2014-01-23 10:45:00 +0100 Wim Taymans * gst-libs/gst/video/video-chroma.c: video-chroma: don't crash on NULL resamplers Make dummy resamplers for all cases and only execute the horizontal resampler instead of crashing. See https://bugzilla.gnome.org/show_bug.cgi?id=722742 2014-01-21 11:21:56 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: make _get_time more threadsafe We call the _get_time function from the provided clock and we don't lock the sink object for performance reasons. Make sure we only read and check variables once so that they don't change while we are executing the code. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720661 2014-01-20 16:11:04 +0100 Sebastian Dröge * gst/audioresample/resample.c: audioresample: It's HAVE_EMMINTRIN_H, not HAVE_XMMINTRIN_H for SSE2 2014-01-20 15:44:09 +0100 Antoine Jacoutot * gst/audioresample/resample.c: audioresample: Fix build on x86 if emmintrin.h is available but can't be used On i386, EMMINTRIN is defined but not usable without SSE so check for __SSE__ and __SSE2__ as well. https://bugzilla.gnome.org/show_bug.cgi?id=670690 2014-01-20 10:30:36 +0100 Sebastian Dröge * configure.ac: configure: Initialize Qt variables 2014-01-20 09:46:15 +0100 Sebastian Dröge * configure.ac: * tests/examples/overlay/Makefile.am: * tests/examples/overlay/qt-videooverlay.cpp: examples: Port Qt examples to Qt5 2014-01-18 19:22:12 +0100 Nicola Murino * gst-libs/gst/riff/riff-media.c: riff: Fix G726 caps creation https://bugzilla.gnome.org/show_bug.cgi?id=720995 2014-01-18 00:18:51 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: minor docs fix Can use a custom main context as well if needed. 2014-01-18 13:54:22 +0100 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: videodecoder: Add API to get the currently pending frame size for parsing https://bugzilla.gnome.org/show_bug.cgi?id=719890 2014-01-18 21:20:51 +0900 Wonchul Lee * gst/playback/gstplaybin2.c: playbin: Remove unnecessary assignment Remove duplicated assignment https://bugzilla.gnome.org/show_bug.cgi?id=722491 2014-01-18 13:31:06 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Insert decoders without GstAVElement information between the other decoders Otherwise they would be preferred over all decoders independent of their ranks. https://bugzilla.gnome.org/show_bug.cgi?id=722316 2014-01-18 13:12:16 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Only put parsers and sinks first, not all non-decoders https://bugzilla.gnome.org/show_bug.cgi?id=722316 2014-01-17 11:08:32 -0300 Thiago Santos * tests/check/libs/videodecoder.c: tests: videodecoder: plug a few leaks Remove leaks of caps and events references 2014-01-17 10:17:29 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: plug leak when frames are released on subclass stop They end up stored in the 'pending_events' list and should be freed after calling stop 2014-01-17 15:10:42 +0100 Sebastian Dröge * tools/gst-play.c: gst-play: Handle CLOCK_LOST message It is necessary for playbin gapless playback when switching between audio-only and video-only files for example. 2014-01-16 16:32:34 +0100 Wim Taymans * gst/encoding/gststreamsplitter.c: streamsplitter: handle ACCEPT_CAPS query correctly We can accept a caps when one of the downstream peers can accept the caps. This is not the same as checking a subset of the getcaps result because parsers might accept broader caps than what their getcaps function returns (See https://bugzilla.gnome.org/show_bug.cgi?id=677401). Fixes https://bugzilla.gnome.org/show_bug.cgi?id=722330 2014-01-16 12:18:45 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Remove some useless assignments and skip the current part of the buffer if the pad is muted 2014-01-15 23:30:28 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Fix and simplify overlap calculation 2014-01-14 13:02:28 -0300 Thiago Santos * tests/check/libs/audiodecoder.c: tests: audiodecoder: add another test for negotiation with gap event Check that even if the subclass doesn't call set_output_format, the base class should use upstream provided caps to fill the output caps that is pushed before the gap event is forwarded, otherwise it ends again fixating the rate and channels to 1. https://bugzilla.gnome.org/show_bug.cgi?id=722144 2014-01-14 13:05:54 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: copy rate and channels from input before fixating output caps For default caps generation when handling gap events that are sent before any buffer, try to use caps that are closer to what upstream provided to avoid fixating rate or channels to 1 as default. So there are the steps: 1) Try to set rate, channels and channel-mask from upstream if provided 2) Fixate the rate and channels to the default rate and channels from audio lib 3) Fixate the caps just to be sure everything is fixed 4) If no channel-mask was provided and channels > 2, use a default channel-mask (taken from audioconvert code) https://bugzilla.gnome.org/show_bug.cgi?id=722144 2014-01-14 23:07:34 +0100 Holger Kaelberer * sys/xvimage/xvimagesink.c: xvimagesink: don't recreate xvcontext A xvcontext can be created early in gst_xvimagesink_set_window_handle(). In this case don't recreate, i.e. overwrite it in gst_xvimagesink_open(). Otherwise XEvents won't be handled in the xevent listener thread. Fixes a regression when setting the window handle on the sink in the very beginning before changing its state. https://bugzilla.gnome.org/show_bug.cgi?id=715138 2014-01-14 12:05:46 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix broken seeking reading the whole file A change in gst_ogg_demux_do_seek caused oggdemux to wait for a page for each of the streams, including a skeleton stream if one was present. Since Skeleton only has header pages, that was never going to end well. Also, the code was skipping CMML streams when looking for pages, so would also have broken on CMML streams. Thus, we change the code to disregard Skeleton streams, as well as discontinuous streams (such as CMML and Kate). While it may be desirable to consider Kate streams too (in order to avoid losing a subtitle starting near the seek point), this may be a performance drag when seeking where no subtitles are. Maybe one could add a "give up" threshold for such discontinuous streams, so we'd get any page if there is one, but do not end up reading preposterous amounts of data otherwise. In any case, it is important that the code that determines the amount of streams to look pages for remains consistent with the "early out" conditions of the code that actually parses the incoming pages, lest we never decrease the pending counter to zero. This fixes seeking on a file with a skeleton track reading all the file on each seek. https://bugzilla.gnome.org/show_bug.cgi?id=719615 2014-01-13 15:14:14 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: use an adaptive chunksize for performance reasons Ogg data is read chunk by chunk, and the chunk size used was originally taken from libvorbisfile. However, this value leads to poor performance when used on an Ogg file with large pages (Ogg pages can be close to 64 KB). We can't just use a larger chunk size, since this will decrease performance on small page streams, so we use an adaptive scheme where the chunk size is twice the largest page size we've seen so far in the stream. For "typical" Ogg/Vorbis, this gives us almost the same chunk size (a bit lower), and this lets us get better performance on streams with large pages. 2014-01-13 20:47:02 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: avoid parsing caps event if it is not used Saves some cpu 2014-01-13 20:44:23 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: make sure caps is set before forwarding gap event Before trying to generate a default fixated caps when handling a gap event, make sure that the same strategy that is used when handling a buffer has been attempted. Otherwise audiodecoder will ignore upstream caps settings such as rate and channels and will likely end with a caps with channels=1 and rate=1. https://bugzilla.gnome.org/show_bug.cgi?id=722144 2014-01-13 19:40:49 -0300 Thiago Santos * tests/check/libs/audiodecoder.c: tests: audiodecoder: check that negotiation works buffers and gaps Adds 2 tests to verify that output caps are the expected value, reusing input structure values for both buffers and gaps https://bugzilla.gnome.org/show_bug.cgi?id=722144 2014-01-13 16:33:11 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/audiodecoder.c: tests: audiodecoder: add basic playback test for audio decoder Simple test that just check that audio decoding works as expected https://bugzilla.gnome.org/show_bug.cgi?id=722144 2014-01-14 13:17:26 +0100 Sebastian Dröge * gst-libs/gst/video/videooverlay.c: videoverlay: Don't mention gconf elements and add a sentence about playbin/playsink playbin/playsink now implement the video overlay interface 2014-01-13 16:28:23 +0000 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: add new API to .def file 2014-01-13 16:29:00 +0100 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: only copy chroma_site when known Only overwrite the chroma-site if we have a valid value in the reference format. 2014-01-13 16:20:55 +0100 Wim Taymans * gst/videoconvert/gstvideoconvertorc.orc: * gst/videoconvert/videoconvert.c: videoconvert: don't interpolate chroma in I420 -> RGB Don't try to interpolate the chroma samples, the used algorithm only works for horizontal cositing. Let's switch to a faster and safer version until we handle chroma siting correctly in the fastpaths. 2014-01-13 12:16:01 +0100 Wim Taymans * gst-libs/gst/video/gstvideoutils.c: videoutils: add some debug 2014-01-08 19:43:01 -0500 Nicolas Dufresne * docs/libs/gst-plugins-base-libs-sections.txt: doc: Add new sections introduce for tile format https://bugzilla.gnome.org/show_bug.cgi?id=707361 2014-01-08 19:42:35 -0500 Nicolas Dufresne * gst-libs/gst/video/Makefile.am: video: Generate types for tile enumeration https://bugzilla.gnome.org/show_bug.cgi?id=707361 2014-01-08 19:41:56 -0500 Nicolas Dufresne * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-tile.h: video: Don't use extra plane and componenent for tile format Instead of using extra plane, we encode the number of tiles in x and y in the stride of each planes (i.e. y_tiles << 16 | x_tiles) and introduce tile_mode, tile_width and tile_height into GstVideoFormatInfo structure. https://bugzilla.gnome.org/show_bug.cgi?id=707361 2014-01-03 22:36:13 +0100 Wim Taymans * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * tests/check/elements/videoscale.c: video: rename NV12T -> NV12_64Z32 Is a bit more descriptive and allows us to add more tiled types later. https://bugzilla.gnome.org/show_bug.cgi?id=707361 2014-01-03 22:29:09 +0100 Nicolas Dufresne * gst-libs/gst/video/video-frame.c: video-frame: scale vertical tiles based on subsampling https://bugzilla.gnome.org/show_bug.cgi?id=707361 2014-01-03 22:18:08 +0100 Nicolas Dufresne * gst-libs/gst/video/video-frame.c: video-frame: fix tiled pixel stride Pixel stride is per component, not per plane. We get the tile mode from the pixelstride of the TILE component. https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-26 17:40:05 +0100 Wim Taymans * gst-libs/gst/video/video-format.h: format: improve docs https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-25 16:22:32 +0100 Wim Taymans * tests/check/elements/videoscale.c: tests: fix videoscale test for NV12T https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-25 16:06:43 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-frame.c: video-format: fix off-by-one for tiled coordinates https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-25 15:22:24 +0100 Wim Taymans * gst-libs/gst/video/video-tile.h: video-tile: improve docs https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-25 14:57:30 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: use shifts when possible https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-25 14:23:04 +0100 Wim Taymans * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.c: video-frame: fix copy of tiled formats Add code to copy tiled planes. https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-25 14:11:57 +0100 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-tile.c: * gst-libs/gst/video/video-tile.h: video-tile: add tile mode and helper functions Move the tile helper functions to their own file. Make it possible to make other tiling modes later. https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-20 21:27:46 +0100 Wim Taymans * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: add NV12T support https://bugzilla.gnome.org/show_bug.cgi?id=707361 2013-12-19 16:11:50 +0100 Wim Taymans * gst-libs/gst/video/video-format.h: Add tiled color format support https://bugzilla.gnome.org/show_bug.cgi?id=707361 2014-01-13 15:32:23 +0100 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Fix typo in the docs 2014-01-11 01:14:19 -0300 Thiago Santos * tests/check/libs/videodecoder.c: tests: videodecoder: check that segment events are not dropped Adds a test that simulates a scenario where the first buffers after a segment can't be decoded and the decoder asks for those frames to be released. The videodecoder base class should make sure that the events attached to those first buffers are pushed even if the buffers aren't going to be. https://bugzilla.gnome.org/show_bug.cgi?id=721835 2014-01-11 01:24:44 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not lose events when dropping frames Events must be persisted after a frame is dropped to avoid losing obligatory information for the stream. https://bugzilla.gnome.org/show_bug.cgi?id=721835 2014-01-08 11:29:29 -0300 Thiago Santos * tests/check/libs/videodecoder.c: tests: videodecoder: add test for reverse playback Checks that buffers are pushed backwards in reverse playback https://bugzilla.gnome.org/show_bug.cgi?id=721666 2014-01-06 20:53:15 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: use new segment earlier for reverse playback For reverse playback, the segment event will only be pushed when the first buffer is actually pushed. But for decoding frames and storing those into the list to be pushed the output_segment.rate value is used to determine if it is forward or reverse playback. In case a previous segment event (or none) is in use it will mistakenly think it is doing forward playback and push the buffers immediatelly and try to clip buffers based on an old segment (or an uninitialized one, leading to an assertion) This patch fixes this by copying the segment earlier if on reverse playback https://bugzilla.gnome.org/show_bug.cgi?id=721666 2014-01-10 14:24:12 +0000 Vincent Penquerc'h * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: fix unit test breaking on duration query The new switch caused breaks to not break of the main switch anymore, causing fall through. 2014-01-10 15:06:23 +0100 Sebastian Dröge * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: videoconvert: Update disted orc files once again 2014-01-10 11:17:38 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: add dot file dumping for pipeline graph debugging 2014-01-10 11:17:04 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: don't leak GAP events 2014-01-10 09:53:21 +0000 Vincent Penquerc'h * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: do not set TIME duration when asked for another format This fixes asserts in pipelines such as: gst-launch-1.0 videotestsrc num-buffers=1000 ! x264enc ! h264parse ! \ matroskamux name=mux ! filesink location=test.mkv 2014-01-10 09:21:08 +0100 Sebastian Dröge * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: videoconvert: Update disted orc files 2014-01-09 18:12:00 +0100 Wim Taymans * gst/videoconvert/gstvideoconvertorc.orc: * gst/videoconvert/videoconvert.c: videoconvert: rework YUV->RGB fastpaths Rework the orc code to be around 10% faster and support arbitrary matrices. Pass the matrix parameters to the YUV->RGB functions to make them work for all matrices. This enables more and faster fastpath conversions. See https://bugzilla.gnome.org/show_bug.cgi?id=721701 2014-01-09 18:08:41 +0100 Wim Taymans * gst/videoconvert/gstvideoconvertorc.orc: videoconvert: fix I420 to BGRA fast-path some more Calculate alpha value differently so that we can avoid running out of registers. 2014-01-08 16:20:12 +0100 Wim Taymans * gst/videoconvert/gstvideoconvertorc.orc: videoconvert: remove unused code 2014-01-03 15:24:29 +0100 Nicola Murino * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: riff: Add G726 ADPCM support https://bugzilla.gnome.org/show_bug.cgi?id=720995 2014-01-07 22:04:20 -0300 Thiago Santos * tests/check/libs/videodecoder.c: tests: videodecoder: add check for serialization of events Tests that events are properly serialized with buffers, also checks that the usual events are sent (stream start, caps, segment and eos). 2014-01-07 16:28:18 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/videodecoder.c: tests: videodecoder: add simple playback test Add a simple playback test that makes sure that video decoder pushes buffers in the same order it receives and that it respects the set timestamps and durations 2014-01-07 15:01:14 +0100 Wim Taymans * win32/common/libgstrtsp.def: defs: update for new symbols 2014-01-07 14:46:05 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.c: rtsptransport: calculate default lower transport Add an internal method to calculate the default lower transport whan it is missing. 2014-01-07 14:31:09 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: rtsptransport: add method to get media-type from transport Add a method to make a media-type from the transport. Deprecate the old method that only used the mode. Based on patch from Aleix Conchillo Flaqué Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720219 2014-01-07 11:51:01 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: rtsptransport: add GType for Profile See https://bugzilla.gnome.org/show_bug.cgi?id=720696 2014-01-05 23:35:52 +0100 Stefan Sauer * gst-libs/gst/pbutils/descriptions.c: * gst/typefind/gsttypefindfunctions.c: typefind: add support of BWF RF64 a 64bit wav variant Detect and describe the RF64 Broadcast Wave Format. Fixes #519220 2014-01-05 21:39:52 +0100 Stefan Sauer * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/riff/riff-read.h: * win32/common/libgstriff.def: riff: remove new parse_ncdt api again This chunk is avi specific, no need to expose this as public api. 2014-01-04 22:30:17 +0100 Stefan Sauer * win32/common/libgstriff.def: win32: export new riff api 2014-01-04 21:54:10 +0100 Stefan Sauer * gst-libs/gst/riff/riff-read.c: riff: fix indentation messup from previous commit 2014-01-04 21:31:07 +0100 Stefan Sauer * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/riff/riff-read.h: riff: add support for nikon tags Nikon cameras store metadata in a custom format. Add parsing of the chunk and extract some initial data. API: gst_riff_parse_ncdt() Fixes #636143 2014-01-03 02:18:20 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Avoid unnecessary configuration Port a change from audiobasesink from def07410, to ignore setcaps when the caps don't actually change, and avoid a reconfiguration and reset of the ringbuffer in that case. 2013-11-15 14:17:03 +0000 William Grant * configure.ac: configure: Prevent the NEON check in configure from passing under aarch64. The test verifies that the NEON C intrinsics work, but the rest of the codebase uses lots of direct ARMv7 NEON assembly. The same intrinsics work in A64, but the assembly is slightly different. Prevent the check from passing so that we don't use this where it won't work. https://bugzilla.gnome.org/show_bug.cgi?id=712367 2013-12-31 10:17:55 +0100 Stéphane Cerveau * gst-libs/gst/riff/riff-ids.h: riff: Add id3 tag Add id3 tag for wavparse https://bugzilla.gnome.org/show_bug.cgi?id=721241 2013-12-31 09:37:36 +0100 Sebastian Dröge * tests/icles/test-effect-switch.c: Revert "test-effect-switch: Change one of the pad blocks to and idle probe" This reverts commit 40fe5dcc84ff2cc7dbe0112d7830a33fd764d4e1. Using an idle probe here is not ideal because we'll send an EOS event from the application thread... which might block for quite some time. Go back to a block probe. 2013-12-30 19:48:29 +0100 Sebastian Dröge * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Always set pixel-aspect-ratio and interlace-mode in the fixed caps Otherwise our caps will not be compatible with elements that require a 1/1 pixel-aspect-ratio or progressive video. https://bugzilla.gnome.org/show_bug.cgi?id=721103 2013-12-30 19:40:29 +0100 Sebastian Dröge * tests/icles/test-effect-switch.c: test-effect-switch: Don't put two format fields into the first capsfilter 2013-12-30 19:12:53 +0100 Sebastian Dröge * tests/icles/test-effect-switch.c: test-effect-switch: Change one of the pad blocks to and idle probe Just because we can. 2013-12-30 17:30:15 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Add missing break statement And do a minor cleanup COVERITY CID 1139753 2013-12-30 14:30:23 +0100 Stefan Sauer * gst-libs/gst/riff/riff-ids.h: riff: add two chunk-ids for samples instruments Wav files can have 'smpl' and 'inst' chunks. 2013-12-30 13:46:34 +0100 Edward Hervey * gst-libs/gst/riff/riff-media.c: riff-media: Fix array read nbchannels ranges from 1 to 8, therefore use '- 1' to get the proper array value. 2013-12-30 13:33:00 +0100 Edward Hervey * gst/videorate/gstvideorate.c: videorate: Remove useless assignement Was already set before 2013-12-26 17:47:46 +0200 George Kiagiadakis * gst-libs/gst/rtp/gstrtpbasepayload.c: gstrtpbasepayload: use the session's suggested ssrc after a collision, if the session provides one Conflicts: gst-libs/gst/rtp/gstrtpbasepayload.c 2013-12-10 15:19:14 +0000 Matthieu Bouron * gst/playback/gstplaybin2.c: * gst/playback/gstrawcaps.h: playback: add ANY caps features to default audio/video raw caps Allows elements using audio/video caps features to be used by playbin. 2013-12-30 10:53:24 +0100 Sebastian Dröge * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/video/video-info.c: audio/video-info: Properly initialize the info structures in set_format() And don't assume in other code that set_format() preserves any fields at all. These assumptions were already made here for fields that were changed by set_format(). 2013-12-30 10:14:09 +0100 Sebastian Dröge * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/video/video-info.c: audio/video-info: Initialize the complete struct to 0 in the beginning Instead of only initializing some parts in some code paths. Also makes it easier to use the reserved bits of the structs later. https://bugzilla.gnome.org/show_bug.cgi?id=720810 2013-12-27 14:29:46 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: increase max payload size to 4000 bytes 1275 is the maximum size of a frame, but the encoder may return up to 3 frames, and we need a few extra bytes for TOC, etc. We use 4000, which is a bit more, and suggested in the libopus docs. 2013-12-20 19:48:06 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Bunch of cosmetic/grammar fixes 2013-12-20 18:58:43 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Retarget FIXME to 2.0 Properly fixing this one would break API. 2013-12-20 18:54:39 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audiobase*: Drop trailing withespaces 2013-12-20 18:53:13 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Break some too long lines 2013-12-20 18:41:59 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Add FIXME for times in NSECONDS Timebase is in nanoseconds pretty much everywhere else 2013-12-26 23:21:45 +1100 Jan Schmidt * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Choose a default initial caps before sending GAP If there are no caps from the audio decoder when handling a GAP event - as when one is received right at the start on a DVD without initial audio - then choose any default caps for downstream and then send the GAP, so the audio sink has a configured format in which to start the ringbuffer. Also, make the audio sink reject a GAP without caps with a clearer error message. Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=603921 2013-12-26 17:41:00 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: rtsptransport: add more profiles Add support for Feedback profiles 2013-12-25 10:45:11 +0100 Wim Taymans * gst-libs/gst/video/video-frame.c: video-frame: fix plane copy for index plane Move the code to handle the index plane in the _copy_plane. 2013-12-24 01:20:25 +0000 Lionel Landwerlin * gst-libs/gst/video/colorbalance.c: colorbalance: add missing annotation for list_channels() https://bugzilla.gnome.org/show_bug.cgi?id=720999 2013-12-23 14:54:02 +0100 Sebastian Dröge * gst/videoconvert/gstvideoconvertorc.orc: * gst/videoconvert/videoconvert.c: videoconvert: Fix I420 to BGRA fast-path alpha setting This fast-path was adding 128 to every component including alpha while it should only be done for all components except alpha. This caused wrong alpha values to be generated. Also remove the high-quality I420 to BGRA fast-path as it needs the same fix, which causes an additional instruction, which causes orc to emit more than 96 variables, which then just crashes. This can only be fixed in orc by breaking ABI and allowing more variables. 2013-12-22 22:33:26 +0000 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From dbedaa0 to d48bed3 2013-12-22 21:56:03 +0000 Tim-Philipp Müller * po/Makevars: po: set gettext domain in Makevars so we don't have to patch the generated Makefile.in.in https://bugzilla.gnome.org/show_bug.cgi?id=705455 2013-12-22 22:07:43 +0000 Tim-Philipp Müller * tests/check/libs/.gitignore: tests: make git ignore new test binary 2013-12-20 18:06:25 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Always reset last_align Should be done for all the reset_sync() cases. Not only for the READY to PAUSED one. 2013-12-20 18:02:42 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Reset last_align to 0, not -1 This is the expected behavior in READY -> PAUSED 2013-12-20 17:58:43 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Always reset avg_skew on _reset Only case in which it wasn't (READY to PAUSED) should have had this value reseted too. 2013-12-20 17:10:44 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Retarget FIXME to 2.0 Properly fixing this one would break API 2013-12-20 15:13:54 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Factor out reset sync routine 2013-12-20 01:06:33 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Drop dead _sink_async_play() code 2013-12-20 01:03:14 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Break some too long lines 2013-12-20 00:09:22 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Cosmetics, grammar/spelling - Drop repeated 'yet' from debug msg - Drop repeated 'to' from param desc - Some spelling 2013-12-20 08:41:45 -0500 Edward Hervey * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/video/video-info.c: audio/video: Initialize all {audio|video}info fields Fixes "Unitialized Scalar Variable" issues reported by Coverity. Has the added advantage of detecting whether somebody *does* use those fields (ending up with a invalid address). https://bugzilla.gnome.org/show_bug.cgi?id=720810 2013-12-19 17:41:31 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/audio/gstaudiobasesink.c: gstaudiobasesink: Refactor alignment computation for clarity 2013-12-19 21:59:09 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Also resync timestamps on the RESYNC flag 2013-12-18 15:52:09 +0100 Sebastian Dröge * tests/check/elements/subparse.c: subparse: Add unit test for LRC subtitles 2013-12-18 15:24:02 +0100 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Add support for parsing LRC subtitles https://bugzilla.gnome.org/show_bug.cgi?id=678590 2013-12-18 15:07:47 +0100 Sebastian Dröge * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: subparse: Add typefinder for LRC subtitles 2013-12-10 13:54:28 -0800 Aleix Conchillo Flaqué sdp: parse encryption key field * gst-libs/gst/sdp/gstsdpmessage.c: parse encryption key field (k). https://bugzilla.gnome.org/show_bug.cgi?id=720215 2013-12-17 18:04:33 +0100 Stefan Sauer * gst-libs/gst/pbutils/descriptions.c: * gst/typefind/gsttypefindfunctions.c: * tests/check/libs/pbutils.c: pbutils: add typefinder and descriptions for audio/x-xi xi files can be read by libsndfile. 2013-12-17 18:03:40 +0100 Stefan Sauer * gst-libs/gst/pbutils/descriptions.c: descriptions: longer version of two audio codec descriptions 2013-12-17 17:25:07 +0100 Sebastian Dröge * gst-libs/gst/video/video-format.h: video-format: Document usage of GST_VIDEO_FORMAT_ENCODED This must only ever be used in caps in combination with a non-system memory GstCapsFeatures, and where it does not make sense to specify any of the other video formats. Examples of this would be in gst-vaapi. 2013-12-17 17:23:19 +0100 Sebastian Dröge * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: Revert "video: specify/restrict usage of GST_VIDEO_FORMAT_ENCODED" This reverts commit 5fcdabd907ca45595b64131bbae0ea963e259a7c. Instead of making it impossible to use the ENCODED format we should just document that it must not be used for capsfeature-less caps. Also this commit broke API/ABI. 2013-12-17 17:09:02 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Release the allocator on hard resets 2013-12-16 15:53:41 +0000 Julien Isorce * gst-libs/gst/video/gstvideodecoder.c: videodecoder: release buffer pool and allocator on full reset It allows to release the buffer pool sooner (i.e. when going to GST_STATE_READY). Previously it was released in finalize. Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=720389 2013-12-15 21:01:42 -0800 Todd Agulnick * gst-libs/gst/audio/audio-format.c: * sys/xvimage/xvimagesink.c: Some compiler warning fixes to satisfy XCode compiler https://bugzilla.gnome.org/show_bug.cgi?id=720513 2013-12-16 11:35:12 +0100 Sebastian Dröge * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Read image-type from the GstSample info struct But for backwards compatibility keep reading it from the caps and only use the info struct if the caps don't contain the image-type. 2013-12-13 14:36:41 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: gst_video_decoder_release_frame() is available since 1.2.2 2013-12-13 10:06:25 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: play: allow parse-launch strings for audio and video sink 2013-12-12 13:42:59 +0100 Julien Isorce * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: change SSRC on GstRTPCollision event Change our SSRC and update the caps when we receive a GstRTPCollision event from downstream. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711560 2013-12-12 13:06:30 +0100 Julien Isorce * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: implement src_event function Add a srcpad event handler and call the src_event vmethod. 2013-12-11 16:49:35 +0100 Edward Hervey * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: specify/restrict usage of GST_VIDEO_FORMAT_ENCODED GST_VIDEO_FORMAT_ENCODED was added to support *extracting* video-related information (like width, height, framerate,...) from caps. It is __NOT__ intended to be used as a format field on video/x-raw caps. 2013-12-10 00:13:55 +0100 Sebastian Rasmussen * tests/check/Makefile.am: * tests/check/libs/rtp-basepayloading.c: tests: Add test for rtpbasepayload/-depayload Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720162 2013-12-10 00:56:07 +0100 Sebastian Rasmussen * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: rtpbuffer: Allow subbuffering of empty buffers See https://bugzilla.gnome.org/show_bug.cgi?id=720162 2013-12-09 16:34:22 +0100 Sebastian Dröge * gst-libs/gst/video/convertframe.c: convertframe: Fix indention 2013-12-09 16:33:40 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add sink_query() src_query() virtual functions Based on the videodecoder change by Nicolas Dufresne and applied here for consistency. https://bugzilla.gnome.org/show_bug.cgi?id=720103 2013-11-27 16:39:52 -0500 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add sink_query() src_query() virtual https://bugzilla.gnome.org/show_bug.cgi?id=720103 2013-12-09 13:55:28 +0000 Tim-Philipp Müller * tools/gst-play-kb.c: tools: play: fix compiler warning on windows 2013-12-06 19:27:04 -0500 Olivier Crête * gst-libs/gst/video/gstvideoutils.h: videocodecframe: Correct function name in doc 2013-12-06 16:23:46 -0500 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Remove gst_video_encoder_set/get_discont They've never existed outside the header file. 2013-12-04 01:08:13 +0100 Sebastian Rasmussen * docs/design/Makefile.am: docs: add missing files for distribution Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720015 2013-12-05 16:17:22 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: handle the RESYNC flag Also resync when a buffer with the RESYNC flag is seen. 2013-12-05 14:39:57 +0000 Julien Isorce * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audiodec/enc: clear reconfigure flag if negotiate succeeds So that it avoids to send an allocation query twice. One from an early call to gst_audio_encoder_negotiate from a subclass, then one from gst_audio_encoder_allocate_output_buffer. Which means that previously gst_audio_encoder_negotiate was not clearing the GST_PAD_FLAG_NEED_RECONFIGURE even on success. Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=719684 2013-12-05 14:31:25 +0000 Julien Isorce * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: videodec/enc: clear reconfigure flag if negotiate succeeds So that it avoids to send an allocation query twice. One from an early call to gst_video_encoder_negotiate from a subclass, then one from gst_video_encoder_allocate_output_frame. Which means that previously gst_video_encoder_negotiate was not clearing the GST_PAD_FLAG_NEED_RECONFIGURE even on success. Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=719684 2013-12-05 12:04:59 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Require caps to be set before any data processing 2013-12-05 11:39:07 +0100 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:37:09 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Use FALSE instead of 0 2013-12-05 11:34:36 +0100 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: videodecoder: Add API to allow subclasses to specify that they needs caps before any buffers 2013-12-05 11:25:47 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Return not-negotiated if we don't have caps when the first buffer arrives Otherwise things like filesrc ! jpegenc ! fakesink just crash with a segmentation fault because subclasses expect caps to be there. 2013-12-04 19:24:08 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: no fallback to segment start for reverse playback See https://bugzilla.gnome.org/show_bug.cgi?id=709965 2013-12-05 00:27:14 +0900 Justin Joy * gst-libs/gst/video/convertframe.c: convertframe: Fix trivial memory leak in debug statement gst_element_get_name() requires the caller to g_free() the return value https://bugzilla.gnome.org/show_bug.cgi?id=719850 2013-12-02 20:35:04 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: use segment start as fallback ts if no other available Fixes https://bugzilla.gnome.org/show_bug.cgi?id=709965 2013-12-01 12:37:52 +0100 Mark Nauwelaerts * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: videodecoder: add new API to docs and defs 2013-11-26 20:50:33 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: make _release_frame external API ... so subclasses can release a frame all the way (also from frame list) without having to pass through _finish_frame or _drop_frame. The latter may not be applicable, or may or may not have already been called for the frame in question. See https://bugzilla.gnome.org/show_bug.cgi?id=693772 2013-11-26 20:51:58 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix spelling error in debug message 2013-11-29 17:30:09 +0100 Wim Taymans * gst/playback/gsturidecodebin.c: uridecodebin: copy sticky events 2013-11-29 17:26:13 +0100 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: copy sticky events 2013-11-29 13:32:55 +0100 Sebastian Dröge * ext/theora/gsttheoraparse.c: theoraparse: Fix event handling Send CAPS event before any SEGMENT events or any other events that must come in order after the CAPS event. 2013-11-29 09:04:20 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: gst-play: quit on Q or Esc key 2013-11-28 16:22:01 +0000 Tim-Philipp Müller * gst/tcp/gsttcpserversink.c: tcp: fix compilation with MSVC error C2440 at line 165 of gsttcpserversink.c type cast error: cannot convert from GSocket* to GstMultiSinkHandle 2013-11-28 11:25:20 +0100 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: activate ghost pad before targetting Activate the decodebin2 pad before setting the target. This makes sure that the events are copied. 2013-11-21 22:54:42 +1100 Matthew Waters * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideometa.h: videometa: add GstVideoGLTextureUploadMeta buffer pool option allows configuration of whether GstVideoGLTextureUploadMeta is added to buffers resulting from a buffer pool. This is sperate to the caps feature in that an element may want to add the upload meta itself rather than allowing the buffer pool to. https://bugzilla.gnome.org/show_bug.cgi?id=712798 2013-11-26 12:29:30 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: error out if no frames are decoded before eos Raise an error in case no frames are decoded before EOS and we have input, meaning that data was received but it was somehow invalid. Based on the videodecoder change, merged here for consistency. https://bugzilla.gnome.org/show_bug.cgi?id=711094 2013-11-26 12:20:33 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Allow using -1 for infinite tolerated errors Allows using -1 to make audiodecoder never post an error message after decoding errors. Based on the videodecoder change, merged here for consistency. https://bugzilla.gnome.org/show_bug.cgi?id=711094 2013-11-26 12:03:24 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Fix visualizations if no visualization plugin was set https://bugzilla.gnome.org/show_bug.cgi?id=712280 2013-10-29 14:40:23 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: error out if no frames are decoded before eos Raise an error in case no frames are decoded before EOS and we have input, meaning that data was received but it was somehow invalid. https://bugzilla.gnome.org/show_bug.cgi?id=711094 2013-10-29 14:11:51 -0300 Thiago Santos * gst-libs/gst/video/gstvideodecoder.c: videodecoder: allow using -1 for infinite tolerated errors Allows using -1 to make videodecoder never post an error message after decoding errors. https://bugzilla.gnome.org/show_bug.cgi?id=711094 2013-11-24 14:38:25 +0000 Tim-Philipp Müller * tools/gst-play-kb.h: * tools/gst-play.c: tools: play: implement seeking via console in interactive mode Arrow left and right to seek back of forward. 2013-11-24 14:33:24 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: play: fix endless loop on unhandled keys When debugging output is not enabled. 2013-11-24 13:49:04 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: play: add keyboard controls for next/previous item in list Make the '>' and '<' keys skip to the next or previous item in the playlist. 2013-11-24 01:08:48 +0000 Tim-Philipp Müller * tools/Makefile.am: * tools/gst-play-kb.c: * tools/gst-play-kb.h: * tools/gst-play.c: tools: play: add --interactive switch and basic keyboard handling Only pause/play with spacebar for now. 2013-11-23 11:25:28 +0100 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind: Add typefinder for OpenEXR 2013-11-21 21:33:59 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: videodecoder: avoid descending output timestamps Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712796 2013-11-22 21:00:21 +0000 Tim-Philipp Müller * tools/gst-play.c: tools: play: add --shuffle command line option 2013-11-21 16:34:25 +0000 Tim-Philipp Müller * tests/check/elements/subparse.c: tests: add unit test for samiparser issue https://bugzilla.gnome.org/show_bug.cgi?id=712805 2013-11-21 22:04:46 +0900 Jihyun Cho * gst/subparse/samiparse.c: subparse: fix null pointer access in sami parser https://bugzilla.gnome.org/show_bug.cgi?id=712805 2013-11-21 15:19:47 +0000 Tim-Philipp Müller * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: subparse: g_memmove() is deprecated Just use plain memmove(), g_memmove() is deprecated in recent GLib versions. https://bugzilla.gnome.org/show_bug.cgi?id=712811 2013-11-18 19:27:14 +0000 Tim-Philipp Müller * tests/icles/input-selector-test.c: tests: fix input-selector-test Update for pad template name changes. 2013-11-18 16:03:07 +0000 Tim-Philipp Müller * tests/check/elements/appsrc.c: tests: fix appsrc test with latest GLib version With the latest GLib, g_source_remove() complains about not finding the timeout source with the given ID here, since it was already destroyed by returning FALSE from the timeout callback. Also return FALSE from the bus watches when we don't want to be called any more. 2013-11-16 13:06:37 +0000 Tim-Philipp Müller * ext/cdparanoia/gstcdparanoiasrc.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoraparse.c: * gst/app/gstapp.c: * gst/audiorate/gstaudiorate.c: * gst/gio/gstgiosink.c: * gst/gio/gstgiosrc.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: * gst/videorate/gstvideorate.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: docs: remove old 0.10 Since markers They're just confusing. 2013-11-16 12:29:04 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: docs: cosmetic since marker fixes 2013-11-16 15:24:48 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: also set output buffer DTS 2013-11-14 01:53:31 -0300 Reynaldo H. Verdejo Pinochet * gst/typefind/gsttypefindfunctions.c: typefind: Fix identification of some MPEG files Make sure we begin by peeking at MPEG2_MAX_PROBE_LENGTH bytes. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=678011 2013-11-13 20:12:48 +0100 Sebastian Dröge * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: Fix gst_rtp_buffer_ext_timestamp() with clang 5 on iOS/ARM The bitwise NOT operator is not defined on signed integers. Thanks to Wim Taymans for finding the cause. https://bugzilla.gnome.org/show_bug.cgi?id=711819 2013-11-12 18:58:43 +0000 Tim-Philipp Müller * tests/check/elements/streamsynchronizer.c: tests: fix race in streamsynchronizer test Wait for thread to exit before starting to free the to_push list, otherwise thread might check the final to_push->next node only after we've freed it already. 2013-11-11 14:10:53 +0200 Sreerenj Balachandran * gst-libs/gst/video/gstvideodecoder.c: videodecoder: try to negotiate the buffer pool even though there is no o/p format We could have allocation query before caps event and even without caps inside the query. In such cases , the downstream can return a bufferpool object with out actually configuring it. This feature is helpful to negotiate the bufferpool with out knowing the output video format. For eg: some hardware accelerated decoders can interpret the o/p video format only after it finishes the decoding of one buffer at least. https://bugzilla.gnome.org/show_bug.cgi?id=687183 2013-11-07 15:03:34 +0000 Tom Greenwood * gst-libs/gst/app/gstappsrc.c: appsrc: Fix deadlock that may occur when multiple threads access appsrc at once https://bugzilla.gnome.org/show_bug.cgi?id=711550 2013-11-07 14:12:17 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add unit test for handling unaligned buffers That is, buffers that start or end in the middle of an output block. 2013-11-07 14:12:00 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Fix EOS handling if we have some pending data 2013-11-07 13:57:35 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add test for the discont handling 2013-11-07 13:55:32 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Refactor sync test to be more reusable 2013-11-07 13:48:06 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Remove some racy-ness from the unit test We might already be EOS when we start the mainloop, so only set the pipeline to PLAYING from the main loop. 2013-11-04 09:55:17 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: accumulate buffers in adapter Accumulate buffers in an adapter instead of appending them because append causes a lot of memcpys. Keep track of the last tagsize and accumulate enough data before attempting to parse more data. This patch implements a minimal amount of changes in order to not change the behaviour. We should really rewrite the tag handling and trimming using the adapter API instead of merging and trimming into a buffer. 2013-11-06 15:50:08 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Don't take channel mask in consideration in mono or stereo This could cause negotiation to fail. https://bugzilla.gnome.org/show_bug.cgi?id=708633 2013-11-06 15:18:58 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add simply synchronization test 2013-11-06 15:18:50 +0100 Sebastian Dröge * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * gst/audiomixer/gstaudiomixerorc-dist.c: * gst/audiomixer/gstaudiomixerorc-dist.h: * gst/audiomixer/gstaudiomixerorc.orc: * tests/check/elements/audiomixer.c: audiomixer: Add new element based on adder that does synchronized audio mixing 2013-11-06 12:16:31 +0100 Sebastian Dröge * tests/check/elements/adder.c: adder: Free consistency checker instance in test_live_seeking test 2013-11-06 12:01:14 +0100 Sebastian Dröge * tests/check/elements/adder.c: adder: Release some request pads properly in the unit test 2013-11-05 11:18:01 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 865aa20 to dbedaa0 2013-11-04 11:34:38 +0100 Alessandro Decina * tools/gst-discoverer.c: discoverer: fix build after last commit Add a forward declaration for my_g_string_append_printf that specifies G_GNUC_PRINTF. Turn off indent on it as it drives gst-indent crazy. 2013-11-04 11:17:30 +0100 Alessandro Decina * tools/gst-discoverer.c: discoverer: fix -Wformat-nonliteral warning 2013-11-03 15:57:54 +0100 Sebastian Dröge * tests/check/libs/audio.c: audio: Add unit test for filling memory with silence samples 2013-11-03 12:23:12 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: audio: Update ORC dist files 2013-11-03 12:22:33 +0100 Sebastian Dröge * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/gstaudiopack.orc: audio-format: Use ORC for filling memory with silence samples 2013-11-01 17:02:22 +0100 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstrtsp.def: rtspconnection: Add new API to the docs and .def file 2013-11-01 16:43:56 +0100 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: Fix indention in header 2013-11-01 07:25:01 -0700 Aleix Conchillo Flaque * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: allow setting tls certificate validation Added new functions gst_rtsp_connection_set_tls_validation_flags() to allow setting the TLS certificate validation flags when establishing a TLS connection. A getter is also available, gst_rtsp_connection_get_tls_validation_flags(). https://bugzilla.gnome.org/show_bug.cgi?id=711231 2013-11-01 14:22:13 +0000 Matthieu Bouron * gst-libs/gst/sdp/gstsdpmessage.c: sdp: fix duplicate 'const' declaration warnings https://bugzilla.gnome.org/show_bug.cgi?id=711258 2013-10-16 16:46:05 -0300 Thibault Saunier * gst/playback/gstrawcaps.h: playback: Add subpicture/x-dvb as raw caps https://bugzilla.gnome.org/show_bug.cgi?id=710325 2013-10-28 12:36:04 +0100 Antonio Ospite * gst/videoscale/gstvideoscale.c: videoscale: fix adding borders when NV12 is used When the frame buffer is NV12 the borders are not added at all, fix that and fill them to black. https://bugzilla.gnome.org/show_bug.cgi?id=711003 2013-10-23 16:43:32 +0100 Matthieu Bouron * gst/videoconvert/videoconvert.c: videoconvert: remove unneeded guint comparaison https://bugzilla.gnome.org/show_bug.cgi?id=710760 2013-10-14 18:45:16 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: also filter 'framed' field when looking for same streams Fixes extra streams for some mp4 files containing aac audio. 2013-10-08 21:57:11 +0200 Stefan Sauer * ext/ogg/gstoggdemux.c: oggdemux: fix copy'n'paste in comment 2013-10-10 15:56:32 -0300 Thibault Saunier * ext/theora/gsttheoraenc.c: theoraenc: Do nothing when flushing the encoder when no caps were set In case we receive a flush event before having our caps set, we will end up trying to create a theora encoder even though we are not ready. Avoid that situation making sure we are initialized before accepting to be flushed. https://bugzilla.gnome.org/show_bug.cgi?id=709858 2013-10-11 21:51:00 +0200 Stephan Sundermann * gst-libs/gst/video/navigation.c: navigation: Add missing out parameter annotations to GstNavigation https://bugzilla.gnome.org/show_bug.cgi?id=709938 2013-10-10 14:09:19 +0100 Julien Isorce * tests/examples/overlay/qtgv-videooverlay.cpp: examples/overlay: handle the case when xvimagesink is not found So that ximagesink can have a chance to be found. In qtgv-videooverlay. 2013-10-10 14:01:44 +0100 Julien Isorce * tests/examples/overlay/gtk-videooverlay.c: * tests/examples/overlay/qt-videooverlay.cpp: examples/overlay: unref sink only when found In gtk-videooverlay and qt-videooverlay examples. 2013-10-07 14:52:00 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst/encoding/gstencodebin.c: encodebin: Handle changes in encoding_profile::restriction during playback There are cases where we want to change the restrictions caps during playback, handle that in encodebin. https://bugzilla.gnome.org/show_bug.cgi?id=709588 2013-10-08 17:07:02 +0200 Takashi Iwai * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Add channel map API support The initial support for the new ALSA chmap API. Just translate the current chmap to GstAudioChannelPosition during the setup. No function to specify the channel map manually yet, so still impossible to assign any non-standard positions or to configure in a different order even if the hardware allows. https://bugzilla.gnome.org/show_bug.cgi?id=709755 2013-10-08 16:02:46 +0200 Takashi Iwai * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Don't clear need_reorder flag too early gst_audio_ring_buffer_set_channel_positions() checks whether the given positions are identical with the current setup and returns immediately if so. But it also clears need_reorder flag before this comparison, thus this flag might be wrongly cleared if the function is called twice with the same channel positions. Move the flag clearance after the check. https://bugzilla.gnome.org/show_bug.cgi?id=709754 2013-10-08 16:13:58 -0300 Thiago Santos * tests/check/elements/videotestsrc.c: videotestsrc: improve test for backwards playback Improve test by checking that timestamps are decreasing 2013-10-08 16:10:54 -0300 Thiago Santos * gst/videotestsrc/gstvideotestsrc.c: * tests/check/elements/videotestsrc.c: videotestsrc: implement duration query Add duration query to videotestsrc, it can answer this query when the num-buffers property is set. https://bugzilla.gnome.org/show_bug.cgi?id=709646 2013-06-07 16:32:23 -0400 Thibault Saunier * tests/check/elements/videotestsrc.c: tests: test videotestsrc in reverse playback https://bugzilla.gnome.org/show_bug.cgi?id=701813 2013-10-08 00:08:34 -0300 Thiago Santos * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: implement reverse playback Decrement the n_frames counter when doing reverse playback to have timestamps and offsets reducing instead of increasing https://bugzilla.gnome.org/show_bug.cgi?id=701813 2013-10-08 09:13:50 +0200 Stefan Sauer * gst-libs/gst/video/gstvideodecoder.c: videodecoder: don't overflow in bytes<->time conversion fps_n and _d values can be large and this can overflow a uint. Also fix copy'n'paste mistake in comments. 2013-10-07 22:52:27 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: filter 'parsed' field when checking for same caps We're checking the caps to see if we got more caps details after a parser got plugged. This will also have a flipped 'parsed' field. If the field was already present before the parse the match will fail. Add a function that will do the check while excluding this field. 2013-10-07 22:51:46 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: don't shadow local variables 2013-10-07 22:51:04 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: early return when we have no streams 2013-10-07 22:49:52 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: also log stream-id 2013-10-07 18:53:18 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix quark-mismatch for toc and stream-id Seems like a copy'n'paste from 15ee41df. 2013-10-05 21:01:53 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: report depth for video This was returning 0 in all cases. Use the data from GstVideoFormatInfo instead. 2013-10-04 13:57:51 +0200 Matej Knopp * gst/audioconvert/gstaudioconvert.c: audioconvert: Map buffer as READWRITE if the buffer and memory is writable and only use the input buffer as temporary buffer in that case. https://bugzilla.gnome.org/show_bug.cgi?id=709408 2013-09-30 21:46:10 +0200 Hans Månsson * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Connect to proxy if specified Reference: https://bugzilla.gnome.org/show_bug.cgi?id=708880 2013-10-03 19:52:58 +0200 Stefan Sauer * tools/gst-discoverer.c: discoverer: extract helper to print common stream info Save some lnes of code by using a helper for common stream info. 2013-10-02 11:27:41 +0200 Stefan Sauer * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: extract some common code Extract code to make a GstDiscovererInfo. Extracts code that sets StreamInfo. 2013-10-02 15:02:44 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: If the visualisation is changing and reconfiguration is pending, do it all during reconfiguration Otherwise we will have two pad blocks that want to use the same mutex and block each other via the streamlock. https://bugzilla.gnome.org/show_bug.cgi?id=709210 2013-10-02 13:06:03 +0200 Edward Hervey * win32/common/libgstpbutils.def: win32: Update defs file 2013-10-02 12:26:59 +0300 Sreerenj Balachandran * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * win32/common/libgstpbutils.def: pbutils: Add codec-utility funtions to support H265 https://bugzilla.gnome.org/show_bug.cgi?id=708921 2013-10-01 23:17:06 +0200 Sebastian Dröge * gst-libs/gst/pbutils/descriptions.c: descriptions: Add description for H.265 2013-09-24 15:51:46 +0300 Sreerenj Balachandran * gst/typefind/gsttypefindfunctions.c: typefind: Add typefind function for H265 https://bugzilla.gnome.org/show_bug.cgi?id=708680 2013-09-24 16:47:52 -0700 Thiago Santos * gst/playback/gstplaybin2.c: playbin: make sure elements are in null before disposing If a pipeline fails to preroll, it might happen that the sinks are put into READY state from playbin's sink activation, but they are never set to playsink, so they aren't being managed by a GstBin and will keep their READY state until they are unreffed, leading to a warning. Prevent this by always forcing them to NULL when deactivating a group https://bugzilla.gnome.org/show_bug.cgi?id=708789 2013-09-28 13:19:02 +0200 Johannes Dewender * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: Don't consider trailing data tracks for MusicBrainz disc id calculation MusicBrainz removes trailing data tracks from releases on the server and also for the calculation of the MusicBrainz Disc ID. https://bugzilla.gnome.org/show_bug.cgi?id=708991 2013-09-23 11:35:43 +0200 David Svensson Fors * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: check if acquired in set_timestamp Also use GST_OBJECT_LOCK when accessing object data in set_timestamp. https://bugzilla.gnome.org/show_bug.cgi?id=702230 2013-09-15 21:48:43 +0200 MathieuDuponchelle * gst/adder/gstadder.c: adder: Don't take channel mask in consideration in mono or stereo This could cause negotiation to fail. https://bugzilla.gnome.org/show_bug.cgi?id=708633 2013-09-27 22:41:28 +0200 Matej Knopp * gst/audiorate/gstaudiorate.c: audiorate: clip buffer before pushing it https://bugzilla.gnome.org/show_bug.cgi?id=708953 2013-09-27 22:40:28 +0200 Matej Knopp * gst-libs/gst/audio/audio.c: audio: change buffer timestamp when clipping even if data hasn't been trimmed https://bugzilla.gnome.org/show_bug.cgi?id=708952 2013-09-27 22:53:43 +0200 Matej Knopp * gst-libs/gst/pbutils/descriptions.c: pbutils: Add entry for text/x-raw https://bugzilla.gnome.org/show_bug.cgi?id=708954 2013-09-25 19:29:24 +0200 Matej Knopp * gst-libs/gst/pbutils/descriptions.c: pbutils: add MPEG 2 AAC description https://bugzilla.gnome.org/show_bug.cgi?id=708773 2013-09-25 15:17:32 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: do big correction for large drift If we are using skew slaving and we drift more than twice the allowed amount, do a big correction to get back on track more quickly. 2013-09-24 18:28:57 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From 6b03ba7 to 865aa20 2013-09-24 16:26:37 +0200 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Unset input/output_stream after freeing the GIOStream watch->input_stream and watch->output_stream are owned by the GIOStream and should be unset after freeing the stream. https://bugzilla.gnome.org/show_bug.cgi?id=708689 2013-09-24 15:05:21 +0200 Sebastian Dröge * configure.ac: configure: Actually use 1.3.0.1 as version to make configure happy 2013-09-24 15:00:20 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.2.0 === 2013-09-24 14:16:22 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.2.0 2013-09-24 14:14:18 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-09-24 12:47:26 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Make sure to cache context types we did not store yet https://bugzilla.gnome.org/show_bug.cgi?id=708668 2013-09-24 12:10:00 +0200 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Only create writesrc when it is actually needed Creating a GSource and not attaching it to a context will cause a leak of it's child sources. That is why we create writesrc right before attaching it to a context. https://bugzilla.gnome.org/show_bug.cgi?id=708667 2013-09-22 22:55:33 +0200 Mathieu Duponchelle * gst/adder/gstadder.c: adder: send pending segment out before checking for EOS Otherwise there would be cases where it would not send its segment out when the first collected after getting it would already yield EOS. https://bugzilla.gnome.org/show_bug.cgi?id=708590 2013-09-19 17:25:05 +0200 Wim Taymans * gst-libs/gst/video/video-frame.c: video-frame: copy offsets from metadata Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708606 2013-09-21 15:17:54 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: fix docs 2013-09-20 16:16:42 +0200 Edward Hervey * common: Automatic update of common submodule From b613661 to 6b03ba7 2013-09-19 18:42:49 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 74a6857 to b613661 2013-09-19 17:34:46 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From 098c0d7 to 74a6857 2013-09-19 16:33:29 +0200 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Fix compilation if no mmap is available Also #ifdef some more code paths that don't make sense without mmap. https://bugzilla.gnome.org/show_bug.cgi?id=708372 2013-09-19 12:58:53 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Switch to playing to handle live URI Fixes discovery on dvb:// 2013-09-19 11:34:54 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.90 === 2013-09-19 10:49:58 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/libgstallocators.def: Release 1.1.90 2013-09-19 10:13:32 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-09-18 20:42:55 -0400 Olivier Crête * gst-libs/gst/video/gstvideodecoder.c: videodecoder: If there is no PTS at all, assume it starts from the segment start This is to make the multifilesrc ! pngdec case work https://bugzilla.gnome.org/show_bug.cgi?id=688043 2013-09-19 09:44:47 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2013-09-18 22:05:36 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Implement context caching for sinks that are not in playsink yet 2013-09-18 18:21:54 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: No need to set the GstContext on the sink before activating it This is all handled by the GstBin code now. 2013-09-04 20:21:54 -0400 Olivier Crête * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstdmabuf.h: dmabuf: Make it not a singleton Makes it easier to track how many users there are Also make it possible to create a dmabuf struct on systems without mmap, it just won't be possible to map it. https://bugzilla.gnome.org/show_bug.cgi?id=707793 2013-09-13 16:01:42 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: check for valid payload type The payload type can't be between 72 and 76 because with the marker bit set, this could be mistaken for an RTCP packet then. We do a relaxed check and only refuse 72-76 when the marker bit is set. The effect is that when we try to map an RTCP packet as an RTP packet, we will certainly fail. 2013-09-13 09:17:38 +0100 Tim-Philipp Müller * configure.ac: configure: rely solely on pkg-config to find libogg and libvorbis And get rid of AS_SCRUB_INCLUDES https://bugzilla.gnome.org/show_bug.cgi?id=707658 2013-09-12 12:23:35 +0200 Wim Taymans * gst/videoscale/vs_4tap.c: videoscale: fix 4tap for RGB15 and RGB16 Fix component ordering, it's wrong in both the scanline and merge function so it cancels eachother out and isn't really a except for loss of precision of the green component. Fix calculation of the filter weight 2013-09-10 17:02:44 +0200 Wim Taymans * gst/videoscale/vs_scanline.c: videoscale: optimize merge for RGB15 and RGB16 2013-09-10 16:55:25 +0200 Wim Taymans * gst/videoscale/vs_4tap.c: videoscale: remove redundant MAX The checks above make it inpossible for the value to be smaller than what we check against with the MAX call. 2013-09-12 09:42:36 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audioencoder/decoder: Mark pads as requiring reconfiguration again if negotiation fails Otherwise we might end up in non-optimal configuration, especially when a flush happened during reconfiguration. 2013-09-12 09:35:00 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: videodecoder/videoencoder: Mark pads as requiring reconfiguration again if negotiation fails Otherwise we might end up in non-optimal configuration, especially when a flush happened during reconfiguration. 2013-09-10 21:44:33 +0200 Matej Knopp * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for TechSmith Screen Capture 2 https://bugzilla.gnome.org/show_bug.cgi?id=707878 2013-09-10 21:44:21 +0200 Matej Knopp * gst-libs/gst/riff/riff-media.c: riff: Add support for TechSmith Screen Capture 2 https://bugzilla.gnome.org/show_bug.cgi?id=707878 2013-09-06 15:36:12 -0300 Thiago Santos * ext/ogg/gstoggdemux.c: oggdemux: check for full eos after a pad goes eos in push mode After a pad is on EOS, verify if all pads are EOS and return upstream, avoiding keeping the buffer flow without having more data to push 2013-09-06 15:56:39 -0300 Thiago Santos * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: properly handle stop position at seeks in push mode Store the seek stop and seqnum and properly restore them when receiving the corresponding Segment from upstream. Also fixes seqnum for converted seek events. 2013-09-10 16:16:51 +0200 Wim Taymans * gst/videoscale/vs_4tap.c: videoscale: fix RGB15 masks 2013-09-10 16:06:54 +0200 Wim Taymans * gst/videoscale/vs_scanline.c: videoscale: simplify YUYV and UYVY linear scaling Simplify the code and make it handle odd width 2013-09-10 16:05:14 +0200 Wim Taymans * gst/videoscale/vs_scanline.c: videoscale: small cleanups Use BLEND macro Fix NV12 corner case 2013-09-10 16:03:08 +0200 Wim Taymans * gst/videoscale/vs_scanline.c: videoscale: fix RGB15 masks 2013-09-10 12:18:16 +0200 Wim Taymans * gst/videoscale/vs_scanline.c: videoscale: simplify nearest scaling Round the accumulator to avoid later checks Remove some bound checks that would never trigger Fix odd width scaling 2013-09-10 11:31:57 +0200 Wim Taymans * gst/videoscale/vs_image.c: videoscale: pick nearest line in scaling Use rounding to pick the nearest line instead of rounding down. 2013-09-03 17:27:37 +0100 Matthieu Bouron * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/tags.c: tag: id3: encapsulate ID3V2 blob frames in GstSample id3mux and id3v2mux expect GST_TAG_ID3V2_FRAME type to be stored in a GstSample and not a buffer, which is also needed because we can't attach extradata/caps to buffers any more. These are private tags no one should be poking at, and also the extra info is missing. https://bugzilla.gnome.org/show_bug.cgi?id=707765 2013-09-09 19:26:34 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: fix and improve raw video format description strings Mark terms such as "planar", "packed", and "palettized" as translatable, and re-arrange strings a bit to make them better suited for translation. Also fix bug in yuv descriptions, one plane is packed, more is planar (or semi-planar). https://bugzilla.gnome.org/show_bug.cgi?id=707789 2013-09-09 15:52:05 +0200 Wim Taymans * gst-libs/gst/audio/audio.h: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/video.h: docs: fix some doc blocks 2013-08-21 23:54:49 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideofilter.c: videofilter: implement transform_meta virtual method. If tags of the meta only contain "video", let it be copied. 2013-08-21 23:56:15 +0200 Mathieu Duponchelle * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video.h: video/audio: #define metadata strings. For instance "orientation" becomes GST_VIDEO_ORIENTATION_METADATA. 2013-09-07 19:14:50 +0100 Tim-Philipp Müller * tools/gst-play.c: tools: play: set playbin to NULL state on error to flush messages Just flushing the bus doesn't work here for some reason, so set playbin to NULL state, which seems to clear all error state and makes sure we do play the next playable song and don't pick up 'ghost' error messages from previous files on the bus. 2013-09-06 23:17:44 +0200 Loïc Minier * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playback: fix docs of convert-sample action signal convert-sample returns a GstSample, not a GstBuffer. https://bugzilla.gnome.org/show_bug.cgi?id=707660 2013-09-06 13:28:00 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: fix build without orc or older or versions ./.libs/libgstvideo-1.0.so: undefined reference to `video_orc_unpack_NV24' ./.libs/libgstvideo-1.0.so: undefined reference to `video_orc_pack_NV24' 2013-09-06 12:44:10 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: disable fastpath for odd width on some formats 2013-09-06 12:43:27 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc.orc: video-format: fix NV24 pack/unpack function We can't reuse the NV12 functions, we need to make new ones. 2013-09-06 12:42:47 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: handle odd width in more pack/unpack functions 2013-09-05 18:33:28 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-format.c: video-format: minor pack_YVYU optimisation Re-use already calculated line offset. 2013-09-05 17:46:03 +0200 Wim Taymans * gst/videotestsrc/videotestsrc.c: videotestsrc: flush pending lines on odd height 2013-09-05 17:22:50 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: add additional width/height constraints Some of the fastpath function can only work with aligned widht/height so make sure we check this as well when choosing a fastpath. Add fastpath for I420/YV12 -> BGRx 2013-09-05 17:06:05 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix chroma offsets 2013-09-05 16:25:36 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: don't convert too much with odd width 2013-09-05 16:15:41 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix unpack functions for odd formats 2013-09-05 15:02:17 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: clean up pack/unpack functions 2013-09-05 14:12:53 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: handle odd width in various pack functions 2013-09-05 12:44:05 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: don't overrun the arrays on UYVP 2013-09-05 11:05:36 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: handle lines in one go Handle odd heights in 1 go when no vertical subsampling is used. 2013-09-05 11:04:03 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: fix height round down 2013-09-04 17:34:20 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: also allocate temp lines in fastpath Some of the fastpath functions need tmplines, so make sure we allocate some in the fastpath too. This avoids SEGFAULTs with odd heights. See https://bugzilla.gnome.org/show_bug.cgi?id=663248 2013-09-04 17:21:23 +0200 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update specfile with latest changes 2013-09-04 15:07:56 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: add more fastpaths Also reuse the I420 code for YV12 because it can handle the swapped UV fields just fine. 2013-06-10 16:06:21 +0100 Alex Ashley * gst/typefind/gsttypefindfunctions.c: typefind: Added "dash" and "avc3" fourCC codes to qt_type_find. This commit adds detection of the "dash" and "avc3" compatible brands in qt_type_find. Amendment 2 of ISO/IEC 14496-15 (AVC file format) is defining a new structure for fragmented MP4 called "avc3". The principal difference between AVC1 and AVC3 is the location of the codec initialisation data (e.g. SPS, PPS). In AVC1 this data is placed in the initial MOOV box (moov.trak.mdia.minf.stbl.stsd.avc1) but in AVC3 this data goes in the first sample of every fragment (i.e. the first sample in each mdat box). The principal reason for avc3 is to make it easier for client implementations, because it removes the requirement to insert the SPS+PPS in to the decoder pipeline every time there is a representation change. https://bugzilla.gnome.org/show_bug.cgi?id=702004 2013-08-31 01:05:40 +0200 Piotr Drąg * po/POTFILES.in: po: update POTFILES.in https://bugzilla.gnome.org/show_bug.cgi?id=707158 2013-09-03 17:37:14 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: only chroma subsample when needed 2013-09-03 15:42:44 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: fix handling of chroma resample Increase the number of temporary lines that we need, it is possible that the up and downsampling offsets are out of phase and that we need to keep some extra lines around. Also copy the unhandled output lines for the next round instead of overwriting them. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=706823 2013-09-03 15:41:56 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: improve debug 2013-09-03 00:47:18 +0200 Matej Knopp * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Check for invalid stop position before calculating a duration from it https://bugzilla.gnome.org/show_bug.cgi?id=707332 2013-08-29 11:17:15 +0100 Tim-Philipp Müller * configure.ac: Require orc >= 0.4.18 Which contains important bug-fixes. https://bugzilla.gnome.org/show_bug.cgi?id=698520 2013-08-30 15:19:32 +0200 Josep Torra * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for MSS1 and MSS2 windows media formats 2013-08-30 13:51:47 +0200 Josep Torra * gst-libs/gst/riff/riff-media.c: riff: Provide correct media type for MSS1 and MSS2 Windows Media Video Screen (WMV Screen) are video formats that specilise in screencast content. This provides a correct media type for them instead of just video/x-asf-unknown. 2013-08-28 13:26:38 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.4 === 2013-08-28 12:41:42 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.1.4 2013-08-28 12:31:23 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2013-08-27 15:03:54 +0200 Andoni Morales Alastruey * gst-libs/gst/video/gstvideoencoder.c: videoencoder: fix forwarding of GstForceKeyUnit events Use the frame id to match the output forced keyframe with the event that forced it. https://bugzilla.gnome.org/show_bug.cgi?id=706885 2013-08-26 11:44:06 +0100 Tim-Philipp Müller * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: vorbisenc: remove unused variables 2013-08-26 11:47:40 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: do additional packet checks Check the packet size and avoid crashing on malformed packets. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=655727 2013-08-26 11:46:11 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: improve bye parsing It is an error to ask for a non-existing BYE SSRC, the caller should check the SSRC count first. 2013-08-23 18:06:36 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: fix mmap counting A successful gst_dmabuf_mem_map must always increment the mmap count. Otherwise the first gst_dmabuf_mem_unmap will unmap the memory and all other user will access unmapped memory. https://bugzilla.gnome.org/show_bug.cgi?id=706680 2013-08-26 08:08:32 +0200 Alessandro Decina * ext/vorbis/gstvorbisenc.c: vorbisenc: implement flushing 2013-08-25 10:25:43 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Make sure to return TRUE if the same caps are set again 2013-08-23 19:47:57 +0100 Tim-Philipp Müller * gst/audioconvert/gstaudioconvert.c: audioconvert: improve fixate_format function readability even more Do the flags comparisons only once and re-use the result. 2013-08-23 19:41:32 +0100 Tim-Philipp Müller * gst/audioconvert/gstaudioconvert.c: audioconvert: simplify fixate_format function some more If we have no output format yet, any format will do. The !out_info condition existed in every path, so just split it our for clarity. KISS. 2013-08-23 19:05:41 +0100 Tim-Philipp Müller * gst/audioconvert/gstaudioconvert.c: audioconvert: make fixate function more readable Use some variables to replace accessor macros to make code a little bit mor readable. 2013-08-23 18:52:44 +0100 Tim-Philipp Müller * gst/audioconvert/gstaudioconvert.c: audioconvert: remove unnecessary deep nesting in fixate function Makes it easier to read and removes two levels of indentation. 2013-08-23 19:20:03 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Only set the caps when they actually changed 2013-08-23 19:17:16 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Simplify pushing of pending events during negotiation And also don't send the same caps twice. 2013-08-23 19:10:48 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Fix last commit and simplify code a lot 2013-08-23 18:51:59 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: If we have to lose precision, try to lose as less precision as possible https://bugzilla.gnome.org/show_bug.cgi?id=706624 2013-08-23 16:59:30 +0200 Edward Hervey * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Fix previous commit (sorry) 2013-08-23 15:22:43 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videocoder: Don't push out identical caps This avoids triggering plenty of extra code/methods/overhead downstream when we can just quickly check whenever we want to set caps whether they are identical or not https://bugzilla.gnome.org/show_bug.cgi?id=706600 2013-08-23 15:22:05 +0200 Edward Hervey * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't push out identical caps This avoids triggering plenty of extra code/methods/overhead downstream when we can just quickly check whenever we want to set caps whether they are identical or not https://bugzilla.gnome.org/show_bug.cgi?id=706600 2013-08-22 17:33:45 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Update segment.base with the chain's start time too Fixes playback of chained ogg files. https://bugzilla.gnome.org/show_bug.cgi?id=706569 2013-08-22 14:18:29 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind: Add typefinder for video/x-pva https://bugzilla.gnome.org/show_bug.cgi?id=158719 2013-08-21 16:02:00 +0100 Tim-Philipp Müller * tools/gst-play.c: gst-play: move current playlist index along in about-to-finish 2013-08-21 15:39:30 +0100 Tim-Philipp Müller * tools/gst-play.c: gst-play: add --gapless mode so we can test about-to-finish. 2013-08-21 12:34:24 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: mark DISCONT on buffer in all cases Always mark discont on the input buffer when we detect a seqnum discont and not only when we previously marked ourselves DISCONT. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=706422 2013-08-21 11:20:28 +0100 Rico Tzschichholz * gst-libs/gst/video/gstvideometa.h: videometa: fix syntax error 2013-08-14 16:20:45 +0100 Matthieu Bouron * gst-libs/gst/tag/gstid3tag.c: tag: id3: handle publisher, interpreted-by and musical-key tags https://bugzilla.gnome.org/show_bug.cgi?id=705999 2013-08-15 11:03:47 +0100 Matthieu Bouron * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: add musical-key tag https://bugzilla.gnome.org/show_bug.cgi?id=705999 2013-08-19 10:39:19 +0200 Sebastian Dröge * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils-private.h: Revert "pbutils: allow describing unfixed caps if they share the same media type" This reverts commit 065f1603b0f1d2adc8477bf1f3ebe2b154885d89. This is not considered the correct solution, see: https://bugzilla.gnome.org/show_bug.cgi?id=703378 2013-08-16 13:22:33 +0200 Carlos Rafael Giani * gst/typefind/gsttypefindfunctions.c: typefind: improved and extended typefinder for module music formats introduced new caps: audio/x-mod, modtype : { xm, okt, mod, ptm, ... } https://bugzilla.gnome.org/show_bug.cgi?id=706061 2013-07-15 16:13:11 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: rtpbaseaudiopayload: Avoid copying the data 2013-08-17 16:58:06 +0100 Tim-Philipp Müller * tests/icles/playback/test6.c: tests: fix uridecodebin signal used in playback test6 "new-decoded-pad" no longer exists. 2013-08-17 16:53:30 +0100 Tim-Philipp Müller * tools/Makefile.am: * tools/gst-play-1.0.1: tools: add man page for new gst-play-1.0 utility https://bugzilla.gnome.org/show_bug.cgi?id=553520 2013-08-14 17:04:19 +0100 Tim-Philipp Müller * gst-libs/gst/Makefile.am: * gst-libs/gst/gst-i18n-app.h: * tools/.gitignore: * tools/Makefile.am: * tools/gst-play.c: tools: add simple command-line gst-play utility for testing purposes Differs from a plain gst-launch-1.0 playbin uri=... pipeline in that it can take multiple arguments and as such allows testing of things like gapless playback, switching between different formats and the like. Very minimal at this point, we'll probably want to add interactive controls and more options at some point. https://bugzilla.gnome.org/show_bug.cgi?id=553520 2013-08-16 13:59:35 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspmessage.h: rtsp: fix direct includes https://bugzilla.gnome.org/show_bug.cgi?id=695889 2013-08-16 13:55:33 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/missing-plugins.h: pbutils: fix direct includes https://bugzilla.gnome.org/show_bug.cgi?id=695889 2013-08-16 13:47:31 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/video-chroma.h: * gst-libs/gst/video/video-frame.h: video: make direct includes work again Not nice to break people's code if we can avoid it. Could add a warning in the next cycle, and then require single includes in the cycle after. https://bugzilla.gnome.org/show_bug.cgi?id=695889 2013-08-16 13:06:58 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudiometa.h: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: audio: make direct includes work again Not nice to break people's code if we can avoid it. Could add a warning in the next cycle, and then require single includes in the cycle after. https://bugzilla.gnome.org/show_bug.cgi?id=695889 2013-08-16 14:12:32 +0100 Tim-Philipp Müller * tests/icles/test-header-compile: tests: add test-header-compile script https://bugzilla.gnome.org/show_bug.cgi?id=695889 2013-08-16 12:12:05 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: Revert "typefind: improved and extended typefinder for module music formats" This reverts commit 4c79f35c7abc78bf4d325a8cd2059e8832ea0b34. It causes some MP4 files to be detected as mod files. 2013-08-13 23:18:34 +0200 Carlos Rafael Giani * gst/typefind/gsttypefindfunctions.c: typefind: improved and extended typefinder for module music formats introduced new caps: audio/x-mod, modtype : { xm, okt, mod, ptm, ... } https://bugzilla.gnome.org/show_bug.cgi?id=706061 2013-08-15 14:15:05 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't reset too much if we're resetting because of a soft-flush Fixes reverse playback with Ogg/Theora. 2013-08-15 13:15:05 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: theora: Use new video codec base classes' flush vfunc 2013-08-15 12:45:35 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't reset decoder on segment events Either there was a flush before that resets everything anyway, or resetting would make us lose information we might need if it's just a segment update. 2013-08-15 12:44:56 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: video{en,de}coder: Add new flush vfunc as a replacement for reset 2013-08-14 16:55:55 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: video{en,de}coder: Revert to old ::reset() behaviour and deprecate it 2013-08-15 16:12:45 +0800 Jie Yang * gst/typefind/gsttypefindfunctions.c: typefind: ADTS/AAC, find more aac sync to select correctly https://bugzilla.gnome.org/show_bug.cgi?id=691462 2013-08-14 15:43:23 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't set sink to NULL if a new one is set while the old one is still in use 2013-08-14 11:43:50 +0100 Tim-Philipp Müller * gst/gio/gstgiobasesrc.c: gio: fix printf format compiler warning 2013-08-13 20:39:15 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: document that "finished" and "discovered" signals are only emitted in async mode https://bugzilla.gnome.org/show_bug.cgi?id=660195 2013-08-13 17:39:34 +0200 Edward Hervey * tests/check/elements/.gitignore: check: Update .gitignore 2013-08-13 17:39:25 +0200 Edward Hervey * .gitignore: .gitignore: Ignore files from automake test-driver 2013-08-13 13:43:32 +0200 Sebastian Dröge * tests/check/elements/playbin-complex.c: playbin-complex: Set fakesink as audio-sink to not use a real audio device https://bugzilla.gnome.org/show_bug.cgi?id=705157 2013-08-12 13:47:38 +0300 Sreerenj Balachandran * gst/typefind/gsttypefindfunctions.c: typefind: Add typefind function for WebP image format https://bugzilla.gnome.org/show_bug.cgi?id=705826 2013-08-04 01:01:25 +1000 Jonathan Matthew * gst/gio/gstgiobasesrc.c: gio: make better use of the cached buffer When playing mp3 files from a smb server, we get 64k read requests that mostly overlap. Without using the cache to partially satisfy these, we send these requests straight to the server, resulting in a lot more network traffic than necessary. https://bugzilla.gnome.org/show_bug.cgi?id=705415 2013-07-25 20:47:02 -0400 Youness Alaoui * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Clear taglist on reception of a STREAM_START event https://bugzilla.gnome.org/show_bug.cgi?id=705109 2013-07-30 17:37:43 -0400 Youness Alaoui * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Clear taglist on reception of a STREAM_START event https://bugzilla.gnome.org/show_bug.cgi?id=705109 2013-08-08 12:11:07 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Set proxy flags on the pads and use default event handler for simplicity https://bugzilla.gnome.org//show_bug.cgi?id=705555 2013-08-06 15:42:55 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: calculate FB packet length correctly 2013-08-06 15:11:05 +0200 Thibault Saunier * gst/adder/gstadder.c: adder: Raw buffers DTS should always be CLOCK_TIME_NONE 2013-08-05 16:14:22 +0200 Thibault Saunier * gst/adder/gstadder.c: adder: set DTS and PTS, sync on DTS 2013-08-02 20:08:29 +0200 Arnaud Vrac * gst/playback/gstplaybin2.c: playbin: check for tags on the right combiner instance The get-tags actions are not working in all cases, because the track number is used to resolve the stream combiner instead of the stream type. https://bugzilla.gnome.org/show_bug.cgi?id=705369 2013-08-02 16:57:43 -0700 David Schleef * tests/check/Makefile.am: tests: move orc removal to distclean 2013-08-02 14:33:24 -0700 David Schleef * configure.ac: configure: create dir tests/check/orc This is required now that subdir-objects is used, since automake expects to create a .deps directory inside. 2013-08-02 14:11:01 +0200 Lubosz Sarnecki * configure.ac: build: add subdir-objects to AM_INIT_AUTOMAKE Fixes warnings with automake 1.14 https://bugzilla.gnome.org/show_bug.cgi?id=705350 2013-08-02 11:00:06 +0200 Edward Hervey * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Demote ERROR statement back to DEBUG It crawled in with david's latest commit 2013-08-02 08:22:59 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Revert previous commit The 'hard' argument of reset changed signification after the latest start/stop/reset refactoring. 2013-08-01 16:01:30 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Pass on 'hard' argument from _flush to _reset When most of the code was moved from _flush() to _reset() the 'hard' argument was no longer propagated. 2013-07-31 11:26:58 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Add pinwheel and spokes patterns 2013-07-30 15:58:26 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: private/teletext -> application/x-teletext 2013-07-29 19:41:43 +0100 Tim-Philipp Müller * po/LINGUAS: * po/da.po: * po/de.po: * po/el.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/nb.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/sl.po: * po/sr.po: * po/tr.po: * po/uk.po: * po/vi.po: po: update translations 2013-07-26 15:29:05 +0200 Sjoerd Simons * ext/ogg/gstoggdemux.c: oggdemux: Prevent seeks when _SCHEDULING_FLAG_SEQUENTIAL is set Don't go into pull mode when the upstream scheduling flags indicate seeks should be avoided by setting GST_SCHEDULING_FLAG_SEQUENTIAL. https://bugzilla.gnome.org/show_bug.cgi?id=704929 2013-07-29 14:47:33 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.3 === 2013-07-29 13:37:00 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/libgstpbutils.def: * win32/common/video-enumtypes.c: Release 1.1.3 2013-07-29 13:36:51 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-07-29 12:11:38 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Don't swap start/stop for negative rates in the SEGMENT query 2013-07-29 11:40:57 +0200 Sebastian Dröge * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Properly implement seeking if tagdemux is driving the pipeline https://bugzilla.gnome.org/show_bug.cgi?id=705062 2013-07-29 10:46:01 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Implement SEGMENT query 2013-07-28 23:38:06 +0200 Matej Knopp * gst/videorate/gstvideorate.c: videorate: ignore GAP event videorate automatically fills gaps with the previous frames. https://bugzilla.gnome.org/show_bug.cgi?id=705048 2013-07-28 23:38:17 +0200 Matej Knopp * gst/audiorate/gstaudiorate.c: audiorate: ignore GAP event audiorate automatically fills gaps with silence. https://bugzilla.gnome.org/show_bug.cgi?id=705048 2013-07-28 13:52:28 +0200 Sebastian Dröge * gst/tcp/gstmultisocketsink.c: multisocketsink: Fix handling of partial writes and WOULD_BLOCK errors 2013-07-28 13:23:41 +0200 Sebastian Dröge * gst/tcp/gstmultifdsink.c: multifdsink: Update current time after every write Each write will update the last_activity_time and otherwise we would compare against a too old current time and immediately timeout because current time is smaller than last activity time (overflow). 2013-07-28 13:20:48 +0200 Sebastian Dröge * gst/tcp/gstmultihandlesink.c: multihandlesink: Update current time after every write Each write will update the last_activity_time and otherwise we would compare against a too old current time and immediately timeout because current time is smaller than last activity time (overflow). 2013-07-27 12:16:15 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for teletext 2013-07-26 14:28:41 +0200 Matej Knopp * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: do not leak input caps https://bugzilla.gnome.org/show_bug.cgi?id=704926 2012-11-02 10:04:16 +0100 Edward Hervey * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Initialize GstVideoInfo in ::start() Otherwise we end up with bogus values and races 2012-11-02 10:03:38 +0100 Edward Hervey * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Don't error on not-negotiated Base classes will handle re-negotiation if needed, but emitting an error message will make applications stop. 2012-09-12 12:41:01 +0200 Edward Hervey * ext/libvisual/gstaudiovisualizer.c: * ext/pango/gstbasetextoverlay.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gststreamsynchronizer.c: ext/gst: Ensure default query/event handlers are used And in some cases, just remove our implementation that does nothing 2013-07-26 11:02:32 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: appsrc: Also provide function API for current-level-bytes and integrate into the docs 2013-07-26 15:00:44 +0900 Changbok Chea * gst-libs/gst/app/gstappsrc.c: * win32/common/libgstapp.def: appsrc: Add "current-level-bytes" property https://bugzilla.gnome.org/show_bug.cgi?id=704774 2013-07-25 20:03:50 +0100 Vincent Penquerc'h * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * win32/common/libgstpbutils.def: codec-utils: add a gst_codec_utils_aac_get_index_from_sample_rate It maps a sample rate to a well known AAC sample rate index. 2013-07-26 10:22:32 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: videodecoder/encoder: Call reset() always between start() and stop() and never outside 2013-07-25 14:25:08 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: videoencoder/decoder: Call reset() before start() too 2013-07-25 11:56:07 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: don't detect mp3 based on just a few bits Remove dodgy code that detects mp3 with as little as a valid frame sync at the beginning. This was only used in some unit tests in -good where there were only a few bytes after the id3 tag. We now require at least two frame headers. Fixes mis-dection of text files with UTF-16 LE BOM as mp3. https://bugzilla.gnome.org/show_bug.cgi?id=681368 2013-07-25 14:11:28 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/video/gstvideodecoder.h: audio/videodecoder: Rename variable in macro from dec to __dec Otherwise it might shadow another variable in the outside scope and cause interesting side effects. 2013-07-25 13:31:07 +0200 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Clean up handling of reset/flushing/start/stop 2013-07-25 13:29:22 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Clean up handling of reset/flushing/start/stop 2013-07-25 10:53:14 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: There's no point in resetting the encoder when the caps change The subclass will be called with set_format() and there it can drain if necessary and reset whatever is necessary. This is the same behaviour as for the video decoder. 2013-07-25 10:46:04 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Reset internal state and segments on FLUSH_STOP https://bugzilla.gnome.org/show_bug.cgi?id=656007 2013-07-25 10:42:56 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Refactor GstVideoEncoder::reset() handling a bit Let gst_video_encoder_reset() call it as would be intuitive and only call it indirectly from gst_video_encoder_drain(). Now it actually makes sense. 2013-07-25 10:20:01 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Refactor GstVideoDecoder::reset() handling a bit Let gst_video_decoder_reset() call it as would be intuitive and only call it indirectly from gst_video_decoder_flush(). Now it actually makes sense. 2013-07-24 09:24:45 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Take DTS as PTS for keyframes as a last resort if we can't calculate any PTS https://bugzilla.gnome.org/show_bug.cgi?id=704193 2013-07-23 13:42:40 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Remove two unused variables 2013-07-23 13:38:33 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Remove some more unneeded segment tracking 2013-07-23 13:36:09 +0200 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: playsinkconvertbin: Remove obsolete segment tracking This is now all handled automatically with sticky events. 2013-07-23 12:40:57 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Ensure that everything in a GstSourceGroup gets the same group-id Including streams from external subtitle files. If not everything implements the group-ids playbin invents its own. 2013-07-23 12:35:46 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Fix handling of colorbalance element if the sink does not implement it 2013-07-23 11:13:19 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Improve segment handling in the custom flushing for subtitle stream switches This code needs a lot more work to be improved for 1.0. 2013-07-23 11:11:33 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Segment events are sticky now and propagated automatically when needed 2013-07-23 09:14:23 +0200 Sebastian Dröge * gst/encoding/gststreamcombiner.c: streamcombiner: Proxy all sink events downstream Thanks to Mathieu Duponchelle for noticing this regression introduced with the last change. https://bugzilla.gnome.org/show_bug.cgi?id=704706 2013-07-22 15:24:50 +0200 Sebastian Dröge * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Add support for group-id in the stream-start event 2013-07-22 15:24:29 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggmux.c: ogg: Add support for group-id in the stream-start event 2013-07-22 13:15:09 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: Implement grouping of streams via the group-id https://bugzilla.gnome.org/show_bug.cgi?id=704427 https://bugzilla.gnome.org/show_bug.cgi?id=704408 2013-07-22 08:08:27 +0200 Sebastian Dröge * gst/encoding/gststreamcombiner.c: streamcombiner: Fix locking We have to hold the streams-lock when iterating over all pads, also the stream-lock of the pad is already locked when we receive EOS. Call gst_pad_event_default() for the correct default handling of events. 2013-07-22 00:48:54 +0200 Mathieu Duponchelle * gst/encoding/Makefile.am: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamcombinerpad.h: * gst/encoding/gststreamsplitter.c: encoding: fix EOS handling in streamsplitter / combiner. This commit adds a streamcombinerpad with an is_eos field. When streamcombiner receives an EOS on one of its pads, it forwards it all its other pads are EOS. This commit also removes the notion of "stream-switching-eos". 2013-07-19 10:47:27 +0200 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: respect stride alignment Increase the left padding so that we don't cause stride alignments later when we apply the padding. https://bugzilla.gnome.org/show_bug.cgi?id=694299 2013-07-19 10:43:38 +0200 Wim Taymans * gst-libs/gst/video/video-info.c: Revert "video: respect stride alignment when calculating planes offsets" This reverts commit 28e1dadbfaa403679e69f8173d1aa2c7500fd556. Incrementing the offset to make the plane aligned causes the image to be incompatible with what Xv expects. Rather that forcing a memcpy in the xvimagesink we would like to do adjust the left padding instead. 2013-07-18 14:13:33 +0200 Arnaud Vrac * gst-libs/gst/video/video-info.c: video: respect stride alignment when calculating planes offsets https://bugzilla.gnome.org/show_bug.cgi?id=694299 2013-07-18 07:45:47 +0200 Edward Hervey * gst-libs/gst/tag/gstid3tag.c: id3: Use debug category and show FIXMEs Allows spotting faster un-parsed tags 2013-07-17 11:42:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: videometa: Add docs to the region of interest meta functions 2013-07-17 09:04:47 +0100 Tim-Philipp Müller * gst/subparse/samiparse.c: subparse: use g_strdup() and friends Fixes build issue on windows, but is also better seeing that these string are going to get freed with g_free() and not free(). 2013-07-15 22:27:20 -0400 Olivier Crête * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Put the modified time back in the time part of the segment https://bugzilla.gnome.org/show_bug.cgi?id=704301 2013-07-16 18:50:09 +0100 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: fix videoscale test after video format addition 2013-07-16 18:42:19 +0100 Tim-Philipp Müller * configure.ac: configure: remove obsolete libxml checks https://bugzilla.gnome.org/show_bug.cgi?id=693056 2013-07-16 18:30:50 +0100 Tim-Philipp Müller * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: subparse: don't leak parse context for sami and qttext In gst_sub_parse_dispose() parser_type will be UNKNOWN, so these deinit calls were never executed. And we should clean up the parser state in the downwards state change anyway. 2013-05-28 16:56:28 +0900 Young-Ho Cha * tests/check/elements/subparse.c: tests: update sami parser testcases Remove libxml dependency for sami parser and add more testcases. https://bugzilla.gnome.org/show_bug.cgi?id=693056 2013-05-25 17:10:14 +0900 Young-Ho Cha * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: subparse: remove libxml dependency for sami parser and re-enable sami parser To celebrate 2013.gnome.asia, updated sami parser for gstreamer 1.x. :D Remove conditional block for check libxml usage and implement a simple html markup parser for the sami parser. https://bugzilla.gnome.org/show_bug.cgi?id=693056 2013-07-16 16:54:10 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.c: meta: fix ROI meta getter 2013-07-16 12:21:44 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Don't prefer decoders for which we found a matching sink It doesn't make much sense. 2013-07-16 11:47:59 +0200 Sebastian Dröge * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add support for NV24 color format This is semi-planar 4:4:4 YUV. https://bugzilla.gnome.org/show_bug.cgi?id=703259 2013-07-16 11:22:35 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Also consider possible converters for raw streams when selecting compatible sink/source combinations https://bugzilla.gnome.org/show_bug.cgi?id=704285 2013-07-16 10:09:27 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * win32/common/libgstvideo.def: videometa: Add to the docs and make function names more consistent with others 2013-07-16 10:04:00 +0200 Miguel Casas-Sanchez * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: Add Region Of Interest meta https://bugzilla.gnome.org/show_bug.cgi?id=704070 2013-07-16 09:30:33 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Fix sorting for decoder factories for which we didn't find a compatible sink They might just need some converters for raw audio/video. https://bugzilla.gnome.org/show_bug.cgi?id=704285 2013-07-15 17:09:16 -0400 Olivier Crête * gst-libs/gst/riff/riff-media.c: riff-media: Add 'png ' fourcc On top of mpng, MPNG, PNG, there is also png it seems https://bugzilla.gnome.org/show_bug.cgi?id=704291 2013-07-15 15:23:17 +0200 Benjamin Gaignard * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstdmabuf.h: allocators: dmabuf: allow testing allocator type In decide_allocation function some element may when to test the proposed allocator. For example like this: if (gst_query_get_n_allocation_params (query) > 0) { GstAllocator * allocator; GstAllocationParams params; gst_query_parse_nth_allocation_param (query, 0, &allocator, ¶ms); if (g_strcmp0(allocator->mem_type, GST_ALLOCATOR_DMABUF) == 0) GST_DEBUG("got dmabuf allocator"); else GST_DEBUG("got an other allocator"); } https://bugzilla.gnome.org/show_bug.cgi?id=703659 2013-07-14 01:42:52 +0200 Mathieu Duponchelle * ext/ogg/gstoggdemux.c: oggdemux: Make bisecting fully accurate When bisecting after an earliest time has been found, we need to only consider the stream for which the earliest time was found. Before, the following scenario could be and was encountered: a) Find the earliest time for stream X b) bisect and find a page which granuletime is indeed < target, but contains another stream. c) decide to seek at the wrong offset, sometimes inferior to the real one, in which case the error was undected or d) the offset was superior, and thus the actual target keyframe was not processed, and packets were skipped waiting for a granulepos. https://bugzilla.gnome.org/show_bug.cgi?id=700537 2013-07-13 20:45:01 +0200 Mathieu Duponchelle * ext/ogg/gstoggdemux.c: Revert "oggdemux: fix seeking with negative rate with skeleton" This reverts commit b41cd0428956f3ade9b428149e38be8e788556fe. 2013-07-15 09:10:30 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Don't print a warning when setting a sink to NULL https://bugzilla.gnome.org/show_bug.cgi?id=704194 2013-07-14 18:11:59 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Create a new write GSource after removing it After removal, a GSource is destroyed and can never be attached again to a main context. We need to create a new one instead. https://bugzilla.gnome.org/show_bug.cgi?id=704198 2013-07-12 12:05:37 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Properly destroy and set to NULL sinks that don't work 2013-07-08 23:49:39 +0200 Alban Browaeys * gst/playback/gstplaybin2.c: playbin: Fix logic to detect if a stream-change is currently pending Fixes duration reporting in gapless playback between files. https://bugzilla.gnome.org/show_bug.cgi?id=585969 2013-07-12 09:37:51 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.h: videometa: fix header formatting 2013-07-10 13:27:21 -0400 Reynaldo H. Verdejo Pinochet * gst-libs/gst/riff/riff-media.c: riff: Provide correct media type for XSub Xsub (fourcc DXSB) is a subpicture stream used for embeded subtitles on divx files. This provides a correct media type for them instead of just video/x-avi-unknown. 2013-07-11 16:57:11 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.2 === 2013-07-11 15:30:23 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.1.2 2013-07-11 15:29:57 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-07-10 17:16:14 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Only give sinks a new bus if they have no parent yet Otherwise we will remove the bus that would proxy messages to playsink and never set it again. If the sink is already in playsink, all failures are fatal anyway as it's either a sink that worked before or one that was set by the user. https://bugzilla.gnome.org/show_bug.cgi?id=701997 2013-07-10 13:22:04 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Store a/v/t sinks locally too, not just in playsink 2013-07-10 13:21:29 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: ref_sink() any sinks that are set on playsink Otherwise the behaviour of the properties is inconsistent. 2013-07-10 13:20:34 +0200 Sebastian Dröge * tests/check/elements/playbin.c: playbin: Fix assumptions in the unit test Unused sinks are still set to READY now during autoplugging to check their caps. Also playsink owns a ref to the sinks too. 2013-07-10 13:00:21 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Non-TIME segment streams are not waiting automatically This was leftover code from porting to 1.0 and fixes the playbin unit test. https://bugzilla.gnome.org/show_bug.cgi?id=701943 2013-07-09 23:04:49 +0200 Branko Subasic * win32/common/libgstrtp.def: win32: add missing rtp buffer methods 2013-07-09 14:55:57 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin: Change sink ownership handling to be a bit more sane playbin will now only activate the sinks in a single place and will never change the states of any sinks that are owned by playsink. Also handle text-sinks the same way as audio/video sinks inside playbin. 2013-07-05 21:55:26 +0200 Piotr Drąg * po/POTFILES.in: po: update POTFILES.in https://bugzilla.gnome.org/show_bug.cgi?id=703684 2013-07-04 17:09:00 +0300 Sreerenj Balachandran * gst-libs/gst/video/colorbalance.c: colorbalance: Fix the typo in base_init(). 2013-07-04 12:54:59 -0400 Thibault Saunier * gst/adder/gstadder.c: adder: Do not send flush_start event with the stream lock taken FLUSH_START is not serialized, so the lock should not be taken when sending it. 2013-07-05 00:47:08 +0100 Marcin Lewandowski * gst-libs/gst/tag/id3v2frames.c: tag: ignore malformed ID3v2 TDAT frames Just skip them, don't cause criticals. https://bugzilla.gnome.org/show_bug.cgi?id=703283 2013-07-03 09:44:32 +0100 Tim-Philipp Müller * gst/audioresample/speex_resampler_int.c: audioresample: make explicit that neon is disabled and why https://bugzilla.gnome.org/show_bug.cgi?id=703477 2013-07-02 18:20:39 +0200 Carlos Rafael Giani * gst/audioresample/speex_resampler_int.c: audioresample: disable 16-bit integer NEON support it seems to be broken (produces no audio), plus the performance gain is small Signed-off-by: Carlos Rafael Giani 2013-07-02 14:25:28 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: If we had a previous autoplugged sink, try to reuse it https://bugzilla.gnome.org/show_bug.cgi?id=701997 2013-07-02 14:18:20 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: If we switch sinks, make sure that the old sink is set to NULL 2013-07-02 14:02:57 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Don't change the state of sinks that we passed to playsink already 2013-07-02 14:01:52 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Consider new audio/video sinks when reconfiguring 2013-07-02 12:27:03 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Improve debug output regarding sink selection 2013-07-01 12:52:43 -0600 Brendan Long * gst/playback/gstplaybin2.c: playbin: Post an error message if a stream combiner doesn't return a request pad. 2013-07-01 13:45:25 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Only intersect to check if a sink can handle raw caps Doing a subset check requires fixed caps, which we might not have here. https://bugs.webkit.org/show_bug.cgi?id=116042 2013-07-01 10:39:02 +0100 Vincent Penquerc'h * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils-private.h: pbutils: allow describing unfixed caps if they share the same media type Caps description and missing plugin code does not really need caps to be fixed, and indeed they may not be if giving encodebin unfixed caps that correspond to an unknown encoder or muxer. So we relax the check, and allow unfixed caps if all the structures refer to the same media type. 2013-07-01 11:16:34 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Send all pending events with type < CAPS before sending caps 2013-06-27 16:33:15 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Send all pending events with type < CAPS before sending caps. https://bugzilla.gnome.org/show_bug.cgi?id=703196 2013-06-28 14:48:19 +0100 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: avoid too low mpeg/ts probability on small amount of data With the current test, we get into problems when we try to typefind a MPEG stream from a small amount of data, which can happen when we get data pushed from a HTTP source. We thus make a second test to give higher probability if all the potential headers were either pack or pes headers (ie, no potential header was unrecognized). This fixes an issue with a MPEG1/MP2 stream being properly discovered as video/mpeg from a file, but as audio/mpeg from souphttpsrc. https://bugzilla.gnome.org/show_bug.cgi?id=703256 2013-06-30 18:17:15 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video(enc|dec)oder: Don't return not-negotiated if flushing If the pad is flushing after a failed negotiation, return GST_FLOW_FLUSHING instead from finish_frame(). https://bugzilla.gnome.org/show_bug.cgi?id=701763 2013-06-30 18:16:35 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Don't return not-negotiated if flushing If the pad is flushing after a failed negotiation, return GST_FLOW_FLUSHING instead from finish_frame(). https://bugzilla.gnome.org/show_bug.cgi?id=701763 2013-06-14 07:23:40 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: * tests/check/libs/pbutils.c: pbutils: descriptions: Allow smart codec tag handling We already have internally the information on what type of stream (audio, video, container, subtitle, ...) a certain caps is. Instead of forcing callers to specify which CODEC_TAG category a certain caps is, use that information to make a smart choice. Does not break previous behaviour of gst_pb_utils_add_codec_description_to_tag_list (if tag is specified it will be used, if caps is invalid it will be rejected, ...). https://bugzilla.gnome.org/show_bug.cgi?id=702215 2013-06-19 09:25:48 +0200 Edward Hervey * gst-libs/gst/tag/gstxmptag.c: xmptag: Add a debug category Instead of using the default category 2013-06-27 12:23:27 +0200 Patricia Muscalu * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: do not leak lines Fixes https://bugzilla.gnome.org/show_bug.cgi?id=703177 2013-06-26 14:36:17 +0200 Ognyan Tonchev * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Do not leak the event when segment is delayed Fixes https://bugzilla.gnome.org/show_bug.cgi?id=703119 2013-06-26 15:03:05 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: make read uncancelable when reading a message When we start to read a message, we need to continue reading until the end of the message or else we lose track and cause parse errors. Use a variable may_cancel to avoid cancelation after we read the first byte until we have the complete message. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=703088 2013-06-21 20:41:15 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't return not-negotiated if flushing If the pad is flushing after a failed negotiation, return GST_FLOW_FLUSHING. https://bugzilla.gnome.org/show_bug.cgi?id=701763 2013-06-23 12:07:41 +0200 Sebastian Dröge * ext/ogg/gstoggstream.c: ogg: The Daala headers are little endian, not big endian 2013-06-23 10:30:02 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: ogg: Add Daala support 2013-06-21 19:04:43 +0200 Sebastian Dröge * gst-libs/gst/pbutils/descriptions.c: pbutils: Add VP9 description 2013-06-17 08:58:13 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix drop frame handling at startup In the unlikely case that the decoder drops a frame before the first input frame is outputted, use the input segment (since it wasn't carried over to the output segment yet) https://bugzilla.gnome.org/show_bug.cgi?id=702502 2013-06-21 11:50:33 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: dispatch when initial buffer has data When we have data in the inital buffer, dispath the read function to read it even if the socket has no data to read. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702652 2013-06-20 17:28:46 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: manage writer child source better Only add the write child source when we have something to write or else we will dispatch forever without doing anything. 2013-06-19 13:21:45 +0200 Jonas Holmberg * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: unref before memset Unref allocator and input_caps in encoder context before memsetting the context. 2013-06-19 09:22:50 +0200 Edward Hervey * gst-libs/gst/tag/gstxmptag.c: xmptag: More efficient GSList usage Instead of constantly appending (which gets more and more expensive), just prepend to the list (O(1)) and reverse the list before usage. https://bugzilla.gnome.org/show_bug.cgi?id=702545 2013-06-16 22:39:30 +0200 Branko Subasic * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: rtpbuffer: add gst_rtp_buffer_get_payload_bytes The function gst_rtp_buffer_get_payload can not be used in Python because it lacks necessary length parameter. This patch adds a new function, gst_rtp_buffer_get_payload_bytes, to use from Python bindings. The new function has the advisory "Rename to:" annotation so it can replace the gst_rtp_buffer_get_payload whan creating bindings. The function gst_rtp_buffer_get_extension_bytes is also added. It wraps gst_rtp_buffer_get_extension_data which doesn't work in Python due to incomplete annotation and because it returns the length as number of 32-bit words. https://bugzilla.gnome.org/show_bug.cgi?id=698562 2013-06-17 16:34:26 +0200 Ognyan Tonchev * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: add 2 missing gst_buffer_unmap () calls There are 2 missing calls to gst_buffer_unmap () in the error handling in create (). Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702467 2013-06-17 16:02:41 +0300 Sreerenj Balachandran * gst/playback/gstplaysink.c: playsink: Fix the block diagram of deinterlace bin. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702465 2013-06-13 11:08:20 -0600 Brendan Long * gst/playback/gstplaybin2.c: playbin: Emit {audio,text,video}-changed signals when pads are removed https://bugzilla.gnome.org/show_bug.cgi?id=702195 2013-06-11 15:22:50 +0200 Sebastian Dröge * gst/videoconvert/videoconvert.c: videoconvert: Fix leaking of the chroma resample helper objects 2013-06-10 14:43:35 +0300 Sreerenj Balachandran * tests/check/Makefile.am: * tests/check/elements/playbin-complex.c: tests: add more unit test for playbin Add unit test for autoplugging of video_decoder/video_sink combination based on capsfeatures. 2013-06-10 15:31:38 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Make sure to set a sensible default port for the GSocketConnection Otherwise it will connect to port 0 if no port is given in the URI. https://bugzilla.gnome.org/show_bug.cgi?id=701798 2013-06-09 19:20:20 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Reject segments that have a different rate than the output segment adder does no rate conversion. 2013-06-08 23:51:13 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: When activating a fixed sink, proxy error messages too If activating a fixed sink fails, everything will fail later anyway and we can just error out early. 2013-06-08 23:34:53 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Improve autoplugging of decoder/sink combinations by trying to activate the sink And if that fails don't bother autoplugging that sink. Also gives us more accurate sink caps. 2013-06-08 23:08:05 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Proxy the playbin context to the sinks 2013-06-08 23:04:43 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Proxy sink messages if we activate a sink in playbin already This makes sure the application gets any context related messages and can do whatever is required to a) get the sink a context or b) share the context with other elements in the pipeline. The proxying is necessary because the sink is not a child element of playbin, but instead will at a later point be a child of some bin inside playsink. https://bugzilla.gnome.org/show_bug.cgi?id=700967 2013-06-06 15:57:49 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Let serialize queries before caps events through Otherwise we're going to deadlock forever because no autoplugging happens without having caps, but caps can never be send because we're blocking. Serialized queries before caps should never be sent unless really necessary. 2013-06-05 18:36:40 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.1 === 2013-06-05 17:58:51 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-plugins-base.doap: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/volume/gstvolumeorc-dist.c: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/config.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 1.1.1 2013-06-05 16:20:38 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-06-05 15:14:43 +0200 Sebastian Dröge * common: Automatic update of common submodule From 098c0d7 to 01a7a46 2013-06-04 17:49:55 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Change GST_WARNING to a GST_DEBUG It's completely normal for some decoders to queue 50-60 frames without it causing any problems, e.g. RPi. 2013-06-01 09:05:16 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Remove private copy of gst_audio_info_is_equal() And improve the public one a bit based on it. 2013-05-30 16:00:35 -0600 Brendan Long * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: remove functions added in GLib 2.34 g_pollable_stream_read and g_pollable_stream_write were added in GLib 2.34, but Ubuntu 12.04 and Debian Wheezy still use GLib 2.32. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=701316 2013-05-30 18:48:19 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Add GstChildProxy interface for the sinkpads This allows to set the sinkpad properties more easily. Next step: Implement proper synchronization in adder, almost done! 2013-05-30 18:41:22 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Hold object lock in setcaps a bit longer to prevent race conditions 2013-05-30 14:57:04 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: Simplify segment event handling We don't care about upstream segments but generate our own. This makes the code more similar to videomixer again. 2013-05-30 14:45:58 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Use gst_audio_info_is_equal() to check if we get the same caps 2013-05-30 14:45:31 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio-info.h: * win32/common/libgstaudio.def: audio: Add gst_audio_info_is_equal() 2013-05-30 14:32:03 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: Don't calls gst_pad_set_caps() on sinkpads It doesn't make much sense and the CAPS query handling on the sinkpads should handle this. 2013-05-30 12:57:11 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Set GAP flag on silence buffers we created 2013-05-30 12:54:37 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadder.h: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/adder/gstadderorc.orc: adder: Remove caching of the processing function The compiler will generate a hashtable from the switch-case, and we need to call functions explicitely for the volume!=1.0 cases anyway. 2013-05-30 12:46:56 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadder.h: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/adder/gstadderorc.orc: adder: Add support for per-stream volumes 2013-05-30 12:21:06 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/adder/gstadderorc.orc: adder: Add optimized orc code for F64 processing 2013-05-30 12:05:02 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: The output buffer must be readable and writable 2013-05-30 12:02:53 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Add support for muting individual pads 2013-05-30 11:45:10 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Sync pad properties with the GstController 2013-05-30 11:40:01 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: Add custom GstPad subclass to hold additional data and properties This will later allow to set per-stream volumes and mute status. 2013-05-30 17:31:13 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: rtsp: add method to get the TLS connection 2013-05-30 13:14:46 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: let the sockets be reffed by the connection Don't add an extra ref to the sockets but use that of the connection. Keep the connection around as an IOStream. 2013-05-30 10:50:42 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Cleanup the error path Make sure the watch is removed when we close the read socket because of an error. 2013-05-30 10:45:42 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: cleanup the watch reset function 2013-05-30 10:30:09 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: check if the streams are still active Don't try to read/write from an inactive stream. When we, for example, transfer the second connection in tunneling mode, we are not interested anymore on read/write activity on the old connection. 2013-05-29 17:44:30 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: use child sources instead of using the sockets Use the source of the pollable input/output streams instead of accessing the sockets directly. 2013-05-29 16:15:32 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix input/output streams for tunneling 2013-05-29 15:27:37 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: don't use sockets for blocking Use the blocking and non-blocking API of the input/output streams instead of polling the sockets directly. This also allows us to simplify some code. 2013-05-28 17:06:14 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: add TLS support Add flag to select TLS in the transport. Enable TLS on the socketclient when we use a TLS uri. 2013-05-28 16:45:00 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: use the input/output stream of clientconnection Don't use the raw sockets for RTSP communication but use the IOStream. This is needed if we are going to use TLS later. 2013-05-28 11:16:51 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: set sockets non-blocking 2013-04-05 16:50:48 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: use GSocketClient for making connections Use the GSocketClient API for making connections with the server. This removes a bit of code and gives us the ability to do TLS later. 2013-05-27 15:32:50 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: Revert "rtspconnection: Use a GSocketAddressNumerator to resolve the addresses" This reverts commit 15a0bb0a10dcbc99c7f52e28ec9d0395699851ae. We should be using GSocketClient 2013-05-30 05:24:32 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: free tmplines correctly Keep track of how many tmplines we allocated and use that to free the correct amount of lines. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=701234 2013-05-29 10:33:48 -0600 Daniel Drake * gst/playback/gstplaysink.c: playsink: pass translated color balance value to channel We found a case where untranslated values were being passed from the proxy to the underlying channel, causing bad color balance values in some setups. Thanks to Sebastian Dröge for clarifying how the code works, and suggesting the fix. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=701202 2013-05-29 10:15:36 -0600 Brendan Long * gst/playback/gstplaybin2.c: playbin: Don't take an extra reference to the custom stream combiners They are automatically reffed when added to the bin because they're already not floating anymore. 2013-05-29 16:41:14 +0200 Sebastian Dröge * ext/alsa/gstalsasrc.c: alsasrc: Dump some more debug output about the device configuration 2013-05-29 16:39:17 +0200 Sebastian Dröge * ext/alsa/gstalsasink.c: alsasink: Update internal buffer/period times with the values that were configured on the device 2013-05-29 10:37:55 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/playbin-complex.c: playbin: Rename compressed unit test to complex It's not really about compressed streams anymore, but also about stream switching and stream combiners. 2013-05-29 10:35:11 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: * tests/check/elements/playbin-compressed.c: playbin: Set custom stream-combiners to NULL and unref before finalizing 2013-05-28 10:59:22 -0600 Brendan Long * tests/check/elements/playbin-compressed.c: playbin: Add playbin audio-stream-combiner test using adder 2013-05-28 11:23:56 -0600 Brendan Long * gst/playback/gstplaybin2.c: playbin: Rename select to combine and selector to combiner in playbin 2013-05-17 17:23:46 -0600 Brendan Long * gst/playback/gstplaybin2.c: playbin: Add support for custom stream-combiners This allows to chose something else than input-selector for multiple audio/video/text streams, e.g. an adder could be used for audio. It is needed for example to implement some of the more advanced HTML5 video features. https://bugzilla.gnome.org/show_bug.cgi?id=698851 2013-05-28 13:32:23 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Don't call autoplug-query on shutdown And remove leftover debug code 2013-05-28 13:23:40 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: In autoplug-queries, add the actual decoder/parser/etc template caps Add the actual decoder/parser/etc caps at the very end to make sure we don't cause empty caps to be returned, e.g. if a parser asks us but a decoder is required after it because no sink can handle the format directly. 2013-05-28 13:14:15 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Forward CONTEXT queries to the corresponding sink if we have one https://bugzilla.gnome.org/show_bug.cgi?id=700967 2013-05-28 13:08:00 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: playbin: Refactor autoplug-query handling We now only check sinks and factories of the corresponding media type. It doesn't make sense to pass audio/subtitle caps to a video decoder. 2013-05-28 13:06:15 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Block on serialized queries too Otherwise we will only block after the serialized, non-sticky event after the CAPS event or the first buffer. If we're waiting for another pad to finish autoplugging after we got final caps on this pad, it will mean that we will let the ALLOCATION query pass although the pad is not exposed yet. 2013-05-28 12:03:49 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: decodebin: Pass the element in the autoplug-query signal too 2013-05-28 11:40:51 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Need to lock the chain mutex in autoplug_query 2013-05-28 11:36:58 +0200 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Fix leak of the downstream caps filter 2013-05-28 11:05:21 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Refactor autoplug-query handling a bit 2013-05-27 14:53:48 +0200 Sebastian Dröge * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Use a GSocketAddressNumerator to resolve the addresses Instead of just trying the first possible resolution we're trying all resolutions until one works. 2013-05-27 13:04:00 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Require caps to be set before data flow happens 2013-05-27 11:53:27 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc.orc: video-format: fix NV16 unpack We can just use the NV12 functions, the only difference is the vertical subsampling. 2013-05-27 11:25:09 +0200 Wim Taymans * gst-libs/gst/video/video-chroma.h: video-chroma: add interlaced flag 2013-05-17 16:34:30 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: run chroma resamplers Run the chroma upsampler after unpack and the chroma subsampler before pack for higher quality conversions and correct chroma siting. 2013-05-17 16:26:49 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: subsample chroma before packing Run the chroma subsampler before packing. 2013-05-17 16:22:46 +0200 Wim Taymans * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-chroma.h: * win32/common/libgstvideo.def: video-chroma: add chroma resampler Add functions to up/downsample chroma in horizontal and vertical directions. These functions work in-placeand are meant to be used on the input/output of the pack/unpack functions. 2013-04-01 16:16:27 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-orc.orc: video: don't perform subsampling while packing Don't perform subsampling when packing but let this be done by a separate subsampling step. 2013-04-01 16:05:40 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: reformat 2013-05-17 15:45:41 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-chroma.c: * gst-libs/gst/video/video-chroma.h: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: move chroma functions to separate file 2013-05-17 15:41:10 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: actually use the input pixels Operate on the provided pixels array instead of the temp array. 2013-05-17 15:40:50 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.h: videometa: fix docs 2013-05-25 16:08:06 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Don't require an output state to be set before allocating output buffers 2013-05-24 17:43:53 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind: Ensure we have enough data when reading the sync marker in the AAC/LOAS typefinder 2013-05-24 16:52:50 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Always provide a buffer in gst_audio_(enc|dec)oder_allocate_output_buffer() We have no way of tell the caller of the exact error (e.g. if we're flushing), so will have to wait until the caller uses API that returns a GstFlowReturn, for example when pushing this buffer. https://bugzilla.gnome.org/show_bug.cgi?id=700006 2013-05-24 16:51:17 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: Always provide a buffer in gst_video_(enc|dec)oder_allocate_output_buffer() We have no way of tell the caller of the exact error (e.g. if we're flushing), so will have to wait until the caller uses API that returns a GstFlowReturn, for example when pushing this buffer. https://bugzilla.gnome.org/show_bug.cgi?id=700006 2013-05-24 13:41:46 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Lock the state of child elements as long as we manage their states https://bugzilla.gnome.org/show_bug.cgi?id=690420 2013-05-24 11:47:13 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin2: use NO_RESYNC flag" This reverts commit 0feecef2754ef208372eb39332b4f6fa2067d3d5. 2013-05-22 17:29:17 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Use signal handler IDs instead of disconnecting by function This is cleaner and faster. 2013-05-22 13:49:18 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Connect and disconnect the have-type signal of typefind before starting/shutting down 2013-05-22 10:57:57 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind: Add variant=itu to the h263 typefinder caps https://bugzilla.gnome.org/show_bug.cgi?id=700770 2013-05-21 16:35:18 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Use signal handler IDs instead of disconnecting/blocking by function This is cleaner and faster. 2013-05-07 07:49:00 +0200 Alexander Schrab * ext/alsa/gstalsasrc.c: * gst-libs/gst/audio/gstaudiobasesrc.c: alsasrc: Make using driver timestamps possible https://bugzilla.gnome.org/show_bug.cgi?id=699744 2013-05-20 11:23:06 +0200 Sebastian Dröge * ext/alsa/gstalsasrc.c: alsa: Dump min/max period time and buffer time in alsasrc too 2013-05-17 09:16:08 +0200 Benjamin Gaignard * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Make sure that memory is unmapped before releasing it Be sure that memory is unmapped before releasing it. https://bugzilla.gnome.org/show_bug.cgi?id=700411 2013-05-16 11:35:58 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: make mask arguments to gst_video_format_from_masks() unsigned These should really be unsigned. 2013-05-16 10:52:29 +0200 Benjamin Gaignard * sys/ximage/ximagesink.c: ximagesink: add support for 32-bit RGB with alpha mask When X screen return a depth = 32 with bpp = 32, the alpha mask must be correctly set to have a known GStreamer video format. X visual structure doesn't provide the alpha mask information, but we can find it from the others masks. https://bugzilla.gnome.org/show_bug.cgi?id=700413 2013-05-16 11:09:11 +0100 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: ignore new NV16 format in videoscale unit test https://bugzilla.gnome.org/show_bug.cgi?id=700377 2013-05-16 10:52:29 +0200 Benjamin Gaignard * gst-libs/gst/video/video-format.c: video: fix gst_video_format_from_masks() for little endian masks with alpha Need to byte-order swap the alpha mask as well in this case. https://bugzilla.gnome.org/show_bug.cgi?id=700413 2013-05-16 09:07:46 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: set the initial memory size to the full size https://bugzilla.gnome.org/show_bug.cgi?id=700427 2013-05-15 18:20:50 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update disted orc backup files to fix build without liborc https://bugzilla.gnome.org/show_bug.cgi?id=700400 2013-05-15 17:15:18 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: Only do a subset filtering for the factories if we have fixed caps Otherwise we're plugging a parser/converter currently and have unfixed caps. 2013-05-15 14:51:16 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Return immediately from checking if a chain is complete if we're shutting down 2013-05-15 14:47:53 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Hold the expose lock when freeing a chain https://bugzilla.gnome.org/show_bug.cgi?id=700342 2012-11-26 16:37:22 +0100 Arnaud Vrac * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-orc.orc: video: add NV16 format This format is usually used by hardware video decoders for 4:2:2 sampling https://bugzilla.gnome.org/show_bug.cgi?id=700377 2013-05-15 13:38:32 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Fix deadlock caused by lock order inversion First the source group lock, then the elements list lock. 2013-05-15 11:03:58 +0200 Sebastian Dröge * ext/libvisual/gstaudiovisualizer.c: libvisual: Update visualizer baseclass from gst-plugins-bad 2013-05-15 10:51:24 +0200 Sebastian Dröge * common: Automatic update of common submodule From 5edcd85 to 098c0d7 2013-05-15 10:18:01 +0200 Sebastian Dröge * tests/check/elements/opus.c: opus: Fix event handling in unit test 2013-05-15 09:26:56 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-info.c: audio-info: Always pass NULL as position parameter to gst_audio_info_set_format() https://bugzilla.gnome.org/show_bug.cgi?id=700259 2013-05-14 10:06:40 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: playback: Use subset checks instead of intersection https://bugzilla.gnome.org/show_bug.cgi?id=700272 2013-05-12 09:55:38 -0400 Nicolas Dufresne * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Delay segment event after caps https://bugzilla.gnome.org/show_bug.cgi?id=700222 2013-05-14 09:34:21 +0200 Sebastian Dröge * gst-libs/gst/audio/audio-info.c: audio-info: For more than 64 channels don't allow a channel layout More than 64 channels have all channels unpositioned. https://bugzilla.gnome.org/show_bug.cgi?id=700259 2013-05-10 12:29:15 +0200 Sebastian Dröge * tests/check/elements/adder.c: * tests/check/elements/appsink.c: * tests/check/elements/audioconvert.c: * tests/check/elements/audiorate.c: * tests/check/elements/audioresample.c: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: * tests/check/elements/volume.c: * tests/check/elements/vorbisdec.c: * tests/check/elements/vorbistag.c: tests: Fix event order and missing events 2013-05-10 12:21:31 +0200 Sebastian Dröge * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: subparse/ssaparse: Fix event handling and order 2013-05-10 11:31:37 +0200 Sebastian Dröge * ext/vorbis/gstvorbisparse.c: vorbisparse: Fix event handling Internal state should only be reset on FLUSH_STOP, not FLUSH_START. Also forward pre-caps events immediately and don't queue them. 2013-05-10 11:24:46 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Make sure to always set caps on the srcpad and always send a segment event Even if the srcpad is not linked at this point, it might be linked as result of setting the caps. 2013-05-10 09:28:52 +0200 Mathieu Duponchelle * ext/ogg/gstoggmux.c: oggmux: don't send a segment event before the caps event https://bugzilla.gnome.org/show_bug.cgi?id=699971 2013-05-09 23:30:33 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideodecoder.c: videodecoder: don't set the list to NULL after taking its address 2013-05-09 18:02:57 +0200 Sebastian Dröge * tests/check/elements/playbin-compressed.c: playbin-compressed: Fix unit test 2013-05-08 20:31:00 +0200 Mathieu Duponchelle * gst/videorate/gstvideorate.c: videorate: Reset base timestamp and out_frame_count in any case on SEGMENT_EVENT Fixes #699187 2013-05-09 15:42:49 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Make sure to push any pre-caps events before the caps are set 2013-05-09 15:34:10 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Make sure to not push any post-caps events before we have caps and that we push pre-caps events before we push caps, even if we don't have a GstVideoFrame yet. 2013-05-09 15:05:21 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Chose more balanced metric to compare ranks of decoder/sink combinations 2013-05-09 10:40:19 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Set DECODE_ONLY flag on all header packets 2013-05-09 10:37:06 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: Revert "videodecoder: If a frame is to be dropped, don't update timestamps" This reverts commit c9c5cd8eef499ba08e08898bda71183e39d570ea. 2013-05-09 08:54:45 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: If a frame is to be dropped, don't update timestamps 2013-05-08 21:27:17 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Fix infinite loop in GSequence iteration code 2013-05-08 15:56:34 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Make sure to push pre-caps events before the caps event 2013-05-08 15:50:34 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: Make sure to push pre-caps events before the caps event https://bugzilla.gnome.org/show_bug.cgi?id=699894 2013-05-08 14:52:18 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Always store queue2 elements for later removal Otherwise we accumulate more and more queue2 elements, and let each of them start a thread doing nothing but waiting each time uridecodebin goes to PAUSED. https://bugzilla.gnome.org/show_bug.cgi?id=699794 2013-05-06 22:05:04 +0200 Mathieu Duponchelle * ext/ogg/gstoggmux.c: oggmux: The best pad can't be EOS The problem experienced is that the EOS was never emitted by oggmux during a rendering with GES. The proposed patch checks if the pad is EOS before deciding it's the "best pad". https://bugzilla.gnome.org/show_bug.cgi?id=699792 2012-12-16 16:53:30 +0100 Andoni Morales Alastruey * gst/typefind/gsttypefindfunctions.c: typefind: fix detection of HLS playlists with alternative renditions https://bugzilla.gnome.org/show_bug.cgi?id=699923 2013-05-07 14:42:05 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Use the GSequence more efficiently This makes it possible to take advantage of the O(log n) lookups of GSequence on the ~1000 element lists and only do iterations on <10 element lists. Previously the code iterated over ~1000 element lists multiple times. 2013-05-02 00:01:17 +0300 Sreerenj Balachandran * gst/playback/gstplaybin2.c: playbin: Use GSequence instead of GList to store the GstAVElement list. The GstAVElement list might be big. Use GSequence to optimize it. 2013-04-29 22:17:53 +0300 Sreerenj Balachandran * gst/playback/gstplaybin2.c: playbin: autoplug the audio/video decoders and sinks based on capsfeatures. Autoplug the decoder elements and sink elements based on the number of common capsfeatures if the ranks are the same. This will also helps to autoplug the h/w_decoder and h/w_renderer. https://bugzilla.gnome.org/show_bug.cgi?id=698712 2013-05-07 15:00:05 +0200 Julien Moutte * gst-libs/gst/riff/riff-media.c: riff: Manually calculate bitrate of ADPCM streams Some ADPCM encoding tools like Oxelon generate WAV files with wrong format header declaring an invalid bitrate. As wavparse uses the average bitrate to calculate timestamps and duration the decoder can be confused by receiving timestamps completely out of sync with the decoded samples. ADPCM is a CBR audio codec so we can calculate the average bitrate instead of trusting the format header. https://bugzilla.gnome.org/show_bug.cgi?id=636245 2013-05-07 10:16:48 +0200 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Don't call gst_buffer_fill() for empty Theora packets gst_buffer_fill() does not like a NULL source data pointer. 2013-05-07 10:13:18 +0200 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Fix error handling when reading or writing multipass cache data fails 2013-05-06 15:47:34 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Expose pads when they receive EOS before any buffers Stops decodebin from waiting forever to expose a pad if there is never data on it. https://bugzilla.gnome.org/show_bug.cgi?id=691072 2013-05-03 16:24:55 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: riff: wma can have more than 6 channels Some versions anyway. 2013-05-03 15:49:50 +0200 Sebastian Dröge * ext/vorbis/gstvorbisdeclib.c: vorbis: Fix compilation after function rename 2013-05-03 14:16:33 +0200 Andoni Morales Alastruey * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.c: * ext/vorbis/gstvorbisdeclib.h: vorbis: prefix get_copy_sample_func and fix duplicated symbols 2013-05-03 14:13:18 +0200 Andoni Morales Alastruey * ext/vorbis/gstvorbisdeclib.h: ivorbisdec: fix duplicated symbols with vorbisdec 2013-05-03 11:23:59 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: don't touch the GstMemory size mem.size is the content size and should not be touch. Save the mmap size instead. https://bugzilla.gnome.org/show_bug.cgi?id=699566 2013-05-03 11:12:04 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: fix memory initialization Without this the shared memory is broken https://bugzilla.gnome.org/show_bug.cgi?id=699565 2013-05-03 11:29:05 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: fix formating 2013-05-02 15:37:14 +0200 Michael Olbrich * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: handle mmap failure Otherwise gstreamer may segfault trying to access MAP_FAILED. https://bugzilla.gnome.org/show_bug.cgi?id=699470 2013-05-02 23:41:02 +0100 Tim-Philipp Müller * ext/pango/gsttextrender.c: textrender: actually fixate output caps when fixating output caps 2013-04-12 21:01:53 +0200 Andoni Morales Alastruey * ext/ogg/Makefile.am: ogg: fix duplicated symbols with schroedinger 2013-05-01 00:15:38 +0100 Thibault Saunier * gst/encoding/gststreamsplitter.c: streamsplitter: Keep srcpad alive while querying peer 2013-04-28 20:07:47 +0200 Thibault Saunier * gst/adder/gstadder.c: adder: Get collectpad stream lock when fowarding flush events Fixes #698410 2013-01-16 09:50:16 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: minor SSA typefinder clean-up Remove code that doesn't make sense as it is. If there's a 2-byte UTF-16 BOM or a 4-byte UTF-32 BOM, the following text won't be 8-bit ASCII. 2013-04-26 11:00:10 +0200 Rico Tzschichholz * docs/plugins/Makefile.am: docs: Drop missing gsttcp-enumtypes.h to fix build In addition to 7f6e1bdfdb2aad1694c24d3887f30e00f0c4c2e3 2013-04-26 10:10:41 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: use setter for the bandwidth 2013-04-25 21:10:04 +0200 Sebastian Rasmussen * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Store a copy of the bandwidth string Otherwise we will free a string later that does not belong to us. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=698888 2013-04-25 17:04:50 +0200 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Use the fallback GstMemory copy function instead of our own dup() on a dmabuf only gives a new handle, not a copy, thus doesn't do what copy() is supposed to do. 2013-04-25 16:23:14 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Try harder to push writable buffers downstream For this release the corresponding GstVideoCodecFrame before pushing the buffer. The buffer will now be writable unless the subclass still holds another reference to the buffer or the frame. 2013-04-25 16:13:10 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Try harder to push writable buffers downstream For this release the corresponding GstVideoCodecFrame before pushing the buffer. The buffer will now be writable unless the subclass still holds another reference to the buffer or the frame. 2013-04-25 09:20:29 +0200 Sebastian Dröge * gst/tcp/Makefile.am: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gsttcp-marshal.list: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpserversink.c: tcp: Use the generic marshaller instead of generating custom ones 2013-04-25 09:05:55 +0200 Sebastian Dröge * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: tcp: Add FIXME comment for 2.0 to rename "host" to "bind-address" for the server elements 2013-04-24 14:13:43 +0200 Patricia Muscalu * tests/check/libs/sdp.c: tests: add SDP modify test Fixes https://bugzilla.gnome.org/show_bug.cgi?id=698558 2013-04-24 14:12:41 +0200 Wim Taymans * tests/check/libs/sdp.c: tests: avoid sdp boxed test leak 2013-04-24 14:12:20 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: don't leak the temp buffer 2013-04-24 14:11:49 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: NULL terminate the time array 2013-04-24 13:57:23 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: docs: add new sdp methods to docs 2013-04-24 13:50:54 +0200 Wim Taymans * win32/common/libgstsdp.def: def: update with new sdp symbols 2013-04-23 15:23:05 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: sdp: add more functions to modify the sdp message Add functions to insert, replace and remove various sdp message fields and structures. See: https://bugzilla.gnome.org/show_bug.cgi?id=698558 2013-04-24 11:10:34 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Fix check for belonging to another stream https://bugzilla.gnome.org/show_bug.cgi?id=697820 2013-04-24 11:07:30 +0200 Sebastian Dröge * tests/check/elements/streamsynchronizer.c: streamsynchronizer: Create element with gst_element_factory_make() Otherwise plugin_init() is not called and initialization is missing. 2013-04-24 00:08:15 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: fix crash in new MSS typefinder Fixes icydemux test_first_buf_offset_when_merged_for_typefinding unit test segfaulting on a NULL pointer. 2013-03-06 16:44:45 +0100 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: also remove the bytes limit Remove the byte limit for adaptive http streaming. Because some fragments might be very big, we might need a lot of buffering. I also suspect another problem where data is actually missing and things go out of sync somehow. 2013-03-04 16:19:18 +0100 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: update buffer size in multiqueue When we disable buffering in the more upstream multiqueue elements, we need to also update the queue limits. In particular, the max_size_time should be set to 0 or else we might simply deadlock. 2013-02-06 08:41:19 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin2: only allow 'lower' multiqueues to emit buffering messages When we have a scenario of demuxers linked to demuxers, decodebin2 will create multiqueue at different levels of the pipeline. The problem is that only the lowest multiqueue's should do the buffering messaging, as they will handle with the raw streams data. When all multiqueues are doing buffering, the upper ones can handle large buffers that easily fill them, moving from 0% to 100% from buffer to buffer, causing too much buffering messages to be posted. This hangs the pipeline unnecessarily and might lead to deadlocks. 2013-02-06 11:09:52 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin2: do not handle the next-groups list as if it was a single item Decodebin2's chains store a next_groups list that was being handled as it could only have a single element. This is true for most of the chaining streams scenarios where streams change not very often. In more stressfull changing scenarios, like adaptive streams, those changes can happen very often, and in short time intervals. This could confuse decodebin2 as this list was always being used as a single element list. This patches makes it handle as a real list, using iteration instead of picking the first element as the correct one always. 2013-02-01 17:50:36 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin2: preserve next groups order 2013-01-09 18:39:49 -0300 Thiago Santos * gst/playback/gstdecodebin2.c: decodebin2: still report chain as drained when not 'handled' Even if the chain hasn't been 'handled' in this switching round, report it as drained so upper chains/groups know abou it. This makes switching happen on upper levels of the groups/chain trees 2013-04-11 09:47:51 -0300 Thiago Santos * gst/typefind/gsttypefindfunctions.c: typefind: add smoothstreaming manifest typefinding Checks if the received XML is a smoothstreaming manifest in both UTF8 and UTF16 formats. The check is made for a SmoothStreamingMedia top level element. Conflicts: gst/typefind/gsttypefindfunctions.c 2013-04-23 13:54:49 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Don't consider a stream added for an already running one as "new" Fixes enabling visualizations after disabling them after they were enabled already. 2013-04-23 13:18:45 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: If a stream belongs to an already running stream, don't wait This fixes enabling visualizations after the audio stream already started. https://bugzilla.gnome.org/show_bug.cgi?id=697820 2013-04-22 23:51:08 +0100 Tim-Philipp Müller * MAINTAINERS: * README: * README.static-linking: * common: Automatic update of common submodule From 3cb3d3c to 5edcd85 2013-04-21 19:02:42 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: Update disted orc backup files Generated with 0.4.17 now. 2013-04-21 17:24:55 +0100 Tim-Philipp Müller * gst/playback/gsturidecodebin.c: uridecodebin: don't report 'no uri handler found' if the URI was rejected by a source If a source element could be created for a URI, but all elements rejected the URI for some reason, propagate the error from the URI handler instead of reporting a 'no uri handler found for protocol xyz' error, which is confusing. Fixes error reporting with dvb:// URIs when the channel config file could not be found or not be parsed or the channel isn't listed. https://bugzilla.gnome.org/show_bug.cgi?id=678892 2013-04-19 17:59:56 -0300 Thibault Saunier * gst/adder/gstadder.c: * gst/adder/gstadder.h: * tests/check/elements/adder.c: adder: Do not try to wait for flush_stop after receiving a segment event + Add a simple test 2013-04-18 07:55:56 +0200 Stefan Sauer * gst/volume/gstvolume.c: volume: skip controlled processing if we have no timestamp 2013-04-18 12:07:37 +0300 Sreerenj Balachandran * gst/playback/gstplaybin2.c: playbin: use _plugin_feature_rank_compare API instead of duplicating the code. 2013-04-18 12:03:29 +0300 Sreerenj Balachandran * gst/playback/gstdecodebin2.c: decodebin: use _plugin_feature_rank_compare API instead of duplicating the code. 2013-04-18 09:58:09 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Simply setcaps function 2013-04-18 09:54:48 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Ignore caps events if the input caps did not change 2013-04-18 09:54:25 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Ignore caps events if the input caps did not change 2013-04-17 07:51:38 +0200 Stefan Sauer * ext/ogg/gstoggmux.c: oggmux: add more logging and fix the object param for some logging Use data->pad instead of pad for 'object'. Reduce indentation depth in a helper with an early return. 2013-04-17 10:35:22 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: Extend GstVideoGLTextureUploadMeta https://bugzilla.gnome.org/show_bug.cgi?id=697112 2013-04-17 09:23:20 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio-format.h: docs: add some more audio macros 2013-03-28 14:21:41 +0100 Philippe Normand * gst/playback/gsturidecodebin.c: uridecodebin: query bandwidth capability to source element Use a scheduling query to check if the source element has some bandwidth limitations. If this is the case on-disk buffering might be used. If the source element doesn't handle the scheduling query then fallback to checking the URI protocol against the hardcoded list of protocols known to handle buffering already. Fixes bug 693484. 2013-04-16 14:09:43 +0200 Sebastian Dröge * gst-libs/gst/app/Makefile.am: app: Don't use $(GST_PLUGIN_LIBTOOLFLAGS) for real libraries 2012-10-24 12:16:39 +0200 Sebastian Dröge * gst/rawparse/Makefile.am: gst: Add better support for static plugins 2012-10-24 12:16:39 +0200 Sebastian Dröge * ext/opus/Makefile.am: gst: Add better support for static plugins 2012-10-24 12:10:44 +0200 Sebastian Dröge * configure.ac: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/gio/Makefile.am: * gst/playback/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: gst: Add better support for static plugins 2013-04-15 15:37:17 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: dynamically allocate buffers Remove the static maximum buffer size and replace with dynamic allocation of as much bytes as needed. Also avoids doing large allocations on the stack. 2013-04-15 14:25:16 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: add Since markers 2013-04-12 09:35:34 +0200 Jose Antonio Santos Cadenas * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/sdp.c: * win32/common/libgstsdp.def: sdp: add boxed type for GstSDPMessage Also added some tests of this improvement. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=697808 2013-04-09 22:07:15 +0200 Matej Knopp * gst-libs/gst/riff/riff-media.c: riff: add format=WMV3 for WMV 3 caps https://bugzilla.gnome.org/show_bug.cgi?id=697665 2013-04-15 12:37:07 +0300 Sreerenj Balachandran * gst/playback/gstplaybin2.c: playbin: use ascending order for name based sorting of pluginfeatures. The compare_factories_func() should return negative value if the rank of both PluginFeatures are equal and the name of first PluginFeature comes before the second one (== ascending order). 2013-04-15 12:20:09 +0300 Sreerenj Balachandran * gst/playback/gstdecodebin2.c: decodebin: use ascending order for name based sorting of pluginfeatures. The _decode_bin_compare_factories_func() should return negative value if the rank of both PluginFeatures are equal and the name of first PluginFeature comes before the second one (== ascending order). 2013-04-15 10:13:14 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Also reset segbase 2013-04-10 16:38:14 +0200 Paul HENRYS * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Reset segdone when releasing audioringbuffer https://bugzilla.gnome.org/show_bug.cgi?id=697723 2013-04-10 20:45:37 +0100 Tom Greenwood * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepayload: Ignore caps events if the caps did not change https://bugzilla.gnome.org/show_bug.cgi?id=697672 2013-04-15 09:42:22 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Ignore caps events if the caps did not change 2013-04-10 19:07:00 +0100 Tom Greenwood * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Ignore caps events if the caps did not change https://bugzilla.gnome.org/show_bug.cgi?id=697672 2013-04-15 08:38:34 +0200 Sebastian Dröge * ext/ogg/dirac_parse.c: * ext/ogg/dirac_parse.h: * ext/ogg/gstoggstream.c: * ext/ogg/vorbis_parse.c: * ext/ogg/vorbis_parse.h: ogg: Prevent some symbol conflicts between the ogg plugin and schroedinger 2013-04-14 17:54:43 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 2736592 to 3cb3d3c 2013-04-14 17:26:13 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From aed87ae to 2736592 2013-04-12 11:49:27 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: playbin: fix jpeg passthrough to decoder sinks by marking image/* as video stream 2013-04-12 11:50:53 +0200 Jonas Holmberg * tests/check/elements/adder.c: tests: avoid assert in adder test if no audio sources work The array of factories should not contain a NULL element at the end since the number of arguments is determined via G_N_ELEMENTS and the NULL will be used as an argument to gst_element_factory_make() if the other sources in the list weren't usable. 2013-04-11 13:25:51 -0400 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideometa.c: videometa: gst_buffer_add_meta() can return NULL https://bugzilla.gnome.org/show_bug.cgi?id=697824 2013-04-09 20:59:51 +0200 Stefan Sauer * common: Automatic update of common submodule From 04c7a1e to aed87ae 2013-04-09 12:27:48 +0200 Alexander Schrab * sys/ximage/ximagepool.c: ximagesink: Fix coompiler error without HAVE_XSHM https://bugzilla.gnome.org/show_bug.cgi?id=697628 2013-04-09 14:04:47 +0200 Sebastian Dröge * tests/check/elements/videoscale.c: videoscale: Fix unit test after latest videoconvert changes 2013-04-09 13:59:34 +0200 Sebastian Dröge * tests/check/elements/videoconvert.c: videoconvert: Fix unit test after latest videoconvert changes 2013-04-08 09:09:33 +0200 Thomas Scheuermann * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: Don't use / as path if no path was provided RTSP does not mandate that a non-zero-length path is used and some devices (e.g. IQinVision IQeye 1080p) requires that a zero-length path is used. 2013-04-08 08:29:34 +0200 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: Allow passthrough for ANY caps features 2013-04-08 08:15:15 +0200 Sebastian Dröge * gst/videoconvert/gstvideoconvert.c: videoconvert: Allow passthrough for ANY caps features 2013-04-06 13:00:02 -0700 David Schleef * gst/videoscale/gstvideoscale.c: videoscale: set reasonable limits on properties Properties sharpen, sharpness, and envelope are only useful near their default values. Decrease ranges to avoid brokenness. https://bugzilla.gnome.org/show_bug.cgi?id=682171 2013-04-05 22:03:56 +0200 Stefan Sauer * gst/videoscale/gstvideoscale.c: videoscale: set min value to DBL_MIN to avoid a value of 0.0 that would crash 2013-04-04 16:32:45 +0200 Jose Antonio Santos Cadenas * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Set session as permanent (t=0 0) if there is no time information Fixes https://bugzilla.gnome.org/show_bug.cgi?id=697277 2012-09-11 19:41:31 -0400 Olivier Crête * ext/libvisual/gstaudiovisualizer.c: audiovisualizer: Don't try to sync controller values to invalid timestamp 2013-04-04 18:18:54 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: don't push on NOT_LINKED pads If our previous flow return was NOT_LINKED, don't try to push on the pads some more. If we get a RECONFIGURE event on the pad, try to push on it again. 2013-04-04 15:00:52 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: forward all sticky events to decodepad Forward all sticky events to the decodepad before exposing the pads. This makes sure all sticky events are on the exposed pad. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696915 2013-04-04 14:53:32 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin: debug sticky events on exposed pads 2013-04-04 14:37:15 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: small cleanup Take the event from the probe just once. 2013-04-04 12:32:24 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: make local_ip and remote_ip variables Separate local_ip and remote_ip into separate variables for clarity. 2013-04-04 12:16:47 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: calculate the local ip address in accept Calculate the local IP address in the accept call. We need to place this IP address in the GET reply in the X-Server-IP-Address header so that the client knows where to send the POST to in case of tunneled RTSP. Before this patch it used the client IP address, which would make the client send the POST request to itself and fail. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=697092 2013-03-30 17:39:39 +0100 Matej Knopp * gst-libs/gst/video/gstvideofilter.c: videofilter: add caps to pool config Does not cause problems but it fixes a warning in the log. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696916 2013-03-30 11:00:35 +0000 Nicolas Dufresne * ext/ogg/gstoggdemux.c: oggdemux: Allow EOS on timestamp equal to stop/start Changed the check to a current_time equal to the stop will produce EOS instead of the next one. Also, segment.start can't be NONE, so removing this check. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696899 2013-04-02 17:09:48 +0200 Jose Antonio Santos Cadenas * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Do not assign -1 to an unsigned variable, use 0 instead Fixes https://bugzilla.gnome.org/show_bug.cgi?id=697162 2013-04-02 17:05:36 +0200 Jose Antonio Santos Cadenas * gst-libs/gst/sdp/gstsdpmessage.c: sdp: If attribute value is emply do not print colon character See https://bugzilla.gnome.org/show_bug.cgi?id=697162 2013-04-02 17:03:38 +0200 Jose Antonio Santos Cadenas * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Do not add email line by default As specified in rfc4566 email line is optional See https://bugzilla.gnome.org/show_bug.cgi?id=697162 2013-04-02 23:40:13 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: docs: add since marker for new video API 2013-04-02 22:50:25 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for TrueHD audio 2013-03-28 23:02:11 +0100 David Svensson Fors * gst-libs/gst/rtsp/gstrtsprange.c: rtsprange: use gst_util_gdouble_to_guint64 in get_seconds https://bugzilla.gnome.org/show_bug.cgi?id=696818 2013-03-14 11:15:29 +1100 Matthew Waters * ext/libvisual/gstaudiovisualizer.c: visualizer: handle non-existant pool in the default allocation query gst_query_set_nth_allocation_pool() requires there to be a pool in the query already. This is not always the case when we get the query from upstream. Use gst_query_add_allocation_pool() instead in such case. https://bugzilla.gnome.org/show_bug.cgi?id=681719 2013-04-01 10:21:18 +0200 Sebastian Dröge * gst-libs/gst/video/video-format.h: video-format: Add GST_VIDEO_CAPS_MAKE_WITH_FEATURES() macro 2013-04-01 10:21:00 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideometa.h: videometa: Add caps feature #defines for video and GL texture upload meta 2013-03-31 18:54:46 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: mark keyframes Use the mapper to set the delta-unit flag. 2013-03-31 17:37:01 +0100 Tim-Philipp Müller * tests/check/elements/vorbistag.c: * tests/check/libs/video.c: tests: fix some printf format compiler warnings 2013-03-31 18:29:07 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: always send the new buffer to parse functions When we get a new buffer, always call the parse function, even if it is a 0 sized buffer. For theora we need to also decode 0 sized buffers. Ideally we would like to make theoradec be packetized but that fails currently because of oggdemux and because of the assumptions that the base class makes. 2013-03-31 18:28:09 +0200 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: handle empty adapter Should not be empty but might be when we actually pass and decode the 0 packets later. 2013-02-25 10:49:19 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: do not reset the encoder when we need a keyframe Instead, remember we need a keyframe, and we will force the encoder to emit one next time we submit a new frame. Since libtheora does not have an API to request a keyframe, we reset the max keyframe interval to 1 temporarily. This has the advantage that the rate control keeps its history, and that the encoder won't choose different quant tables or somesuch, thus requiring new streamheaders (although this is probably only a theoretical possibility). Should also be a bit faster than resetting the encoder. https://bugzilla.gnome.org/show_bug.cgi?id=663350 2013-03-31 13:46:30 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: don't make negative timestamp Clamp timestamp interpollation to 0 to avoid going negative. This should not happen, really, but until the interpolation is improved this seems better. 2013-03-31 12:55:33 +0200 Wim Taymans * gst/playback/gststreamsynchronizer.c: streamsynchronizer: update position for reverse When doing reverse playback the positino advances from timestamp_end to timestamp. 2013-03-28 15:20:19 +0100 Edward Hervey * gst/encoding/gstencodebin.c: * tests/check/elements/encodebin.c: encodebin: Add action signal to get pad for a given profile This allows getting a pad for a specific encoding profile, which can be useful when there are several stream profiles of the same type. Also update the encodebin unit tests so that we check that the returned pad has the right caps. https://bugzilla.gnome.org/show_bug.cgi?id=689845 2013-03-30 17:20:42 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: use one matrix function Use only one matrix function pointer, let the implementation cast the pixels to the right size. 2013-03-29 11:48:05 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: use one temp array for lines Use only one temporary array for pixels. 2013-03-30 19:13:47 +0100 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: forward stream-start immediately 2013-03-30 19:07:05 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: forward stream-start immediately 2013-03-30 17:17:04 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Remove GstdecodePads that are not going to be exposed This makes sure that they're unlnked and don't cause any errors or block the pipeline. 2013-03-30 12:15:38 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Ignore caps from audio/video sink factories if there are fixed sinks already 2013-03-30 12:08:06 +0100 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Some code cleanup 2013-03-30 12:00:35 +0100 Sebastian Dröge * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: docs: Add some documentation that was missing before 2013-03-30 11:25:22 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin: Handle caps queries from unlinked elements Pass them to all possible sinks and the current sinks to allow elements to chose a more optimal initial caps. 2013-03-29 18:27:03 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin: Add autoplug-query signal to handle queries for yet unconnected elements This allows playbin to answer the CAPS query with the possible sink caps for example, and allows decoders to chose more optimal caps. 2013-03-30 10:25:45 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: * win32/common/libgstvideo.def: decodebin: Don't add a children to a decode group twice This can happen if a demuxer does not provide fixed caps from the beginning but only sets them later. 2013-03-29 16:05:12 +0200 Sreerenj Balachandran * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Fix the documentation build warning. 2013-03-30 09:39:32 +0100 Josep Torra * sys/xvimage/xvimageallocator.c: xvimagesink: fix debug message printf format compiler warning 2013-03-29 17:14:09 +0100 Stefan Sauer * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: fix a comment typo from previous commit 2013-03-29 16:55:56 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: Add documentation for GstVideoGLTextureUploadMeta 2013-03-29 16:44:17 +0100 Stefan Sauer * gst/audiotestsrc/gstaudiotestsrc.c: audiotestssrc: truncate the seek pos to the sample and round the time Before it was done the other way around and that can trigger the assert that already is in place. This also makes more sense; when seeking to time x, we want then sample that is <= that pos. 2013-03-29 16:37:01 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: Implement copying of GstVideoGLTextureUploadMeta 2013-03-29 14:46:00 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: API: Add GstVideoGLTextureUploadMeta This allows elements to specify a function to upload a buffer content to a specific OpenGL texture ID. It could be used by the vaapi elements to provide a way for eglglessink or WebKit to upload a VA surface to an GL texture without the respective sinks knowing anything about VA. 2013-03-29 11:47:20 +0100 Stefan Sauer * tests/check/elements/adder.c: adder: cleanup and reenable adder live source test The test now passed a few rounds of nice -n19 make elements/adder.torture. 2013-03-25 16:46:29 +0100 Stefan Sauer * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: api doc fixes. 2013-03-28 18:16:09 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: respect the pack_lines when packing Packing is supposed to happen on the amount of lines specified in the format info. It's currently all set to 1 but that will change. 2013-03-28 18:13:10 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: be smarter when selecting a conversion Try to select the conversion that would result in the minimal amount of quality loss. Quality loss is calculated rather arbitrarily but it avoids doing something really stupid in most cases. 2013-03-27 19:37:08 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: small cleanup 2013-03-28 12:35:45 +0100 Stefan Sauer * gst/playback/gsturidecodebin.c: uridecodebin: remove commented code This is dead since ~6 years. 2013-03-27 22:24:03 +0000 Tim-Philipp Müller Merge SBC decoder and encoder from bluez https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-03-27 22:24:03 +0000 Tim-Philipp Müller Merge SBC decoder and encoder from bluez https://bugzilla.gnome.org/show_bug.cgi?id=690582 2007-08-23 19:12:23 +0000 Marcel Holtmann sbc: Add SBC encoder and decoder skeletons for GStreamer 2013-03-12 08:10:23 +0100 Stefan Sauer * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: simplify the caps Drop channel-mask as we only do mon/stereo and channel-mask is optional in these cases. 2013-03-25 13:41:13 +0300 Anton Belka * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/riff/riff-ids.h: riff: add "note" tag Add GST_RIFF_TAG_note for wavparse. https://bugzilla.gnome.org/show_bug.cgi?id=696549 https://bugzilla.gnome.org/show_bug.cgi?id=696550 2013-03-22 13:41:17 +0100 Paul HENRYS * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Fix ringbuffer handling when settings caps ringbuffer was released after setting values to its spec field in gst_audio_base_src_setcaps(). This led to failure in case gst_audio_base_src_setcaps() is called more than one time. https://bugzilla.gnome.org/show_bug.cgi?id=696540 2013-03-25 09:59:45 +0100 Wim Taymans * gst-libs/gst/video/video-frame.c: video: set interlaced flag correctly in frame We only look at the interlaced buffer flag in mixed mode, in other modes we always need to set the interlaced flag. 2013-03-24 20:44:58 +0000 Simon Berg * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: fix rounding errors that might cause segments to be one sample too short https://bugzilla.gnome.org/show_bug.cgi?id=676884 2013-03-24 20:41:44 +0000 Simon Berg * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: fix buffer size of last buffer The last buffer before EOS may be smaller than the maximum size. The current code doesn't adjust for this, it only sets the duration and offsets. https://bugzilla.gnome.org/show_bug.cgi?id=696411 2013-03-24 00:39:01 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: add small comment 2013-03-24 00:38:22 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: avoid double free Set variable to NULL after free so that we don't free twice. 2013-03-24 00:21:36 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: * tests/check/pipelines/simple-launch-lines.c: Revert "videoconvert: prevent bad interlaced conversions" This reverts commit adc9694ed70870549fc8f4a6257f3b132ea31733. No need to restrict the conversion, we can handle interlace correctly. We basically unpack each field, then convert each field to the target colorspace and pack and interleave each field to the target format. We also disable any fast path that can't deal with interlaced formats. 2013-03-08 14:49:31 -0800 David Schleef * gst/videoconvert/gstvideoconvert.c: * tests/check/pipelines/simple-launch-lines.c: videoconvert: prevent bad interlaced conversions Don't allow conversion that changes vertical subsampling if video is interlaced. 2013-02-14 01:35:45 +0100 Arnaud Vrac * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: subparse: fix off by one offset calculation Do not use the buffer start offset when it is invalid, otherwise a discontinuity is detected on the next buffer, and the subtitle parser reset and some subtitle lines are not shown. Also remove unused next_offset field. https://bugzilla.gnome.org/show_bug.cgi?id=693981 2013-03-22 10:47:47 +0000 Tim-Philipp Müller * configure.ac: Require Orc >= 0.4.17 Orc 0.4.17 fixes a bunch crashes on i386 and RPi when orc functions can't be compiled and the fallback function is supposed to be used. Also fixes some issues on PowerPC. https://bugzilla.gnome.org/show_bug.cgi?id=684399 https://bugzilla.gnome.org/show_bug.cgi?id=693862 2013-03-22 09:35:21 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: fix y4m caps We need to specify the y4mversion field now. https://bugzilla.gnome.org/show_bug.cgi?id=696282 2013-03-21 15:37:31 +0100 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Return ANY caps for the GET_CAPS query subtitleoverlay handles any caps, not just the ones for which a subtitle parser/renderer exist. It will just ignore any unsupported streams instead of causing an error. https://bugzilla.gnome.org/show_bug.cgi?id=688476 2013-03-21 13:33:44 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Make sure to return all allowed caps in the GET_CAPS query Add all the caps that we can convert to to the filter caps, otherwise downstream might just return EMPTY caps because it doesn't handle the filter caps but we could still convert to these caps, causing us to return EMPTY caps although conversion would be possible. https://bugzilla.gnome.org/show_bug.cgi?id=688803 2013-03-21 13:29:06 +0100 Sebastian Dröge * sys/ximage/ximagesink.c: ximagesink: Don't access structures of EMPTY caps If the intersection between our caps and the filter caps is empty, just immediately return EMPTY caps instead of trying to access the (non-existant) structures. 2013-03-21 11:42:43 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Use gst_caps_is_subset() for handling the ACCEPT_CAPS query 2013-03-21 11:14:27 +0100 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: Let the add-borders property default to TRUE It's undesirable most of the time that the display aspect ratio is changed. 2013-03-20 19:34:06 +0100 Jan Schole * gst/videoscale/gstvideoscale.c: videoscale: Correct DAR and border calculations changed: gst_video_scale_set_info in gst/videoscale/gstvideoscale.c DAR on sink side now calculated with PAR on sink side ratio of output width/height now calculated with inverse PAR additional condition that borders are 0:0 for passthrough mode https://bugzilla.gnome.org/show_bug.cgi?id=696019 2013-03-15 10:07:55 +0100 Wim Taymans * tests/examples/playback/playback-test.c: playback-test: wait for buffering after seek Wait for buffering to finish before setting the element to the playing state after a seek. 2013-03-14 10:58:11 +0100 Marc Leeman * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: avoid division by 0 when outputting debug info https://bugzilla.gnome.org/show_bug.cgi?id=695832 2013-03-14 15:46:59 +0100 Wim Taymans * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: * sys/xvimage/xvimagesink.c: xvimagesink: configure colorimetry Use the XV_ITURBT_709 attribute to configure the 601 or 709 matrix depending on the color matrix of the input video frame. 2013-03-14 15:44:53 +0100 Wim Taymans * sys/xvimage/xvcontext.c: xvcontext: protect X call with lock 2013-03-13 11:13:58 +0100 Wim Taymans * sys/xvimage/Makefile.am: * sys/xvimage/xvcontext.c: * sys/xvimage/xvcontext.h: * sys/xvimage/xvimage.c: * sys/xvimage/xvimageallocator.c: * sys/xvimage/xvimageallocator.h: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimagesink: use xvcontext for allocation Make a new refcounted xvcontext object that handles the X connection. Use the xvcontext to allocate images and windows. Move some code around so that all X calls are made from the xvcontext object. Make a GstXvImageAllocator object that allocates images from the xvcontext. We can implement a copy function now for these memory objects now. Make the bufferpool use the xvimageallocator object for its images. 2013-03-13 01:00:45 +0000 Tim-Philipp Müller * tests/check/elements/appsrc.c: tests: fix appsrc unit test spam spam 1 spam 2 spam 3 spam 4 spam 5 2013-03-11 21:55:28 -0600 Greg Rutz * ext/libvisual/gstaudiovisualizer.c: libvisual: fix improper video frame clear operation The current code is memsetting the GstVideoFrame.data address to 0s (which causes a segfault). This member is actually an array of data buffers (one for each plane). This fix iterates over each data plane to clear them all. https://bugzilla.gnome.org/show_bug.cgi?id=695655 2013-03-12 10:32:44 +0100 Nicola Murino * gst-libs/gst/app/gstappsrc.c: * tests/check/elements/appsrc.c: appsrc: fix deadlock setting pipeline in NULL state with block=true 2013-03-11 22:33:04 +0100 Emanuele Aina * gst-libs/gst/rtsp/Makefile.am: build: Link libgstrtsp-1.0.so to libm for pow() https://bugzilla.gnome.org/show_bug.cgi?id=695658 2013-03-11 23:46:19 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/app/gstappsink.c: appsink: update the emit-signal description Update the emit-signal description according to its current signals. https://bugzilla.gnome.org/show_bug.cgi?id=695660 2013-03-11 22:46:45 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: add a missing break 2013-03-10 09:07:17 +0100 Dirk Van Haerenborgh * gst-libs/gst/riff/riff-media.c: riff: never create caps with negative height https://bugzilla.gnome.org/show_bug.cgi?id=695540 2013-03-11 10:49:58 +0100 Wim Taymans * win32/common/libgstrtsp.def: defs: add new methods 2013-02-22 13:32:21 -0500 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: * tests/check/libs/rtsp.c: rtsprange: Add function to convert a range between formats Also add unit tests. 2013-02-22 13:26:03 -0500 Olivier Crête * gst-libs/gst/rtsp/gstrtsprange.c: * tests/check/libs/rtsp.c: rtsprange: Make _to_string() be more in line with RFC 2326 Fix various nits to make it more in line with the RFC, also add unit tests. 2013-02-22 13:20:21 -0500 Olivier Crête * gst-libs/gst/rtsp/gstrtsprange.c: rtsprange: Avoid going through fractions for large numbers If the number of seconds exceeds 2^31, then it will be truncated if the conversion is done using fractions, so multiply it directly. 2013-02-22 13:18:10 -0500 Olivier Crête * gst-libs/gst/rtsp/gstrtsprange.c: rtsprange: Fix conversion from UTC to GstClockTime Do the difference in the right direction. 2013-02-18 19:49:07 -0500 Olivier Crête * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: Add API to disable session ID caching in the connection This is necessary to allow having more than one session in the same connection. API: gst_rtsp_connection_set_remember_session_id() API: gst_rtsp_connection_get_remember_session_id() 2013-03-10 18:05:28 +0100 Josep Torra * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Use correct print format specifier to fix a compiler warning 2013-03-07 10:49:30 +0000 Tim-Philipp Müller * tests/check/libs/struct_i386.h: tests: update libs ABI check GstRTSPTimeRange structure size on i386 https://bugzilla.gnome.org/show_bug.cgi?id=695276 2013-03-07 09:27:45 +0100 Stefan Sauer * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: make colors controlable Also trim since markers. 2013-03-07 00:00:14 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 2de221c to 04c7a1e 2013-03-05 22:29:24 +0100 Stefan Sauer * ext/ogg/gstoggmux.c: oggmux: don't keep a static string beyond the ref of the owning object Also move down the ref for the caps a bit, so tha we don't leak it in the branch that calls continue. 2013-03-05 16:41:52 +0100 Wim Taymans * sys/ximage/ximagepool.c: ximagesink: don't share memory 2013-03-05 16:34:35 +0100 Wim Taymans * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: xvimagesink: mark as NO_SHARE We don't want to share the memory between buffers because that could cause the memory of the bufferpool buffers to be copied and replaced with other memory. This is a hopefully a temporary fix until we can figure out how to share properly. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=695203 2013-03-01 19:14:18 +0100 Stefan Sauer * ext/ogg/gstoggmux.c: oggmux: don't crash on caps being NULL Also avoid unused variables if debugging is disabled. 2013-03-03 17:44:11 +0000 Tim-Philipp Müller * gst/playback/gsturidecodebin.c: uridecodebin: minor GValue handling optimisation 2013-03-03 17:43:47 +0000 Tim-Philipp Müller * gst-libs/gst/video/navigation.c: video: navigation: minor GValue optimisation 2013-03-03 17:42:50 +0000 Tim-Philipp Müller * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: vorbis: small GValue optimisation No need to copy buffers we put into the streamheader any more now that we don't put caps on buffers any more, so there's no danger of a refcount cycle. 2013-03-03 17:41:34 +0000 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: theora: small GValue optimisations No need to copy buffers we put into the streamheader any more now that we don't put caps on buffers any more, so there's no danger of a refcount cycle. 2013-03-03 17:39:13 +0000 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: ogg: small GValue optimisation No need to copy buffers we put into the streamheader any more now that we don't put caps on buffers any more, so there's no danger of a refcount cycle. 2013-03-03 17:26:03 +0000 Tim-Philipp Müller * tests/check/elements/adder.c: tests: fix leaks in adder unit test 2013-03-03 17:11:25 +0000 Tim-Philipp Müller * tests/check/elements/videorate.c: tests: fix leaks in videorate unit test 2013-03-03 17:06:38 +0000 Tim-Philipp Müller * tests/check/elements/audioresample.c: tests: fix leak in audioresample unit test 2013-03-03 16:51:10 +0000 Tim-Philipp Müller * tests/check/pipelines/vorbisdec.c: tests: fix leak in vorbisdec unit test 2013-03-03 11:19:42 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-read.c: riff: Use correct print format specifiers to fix compiler warnings 2013-03-02 19:29:40 +0100 Sebastian Dröge * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_image.c: * gst/videoscale/vs_lanczos.c: * gst/videoscale/vs_scanline.c: videoscale: Fix compiler errors caused by not including config.h _stdint.h requires config.h to be included to properly use the correct code to get uint8_t and friends. 2013-03-02 19:13:39 +0100 Sebastian Dröge * gst-libs/gst/fft/gstfft.c: * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts32.c: * gst-libs/gst/fft/kiss_fft_f32.c: * gst-libs/gst/fft/kiss_fft_f64.c: * gst-libs/gst/fft/kiss_fft_s16.c: * gst-libs/gst/fft/kiss_fft_s32.c: * gst-libs/gst/fft/kiss_fftr_f32.c: * gst-libs/gst/fft/kiss_fftr_f64.c: * gst-libs/gst/fft/kiss_fftr_s16.c: * gst-libs/gst/fft/kiss_fftr_s32.c: fft: Fix compiler errors caused by not including config.h _stdint.h requires config.h to be included to properly use the correct code to get uint8_t and friends. 2013-03-01 10:04:53 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update spec file for latest changes 2011-04-11 15:10:01 +0100 Tim-Philipp Müller * ext/ogg/Makefile.am: * ext/ogg/gstoggstream.c: oggdemux: add audio-codec and video-codec tags for streams in more cases 2013-02-27 22:05:36 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: don't discard the flush-start events This reverts one more part of a86ca535c88a604daa431b0bc1cf4cd8fbb2d100 and hopefully fixes #694553 for good. 2013-02-27 21:57:15 +0100 Stefan Sauer * tests/check/elements/adder.c: tests: add a loop test for adder 2013-02-27 21:38:27 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: fix looping Use gst_segment_do_seek() and clip position before updating the segment. 2013-02-27 21:36:26 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: remove defines we don#t use anymore 2013-02-22 21:02:19 +0900 Akihiro Tsukada * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioringbuffer.c: audio: add support for AAC pass-through https://bugzilla.gnome.org/show_bug.cgi?id=694443 2013-02-26 16:02:41 +0100 Wim Taymans * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: ximagesink: use memory to store XImage info Store the extra XImage information in the GstMemory instead of metadata. 2013-02-25 18:50:33 +0100 Stefan Sauer * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: mark pending flush-stop on segment event Also add more debug logging. Fixes #694553. 2013-02-25 18:49:56 +0100 Stefan Sauer * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: log a few more details (e.g. obj-name) 2013-02-24 09:45:19 +0100 Sebastian Dröge * sys/xvimage/xvimagepool.c: xvimagepool: gst_memory_init() does not take ownership of the allocator 2013-02-23 09:52:57 +0100 Sebastian Dröge * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: xvimagesink: Implement XvImage memory as a GstMemory, not as a GstMeta 2013-02-22 09:07:06 +0100 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: The dmabuf allocator has a custom alloc function, mark it as such 2013-02-20 18:36:20 +0200 Sreerenj Balachandran * gst-libs/gst/pbutils/codec-utils.c: pbutils: recognise more H.264 profiles/levels Add profile/level extraction for Multiview High profile and Stereo High profile. https://bugzilla.gnome.org/show_bug.cgi?id=694346 2013-02-21 11:38:45 +0200 Sreerenj Balachandran * gst/typefind/gsttypefindfunctions.c: typefindfunctions: recognize SVC and MVC nal units in h264 streams Ensure the detection of svc and mvc as a part of h264 stream. Once the typefinder detect a subset_sequence_parameter_set(ssps), then each nal unit with type 14 or 20 should be detected as a part of h264 stream thereafter. https://bugzilla.gnome.org/show_bug.cgi?id=694346 2013-02-21 08:15:45 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: ensure sending a flush-stop after flush-start Previously adder was only sending the flush-stop, when it saw the flushing seek. If one sends a flushing see direcly to an element upstream of adder, it would fail to unflush the downstream pads. 2013-02-19 17:49:08 +0100 Arnaud Vrac * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: fix ayuv/argb conversion Helps when using dvbsuboverlay in connection with vaapisink or some other video sink that wants ARGB pixels (dvbsuboverlay attaches pixels in AYUV format, and we then convert as needed). Alignment should not be a problem here. 2013-02-19 12:53:47 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: use new GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS define https://bugzilla.gnome.org/show_bug.cgi?id=665751 2013-02-19 12:46:14 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: video: add define for video formats supported by the overlay blending code For use in template caps by overlay elements that use video_overlay_composition_blend(). API: GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS https://bugzilla.gnome.org/show_bug.cgi?id=665751 2013-02-19 12:55:34 +0100 Sebastian Dröge * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: pkg-config: Fix gstreamer-plugins-base pkg-config files to include all libraries 2013-02-19 11:52:22 +0100 Benjamin Gaignard * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Include config.h 2013-02-19 10:21:40 +0000 Tim-Philipp Müller * gst-libs/gst/allocators/gstdmabuf.c: allocators: add guard and minor clean-ups 2013-02-19 09:40:31 +0000 Tim-Philipp Müller * gst-libs/gst/allocators/gstdmabuf.c: allocators: add some since markers and misc other doc clean-ups 2013-02-19 09:35:10 +0000 Tim-Philipp Müller * gst-libs/gst/allocators/gstdmabuf.h: allocators: header clean-up 2013-02-19 09:32:08 +0000 Tim-Philipp Müller * configure.ac: configure: use AC_CHECK_FUNC to check for mmap 2013-02-19 10:05:17 +0100 Sebastian Dröge * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/allocators/gstdmabuf.c: allocators: Integrate into the documentation 2013-02-19 09:40:42 +0100 Sebastian Dröge * win32/common/libgstallocators.def: allocators: Add .def file with all exports 2013-02-19 09:39:24 +0100 Sebastian Dröge * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/allocators.h: allocators: Add single-include header 2013-02-19 09:35:51 +0100 Sebastian Dröge * gst-libs/gst/allocators/gstdmabuf.c: dmabuf: Improve documentation and annotations a bit 2013-02-18 15:18:38 +0100 Benjamin Gaignard * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/gstdmabuf.c: * gst-libs/gst/allocators/gstdmabuf.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-allocators.pc.in: allocators: Add dmabuf-based GstMemory and GstAllocator Create new GstMemory and GstAllocator base on dmabuf. Memory is not allocated/freed by userland but mapped/unmmaped from a dmabuf file descriptor when requested. This allocator is included in a new lib called libgstallocators https://bugzilla.gnome.org/show_bug.cgi?id=693826 2013-02-16 23:55:57 +0000 Tim-Philipp Müller * tests/check/elements/encodebin.c: tests: fix encodebin unit test on 32-bit systems Fixes critical warning on x86: g_object_set_valist: object class `GstOggMux' has no property named `testingoggmux' 2013-02-16 12:09:53 +0000 Tim-Philipp Müller * gst-libs/gst/audio/audio-info.h: audio: fix GST_AUDIO_INFO_ENDIANNESS macro 2013-02-14 15:59:51 +0000 Vincent Penquerc'h * gst/encoding/gstencodebin.c: encodebin: activate ghost pad after creating it This ensures the ghost pad will not stay in flushing mode when it receives a flush stop event, and generally behave badly. This fixes at least one case of a dynamic decodebin2 + encodebin pipeline finding a source that has not prerolled when it should have been (due to the ghostpad staying in flushing mode). 2013-02-14 00:54:34 +0100 Matej Knopp * gst/playback/gstdecodebin2.c: decodebin: don't block on caps 2013-02-14 11:25:37 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Remove left-over line from last commit 2013-02-14 11:17:31 +0100 Matej Knopp * gst/playback/gstdecodebin2.c: decodebin: Check if value is set before unsetting it https://bugzilla.gnome.org/show_bug.cgi?id=693401 2013-02-13 23:28:01 +0100 Matej Knopp * gst-libs/gst/riff/riff-media.c: riffmedia: add systemstream to all mpeg video caps 2013-02-14 00:29:01 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gstvorbistag.c: vorbistag: add mapping for TOTALTRACKS and TOTALDISCS tags Found TOTALTRACKS in a FLAC file instead of TRACKTOTAL, we should at least read this if present. http://www.hydrogenaudio.org/forums/index.php?showtopic=91496&st=0&p=773857&#entry773857 2013-02-13 21:00:28 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: add parsed=true to mp3 and mpeg2 video ES caps Because we can, and that's also what we do for other formats. 2013-02-13 21:08:48 +0100 Stefan Sauer * gst/adder/gstadder.c: * tests/check/elements/adder.c: adder: use the collect_pads_query func We were setting the query-func on the sink-pad, which got overwritten when adding the new pad to collect pads. Instead register our query-func with the collect pads object. This fixes filter caps. Add a test for it. 2013-02-13 21:07:55 +0100 Stefan Sauer * docs/design/part-mediatype-audio-raw.txt: mediatype-audio: write out 24 in 32bit formats 2013-02-13 11:25:02 +0100 Sebastian Dröge * tests/check/elements/decodebin.c: decodebin: Fix MP3 parser unit test The MP3 parser required fields on its caps that it didn't need and never got from (e.g.) typefind. 2013-02-12 17:22:23 +0000 Vincent Penquerc'h * gst/encoding/gstencodebin.c: encodebin: sync muxer state with parent bin Other elements were synced, but not the muxer. 2013-01-02 12:15:25 +0100 Thijs Vermeir * gst-libs/gst/video/gstvideodecoder.c: videodecoder: allow parse function to not use all data on adapter 2013-02-08 08:46:25 +0100 Alexander Schrab * gst/playback/gstdecodebin2.c: decodebin: Push caps event immediately to ghost pad to avoid exposing pads without caps 2013-02-08 15:31:28 -0800 David Schleef * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't blindly assign DTS to PTS DTS and PTS usually have a non-zero offset between them in MPEG-TS, so assigning DTS to PTS is almost always wrong. The other, newer timestamp recovery code does it correctly if we leave it as invalid. 2013-02-11 11:54:46 -0800 David Schleef * gst-libs/gst/video/gstvideodecoder.c: videodecoder: warn if frame list gets long Decoders that get unparsed input are internally leaking nearly every incoming buffer. This checks that case. 2013-02-11 11:06:32 +0100 Wim Taymans * ext/opus/gstopusdec.c: opusdec: clear the state of the decoder Set the channels and rate back to their default values in _stop because they are used to renegotiate when needed. See https://bugzilla.gnome.org/show_bug.cgi?id=692950 2013-02-09 16:50:05 +0000 Tim-Philipp Müller * tests/check/elements/streamsynchronizer.c: tests: don't use deprecated thread API in streamsynchronizer test 2013-02-07 10:49:33 +0100 Marc Leeman * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin: g_mutex_new -> g_mutex_init Don't use deprecated GLib API. https://bugzilla.gnome.org/show_bug.cgi?id=693302 2013-02-08 00:05:24 +1100 Jan Schmidt * ext/pango/gstbasetextoverlay.c: pango: 3rd time's the charm. Fix attribute list handling. Really really fix attribute list handling by taking a copy of the original attributes that pango_attr_list_filter can mutate, but keep the original around intact to restore later. 2013-02-07 23:45:26 +1100 Jan Schmidt * ext/pango/gstbasetextoverlay.c: pango: Don't modify the original attributes list. Take a copy of the original attributes list instead of just a ref, since pango_attr_list_filter can remove elements from it. 2013-02-07 23:06:16 +1100 Jan Schmidt * ext/pango/gstbasetextoverlay.c: pango: Remove extra pango_attr_list_copy() from basetextoverlay Fixes a per-buffer memory leak of the attribute list. 2013-02-06 12:36:19 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst/videoconvert/videoconvert.c: * gst/videotestsrc/gstvideotestsrc.c: video: fix return type of _get_palette() and add since markers to docs 'const gpointer' is not the same as 'gconstpointer', see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35928. 2013-02-06 10:07:47 +0100 Wim Taymans * gst-libs/gst/app/gstappsrc.c: appsrc: negotiate before popping buffer First negotiate and then try to pop a buffer from the queue. This is just to improve the debug log. 2013-02-06 10:00:27 +0100 Wim Taymans * gst-libs/gst/app/gstappsrc.c: appsrc: always take mutex before object lock The locking order is to first take the appsrc mutex and then the object lock. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693224 2013-02-05 11:20:20 +0100 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: use video library palette Use the palette provided and used by the video library instead of making our own copy. 2013-02-05 10:46:50 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: scale each field in interlace mode When we are dealing with interlaced content, scale each field intependently so that we don't destroy the interlacing. See https://bugzilla.gnome.org/show_bug.cgi?id=588535 2013-02-04 16:21:20 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: interlace support to some fastpath functions Add interlace support for some fastpath functions. 2013-02-04 15:40:02 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: make fast path interlaced aware Make sure that we also handle interlacing when choosing the fast path. See https://bugzilla.gnome.org/show_bug.cgi?id=588535 2013-02-04 15:19:35 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: pass frame interlaced flag to pack/unpack If the frame is interlaced, pass the interlaced flag to the pack/unpack functions to make it unpack correctly. 2013-02-04 15:01:10 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix interlaced 4:2:0 and 4:1:0 pack/unpack For interlaced vertically subsampled images we need to combine alternating chroma lines with alternating luma lines. That is line 0 and 2 are combined with the first line of chroma samples and line 1 and 3 with the second line of chroma samples. See also: https://bugzilla.gnome.org/show_bug.cgi?id=588535 2013-02-01 16:47:32 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: use the palette helper functions Get the palette from the video library instead of making our own. 2013-02-01 16:46:42 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * win32/common/libgstvideo.def: video-format: add method to get palette Make a new method to get the default palette for paletted formats. 2013-02-01 11:51:12 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: make a constant of scale factor 2013-02-01 11:42:58 +0100 Wim Taymans * gst-libs/gst/video/video-format.h: video-format: add interlace flag Add an interlaced flag that can be used to control the unpack/pack functions. 2013-01-31 12:57:11 +0100 Wim Taymans * gst-libs/gst/riff/riff-media.c: riff: add more gray8 variants 2013-01-31 11:41:06 +0100 Dirk Van Haerenborgh * gst-libs/gst/riff/riff-media.c: riff: add support for raw monochrome 8-bit video Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692930 2013-01-29 10:18:06 +0100 Wim Taymans * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: visualizer: improve allocation Based on patch by Matthew Waters Add private data Add decide_allocation vmethod Refactor bufferpool negotiation Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681719 2013-01-28 20:41:44 +0100 Stefan Sauer * common: Automatic update of common submodule From a942293 to 2de221c 2013-01-28 14:12:56 +0000 Tim-Philipp Müller * ext/opus/gstopusenc.c: opusenc: fix crash when setting "cbr" property when encoder is not running yet https://bugzilla.gnome.org/show_bug.cgi?id=692698 2013-01-27 09:45:59 +0530 B.Prathibha * tests/check/pipelines/basetime.c: * tests/examples/dynamic/addstream.c: * tests/examples/dynamic/codec-select.c: * tests/icles/output-selector-test.c: * tests/icles/position-formats.c: * tests/icles/stress-videooverlay.c: tests: use g_timeout_add_seconds wherever possible. https://bugzilla.gnome.org/show_bug.cgi?id=692613 2013-01-24 20:15:09 -0500 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: docs: Put GST_*_INIT into the -sections.txt file too 2013-01-24 20:12:41 -0500 Olivier Crête * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: doc: Sort new things into ..-libs-sections.txt 2012-11-15 03:31:47 -0500 yanghuolin * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: alsasink: don't use 100% CPU The root cause is that alsa-lib is not thread safe for the same handle. There are two threads in the gstreamer accessing alsa-lib not serilized. The race condition happens when one thread holds the old framebuffer app_ptr position in the kernel, another thread advances the framebuffer app_ptr. when the former thread is scheduled to run again, it overwrites the app_ptr to old value by copying from kernel.Thus,the app_ptr in the upper alsa-lib(pcm_rate) become one period size more advanced than the lower alsa-lib(pcm_hw & kernel). gstreamer uses noblock and poll method to communicate with the alsa-lib. The app_ptr unsync situation as described above makes the poll return immediately because it concludes there is enough space for the ring-buffer via the low-level alsa-lib. The write function returns immediately because it concludes there is not enough space for the ring-buffer from the upper-level alsa-lib. Then the loop of poll and write runs again and again until another period size is available for ring-buffer.This leads to the cpu 100 problem. delay_lock is used to avoid the race condition. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=690937 2013-01-19 13:03:03 +0000 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: decodebin: try harder to always expose pads in the same order Use stream-id as sort criterion in addition to the media type. https://bugzilla.gnome.org/show_bug.cgi?id=634407 2013-01-17 09:50:16 +0000 Tim-Philipp Müller * tests/check/libs/libsabi.c: tests: disable ABI checks for architectures with outdated structure size files 2013-01-16 10:16:27 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gst-libs: use GST_*_1_0 environment variables everywhere The _1_0 suffixed environment variables override the non-suffixed ones, so if we're in an environment that sets the _1_0 suffixed ones, such as jhbuild, we need to set those to make sure ours actually always get used. 2013-01-16 10:16:14 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for new translatable string 2013-01-15 17:33:38 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for SBC audio caps 2013-01-15 17:27:31 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: add typefind functions for SBC audio https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-01-15 15:04:12 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From a72faea to a942293 2013-01-15 12:39:20 +0000 Martin Pitt * tests/check/Makefile.am: tests: use _1_0 variants for the various registry variables These override the variants without version suffix. Makes 'make check' work properly in environments that set the suffixed variant for 1.0, such as jhbuild. 2013-01-15 13:06:28 +0100 Martin Pitt * tests/check/Makefile.am: Set $GST_PLUGIN_PATH_1_0 for tests as well jhbuild already sets $GST_PLUGIN_PATH_1_0 which overrides $GST_PLUGIN_PATH. Set both for the tests to see the locally built elements. Fixes 'make check' in jhbuild. 2012-12-24 18:25:10 +0000 Pete Beardmore * gst-libs/gst/riff/riff-media.c: riff: add waveformatextension generic support Fixes https://bugzilla.gnome.org/show_bug.cgi?id=690591 2013-01-14 10:34:04 +0000 Tim-Philipp Müller * gst-libs/gst/tag/tag.h: docs: fix 0.10-ism in GstTagImageType docs The image type is not in the info structure in the sample, not in the caps. https://bugzilla.gnome.org/show_bug.cgi?id=691687 2013-01-09 23:15:06 +0100 Stefan Sauer * gst/volume/gstvolume.c: * tests/check/elements/volume.c: volume: a return value of FALSE from the controller is not fatal A return value of FALSE here indicates that we don't have control-values. In 0.10 we were returning the default value of the property. Now we don't fill an array with defaults in the ControlBinding, but leave it up to the element to handle this case. 2013-01-07 18:01:31 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix incorrect testing of invalid granpos values Positive granulepos is valid, -1 granulepos is unset, and all other negative granulepos are invalid. Reported by Tim-Philipp Müller 2012-04-30 14:31:16 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Remove done ToDo https://bugzilla.gnome.org/show_bug.cgi?id=675761 2012-05-02 13:50:45 -0400 Nicolas Dufresne * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Documentation fix https://bugzilla.gnome.org/show_bug.cgi?id=675761 2012-12-29 14:29:53 +0000 Tim-Philipp Müller * gst-libs/gst/audio/audio-info.c: audio: don't use uninitialized variable in debug log https://bugzilla.gnome.org/show_bug.cgi?id=667317 2012-12-23 15:51:51 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: add special-casing for asf/wmv/wma file extensions https://bugzilla.gnome.org/show_bug.cgi?id=636753 2012-12-23 15:32:02 +0000 Tim-Philipp Müller * win32/common/libgstrtsp.def: win32: update .def file for new rtsp API 2012-12-23 15:26:59 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * tests/check/libs/profile.c: * win32/common/libgstpbutils.def: encoding-profile: add gst_encoding_profile_get_file_extension() API: gst_encoding_profile_get_file_extension() https://bugzilla.gnome.org/show_bug.cgi?id=636753 2012-12-22 21:19:51 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: minor clean-up Remove some macros that aren't needed any more. 2012-12-22 21:18:11 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: support shaded background for A420 format https://bugzilla.gnome.org/show_bug.cgi?id=687817 2012-12-22 21:04:11 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-info.c: video: fix A420 size calculation 2012-12-21 16:38:36 +0100 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: use NO_RESYNC flag to avoid the state change function from messing with the state of the elements that we add. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=690420 2012-12-21 14:03:32 +0100 Wim Taymans * gst-libs/gst/riff/riff-media.c: riff: add channel masks for all formats Add the channel masks for all the extensible formats Pass the number of channels instead of reading them from caps. 2012-12-21 02:27:12 +0000 Pete Beardmore * gst-libs/gst/riff/riff-media.c: riff: add waveformatextension ac3 support fixes #690591 2012-12-20 16:42:42 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioclock.c: audioclock: mark as using some other clock We need to mark our clock as using some other clock source. Alsa source uses the clock type to decide if it can use alsa driver timestamps or not. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=690465 2012-12-20 16:41:48 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: init variable We need to initialize this variable because we can't be sure that the subclass will set it. 2012-12-18 16:56:28 +0100 Thijs Vermeir * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: use appropriate printf format for gsize 2012-12-18 15:34:42 +0100 Thijs Vermeir * ext/vorbis/gstvorbisdec.c: vorbis: fix unused variable 2012-12-18 15:31:52 +0100 Thijs Vermeir * gst-libs/gst/video/gstvideometa.c: video: use appropriate printf format for gsize 2012-12-18 15:27:48 +0100 Thijs Vermeir * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: fix compiler warning comparison is always true due to limited range of data type 2012-12-17 20:32:52 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: alsasrc: return negative value on read error Otherwise baseaudiosrc won't go into the error code path. https://bugzilla.gnome.org/show_bug.cgi?id=690197 2012-12-17 20:28:12 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: bail out if subclass posts an error Use new ringbuffer ERROR state to make all the various threads bail out correctly when the subclass posts an error. It's a bit iffy to communicate this properly between the different bits of code. https://bugzilla.gnome.org/show_bug.cgi?id=690197 2012-12-17 20:26:33 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioringbuffer.h: audioringbuffer: add GST_AUDIO_RING_BUFFER_STATE_ERROR state API: GST_AUDIO_RING_BUFFER_STATE_ERROR https://bugzilla.gnome.org/show_bug.cgi?id=690197 2012-12-15 14:43:40 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst/encoding/gstencodebin.c: * tests/check/elements/encodebin.c: encodebing: Use the preset_name as the factory name and preset as the name of the preset The naming is not perfect, but at least we can keep the exact same behaviour as before. 2011-08-02 10:11:14 -0300 Thiago Santos * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Always resync the ringbuffer on the first buffer In SKEW mode, use next_sample == -1 to check for the first sample when starting to read samples so it resyncs the ringbuffer and timestamps are ok. Suggestion from Teemu Katajisto https://bugzilla.gnome.org/show_bug.cgi?id=648359 2012-12-17 00:59:57 +0000 Tim-Philipp Müller * gst/subparse/gstssaparse.c: ssaparse: ignore invalid UTF-8 in init section The codec data blob we get from matroskademux with the SSA/ASS init section is supposed to be valid UTF-8. If it's not, just continue with the bits that are valid UTF-8 instead of erroring out. We don't actually parse the init section yet anyway.. https://bugzilla.gnome.org/show_bug.cgi?id=607630 2012-12-16 12:34:14 +0000 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: fix GError leak 2012-12-16 12:05:02 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: detect stand-alone SSA/ASS subtitle files https://bugzilla.gnome.org/show_bug.cgi?id=625113 2012-12-15 19:36:56 +0000 Tim-Philipp Müller * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: post error message when audio device disappears Don't loop forever if an USB audio device gets disconnected while in use. Post an error message instead. This is not enough yet though, we still need to make the base class and/or the ring buffer bail out. https://bugzilla.gnome.org/show_bug.cgi?id=690197 2012-12-14 20:27:53 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add some more flags and file extensions to internal media type descriptions table For later use. https://bugzilla.gnome.org/show_bug.cgi?id=636753 https://bugzilla.gnome.org/show_bug.cgi?id=549111 2012-12-14 11:36:58 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: add limit to queued messages Add a limit to the amount of queued bytes or messages we allow on the watch. API: GstRTSPConnection::gst_rtsp_watch_set_send_backlog() API: GstRTSPConnection::gst_rtsp_watch_get_send_backlog() 2012-12-13 11:31:28 +0100 Wim Taymans * gst/playback/gstplaysink.c: playsink: fix vis switch with format change Block the pad before the resample and convertor elements to give the a chance to negotiate new caps with the newly switched vis plugin. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679976 2012-12-13 11:03:30 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Fix spec file to match latest header reshuffle 2012-12-12 17:22:31 +0000 Sebastian Dröge * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.h: * ext/theora/gsttheoraenc.c: ext: Fix some compilation errors caused by circular header includes 2012-12-12 17:13:10 +0000 Sebastian Dröge * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/app.h: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudio.h: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/fft.h: * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/riff.h: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/rtp.h: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/rtsp.h: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstsdp.h: * gst-libs/gst/sdp/sdp.h: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/tag.h: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideo.h: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video.h: libs: Use foo/foo.h as single-include header consistently everywhere https://bugzilla.gnome.org/show_bug.cgi?id=688785 2012-12-12 15:31:20 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: aac: don't try to unref NULL caps 2012-12-10 13:39:27 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: docs: update 2012-12-10 13:35:37 +0000 Tim-Philipp Müller * gst-libs/gst/video/videooverlay.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: * tests/examples/overlay/gtk-videooverlay.c: * tests/examples/overlay/qt-videooverlay.cpp: * tests/examples/overlay/qtgv-videooverlay.cpp: * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: * tests/icles/test-colorkey.c: docs: fix up some more GstXOverlay -> GstVideoOverlay https://bugzilla.gnome.org/show_bug.cgi?id=689740 2012-12-10 11:49:46 +0000 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Only keep track of timestamps if the subclass is parsing data Otherwise we just pass through the timestamps directly and don't need to waste additional memory for them. Fixes bug #689814. 2012-12-08 00:21:17 +0100 Sebastian Rasmussen * gst-libs/gst/rtsp/gstrtspmessage.c: rtspmessage: Add several missing g-i annotations https://bugzilla.gnome.org/show_bug.cgi?id=689873 2012-12-09 22:36:32 +0000 Tim-Philipp Müller * win32/common/libgstpbutils.def: win32: add new encoding profile API to .def file 2012-12-05 17:53:19 -0300 Thibault Saunier * tests/check/elements/encodebin.c: tests: encodebin: Properly rename new preset test 2012-12-05 15:22:42 -0300 Thibault Saunier * gst-libs/gst/pbutils/encoding-profile.c: * gst/encoding/gstencodebin.c: * tests/check/elements/encodebin.c: encodebin: Make use of the new preset_name when setting a preset The behaviour is sensibly changed here. Instead of purely falling when a preset is set on the #GstEncodingProfile, we now make sure that the element that is plugged corresponds to the one specified as preset. Then, if we have a preset_name, we use it, if it fails, we fail (we might rather just keep working even without setting the element properties?) + Add tests that it behave correctly 2012-12-05 15:21:43 -0300 Thibault Saunier * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: encoding-profile: Let the user decide what preset name to use It was possible to decide only what #GstElement implementing #GstPreset to use during the encoding, we can now let the user select a specific preset previously saved using #gst_preset_save_preset specifying the name chosen when it was saved in the gst_encoding_profile_set_preset_name. Actually loading a preset with %NULL as a name would have always failed, so in the current state of the API that feature is unusable API: gst_encoding_profile_set_preset_name gst_encoding_profile_get_preset_name 2012-12-04 13:16:09 -0300 Thiago Santos * gst-libs/gst/pbutils/encoding-profile.c: pbutils: encoding-profile: fix _new function introspection docs Makes the parameter accept NULL as input for GI bindings 2012-12-02 12:54:17 +0000 Tim-Philipp Müller * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * tests/check/elements/multifdsink.c: tcp: print warning if someone tries to add clients in NULL state And mention this in docs. https://bugzilla.gnome.org/show_bug.cgi?id=689326 2012-12-02 12:33:43 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: add some more debug info and remove obsolete comment 2012-11-30 12:15:48 +0000 Tim-Philipp Müller * win32/common/libgstrtsp.def: win32: update .def for new API 2012-11-29 13:42:45 +0000 Tim-Philipp Müller * tests/check/elements/playbin.c: test: add test for playbin in combination with appsink Make sure appsink works multiple times in a row. Disable it though for now though. https://bugzilla.gnome.org/show_bug.cgi?id=644989 2012-11-28 18:50:45 +0100 Edward Hervey * configure.ac: configure.ac: Update libtool versioning In order for 1.x and 1.(x+1) versions to not invade on each other we need to have different lib versions. So we need a consistent and predictable scheme: library version number = MINOR * 100 + MICRO Ex: 1.0.0 => 0 (duh) 1.0.3 => 3 1.1.0 => 100 1.1.1 => 101 1.2.0 => 120 1.10.5 => 1005 2012-11-27 11:02:19 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: add method to parse options list 2012-11-27 10:30:08 +0100 Sebastian Dröge * tests/check/elements/videoscale.c: videoscale: Fix unit test to ignore unsupported color formats 2012-11-26 18:41:07 +0000 Tim-Philipp Müller * gst/playback/gststreamsynchronizer.c: streamsynchronizer: don't send gap events with huge bogus durations when advancing EOS streams When the input buffers for a stream don't have a duration set, timestamp_end might still be GST_CLOCK_TIME_NONE. When advancing EOSed streams via GAP events (with other streams not yet EOS), we would then use the invalid timestamp_end to calculate the duration of the gap. This in turn would make baseaudiosink abort, because it would try to allocate memory for a trizillion samples. So if buffers don't have a duration set, assume a duration of one second for stream catch-up purposes, just so we can still continue to catch up in those cases. And make sure that timestamp_end is valid before doing calculations with it. http://bugzilla.gnome.org/show_bug.cgi?id=678530 2012-11-25 18:07:04 +0000 Tim-Philipp Müller * gst/playback/gststreamsynchronizer.c: streamsynchronizer: reduce debug log spam a bit Log locking/unlocking with TRACE debug level. 2012-11-23 13:58:25 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: docs: update audio multi-channel docs Remove includes and functions that don't exist any longer, add new ones instead. 2012-11-23 11:14:40 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add new header files 2012-11-22 13:09:46 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Set element to NULL state before removing it from the bin 2012-11-22 13:06:14 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin: Check if the element really accepts the caps after setting it to READY It might know the caps constraints for sure only after opening a decoder. 2012-11-21 23:17:22 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioringbuffer.c: audio: remove bogus Since marker from docs It was causing perl warnings in gtk-doc code. 2012-11-21 21:53:13 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: app: fix g-i annotation for gst_app_src_push_buffer() It takes ownership of the buffer. 2012-11-21 20:51:37 +0000 Tim-Philipp Müller * win32/common/libgstrtsp.def: win32: update .def file for new rtsp API 2012-11-21 16:25:24 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: * tests/check/libs/rtsp.c: rtsprange: add string conversion for new formats 2012-11-21 15:29:59 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: * tests/check/libs/rtsp.c: rtsprange: add method to convert ranges to GstClockTime Add a method to convert the values of GstRTSPRange to GstClockTime. Add unit tests for the conversions. API: gst_rtsp_range_get_times() 2012-11-21 15:22:13 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: range: don't overwrite unit field 2012-11-21 12:12:28 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: range: add g_return_if check 2012-11-21 11:12:57 +0100 Sebastian Dröge * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/gstvideo.h: libs: Fix last commit by using correct include paths and only include existing headers 2012-11-20 23:22:27 -0800 Evan Nemerson * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.h: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudio.h: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstpbutils.h: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/gstriff.h: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtp.h: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtsp.h: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstsdp.h: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gsttag.h: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideo.h: libs: Add missing single include headers and use them in GIRs 2012-11-21 10:28:31 +0100 Sebastian Dröge * gst/playback/gstplayback.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: Make the element public https://bugzilla.gnome.org/show_bug.cgi?id=688240 2012-11-21 10:25:51 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.h: rtsprange: improve docs 2012-11-20 14:56:45 +0100 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: * win32/common/libgstpbutils.def: discoverer: Add support for getting the stream-id https://bugzilla.gnome.org/show_bug.cgi?id=654830 2012-11-20 14:37:51 +0100 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Use switch/case instead of lots of ifs for the event handling 2012-11-20 12:21:08 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Return the proportion directly 2012-11-20 12:08:26 +0100 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: videodecoder: Rename from get_qos_info() to get_qos_proportion() And only return the proportion. The earliest time already can be retrieved from get_max_decode_time() and by renaming we allow this to be more extensible in the future. 2012-11-20 11:10:30 +0100 Wim Taymans * tests/check/libs/struct_x86_64.h: check: update for larger struct 2012-11-20 09:18:44 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: * tests/check/libs/rtsp.c: rtsp: avoid ABI break Move new fields into structures appended at the end of the GstRTSPRange to avoid ABI break. 2012-11-20 07:17:00 +0100 Alessandro Decina * gst-libs/gst/pbutils/encoding-profile.c: pbutils: fix transfer annotation for gst_encoding_profile_set_restriction 2012-11-09 15:37:57 +0100 Andoni Morales Alastruey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * win32/common/libgstvideo.def: videodecoder: add getter for QoS proportion and earliest_time Add a getter for the QoS proportion and earliest_time to help subclasses do better estimations based on the proportion. API: gst_video_decoder_get_qos_info() https://bugzilla.gnome.org/show_bug.cgi?id=687991 2012-11-19 17:08:38 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: rtsp: fix format string 2012-11-19 16:59:48 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: * tests/check/libs/rtsp.c: rtsp: parse UTC ranges 2012-11-19 16:15:46 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: * tests/check/libs/rtsp.c: rtsp: parse SMPTE ranges 2012-11-19 16:13:56 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: range: handle parse errors better 2012-11-19 16:04:01 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: rtsp: detect npt time parse errors 2012-11-19 13:52:08 +0100 Wim Taymans * tests/check/libs/rtsp.c: check: add rtsp range checks 2012-11-19 13:37:56 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: range: a single - is not allowed 2012-11-19 13:33:32 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsprange.c: range: handle ranges starting with - An RTSP range that starts with a - means that the first value of the range is the end of the stream. 2012-11-19 11:24:28 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From b497c4f to a72faea 2012-11-17 00:26:45 +0000 Tim-Philipp Müller * tests/examples/playback/playback-test.c: examples: don't use deprecated API 2012-11-14 00:03:15 +0000 Tim-Philipp Müller * ext/libvisual/gstaudiovisualizer.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: gst_adapter_prev_timestamp -> gst_adapter_prev_pts https://bugzilla.gnome.org/show_bug.cgi?id=675598 2012-11-13 16:15:49 +0100 Wim Taymans * gst-libs/gst/video/video-format.c: video-format: fix plane offsets for GBR formats Also make some macros to get to the R/G/B planes Remove unused stride macros. 2012-11-13 16:11:42 +0100 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.h: Revert "vorbisdec: Fix GType name conflict if tremor and libvorbis decoder are used in the same process" This reverts commit 858392f88a1221afa29e6b08b283d5472be69b62. A similar, cleaner fix was already in place. 2012-11-13 15:40:14 +0100 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.h: vorbisdec: Fix GType name conflict if tremor and libvorbis decoder are used in the same process 2012-11-12 12:44:05 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: improve docs 2012-11-12 12:57:35 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for Opus audio codec https://bugzilla.gnome.org/show_bug.cgi?id=688151 2012-11-12 11:45:15 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audio: Use new GType for GThread instead of just G_TYPE_POINTER 2012-11-12 11:17:56 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: protect against empty buffers 2012-11-11 16:33:32 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: improve AAC LOAS typefinding Make AAC LOAS typefinding a bit more reliable; don't report a LIKELY probability already after just two sync points, but scan for a few more consecutive frames and determine probability based on how many we found. Fixes mis-detection of wavpack file. https://bugzilla.gnome.org/show_bug.cgi?id=687674 2012-11-11 20:04:40 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: improve wavpack typefinder Check for second block sync and return different probabilities depending on what we found (trumping the AAC loas typefinder's LIKELY probability after finding a second frame sync in this particular case). https://bugzilla.gnome.org/show_bug.cgi?id=687674 2012-11-11 19:44:31 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: fix block size calculation in wavpack typefinder The blocksize includes part of the header, just not the sync marker and the four size bytes. 2012-11-10 16:45:34 +0100 Sebastian Dröge * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add GBR/GBR_10LE/GBR_10BE color formats Planar RGB color format used by h264 2012-10-29 15:11:48 +0100 Sebastian Dröge * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add Y444_10{LE,BE} video formats 2012-11-09 23:41:16 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: add test for video unpack and pack functions 2012-11-09 15:55:05 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: fix g-i annotation for gst_rtsp_message_set_body(), take_body() and take_header() https://bugzilla.gnome.org/show_bug.cgi?id=687620 2012-11-09 16:48:54 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Reset error count to 0 after successfully decoding a frame 2012-11-09 16:46:15 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Reset the error count to 0 after successfully decoding a frame 2012-11-07 18:41:02 +0000 Tim-Philipp Müller * configure.ac: configure.ac: update courtesy of autoupdate 2012-11-07 17:34:39 +0000 Tim-Philipp Müller * common: * configure.ac: configure: let AG_GST_PLUGIN_DOCS check for python And update common for move from AS_PATH_PYTHON to AM_PATH_PYTHON, which as a side-effect should pick up newer python versions as well. https://bugzilla.gnome.org/show_bug.cgi?id=563903 2012-11-07 13:59:53 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: implement background shading for IYU1 https://bugzilla.gnome.org/show_bug.cgi?id=687817 2012-11-07 13:25:13 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: also draw shaded backgrounds for RGB and BGR https://bugzilla.gnome.org/show_bug.cgi?id=687817 2012-11-07 11:36:42 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: we can do YVU9 as well 2012-11-07 11:32:50 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: don't advertise 10-16-bit formats we can't blend text onto yet We can't blend stuff on top of video formats that unpack into ARGB64 or AYUV64 yet, so don't advertise them in our template caps. 2012-11-07 11:17:14 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video: don't crash when blending onto video formats that unpack to 64 bits per pixel We only allocate 8 bits per component for our temp buffers, which causes invalid memory accesses if we try to unpack formats that unpack into a format with 16 bits per component such as e.g. v210. We don't support blending onto those yet, so just bail out. 2012-11-07 09:46:50 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: fix up names of old gray formats Y800 -> GRAY8, Y16 -> GRAY16_{LE,BE} 2012-11-07 09:34:11 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: draw shaded background for some more video formats https://bugzilla.gnome.org/show_bug.cgi?id=687817 2012-11-07 00:57:18 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: clamp shaded background box coordinates in one place 2012-11-07 00:54:29 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: move background shading into separate function 2012-11-06 15:21:16 -0300 Thiago Santos * gst/typefind/gsttypefindfunctions.c: typefind: isml is iso-fragmented video/quicktime Add isml typefinding to the video/quicktime function 2012-11-06 23:38:13 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: textoverlay: don't abort if we don't know how to paint shaded background for a format It's not a very nice thing to do. https://bugzilla.gnome.org/show_bug.cgi?id=687666 2012-09-24 13:36:06 +0200 Wim Taymans * win32/common/libgstrtp.def: win32: add new header extension methods 2012-09-24 13:09:10 +0200 Wim Taymans * tests/check/libs/rtp.c: tests: add NTP64 and ntp56 header extension checks 2012-09-24 13:08:46 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtphdrext.c: rtp: fix ntp56 parsing 2012-09-24 12:13:32 +0200 Wim Taymans * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtphdrext.c: * gst-libs/gst/rtp/gstrtphdrext.h: rtp: add helpers for header extensions Add helpers and defines for the NTP-64 and NTP-56 header extensions. 2012-11-05 14:35:56 +0200 Sreerenj Balachandran * ext/pango/gstbasetextoverlay.c: textoverlay: forward allocation queries on video sink pad instead of discarding them This allows the upstream elements to use the allocation parameters or pools from the downstream elements like videosink. https://bugzilla.gnome.org/show_bug.cgi?id=687459 2012-11-05 09:59:16 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: fix GstRTSPMessage g-i annotations for out parameters https://bugzilla.gnome.org/show_bug.cgi?id=687620 2012-11-03 20:38:00 +0000 Tim-Philipp Müller * ext/opus/gstopus.c: * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * tests/check/elements/opus.c: Fix FSF address https://bugzilla.gnome.org/show_bug.cgi?id=687520 2012-11-03 23:05:09 +0000 Tim-Philipp Müller * COPYING: * COPYING.LIB: * android/NOTICE: * docs/random/LICENSE: * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsadeviceprobe.h: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/cdparanoia/gstcdparanoiasrc.h: * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: * ext/libvisual/plugin.c: * ext/libvisual/visual.c: * ext/libvisual/visual.h: * ext/ogg/gstogg.c: * ext/ogg/gstogg.h: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: * ext/ogg/gstogmparse.c: * ext/ogg/vorbis_parse.h: * ext/pango/gstbasetextoverlay.c: * ext/pango/gstclockoverlay.c: * ext/pango/gstclockoverlay.h: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: * ext/theora/gsttheora.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: * ext/theora/gsttheoraparse.c: * ext/theora/gsttheoraparse.h: * ext/vorbis/gstivorbisdec.c: * ext/vorbis/gstvorbis.c: * ext/vorbis/gstvorbiscommon.c: * ext/vorbis/gstvorbiscommon.h: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: * ext/vorbis/gstvorbisdeclib.c: * ext/vorbis/gstvorbisdeclib.h: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbisparse.h: * ext/vorbis/gstvorbistag.c: * ext/vorbis/gstvorbistag.h: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioiec61937.h: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/streamvolume.c: * gst-libs/gst/audio/streamvolume.h: * gst-libs/gst/fft/gstfft.c: * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.c: * gst-libs/gst/fft/gstffts32.h: * gst-libs/gst/gettext.h: * gst-libs/gst/glib-compat-private.h: * gst-libs/gst/gst-i18n-plugin.h: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/descriptions.h: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/gstpluginsbaseversion.c: * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/missing-plugins.h: * gst-libs/gst/pbutils/pbutils-private.h: * gst-libs/gst/pbutils/pbutils.c: * gst-libs/gst/pbutils/pbutils.h: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-media.h: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/riff/riff-read.h: * gst-libs/gst/riff/riff.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/rtp/gstrtppayloads.c: * gst-libs/gst/rtp/gstrtppayloads.h: * gst-libs/gst/rtsp/gstrtsp.h: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/sdp/gstsdp.h: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/mklangtables.c: * gst-libs/gst/tag/mklicensestables.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * gst-libs/gst/tag/xmpwriter.c: * gst-libs/gst/tag/xmpwriter.h: * gst-libs/gst/video/colorbalance.c: * gst-libs/gst/video/colorbalance.h: * gst-libs/gst/video/colorbalancechannel.c: * gst-libs/gst/video/colorbalancechannel.h: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/gstvideoutils.h: * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-event.c: * gst-libs/gst/video/video-event.h: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst-libs/gst/video/videoorientation.c: * gst-libs/gst/video/videoorientation.h: * gst-libs/gst/video/videooverlay.c: * gst-libs/gst/video/videooverlay.h: * gst/adder/gstadder.c: * gst/adder/gstadder.h: * gst/app/gstapp.c: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstaudioquantize.h: * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: * gst/audioconvert/gstfastrandom.h: * gst/audioconvert/plugin.c: * gst/audioconvert/plugin.h: * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/speex_resampler_double.c: * gst/audioresample/speex_resampler_float.c: * gst/audioresample/speex_resampler_int.c: * gst/audioresample/speex_resampler_wrapper.h: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: * gst/encoding/gstencodebin.c: * gst/encoding/gstencodebin.h: * gst/encoding/gstsmartencoder.c: * gst/encoding/gstsmartencoder.h: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamcombiner.h: * gst/encoding/gststreamsplitter.c: * gst/encoding/gststreamsplitter.h: * gst/gio/gstgio.c: * gst/gio/gstgio.h: * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesink.h: * gst/gio/gstgiobasesrc.c: * gst/gio/gstgiobasesrc.h: * gst/gio/gstgiosink.c: * gst/gio/gstgiosink.h: * gst/gio/gstgiosrc.c: * gst/gio/gstgiosrc.h: * gst/gio/gstgiostreamsink.c: * gst/gio/gstgiostreamsink.h: * gst/gio/gstgiostreamsrc.c: * gst/gio/gstgiostreamsrc.h: * gst/playback/gstdecodebin2.c: * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: * gst/playback/gstplayback.c: * gst/playback/gstplayback.h: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: * gst/playback/gstrawcaps.h: * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: * gst/playback/gsturidecodebin.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstssaparse.h: * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * gst/subparse/mpl2parse.c: * gst/subparse/mpl2parse.h: * gst/subparse/qttextparse.c: * gst/subparse/qttextparse.h: * gst/subparse/samiparse.c: * gst/subparse/samiparse.h: * gst/subparse/tmplayerparse.c: * gst/subparse/tmplayerparse.h: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsink.h: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpclientsrc.h: * gst/tcp/gsttcpplugin.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversink.h: * gst/tcp/gsttcpserversrc.c: * gst/tcp/gsttcpserversrc.h: * gst/typefind/gsttypefindfunctions.c: * gst/videoconvert/gstcms.c: * gst/videoconvert/gstcms.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: * sys/ximage/ximage.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimage.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: * tests/check/elements/adder.c: * tests/check/elements/appsink.c: * tests/check/elements/appsrc.c: * tests/check/elements/audioconvert.c: * tests/check/elements/audiorate.c: * tests/check/elements/audioresample.c: * tests/check/elements/audiotestsrc.c: * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: * tests/check/elements/encodebin.c: * tests/check/elements/libvisual.c: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: * tests/check/elements/streamsynchronizer.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videoconvert.c: * tests/check/elements/videorate.c: * tests/check/elements/videoscale.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/check/elements/vorbisdec.c: * tests/check/elements/vorbistag.c: * tests/check/generic/clock-selection.c: * tests/check/generic/states.c: * tests/check/gst/typefindfunctions.c: * tests/check/libs/audio.c: * tests/check/libs/audiocdsrc.c: * tests/check/libs/discoverer.c: * tests/check/libs/fft.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/navigation.c: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: * tests/check/libs/rtp.c: * tests/check/libs/rtsp.c: * tests/check/libs/tag.c: * tests/check/libs/video.c: * tests/check/libs/xmpwriter.c: * tests/check/pipelines/basetime.c: * tests/check/pipelines/capsfilter-renegotiation.c: * tests/check/pipelines/gio.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/simple-launch-lines.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: * tests/examples/audio/audiomix.c: * tests/examples/audio/volume.c: * tests/examples/dynamic/addstream.c: * tests/examples/dynamic/codec-select.c: * tests/examples/dynamic/sprinkle.c: * tests/examples/dynamic/sprinkle2.c: * tests/examples/dynamic/sprinkle3.c: * tests/examples/encoding/encoding.c: * tests/examples/encoding/gstcapslist.c: * tests/examples/encoding/gstcapslist.h: * tests/examples/fft/fftrange.c: * tests/examples/gio/giosrc-mounting.c: * tests/examples/overlay/gtk-videooverlay.c: * tests/examples/overlay/qt-videooverlay.cpp: * tests/examples/overlay/qtgv-videooverlay.cpp: * tests/examples/overlay/qtgv-videooverlay.h: * tests/examples/playback/playback-test.c: * tests/examples/playrec/playrec.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/stepping.c: * tests/examples/seek/stepping2.c: * tests/examples/snapshot/snapshot.c: * tests/icles/input-selector-test.c: * tests/icles/playback/decodetest.c: * tests/icles/playback/test.c: * tests/icles/playback/test2.c: * tests/icles/playback/test3.c: * tests/icles/playback/test4.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: * tests/icles/playback/test7.c: * tests/icles/playbin-text.c: * tests/icles/stress-videooverlay.c: * tests/icles/test-box.c: * tests/icles/test-colorkey.c: * tests/icles/test-effect-switch.c: * tests/icles/test-scale.c: * tests/icles/test-textoverlay.c: * tests/icles/test-videooverlay.c: * tools/gst-discoverer.c: Fix FSF address https://bugzilla.gnome.org/show_bug.cgi?id=687520 2012-11-02 17:46:58 +0100 Miguel Angel Cabrera Moya * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: use the same type as the internal type to return it https://bugzilla.gnome.org/show_bug.cgi?id=687466 2012-11-02 20:09:21 +0100 Miguel Angel Cabrera Moya * gst-libs/gst/video/video-blend.c: video-blend: fix memory leak when called with invalid parameters https://bugzilla.gnome.org/show_bug.cgi?id=687472 2012-11-02 20:13:07 +0100 Miguel Angel Cabrera Moya * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: remove extra return and fix GError leak https://bugzilla.gnome.org/show_bug.cgi?id=687473 2012-11-02 11:05:20 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: fix g-i annotations for out parameters https://bugzilla.gnome.org/show_bug.cgi?id=687421 2012-11-01 16:44:05 +0100 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Always prefer the input format if possible Previously we could've chosen another format with the same depth even if the input format was possible. Also make sure to chose according to the order in the caps. 2012-11-01 14:31:29 +0100 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Also ignore the SIGNED flag when matching an output format 2012-10-31 20:01:05 +0100 Rasmus Rohde * gst/audioconvert/gstaudioconvert.c: * tests/check/elements/audioconvert.c: audioconvert: Prefer output formats with the same depth or at least a higher depth Enhance current code to prefer an exact match on sample depth if possible. Also ignore GST_AUDIO_FORMAT_FLAG_UNPACK when checking equality on the flags. 2012-10-30 10:19:59 +0000 Wim Taymans * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: reset spec on _release Reset the caps and the audioinfo when releasing the ringbuffer. Fixed a bug with reusing pulsesink. 2012-10-29 21:29:36 +0100 Miguel Angel Cabrera Moya * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepay: remove unused variable https://bugzilla.gnome.org/show_bug.cgi?id=687146 2012-10-29 13:31:28 +0000 Tim-Philipp Müller * gst/gio/gstgio.c: gio: handle g_vfs_get_supported_uri_schemes() returning NULL Handle g_vfs_get_supported_uri_schemes() returning NULL more gracefully, without criticals for passing NULL to g_strv_length(). 2012-10-29 13:01:07 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: pbutils: fix g-i search path for GstBase-1.0.gir Fixes: Couldn't find include 'GstBase-1.0.gir' build error. 2012-10-29 12:47:05 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: Revert "g-i: change g-ir-scanner arg --library=libgstfoo-X.la to --library=gstfoo-X" This reverts commit e39fbe6b7e14ccccbf47a5726a18eb963535063b. Looks like we need to pass the full .la file after all in a setup with libtool, or it might not find the library, e.g. like ERROR: can't resolve libraries to shared libraries: gstfft-1.0 Conflicts: gst-libs/gst/audio/Makefile.am gst-libs/gst/pbutils/Makefile.am Also see https://bugzilla.gnome.org/show_bug.cgi?id=603710 2012-10-28 21:07:16 +1100 Jonathan Liu * ext/ogg/gstoggstream.c: oggstream: fix crash with 0 byte ogg packets https://bugzilla.gnome.org/show_bug.cgi?id=687030 2012-07-05 17:54:48 +0300 Sreerenj Balachandran * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix inappropriate compiler optimization hint macro usage https://bugzilla.gnome.org/show_bug.cgi?id=679456 2012-10-28 19:59:41 +0100 Miguel Angel Cabrera Moya * gst-libs/gst/tag/gstexiftag.c: exiftag: fix use after free and memory leak https://bugzilla.gnome.org/show_bug.cgi?id=687055 2012-10-28 20:01:17 +0100 Miguel Angel Cabrera Moya * gst-libs/gst/tag/gstvorbistag.c: vorbistag: fix memory leak https://bugzilla.gnome.org/show_bug.cgi?id=687057 2012-10-28 17:59:27 +0000 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: audio: try harder to make g-i use the build-tree libgsttag without adding additional --library= tags, which shouldn't be there. https://bugzilla.gnome.org/show_bug.cgi?id=679315 2012-10-28 17:52:54 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: pbutils: try harder to make g-i use the build-tree libgsttag,-audio, and -video without adding additional --library= tags, which shouldn't be there. https://bugzilla.gnome.org/show_bug.cgi?id=679315 2012-10-28 17:34:59 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: g-i: change g-ir-scanner arg --library=libgstfoo-X.la to --library=gstfoo-X As it should be according to the man page. https://bugzilla.gnome.org/show_bug.cgi?id=679315 2012-10-25 17:16:21 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add caps description for Apple ProRes video 2012-10-25 17:14:32 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: avoid unnecessary pango attribute list copy We just want to keep it alive, not modify it, so a simple ref should be enough. https://bugzilla.gnome.org/show_bug.cgi?id=686841 2012-10-26 00:29:11 +0900 Jihyun Cho * ext/pango/gstbasetextoverlay.c: pango: delete foreground color in shadow text This makes colored text have gray drop shadows instead of colored ones, which looks much better. https://bugzilla.gnome.org/show_bug.cgi?id=686841 2012-10-25 09:19:21 +0200 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Don't use invalid sockets return false from dispatch () if the read and write sockets have been unset in tunnel_complete () Setting up HTTP tunnels causes segfaults since the watch for the second connection is not destroyed anymore in tunnel_complete () and the connection will still be used even though it is not valid anymore. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686276 2012-10-25 14:41:22 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/missing-plugins.c: pbutils: fix installer detail string version number Should still be '1.0' not '1.1'. Fixs pbutils unit test. 2012-10-23 11:16:57 +0200 Sebastian Dröge * gst/audioresample/speex_resampler_wrapper.h: audioresample: Use auto sinc table mode by default 2012-10-15 22:07:22 +0200 Carlos Rafael Giani * configure.ac: * gst/audioresample/Makefile.am: * gst/audioresample/resample.c: * gst/audioresample/resample_neon.h: * gst/audioresample/speex_resampler_float.c: * gst/audioresample/speex_resampler_int.c: audioresample: added ARM NEON support This adds ARM NEON accelerated code paths for 16-bit integer and 32-bit floating point samples. It is a modified combination of patches #3 and #5 from Jyri Sarha ( http://lists.xiph.org/pipermail/speex-dev/2011-September/008240.html & http://lists.xiph.org/pipermail/speex-dev/2011-September/008238.html ) Signed-off-by: Carlos Rafael Giani 2012-10-15 22:21:14 +0200 Carlos Rafael Giani * gst/audioresample/arch.h: * gst/audioresample/fixed_generic.h: * gst/audioresample/resample.c: audioresample: changed inner_product_single semantics This is an adaptation of patch #3 from Jyri Sarha ( http://lists.xiph.org/pipermail/speex-dev/2011-September/008240.html ), but without the NEON optimizations (these come in a separate commit). The idea is to replace SATURATE32(PSHR32(x, shift), a) operations with a combined SATURATE32PSHR(x, shift, a) macro that can be optimized for specific platforms (and also avoids rare rounding errors). Signed-off-by: Carlos Rafael Giani 2012-10-07 03:00:52 +0200 Carlos Rafael Giani * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/speex_resampler.h: * gst/audioresample/speex_resampler_wrapper.h: audioresample: sinc filter performance improvements Original idea comes from Jyri Sarha ( http://lists.xiph.org/pipermail/speex-dev/2011-September/008243.html ). Patch was discovered by Branislav Katreniak ( branislav.katreniak@streamunlimited.com ) for StreamUnlimited ( http://streamunlimited.com/ ). Tests showed up to 5x speed increase in the resampler in the 44.1<->48kHz case. I added the sinc-filter-mode and sinc-filter-auto-threshold properties and the auto mode threshold tests, and adapted the code to GStreamer 1.0. Signed-off-by: Carlos Rafael Giani 2012-10-25 12:19:46 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to feature development 2012-10-24 23:40:20 +0200 Carlos Rafael Giani * ext/opus/gstopusdec.c: opusdec: fixed buffer unmapping bug When the decoder received a NULL buffer, it tried to unmap a not mapped buffer. https://bugzilla.gnome.org/show_bug.cgi?id=686829 === release 1.0.2 === 2012-10-25 00:54:24 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.0.2 2012-10-24 14:05:56 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: track forced decoding state 2012-10-24 13:34:15 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Also send a GAP event to let audio sinks start their clock in case they did not have enough data yet 2012-10-24 13:29:45 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Use correct timestamp/duration for the GAP events 2012-10-24 13:26:22 +0200 Sebastian Dröge * configure.ac: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/gio/Makefile.am: * gst/playback/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Revert "gst: Add better support for static plugins" This reverts commit d2d79e3bc2a02ec57258e504b031f7e2d3729ea2, which was accidentially pushed. 2012-10-24 13:25:19 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Send GAP events to advance streams 2012-10-24 12:10:44 +0200 Sebastian Dröge * configure.ac: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/gio/Makefile.am: * gst/playback/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: gst: Add better support for static plugins 2012-10-24 11:22:29 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Add explanation to the GAP event handling code 2012-10-24 09:57:23 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Create a GAP event with a sensible timestamp 2012-10-24 11:16:54 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Properly handle GAP events These are now converted into silence buffers if they have a duration or cause the ringbuffer and clock to be started if they don't have a duration. Fixes bug #685273. 2012-10-23 18:16:26 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Also propagate return value of pushing GAP event upstream 2012-10-23 17:37:46 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Return TRUE from the EOS handler 2012-10-23 15:56:10 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstvorbistag.c: vorbistag: add mapping for 'ALBUM ARTIST' with space As found in sample file for bug #684701. 2012-10-22 15:44:16 +0200 Sebastian Dröge * gst/tcp/gstmultihandlesink.c: tcp: sys/socket.h is needed for getsockname() and similar functions 2012-10-22 10:30:16 +0200 Wim Taymans * gst-libs/gst/riff/riff-media.c: riff: add bpp to caps for msvideo Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686298 2012-10-22 09:44:20 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: add more debug 2012-10-20 12:59:11 +0100 Tim-Philipp Müller * gst-libs/gst/tag/mklicensestables.c: tag: remove unnecessary g_type_init() call from mklicensestable tool https://bugzilla.gnome.org/show_bug.cgi?id=686456 2012-10-20 11:38:55 +0100 Tim-Philipp Müller * ext/alsa/gstalsasink.c: alsasink: fix caps leak in acceptcaps function https://bugzilla.gnome.org/show_bug.cgi?id=681192 2012-10-20 11:38:10 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: don't leak message strings when error is not fatal https://bugzilla.gnome.org/show_bug.cgi?id=681192 2012-10-20 11:37:33 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: videodecoder: don't leak message strings when error is not fatal 2012-10-19 18:29:00 +0100 Tim-Philipp Müller * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: tcpserver{sink,src}: improve docs and property strings And some minor clean-ups. 2012-10-17 12:19:56 +0200 Alexandre Relange * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversink.h: * gst/tcp/gsttcpserversrc.c: * gst/tcp/gsttcpserversrc.h: tcpserver{sink,src}: add 'current-port' property and signal actually used port Useful when port=0 (use random available port) was requested. https://bugzilla.gnome.org/show_bug.cgi?id=580093 2012-10-18 22:13:09 +0200 Mark Nauwelaerts * gst/audioconvert/gstaudioconvert.c: audioconvert: enhance transforming caps ... so as to preserve input format precision, and preferably not convert at all. 2012-10-18 12:02:00 -0300 Thiago Santos * gst-libs/gst/tag/gstvorbistag.c: vorbistag: fix 'TODO' on image tag parsing Image tag now uses GstSample that has the buffer and caps associated with it. 2012-10-18 00:39:42 +0100 Tim-Philipp Müller * ext/alsa/gstalsa.c: alsa: if no formats in native endianness could be detected, try non-native endianness as well This can happen, e.g. when using an USB sound card on a big-endian device https://bugzilla.gnome.org/show_bug.cgi?id=680904 2012-10-18 00:04:06 +0100 Tim-Philipp Müller * ext/alsa/gstalsa.c: * ext/alsa/gstalsasink.c: alsa: fix supported format detection The format probing code was assuming there'd be one caps structure for each separate width/depth combination like we did in 0.10 all over the place: for one, we'd query unsigned/signed formats together for the same width/height, and we'd add the entire current structure to the probed caps when we find a format is supported. Now that we have all raw formats in a single structure, this is all not going to work so well any more. We added the entire structure with all possible formats to the caps if we support just one format. Fix probing so that we only return the list of actually supported raw audio formats (with native endianness) from get_caps(). 2012-10-17 19:59:57 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.h: audiocdsrc: mention TOCs in docs 2012-10-17 17:34:26 +0100 Tim-Philipp Müller * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: Use gst_element_class_set_static_metadata() where possible. Avoids some string copies. Also re-indent some stuff. Also some indent fixes here and there. 2012-10-17 16:54:14 +0100 Tim-Philipp Müller * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: theora, app: use gst_element_class_set_static_metadata() Avoids string copies. 2012-10-17 10:55:01 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: videodecoder: return NULL from _allocate_output_buffer() if alloc fails .. instead of garbage pointer. Also log failure in debug log. Should've returned the flow return like _allocate_output_frame(). https://bugzilla.gnome.org/show_bug.cgi?id=683098 2012-10-16 11:48:32 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: riff-media: fix palette extraction some more We still need to make sure the palette is always at least 1024 bytes. 2012-10-16 00:55:56 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: riff: create palette_data buffer correctly gst_buffer_copy_into() will append to any existing memory region, so don't create a buffer and alloc some memory, but just create an empty buffer and let _copy_into() append the memory we want. Fixes the palette being 2048 bytes with the first half being filled with garbage. https://bugzilla.gnome.org/show_bug.cgi?id=686046 2012-10-15 18:47:30 +0200 Mark Nauwelaerts * gst-libs/gst/audio/audio.c: audio: properly handle clipping of empty buffer 2012-10-15 16:33:24 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: make and copy palette 2012-10-15 16:32:25 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: actually copy the palette Copy the default palette in the destination buffer too. 2012-10-15 15:50:44 +0200 Wim Taymans * docs/design/part-mediatype-video-raw.txt: docs: fix RGB8P format description docs 2012-10-11 11:36:54 +0200 David Corvoysier * gst/playback/gstdecodebin2.c: decodebin2: Fix group switching algorithm There were two issues with the previous decodebin2 group switching algorithm: Issue 1: It operated with no memory of what has been drained or not, leading to multiple checks for chains/groups that were already drained. Issue 2: When receiving an EOS, it only detected that a higher-level chain was drained if it contained the pad receiving the EOS. The following modifications have been applied: - a new drained property has been added to GstDecodeChain - both drained properties of chain/group are set as soon as they are detected - the algorithm now tests agains these values See https://bugzilla.gnome.org/show_bug.cgi?id=685938 2012-09-20 01:07:08 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtsprange.c: rtsprange: fix formatting and parsing of range floating-point values Other locales might use a comma instead of a floating point for floats, which might lead to parsing errors. https://bugzilla.gnome.org/show_bug.cgi?id=684411 2012-10-12 21:36:49 +0100 Tim-Philipp Müller * docs/design/part-mediatype-video-raw.txt: docs: update for RGB8_PALETTED -> RGB8P 2012-10-12 21:31:25 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: riff: 8-bit paletted video is format RGB8P, not RGB8_PALETTED https://bugzilla.gnome.org/show_bug.cgi?id=686046 2012-10-11 12:54:39 +0200 Josep Torra * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: set of base_ts for segment formats other than time Fixes setting of converted segment start as base_ts when estimate rate is allowed. 2012-10-10 15:49:46 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't unref caps twice Thanks to Josep Torra for noticing. 2012-10-10 15:04:07 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoutils.h: videodecoder: finetune missing timestamp estimating Monitor for reordered output timestamps, and then avoid oldest DTS as PTS approach, and try for an oldest PTS as out PTS approach, if at least all valid PTS available. Avoids bogus estimating upon sparse available input PTS, and tries to handle all-keyframe input, or input PTS which are actually DTS. 2012-10-10 11:50:12 +0200 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Change GST_WARNING to GST_INFO It's not a problem if we have no converters, this only means that none were requested at this point. 2012-10-09 13:07:38 +0200 Sebastian Dröge * ext/vorbis/gstivorbisdec.c: * ext/vorbis/gstvorbisdec.c: ivorbisdec: Rename debug category to prevent symbol conflict when using static linking 2012-10-09 12:18:01 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/streamvolume.c: * gst/playback/gstplaybin2.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: * tests/examples/gio/giosrc-mounting.c: docs: playbin2 -> playbin 2012-10-09 12:17:42 +0200 Wim Taymans * tests/examples/app/appsink-src.c: tests: fix audio caps 2012-10-08 12:43:03 +0200 Andoni Morales Alastruey * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: audio/video: update documentation for vfunc's that require chaining up 2012-10-07 02:58:05 +0200 Carlos Rafael Giani * configure.ac: configure: Reintroduced xmmintrin.h/emmintrin.h header checks The audio resampler needs these for the SSE/SSE2 code paths Signed-off-by: Carlos Rafael Giani 2012-10-08 09:21:16 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.h: video: small docs fix 2012-10-07 19:46:45 +0100 Tim-Philipp Müller * tests/check/libs/video.c: tests: fix video overlay_composition_premultiplied_alpha test on big-endian machines The unit test was checking for alpha at the wrong position. 2012-10-07 16:52:27 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development (bug fixing) === release 1.0.1 === 2012-10-07 15:11:10 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.0.1 2012-10-07 13:34:06 +0100 Tim-Philipp Müller * tests/check/libs/struct_i386.h: tests: fix ABI struct headers for x86 Not caused by anything we changed recently as far as I can tell. 2012-10-07 13:13:37 +0100 Tim-Philipp Müller * tests/check/libs/libsabi.c: * tests/check/libs/struct_ppc32.h: tests: add ABI structs header for 32-bit powerpc 2012-10-06 15:32:55 +0100 Tim-Philipp Müller * tests/check/elements/adder.c: tests: skip adder test_live_seeking test while it's unreliable Was an issue in 0.10 as well. https://bugzilla.gnome.org/show_bug.cgi?id=617418 2012-10-06 14:56:06 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 6c0b52c to 6bb6951 2012-10-05 10:59:30 +0200 Wim Taymans * tests/icles/test-effect-switch.c: tests: fix test-effect-switch Make it into an example of how to dynamically change an element in a playing pipeline using pad blocking. 2012-10-04 13:40:32 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: make stop() vfunc also optional Just change default value, since we also don't want to fail if we want to deactivate and aren't active or want to activate and are already active. https://bugzilla.gnome.org/show_bug.cgi?id=685490 2012-10-04 14:05:13 +0200 Andoni Morales Alastruey * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: don't fail if the start vfunc is not implemented Fix behaviour to match documentation and decoder class behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=685490 2012-10-04 12:15:39 +0200 Wim Taymans * tests/icles/playbin-text.c: tests: don't stop on just warnings 2012-10-04 11:12:42 +0200 Wim Taymans * tests/icles/test-scale.c: tests: fix scale test for 1.0 It needs a basetransform patch that makes it prefer the order of the caps property instead of passthrough. 2012-10-03 10:45:26 -0700 Michael Smith Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base 2012-10-03 10:44:59 -0700 Michael Smith * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/video-overlay-composition.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: meta registration: use g_once functions to register these threadsafely. 2012-10-03 11:37:33 +0100 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: playback: class_ref() some types so we can create multiple playback elements at the same time Should fix "cannot register existing type `GstPlaybinSelectorPad'" warnings and subsequent errors when creating multiple players at the same time. Conflicts: gst/playback/gststreamselector.c 2012-10-02 09:29:27 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix unused variable compiler warning if debugging is disabled 2012-10-01 21:31:39 +0200 Sebastian Pölsterl * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: mark url argument of gst_rtsp_url_parse() as out arg https://bugzilla.gnome.org/show_bug.cgi?id=685242 2012-09-28 20:07:43 -0400 Olivier Crête * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Also use the object lock to protect the output_state Hold both the stream and the object lock to modify the output_state, this way it can be safely modified while hold either one or the other. Also, only hold the object lock in the query https://bugzilla.gnome.org/show_bug.cgi?id=684832 2012-10-01 11:58:36 +0200 Wim Taymans * docs/design/draft-subtitle-overlays.txt: * docs/design/draft-va.txt: * docs/design/part-playbin.txt: docs: update for 1.0 2012-09-30 00:31:21 +0200 Alban Browaeys * gst/encoding/gstencodebin.c: encodebin: muxer sink pad is not always a request pad GstId3Mux sink pad is an always (static) pad. Thus releasing it as if a request pad triggers: (sound-juicer:11826): GStreamer-CRITICAL **: gst_element_release_request_pad: assertion `GST_PAD_PAD_TEMPLATE (pad) == NULL || GST_PAD_TEMPLATE_PRESENCE (GST_PAD_PAD_TEMPLATE (pad)) == GST_PAD_REQUEST' failed https://bugzilla.gnome.org/show_bug.cgi?id=685110 2012-09-29 21:42:46 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: fix max-latency property getter Was returning the min-latency value. 2012-09-29 11:46:56 +0100 Tim-Philipp Müller * gst/audioconvert/gstchannelmix.c: * gst/playback/gstplaysink.c: * tests/check/elements/ffmpegcolorspace.c: * tests/check/elements/videotestsrc.c: Purge all references to liboil And remove unused ffmpegcolorspace tests in the process. https://bugzilla.gnome.org/show_bug.cgi?id=673285 2012-09-28 13:59:24 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.h: video{de,en}coder: fix missing timestamp estimating ... by having some more timestamp tracking in a private frame field. Not doing so would lead to (a.o.) losing the needed minimum timestamp in an earlier sent frame. 2012-09-27 12:40:51 +0200 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: basetextoverlay: Correctly handle empty text buffers 2012-09-27 11:31:34 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: videodecoder: use oldest frame DTS to estimate missing outgoing PTS 2012-09-26 16:31:27 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: use oldest frame PTS to estimate missing outgoing DTS 2012-09-26 16:22:56 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: incoming buffer DTS is irrelevant ... and bogus anyway if PTS != DTS 2012-09-26 13:22:09 +0200 Wim Taymans * tests/icles/playbin-text.c: test: fix for new-sample signature The new-sample signal expects a GstFlowReturn as a result. Add support for external subtitles as well. 2012-09-25 17:19:15 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: clip input buffers to current input segment ... rather than to output segment, which will only be set to current input segment if some output is produced (coming from non-clipped input). Also fixup debug message. 2012-09-25 13:16:45 +0200 Sebastian Dröge * gst/videoconvert/gstvideoconvert.c: videoconvert: Set correct plugin metadata 2012-09-24 16:38:35 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development (bug fixing) === release 1.0.0 === 2012-09-24 13:35:05 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 1.0.0 2012-09-24 10:16:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: videodecoder: don't take STREAM_LOCK on upstream events Don't try to take STREAM_LOCK on upstream events such as QOS. Protect qos-related variables with object lock instead. Fixes possible deadlock when shutting down in certain situations. https://bugzilla.gnome.org/show_bug.cgi?id=684658 2012-08-29 16:02:11 -0300 Thiago Santos * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: keep track of the correct running time after renegotiations Need to store the old running time and frame numbers when renegotiating and start from 0 again when a new caps is set, preventing that framerate changes cause timestamping issues. For example, if a stream pushed 10 buffers on framerate=2/1, its running time will be 5s. If a new framerate of 1/1 is set, it would make the running time go to 10s as it would count those 10 buffers as being sent on this new framerate. Fixes camerbin unit test. https://bugzilla.gnome.org/show_bug.cgi?id=682973 2012-09-23 13:31:17 +0100 Tim-Philipp Müller * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: send stream-start event, and send caps event after stream-start Delay sending of caps event so that it is sent only after the stream-start event. 2012-09-23 13:27:27 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: send stream-start event 2012-09-20 18:42:50 -0400 Olivier Crête * ext/opus/gstopus.c: opusenc: Rank as Primary 2012-09-22 16:07:35 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 4f962f7 to 6c0b52c 2012-09-21 16:10:27 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.h: oggmux: fix up previous commit Was missing the header file change. 2012-09-21 15:58:07 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: send a segment event at the beginning 2012-09-20 10:03:32 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Update comments about forwarding/not-forwarding serialized events immediately 2012-09-19 21:16:01 -0400 Olivier Crête * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Protect all accesses to priv->output_frame with the stream lock Fixes segfault as queries/events can happen after a reset 2012-09-19 17:29:01 +0200 Andreas Frisch * tests/icles/playbin-text.c: tests: port playbin-text example to 1.0 api https://bugzilla.gnome.org/show_bug.cgi?id=684084 2012-09-19 08:52:45 +0530 Arun Raghavan * ext/alsa/gstalsasink.c: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioiec61937.h: audio: Explicitly specify endianness for IEC 61937 payloading This is required since some systems (DirectSound and OS X) manage the final byte order themselves. https://bugzilla.gnome.org/show_bug.cgi?id=678021 2012-09-18 13:16:39 +0200 Mark Nauwelaerts * gst/audioresample/gstaudioresample.c: audioresample: mark semi-unused variable ../../../gst-plugins-base/gst/audioresample/gstaudioresample.c: In function 'gst_audio_resample_dump_drain': ../../../gst-plugins-base/gst/audioresample/gstaudioresample.c:729:9: warning: variable 'in_len' set but not used [-Wunused-but-set-variable] === release 0.11.99 === 2012-09-17 17:57:19 +0100 Tim-Philipp Müller * configure.ac: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.11.99 2012-09-17 17:57:09 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update 2012-09-17 16:19:37 +0100 Tim-Philipp Müller * tests/examples/snapshot/snapshot.c: examples: make snapshot example actually compile and work https://bugzilla.gnome.org/show_bug.cgi?id=684063 2012-09-17 16:03:39 +0100 Tim-Philipp Müller * configure.ac: * docs/libs/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: Remove -DGST_USE_UNSTABLE_API 2012-09-14 02:18:52 +0900 Javier Jardón * tests/examples/snapshot/snapshot.c: tests/examples/snapshot/snapshot.c: get caps from the sample pull-preroll signal returns a GstSample, not a GstBuffer https://bugzilla.gnome.org/show_bug.cgi?id=684063 2012-09-17 13:18:29 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * gst/playback/gstsubtitleoverlay.c: gst: Update for link/unlink function API change 2012-09-17 12:07:30 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update docs and fix build a bit more Don't try to include plugin that doesn't exist any longer (merged into the playback plugin). 2012-09-15 22:08:30 +0200 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update spec file with latest changes and switch to F18 package naming 2012-09-15 18:57:09 +0200 Mark Nauwelaerts * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: * tests/examples/encoding/gstcapslist.c: * tests/examples/seek/jsseek.c: use gst_element_factory_get_metadata to replace obsolete API 2012-09-14 17:53:21 +0200 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbistag.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/id3v2.c: * gst/audiotestsrc/gstaudiotestsrc.c: * tests/check/elements/vorbisdec.c: * tests/check/elements/vorbistag.c: * tests/check/libs/audiocdsrc.c: * tests/check/libs/pbutils.c: * tests/check/libs/tag.c: * tests/check/libs/xmpwriter.c: replace gst_tag_list_free with gst_tag_list_unref 2012-09-14 17:08:49 +0200 Mark Nauwelaerts * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 17:02:53 +0200 Mark Nauwelaerts * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: * tests/check/elements/videoscale.c: * tests/check/libs/audiocdsrc.c: replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 16:06:50 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: audio: improve property description Improve the description of the latency-time and buffer-time properties in the audio sink and source. 2012-09-14 14:53:16 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't output an (unreffed) buffer in error cases 2012-09-14 13:39:20 +0200 Wim Taymans * gst-libs/gst/video/convertframe.c: * tests/examples/app/appsink-src.c: fix for appsink GstFlowReturn 2012-09-14 13:31:36 +0200 Wim Taymans * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: appsink: add GstFlowReturn from signal handler Expect a GstFlowReturn from the signal handler, just like from the callback. Also use the return value. 2012-09-14 13:19:45 +0200 Wim Taymans * docs/design/design-decodebin.txt: * docs/design/design-encoding.txt: * docs/design/draft-subtitle-overlays.txt: * gst/videoscale/README: * tests/examples/app/appsink-src.c: * tests/examples/audio/audiomix.c: * tests/examples/dynamic/codec-select.c: * tests/examples/dynamic/sprinkle.c: * tests/examples/dynamic/sprinkle2.c: * tests/examples/dynamic/sprinkle3.c: * tests/examples/encoding/gstcapslist.c: * tests/examples/seek/jsseek.c: * tests/examples/snapshot/snapshot.c: * tests/icles/input-selector-test.c: * tests/icles/test-scale.c: * tests/icles/test-textoverlay.c: fix caps 2012-09-12 14:11:28 +0200 Andreas Frisch * gst/playback/gstsubtitleoverlay.c: playbin: subtitleoverlay: don't segfault in incorrectly init'ed plugins https://bugzilla.gnome.org/show_bug.cgi?id=683865 2012-09-14 02:57:01 +0100 Tim-Philipp Müller * configure.ac: Back to development === release 0.11.94 === 2012-09-14 02:47:54 +0100 Tim-Philipp Müller * ChangeLog: * configure.ac: * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/video/video-orc-dist.c: * gst-plugins-base.doap: * gst/adder/gstadderorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/volume/gstvolumeorc-dist.c: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: Release 0.11.94 2012-09-14 01:34:01 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update docs 2012-09-14 01:33:36 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2012-09-14 00:16:23 +0100 Tim-Philipp Müller * gst/playback/gststreamsynchronizer.c: streamsynchronizer: don't shadow function parameter 2012-09-13 17:11:56 -0400 Olivier Crête * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudioringbuffer.c: audio: Fix annotations 2012-09-13 12:01:41 +0200 Wim Taymans * docs/design/draft-subtitle-overlays.txt: docs: ffmpegcolorspace is no more 2012-09-10 18:44:56 -0700 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Handle GAP events Drain out the decoder when encountering a gap. Needed for DVD 'still' sequences which consist of a single video frame, and a large gap while audio plays. 2012-09-02 23:19:09 -0700 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: Fix still-frame handling. Still frame events are not OOB downstream. Also, always send immediately downstream. 2012-09-12 21:32:04 +0200 Stefan Sauer * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/xmpwriter.c: * tests/check/libs/tag.c: * tests/check/libs/xmpwriter.c: * win32/common/libgsttag.def: xmptag: migrate to the _full version of the API and drop the _full postfix Fix up all invocations. 2012-09-12 21:03:21 +0200 Stefan Sauer * ext/ogg/gstoggmux.c: * gst/adder/gstadder.c: collectpads: remove gst_collect_pads_add_pad_full Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all invocations. 2012-09-12 12:54:07 +0200 Mark Nauwelaerts * tests/check/elements/audiotestsrc.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videotestsrc.c: tests: port to the new GLib thread API 2012-09-12 09:10:35 +0200 Peter Korsgaard * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus + jpegformat: unbreak non-debug build opus + jpegformat plugin builds fail when gstreamer is configured with --disable-gst-debug as they are checking the GST_DISABLE_DEBUG symbol instead of GST_DISABLE_GST_DEBUG. Signed-off-by: Peter Korsgaard https://bugzilla.gnome.org/show_bug.cgi?id=683850 2012-09-12 10:12:25 +0200 Wim Taymans * tests/check/elements/videoscale.c: tests: fix unit test Add support for I422_10 2012-09-12 09:54:53 +0200 Michael Smith * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-info.c: video: Add support for 4:2:2 10 bit video. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683838 2012-09-11 18:02:28 -0400 Olivier Crête * tests/check/elements/opus.c: test: Flush opus encoder between tests 2012-09-11 18:01:58 -0400 Olivier Crête * tests/check/elements/opus.c: test: Flush opus encoder between tests 2012-09-11 20:53:16 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: tagdemux: also read tags if downstream activates us in pull mode right away Fix reading of tags for the case filsrc ! footagdemux ! fooparse ! .. where we would not read the tags because we never start our own streaming thread. https://bugzilla.gnome.org/show_bug.cgi?id=673185 2012-09-11 17:36:36 +0200 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: * gst-libs/gst/tag/gsttagdemux.c: ext, gst-libs: only activate in pull mode if upstream is seekable 2012-09-11 16:28:26 +0200 Edward Hervey * gst/subparse/gstsubparse.c: subparse: Call default query handler 2012-09-11 16:27:24 +0200 Edward Hervey * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Don't wait on non-time streams streams with non-TIME segments will not have timestamps ... ... and therefore will never unblock the other streams. Fixes blocking issue when using playbin suburi feature 2012-09-11 14:31:49 +0200 Mark Nauwelaerts * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: port to the new GLib thread API 2012-09-11 12:53:01 +0200 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: don't do alignment on the palette Don't align the palette data. Fixes endless loop when trying to align paletted formats. 2012-09-11 10:56:43 +0200 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: improve handling of navigation events Only make the navigation event writable when we need to change it. 2012-09-11 01:43:37 +0100 Tim-Philipp Müller * tests/check/libs/struct_x86_64.h: tests: fix up libsabi test structure sizes for x86-64 2012-09-11 01:31:54 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-ogg.xml: * gst/gdp/Makefile.am: * gst/gdp/README: * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/dp-private.h: * gst/gdp/gstgdp.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/pipelines/.gitignore: * tests/check/pipelines/streamheader.c: gdp: move gdp plugin to -bad It needs to be reworked for 1.0 2012-09-10 21:20:17 +0100 Tim-Philipp Müller * win32/common/libgstaudio.def: win32: add new ringbuffer API to exports file 2012-09-10 17:13:34 +0200 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: tagdemux: operate in pull mode When we are operating in pull mode, we need to pull from upstream and push downstream. Also make sure to push tags first. 2012-09-10 14:00:35 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.h: video: add some padding ... and clean up some related resolved FIXMEs 2012-09-10 12:45:28 +0200 Mark Nauwelaerts * gst/videoscale/vs_image.c: videoscale: remove defunct commented code 2012-09-10 12:45:17 +0200 Mark Nauwelaerts * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: tcp: adjust comment style 2012-09-10 12:12:48 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiobasesrc.c: audiosrc: check for flushing state in provide_clock Only provide a clock when we are not flushing, this means that we have posted a PROVIDE_CLOCK message. We used to check if we were acquired but that doesn't work anymore now that we do the negotiation async in the streaming thread: it's possible that we are still negotiating when the pipeline asks us for a clock. 2012-09-10 12:12:26 +0200 Wim Taymans * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: ringbuffer: add method to check the flushing state 2012-09-10 11:41:22 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/video/colorbalance.h: * gst-libs/gst/video/gstvideosink.h: gst-libs: restore original full padding 2012-09-10 11:26:38 +0200 Pontus Oldberg * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiosrc.h: ringbuffer: add support for timestamps Make it possible for subclasses to provide the timestamp (as an absolute time against the pipeline clock) of the last read data. Fix up alsa to provide the timestamp received from alsa. Because the alsa timestamps are in monotonic time, we can only do this when the monotonic clock has been selected as the pipeline clock. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=635256 2012-09-10 11:20:34 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audio{de,en}coder: use GstClockTime parameters where appropriate Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683672 2012-09-10 01:26:57 +0100 Tim-Philipp Müller * ext/libvisual/gstaudiovisualizer.c: * gst-libs/gst/video/gstvideoencoder.c: Remove some #define GLIB_DISABLE_DEPRECATION_WARNINGS that are no longer needed 2012-09-10 01:26:20 +0100 Tim-Philipp Müller * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimagesink: port to new GLib thread API 2012-09-10 01:16:41 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: don't clear/free GCond twice 2012-09-10 01:10:33 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: port to new GLib thread API 2012-09-10 01:10:24 +0100 Tim-Philipp Müller * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: playback: port to new GLib thread API 2012-09-10 01:08:51 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: port to new GLib thread API 2012-09-10 01:06:51 +0100 Tim-Philipp Müller * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: alsa: port to new GLib thread API 2012-09-10 01:03:52 +0100 Tim-Philipp Müller * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: ximagesink: port to the new GLib thread API 2012-09-09 20:36:05 -0300 Thibault Saunier * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: port to the new GLib thread API 2012-09-09 20:34:56 -0300 Thibault Saunier * gst-libs/gst/video/convertframe.c: video: port to the new GLib thread API 2012-09-09 20:34:47 -0300 Thibault Saunier * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audio: port to the new GLib thread API 2012-09-09 20:34:35 -0300 Thibault Saunier * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: app: port to the new GLib thread API 2012-09-10 00:28:15 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/riff/riff-media.c: * tests/check/libs/pbutils.c: video/x-3ivx -> video/mpeg, mpegversion=4 2012-09-09 21:11:20 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: extract audio depth correctly But we should only do that if it comes straight from a container or wavparse, not if it comes from a decoder, otherwise it's probably not really meaningful. 2012-09-09 19:48:54 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: reflow some code to avoid gst-indent ping-pong 2012-09-09 18:48:55 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-ivorbisdec.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update plugin docs 2012-09-09 18:36:49 +0100 Tim-Philipp Müller * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggdemux.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/glib-compat-private.h: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/video/convertframe.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Remove glib-compat-private.h stuff we don't need any more It's all been ported to the latest GLib API now. 2012-09-09 18:29:40 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * tests/check/libs/pbutils.c: install-plugins: constify _install_*sync() details array arguments 2012-09-09 18:20:45 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: update .def file for video overlay API additions 2012-09-09 18:05:55 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: dump bytes into debug log using GST_MEMDUMP Instead of home-grown solution. 2012-09-09 15:58:36 +0100 Tim-Philipp Müller * gst/audiorate/gstaudiorate.c: audiorate: default to tolerance = 40ms instead of 0 People expect audiorate to fix things up and not make things worse by default, so let's default to a similar tolerance as audiosinks do. Should help with transcoding and the like, though one might possible still want higher values then. 2012-09-09 15:12:14 +0100 Tim-Philipp Müller * gst/videoconvert/gstvideoconvert.c: videoconvert: fix up dither method enum GType name for consistency 2012-09-09 02:00:49 +0100 Tim-Philipp Müller * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultisocketsink.c: multi{fd,socket}sink: rename client-handle-removed signal to client-{fd,socket}-removed 2012-09-09 01:20:38 +0100 Tim-Philipp Müller * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multifdsink, multisocketsink: fix broken action signal setup We can't just make a vfunc that takes a union of int and pointer as argument, and then set up subclass-specific action signals and signals that take int (in multifdsink's case) or a GSocket * (in multisocketsink's case), and then expect everything to Just Work. This blows up spectacularly on PPC G4 for some reason. Fixes multifdsink unit test on PPC, and fixes aborts in multisocketunit test (now hangs in gst_pad_push - progress). 2012-09-09 00:18:16 +0100 Tim-Philipp Müller * tests/check/elements/multisocketsink.c: tests: fix socket leaks in multisocketsink unit test 2012-09-08 22:56:56 +0100 Tim-Philipp Müller * ext/libvisual/gstaudiovisualizer.c: libvisual: fix crashes and invalid writes in totem This reverts part of "visual: enable commented out code again." (commit 8222ba16c8f671dc03e24e7b60e3e703046e58c1). The shader code does indeed look broken (or rather, it makes assumptions that are not necessarily true here, namly that pixel stride is 4, for example), which makes totem very crashy and causes other weird behaviour. Also see https://bugzilla.gnome.org/show_bug.cgi?id=683527 2012-09-07 17:41:27 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: only set invalid DTS equal to PTS for keyframe Also add a bit more debug. See also https://bugzilla.gnome.org/show_bug.cgi?id=679443 2012-09-07 01:39:38 +0100 Tim-Philipp Müller * tests/check/elements/audioresample.c: tests: fix audioresample unit test for big-endian systems 2012-09-07 01:26:50 +0100 Tim-Philipp Müller * tests/check/elements/audiorate.c: tests: fix audiorate unit test on big-endian systems 2012-09-07 01:23:07 +0100 Tim-Philipp Müller * tests/check/pipelines/simple-launch-lines.c: tests: fix simple-launch-lines unit test on big-endian systems audiotestsrc only does native endianness. 2012-09-06 18:16:54 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: error out if no CAPS event was received before buffers Most payloaders set/send their own output format from the setcaps function, so if we don't get input caps, things probably wont' work right, even if the input format is fixed (as in the case of the mpeg-ts payloader for example). https://bugzilla.gnome.org/show_bug.cgi?id=683428 2012-09-06 17:47:01 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: assume input caps are accepted if subclass has no set_caps vfunc Not that anyone should ascribe too much meaning to these return values in the age of sticky caps. 2012-09-06 15:04:33 +0200 Mark Nauwelaerts * tests/check/elements/playbin.c: tests: playbin: do not leak uri strings 2012-09-06 15:03:49 +0200 Mark Nauwelaerts * gst/playback/gststreamsynchronizer.c: streamsynchronizer: do not leak EOS events 2012-09-06 13:58:28 +0200 Mark Nauwelaerts * gst/audioconvert/gstaudioconvert.c: audioconvert: plug leak 2012-09-06 13:35:33 +0200 Wim Taymans * gst/playback/gststreamsynchronizer.c: streamsync: only remove DISCONT when needed Check if the buffer is DISCONT before making a potentially expensive copy to unset the DISCONT flag. 2012-09-06 13:04:56 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: plug some leaks 2012-09-06 12:15:59 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: plug some leaks 2012-09-05 16:59:12 +0200 Mark Nauwelaerts * gst/playback/gststreamsynchronizer.c: streamsynchronizer: use GAP event to trigger preroll ... rather than an empty buffer 2012-09-05 15:13:26 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: add missing break 2012-09-05 12:00:50 +0200 Mark Nauwelaerts * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtpbasedepay: indicate packet loss using GAP event 2012-09-05 11:42:05 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: handle GAP event to update text position 2012-09-05 11:41:44 +0200 Mark Nauwelaerts * ext/ogg/gstoggmux.c: oggmux: remove dead code 2012-09-05 11:41:35 +0200 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: oggdemux: send GAP event ... in stead of old update newsegment event. 2012-09-05 09:46:16 +0200 Mark Nauwelaerts * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * tests/check/libs/video.c: * win32/common/libgstvideo.def: videooverlaycomposition: add some _get_argb and _get_ayuv functions ... that will handle automatic conversion to indicated format. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683180 2012-09-04 12:18:11 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: update for basesink change 2012-09-04 11:09:50 +0200 Wim Taymans * gst/playback/gststreamsynchronizer.c: streamsync: unblock gcond on flush-stop See https://bugzilla.gnome.org/show_bug.cgi?id=680441 2012-09-04 10:03:25 +0200 Wim Taymans * gst/playback/gstplaysink.c: playsink: unblock pads before releasing Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679823 2012-09-03 18:57:00 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: tests: make git ignore streamsynchronizer test binary 2012-09-02 22:32:12 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/riff/riff-media.c: * tests/check/libs/pbutils.c: video/x-xvid -> video/mpeg,mpegversion=4 2012-09-02 23:19:09 -0700 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: On a still-frame begin message, drain out the decoder and send it. Fixes still frame handling on DVDs 2012-09-02 22:59:58 -0700 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: Revert "videodecoder: Send serialised events immediately, after we're pre-rolled." This reverts commit ef5316fbb0f6d5ffad7be18ed36903a89341c4de. 2012-09-02 03:39:51 +0100 Tim-Philipp Müller * docs/design/part-mediatype-text-raw.txt: docs: add design doc for text/x-raw format 2012-09-02 02:41:34 +0100 Tim-Philipp Müller * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/encoding/gstencodebin.c: * gst/playback/gstrawcaps.h: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/icles/playbin-text.c: text/plain + text/x-pango-markup -> text/x-raw 2012-09-02 01:27:17 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: gst_message_new_duration() -> gst_message_new_duration_changed() 2012-08-31 12:42:12 -0700 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Handle GAP events in place of segment updates Use them to trigger generation of an empty output buffer or to send pending events downstream and trigger pre-roll 2012-08-31 12:40:36 -0700 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Send serialised events immediately, after we're pre-rolled. Only hold back events until the first buffer is generated, then just send them directly. Otherwise, important events like 'still-frame' are held forever, waiting for a frame that'll never arrive. 2012-08-30 16:54:17 -0700 Edward Hervey * tests/check/elements/playbin-compressed.c: check: Don't fail on GST_MESSAGE_WARNING we will get some because some elements aren't present. If the availability of those elements was critical, we will eventually get an error message 2012-08-30 20:22:32 +0200 Wim Taymans * ext/libvisual/gstaudiovisualizer.c: audiovis: add more debug 2012-08-30 13:23:42 +0200 Mark Nauwelaerts * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: videooverlaycomposition: also adjust docs and API defs to modified API 2012-08-30 12:09:47 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: adjust to modified video overlay composition API 2012-08-30 12:09:27 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * tests/check/libs/video.c: videooverlaycomposition: allow more formats for rectangle pixel data ... adding AYUV, and allowing for ARGB or RGBA endian-independent. 2012-08-29 19:23:57 +0100 Tim-Philipp Müller * gst/encoding/gstencodebin.c: encodebin: rename flags type name 2012-08-28 14:19:19 +0200 Mark Nauwelaerts * ext/theora/gsttheoradec.c: theoradec: reset freed input and output states Conflicts: ext/theora/gsttheoradec.c 2012-08-24 22:12:48 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: videodecoder: parsing loop must ensure for a current frame 2012-08-07 13:25:03 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: videooverlaycomposition: stricter check on input variables 2012-08-26 22:25:32 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: playbin: automatically deinterlace interlaced content by default 2012-08-24 17:21:58 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-format.h: docs: add docs for some of the video info macros 2012-08-24 16:56:00 +0200 Wim Taymans * gst-libs/gst/video/gstvideoencoder.c: videoencoder: allow 0 sized output frames Allow 0 sized frames in gst_video_encoder_allocate_output_frame(). Theora encodes repeat frames, for example, as 0 sized buffers. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681196 2012-08-22 13:29:51 +0200 Stefan Sauer * common: Automatic update of common submodule From 668acee to 4f962f7 2012-08-22 13:17:08 +0200 Stefan Sauer * configure.ac: configure: bump gtk-doc req to 1.12 (mar-2009) This allows us to e.g. unconditionally use gtkdoc-rebase. 2012-08-22 09:20:55 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: fix buffer leak when gst_rtp_buffer_map() fails because of broken data Makes libs/rtp unit test valgrind clean. 2012-08-22 09:46:38 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: rtp: Fix extension data support Allocate header, payload and padding in separate memory blocks in gst_rtp_buffer_allocate(). don't use part of the payload data as storage for the extension data but store it in a separate memory block that can be enlarged when needed. Rework the one and two-byte header extension to make it reserve space for the extra extension first. Fix RTP unit test. Don't map the complete buffer or make assumptions on the memory layout of the underlaying implementation. We can now always add extension data because we have a separate memory block for it. 2012-08-21 11:49:36 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: fix extension length calculation 2012-08-21 11:48:33 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtp: remove unused field 2012-08-21 22:51:38 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: fix bad unref and crashes with multiple text overlays gst_element_class_get_pad_template() does not return a ref, so we mustn't unref the template returned. Fixes crashes when switching back and forth between different types of subtitle streams. 2012-08-21 10:04:41 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: add new video align API to .def file 2012-08-20 21:35:03 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/encoding/gstencodebin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstrawcaps.h: * gst/playback/gstsubtitleoverlay.c: * tests/check/libs/pbutils.c: video/x-dvd-subpicture -> subpicture/x-dvd 2012-08-20 16:17:27 +0200 Wim Taymans * gst-libs/gst/video/video-frame.c: video-frame: only copy the visible region Make sure to only copy the visible region instead of assuming that the complete stride is visible (which is not the case when padding is used). 2012-08-20 16:14:07 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.c: videometa: add more debug 2012-08-20 16:13:00 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: X11: add unpadded width/height as videometa We need to add the real width/height as the values in the video metadata instead of the padded values. 2012-08-20 11:19:37 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: X11: use new alignment function Remove some custom padding and alignment functions and replace with the new align function from the video library. 2012-08-20 11:12:31 +0200 Wim Taymans * gst-libs/gst/video/video-info.c: video-info: update padding Update the alignement structure with the new padding values because they could have been changed when the padding was increased to align the strides. 2012-08-20 10:50:59 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: expose gst_video_info_align Expose the gst_video_info_align function that adds padding and does stride alignment on a GstVideoInfo. Move this previously private function to video-info.co Move the definition of the alignment structure to video.h where it can be picked up by both the bufferpool and the video-info. 2012-08-20 10:16:59 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: videopool: improve alignment Check the alignment of the strides in gst_video_info_align and increase the padding on the frame until the strides are aligned. 2012-08-20 10:03:09 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: videopool: improve alignment Align each plane instead of each component, we might otherwise apply the alignment adjustement twice if a plane contains multiple components. 2012-08-13 16:42:32 +0200 Wim Taymans * gst-libs/gst/video/video-format.h: video-format: fix docs a little 2012-08-19 17:05:04 +0100 Tim-Philipp Müller * tools/Makefile.am: toos: fix build and distcheck some more The .in file is gone now. 2012-08-18 21:36:09 +0100 Tim-Philipp Müller * tools/.gitignore: * tools/Makefile.am: * tools/gst-discoverer-1.0.1: * tools/gst-visualise-m.m: * tools/gst-visualise.1.in: tools: remove gst-visualise script Bit pointless really and clearly unused since the 0.8 days. Also simplify Makefile while we're at it. 2012-08-18 21:33:38 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscale.c: videoscale: mark Lanczos method as experimental/unstable It's known to crash in some circumstances. 2012-08-18 21:18:57 +0100 Tim-Philipp Müller * tools/.gitignore: * tools/gst-launch-ext.1.in: * tools/gst-visualise.1.in: tools: remove man page for tool that no longer exists 2012-08-18 21:15:24 +0100 Tim-Philipp Müller * tools/README.filterstamp: * tools/filterstamp.sh: tools: remove obsolete filterstamp.sh script There's gst-element-maker in -bad now. 2012-08-18 21:13:01 +0100 Tim-Philipp Müller * tools/Makefile.am: * tools/gst-discoverer.1.in: tools: add basic man page for gst-discoverer https://bugzilla.gnome.org/show_bug.cgi?id=681905 2012-08-17 22:54:13 +0100 Tim-Philipp Müller * tools/gst-discoverer.c: discoverer: remove unused 'silent' command line option 2012-08-17 23:03:52 +0200 Stefan Sauer * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: visual: enable commented out code again. Finish the last change and reenable the shader code. 2012-08-16 12:12:54 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: docs: Add new video API to the docs 2012-08-16 12:12:06 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: video: Add methods to return a list of all pending GstVideoCodecFrames 2012-08-16 00:11:00 +0100 Tim-Philipp Müller * gst-libs/gst/fft/kiss_fftr_f32.c: * gst-libs/gst/fft/kiss_fftr_f64.c: * gst-libs/gst/fft/kiss_fftr_s16.c: * gst-libs/gst/fft/kiss_fftr_s32.c: fft: shouldn't ever call exit() Libraries shouldn't ever just call exit(). Let's hope we'll remember to cherry-pick this commit again if we ever update these files. https://bugzilla.gnome.org/show_bug.cgi?id=681904 2012-08-14 18:53:52 +0200 Edward Hervey * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: Handle stream switching * Update outgoing segment.base with accumulated time, ensuring all streams are synchronized. * Only consider streams as "new" is they have a STREAM_START event with a different seqnum. * Use GstStream segment.base instead of separate variable to store the past running time. * Disable passthrough * Switch to glib 2.32 GMutex/GCond * Avoid getting pad parent the expensive way * Minor other fixes 2012-08-14 18:50:39 +0200 Edward Hervey * tests/check/Makefile.am: * tests/check/elements/streamsynchronizer.c: check: Add streamsynchronizer unit test 2012-08-14 18:53:04 +0200 Edward Hervey * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Avoid resetting ringbuffer when not needed If the ringbuffer was configured to the same caps as previously, we don't need to reconfigure it. 2012-08-14 15:48:45 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstaudio.def: * win32/common/libgstvideo.def: audio/video: Add new API to the docs 2012-08-07 17:24:33 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: getter for allocator Sometimes the decoder would use the allocator for something else than just allocating output buffers, for example, querying different parameters. This patch expose a getter accessor for the negotiated memory allocator. 2012-08-07 17:21:53 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: getter for allocator Sometimes the encoder would use the allocator for something else than just allocating output buffers, for example, querying different parameters. This patch expose a getter accessor for the negotiated memory allocator. 2012-08-07 17:19:05 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: getter for allocator Sometimes the encoder would need to use the allocator for something else than just allocating output buffers, for example, querying different parameters. This patch expose a getter accessor for the negotiated memory allocator. 2012-08-06 20:18:30 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: getters for pool and allocator Sometimes the decoder would need to use the pool or the allocator for something else than just allocating output buffers. For example, the querying for different parameters, such as asking for a bigger number of buffers to allocate in the pool. This patch expose a two getters accessors: one for the buffer pool and the other for the memory allocator. 2012-08-13 23:32:59 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: return TRUE from _set_output_format() if all is good Fixes not-negotiated errors in wavpackenc unit test. 2012-08-13 13:47:01 +0200 Wim Taymans * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: * ext/libvisual/visual.c: visual: add support for GstVideoFrame Add support for GstVideoMeta and GstVideoFrame. Remove some redundant fields that are also in GstVideoInfo Disable the shader code, it looks broken. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681719 2012-08-13 11:55:58 +0200 Wim Taymans * ext/libvisual/gstaudiovisualizer.c: visualizer: small cleanup 2012-08-13 11:51:45 +0200 Wim Taymans * ext/libvisual/visual.c: visual: remove channel mask We don't really care about what's inside those channels. This also makes the caps valid because now it's no longer possible to have channels=1 and a mask of 0x3. 2012-08-13 11:27:47 +0200 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: discovere: also parse encoded formats The video library can now also parse encoded formats so use this to fill up the width/height and other properties. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681535 2012-08-13 11:27:26 +0200 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: remove \n from debug statement 2012-08-12 18:10:02 +0100 Tim-Philipp Müller * tests/check/libs/struct_i386.h: tests: update structure sizes for ABI test for i386 2012-08-12 09:57:11 +0200 Stefan Sauer * ext/ogg/gstoggmux.c: oggmux: remove superflous assignment 2012-07-30 15:38:45 +0200 Stefan Sauer * ext/libvisual/visual.c: visual: add a FIXME as the discussion in IRC discontinued 2012-08-11 10:18:37 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: oggdemux: set HEADER flag on header packets https://bugzilla.gnome.org/show_bug.cgi?id=681499 2012-08-11 09:53:49 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: don't leak dropped seek event 2012-08-11 08:14:27 +0100 Tim-Philipp Müller * tests/check/libs/struct_x86_64.h: tests: update libsABI test to new structure sizes The offset field addition in GstSegment has added a few bytes. 2012-08-10 17:08:31 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: docs: expand GstDiscoverer::discovered signal docs a little 2012-06-29 15:46:46 -0700 Evan Nemerson * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: appsink, appsrc: skip set_callbacks APIs for introspection https://bugzilla.gnome.org/show_bug.cgi?id=678301 2012-08-10 16:58:47 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x11: fix alignment in non-XSHM case Align the allocated memory to 16 bytes. When doing XSHM we are already aligned to a page boundary but without, we use plain g_malloc, which could allocate aligned on 8 bytes only. See https://bugzilla.gnome.org/show_bug.cgi?id=680796 2012-08-10 11:45:38 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: don't block in buffer acquire Don't ever block when acquiring a buffer from the bufferpool in the fallback mode. If we block, we might deadlock when going to PAUSED because we never unlock when going to paused. The acquire can block when there are no more buffers in the pool, this is a sign that the pool is too small. Since we are the only ones using the pool in the fallback case and because we scale the buffer, someone else must be using our pool as well and is doing something bad. 2012-08-10 10:45:09 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: pick delta pad earlier during header parsing and based on video/non-video Pick delta pad earlier during header parsing, and pick it based on whether it's a video stream or not rather than some rather byzantine signalling from theoraenc etc. which would set the delta flag on header packets which oggmux would then pick up and determine that this is a "delta-able" stream. Since the new videodecoder-based theoraenc didn't do that any more, we would only see the first delta flag on the second video packet, which is after we've already muxed a few audio packets flagged as key units, which trips up the unit test. Fixes pipelines/oggmux unit test. https://bugzilla.gnome.org/show_bug.cgi?id=679958 2012-08-09 19:57:49 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: videodecoder: fix seeking again Add missing break in FLUSH_STOP case. 2012-08-09 17:06:31 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Let global tag events be handled the same way as other events 2012-08-09 16:55:19 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Let global tag events be handled the same way as other events 2012-08-09 16:24:47 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Merge upstream stream tags 2012-08-09 16:19:32 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: Merge upstream stream tags 2012-08-09 16:09:46 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: Use new video decoder tag API 2012-08-09 16:03:25 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstvideo.def: docs: Add new video API to the docs 2012-08-09 16:02:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add API to conveniently handle tags 2012-08-09 16:02:15 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add API to conveniently handle tags 2012-08-09 15:48:03 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Always keep a complete taglist around Otherwise updates to the tags will cause non-updated tags to be lost downstream. 2012-08-09 15:30:30 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * win32/common/libgstaudio.def: docs: Add new audio base classes API to the docs 2012-08-09 15:27:33 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Add negotiate vfunc that is used to negotiate with downstream The default implementation negotiates a buffer pool and allocator with downstream. 2012-08-09 15:20:45 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Decouple setting of output format and downstream negotiation This makes the audio encoder base class more similar to the video encoder base class. 2012-08-09 15:07:18 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Add negotiate vfunc that is used to negotiate with downstream The default implementation negotiates a buffer pool and allocator with downstream. 2012-08-09 15:02:27 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Decouple setting of output format and downstream negotiation This makes the audio decoder base class more similar to the video decoder base class. 2012-08-09 14:39:18 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add negotiate vfunc that is used to negotiate with downstream The default implementation negotiates a buffer pool and allocator with downstream. 2012-08-09 14:35:22 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add negotiate vfunc that is used to negotiate with downstream The default implementation negotiates a buffer pool and allocator with downstream. 2012-08-09 00:54:30 +0100 Tim-Philipp Müller * tests/check/elements/vorbisdec.c: tests: fix vorbisdec test There won't be a tag messages on the bus, because tags are now sent downstream for sinks to post on the bus, and there's no sink involved here that would do that. Secondly, the audio decoder base class only sends the tags out once it has received some non-header data as input, which is not something we're providing here. 2012-08-08 16:12:20 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideofilter.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: gst: Set alignment at the correct place of GstAllocationParams 2012-08-08 15:07:49 +0200 Andoni Morales Alastruey * ext/ogg/gstoggdemux.c: oggdemux: add proper cast for print 2012-08-08 14:59:49 +0200 Andoni Morales Alastruey * gst-libs/gst/video/gstvideoencoder.c: videoencoder: add proper format for gsize 2012-08-08 14:55:56 +0200 Andoni Morales Alastruey * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: use proper format for gsize 2012-08-08 15:28:52 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Always propose a video buffer pool when the subclass didn't provide one And also request 16-byte aligned buffers if the subclass didn't set anything else. 2012-08-08 16:21:22 +0100 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: Back to development === release 0.11.93 === 2012-08-08 15:08:33 +0100 Tim-Philipp Müller * configure.ac: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.11.93 2012-08-08 13:04:32 +0300 Sreerenj Balachandran * gst/videoconvert/gstvideoconvert.c: videoconvert: fix example pipeline in docs There is no more 'fourcc' typecast for format. https://bugzilla.gnome.org/show_bug.cgi?id=681436 2012-08-08 12:19:31 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideofilter.c: videofilter: Really add a buffer pool if none was provided And also use the allocation parameters from the query if any and if there are none set our own (16-byte alignment) on the query. 2012-08-08 12:06:45 +0300 Sreerenj Balachandran * gst-libs/gst/video/gstvideofilter.c: videofilter: Fix the crash in propose_allocation Always set a buffer pool if none is provided and don't set/unref a NULL buffer pool on the query. https://bugzilla.gnome.org/show_bug.cgi?id=681436 2012-08-08 10:19:20 +0100 Tim-Philipp Müller * ext/alsa/gstalsa.c: * tests/examples/playback/playback-test.c: Silence some 'variable may be used uninitialized' compiler warnings when compiling with -DG_DISABLE_ASSERT 2012-08-08 10:11:48 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: * gst-libs/gst/tag/gstvorbistag.c: * gst/tcp/gstmultifdsink.c: * tests/check/pipelines/capsfilter-renegotiation.c: * tests/examples/playrec/playrec.c: No statements with side-effects in g_assert() or g_return_*() please 2012-08-08 09:06:30 +0100 Tim-Philipp Müller * gst-libs/gst/audio/.gitignore: * gst-libs/gst/video/.gitignore: * tests/icles/.gitignore: Update .gitignore 2012-08-07 13:58:21 -0700 Olivier Crête * ext/theora/gsttheoradec.c: theoradec: Drop ignored headers Instead of finishing an empty frame, call drop_frame as we're ignoring the header frame. 2012-08-06 17:28:06 +0400 Руслан Ижбулатов * docs/libs/Makefile.am: docs: Add proper libraries to GST_LIBS instead (-base) 2012-08-06 15:23:51 +0400 Руслан Ижбулатов * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: Add source-setup signal for GstDiscoverer https://bugzilla.gnome.org/show_bug.cgi?id=681260 2012-08-04 12:28:45 +0200 Sebastian Dröge * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Add stream-id to stream-start event 2012-08-04 12:16:44 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Add stream-id to the stream-start event 2012-08-05 17:25:59 +0100 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: remove custom tcase_skip_broken_test define which is now in core 2012-08-05 17:21:31 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscale.c: * tests/check/elements/videoscale.c: tests: silence FIXMEs when running videoscale unit test 2012-08-05 16:37:55 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 94ccf4c to 668acee 2012-08-05 14:39:01 +0100 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: video: make sure g-i doesn't parse orc-generated video-orc.h file It's not public API. 2012-08-04 23:29:27 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/pbutils-marshal.list: pbutils: use generic marshaller for discoverer's "discovered" signal If this change causes build issues, run git clean -x -d -f; ./autogen.sh 2012-08-04 23:09:06 +0100 Tim-Philipp Müller * gst/encoding/.gitignore: * gst/encoding/Makefile.am: * gst/encoding/gstencode-marshal.list: * gst/encoding/gstencodebin.c: * gst/encoding/gstencodebin.h: encodebin: use generic marshaller for signal 2012-08-05 00:41:10 +0100 Tim-Philipp Müller * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: send CAPS event downstream fixing not-negotiated errors Make sure to send a CAPS event downstream when we get our first input caps. This fixes not-negotiated errors and adder use with downstream elements other than fakesink. Even gst-launch-1.0 audiotestsrc ! adder ! pulsesink works now. Also, flag the other sink pads as FIXED_CAPS when we receive the first CAPS event on one of the sink pads (in addition to setting those caps on the the sink pads), so that a caps query will just return the fixed caps from now on. There's still a race between other upstreams checking if caps are accepted and sending a first buffer with possibly different caps than the first caps we receive on some other pad, but such is life. Also need to take into account optional fields better/properly. https://bugzilla.gnome.org/show_bug.cgi?id=679545 2012-08-04 22:25:08 +0100 Tim-Philipp Müller * tests/check/elements/adder.c: tests: add adder test to check that caps are sent downstream 2012-08-04 20:45:02 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_4tap.c: * tests/check/elements/videoscale.c: videoscale: fix 4-tap scaling for 64-bpp formats Fix invalid memory access caused by broken pointer arithmetic. If we have a uint16_t *tmpbuf and add n * dest->stride to it, we skip twice as much as we intended to because dest->stride is in bytes and not in pixels. This made us write beyond the end of our allocated temp buffer, and made the unit test crash. 2012-08-04 19:08:20 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscale.h: * gst/videoscale/vs_4tap.h: * gst/videoscale/vs_fill_borders.h: * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.h: videoscale: sprinkle some G_GNUC_INTERNAL Not sure it actually makes any difference for plugins though. 2012-08-04 18:51:12 +0100 Tim-Philipp Müller * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: make 4tap scanline funcs static 2012-08-04 19:33:32 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-read.c: riff: fix build on big endian systems 2012-08-04 16:31:30 +0100 Tim-Philipp Müller * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: gst_tag_list_free -> gst_tag_list_unref 2012-07-29 00:49:31 -0300 Thiago Santos * gst-libs/gst/app/gstappsrc.c: appsrc: send caps event when the user updates appsrc caps As buffer don't have caps anymore, the caps event needs to be pushed before buffers are pushed. 2012-08-01 17:46:46 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: fix month/day extraction in ID3v2 tags We were passing month/day in the wrong order to gst_date_time_new_ymd(). 2012-07-31 01:19:36 +0200 René Stadler * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix discover_uri returning finalized info object 2012-07-28 11:54:38 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: fix up EXIF writer for GstBuffer -> GstSample 2012-07-28 11:13:12 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: update for TOC API change 2012-07-27 23:59:31 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisdec.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagmux.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: tag: Update for taglist/tag event API changes 2012-07-27 15:21:51 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/video/gstvideodecoder.c: * gst/gdp/dataprotocol.c: update for new variable names 2012-07-27 12:58:40 +0200 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: Unblock streams on FLUSH_START events 2012-07-27 12:19:04 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: small cleanups Make function pointers NULL when nothing needs to be done. Pass target pixels to dither and matrix functions so that we can later make them operate on the target buffer memory directly. 2012-07-26 18:36:53 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.h: video: Make all frame_number guint32 Unifies the code and ensures that: * subclasses needing to use the frame_number on a void* field will always work * wraparounds will be automatically taken care of if we have to deal with more than 2**32 frames 2012-07-26 15:40:45 +0200 Wim Taymans * gst-libs/gst/audio/audio-format.c: audio-format: fix shift for 18 bits samples The 18bits of the sample are in the LSB so we need to shift them 14 positions to bring them to 32 bits. 2012-07-26 14:28:26 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video{de,en}coder: delay input caps processing until processing data Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680614 2012-07-26 14:27:38 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio{de,en}coder: delay input caps processing until processing data Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680614 2012-07-26 01:52:25 +0200 Arnaud Vrac * gst-libs/gst/video/video-frame.c: video-frame: fix invalid plane id on video frame mapping error 2012-07-25 15:51:45 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: avoid setting output caps twice ... which may not be handled or appreciated well downstream, e.g. muxers only performing header setup once. 2012-07-25 14:56:35 +0200 Mark Nauwelaerts * ext/vorbis/gstvorbisenc.c: vorbisenc: adjust to modified audioencoder getcaps helper API 2012-07-25 14:56:20 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: also consider filter caps in getcaps 2012-07-25 14:55:56 +0200 Mark Nauwelaerts * gst/audioconvert/gstaudioconvert.c: audioconvert: prefer channels of base caps when fixating ... which in turn prefers to preserve input channels when converting. 2012-07-25 14:53:28 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstvideoencoder.c: videoencoder: minor doc fix 2012-07-25 12:29:36 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: Revert "audioencoder: plug caps ref leak" This reverts commit 08ff5899a77337eb8cd674e6d36d267220c56d32. Was not a leak to begin with as we did not have ownership of caps. 2012-07-25 11:54:58 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: plug caps ref leak 2012-07-25 11:54:35 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: hold caps ref while needed 2012-07-25 11:54:14 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: correctly compare audio info positions Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680553 2012-07-24 18:37:15 +0000 Vivia Nikolaidou * docs/libs/gst-plugins-base-libs-sections.txt: docs: Add new function to the docs 2012-07-24 18:34:26 +0000 Vivia Nikolaidou * win32/common/libgstaudio.def: * win32/common/libgstvideo.def: win32: Update exported symbols list 2012-07-24 18:02:08 +0000 Vivia Nikolaidou * ext/theora/gsttheoraenc.c: theoraenc: Call video_encoder_negotiate() once configured 2012-07-24 17:23:56 +0000 Vivia Nikolaidou * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Expose _negotiate function This is to be called by encoders once they have set the output format in order for (re)negotiation to be triggered as early as possible. https://bugzilla.gnome.org/show_bug.cgi?id=679878 2012-07-24 14:48:20 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: only arrange to reconfigure if data provided ... otherwise audio format need not be known already. 2012-07-24 14:36:58 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: don't copy empty packets Don't try to copy empty packets, which contain a repeated frame in theora. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680520 2012-07-11 16:27:11 +0300 Sreerenj Balachandran * gst-libs/gst/video/video-blend.c: video-blend: Doc fix 2012-07-18 13:19:26 +0200 Marc Leeman * gst-libs/gst/rtsp/gstrtsptransport.c: gst-rtsptransports: no warning Transport end with semicolumn 2012-07-24 11:53:09 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: minor doc fix 2012-07-24 12:25:08 +0200 Wim Taymans * ext/libvisual/gstaudiovisualizer.c: audiovisualizer: fixate caps completely Call gst_caps_fixate() to make sure that the caps are completely fixated before using them as the final caps in negotiation. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680162 2012-07-24 12:02:34 +0200 Wim Taymans * sys/xvimage/xvimagesink.c: xvimagesink: calculate target rectangle correctly Use the negotiated size and PAR to center the image into the target window. See https://bugzilla.gnome.org/show_bug.cgi?id=680093 2012-07-24 11:23:30 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: match FORCE_ASPECT_RATIO default value Set the default value for FORCE_ASPECT_RATIO correctly 2012-07-24 11:13:23 +0200 Robert Swain * docs/libs/gst-plugins-base-libs-sections.txt: docs: Improve gstvideo and add GstVideoFrame Some items have been removed that are no longer in the headers 2012-07-24 10:45:58 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Mark streams as complete on CAPS event but don't block This allows the following use-cases to expose the group and pads before an ALLOCATION query comes through: * Single stream use-cases * Multi stream use-cases where all streams sent the CAPS event before the first ALLOCATION query Some cases will still make the initial ALLOCATION query fail though, which isn't optimal, but not fatal (it will recover when pads are exposed, a RECONFIGURE event is sent upstream and elements can re-send an ALLOCATION query which will reach downstream elements). https://bugzilla.gnome.org/show_bug.cgi?id=680262 2012-07-24 09:35:10 +0200 Robert Swain * docs/libs/gst-plugins-base-libs-sections.txt: docs: Build GstVideoFrame gtk docs 2012-07-24 09:26:42 +0200 Wim Taymans * tests/check/Makefile.am: tests: add audio and video orc tests 2012-07-24 09:09:22 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc.orc: * gst/videotestsrc/videotestsrc.c: videotestsrc: prefix orc functions with video_test_src_orc 2012-07-23 23:08:13 +0200 Jens Georg * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Update ownership annotation of gst_container_add_profile https://bugzilla.gnome.org/show_bug.cgi?id=680488 2012-07-23 18:50:07 +0200 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update spec file with latest changes 2012-07-23 17:30:50 +0200 Wim Taymans * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: * gst/volume/gstvolumeorc.orc: volume: prefix orc functions with volume_orc_ 2012-07-23 17:27:46 +0200 Wim Taymans * gst/adder/gstadder.c: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/adder/gstadderorc.orc: adder: prefix orc functions with adder_orc_ 2012-07-23 17:24:13 +0200 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/audioconvert/gstaudioconvertorc.orc: audioconvert: prefix orc functions with audio_convert_orc_ 2012-07-23 17:19:56 +0200 Wim Taymans * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * gst/videoconvert/gstvideoconvertorc.orc: * gst/videoconvert/videoconvert.c: videoconvert: prefix orc functions with video_convert_orc_ 2012-07-23 17:16:34 +0200 Wim Taymans * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: * gst-libs/gst/audio/gstaudiopack.orc: audio: prefix orc_* functions with audio_orc_* To avoid potential conflicts in other modules when statically linking 2012-07-23 17:13:29 +0200 Wim Taymans * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_image.c: * gst/videoscale/vs_scanline.c: videoscale: ranem gst_video_scale_orc -> video_scale_orc So that functions are not exported 2012-07-23 17:10:08 +0200 Wim Taymans * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: video: rename gst_video_orc_* to video_orc_* Because then the functions would not be exported 2012-07-23 17:03:53 +0200 Wim Taymans * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_image.c: * gst/videoscale/vs_scanline.c: videoscale: prefix orc functions with gst_video_scale_orc See https://bugzilla.gnome.org/show_bug.cgi?id=680025 2012-07-23 16:56:35 +0200 Wim Taymans * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: orc: prefix orc functions with gst_video_orc_ See https://bugzilla.gnome.org/show_bug.cgi?id=680025 2012-07-23 16:52:33 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: * gst-libs/gst/video/video-orc.orc: orc: rename to video-orc* 2012-07-23 14:23:39 +0200 Robert Swain * gst-libs/gst/video/video-frame.h: video-frame: Add missing closing brakcets on flag macros 2012-07-23 13:58:07 +0200 Wim Taymans * gst-libs/gst/video/video-frame.h: video-frame: add macros to get frame flags 2012-07-23 13:32:59 +0200 Wim Taymans * gst-libs/gst/video/video-frame.c: video-frame: use interlacing buffer flags Also use the buffer flags to enhance the GstVideoInfo flags in the case where there was metadata on the buffers. 2012-07-23 12:06:16 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Hold the stream lock when reconfiguring the element 2012-07-23 12:01:12 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: Renegotiate if necessary And also correct usage of the base class stream lock. 2012-07-23 11:50:11 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: Correct usage of the base class stream lock And also renegotiate if the srcpad requires reconfiguration 2012-07-23 11:42:22 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Handle allocation query 2012-07-23 10:30:40 +0200 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: vorbis: Update for audio base classes API changes 2012-07-23 10:28:47 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: docs: Add new audio base classes API 2012-07-23 10:28:05 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Add propose_allocation, decide_allocation vfuncs and functions to allocate buffers with information from the allocation query results 2012-07-23 10:20:05 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Add propose_allocation, decide_allocation vfuncs and functions to allocate buffers with information from the allocation query results 2012-07-23 10:19:49 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: docs: Update video base classes docs 2012-07-23 10:19:16 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: theora: Update for video base classes API changes 2012-07-23 10:18:41 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: video: Rename alloc_output_buffer() to allocate_output_buffer() 2012-07-23 10:04:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Minor cleanup 2012-07-23 09:54:50 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Fix parameters names in header 2012-07-23 09:45:11 +0200 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Use base class functions to allocate output buffers 2012-07-23 09:42:23 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: docs: Add new videodecoder/encoder API 2012-07-23 09:41:49 +0200 Sebastian Dröge * win32/common/libgstrtp.def: * win32/common/libgstvideo.def: win32: Update exported symbols list 2012-07-23 09:07:02 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add decide_allocation vfunc and functions to allocate buffers with the information from the allocation query 2012-07-23 08:45:13 +0200 Sebastian Dröge * common: Automatic update of common submodule From 98e386f to 94ccf4c 2012-07-15 23:35:07 +0200 Robert Swain * docs/design/part-interlaced-video.txt: docs: Update interlaced video docs An interlaced buffer flag has been added and some other changes in operation needed addressing since the last update to the document. 2012-07-02 12:52:17 +0100 Tim-Philipp Müller * tests/check/pipelines/streamheader.c: tests: use multifdsink for streamheader test Use multifdsink for pipes instead of multisocketsink, to avoid "creating GSocket from fd 9: Socket operation on non-socket "criticals from Gio. Test still fails, but it fails in a different way now. 2012-07-20 10:18:43 +0200 Wim Taymans * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-frame.h: video-frame: add interlace flag Add an interlace flag so that we can see if a frame is interlaced or progressive in the mixed interlace-mode. 2012-07-19 19:06:40 +0300 Anton Belka * gst-libs/gst/riff/riff-ids.h: riff: add "labl" tag Add GST_RIFF_TAG_labl which is needed for wavparse: https://bugzilla.gnome.org/show_bug.cgi?id=677306 2012-07-19 16:12:22 +0200 Edward Hervey * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Re-enable stream update Not 100% perfect yet, but allows people to test 2012-07-19 13:33:22 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-overlay-composition.c: video-overlay-composition: fix GSlice alloc/free size mismatch Fix copy'n'paste bug which made us allocate a slice of the size of a rectangle for the overlay composition, but then free it passing the size of an overlay composition, which is not something GSlice takes to kindly, resulting in scary aborts like: ***MEMORY-ERROR***: GSlice: assertion failed: sinfo->n_allocated > 0 Also, g_slice_new already includes a cast, so remove our own casts, without which the compiler would probably have told us about this ages ago. https://bugzilla.gnome.org/show_bug.cgi?id=680091 2012-07-19 12:45:17 +0200 Wim Taymans * tests/examples/playback/playback-test.c: playback-test: fix buffering query It was using the wrong values from the buffering query. 2012-07-19 10:54:07 +0200 Edward Hervey * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't assert on pad caps not being set The decoder might have been de-activated in the meantime (resulting in NULL pad caps). If the decoder really isn't configured, then it will error out further down when checking whether the GST_AUDIO_INFO_IS_VALID() https://bugzilla.gnome.org/show_bug.cgi?id=667562 2012-07-18 15:35:05 +0200 Edward Hervey * ext/theora/gsttheoradec.c: theoradec: Call video_decoder_negotiate() once configured 2012-07-18 15:34:06 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Expose _negotiate function This is to be called by decoders once they have set the output format in order for (re)negotiation to be triggered as early as possible. https://bugzilla.gnome.org/show_bug.cgi?id=679878 2012-07-18 15:26:40 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Don't push stream-start in two different locations 2012-07-18 15:24:00 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin: Block on caps event A caps event is also used to establish that a stream has prerolled. Without this, we end up allowing negotiation queries to fail, ending in decoders (and other elements) to not be configured right from the start with the most optimal settings. 2012-07-18 17:47:47 +0200 Wim Taymans * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: playback: update for ghostpad changes 2012-07-18 17:47:27 +0200 Wim Taymans * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: tests: update for step event changes 2012-07-17 13:47:02 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: adjust to modified video overlay composition API 2012-07-17 13:46:43 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * tests/check/libs/video.c: videooverlaycomposition: replace API parameters with required video meta on pixel data 2012-07-16 16:25:15 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: videooverlaycomposition: use GstVideoInfo internally and streamline stride handling 2012-07-16 16:25:42 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-blend.c: videoblend: use correct stride when scaling 2012-07-17 16:35:06 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/README: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: rtp: Add support for multiple memory blocks in RTP Add support RTP buffers with multiple memory blocks. We allow one block for the header, one for the extension data, N for data and one memory block for the padding. Remove the validate function, we validate now when we map because we need to parse things in order to map multiple memory blocks. 2012-07-17 15:05:31 +0200 Wim Taymans * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/video-enumtypes.c: win32: update 2012-07-17 13:45:13 +0100 Tim-Philipp Müller * gst/playback/gstplaysink.c: playbin: use avdeinterlace for deinterlacing until deinterlace is ported 2012-07-10 12:12:02 -0700 Evan Nemerson * gst-libs/gst/sdp/gstsdpmessage.c: sdpmessage: add some missing introspection annotations 2012-07-06 23:42:13 -0700 Evan Nemerson * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: add many missing annotations on RTP/RTCP buffer functions 2012-07-06 01:09:06 -0700 Evan Nemerson * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: rtpbaseaudiopayload: add transfer annotation to get_adapter return 2012-07-04 15:38:38 -0700 Evan Nemerson * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: minor GTK-Doc fixes 2012-07-04 14:04:45 -0700 Evan Nemerson * gst-libs/gst/audio/gstaudiometa.c: audiometa: add missing array array annotations 2012-07-04 14:00:14 -0700 Evan Nemerson * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioringbuffer.h: audio: add missing array and element-type annotations for binary data 2012-07-04 13:41:45 -0700 Evan Nemerson * gst-libs/gst/audio/audio-channels.c: audio-channels: add missing array-related annotations 2012-07-04 02:25:11 -0700 Evan Nemerson * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: add missing element-type to set_headers method 2012-06-29 15:52:23 -0700 Evan Nemerson * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: appsrc, appsink: fix documentation syntax and mismatched arguments 2012-07-17 00:35:28 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/videoconvert.c: tests: add videoconvert test that checks formats in template caps 2012-07-17 00:31:57 +0100 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: no need to blacklist 64-bit formats in videoscale test any longer Since we now use videoconvert, which supports these. Unfortunately videoscale still crashes with 64-bit formats right now because of a too small temp buffer, but I'm sure someone is going to fix this real soon now, just like the other unit tests. 2012-07-17 00:31:14 +0100 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: add videoscale test to check pad template formats 2012-07-16 23:56:56 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscale.c: videoscale: remove formats Y800 and Y16 which no longer exist from template caps Should help with the unit test, which has been failing. 2012-07-16 21:58:23 +0200 Stefan Sauer * ext/libvisual/Makefile.am: * ext/libvisual/gstaudiobasevisualizer.h: * ext/libvisual/gstaudiovisualizer.c: * ext/libvisual/gstaudiovisualizer.h: * ext/libvisual/visual.c: * ext/libvisual/visual.h: audiovisualizer: shorten base class name As suggested on IRC rename to AudioVisualizer. We use custom suffix on the type to avoid clashing with other copies for the time being. 2012-07-16 09:27:58 +0200 Stefan Sauer * tests/check/Makefile.am: * tests/check/elements/adder.c: adder: add a tests for the aggregation of durations 2012-07-16 08:37:33 +0200 Stefan Sauer * tests/check/elements/adder.c: adder: cleanup test Use right type for StateChangeReturn and avoid needless G_OBJECT casts. 2012-07-10 08:13:02 +0200 Stefan Sauer * ext/ogg/gstoggmux.c: oggmux: only drop flushing seeks after we started to mux Don't drop all seek events. It is okay to seek before we send the headers. Non flushing seeks are okay at any time later as well. 2012-07-16 11:18:54 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: use video helper function Use the video helper function to get the offset and scale of a format. 2012-07-16 11:16:20 +0200 Wim Taymans * gst/videotestsrc/videotestsrc.c: videotestsrc: fix 10 bits formats We need to check the number of bits of the unpack format when we prepare the pixels for the pack function. 2012-07-15 00:22:38 +0100 Tim-Philipp Müller * gst-libs/gst/riff/riff-read.c: riff: use GST_TAG_DATE_TIME instead of GST_TAG_DATE here as well 2012-07-15 00:14:36 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: use GST_TAG_DATE_TIME for storing dates instead of GST_TAG_DATE So we can express partial dates. 2012-07-14 15:37:46 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2frames.c: tag: extract dates from ID3v2 tags into GstDateTime instead of GDate We may only have a year, or year and month+day, or (in future) both date and time. 2012-07-14 14:33:34 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstid3tag.c: * tests/check/libs/tag.c: tag: extract year from ID3v1 tag as GstDateTime instead of GDate So we can signal properly that only the year is valid. 2012-07-13 17:13:10 +0200 Wim Taymans * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: video: add method to get offset and scale for a format Add a method to get the offset and scale values to transform the color values of a format to their normalized [0.0 .. 1.0] range. This is usually required as the first step of a colorspace conversion. 2012-07-13 15:42:26 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: add option to unpack and truncate the range Add an unpack option to specify what to do with the least significant bits of the destination when the source format has less bits than the destination. By default we will now copy the most significant bits of the source into the least significant bits of the destination so that the full color range is represented. Add an option to leave the extra destination bits 0, which may be faster and could be compensated for in the element algorithm. 2012-07-13 15:35:27 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video: fix endianness of the pack formats 2012-07-13 15:22:57 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: video: fix r210 format It is an RGB format. 2012-07-13 12:34:42 +0200 Wim Taymans * gst/playback/.gitignore: * gst/playback/gstplaysink.h: playsink: remove old marshal remains 2012-06-20 10:35:04 +0200 Edward Hervey * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: video-blend: Fix argument signedness The x/y values are meant to be signed. This bug was introduced by 76c0881549e73efb4995ac8b38d596d51d1cc0fe Conflicts: gst-libs/gst/video/video-blend.c gst-libs/gst/video/video-blend.h 2012-07-13 12:11:06 +0200 Edward Hervey * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/streamvolume.c: * gst-libs/gst/audio/streamvolume.h: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/gstpluginsbaseversion.c: * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gsttagdemux.h: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * gst-libs/gst/tag/xmpwriter.c: * gst-libs/gst/video/colorbalance.c: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-event.c: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/videoorientation.c: * gst-libs/gst/video/videooverlay.c: libs: Remove "Since" markers and minor doc fixups 2012-07-13 12:10:01 +0200 Edward Hervey * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Push a STREAM_START on new caps 2012-07-11 10:31:09 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Demote WARNING to DEBUG Delaying auto-plugging is quite common 2012-07-10 18:37:49 +0200 Edward Hervey * ext/ogg/gstoggdemux.c: oggdemux: Push out STREAM_START events when needed 2012-07-10 18:34:41 +0200 Edward Hervey * gst/playback/gstplaybin2.c: * gst/playback/gststreamsynchronizer.c: playback: Remove custom stream-change event Applications can now use the STREAM_START message to know if a new stream has started 2012-07-10 18:32:13 +0200 Edward Hervey * gst-libs/gst/audio/gstaudiobasesink.c: baseaudiosink: Resync when ringbuffer resets When the ringbuffer gets restarted (like in setcaps), we *will* have to resync against the new values. Without this we end up blindly assuming the new samples align to the old ones. 2012-07-11 15:39:24 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: improve debug 2012-07-11 12:57:28 +0200 Sebastian Dröge * gst/videoconvert/videoconvert.c: videoconvert: Fix compiler warnings videoconvert.c: In function 'videoconvert_convert_new': videoconvert.c:287:11: error: 'Kr' may be used uninitialized in this function videoconvert.c:287:15: error: 'Kb' may be used uninitialized in this function 2012-07-10 12:37:14 +0200 Edward Hervey * win32/common/libgstvideo.def: win32: Update .def files for new API 2012-07-10 11:34:47 +0200 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Update the initial_buffer when merging RTSP Connections See https://bugzilla.gnome.org/show_bug.cgi?id=679337 2012-07-10 11:06:02 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: fix offset and scale for GRAY Fix the calculation of the offset and scale values for GRAY formats. We also need to set the offset and base of the chroma values to match what the unpack function creates. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679612 2012-07-10 10:07:08 +0200 Wim Taymans * ext/libvisual/Makefile.am: * ext/libvisual/gstaudiobasevisualizer.c: * ext/libvisual/gstaudiobasevisualizer.h: * ext/libvisual/gstbaseaudiovisualizer.h: * ext/libvisual/visual.c: * ext/libvisual/visual.h: visual: use right base class name Rename to GstAudioBaseVisualizer. Also avoids conflict with a base class with the same name in -bad. 2012-07-09 19:57:50 +0200 Stefan Sauer * tests/check/elements/adder.c: tests: use more expressive check assertion macros 2012-07-08 19:19:38 +0200 Stefan Sauer * ext/libvisual/Makefile.am: * ext/libvisual/gstbaseaudiovisualizer.c: * ext/libvisual/gstbaseaudiovisualizer.h: * ext/libvisual/visual.c: * ext/libvisual/visual.h: visual: port to baseaudiovisualizer Add a copy of the base class until it is stable. Right now the extra effects of the baseclass are not supported as the sublass overwrites the buffer instead of blending. 2012-06-25 22:42:44 +0200 Stefan Sauer * ext/libvisual/Makefile.am: * ext/libvisual/plugin.c: * ext/libvisual/visual.c: * ext/libvisual/visual.h: visual: split the plugin wrapper and the actual element 2012-07-09 16:26:17 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideopool.c: fix for allocator API changes 2012-07-09 14:37:11 +0100 Tim-Philipp Müller * tests/check/libs/struct_x86_64.h: tests: update GstVideoFilter structure size for ABI check on x86 2012-07-09 12:27:22 +0200 Mark Nauwelaerts * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-read.c: riff: rename field in gst_riff_strf_auds ... which is supposed to align with WAVEFORMATEX, but has confusing names compared to the last 2 fields in the latter (and still misses 1 field compared to the latter). 2012-07-09 08:35:22 +0100 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin: make GValueArray arguments in autoplug-* signals static scope to avoid copies 2012-07-07 14:10:45 +0300 Anton Belka * tools/gst-discoverer.c: gst-discoverer: clean up some code duplication Use print_tag_foreach() instead of print_tag(). https://bugzilla.gnome.org/show_bug.cgi?id=679550 2012-07-06 14:57:51 +0200 Mark Nauwelaerts * gst-libs/gst/riff/riff-read.c: riff: fixup 0.11 port mishap in reading extra data length field Fixes #679437. 2012-07-06 12:43:26 +0100 Tim-Philipp Müller * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: multifdsink: remove deprecated and unused "mode" property 2012-07-06 12:37:56 +0100 Tim-Philipp Müller * gst/playback/gstsubtitleoverlay.c: playbin: don't use deprecated textoverlay properties 2012-07-06 12:34:46 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: remove deprecated valign and halign properties Replaced by valignment and halignment (enum-based now rather than strings). 2012-07-06 11:50:44 +0200 Wim Taymans * ext/theora/gsttheoraenc.c: * gst-libs/gst/video/gstvideofilter.c: * gst/videoconvert/gstvideoconvert.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: update for query api changes 2012-07-06 11:23:48 +0200 Wim Taymans * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * gst/videotestsrc/gstvideotestsrc.c: update for query api changes 2012-07-06 11:01:56 +0200 Wim Taymans * ext/theora/gsttheoraenc.c: * gst-libs/gst/video/gstvideofilter.c: * gst/videoconvert/gstvideoconvert.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: update for allocation query changes 2012-07-05 16:29:42 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: Revert "videooverlaycomposition: ensure proper buffer copy" This reverts commit 1d413ace640c679ba7fbecec07f2bea3d98360b2. Plain gst_buffer_copy() is now doing the expected ... See https://bugzilla.gnome.org/show_bug.cgi?id=678384. 2012-07-05 15:34:44 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Fix double-unref when iterating over element pads 2012-07-05 14:29:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.h: video: Document buffer ownership of the GstVideoCodecFrame more explicit And also the implications of calling the finish() functions. 2012-07-05 13:38:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Make sure the buffer is writable before changing fields in finish_frame() too We can't be sure that we have the one and only reference here either. 2012-07-05 13:37:37 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Create a complete subbuffer before pushing Otherwise we can't be sure that we are allowed to change the buffer fields later for clipping. 2012-07-05 13:06:04 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: * gst-libs/gst/tag/gsttagdemux.c: gst: Implement segment-done event 2012-07-05 12:35:35 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: Remove the TOC query handling 2012-07-05 11:03:52 +0200 Sebastian Dröge * tools/gst-discoverer.c: discoverer: Update for GstToc API changes 2012-07-03 18:47:25 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: Update for TOC API changes 2012-07-04 17:06:28 +0200 Wim Taymans * gst-libs/gst/video/video-overlay-composition.c: update for miniobject changes 2012-07-04 09:14:51 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodec: add some assert 2012-07-04 09:14:27 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodec: clear the right variable 2012-07-03 20:07:44 +0100 Tim-Philipp Müller * gst/playback/gstplaysink.c: playsink: make extra sure to pass 64-bit integer to g_object_set when setting ts-offset Might just be paranoia, but better safe than sorry. Make sure the compiler really always passes a 64-bit integer to the g_object_set() vararg function. 2012-07-03 17:31:54 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: Only push TOC event, the TOC message is handled by the sinks 2012-07-03 14:59:40 +0100 Tim-Philipp Müller * docs/design/part-mediatype-audio-raw.txt: docs: update raw audio media type design docs a bit We now have a layout field and a channel-mask field. 2012-07-03 14:32:02 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: query downstream for video overlay composition meta support 2012-07-03 14:30:39 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: adjust to modified overlay composition API 2012-07-03 12:59:59 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * tests/check/libs/video.c: videooverlaycomposition: make API meta oriented ... and as such more consistent with other buffer meta components. 2012-07-03 12:58:38 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.h: videooverlaycomposition: remove some post-port obsolete parts 2012-07-02 18:54:55 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: only map video buffer memory if actually needed No need to map the video buffer if we're just going to attach the meta; but if we map, we should do so in READWRITE mode. 2012-07-02 18:49:38 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: pass pre-multiplied alpha to overlay composition directly We now support pre-multiplied alpha in the overlay composition API, and can avoid multiple conversions if the the overlay also supports pre-multiplied alpha. We should probably also have mapped the buffer as READWRITE when unpremultiplying. 2012-07-02 14:26:50 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: videooverlaycomposition: ensure proper buffer copy This is only temporary and could and should be modified to use regular buffer copy once https://bugzilla.gnome.org/show_bug.cgi?id=679145 is resolved. 2012-06-29 18:55:15 +0200 Mark Nauwelaerts * tests/check/libs/video.c: tests: video: port video overlay composition test to 0.11 2012-07-02 14:22:30 +0200 Mark Nauwelaerts * tests/check/libs/video.c: tests: video: ensure initialization and plug sample leak 2012-07-02 11:46:23 +0200 Mark Nauwelaerts * tests/check/libs/video.c: tests: video: tweak RGB caps test 2012-06-30 16:50:10 +0100 Tim-Philipp Müller * tests/icles/Makefile.am: * tests/icles/test-effect-switch.c: tests: add test for switching video effects at run time Bases on test app in bug #614296. Doesn't work reliably yet, leads to not-negotiated errors sooner or later, even when it's the same element being re-plugged. 2012-06-29 18:54:51 +0200 Mark Nauwelaerts * gst-libs/gst/video/video-overlay-composition.c: videooverlaycomposition: fix some refcounting and avoid possible NULL use 2012-06-29 11:46:23 +0100 Tim-Philipp Müller * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: examples: update for new force-aspect-ratio default 2012-06-29 11:43:46 +0100 Tim-Philipp Müller * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximagesink, xvimagesink: default to force-aspect-ratio=true 2012-06-28 23:41:16 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: send TOC event downstream if we're in continuous mode If we're in continuous mode where we'll play the entire CD from start to finish, send a TOC event downstream so any downstream muxers can write a TOC to indicate where the various tracks start and end. 2012-06-28 23:15:34 +0100 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: remove support for video/x-surface again which is 0.10 stuff This needs to be done and can be done differently/properly in 0.11. 2012-06-28 22:59:14 +0100 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: theoraenc: clean up some property descriptions We now require a sufficiently-recent libtheora. 2012-06-28 18:14:10 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: pango: use ported GstVideoOverlayComposition functionality Based on commits by Thibault Saunier 2012-06-28 18:16:20 +0200 Mark Nauwelaerts * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: videooverlaycomposition: port to 0.11 ... which also entails porting video-blend Fixes #678384. 2012-06-27 23:50:07 +0100 Tim-Philipp Müller * tests/check/libs/tag.c: tests: update unit test for vorbistag change to GST_TAG_DATE_TIME https://bugzilla.gnome.org/show_bug.cgi?id=677712 2012-06-27 16:25:06 +0200 Oleksij Rempel * gst-libs/gst/tag/gstvorbistag.c: vorbistag: store DATE tag in GST_TAG_DATE_TIME instead of GST_TAG_DATE The DATE field may contain dates, partial dates, or dates with time. Store the result in GST_TAG_DATE_TIME, so we can express properly which fields are present or not, and can store the time if there is one, and can serialise and deserialise the tag without loss of information and without making up information that's not there. Instead of using short YYYY-MM-DD form we will store long YYYY-MM-DDTHH:MM:SS+TS date and time. According to this documentation we can do it: http://wiki.xiph.org/VorbisComment#Date_and_time This datetime format is needed by apps where more information is needed. For example voice, meeting recording, etc. https://bugzilla.gnome.org/show_bug.cgi?id=677712 2012-06-27 17:18:35 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: set DTS and PTS, sync on DTS 2012-06-27 16:45:41 +0200 Wim Taymans * gst-libs/gst/video/gstvideoencoder.c: videoencoder: make PTS and DTS handling more explicit 2012-06-27 16:38:38 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: avoid crash when getting duration Check that we have a valid output_state before attempting to use it to calculate the duration of a buffer. It is possible that we don't have a state yet, for example when we are dropping the first buffers. 2012-06-27 16:42:10 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Use GSlice to allocate the timestamp tracking structures 2012-06-27 14:13:02 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: small cleanups 2012-06-27 13:48:58 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: improve PTS and DTS handling Also keep track of the DTS and use it to set PTS on keyframes. Set DTS on outgoing buffers. 2012-06-26 19:50:49 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: post TOC message on the bus on start-up First attempt at implement the various GstToc API bits in GstAudioCdSrc. https://bugzilla.gnome.org/show_bug.cgi?id=668996 2012-06-26 17:09:25 +0200 Wim Taymans * ext/ogg/gstoggstream.c: * gst/videotestsrc/gstvideotestsrc.c: fix interlace-mode 2012-06-26 01:33:10 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't leak a ref to frames in reverse playback 2012-06-26 11:10:28 +0200 Wim Taymans * gst-libs/gst/video/video-frame.c: video-frame: handle map errors Error out when something failed 2012-06-26 11:09:50 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.c: videometa: improve debug error reporting 2012-06-26 11:04:23 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: The default signal handler should be the one that triggers pad blocks and reconfiguration Conflicts: gst/playback/gstplaysink.c 2012-06-26 10:54:18 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Make sure to always block all pads before reconfiguring the pipeline Fixes bug #678762. Conflicts: gst/playback/gstplaysink.c 2012-06-25 16:07:31 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Prevent NULL pointer dereference in last change 2012-06-25 16:01:06 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Unlink pads when switching between enabling/disabling the deinterlace chain See bug #678762. 2012-06-25 15:21:07 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Connect to the value-changed signal of the child colorbalance element and proxy it 2012-06-25 15:14:21 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Only remove the xoverlay/colorbalance elements when necessary They are not added again by every code path, e.g. when switching only the deinterlace flag and are missing then. Fixes bug #678763. Conflicts: gst/playback/gstplaysink.c 2012-06-22 11:51:04 +0300 Sreerenj Balachandran * gst-libs/gst/video/gstvideoutils.c: videoutils: Use g_list_free_full instead of g_list_foreach and g_list_free 2012-06-24 22:47:05 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: update discoverer for GstToc API changes 2012-06-24 00:28:40 +0100 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: audio: make sure g-i doesn't parse orc-generated gstaudiopack.h file 2012-06-23 15:44:16 +0100 Tim-Philipp Müller * gst-libs/gst/tag/tags.c: tags: use gst_tag_register_static() 2012-06-23 14:55:51 +0100 Tim-Philipp Müller * gst/encoding/gstsmartencoder.c: smartencoder: use gst_quark_from_static_string() 2012-06-23 14:55:31 +0100 Tim-Philipp Müller * gst/playback/gsturidecodebin.c: * tests/examples/encoding/encoding.c: uridecodebin, tests: update for gst_element_make_from_uri() changes 2012-06-21 11:12:11 +0100 Sebastian Dröge * gst-libs/gst/app/gstappsrc.c: appsrc: Actually store any URI that is set and return this when asked for the URI 2012-06-20 12:30:36 +0200 Wim Taymans * gst-libs/gst/video/videooverlay.c: * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: * tests/icles/stress-videooverlay.c: update for bus api changes 2012-06-20 10:52:34 +0200 Andreas Frisch * tests/examples/fft/fftrange.c: fix compiler warning 2012-06-20 11:11:47 +0100 Arnaud Vrac * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Fix conversion bin when sink has both raw and non-raw caps Fixes bug #678403. 2012-06-20 10:33:24 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: * gst-libs/gst/tag/gsttagdemux.c: update for task api change 2012-06-20 03:45:14 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Don't give out bogus frame deadlines Make sure the frame deadline was set before calculating the max_decode_time. Fixes problems with ffmpeg skipping frames when it doesn't need to, when the input doesn't have full timestamping (divx in avi) 2012-06-20 03:40:29 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Remove gst_video_decoder_get_timestamp function Interpolating the timestamps from the picture numbers does more harm than good, getting it wrong in a lot of cases (especially reverse playback). Removing it in favour of simply incrementing the timestamps until there's something better 2012-06-20 00:46:05 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: EOS handling for reverse mode. Handle EOS correctly in reverse mode by treating it as a final discont and flushing out whatever we can. 2012-06-20 00:42:42 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: misc improvements/changes Use g_list_free_full instead of walking lists twice when freeing them. Remove pointless clause in gst_video_decoder_chain that doesn't actually have any effect. Other changes to make the code slightly more like the 0.11 version. 2012-06-20 00:36:38 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Improve timestamp handling. Fix problems with timestamp calculations when the incoming buffers have sparse timestamps (as for theora) and reverse playback. Fixes #675773 2012-06-20 00:22:25 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Re-work reverse playback handling Move processing of the gather list into the flush_parse function. Add a last ditch attempt to apply timestamps to outgoing buffers when walking backwards through decoded frames. Requires that each gathered region has at least one timestamp. Make sure to remove decoded packets from the decode list when they are sent - otherwise the list just grows on each cycle, with more and more frames being decoded and then clipped away. Break out of the processing loop early on a bad flow return to make seeking more responsive. Use the gst_video_decoder_clip_and_push_buf function in reverse mode, instead of pushing all buffers arbitrarily. A couple of small efficiency gains in the list handling, by moving list elements directly and not reallocating, and by reversing and concatenating the gather list instead of moving it one node at a time. Rename the gst_video_decoder_do_finish_frame function to gst_video_decoder_release_frame. 2012-06-20 00:08:57 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Split gst_video_decoder_finish_frame Split the 2nd half of the gst_video_decoder_finish_frame function out to gst_video_decoder_clip_and_push_buf. 2012-06-19 23:46:44 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Rename queued list to output_queued for clarity. Use g_list_free_full instead of g_list_foreach + g_list_free 2012-06-19 23:43:27 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Small cleanups Remove extra deref using a local var, and add/change some doc comments and debug statements 2012-06-19 23:28:08 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Rename gst_video_decoder_have_frame_2 function Rename gst_video_decoder_have_frame_2 to gst_video_decoder_decode_frame and pass the frame to process directly, rather than using the current_frame pointer as a holding pen. Move the negative rate handling out of the function to where it is needed, and remove the process flag. 2012-06-19 23:16:12 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Extend docs and add comments Update the documentation block for the base class, and add a comment block about the reverse-playback logic and implementation. 2012-06-19 13:57:00 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideofilter.c: videofilter: Don't duplicate code to create a new buffer pool if none is in the query 2012-06-19 09:34:49 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Ensure buffers don't disappear early The frames are the owners of the buffers 2012-04-26 18:43:16 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Ensure buffers don't disappear early The frames are the owners of the buffers. In cases where a decoder would keep around reference frames, we need to ensure they don't disappear early. To handle this, we pass downstream a complete sub-buffer of the output buffer, ensuring that the buffer will only be released when downstream is done with it *AND* the frame is no longer used. Conflicts: gst-libs/gst/video/gstvideodecoder.c 2012-06-19 09:25:00 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: videoencoder,videodecoder: Return new references from _get_frame() 2012-06-18 12:17:12 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: sys: fix some bufferpool leaks 2012-06-18 11:38:02 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: fix for basesink API change 2012-06-14 23:24:06 +1000 Jan Schmidt * ext/theora/gsttheoradec.c: theoradec: Remove use of NEED_DATA Remove the confusing internal-only use of the GST_VIDEO_DECODER_FLOW_NEED_DATA return code. 2012-06-15 16:43:47 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: handle case where no bufferpool is suggested 2012-06-15 16:06:12 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add GstVideoDecoder::propose_allocation() vfunc 2012-06-15 10:32:39 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: add missing mutex unlock on error path 2012-06-15 10:24:24 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.h: opus: set author to myself, and update copyright notices because as slomo noted, in fact pretty much all the code in there is mine. 2012-06-14 23:08:54 +0100 Tim-Philipp Müller * tests/examples/playback/playback-test.c: examples: make play button in playback test have focus after startup So you can just press Enter to start playback. 2012-06-14 18:31:51 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix quadratic search for last page A crafted file with invalid pages will cause repeated searches from earlier offsets in steps of 8500 bytes, but reading till the end of the stream. Since we know the maximum size of an Ogg page, we can bound the search for next page, to get a linear behavior (though still not good enough as it will read the entire file backwards if there's no valid page till then). 2012-06-14 09:32:35 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Proxy the force-aspect-ratio property of video sinks Fixes bug #678020. Conflicts: gst/playback/gstplaybin2.c 2012-06-14 09:29:23 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Proxy the force-aspect-ratio property of video sinks 2012-06-13 11:04:21 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: update for message api change 2012-06-13 03:17:27 +1000 Jan Schmidt * ext/theora/gsttheoradec.c: theoradec: Always inform base class when dropping frames Partially fixes backwards playback. Informing the base class of the dropped frame lets it manage the timestamping and events better. 2012-06-13 01:58:05 +1000 Jan Schmidt * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Fix initial timestamp in ogg, and a warning. Don't replace the initial frame's timestamp with a bogus one calculated from the (incorrect for Ogg) frame number just because the 'sync time' hasn't changed. Also, don't output a bogus warning about the output_frame being NULL when it's being dropped/skipped due to QoS. 2012-06-12 23:51:51 +1000 Jan Schmidt * gst-libs/gst/audio/gstaudiodecoder.c: audio decoder: Add some debug output for bad caps from children 2012-06-12 11:58:29 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: Always prefer parsers over decoders ...and in playbin2 additionally prefer sinks over parsers. This makes sure that we a) always directly plug a sink if it supports the (compressed) format and b) always plug parsers in front of decoders. 2012-05-23 15:07:20 +0100 Vincent Penquerc'h * tests/examples/playback/playback-test.c: playback-test: expose seek snap flags https://bugzilla.gnome.org/show_bug.cgi?id=676639 2012-06-08 12:43:41 +0100 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: push queued events only when we have a first buffer https://bugzilla.gnome.org/show_bug.cgi?id=675812 2012-06-11 11:09:24 +0100 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: probe for DVD ISO files, to avoid matching H.264 https://bugzilla.gnome.org/show_bug.cgi?id=674069 2012-06-08 17:28:28 +0100 Vincent Penquerc'h * gst/playback/gstplaybin2.c: playbin2: remove uridecodebin from bin when it fails to switch to PAUSED This avoids that bin being leftover and being found when reusing playbin2, and fixes restarting on a new URI after failing to activate with a previous URI. https://bugzilla.gnome.org/show_bug.cgi?id=673888 2012-06-08 17:55:15 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiopack-dist.c: * gst-libs/gst/audio/gstaudiopack-dist.h: Add generated orc files 2012-06-08 17:52:31 +0200 Wim Taymans * gst-libs/gst/audio/Makefile.am: Also build the orc generated code 2012-06-08 17:48:11 +0200 Wim Taymans * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/gstaudiopack.orc: audio: add orc enabled pack and unpack functions 2012-06-08 12:26:08 +0200 Wim Taymans * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: audio: add flag to mark possible unpack formats Make a new flag to mark formats that can be used in pack and unpack functions. Mark S32NE and F64NE as those unpack formats 2012-06-08 15:51:06 +0200 Sebastian Dröge * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * tests/check/elements/audioconvert.c: elements: Use gst_pad_set_caps() instead of manual event fiddling 2012-06-08 15:04:49 +0200 Edward Hervey * common: Automatic update of common submodule From 03a0e57 to 98e386f 2012-06-08 13:58:51 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstvideodecoder.c: videodecoder: use GST_CLOCK_TIME_IS_VALID where appropriate 2012-06-08 11:49:18 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: mark unpack formats with a flag Add a new _UNPACK flag and use it to mark potential unpack formats. 2012-06-08 11:28:22 +0200 Sebastian Dröge * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-marshal.list: * win32/common/libgstaudio.def: audio: Remove unused, generated marshallers 2012-06-08 11:26:46 +0200 Sebastian Dröge * gst/videoconvert/Makefile.am: videoconvert: Need $(LIBM) for pow() 2012-06-08 10:10:08 +0200 Wim Taymans * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-channels.c: * gst-libs/gst/audio/audio-channels.h: * gst-libs/gst/audio/audio-format.c: * gst-libs/gst/audio/audio-format.h: * gst-libs/gst/audio/audio-info.c: * gst-libs/gst/audio/audio-info.h: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: split audio header into logical parts 2012-06-07 16:50:17 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstvideodecoder.c: videodecoder: do not do timestamp arithmetic from an invalid timestamp This fixes untimestampped buffers from being rejected by the segment clipper. https://bugzilla.gnome.org/show_bug.cgi?id=676022 2012-06-07 16:07:16 +0200 Sebastian Dröge * configure.ac: Back to development === release 0.11.92 === 2012-06-07 16:06:59 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 0.11.92 2012-06-07 16:04:04 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2012-06-07 13:24:48 +0100 Vincent Penquerc'h * ext/theora/gsttheoradec.c: theoradec: fix frame leaks 2012-06-07 11:16:13 +0100 Vincent Penquerc'h * ext/theora/gsttheoradec.c: theoradec: fix video state leaks 2012-06-07 11:15:57 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstvideoutils.c: video: fix memory leak 2012-06-07 10:52:53 +0200 Wim Taymans * gst/playback/gstplaysink.c: playsink: fix compilation 2012-05-24 11:02:59 -0300 Andre Moreira Magalhaes (andrunko) * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstsubtitleoverlay.c: playbin2: Send flush events when changing subtitle tracks and use new input-selector modes for subtitle tracks For audio/video we should flush too for fastest stream switches but this currently isn't possible because the flushes would need to go to the sink, which then causes state changes and causes all timing information to be changed. Should work out of the box in 0.11 with the flush-stop that doesn't reset the times. Conflicts: gst/playback/gstplaybin2.c gst/playback/gstplaysink.c gst/playback/gstsubtitleoverlay.c 2012-05-21 09:06:18 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't use // comments and prevent unnecessary memory allocation Conflicts: gst/playback/gstplaysink.c 2012-05-20 12:51:17 -0300 Andre Moreira Magalhaes (andrunko) * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2: Properly change subtitles Conflicts: gst/playback/gstplaysink.c 2012-05-15 12:56:13 -0300 Thiago Santos * gst/playback/gstplaybin2.c: playbin2: fix subtitle only seeks when switching to external subs Sending a non-flushing seek might not be enough for switching to an external sub that has already been used because the flushes are needed to reset the state of its decodebin's queue. For example, if the subtitle is short enough, the queue might get and EOS and keep its 'unexpected' return state. If the user switches to another subtitle and back to the external one, the buffers won't get past the queue. This patch fixes this by adding the flush flag to the seek and preventing that this flush leaves the suburidecodebin. https://bugzilla.gnome.org/show_bug.cgi?id=638168 Conflicts: gst/playback/gstplaybin2.c 2012-05-16 10:41:41 -0300 Andre Moreira Magalhaes (andrunko) * gst/playback/gstplaysink.c: gstplaysink: Properly reset chain when receiving a custom flush event. https://bugzilla.gnome.org/show_bug.cgi?id=638168 Conflicts: gst/playback/gstplaysink.c 2012-05-14 11:52:12 -0300 Thiago Santos * gst/playback/gstplaysink.c: playsink: do not store more than a second of subtitles Use a shorter queue for subtitles to avoid switches for subtitles taking longer than they already take. https://bugzilla.gnome.org/show_bug.cgi?id=638168 2012-06-05 18:12:52 -0300 Thiago Santos * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: pass correct parameter to debug message Get the format name to pass to the debug message, as it expects a string 2012-05-10 12:17:45 -0300 Andre Moreira Magalhaes (andrunko) * gst/playback/gstsubtitleoverlay.c: gstsuboverlay: Convert NewSegment events to always be in the TIME format. https://bugzilla.gnome.org/show_bug.cgi?id=638168 Conflicts: gst/playback/gstsubtitleoverlay.c 2012-06-06 17:42:36 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: reject opus streams with negative start time This is used by Vorbis for sample accurate clipping, but this is deemed an invalid stream by the opus spec. 2012-06-06 17:41:55 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: add a flag to say whether start granule clamping is to be done 2012-06-06 18:18:29 +0200 Edward Hervey * common: Automatic update of common submodule From 1fab359 to 03a0e57 2012-06-06 16:41:03 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: handle cancellation correctly 2012-06-06 16:40:24 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: audiopayload: disable broken bufferlist handling The bufferlist handling is broken so make sure it is never enabled. 2012-06-06 14:53:43 +0200 David Svensson Fors * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: don't leak address and socket Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677466 2012-06-06 12:55:15 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagmux.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/playback/gstplaybin2.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: update for tag event change 2012-06-06 11:01:13 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: reject Ogg/Opus streams with nonsensical preskip/granpos setup As the spec mandates. 2012-06-06 11:38:00 +0200 Wim Taymans * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: video: add pack_lines variable Use a separate variable to describe the amount of lines that will be used in packing instead of abusing the h_sub variable. Some formats might have no subsampling but need to operate on multipe lines. 2012-06-06 11:15:50 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Remove more redundant code Use the video library to do the setup instead of keeping a separate incomplete list. 2012-06-06 10:21:55 +0200 Wim Taymans * gst-libs/gst/video/video-frame.h: video: add macro for component depth 2012-06-05 16:58:19 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: don't artificially restrict caps Use all the formats that the video library supports without any restrictions on colorimetry or other parameters such as chroma-siting. 2012-06-05 12:27:09 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add descriptor for E-AC3 and PGS subtitles 2012-06-05 16:09:56 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: update .def file for new video API 2012-06-05 12:47:22 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-color.c: * gst-libs/gst/video/video-color.h: * gst-libs/gst/video/video-event.c: * gst-libs/gst/video/video-event.h: * gst-libs/gst/video/video-format.c: * gst-libs/gst/video/video-format.h: * gst-libs/gst/video/video-frame.c: * gst-libs/gst/video/video-frame.h: * gst-libs/gst/video/video-info.c: * gst-libs/gst/video/video-info.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: move methods into separate files Move different video functionalities into different files 2012-06-04 20:36:10 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: refactor matrix setup 2012-06-04 18:24:03 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: don't add unknown colorimetry 2012-06-04 18:17:42 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: only copy known colorimetry values Avoid overriding the default colorimetry values. 2012-06-04 18:08:11 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: add unknown colorimetry parameters as well.. 2012-06-04 18:00:42 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: use unknown colorimetry for unknown formats Use the default RGB colorimetry into only on RGB formats and use an unknown set of defaults for the unknown format. 2012-06-04 16:15:25 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: (de)serialize colorimetry on caps 2012-06-04 16:13:48 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: fix 0_255 handling We also need to apply an offset to the Cb and Cr samples in the 0-255 case. 2012-06-04 15:26:21 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: don't add empty colorimetry to caps Don't use extra default colorimetry entries in the table to construct an output colorimetry shortcut because they don't have a name. 2012-06-04 14:51:41 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: fix default colorspace settings HD content is defined as height > 576 2012-06-04 14:46:21 +0200 Wim Taymans * gst/videoconvert/Makefile.am: * gst/videoconvert/gstcms.c: * gst/videoconvert/gstcms.h: * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: improve color transform setup Remove hardcoded color matrices and compute the matrices using the cms helper library that was in cogcolorspace before. 2012-06-04 10:08:59 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add generic film primaries 2012-06-04 13:07:36 +0200 Sebastian Dröge * tests/check/libs/video.c: video: Fix build of unit test 2012-06-04 13:04:00 +0200 Sebastian Dröge * win32/common/libgstaudio.def: * win32/common/libgstvideo.def: win32: Update exported symbols list 2012-06-04 10:46:13 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Don't unref frame twice if not in the list 2012-06-02 09:34:15 -0400 Matej Knopp * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Do not unref frame if not in the list 2012-06-04 10:01:42 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: Revert "audiodecoder: Error out earlier in a few places if something goes wrong" This reverts commit eb68a2d5a7e4e9598df6eb812589c092fe2cc89a. This sometimes errors out too early now, needs some more thoughts. 2012-06-04 09:56:30 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Return setcaps return value instead of always TRUE 2012-06-02 17:15:42 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Error out earlier in a few places if something goes wrong 2012-06-02 17:02:10 +0200 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: vorbisdec: Error out if handling a header packet failed instead of just finishing the frame 2012-06-01 12:02:57 +0200 Wim Taymans * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: use video helper library more Use VideoInfo to setup the conversion. Use the color matrix from the video info. 2012-06-01 11:58:18 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: set default colorimetry info Set default colorimetry info when not otherwise specified in caps. 2012-06-01 10:02:02 +0100 Tim-Philipp Müller * gst-libs/gst/video/videoblendorc-dist.c: * gst-libs/gst/video/videoblendorc-dist.h: video: update disted orc backup files for recent changes 2012-06-01 10:28:41 +0200 Edward Hervey * common: Automatic update of common submodule From f1b5a96 to 1fab359 2012-05-31 18:55:32 -0300 Thiago Santos * ext/theora/gsttheoraenc.c: theoraenc: do not use %zu, it is C99 Cast the variables instead and fallback to %u 2012-05-31 18:28:14 -0300 Thiago Santos * ext/theora/gsttheoraenc.c: theoraenc: fix printf format variable 2012-05-31 13:38:54 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/videoconvert.c: video: fix paletted format RGB8_PALETTED -> RGB8P Fix the definition of paletted formats, store the palette in the second plane. Make sure we copy the palette correctly in gst_video_frame_copy() Don't do alignment on the palette in videopool 2012-05-31 13:08:04 +0200 Sebastian Dröge * common: Automatic update of common submodule From 92b7266 to f1b5a96 2012-05-31 11:29:44 +0100 Bastien Nocera * gst/playback/gsturidecodebin.c: uridecodebin: Use cache dir for download buffering Instead of the temp directory. See: http://0pointer.de/blog/projects/tmp.html https://bugzilla.gnome.org/show_bug.cgi?id=677181 2012-05-30 17:08:56 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: videoconvert: use video library pack/unpack Remove obsolete code and use the video pack/unpack functions 2012-05-30 16:51:16 +0200 Wim Taymans * gst/videotestsrc/videotestsrc.c: videotestsrc: enable more formats 2012-05-30 13:07:57 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: video: And fix the build of the ORC sources 2012-05-30 13:06:11 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: video: Fix generation of orc sources 2012-05-30 12:45:09 +0200 Sebastian Dröge * common: Automatic update of common submodule From ec1c4a8 to 92b7266 2012-05-30 11:23:23 +0200 Sebastian Dröge * common: Automatic update of common submodule From 3429ba6 to ec1c4a8 2012-05-30 09:25:12 +0200 Wim Taymans * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: video-blend: prepare for 0.11 porting Remove obsolete code. Remove the BlendInfo structure, we can do this better with GstVideoFrame Use GstVideoFrame in the API Prefix functions with gst_ 2012-05-30 09:21:46 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add support for premultiplied alpha 2012-05-29 17:24:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: read gain from the right place in the header It's at byte offset 16, not 14. 2012-05-29 17:48:45 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: use generic packing code Use the pack functions of the video library to construct the target image. Remove redundant functions. 2012-05-29 17:47:54 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videoscale/gstvideoscale.c: video: update for removed formats 2012-05-29 17:45:33 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: move enum difinition c++ doesn't seem to like the typedef 2012-05-29 17:34:29 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst-libs/gst/video/videoblendorc.orc: video: Remove duplicate formats Remove Y800 and Y16 wich are the same as GRAY8 and GRAY16_LE Add const to the GstVideoFormatInfo when used in argument Add GRAY8 and GRAY16 pack/unpack functions 2012-05-29 15:20:08 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/videoblendorc.orc: video: rename orc function names 2012-05-29 15:12:16 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst-libs/gst/video/videoblendorc-dist.c: * gst-libs/gst/video/videoblendorc-dist.h: * gst-libs/gst/video/videoblendorc.orc: video: fill in the pack/unpack functions Add support for supporting chroma subsampling correctly in the pack function. Fill in the pack and unpack functions for most formats. Add some missing pack/unpack functions to the orc file. 2012-05-29 10:45:23 +0200 Wim Taymans * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * gst/videoconvert/gstvideoconvertorc.orc: videoconvert: remove unused functions 2012-05-29 10:44:59 +0200 Wim Taymans * gst-libs/gst/video/video-blend.c: video-blend: remove unused defines 2012-05-28 14:18:10 -0300 Andre Moreira Magalhaes (andrunko) * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: textoverlay: Use an external lock Conflicts: ext/pango/gsttextoverlay.c ext/pango/gsttextoverlay.h 2012-05-29 09:54:43 +0200 Wim Taymans * gst-libs/gst/audio/audio.h: audio: add flags for the pack/unpack functions Add a flag argument to the pack and unpack function so that we can expand it later when needed. We could for example prefer a High Quality pack/unpack operation later. 2012-05-29 09:53:15 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add flags for the pack/unpack functions Add a flag argument to the pack and unpack function so that we can expand it later when needed. We could for example prefer a High Quality pack/unpack operation later. 2012-05-29 09:52:40 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add padding 2012-05-28 17:11:46 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: * gst/videotestsrc/videotestsrc.c: video: fix UYVP packing function 2012-05-28 16:30:56 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: fix v216 2012-05-28 16:16:24 +0200 Wim Taymans * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add support for I420_10 format Add support for the I420_10 formats Use the video frame api to get pixels and strides instead of our own custom versions. Fixes the YVU9 format and probably some others. 2012-05-28 16:14:30 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: fix v216 format description Fix the offsets of v216 video Add the complex flag to some formats 2012-05-28 16:13:42 +0200 Wim Taymans * docs/design/part-mediatype-video-raw.txt: docs: update v216 format Fix the v216 format description 2012-05-28 14:58:52 +0200 Wim Taymans * gst/videotestsrc/videotestsrc.c: videotestsrc: fix AYUV64 format string 2012-05-28 14:49:52 +0200 Wim Taymans * docs/design/part-mediatype-video-raw.txt: docs: update video formats document 2012-05-28 12:50:49 +0200 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: add support for 10bit I420 Add support for 10bit I420 Reorganize some macros, have separate plane and component macros, fix a problem with YV12 in the process. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=665034 2012-05-28 11:08:18 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: videopool: take pixel stride into account When we need to add borders, take the pixel stride into account to move to the right horizintal offset. 2012-05-27 23:41:24 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: do not assert on bad header, error out instead 2012-05-26 19:56:48 +0100 Tim-Philipp Müller * tests/check/libs/tag.c: * tests/examples/playback/playback-test.c: * tests/examples/seek/jsseek.c: tests: don't use GstStructure API on tag lists 2012-05-26 19:56:30 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.c: tag: don't use GstStructure API on tag lists 2012-05-26 19:53:50 +0100 Tim-Philipp Müller * tools/gst-discoverer.c: gst-discoverer: print all entries for a certain tag If there are multiple entries for a tag, print all of them individually. 2012-05-26 19:50:46 +0100 Tim-Philipp Müller * tools/gst-discoverer.c: gst-discoverer: don't use GstStructure API on tag lists 2012-05-25 16:58:50 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add 10 bits I420 format Add 10 bits I420 format definitions Move encoded format as second entry in the array so that it doesn't end up in a weird place when we add formats. See https://bugzilla.gnome.org/show_bug.cgi?id=665034 2012-05-25 16:05:29 +0200 Edward Hervey * tests/check/libs/video.c: check: Update video test for GST_VIDEO_FORMAT_ENCODED 2012-05-25 16:05:06 +0200 Edward Hervey * tests/check/libs/struct_x86_64.h: tests: Update ABI libs structure 2012-05-25 15:12:53 +0200 Wim Taymans * gst/playback/gstplaybin2.c: * tests/check/elements/playbin.c: playbin: add current-*uri properties Make the uri property getter return the next uri, like it was configured in the setter. Make a new current-uri and current-suburi property that reflects the currently playing uri and suburi. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676665 2012-05-25 15:57:45 +0530 Arun Raghavan * gst-libs/gst/audio/gstaudioiec61937.c: audio: Fix DTS IEC61937 payloading DTS type I-III specify the burst length in bits. Only type IV (which we do not currently support) needs it to be specified in bytes. Thanks to Julien Moutte for pointing this out. 2012-05-24 22:12:56 +0100 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: reject major version number above what we grok 2012-05-24 21:58:44 +0100 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: bump written version from 0 to 0x01 as per the spec update at https://wiki.xiph.org/OggOpus#ID_Header 2012-04-30 14:40:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix lost packet handling for FEC/PLC The base audio decoder sends zero size packets, not NULL buffers, to signal dropped packets. 2012-05-24 13:43:06 +0200 Wim Taymans * gst/playback/gstplaybin2.c: playbin: fix compilation 2012-05-24 13:28:33 +0200 Wim Taymans * ext/cdparanoia/gstcdparanoiasrc.c: cdparanoia: always set the read_speed Always set the read speed to the configured value. Clarify that 0 or -1 speed means full speed. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676361 2012-05-24 12:31:34 +0200 Sebastian Dröge * common: Automatic update of common submodule From dc70203 to 3429ba6 2012-05-23 16:34:37 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Put sinks before the other element factories in the autoplug factory list This makes sure that we always prefer sinks that support a format without decoding, independant of its rank. Previously we only sorted by rank. Conflicts: gst/playback/gstplaybin2.c 2012-05-21 13:34:02 +0300 Sreerenj Balachandran * ext/theora/gsttheoradec.c: theoradec: remove usless checking of return val. fixes https://bugzilla.gnome.org/show_bug.cgi?id=676525 2012-05-20 23:27:42 +0300 Raimo Järvi * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: Fix printf format warnings on mingw-w64 https://bugzilla.gnome.org/show_bug.cgi?id=676442 2012-05-23 16:09:37 +0200 Sebastian Rasmussen * gst/audioresample/gstaudioresample.c: Fix bug where debug category was declared inside a function Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676670 2012-05-22 16:49:58 +0300 Sreerenj Balachandran * gst-libs/gst/video/gstvideodecoder.c: videodecoder: improve doc 2012-05-23 01:49:49 +0300 Sreerenj Balachandran * ext/theora/gsttheoradec.c: theoradec: remove the nonuse parameter from handle_type_packet() method 2012-05-22 15:24:36 +0300 Sreerenj Balachandran * gst-libs/gst/video/gstvideoutils.h: videoutils: improve doc 2012-05-22 15:17:37 +0300 Sreerenj Balachandran * ext/theora/gsttheoradec.c: theoradec: stream is marking as non-packeized so that the data gets parsed and keyframes marked 2012-05-22 13:52:28 +0200 Edward Hervey * win32/common/libgstpbutils.def: win32: Update defs file 2012-05-21 13:14:32 +0200 Andoni Morales Alastruey * configure.ac: * tests/examples/playback/Makefile.am: * tests/examples/playback/playback-test.c: playback: Fix compilation with the GDK Quartz backend 2012-05-21 08:01:09 +0200 Stefan Sauer * tests/examples/playback/playback-test.c: playback-test: remove not needed state-change We go back to paused if needed (scrubbing in paused) in stop_seek(). 2012-05-21 10:08:33 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: Put back accidentially deleted line 2012-05-21 02:01:17 +0300 Anton Belka * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: Add TOC support to discoverer and add -c/--toc parameters to gst-discoverer utility 2012-05-19 15:17:18 +0100 Tim-Philipp Müller * gst/encoding/gstencodebin.c: encodebin: don't access GstElementFactory structure directly 2012-05-15 16:09:05 +0300 Sreerenj Balachandran * sys/xvimage/xvimagesink.c: xvimagesink: remove unused assignment https://bugzilla.gnome.org/show_bug.cgi?id=676344 2012-05-16 12:25:09 +0300 Sreerenj Balachandran * tests/icles/test-box.c: tests/icles: fix type of format field in 0.11 video caps https://bugzilla.gnome.org/show_bug.cgi?id=676344 2012-05-15 19:21:15 +0200 Andoni Morales Alastruey * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsasink: check for spdif support only in the current device 2012-05-18 09:20:54 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: unref sockets in _close When closing the connection, unref the currently used sockets. This should close them when not in use. We need to do this because else we cannot reconnect anymore after a close, the connect function requires that the sockets are NULL. 2012-05-18 09:18:29 +0200 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: clear the GError for pending connect Clear the GError after g_socket_connect tells us that the connection is pending. If we don't do this, glib complains when we try to reuse the non-NULL GError variable a little below. 2012-05-17 22:06:45 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: appsrc: simplify get_property for "caps" property 2012-05-17 22:04:24 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: appsrc: remove filter argument from gst_app_src_get_caps() Was presumably added by mistaken in the grand _get_caps() conversion. Doesn't really make sense for a property accessor. 2012-05-17 16:38:58 +0100 Tim-Philipp Müller * ext/cdparanoia/gstcdparanoiasrc.c: cdparanoiasrc: include stdio.h for SEEK_SET https://bugzilla.gnome.org/show_bug.cgi?id=676255 2012-05-16 15:10:41 +0100 Tim-Philipp Müller * ext/vorbis/gstvorbisdeclib.h: vorbis: give libvorbis-based decoder and vorbisidec decoder different type names Should fix "cannot register existing type `GstVorbisDec'" criticals when both libvorbis and vorbisidec are available. https://bugzilla.gnome.org/show_bug.cgi?id=673333 2012-05-16 13:46:57 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/gstvideoutils.h: * win32/common/libgstvideo.def: video: Rename gst_video_codec_frame_set_hook() to gst_video_codec_frame_set_user_data() And also add a getter and allow to set NULL user_data but still call the passed destroy notify. 2012-05-16 12:40:07 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.h: docs: fix up video decoder/encoder docs a bit Makes gtk-doc happy. 2012-01-01 20:48:29 +0100 Idar Tollefsen * configure.ac: build: Make sure AC_INCLUDES_DEFAULT is used. Without using AC_INCLUDES_DEFAULT explicitly, certain platforms will complain that the header was found, but not usable by the compiler. This happens for instance on Solaris where certain headers are needed to pull in proper defines. https://bugzilla.gnome.org/show_bug.cgi?id=667307 Conflicts: configure.ac 2012-05-16 09:12:44 +0200 Sebastian Dröge * configure.ac: configure: Require core/base 0.11.91 2012-01-13 17:58:37 -0500 Matej Knopp * .gitignore: .gitignore: add visual studio IDE files and OS X .DS_Store files https://bugzilla.gnome.org/show_bug.cgi?id=667899 2012-05-14 07:01:18 +0200 Alban Browaeys * gst/playback/gstplaysink.c: playsink: do not abort if a property is not found. If a property is not found (for example last-sample when gst_debug_bin_to_dot_file is used while the pipeline is slightly broken (thus no last-sample) the unref of the item gvalue which is not refed fails. Only unref if it was found. 2012-05-14 20:08:38 +0200 Alban Browaeys * gst/playback/gstplaysink.c: playsink: missing guard around gst pad add probe This miss prevent from switching from one track to the other. Issue encountered with rhythmbox and totem ports. 2012-05-14 17:53:59 +0200 Edward Hervey * ext/theora/gsttheoraenc.c: theoraenc: Don't leak incoming frames (and buffers) We get given a reference in ::handle_frame(), remove it when we're done. 2012-05-11 10:58:45 +0200 Mark Nauwelaerts * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2: default text element is now subtitleoverlay ... and not so much textoverlay, though the former also uses the latter. 2012-05-13 23:11:20 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: oggdemux: fix potential crash in SEEKING query handler Take chain lock when accessing chains. Fall back gracefully when there's no current chain Hopefully fixes crash when seeking in Jamendo or Magnatune streams in Amarok. https://bugzilla.gnome.org/show_bug.cgi?id=675609 2012-05-13 18:49:31 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * gst-libs/gst/pbutils/descriptions.c: * gst/typefind/gsttypefindfunctions.c: typefinding, ogg: don't bother with annodex media types They're hardly used, and probably more confusing than anything else, and it's not clear that anyone would really need to be able to tell them apart at the media type level. 2012-05-12 14:36:09 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: don't expose Annodex CMML streams any more This never really took off - it's hardly used anywhere and deprecated in favour of Kate. Exposing pads just leads to confusing 'you are missing a plug-in' messages when people come across such streams. We could still post the data on the bus for applications to parse. 2012-05-12 14:24:24 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: oggdemux: update some comments that refer to internal decoders We don't do that any more, we now have stream mappers for this. 2012-05-12 14:22:23 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: remove unused GstOggPadMode enum 2012-05-13 17:10:57 +0100 Tim-Philipp Müller * ext/libvisual/visual.c: libvisual: include string.h for strcmp() 2012-05-13 16:59:42 +0200 Sebastian Dröge * configure.ac: Back to development === release 0.11.91 === 2012-05-13 16:20:00 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.11.91 2012-05-13 16:19:32 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2012-05-13 15:55:54 +0200 Sebastian Dröge * common: Automatic update of common submodule From dc70203 to 3429ba6 2012-05-12 16:24:09 +0400 Руслан Ижбулатов * gst/playback/gstplaysink.c: playsink: fix printf arguments in debug message 2012-05-11 17:37:14 +0300 Vivia Nikolaidou * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Ported fix for bug #673504 to 0.11 2012-05-10 23:08:21 +0300 Vivia Nikolaidou * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Wait until an update/filler newsegment event or buffer for subtitle streams This makes sure that we wait until we received all tags for the subtitle streams and have all information that is collected by the discoverer. Fixes bug #673504. 2012-05-11 16:16:33 +0200 Wim Taymans * gst/playback/gsturidecodebin.c: uridecodebin: fix format strings 2012-05-11 15:33:31 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: fix format strings 2012-05-11 09:26:47 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: decodebin2: fix compilation 2012-05-10 13:15:26 -0400 Thibault Saunier * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: playback: Check type when setting "connection-speed" on unknown elements Clamp the values if needed 2012-05-10 13:11:47 -0400 Thibault Saunier * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin2: Add a connection-speed property to set it on demuxers when needed Proxy it from uridecodebin 2012-05-03 15:45:03 -0400 Nicolas Dufresne * gst-libs/gst/video/video.c: video: Key unit event properties are optional https://bugzilla.gnome.org/show_bug.cgi?id=675758 2012-05-09 17:16:37 +0200 Edward Hervey * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: win32: Update for new video enumtypes 2012-05-09 17:16:19 +0200 Edward Hervey * win32/MANIFEST: win32: Update manifest for removed interfaces library 2012-05-09 12:03:26 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Initialize variable to silence wrong compiler warning 2012-05-09 10:30:55 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Port changes to 0.11 2012-05-08 15:42:02 +0200 Mark Nauwelaerts * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: properly reconfigure upon subsequent no-more-pads ... such as during switch in chained ogg. 2012-05-08 17:35:45 +0200 Mark Nauwelaerts * ext/alsa/gstalsasink.c: alsasink: really use local ringbuffer spec helper var and init it a bit more ... to avoid assertion failures Conflicts: ext/alsa/gstalsasink.c 2012-04-27 10:19:15 +0200 Andoni Morales Alastruey * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: alsasink: use the iec958 payloader to support non-payloaded input streams 2012-05-05 23:26:20 +0100 Sebastian Rasmussen * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gst-libs: make pkg-config get path to pkg-config dirs from configure When --with-pkg-config-path is supplied to configure this path is now explicitly propagated to pkg-config. https://bugzilla.gnome.org/show_bug.cgi?id=673377 2012-05-03 18:07:37 +0300 Vivia Nikolaidou * tests/examples/playback/playback-test.c: playback: Display subseconds as proper milliseconds instead of the last 2 digits of the milliseconds 2012-05-01 23:09:22 +0100 Tim-Philipp Müller * tests/check/libs/audiocdsrc.c: tests: update audiocdsrc test for stricter URI protocol checking incore 2012-05-01 16:55:13 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Also change gst_video_decoder_get_oldest_frame() to return a new reference 2012-05-01 16:12:40 +0200 Edward Hervey * gst-libs/gst/video/gstvideoencoder.c: videoencoder: _get_oldest_frame: return a reference 2012-05-01 16:11:58 +0200 Edward Hervey * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Add a reference to frame passed to subclass We have one reference owned by the internal frame list and one reference passed to the subclass. 2012-05-01 16:09:12 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Add a reference to frame passed to subclass We have one reference owned by the internal frame list and one reference passed to the subclass. 2012-05-01 15:35:47 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoutils.c: videodecoder: don't leak events When need to push out all the previously received events, concatenate all the events from the previous frames (instead of leaking the old ones) Improve debugging a little Conflicts: gst-libs/gst/video/gstvideodecoder.c 2012-05-01 14:46:06 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: don't leak frames Frames receive a refcount when added to the frames list so release that refcount in gst_video_decoder_do_finish_frame(). Also release the ref on the frame because gst_video_decoder_do_finish_frame() takes ownership of the passed frame. 2012-05-01 14:45:46 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodecoder: avoid double unlock 2012-05-01 13:26:57 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Correctly handle crop metadata and update for videodecoder API changes 2012-04-30 13:06:26 +0200 Sebastian Dröge * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Update for basesrc API changes 2012-04-26 18:12:39 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideofilter.c: videofilter: Use a GstVideoBufferPool if none was provided 2012-04-26 18:11:08 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Do bufferpool configuration inside the default decide_allocation() implementation This allows subclasses to override it, as is necessary for e.g. the video-crop meta. It is now necessary that after decide_allocation() there is always a allocator and a configured buffer pool inside the query. 2012-04-27 16:13:27 +0200 Wim Taymans * gst/playback/gstplaysink.c: playsink: make playsink reusable The sinkpads are unblocked when going from PAUSED->READY, we need to block them again when going READY->PAUSED. The blocking of the pad previously only happened when it was freshly obtained with _request_pad or when the caps changed. If we don't release the pad when going to READY it was previously never blocked again causing not-linked errors. 2012-04-27 12:54:15 +0200 Wim Taymans * gst/playback/gstplaysink.c: playsink: don't leak the colorbalance element 2012-04-29 17:16:38 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/licenses.c: tag: improve gobject-introspection annotations 2012-04-28 19:16:52 +0100 Tim-Philipp Müller * tests/check/libs/gstlibscpp.cc: tests: fix libscpp compilation Don't include marshaller headers that have gone away and/or aren't public headers anyway so don't need to be tested for C++ compiler compatibility. 2012-04-28 15:56:25 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: add new video base class API to .def file Fixes make check. 2012-04-28 15:32:56 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: update descriptions for new webm/matroska media types 2012-04-28 15:29:54 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: more fine-grained matroska/webm typefinding Typefind to audio/x-matroska, video/x-matroska, audio/webm, video/webm and video/x-matroska-3d. http://www.webmproject.org/code/specs/container/#naming http://matroska.org/technical/specs/notes.html 2012-04-25 18:07:21 +0200 Mark Nauwelaerts * gst/gdp/gstgdppay.c: gdppay: plug buffer leak 2012-04-25 18:43:59 +0200 Stefan Sauer * tests/check/elements/volume.c: volume: add a control point for the test 2012-04-25 18:42:04 +0200 Stefan Sauer * tests/check/elements/volume.c: volume: cast outputs to correct type before comparing 2012-04-25 18:21:03 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoutils.h: video: Remove interlaced handling from the video base classes This must be handled by the subclasses in 0.11 because interlacing is much more complex now and can't be handled in a generic way. 2012-04-25 15:27:04 +0200 Wim Taymans * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video.h: video: improve docs and design of multiview interlaced Put fields of interlaced frames after eachother. Improve the docs of the video interlaced enums. 2012-04-25 14:44:33 +0200 Wim Taymans * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/video/video.h: video: add fields interlacing enum Add an enum and docs for the fields interlace mode. Improve the video caps docs for the fields interlace mode. 2012-04-25 10:39:16 +0200 Wim Taymans * gst-libs/gst/video/gstvideodecoder.c: videodec: remove some FIXMEs 2012-04-25 14:34:43 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Unref state when we're done with it 2012-04-25 13:52:51 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: video: Fix latency query handling if the element's own max_latency is GST_CLOCK_TIME_NONE 2012-04-25 13:46:00 +0200 Sebastian Dröge * gst-libs/gst/video/video.c: video: Only use the interlacing buffer flags if the caps specify interlaced video 2012-04-25 13:44:30 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: videoencoder: Proxy the interlaced buffer flags to the GstVideoCodecFrame 2012-04-25 13:15:05 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Update for video decoder API changes And also improve the buffer pool handling. 2012-04-25 12:43:28 +0200 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Update for video encoder API changes and propose video-meta for allocation 2012-04-25 12:39:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Don't propose video-meta by default 2012-04-25 12:37:39 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Change configure_buffer_pool() vfunc to decide_allocation() with same semantics as in basetransform 2012-04-04 11:51:28 +0200 Edward Hervey * ext/opus/gstopusheader.c: opus: Handle GstByteWriter return values 2012-04-19 14:41:40 +0200 Stefan Sauer * tests/check/pipelines/streamheader.c: tests: initialize variables 2012-04-24 22:42:59 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Add support for subclasses to propose allocation parameters 2012-04-24 22:35:58 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: Use crop metadata if possible and refactor cropping code a bit 2012-04-24 22:35:29 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add support for subclasses to configure the buffer pool 2012-04-24 22:05:53 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Set some more information on the output caps 2012-04-24 21:32:28 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theora: Port to 0.11 again with the new base classes 2012-04-24 21:32:08 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/video.c: video: Some porting bugfixes 2012-04-24 20:04:48 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Add minimal support for buffer pools 2012-04-24 19:51:30 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: videodecoder: Require to chain up to the parent classes event functions 2012-04-24 19:42:04 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: videoencoder: Require to chain up to the parent's sink event functions 2012-04-24 19:35:24 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Initial port of video base classes and related things to 0.11 2012-04-24 18:16:27 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/colorbalance.c: * gst-libs/gst/video/colorbalancechannel.c: * gst-libs/gst/video/video-marshal.list: * gst-libs/gst/video/videoorientation.c: video: Remove custom marshallers 2012-04-24 18:14:31 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Video base classes and theora plugin still needs to be ported again Conflicts: docs/libs/gst-plugins-base-libs-docs.sgml docs/libs/gst-plugins-base-libs-sections.txt docs/libs/gst-plugins-base-libs.types ext/theora/gsttheoradec.c ext/theora/gsttheoradec.h ext/theora/gsttheoraenc.c ext/theora/gsttheoraenc.h gst-libs/gst/video/Makefile.am gst-libs/gst/video/video.c gst-libs/gst/video/video.h gst/playback/gsturidecodebin.c tests/check/libs/video.c tests/check/pipelines/theoraenc.c win32/common/libgstvideo.def 2012-04-24 16:34:33 +0200 Mark Nauwelaerts * gst/tcp/gsttcpclientsink.c: tcpclientsink: ensure proper cleanup upon startup error 2012-04-24 16:38:31 +0200 Edward Hervey * win32/common/libgstvideo.def: win32: Update .defs file 2012-04-24 16:32:39 +0200 Edward Hervey * tests/check/pipelines/theoraenc.c: tests: Remove theoraenc discont test It should be fixed differently, see https://bugzilla.gnome.org/show_bug.cgi?id=663262 2012-04-24 15:27:25 +0200 Edward Hervey * gst-libs/gst/video/video.c: video: Fix gst_video_info_to_caps And use the 0.10 caps style 2012-04-24 15:07:31 +0200 Edward Hervey * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Detect buffers inputted with DTS Some container formats (like AVI) set DTS on the buffers instead of PTS. We detect this by: * detecting if input timestamps are non-increasing * detecting if the order the frames come out is the same as the order they were inputted (meaning the implementation is reordering frames). If the decoder reorders frames, but input buffer timestamps were not reordered, that means the buffers has DTS and not PTS as their timestamp. If this is the case, we use set the PTS of the outgoing frames in the same order as they were given to the decoder. This fixes the issue for any decoder using this base class (yay). 2012-03-07 12:22:14 +0100 Mark Nauwelaerts * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theora: Port to base video classes FIXME : Don't forget to backport changes that happened to theoraenc since April 2011 theoraenc: Don't create keyframe on time gap There is no rational to do so, and also gst_video_encoder_set_discont() is gone from base class. 2012-03-07 10:18:49 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/TODO: * gst-libs/gst/video/gstvideodecoder.c: * gst-libs/gst/video/gstvideodecoder.h: * gst-libs/gst/video/gstvideoencoder.c: * gst-libs/gst/video/gstvideoencoder.h: * gst-libs/gst/video/gstvideoutils.c: * gst-libs/gst/video/gstvideoutils.h: * win32/common/libgstvideo.def: video: Base classes for video decoders and encoders 2012-04-24 10:10:15 +0200 Edward Hervey * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add gst_video_info_is_equal 2012-04-24 10:09:57 +0200 Edward Hervey * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add GST_VIDEO_FORMAT_ENCODED 2012-03-08 12:58:03 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: video: Backport GstVideoInfo/GstVideoFormatInfo from 0.11 2012-04-24 10:13:08 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Allow newlines/whitespace at the beginning of subrip files For example the Sintel subtitles have this and without this change they're detected as text/plain and not usable as subtitles. The parser itself already handles this just fine. 2012-04-24 10:13:08 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Allow newlines/whitespace at the beginning of subrip files For example the Sintel subtitles have this and without this change they're detected as text/plain and not usable as subtitles. The parser itself already handles this just fine. 2012-04-19 14:14:35 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: video: improve frame_flags Rename the frame_flags to flags. Because they are flags on the frame object it does not need the redundant frame_ prefix. Change the order of the metadata constructor so that the flags come before the format and dimension arguments. 2012-04-19 12:13:03 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/videoconvert/gstvideoconvert.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: video: Update for libgstvideo API changes 2012-04-19 12:03:19 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Clean up interlaced flags and enums There's a new GstVideoFrameFlags enum now that contains the frame specific flags only. GstVideoFlags does not contain the TFF/TFF/ONEFIELD flags anymore because these are strictly frame specific. Also add fallback to parse these fields from the GstBufferFlags in gst_video_frame_map() if there's no GstVideoMeta attached to the buffer. 2012-04-19 05:45:40 +0200 Alessandro Decina * gst-libs/gst/app/gstappsrc.c: appsrc: reset is_eos flag after a succesful seek from _create 2012-04-19 05:45:40 +0200 Alessandro Decina * gst-libs/gst/app/gstappsrc.c: appsrc: reset is_eos flag after a succesful seek from _create 2012-04-17 18:22:24 +0200 Sebastian Dröge * tools/gst-discoverer.c: discoverer: Fix another GstBuffer occurence to GstSample 2012-04-17 17:31:24 +0200 Sebastian Dröge * tools/gst-discoverer.c: discoverer: Tags now contain GstSamples instead of GstBuffers 2012-04-17 15:09:27 +0200 Mark Nauwelaerts * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: * gst/adder/gstadder.c: * gst/adder/gstadder.h: collectpads2: rename to collectpads 2012-04-17 13:48:19 +0200 Mark Nauwelaerts * gst/adder/gstadder.c: adder: correctly adjust to modified collectpads2 event handling 2012-04-17 09:54:09 +0200 Akihiro Tsukada * gst/playback/gstplaybin2.c: playbin2: Don't hold the playbin lock in the autoplug-continue callback It's not necessary there as the group lock already protects everything we access here and causes deadlocks in some cases. Fixes bug #673708. 2012-04-17 09:54:09 +0200 Akihiro Tsukada * gst/playback/gstplaybin2.c: playbin2: Don't hold the playbin lock in the autoplug-continue callback It's not necessary there as the group lock already protects everything we access here and causes deadlocks in some cases. Fixes bug #673708. 2012-04-16 17:03:01 +0200 Mark Nauwelaerts * tests/check/Makefile.am: Revert "tests: TEMP" This reverts commit e9fbabbb866e1eafa070c9cb07ac13ffa99a92bf. 2012-03-30 16:56:16 +0200 Mark Nauwelaerts * tests/check/Makefile.am: tests: TEMP 2012-04-16 16:30:44 +0200 Mark Nauwelaerts * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: use standard collectpads event handling ... rather than (old) hacked overriding. 2012-04-16 16:30:38 +0200 Mark Nauwelaerts * gst/adder/gstadder.c: adder: chain up to collectpads event handler 2012-04-16 13:43:41 +0200 Matej Knopp * gst/playback/gstdecodebin2.c: decodebin: Do not block on sticky and oob events 2012-04-16 09:08:59 +0200 Sebastian Dröge * common: Automatic update of common submodule From 6db25be to dc70203 2012-04-13 16:29:50 +0200 Julian Scheel * gst/playback/gsturidecodebin.c: uridecodebin: Never treat live sources as streaming sources. For streaming sources a queue is added before the demuxer, which can not be properly filled by live sources. As http source can be live sources, this caused issues for example with http live sources. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674057 2012-04-16 08:27:20 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Check that properties have the correct type before using them 2012-04-16 08:24:58 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Check that properties have the correct type before using them 2012-04-15 22:46:26 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix navigation test linking 2012-04-15 22:43:22 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: update for ogg media type changes 2012-04-15 22:39:36 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: ogg: update for media type typefinding changes 2012-04-15 22:32:06 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: more fine-grained ogg typefinding Typefind to audio/ogg, video/ogg, etc. Also change application/x-annodex to application/annodex. See http://wiki.xiph.org/MIME_Types_and_File_Extensions 2012-04-14 11:26:28 +0200 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: shortcut transform_ip when not set We can ask the base class to not call our transform_ip method when the subclass didn't provide an in-place transform function. 2012-04-13 16:29:50 +0200 Julian Scheel * gst/playback/gsturidecodebin.c: uridecodebin: Never treat live sources as streaming sources. For streaming sources a queue is added before the demuxer, which can not be properly filled by live sources. As http source can be live sources, this caused issues for example with http live sources. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674057 2012-04-12 21:13:08 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/video/gstvideopool.c: videopool: fix mem leak When setting its config, the pool increase the ref count of the allocator, but at finalize the ref count is also increased rather than decreased. This one-liner patch changes the gst_allocator_ref() for gst_allocator_unref() Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674011 2012-04-13 14:32:28 +0200 Sebastian Dröge * po/POTFILES.in: po: Remove deleted header file here too 2012-04-13 14:09:47 +0200 Sebastian Dröge * docs/plugins/Makefile.am: docs: Remove header file that was deleted 2012-04-13 13:39:17 +0200 Sebastian Dröge * autogen.sh: * configure.ac: configure: Modernize autotools setup a bit Also we now only create tar.bz2 and tar.xz tarballs. 2012-04-13 13:36:59 +0200 Sebastian Dröge * common: Automatic update of common submodule From 464fe15 to 6db25be 2012-04-13 11:01:03 +0200 Sebastian Dröge * android/interfaces.mk: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * ext/alsa/Makefile.am: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsamixerelement.h: * ext/alsa/gstalsamixeroptions.c: * ext/alsa/gstalsamixeroptions.h: * ext/alsa/gstalsamixertrack.c: * ext/alsa/gstalsamixertrack.h: * ext/alsa/gstalsaplugin.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/mixer.c: * gst-libs/gst/audio/mixer.h: * gst-libs/gst/audio/mixeroptions.c: * gst-libs/gst/audio/mixeroptions.h: * gst-libs/gst/audio/mixertrack.c: * gst-libs/gst/audio/mixertrack.h: * gst-libs/gst/audio/mixerutils.c: * gst-libs/gst/audio/mixerutils.h: * gst-libs/gst/interfaces/.gitignore: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/interfaces-marshal.list: * gst-libs/gst/interfaces/tuner.c: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/tunerchannel.c: * gst-libs/gst/interfaces/tunerchannel.h: * gst-libs/gst/interfaces/tunernorm.c: * gst-libs/gst/interfaces/tunernorm.h: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/navigation.c: * gst-libs/gst/video/navigation.h: * gst-libs/gst/video/videoorientation.h: * gst-libs/gst/video/videooverlay.c: * gst/playback/Makefile.am: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/volume/Makefile.am: * gst/volume/gstvolume.c: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-interfaces-uninstalled.pc.in: * pkgconfig/gstreamer-interfaces.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * sys/ximage/Makefile.am: * sys/ximage/ximagesink.c: * sys/xvimage/Makefile.am: * sys/xvimage/xvimagesink.c: * tests/check/Makefile.am: * tests/check/elements/alsa.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/mixer.c: * tests/check/libs/navigation.c: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_x86_64.h: * tests/examples/playback/Makefile.am: * tests/examples/playback/playback-test.c: * tests/examples/seek/Makefile.am: * tests/icles/Makefile.am: * win32/common/interfaces-enumtypes.c: * win32/common/interfaces-enumtypes.h: * win32/common/libgstaudio.def: * win32/common/libgstinterfaces.def: * win32/common/libgstvideo.def: gst-libs: Remove interfaces libs and mixer/tuner interfaces The navigation interface is now in the video library. 2012-04-13 12:21:05 +0200 Mark Nauwelaerts * tests/check/elements/videorate.c: tests: videorate: remove obsolete color-matrix caps field 2012-04-12 18:20:58 -0400 Reynaldo H. Verdejo Pinochet * Android.mk: Sync Android.mk entries to the new major version Change naming on the pkgconfig files to reflect the 0.10 -> 1.0 bump. 2012-04-12 15:06:15 +0200 Edward Hervey * tests/check/elements/volume.c: check: Fix one leak in volume test 2012-04-12 11:18:44 +0200 Sebastian Dröge * configure.ac: Back to development === release 0.11.90 === 2012-04-12 10:16:03 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.11.90 2012-04-12 10:11:49 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2012-04-11 21:45:26 +0200 Mark Nauwelaerts * gst/tcp/gstmultihandlesink.c: tcp: update property documentation to reference correct property 2012-04-11 17:40:04 +0200 Wim Taymans * ext/vorbis/gstvorbisenc.c: vorbisenc: fix channel mask 2012-04-11 16:59:25 +0200 Wim Taymans * tests/check/libs/struct_i386.h: tests: remove GstNetAddress Really, really remove all mention of GstNetBuffer Fixes https://bugzilla.gnome.org/show_bug.cgi?id=673510 2012-04-02 08:59:58 +0200 Alban Browaeys * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * tests/examples/encoding/Makefile.am: * tools/Makefile.am: libs: Link against internal tag library 2012-04-11 09:57:35 +0200 Sebastian Dröge * gst-libs/gst/audio/Makefile.am: audio: Remove obsolete FIXME 0.11 2012-04-01 22:38:30 +0200 Alban Browaeys * gst-libs/gst/pbutils/Makefile.am: * tests/examples/encoding/Makefile.am: pbutils: Link against internal gst video Link pbutils and encoding tests against internal version of libgstvideo. 2012-04-10 17:24:05 +0200 Mark Nauwelaerts * tests/check/elements/opus.c: tests: port some more to 1.0 2012-04-10 17:22:44 +0200 Mark Nauwelaerts * ext/opus/gstopusdec.c: opusdec: tweak caps negotiation ... so as to avoid leaking caps or manipulating NULL caps. 2012-04-10 00:45:16 +0100 Tim-Philipp Müller * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/gio/gstgiosink.c: * gst/gio/gstgiosrc.c: * gst/gio/gstgiostreamsink.c: * gst/gio/gstgiostreamsrc.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Use new gst_element_class_set_static_metadata() 2012-04-09 14:39:21 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for new translatable strings 2012-04-06 14:52:12 +0200 Mark Nauwelaerts Merge remote-tracking branch 'origin/0.10' Conflicts: gst/h264parse/gsth264parse.c gst/videoparsers/gsth264parse.c 2012-04-06 14:52:12 +0200 Mark Nauwelaerts Merge remote-tracking branch 'origin/0.10' Conflicts: gst/h264parse/gsth264parse.c gst/videoparsers/gsth264parse.c 2012-04-06 10:54:04 +0200 Sebastian Dröge * gst/playback/gstdecodebin.c: playback: Remove gstdecodebin.c, which is nowaday unused anyway 2012-04-05 17:15:11 -0400 Thibault Saunier Merge remote-tracking branch 'origin/0.10' 2012-04-05 17:15:11 -0400 Thibault Saunier Merge remote-tracking branch 'origin/0.10' 2012-04-05 18:42:42 +0200 Sebastian Dröge * common: Automatic update of common submodule From 7fda524 to 464fe15 2012-04-05 18:02:56 +0200 Sebastian Dröge * gst/rawparse/plugin.c: gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 18:02:56 +0200 Sebastian Dröge * ext/opus/gstopus.c: gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 15:11:05 +0200 Sebastian Dröge * ext/alsa/gstalsaplugin.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/libvisual/visual.c: * ext/ogg/gstogg.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheora.c: * ext/vorbis/gstivorbisdec.c: * ext/vorbis/gstvorbis.c: * gst/adder/gstadder.c: * gst/app/gstapp.c: * gst/audioconvert/plugin.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * gst/gdp/gstgdp.c: * gst/gio/gstgio.c: * gst/playback/gstdecodebin.c: * gst/playback/gstplayback.c: * gst/subparse/gstsubparse.c: * gst/tcp/gsttcpplugin.c: * gst/typefind/gsttypefindfunctions.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximage.c: * sys/xvimage/xvimage.c: gst: Update for GST_PLUGIN_DEFINE() API change 2012-04-05 13:25:41 +0200 Sebastian Dröge * configure.ac: configure: Update version to 0.11.89.1 2012-04-04 20:43:23 +0200 Alessandro Decina * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: don't discard timestamps when consecutive input buffers have the same ts Avoid pushing out buffers with the same timestamp only if the out buffers are decoded from the same input buffer. Instead keep the timestamps when upstream pushes consecutive buffers with the same ts. 2012-04-04 20:43:23 +0200 Alessandro Decina * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: don't discard timestamps when consecutive input buffers have the same ts Avoid pushing out buffers with the same timestamp only if the out buffers are decoded from the same input buffer. Instead keep the timestamps when upstream pushes consecutive buffers with the same ts. 2012-04-04 19:43:32 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: plug a definite and rare leak 2012-04-04 19:41:34 +0200 Mark Nauwelaerts * tests/check/libs/profile.c: * tests/check/pipelines/capsfilter-renegotiation.c: tests: plug some more object and caps leaks 2012-04-04 19:41:09 +0200 Mark Nauwelaerts * gst/encoding/gstencodebin.c: encodebin: release additional obtained caps reference 2012-04-04 19:40:41 +0200 Mark Nauwelaerts * gst-libs/gst/pbutils/encoding-target.c: encoding-profile: release additional obtained caps reference 2012-04-04 13:56:17 -0300 Thiago Santos Merge branch '0.10' 2012-03-30 19:08:33 -0300 Thiago Santos * gst/playback/gstplaybin2.c: playbin2: Use new playsink send-event-mode property Set playsink's send-event-mode to MODE_FIRST as playbin2 only needs one event going to the demuxer for its operation https://bugzilla.gnome.org/show_bug.cgi?id=673211 2012-03-30 18:38:01 -0300 Thiago Santos * gst/playback/gstplaysink.c: playsink: add send-event-mode property Adds a property for playsink to define how it should handle events sent in send_event function. The default is the same as GstBin's, sending events to all internal sinks. There is also mode-first, that will send to sinks until the one handles the event successfully. https://bugzilla.gnome.org/show_bug.cgi?id=673211 2012-04-04 14:20:13 +0200 Sebastian Dröge * android/alsa.mk: * android/app.mk: * android/app_plugin.mk: * android/audio.mk: * android/audioconvert.mk: * android/decodebin.mk: * android/decodebin2.mk: * android/gdp.mk: * android/interfaces.mk: * android/pbutils.mk: * android/playbin.mk: * android/queue2.mk: * android/riff.mk: * android/rtp.mk: * android/rtsp.mk: * android/sdp.mk: * android/tag.mk: * android/tcp.mk: * android/typefindfunctions.mk: * android/video.mk: * configure.ac: * docs/libs/Makefile.am: * docs/libs/compiling.sgml: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/version.entities.in: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/id3v2frames.c: * gst-libs/gst/video/Makefile.am: * gst-plugins-base.spec.in: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/playback/Makefile.am: * gst/typefind/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-app.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-fft.pc.in: * pkgconfig/gstreamer-interfaces-uninstalled.pc.in: * pkgconfig/gstreamer-interfaces.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-riff.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtp.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-tag.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: * pkgconfig/gstreamer-video.pc.in: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: * tests/check/Makefile.am: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: * tests/examples/app/Makefile.am: * tests/examples/encoding/Makefile.am: * tests/examples/fft/Makefile.am: * tests/examples/overlay/Makefile.am: * tests/examples/playback/Makefile.am: * tests/examples/seek/Makefile.am: * tests/icles/Makefile.am: * tools/Makefile.am: * tools/gst-visualise-m.m: * win32/common/config.h: gst: Update versioning 2012-04-04 14:41:22 +0200 Sebastian Dröge * gst/rawparse/Makefile.am: gst: Update versioning 2012-04-04 14:41:22 +0200 Sebastian Dröge * ext/opus/Makefile.am: gst: Update versioning 2012-04-04 12:06:08 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' 2012-04-04 12:06:08 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' 2012-04-04 09:33:30 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: removed old memory Ensure writability of rtp buffer and remove old memory first Fix some docs 2012-04-03 18:30:38 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/adder.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/check/pipelines/theoraenc.c: tests: various fixes ... such as setting input caps, ensuring to unmap and bearing in mind that gst_buffer_make_writable usually does not provide a separate memory copy/area. 2012-04-03 18:30:31 +0200 Mark Nauwelaerts * ext/pango/gstbasetextoverlay.c: pango: plug rare buffer leak 2012-04-03 18:31:24 +0200 Mark Nauwelaerts * gst/adder/gstadder.c: adder: event handling and leak fixes 2012-04-02 17:03:00 +0200 Mark Nauwelaerts * tests/check/elements/videoscale.c: tests: videoscale: fix passthrough unit test ... to really only test the indicated scaling method rather than all of them. 2012-04-02 17:01:59 +0200 Mark Nauwelaerts * gst/videoconvert/gstvideoconvert.c: videoconvert: plug caps leak 2012-04-02 15:31:38 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: gst/mpegtsdemux/tsdemux.c 2012-04-02 15:31:38 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: gst/mpegtsdemux/tsdemux.c 2012-04-02 14:23:16 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: audio{de,en}coder: fixup documentation 2012-04-02 12:48:45 +0200 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: deactivate pool on negotiation Deactivate the old bufferpool when we negotiate a new one. 2012-04-02 12:25:30 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: fix macros 2012-04-02 11:37:43 +0200 Jonathan Lyons * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x11: fix build without XSHM Fixes https://bugzilla.gnome.org/show_bug.cgi?id=673327 2012-03-29 13:32:15 +0300 Raimo Järvi * gst/tcp/gstmultisocketsink.c: tcp: Fix compiling with mingw https://bugzilla.gnome.org/show_bug.cgi?id=673056 2012-04-02 11:21:26 +0200 Wim Taymans * gst/audioconvert/gstaudioconvert.c: audioconvert: remove useless transform_ip function 2012-04-02 11:11:33 +0200 Wim Taymans * gst/volume/gstvolume.c: volume: use transform_ip_on_passthrough 2012-04-02 11:05:38 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.h: rtp: fix initializer 2012-04-02 10:31:18 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: keep more state Prepare for the future, make it possible to map multiple buffer regions, like the header and the payload. 2012-04-01 18:11:23 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstxmptag.c: * gst/gdp/gstgdppay.c: Improve buffer allocation of wrapped memory 2012-04-01 18:04:10 +0200 Wim Taymans * gst-libs/gst/video/gstvideometa.c: videometa: use new buffer methods when mapping memory Use _find_memory and _map_range to simplify, improve and optimize the memory mapping of video frames. 2012-04-01 17:57:59 +0200 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: don't map writable in passthrough In passthrough mode we shouldn't map the buffer in write mode because the buffer might not be writable. 2012-03-31 12:54:36 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Fix handling of offset/offset-end for Ogg codecs Fixes the vorbisenc unit test. 2012-03-30 18:12:39 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstxmptag.c: * gst/gdp/gstgdppay.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: * tests/check/elements/decodebin.c: * tests/check/elements/subparse.c: * tests/check/gst/typefindfunctions.c: * tests/check/libs/audio.c: * tests/check/libs/tag.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: update for buffer api change 2012-03-30 17:09:34 +0200 Mark Nauwelaerts * ext/opus/gstopusenc.c: opusenc: fixup merge 2012-03-30 16:56:45 +0200 Mark Nauwelaerts * tests/check/elements/appsrc.c: * tests/check/elements/audioconvert.c: * tests/check/elements/decodebin.c: * tests/check/elements/videotestsrc.c: * tests/check/pipelines/capsfilter-renegotiation.c: tests: plug various caps leaks 2012-03-30 16:56:40 +0200 Mark Nauwelaerts * gst/audioconvert/gstaudioconvert.c: audioconvert: plug caps leak 2012-03-30 13:52:56 +0200 Sebastian Dröge * ext/theora/gsttheoradec.c: theoradec: Add crop metadata before mapping the buffer content Otherwise the buffer is not writable and the crop metadata can't be added. 2012-03-30 13:21:09 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audio{en,de}coder: Track input and output segments separately They can go out of sync for some time if processing of buffers on the old segment happens after the segment was received. 2012-03-30 12:57:02 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudioencoder.c: * win32/common/libgstaudio.def: audioencoder: Add gst_audio_encoder_set_headers() to the docs 2012-03-30 12:51:11 +0200 Sebastian Dröge * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: vorbisdec: Use new gst_audio_encoder_set_headers() API 2012-03-30 12:47:28 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Add function to set in-stream headers API: gst_audio_encoder_set_headers() This makes the hack in vorbisenc and probably others in ::pre_push() unnecessary. 2012-03-30 12:16:57 +0200 Sebastian Dröge * ext/vorbis/gstvorbisenc.c: vorbisenc: Update for GstAudioEncoder API changes 2012-03-30 12:15:27 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Rename ::event() to ::sink_event() and add ::src_event() 2012-03-30 12:10:15 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Rename ::event() to ::sink_event() and add ::src_event() 2012-03-30 12:22:48 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: ext: Update for GstAudioEncoder API changes 2012-03-30 12:13:40 +0200 Edward Hervey * gst-libs/gst/tag/gstexiftag.c: exiftag: Check return value of byte write methods 2012-03-30 12:06:09 +0200 Edward Hervey * tests/check/libs/tag.c: tests: Check return value of byte write methods 2012-03-30 12:05:51 +0200 Edward Hervey * gst-libs/gst/video/video.c: video: Fix 'comparison of unsigned enum expression < 0 is always false' compiler warning 2012-03-30 12:04:15 +0200 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Use unchecked byte reader methods where possible The size is checked before, so we can use them. 2012-03-30 12:02:37 +0200 Edward Hervey * ext/theora/gsttheoraenc.c: theoraenc: Specify array size Fixes error: initialization of flexible array member is not allowed 2012-03-30 12:00:08 +0200 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: Fix 'comparison of unsigned expression < 0 is always false' -1 (aka G_MAXUINT32) is the only possible 'negative' value that is used as a special value for 'not set' here. All other positive values are valid. 2012-03-30 11:58:37 +0200 Edward Hervey * ext/ogg/gstoggmux.c: oggmux: Handle return values from GstByteWriter 2012-03-30 10:20:01 +0200 Edward Hervey * tests/check/elements/subparse.c: tests: Fix subparse test It wasn't checking the srt_input2 2012-03-30 10:19:29 +0200 Edward Hervey * tests/check/elements/videoscale.c: videoscale: Fix comparision 2012-03-30 11:51:47 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * win32/common/libgstaudio.def: audiodecoder: Rename _byte_time() to _estimate_rate() Which is telling more about what this actually does and is more consistent with the video base classes. 2012-03-29 18:04:36 +0200 Sebastian Dröge Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-bad 2012-03-29 18:04:36 +0200 Sebastian Dröge Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-bad 2012-03-29 17:41:55 +0200 Edward Hervey * tests/check/libs/libsabi.c: * tests/check/libs/struct_x86_64.h: test: Enable ABI check and update 64bit file 2012-03-29 17:41:36 +0200 Edward Hervey * tests/check/libs/video.c: tests: Properly disable non-ported tests 2012-01-17 17:17:24 +0100 Edward Hervey * docs/design/draft-hw-acceleration.txt: design: First go at hardware-acceleration design doc 2012-03-29 17:41:53 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: NEWS RELEASE common configure.ac docs/libs/gst-plugins-bad-libs-sections.txt docs/plugins/gst-plugins-bad-plugins.args docs/plugins/gst-plugins-bad-plugins.hierarchy docs/plugins/gst-plugins-bad-plugins.interfaces docs/plugins/inspect/plugin-adpcmdec.xml docs/plugins/inspect/plugin-adpcmenc.xml docs/plugins/inspect/plugin-assrender.xml docs/plugins/inspect/plugin-audiovisualizers.xml docs/plugins/inspect/plugin-autoconvert.xml docs/plugins/inspect/plugin-bayer.xml docs/plugins/inspect/plugin-bz2.xml docs/plugins/inspect/plugin-camerabin2.xml docs/plugins/inspect/plugin-celt.xml docs/plugins/inspect/plugin-dataurisrc.xml docs/plugins/inspect/plugin-debugutilsbad.xml docs/plugins/inspect/plugin-dtmf.xml docs/plugins/inspect/plugin-dtsdec.xml docs/plugins/inspect/plugin-dvbsuboverlay.xml docs/plugins/inspect/plugin-dvdspu.xml docs/plugins/inspect/plugin-faac.xml docs/plugins/inspect/plugin-faad.xml docs/plugins/inspect/plugin-gsm.xml docs/plugins/inspect/plugin-h264parse.xml docs/plugins/inspect/plugin-mms.xml docs/plugins/inspect/plugin-modplug.xml docs/plugins/inspect/plugin-mpeg2enc.xml docs/plugins/inspect/plugin-mpegdemux2.xml docs/plugins/inspect/plugin-mpegtsdemux.xml docs/plugins/inspect/plugin-mpegvideoparse.xml docs/plugins/inspect/plugin-mplex.xml docs/plugins/inspect/plugin-pcapparse.xml docs/plugins/inspect/plugin-rawparse.xml docs/plugins/inspect/plugin-rtpmux.xml docs/plugins/inspect/plugin-rtpvp8.xml docs/plugins/inspect/plugin-scaletempo.xml docs/plugins/inspect/plugin-schro.xml docs/plugins/inspect/plugin-sdp.xml docs/plugins/inspect/plugin-segmentclip.xml docs/plugins/inspect/plugin-shm.xml docs/plugins/inspect/plugin-videomaxrate.xml docs/plugins/inspect/plugin-videoparsersbad.xml docs/plugins/inspect/plugin-vp8.xml docs/plugins/inspect/plugin-y4mdec.xml ext/celt/gstceltdec.c ext/dts/gstdtsdec.c ext/modplug/gstmodplug.cc ext/opus/gstopusenc.c gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h gst-libs/gst/video/gstbasevideoencoder.c gst-libs/gst/video/gstbasevideoencoder.h gst/adpcmdec/Makefile.am gst/audiovisualizers/gstbaseaudiovisualizer.c gst/h264parse/gsth264parse.c gst/mpegdemux/mpegtsparse.c gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/mpegtsparse.c gst/mpegtsdemux/tsdemux.c gst/mpegtsdemux/tsdemux.h gst/mxf/mxfdemux.c gst/rawparse/gstaudioparse.c gst/videoparsers/gsth263parse.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c sys/decklink/gstdecklinksink.cpp sys/dvb/gstdvbsrc.c sys/shm/gstshmsrc.c sys/vdpau/h264/gstvdph264dec.c sys/vdpau/mpeg/gstvdpmpegdec.c tests/examples/opencv/gst_element_print_properties.c win32/common/config.h 2012-03-29 17:41:53 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: NEWS RELEASE common configure.ac docs/libs/gst-plugins-bad-libs-sections.txt docs/plugins/gst-plugins-bad-plugins.args docs/plugins/gst-plugins-bad-plugins.hierarchy docs/plugins/gst-plugins-bad-plugins.interfaces docs/plugins/inspect/plugin-adpcmdec.xml docs/plugins/inspect/plugin-adpcmenc.xml docs/plugins/inspect/plugin-assrender.xml docs/plugins/inspect/plugin-audiovisualizers.xml docs/plugins/inspect/plugin-autoconvert.xml docs/plugins/inspect/plugin-bayer.xml docs/plugins/inspect/plugin-bz2.xml docs/plugins/inspect/plugin-camerabin2.xml docs/plugins/inspect/plugin-celt.xml docs/plugins/inspect/plugin-dataurisrc.xml docs/plugins/inspect/plugin-debugutilsbad.xml docs/plugins/inspect/plugin-dtmf.xml docs/plugins/inspect/plugin-dtsdec.xml docs/plugins/inspect/plugin-dvbsuboverlay.xml docs/plugins/inspect/plugin-dvdspu.xml docs/plugins/inspect/plugin-faac.xml docs/plugins/inspect/plugin-faad.xml docs/plugins/inspect/plugin-gsm.xml docs/plugins/inspect/plugin-h264parse.xml docs/plugins/inspect/plugin-mms.xml docs/plugins/inspect/plugin-modplug.xml docs/plugins/inspect/plugin-mpeg2enc.xml docs/plugins/inspect/plugin-mpegdemux2.xml docs/plugins/inspect/plugin-mpegtsdemux.xml docs/plugins/inspect/plugin-mpegvideoparse.xml docs/plugins/inspect/plugin-mplex.xml docs/plugins/inspect/plugin-pcapparse.xml docs/plugins/inspect/plugin-rawparse.xml docs/plugins/inspect/plugin-rtpmux.xml docs/plugins/inspect/plugin-rtpvp8.xml docs/plugins/inspect/plugin-scaletempo.xml docs/plugins/inspect/plugin-schro.xml docs/plugins/inspect/plugin-sdp.xml docs/plugins/inspect/plugin-segmentclip.xml docs/plugins/inspect/plugin-shm.xml docs/plugins/inspect/plugin-videomaxrate.xml docs/plugins/inspect/plugin-videoparsersbad.xml docs/plugins/inspect/plugin-vp8.xml docs/plugins/inspect/plugin-y4mdec.xml ext/celt/gstceltdec.c ext/dts/gstdtsdec.c ext/modplug/gstmodplug.cc ext/opus/gstopusenc.c gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h gst-libs/gst/video/gstbasevideoencoder.c gst-libs/gst/video/gstbasevideoencoder.h gst/adpcmdec/Makefile.am gst/audiovisualizers/gstbaseaudiovisualizer.c gst/h264parse/gsth264parse.c gst/mpegdemux/mpegtsparse.c gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/mpegtsparse.c gst/mpegtsdemux/tsdemux.c gst/mpegtsdemux/tsdemux.h gst/mxf/mxfdemux.c gst/rawparse/gstaudioparse.c gst/videoparsers/gsth263parse.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c sys/decklink/gstdecklinksink.cpp sys/dvb/gstdvbsrc.c sys/shm/gstshmsrc.c sys/vdpau/h264/gstvdph264dec.c sys/vdpau/mpeg/gstvdpmpegdec.c tests/examples/opencv/gst_element_print_properties.c win32/common/config.h 2012-03-29 17:14:48 +0200 Mark Nauwelaerts * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: plug caps leak 2012-03-29 15:00:22 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: gst-libs/gst/video/video-overlay-composition.c tests/check/libs/video.c 2012-03-28 16:45:03 +0200 Mark Nauwelaerts * gst-libs/gst/app/gstappsink.c: appsink: optionally obtain current caps from negotiated pad caps 2012-03-28 16:41:01 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: handle downstream seeking query ... or not, in line with how segment events are treated. 2012-03-28 12:48:55 +0200 Wim Taymans * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/gdp/gstgdppay.c: update for buffer changes 2012-03-27 15:13:24 -0400 Olivier Crête * ext/opus/gstopus.c: opus: Rank rtp pay/depay This way they can be auto-plugged. 2012-03-27 18:16:53 +0200 Mark Nauwelaerts * gst-libs/gst/tag/gsttagmux.c: tagmux: more discrete segment event dropping 2012-03-27 15:44:59 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: videopool: avoid caps copy Now that the caps from the bufferpool are not returned as const we can take a ref instead of doing a copy. 2012-03-27 15:44:43 +0200 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: avoid caps copy 2012-03-27 15:44:14 +0200 Wim Taymans * ext/pango/gstbasetextoverlay.c: testoverlay: fix object and caps leak 2012-03-27 15:43:44 +0200 Wim Taymans * ext/alsa/gstalsa.c: alsa: fix small caps leak 2012-03-27 15:01:01 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: keep the buffer reffed in the videoframe This would also ensure that the buffer is not writable while mapped. 2012-03-27 12:44:02 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: update for get_param changes Remove the const from the GstCaps. Fix some GstStructure leaks. 2012-03-26 18:13:13 +0200 Mark Nauwelaerts * gst-libs/gst/video/video.h: video: remove bogus define 2012-03-26 13:52:41 +0200 Sebastian Dröge * gst-libs/gst/pbutils/descriptions.c: pbutils: Add some more subtitle format descriptions 2012-03-26 11:56:48 +0200 Wim Taymans Replace master with 0.11 2012-03-26 09:15:18 +0200 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Some minor grid layout improvements 2012-03-26 09:13:20 +0200 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Make grid children sizes non homogeneous This only takes space for no good reason and doesn't even look good. 2012-03-26 09:11:49 +0200 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Rename advanced playback to advanced seeking It's about seeking, not general playback. 2012-03-25 13:35:23 +0100 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: * tests/check/libs/video.c: test: fix leak in video overlay composition unit test gst_buffer_set_qdata() will leak the structure passed to it when called incorrectly (e.g. on a non-metadata-writable buffer). This is expected, but we must avoid doing that in valgrind. 2012-03-25 00:31:41 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video: overlay-composition: blending micro-optimisation 2012-03-25 00:22:29 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-blend.c: video: overlay-composition: try to avoid floating point maths in inner loop Try to avoid floating point maths for each pixel to be blended in inner loop, and try to avoid the multiplication entirely for the most common case of the global alpha being 1. Could probably be refactored a bit more. 2012-03-24 19:47:10 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-overlay-composition.c: video: overlay-composition: some minor clean-ups extract_alpha and apply_global alpha always return TRUE really, so just do away with the return value. Convert a g_return_if_fail() into a g_assert(), since this is only to check internal consistency and not a guard for public API. Add some locking. https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-24 19:38:26 +0000 Holger Kaelberer * tests/check/libs/video.c: tests: add unit test for video overlay composition global alpha support https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-24 19:31:29 +0000 Holger Kaelberer * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: video: overlay-composition: add support for global alpha multiplicator https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-24 00:17:33 +0000 Tim-Philipp Müller * gst-libs/gst/riff/riff-read.c: riff: map ISBJ tag to GST_TAG_ALBUM_ARTIST http://www.bass.radio42.com/help/html/7e1a8908-88bd-d54b-77d7-f0d08466284c.htm 2012-03-23 11:07:49 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Fix subtitle rendering if there's no video, no visualizations but a text-sink 2012-03-22 15:55:11 +0100 Wim Taymans * configure.ac: back to devel === release 0.11.3 === 2012-03-22 15:50:36 +0100 Wim Taymans * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/config.h: Release 0.11.3 2012-03-22 11:35:13 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: .gitignore common configure.ac ext/vorbis/gstvorbisdeclib.h gst-libs/gst/audio/gstaudioencoder.c gst-libs/gst/riff/riff-read.c gst/playback/gstplaysink.c gst/playback/gstplaysinkconvertbin.c tests/check/libs/video.c 2012-03-21 13:20:19 +0100 Wim Taymans * win32/common/libgstaudio.def: * win32/common/libgstvideo.def: defs: update 2012-03-21 13:19:50 +0100 Wim Taymans * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: tests: don't include element header files 2012-03-20 15:37:42 +0100 Wim Taymans * gst/adder/gstadder.c: * gst/adder/gstadderorc.orc: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscaleorc.orc: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrcorc.orc: * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: orc: avoid precompilation Avoid compiling all the functions at startup but compile only what's needed when needed. 2012-03-20 13:31:24 +0100 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: add performance debug 2012-03-20 13:18:19 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: avoid memcpy in pull mode In pull mode, we can now ask the upstream element to write directly into the memory provided by libogg. 2012-03-20 10:23:47 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: * tests/check/libs/audio.c: update for memory api changes 2012-03-14 14:51:22 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: pbutils: make encoding profile classes opaque Don't typedef them to GObjectClass directly, but hide behind private structs. Fixes issues with gobject-introspection and GstEncodingProfileClass. https://bugzilla.gnome.org/show_bug.cgi?id=668542 2012-03-20 11:22:29 +0100 Mark Nauwelaerts * gst-libs/gst/video/video.c: video: fix assertion comparison mishap 2012-03-19 16:18:56 +0100 Mark Nauwelaerts * gst-libs/gst/audio/audio.h: audio: include audio enumtypes 2012-03-19 12:26:11 +0100 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add function to copy one video plane 2012-03-18 22:56:58 +0000 Tim-Philipp Müller * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-read.c: riff: map IPRD ("product") tag to GST_TAG_ALBUM http://www.bass.radio42.com/help/html/7e1a8908-88bd-d54b-77d7-f0d08466284c.htm https://bugzilla.gnome.org/show_bug.cgi?id=670286 2012-03-16 21:46:47 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/riff/riff-read.c: don't pass random pointers to pull_range 2012-03-16 20:22:19 +0100 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: fix decide_allocation We want to propose a videopool even if downstream didn't provide one. 2012-03-15 22:10:58 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: update for bufferpool changes 2012-03-15 20:36:51 +0100 Wim Taymans * ext/libvisual/Makefile.am: * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: * gst-libs/gst/video/gstvideofilter.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: update for allocation query changes 2012-03-15 14:06:24 +0100 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: update for bufferpool api change 2012-03-15 12:59:38 +0000 Vincent Penquerc'h * gst/playback/gstplaysink.c: playsink: send navigation event to the sink as a fallback When the video sink is a fakesink, which does not implement the navigation interface, playsink will drop the navigation command. In this case, send to the video sink as a fallback. It breaks the interface abstraction, but is better than just dropping the navigation event. 2012-03-15 13:32:08 +0100 Wim Taymans * ext/vorbis/gstvorbisdec.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/video/gstvideopool.c: * gst/gdp/dataprotocol.c: update for memory api changes 2012-03-14 21:35:45 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/video/gstvideopool.c: update for memory api changes 2012-03-14 19:52:03 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideopool.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: take padding into account 2012-03-14 17:59:31 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: add unit test for premultiplied alpha handling of video overlay rectangles https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-14 17:46:23 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-overlay-composition.c: video: overlay-composition: fix alpha premultiply and unpremultiply Fix component offsets for little endian systems. https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-14 17:28:57 +0000 Holger Kaelberer * gst-libs/gst/video/video-overlay-composition.c: video: overlay-composition: fix rectangle caching after alpha (un)premultiplying If we are asked to (un)premultiply,we need to create the new rectangle with the right flags, so we can find it properly on subsequent cache lookups (also because it's wrong otherwise). https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-14 17:18:47 +0000 Holger Kaelberer * gst-libs/gst/video/video-overlay-composition.c: video: overlay-composition: fix crash when doing premultiplied<->unpremultiplied alpha conversion We need to copy the pixels before messing with them, not least because the buffer creation code below assumes it's ok to take ownership. Fixes crash caused by double-free. https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-14 16:42:24 +0000 Holger Kaelberer * gst-libs/gst/video/video-overlay-composition.c: video: overlay-composition: check the right flags when searching for a cached rectangle Compare the flags of the *cached* rectangle to the desired flags when checking for a suitable rectangle in the cache. https://bugzilla.gnome.org/show_bug.cgi?id=668483 2012-03-14 15:31:45 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: remove ASSERT_CRITICAL disablement in overlay composition unit test No idea why that was there. 2012-03-14 11:04:25 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: playsink: remove circular ref between bin and internal pad ... by not assigning an additional ref to an async blocked callback, which should not be called anyway by the time the object is gone. Fixes #672006. 2012-03-14 17:14:43 +0100 Mark Nauwelaerts * sys/xvimage/xvimagesink.c: xvimagesink: free owned discarded pool configuration 2012-01-25 23:53:04 +0100 Peter Korsgaard * ext/vorbis/gstvorbisdeclib.h: vorbisdec: support modern Tremor versions Tremor changed to use standard libogg rather than its own incompatible copy back in Aug 2010 (r17375), causing gst-plugin-base build to fail. Tremolo so far unfortunately hasn't been updated. Restructure vorbisdeclib.h so the int/float logic is seperate from the ogg handling, and only use the legacy _ogg_packet_wrapper code for Tremolo. https://bugzilla.gnome.org/show_bug.cgi?id=668726 2012-03-13 20:17:55 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: videometa: also copy map/unmap functions 2012-03-13 18:15:04 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepay: add support for DTS and PTS 2012-03-13 15:24:38 +0100 Mark Nauwelaerts * gst/playback/gstplaysinkconvertbin.c: playsink: provide fresh copy for gst_caps_merge ... since it is documented to modify provided caps. 2012-03-13 12:40:11 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: only create unknown caps once 2012-03-13 12:39:52 +0100 Wim Taymans * gst-libs/gst/audio/audio.c: audio: fix debug line 2012-03-12 23:29:26 +0000 Tim-Philipp Müller * configure.ac: configure: bump AS_LIBTOOL version API was added in libgsttag, libgstaudio and libgstvideo 2012-03-12 23:28:12 +0000 Tim-Philipp Müller * configure.ac: configure: backport AS_LIBTOOL version from 0.10.36 release Should fix issues with missing symbols for people who install GStreamer from source and at some point jumped back and forth between git master and the 0.10.36 release (or 0.10. branch). 2012-03-12 19:51:21 +0100 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: don't leak the bufferpool 2012-03-12 17:16:46 +0100 Wim Taymans * tests/check/elements/decodebin2.c: tests: update for caps api changes 2012-03-12 17:06:11 +0100 Wim Taymans * ext/opus/gstopusdec.c: opusdec: fix for caps api change 2012-03-12 16:39:14 +0200 Sreerenj Balachandran * configure.ac: configure.ac : bump GLib requirement to 2.31.14 Fixes https://bugzilla.gnome.org/show_bug.cgi?id=671911 2012-03-12 12:40:09 +0100 Wim Taymans * tests/check/libs/profile.c: tests: fix for caps change 2012-03-12 12:22:54 +0100 Wim Taymans * tests/examples/encoding/gstcapslist.c: tests: fix for caps _normalize changes 2012-03-11 19:04:41 +0100 Wim Taymans * ext/alsa/gstalsa.c: * ext/libvisual/visual.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: fix for caps API changes 2012-03-09 20:54:00 +0000 Tim-Philipp Müller * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-read.c: riff: extract track number and album artist tags from INFO chunks https://bugzilla.gnome.org/show_bug.cgi?id=670286 2012-03-09 20:53:27 +0000 Tim-Philipp Müller * gst-libs/gst/riff/riff-read.c: riff: when reading tags from INFO chunk, accept lower-case IDs as well 2012-03-09 16:56:00 +0000 Tim-Philipp Müller * common: * configure.ac: configure: fix AC_LANG_SOURCE-related warnings when doing autogen.sh 2012-03-09 17:15:38 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: add some G_LIKELY 2012-03-09 15:41:30 +0000 Tim-Philipp Müller * .gitignore: .gitignore: add new playback-test binary 2012-03-09 16:17:54 +0100 Wim Taymans * gst-libs/gst/audio/audio.c: audio: avoid buffer copy when nothing is clipped when nothing is clipped, return the input buffer instead of creating and returning an identical copy. 2012-03-09 14:16:03 +0100 Mark Nauwelaerts * gst/playback/gstplaybin2.c: playbin2: do not take a superfluous ref on uridecodebin instances ... which are no longer FLOATING. 2012-03-09 14:15:44 +0100 Mark Nauwelaerts * gst/playback/gsturidecodebin.c: uridecodebin: restore FLOATING flag when reusing decodebin instance ... which avoids leaking these due to an extra ref later on. 2012-03-09 10:54:48 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audio{en,de}coder: Add optional open/close vfuncs This can be used to do something in NULL->READY, like checking if a hardware codec is actually available and to error out early. 2012-03-08 20:54:49 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: pango: re-port pangocairo deprecation and compiler warning fixes from 0.10 Wasn't applied because that code is in the new private base class. 2012-03-08 20:49:46 +0000 Tim-Philipp Müller * ext/vorbis/gstvorbisdec.c: vorbisdec: fix up for 0.11 after merge 2012-03-08 20:31:34 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: common docs/libs/gst-plugins-base-libs.types ext/pango/gsttextoverlay.c ext/vorbis/gstvorbisdec.c gst/playback/gstplaysink.c gst/playback/gstplaysinkconvertbin.c sys/ximage/ximagesink.c sys/xvimage/xvimagesink.c 2012-03-08 17:55:37 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: audio convert bin need not be unconditionally present ... so avoid NULL manipulation when setting up chain again (e.g. after having partially gone down to READY in native audio flag configuration). 2012-03-08 15:17:40 +0100 Mark Nauwelaerts * gst/playback/gstplaysinkconvertbin.c: playsink: plug element leak 2012-03-08 15:24:19 +0100 Edward Hervey * tests/check/elements/videoscale.c: check: Disable another lanczos videoscale test Segfaults hard 2012-03-08 13:03:22 +0100 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: videopool: only do alignment when videometa is enabled We require the videometa activated before we can implement the alignment of buffers. Users of the bufferpool should do this manually based on the results of the allocation query. 2012-03-08 11:32:27 +0100 Wim Taymans * tests/check/elements/opus.c: tests: fix more caps 2012-03-08 10:59:48 +0100 Wim Taymans * tests/check/elements/videoscale.c: tests: deal with lists of formats 2012-03-08 10:22:49 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: fix broken format filter Simply intersect the format with the supported formats to make the code deal with lists of formats. 2012-03-07 17:14:29 +0100 Mark Nauwelaerts * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: opus: port to updated 0.11 2012-03-07 12:45:46 +0000 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: Revert "ogg: Fix handling of unset granuleshift for the skeleton parser" This reverts commit 7418ddd753608a5fb134afeb25d7bb4e5ddc38ec. This breaks the unit test and messes up preroll/seeking. 2012-03-07 12:39:41 +0000 Tim-Philipp Müller * common: common: update common module For new check-norepeat target. 2012-03-07 12:59:28 +0100 Mark Nauwelaerts * ext/opus/gstopusenc.c: opusenc: only request and process 1 frame at a time ... since it is specified in _finish_frame that input buffer may be invalidated after calling it, and is as such not reliably available for further encoding. Also, requesting or allowing several frames is only useful if subclass intends to process these "in 1 run" (as in, 1 output buffer), not for having another (inner) loop in subclass where the baseclass one will do just fine. 2012-03-07 12:55:43 +0100 Mark Nauwelaerts * ext/opus/gstopusenc.c: opusenc: configure baseclass requested samples really in samples ... as opposed to bytes. 2012-03-07 09:04:18 +0100 Edward Hervey * win32/common/libgstaudio.def: win32: update defs for new libgstaudio symbol 2012-03-06 15:57:21 +0100 Mark Nauwelaerts * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: vorbisdec: simplify tag handling using base class helper 2012-03-06 15:56:42 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add some tag handling convenience help 2012-03-06 15:55:26 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add baseclass _CAST macro 2012-03-06 15:20:02 +0100 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: fix typos 2012-03-06 13:11:16 +0100 Sebastian Dröge * ext/pango/gsttextoverlay.c: pango: Fix 'implicit conversion from enumeration type 'GstTextOverlayLineAlign' to different enumeration type 'PangoAlignment'' compiler warning 2012-03-06 13:09:05 +0100 Sebastian Dröge * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: ogg: Fix handling of unset granuleshift for the skeleton parser And also add a helper function to properly clear/reset/free the GstOggStream structures. 2012-03-06 12:52:01 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: make video metatransform Make more generic video meta transform data that can be used for many video transformations later. 2012-03-06 12:47:33 +0100 Sebastian Dröge * sys/xvimage/xvimagesink.c: xvimagesink: Fix 'comparison of unsigned expression >= 0 is always true' -1 aka 0xffffffff is the only possible 'negative' value that is used as a special value for 'not set' here. All other positive values are valid. 2012-03-06 12:42:03 +0100 Sebastian Dröge * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: video-blend: Actually allow negative offsets in the function signature too 2012-03-06 12:40:36 +0100 Sebastian Dröge * gst-libs/gst/pbutils/install-plugins.c: pbutils: Fix 'comparison of unsigned enum expression < 0 is always false' compiler warning 2012-03-05 14:19:24 +0100 Stefan Sauer * docs/libs/gst-plugins-base-libs.types: docs: make videooverlaycomposition types show up in the docs 2012-03-05 15:28:36 +0100 Wim Taymans * sys/xvimage/xvimagepool.c: xvimage: improve debugging 2012-03-05 15:23:20 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Chain up to the parent's GstBin::handle_message() for non-prepare-xoverlay element messages 2012-03-05 12:29:26 +0100 Mark Nauwelaerts * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: add helper function to convert mask to channel positions ... as there may be other than raw audio formats using a channel mask, and there is already one to convert the other way around. 2012-03-05 12:26:29 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: stop proxying some old-style 0.10 raw audio caps fields 2012-03-05 12:25:50 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: store segment event as pending event to forego dropping it 2012-03-05 12:23:56 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: plug caps leak when setting output format 2012-03-05 12:42:27 +0100 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/videotestsrc.c: x-raw-bayer -> x-bayer Rename x-raw-bayer to x-bayer. We might want to merge this with x-raw eventually but for now keep the x-raw namespace clean. 2012-03-05 11:09:12 +0100 Oleksij Rempel (Alexey Fisher) * sys/xvimage/xvimagesink.c: xvimagesink: don't use deprecated XKeycodeToKeysym https://bugzilla.gnome.org/show_bug.cgi?id=671299 Signed-off-by: Oleksij Rempel (Alexey Fisher) 2012-03-05 11:07:39 +0100 Oleksij Rempel (Alexey Fisher) * sys/ximage/ximagesink.c: ximagesink: don't use deprecated XKeycodeToKeysym https://bugzilla.gnome.org/show_bug.cgi?id=671299 Signed-off-by: Oleksij Rempel (Alexey Fisher) 2012-03-05 10:59:00 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: enhance some debug statement 2012-03-04 10:28:49 +0100 Oleksij Rempel (Alexey Fisher) * configure.ac: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: pango: don't use deprecated pango_cairo_font_map_create_context() https://bugzilla.gnome.org/show_bug.cgi?id=671300 2012-03-03 13:51:55 +0000 Tim-Philipp Müller * tests/check/libs/discoverer.c: * tests/files/Makefile.am: * tests/files/test.mkv: tests: add test to check discoverer return code for missing plugins case https://bugzilla.gnome.org/show_bug.cgi?id=671047 2012-02-29 21:25:24 +1000 Jonathan Matthew * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: don't change result for missing plugin errors https://bugzilla.gnome.org/show_bug.cgi?id=671047 2012-03-02 17:35:40 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: use base class new vmethods Use the base class filter_meta to proxy all metadata upstream. Use the base class transform_meta to let it copy all non-colorspace dependent metadata. 2012-03-02 17:34:50 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: always chain up to parent propose_allocation 2012-03-02 17:12:25 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: remove old metadata code The subclass can help us better 2012-03-02 17:10:26 +0100 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: init VideoInfo before usage. 2012-03-02 13:04:26 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: videometa: add videoscale metadata transform 2012-03-02 13:03:51 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: update for copy data changes 2012-03-02 13:03:29 +0100 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: remove old caps fields 2012-03-02 12:11:25 +0100 Sebastian Dröge * tests/examples/playback/Makefile.am: playback-test: Link to libgstvideo too 2012-03-02 12:08:18 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: tests/examples/Makefile.am 2012-03-02 12:07:22 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: tests/examples/Makefile.am tests/examples/playback/playback-test.c 2012-03-02 12:06:53 +0100 Sebastian Dröge * tests/examples/Makefile.am: playback: Only requires GTK, not GTK-X11 2012-03-02 12:01:37 +0100 Sebastian Dröge * tests/examples/playback/playback-test.c: playback-test: Rename everything from seek to playback-test internally too 2012-03-02 11:58:30 +0100 Sebastian Dröge * tests/examples/playback/Makefile.am: * tests/examples/playback/playback-test.c: playback: Rename file from seek.c to playback-test.c 2012-03-02 11:57:34 +0100 Sebastian Dröge * configure.ac: * tests/examples/Makefile.am: * tests/examples/playback/Makefile.am: * tests/examples/playback/seek.c: * tests/examples/seek/Makefile.am: examples: Move seek example into its own directory 2012-03-02 11:01:44 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: move negotiation code around Move the format negotiation to the bufferpool negotiation. 2012-03-02 10:37:00 +0100 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: move some code The parsing of the headers consists of negotiating the format and then setting up the decoder so split this in two parts. 2012-03-02 10:25:06 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: use the right GstVideoInfo Keep track if we use the cropped or uncropped dimensions in the bufferpool and map using the right GstVideoInfo. 2012-03-02 11:31:23 +0100 Sebastian Dröge * gst/playback/Makefile.am: playback: Link to libgstinterfaces too for the navigation interface 2012-03-02 11:15:02 +0100 Sebastian Dröge * gst/playback/Makefile.am: * gst/playback/gstdecodebin2.c: * gst/playback/gstplay-marshal.list: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: gst: Update for gstmarshal.[ch] removal 2012-03-02 10:13:52 +0100 Sebastian Dröge Merge branch '0.11' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base into 0.11 2012-03-02 10:00:59 +0100 Sebastian Dröge * ext/alsa/gstalsamixer.h: * gst/volume/gstvolume.c: * sys/xvimage/xvimagesink.c: mixer/colorbalance: Update for API changes 2012-03-02 10:00:55 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: NEWS RELEASE configure.ac docs/plugins/gst-plugins-base-plugins.args docs/plugins/gst-plugins-base-plugins.hierarchy docs/plugins/gst-plugins-base-plugins.interfaces docs/plugins/inspect/plugin-adder.xml docs/plugins/inspect/plugin-alsa.xml docs/plugins/inspect/plugin-app.xml docs/plugins/inspect/plugin-audioconvert.xml docs/plugins/inspect/plugin-audiorate.xml docs/plugins/inspect/plugin-audioresample.xml docs/plugins/inspect/plugin-audiotestsrc.xml docs/plugins/inspect/plugin-cdparanoia.xml docs/plugins/inspect/plugin-encoding.xml docs/plugins/inspect/plugin-ffmpegcolorspace.xml docs/plugins/inspect/plugin-gdp.xml docs/plugins/inspect/plugin-gio.xml docs/plugins/inspect/plugin-gnomevfs.xml docs/plugins/inspect/plugin-libvisual.xml docs/plugins/inspect/plugin-ogg.xml docs/plugins/inspect/plugin-pango.xml docs/plugins/inspect/plugin-playback.xml docs/plugins/inspect/plugin-subparse.xml docs/plugins/inspect/plugin-tcp.xml docs/plugins/inspect/plugin-theora.xml docs/plugins/inspect/plugin-typefindfunctions.xml docs/plugins/inspect/plugin-uridecodebin.xml docs/plugins/inspect/plugin-videorate.xml docs/plugins/inspect/plugin-videoscale.xml docs/plugins/inspect/plugin-videotestsrc.xml docs/plugins/inspect/plugin-volume.xml docs/plugins/inspect/plugin-vorbis.xml docs/plugins/inspect/plugin-ximagesink.xml docs/plugins/inspect/plugin-xvimagesink.xml gst-libs/gst/app/gstappsink.c gst-libs/gst/audio/mixer.c gst-libs/gst/audio/mixer.h gst-libs/gst/tag/gstxmptag.c gst-libs/gst/video/colorbalance.c gst-libs/gst/video/colorbalance.h gst/adder/gstadder.c gst/playback/gstplaybasebin.c gst/playback/gstplaybin2.c gst/playback/gstplaysink.c gst/videoscale/gstvideoscale.c tests/check/elements/videoscale.c tests/examples/seek/seek.c tests/examples/v4l/probe.c win32/common/_stdint.h win32/common/audio-enumtypes.c win32/common/config.h 2012-03-01 17:36:08 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: proxy allocation meta when we can Proxy all the metadata APIs in the allocation query. Remove all metadata that is dependent on the colorspace, copy others. 2012-03-01 17:34:28 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: fix for decide_allocation changes Chain up to parent. 2012-03-01 17:29:37 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theora: fix bufferpool negotiation Store the uncropped frame dimensions in the videoinfo. Always set the caps with the dimension of the cropped output. Don't negotiate the bufferpool multiple times. Remove the old crop feature, we always crop now. 2012-03-01 13:24:45 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add support for setting a subtitle URI 2012-03-01 12:52:21 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add support for changing the remaining playbin2 properties Including video/audio/text sinks. 2012-03-01 10:45:51 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add advanced seek ability This allows to seek to a specific value in a specific format and also lists the current position and duration in a specific format. 2012-03-01 09:46:45 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Some more variable moving 2012-02-24 13:54:47 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Move seek flags/settings into its own expander 2012-02-29 21:54:49 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: drop newsegment events on sink-pads Adder is sending an own newsegment event on the src pad. 2012-02-29 21:39:44 +0100 Stefan Sauer * tests/check/elements/adder.c: test: improve adder test on event handling Use new consitency checker api to test event handling in more detail. 2012-02-29 17:25:10 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: update for metadata API changes 2012-02-27 11:57:55 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: sink event handling fix Turn _sink_event() into the collectpads event function and merge the logic from the recently added gst_adder_event. Drop flush_start events as we allready handle them on the src-pad side. Fixes #670850. 2012-02-28 16:49:10 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: add more debug about cropping 2012-02-28 16:18:30 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideometa.c: meta: add return value to transform 2012-02-28 16:16:22 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: fix some comments 2012-02-28 11:38:37 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideometa.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: update for metadata tags 2012-02-27 15:06:36 +0100 Philippe Normand * gst-libs/gst/audio/Makefile.am: audio: link against libm It is used in gststreamvolume. 2012-02-27 14:28:15 +0100 Edward Hervey * ext/alsa/gstalsadeviceprobe.c: * ext/theora/gsttheoraparse.c: * gst-libs/gst/audio/mixerutils.c: * gst/playback/gstplaybasebin.c: * gst/playback/gsturidecodebin.c: * sys/xvimage/xvimagesink.c: * tests/check/elements/alsa.c: * tests/check/elements/playbin.c: * tests/examples/v4l/probe.c: * tests/icles/test-colorkey.c: Suppress deprecation warnings in selected files, for g_value_array_* mostly 2012-02-27 13:13:14 +0100 Wim Taymans * ext/opus/gstopusenc.c: audioencoders: chain up to parent event handler 2012-02-27 13:08:36 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: don't leak event 2012-02-27 12:52:07 +0100 Wim Taymans * gst/audioconvert/gstaudioconvert.c: audioconvert: improve fixation 2012-02-27 12:51:08 +0100 Wim Taymans * ext/vorbis/gstvorbisenc.c: vorbisenc: chain up to parent event function 2012-02-27 12:49:52 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: use default event function Implement a default event function so that subclasses can call it without having to return FALSE (and make it impossible to report errors). 2012-02-27 09:58:18 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: include event name in log message 2012-02-26 23:35:06 +0000 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: add some videoscale tests for new Lanczos-based method Some crash. Others show invalid memory access in valgrind. 2012-02-26 18:19:57 +0000 Tim-Philipp Müller * gst/videoscale/gstvideoscale.c: * tests/check/elements/videoscale.c: videoscale: fix negotiation after addition of new formats and methods Now that we no longer support all methods for all formats, we need to cater for that in the transform function: we can't transform formats not supported by the currently-selected mehod. make check, folks. It's da bomb. 2012-02-26 17:46:24 +0000 Tim-Philipp Müller * tests/check/elements/videoscale.c: videoscale: fix videoscale test for new methods Not all scaling methods are supported for all formats, so can't just iterate over the template caps. 2012-02-26 20:36:46 +0100 Alessandro Decina * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/video/gstvideometa.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultisocketsink.c: Fix compiler warnings 2012-02-26 20:32:05 +0100 Alessandro Decina * ext/theora/gsttheoraenc.c: theoraenc: fix compiler warning 2012-02-25 15:21:30 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: appsink: implement SEEKING query We don't support seeking (in the sense that upstream can make us jump back and forth to certain offsets in the output). 2012-02-25 13:01:53 +0000 Tim-Philipp Müller * tests/check/elements/.gitignore: tests: add multisocketsink test binary to .gitignore 2012-02-25 01:04:07 +0000 Tim-Philipp Müller * tests/check/pipelines/capsfilter-renegotiation.c: tests: fix capsfilter-renegotiation test videotestsrc has no peer-alloc property any longer, and renegotiation should work regardless in 0.11. 2012-02-25 00:49:27 +0000 Tim-Philipp Müller * tests/check/elements/multisocketsink.c: tests: fix multisocketsink unit test Activate pad properly before using it. 2012-02-25 00:39:53 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/install-plugins.c: pbutils: fix gst_install_plugins_{sync,async} g-i annotations the gir scanner doesn't use a sensible defaults for string array arguments, so we have to annotate it properly. https://bugzilla.gnome.org/show_bug.cgi?id=668343 2012-02-24 21:37:00 +0100 Stefan Sauer * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/mixer.h: interfaces: fix ABI class padding after the recent changes 2012-02-24 12:09:31 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Let the XOverlay element handle events Need for proper resizing. 2012-02-24 12:03:34 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Use the same adjustment for the color balance scales as for the seek scale 2012-02-24 12:00:41 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Change the volume/mute widgets from the main thread And also connect to notify::mute to get notified about mute changes. 2012-02-24 11:44:53 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Refactor and cleanup seek example application 2012-02-24 11:03:16 +0100 Wim Taymans * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: update for basetransform change 2012-02-24 10:26:04 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/video/gstvideometa.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: update for metadata changes 2012-02-23 16:55:11 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: video: fix docs 2012-02-23 16:28:29 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/video.c: video: Improve video frame map/unmap Install defaul map/unmap function on the metadata and really call the functions instead of always calling a default implementation. Rework some bits so that we don't have to mess with the GstMapInfo information (adding the offset), instead pass the adjusted data pointer from the map function. 2012-02-23 16:16:37 +0100 Wim Taymans * gst-libs/gst/video/gstvideopool.h: videopool: fix docs 2012-02-23 14:46:07 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Fix mistake in last commit 2012-02-23 13:41:25 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Use g_signal_handlers_block_by_func()/unblock_by_func() instead of disconnecting and reconnecting 2012-02-23 13:39:33 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: The volume property signals are proxied in playbin2 since some time already 2012-02-23 13:31:37 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Use colorbalance of playbin2 directly 2012-02-23 13:27:28 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Proxy colorbalance interface 2012-02-23 13:19:55 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Proxy colorbalance interface 2012-02-23 12:06:15 +0000 Tim-Philipp Müller * NEWS: * RELEASE: Update NEWS and RELEASE as well 2012-02-23 11:04:00 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: Bump version after release 2012-02-23 11:59:17 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Directly use navigation interface on playbin2 2012-02-23 11:56:37 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Proxy navigation interface 2012-02-23 11:54:27 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Proxy navigation interface 2012-02-23 11:43:09 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Directly use the XOverlay interface on playbin2 2012-02-23 11:42:55 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Proxy the XOverlay interface 2012-02-23 11:33:27 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Proxy the XOverlay interface 2012-02-23 11:10:24 +0100 Wim Taymans * gst/audioresample/gstaudioresample.c: audioresample: remove transform lock In this particular case it was not sufficient anyways because the setcaps function didn't take the transform lock. 2012-02-23 11:05:11 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Force the aspect ratio if the sink has such a property 2012-02-22 21:22:06 +0000 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: riff: fix compilation on big-endian Update to new gst_buffer_map() API 2012-02-22 15:52:04 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Make navigation/colorbalance settings work with non-playbin2 pipelines too 2012-02-22 15:43:25 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add checkboxes for the remaining playbin2 flags and refactor code a bit 2012-02-22 15:31:12 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: improve fixation Use the fixed upstream caps to fixate the output caps by taking the intersection. 2012-02-22 15:27:59 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: improve propose_allocation When we are in passthrough, call the parent implementation. Otherwise we have to suggest allocation parameters ourselves. 2012-02-22 15:25:03 +0100 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x[v]imagesink: remove size check We can't to a size check like that, the strides might be different and the copy will then take care of that just fine. 2012-02-22 15:01:15 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Only show colorbalance expander for playbin2 pipelines 2012-02-22 14:58:38 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add UI for setting the colorbalance interface properties on playbin2 2012-02-22 14:53:39 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Only use the sink's colorbalance interface if it supports at least brightness/contrast/hue/saturation 2012-02-22 14:12:16 +0100 Sebastian Dröge * gst/playback/gstplaysinkvideoconvert.c: playsinkvideoconvert: Fix element name 2012-02-22 12:27:49 +0100 Wim Taymans * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: update for new fixate_caps function 2012-02-22 12:17:47 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Give a fixed name "playsink" to the internal playsink element 2012-02-22 12:07:13 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Only really use software volume if requested 2012-02-22 11:56:59 +0100 Sebastian Dröge * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: playsink: Add a software color-balance element before the sink if the sink doesn't support changing the color-balance 2012-02-22 09:32:56 +0000 Tim-Philipp Müller * gst/videotestsrc/videotestsrc.c: videotestsrc: fix YV12 chroma plane confusion GST_VIDEO_FRAME_PLANE_DATA() returns the data for the n-th plane, not the n-th component. In this case, the chroma planes are swapped. 2012-02-22 10:19:13 +0100 Sebastian Dröge * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: mixer: Add ::get_mixer_type() vfunc and deprecate interface struct value 2012-02-22 10:15:15 +0100 Sebastian Dröge * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/colorbalance.h: colorbalance: Add ::get_balance_type() vfunc and deprecated value inside the interface struct Values in class/interface structs are not supported by most bindings. 2012-02-22 10:09:15 +0100 Sebastian Dröge * gst-libs/gst/interfaces/navigation.h: navigation: Fix copy&paste error in documentation 2012-02-22 09:50:39 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Implement GstStreamVolume interface 2012-02-22 02:05:24 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstxmptag.c: * gst/gdp/gstgdppay.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: * tests/check/elements/decodebin.c: * tests/check/elements/subparse.c: * tests/check/gst/typefindfunctions.c: * tests/check/libs/audio.c: * tests/check/libs/tag.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: update for new memory api 2012-02-21 16:51:35 -0800 David Schleef * autogen.sh: autogen: workaround for gettext/automake with git Fixes: #669207. 2012-02-21 16:43:59 +0100 Vincent Untz * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Fix a build warning when compiling with asserts disabled Return a value even if the code will never be reached, to make compilers happy. https://bugzilla.gnome.org/show_bug.cgi?id=670548 2012-02-21 10:06:16 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/colorspace/colorspace.c 2012-02-21 10:06:16 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/colorspace/colorspace.c 2012-02-21 10:05:20 +0100 David Schleef * gst/videoconvert/videoconvert.c: colorspace: Fix v210 writing out of bounds Port from 0.10 branch in -bad 2012-02-21 10:01:30 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: tests/examples/seek/seek.c 2012-02-20 20:39:59 +0100 Stefan Sauer * tests/examples/seek/seek.c: seek: fix format strings 2012-02-20 17:44:59 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix connection 2012-02-20 16:44:07 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add support for sending navigation commands 2012-02-20 16:10:22 +0100 David Schleef * gst/videoconvert/videoconvert.c: videoconvert: clamp intermediates when dithering Port from the colorspace plugin in -bad. 2012-02-20 16:07:50 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/opus/gstopusparse.c gst/colorspace/colorspace.c 2012-02-20 16:07:50 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/opus/gstopusparse.c gst/colorspace/colorspace.c 2012-02-20 15:29:49 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Make the seek-bar insensitive for DVD menus 2012-02-20 15:17:29 +0100 Wim Taymans * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: playback: find raw caps correctly 2012-02-20 14:57:36 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add support for the navigation interface 2012-02-20 14:57:11 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Keep a reference to the xoverlay element 2012-02-20 14:35:37 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Add window-embedding support for OS X/Quartz osxvideosink implements the GstXOverlay interface since some time now. 2012-02-20 14:09:28 +0100 Sebastian Dröge * tests/examples/seek/seek.c: seek: Explicitely call gst_x_overlay_expose() from the GtkDrawingArea expose/draw signal 2012-02-20 12:36:02 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: try to preserver colorimetry and chroma-site Try to preserve the original chroma-site and colorimetry when nothing else was negotiated. 2012-02-19 00:03:03 -0800 David Schleef * gst/videoscale/vs_lanczos.c: videoscale: fix AYUV64 scaling 2012-02-18 17:37:29 -0800 David Schleef * gst-libs/gst/riff/riff-media.c: riff: Add v210, r210 formats 2012-02-17 23:59:56 +0100 Wim Taymans * win32/common/_stdint.h: * win32/common/config.h: win32: back to development 2012-02-17 23:46:17 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/rtsp/gstrtspconnection.c win32/common/libgstaudio.def 2012-02-17 19:15:55 +0000 Tim-Philipp Müller * tests/check/elements/multifdsink.c: tests: activate pad in multifdsink test before pushing on it 2012-02-17 15:08:36 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.c: * win32/common/libgstaudio.def: docs: add new audio base class API to docs and .def file 2012-01-30 15:55:26 +0100 Ognyan Tonchev * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: only send new data immediately if there are no queued messages Even if watch->messages->length is 0 there may still be some data from a message that was only written partially at the previous attempt stored in watch->write_data, so check for that as well. We don't want to write data into the middle of another message, which could happen when there wasn't enough bandwidth. https://bugzilla.gnome.org/show_bug.cgi?id=669039 2012-02-17 14:37:36 +0100 Wim Taymans * gst/subparse/gstssaparse.c: ssaparse: set caps on srcpad 2012-02-17 14:37:18 +0100 Wim Taymans * gst/playback/gstsubtitleoverlay.c: subtitle: avoid deadlock 2012-02-17 11:04:31 +0100 Wim Taymans * configure.ac: back to development === release 0.11.2 === 2012-02-17 11:03:14 +0100 Wim Taymans * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/interfaces-enumtypes.c: * win32/common/interfaces-enumtypes.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: RELEASE 0.11.2 2012-02-17 10:06:19 +0100 Wim Taymans * win32/common/libgstaudio.def: defs: update 2012-02-17 09:01:56 +0100 Wim Taymans Merge branch 'master' into 0.11 2012-02-17 09:01:56 +0100 Wim Taymans Merge branch 'master' into 0.11 2012-02-16 14:33:20 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/tsdemux.c gst/mve/gstmvedemux.c 2012-02-16 14:33:20 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/tsdemux.c gst/mve/gstmvedemux.c 2012-02-16 14:23:28 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/audio/gstaudioencoder.c gst-libs/gst/pbutils/gstdiscoverer.c 2012-02-16 12:19:20 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add some properties to tweak baseclass behaviour ... so subclass can also rely upon never being bothered with some NULL buffer it can't do any interesting with, or with any data before it received any format configuration (and setup properly). 2012-02-16 12:18:03 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: add some properties to tweak baseclass behaviour ... so subclass can also rely upon never being bothered with less data than it desires or with some NULL buffer it can't do any interesting with. 2012-02-16 12:15:47 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: assert some more that subclass parsed frame has proper len 2012-02-15 17:14:34 +0100 Mark Nauwelaerts Merge branch 'master' into 0.11 2012-02-15 17:14:34 +0100 Mark Nauwelaerts Merge branch 'master' into 0.11 2012-02-15 13:42:19 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: chain up to parent for defaults Chain up to the parent instead of using the FALSE return value from the event function (because it's otherwise impossible to return an error). 2012-02-15 13:32:05 +0100 Wim Taymans * ext/vorbis/gstvorbisdec.c: vorbisdec: remove old code 2012-01-17 10:54:48 +0100 Olivier Aubert * gst/playback/gstplaybin2.c: docs: fix playbin2 documentation about DVD URIs and playbin => playbin2 in example pipelines. https://bugzilla.gnome.org/show_bug.cgi?id=668081 2012-02-15 13:03:59 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: call default event handler Call the default event handler for unknown events. 2012-02-15 12:29:12 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: refactor the tag find function Move the code to find the tags and to typefind the data into a separate function. Call this function from the loop function. 2012-02-15 10:12:55 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: don't to data processing in state change Start a task to perform the pulling and typefind of the tags. 2012-02-14 19:23:27 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: try harder to obtain a duration if we don't get one right away If we don't get a duration right away, set the pipeline to playing and sleep a bit, then try again. This is ugly, but the least worst we can do right now. The alternative would be to make parsers etc. return some bogus duration estimate even after only having pushed a single frame, for example. Fixes discoverer showing 0 durations for some mp3 and aac files (e.g. soweto-adts.aac). 2012-02-14 13:25:25 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: fix src query handler We don't want to blindly forward all queries. 2012-02-14 11:19:04 +0100 Wim Taymans Merge branch 'master' into 0.11 2012-02-14 11:19:04 +0100 Wim Taymans Merge branch 'master' into 0.11 2012-02-14 10:50:45 +0100 Wim Taymans * tests/check/elements/decodebin.c: tests: fix after baseparse api change 2012-01-26 12:31:21 +0000 Vincent Penquerc'h * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: log why an overlay element cannot be used 2012-01-25 16:02:04 +0000 Vincent Penquerc'h * gst/playback/gstplaybin2.c: playbin2: fix old style raw A/V caps They're now {audio,video}/x-raw, not {audio,video}/x-raw-* https://bugzilla.gnome.org/show_bug.cgi?id=668682 2012-01-25 15:57:02 +0000 Vincent Penquerc'h * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix probing of raw video caps They're now video/x-raw, not video/x-raw-* anymore. https://bugzilla.gnome.org/show_bug.cgi?id=668682 2012-01-25 14:38:19 +0000 Vincent Penquerc'h * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: add a couple drive by const https://bugzilla.gnome.org/show_bug.cgi?id=668682 2012-02-13 17:07:25 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: videometa: adjust for memory api change 2012-02-13 15:17:09 +0100 Wim Taymans * ext/vorbis/gstvorbisdeclib.h: vorbis: port to new memory api 2012-02-13 16:03:15 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add new file to spec file 2012-02-13 16:03:03 +0000 Christian Fredrik Kalager Schaller * gst/tcp/Makefile.am: Add missing header file to build file 2012-02-12 22:28:31 +0100 Thomas Vander Stichele * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: fix up tests 2012-02-12 22:04:02 +0100 Thomas Vander Stichele * configure.ac: * gst/tcp/Makefile.am: * gst/tcp/gsttcpplugin.c: multifdsink: depends on sys/socket.h 2012-01-28 18:07:46 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * gst/tcp/gsttcpserversink.c: multihandlesink: finish refactor 2012-01-28 18:06:02 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: multihandle: rename num-fds/-sockets to num-handles 2012-01-28 11:02:21 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multihandlesink: rework to use Handle 2012-01-28 09:29:55 +0100 Thomas Vander Stichele * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: tests multihandle: verify number of handles 2012-01-27 21:28:05 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * gst/tcp/gsttcpserversink.c: multihandlesink: introduce Handle union 2012-01-27 18:44:04 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: multihandlesink: rework to use GST_TYPE_FORMAT 2012-01-27 18:40:30 +0100 Thomas Vander Stichele * tests/check/elements/multisocketsink.c: multisocketsink: fix tests by setting units properly 2012-01-27 18:33:56 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * tests/check/elements/multifdsink.c: test: use more literal enums 2012-01-27 15:46:31 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * tests/check/elements/multifdsink.c: * tests/check/elements/multisocketsink.c: multihandlesink: further refactoring 2012-01-27 12:58:12 +0100 Thomas Vander Stichele * gst/tcp/gstmultisocketsink.c: * tests/check/elements/multisocketsink.c: multisocketsink: fix refcounting bug 2012-01-26 23:19:33 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultioutputsink.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * gst/tcp/gsttcpserversink.c: multihandlesink: further refactoring 2012-01-26 19:34:47 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultisocketsink.c: * tests/check/elements/multisocketsink.c: multihandlesink: fix one bug in multisocketsink refactoring 2012-01-26 10:49:37 +0100 Thomas Vander Stichele * gst/tcp/Makefile.am: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multihandlesink: first stab at common base class 2012-01-26 10:41:22 +0100 Thomas Vander Stichele * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gstmultihandlesink.c: * gst/tcp/gstmultihandlesink.h: * gst/tcp/gstmultisocketsink.h: * gst/tcp/gsttcp-marshal.list: * gst/tcp/gsttcpplugin.c: * tests/check/elements/multifdsink.c: gst/tcp: Factor out common symbols; fix tests. 2012-01-26 10:08:47 +0100 Thomas Vander Stichele * gst/tcp/Makefile.am: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * tests/check/Makefile.am: * tests/check/elements/multifdsink.c: multifdsink: put back multifdsink before refactoring 2012-01-26 12:30:21 +0100 Thomas Vander Stichele * tests/check/Makefile.am: * tests/check/elements/multisocketsink.c: multisocketsink: copy over multifdsink unit tests, with FIXME 2012-02-12 16:54:56 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gsttagmux.c: tag: make GstTagMux base class a bit more functional We can't use G_DEFINE_*TYPE here because we need the klass in the _init method to get to the padtemplates. Fixes 'GstTagDemux subclass GstTagDemux did not set up a {sink,src} pad template' warnings. 2012-02-10 16:46:50 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/chromaprint/gstchromaprint.c ext/mpeg2enc/Makefile.am ext/voaacenc/gstvoaacenc.c gst/dvbsuboverlay/gstdvbsuboverlay.c gst/mpegtsdemux/mpegtsbase.c gst/sdp/gstsdpdemux.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c tests/examples/camerabin/gst-camera-perf.c tests/examples/camerabin/gst-camerabin-test.c tests/examples/camerabin2/gst-camerabin2-test.c tests/examples/mxf/mxfdemux-structure.c tests/examples/scaletempo/demo-main.c 2012-02-10 16:46:50 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/chromaprint/gstchromaprint.c ext/mpeg2enc/Makefile.am ext/voaacenc/gstvoaacenc.c gst/dvbsuboverlay/gstdvbsuboverlay.c gst/mpegtsdemux/mpegtsbase.c gst/sdp/gstsdpdemux.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c tests/examples/camerabin/gst-camera-perf.c tests/examples/camerabin/gst-camerabin-test.c tests/examples/camerabin2/gst-camerabin2-test.c tests/examples/mxf/mxfdemux-structure.c tests/examples/scaletempo/demo-main.c 2012-02-10 15:41:36 +0100 Wim Taymans * tests/check/elements/videoscale.c: tests: don't run with unsupported formats videoconvert does not work with GRAY formats yet so don't try to run the unit test with it. 2012-02-10 15:41:19 +0100 Wim Taymans * gst/videoconvert/videoconvert.c: videoconvert: improve error reporting 2012-02-10 15:41:06 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/vorbis/gstvorbisparse.c gst-libs/gst/video/video.c gst/videoscale/gstvideoscale.c sys/v4l/gstv4lxoverlay.c sys/v4l/v4l_calls.c sys/v4l/v4lsrc_calls.c tests/check/libs/video.c 2012-02-08 19:39:00 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: make h264 typefinder more picky when returning "likely" probability Only return LIKELY probability if we've seen an SPS, PPS and an IDR slice nal, i.e. try harder to avoid false positives such as with certain VC-1 files. https://bugzilla.gnome.org/show_bug.cgi?id=668565 2012-02-09 16:03:35 +0100 Wim Taymans * gst-libs/gst/video/video.c: video: add performance log for frame copy 2012-02-09 16:00:59 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: avoid using _CATEGORY_GET 2012-02-09 15:51:10 +0100 Wim Taymans * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix merge error Fix merge error from commit fb6d09055ae90979682fa4b1c6ee4f4abdaafd8f 2012-02-09 15:28:54 +0100 Wim Taymans * gst-libs/gst/video/video.c: * gst/videoconvert/gstvideoconvert.c: * gst/videoscale/gstvideoscale.c: debug: add some performance debug 2012-02-08 19:34:57 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: minor cosmetic change Don't write < 1 when we mean == 0. 2012-02-08 15:17:49 +0100 Wim Taymans * ext/ogg/gstoggmux.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst/gio/gstgio.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-07 23:42:48 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/Makefile.am: rtsp: make g-ir-scanner include Gio-2.0 to suppress complaints about GSocket etc. 2012-02-06 22:09:50 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: remove stray obsolete declaration 2012-02-06 22:09:34 +0100 Mark Nauwelaerts * gst-libs/gst/audio/audio.c: audio: correctly fill in fallback channel positions in stereo case 2012-02-06 18:33:59 +0100 Wim Taymans * gst-libs/gst/video/video.c: video: mark endianness correctly 2012-02-06 16:08:24 +0100 Wim Taymans * gst/volume/gstvolume.c: volume: use right info structure for setup 2012-02-06 15:51:17 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: push event in the right direction Push the stored events in the right direction 2012-02-06 13:49:12 +0000 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: tag: fix up define that tells code where to find the license translations too Tell code about new location of translation dict. 2012-02-06 13:22:14 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: audiofilter: configure info after calling vmethod First call the vmethod and then configure the audioinfo in the baseclass. This allows subclasses to know about the old format. 2012-02-06 09:45:10 +0100 Wim Taymans * win32/common/libgstaudio.def: def: update 2012-02-06 09:44:48 +0100 Wim Taymans * m4/Makefile.am: fix for removed file 2012-02-03 17:10:12 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: take care of in_place transform If the subclass doesn't implement a transform_frame function we need to force the baseclass into in_place transform. 2012-02-06 11:44:29 +0100 Sebastian Dröge * gst-libs/gst/tag/Makefile.am: tag: Install license translations into $(pkgdatadir)/0.11 This prevents file conflicts with GStreamer 0.10. 2012-02-06 10:52:01 +0100 Mark Nauwelaerts * gst-libs/gst/video/video.h: video: add GST_VIDEO_INFO_COMP_BITS 2012-02-06 09:53:22 +0100 Sebastian Dröge * gst-libs/gst/video/video.h: video: Add GST_VIDEO_INFO_COMP_WIDTH 2012-02-05 10:56:44 +0000 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theoraenc: remove obsolete properties https://bugzilla.gnome.org/show_bug.cgi?id=669328 2012-01-30 08:21:54 -0800 David Schleef * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_image.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: videoscale: Add nearest/linear scaling for NV12 2012-01-25 15:49:00 -0800 David Schleef * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_lanczos.c: videoscale: Add AYUV64 path to Lanczos 2011-08-30 19:02:51 -0700 David Schleef * ext/theora/gsttheoraenc.c: theoraenc: Use GAP flag when possible Set TH_ENCCTL_SET_DUPLICATE_FLAG when we see a gap flag, to indicate to the encoder that the current frame is a duplicate of the previous frame. 2012-02-03 15:01:50 +0100 Wim Taymans * tests/check/elements/volume.c: tests: fix volume test 2012-02-03 12:53:49 +0100 Wim Taymans * tests/check/elements/videotestsrc.c: tests: video testsrc unit test 2012-02-03 12:41:10 +0100 Wim Taymans * tests/check/elements/videorate.c: * tests/check/elements/videoscale.c: tests: fix more unit tests 2012-02-03 12:09:34 +0100 Wim Taymans * tests/check/elements/textoverlay.c: tests: don't set NULL caps 2012-02-03 11:38:55 +0100 Wim Taymans * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: gdp: fixup unit tests 2012-02-03 11:38:15 +0100 Wim Taymans * gst/gdp/gstgdppay.c: gdppay: fixup for changed caps Try to send the streamheader after the first buffer. 2012-02-03 11:37:21 +0100 Wim Taymans * gst/gdp/dataprotocol.c: dataprotocol: don't define default Category Since we now include this into the unit tests directly, don't define the default category macro because it conflicts with check. 2012-02-03 10:47:22 +0100 Wim Taymans * tests/check/elements/audioresample.c: tests: fix audioresample test 2012-02-03 09:57:21 +0100 Wim Taymans * tests/check/elements/audiorate.c: tests: fix audiorate test We need to add the layout to the audio caps. 2012-02-03 09:56:56 +0100 Wim Taymans * gst/audiorate/gstaudiorate.c: audiorate: use default event handler Use the default event handler for unknown events. 2012-02-03 09:48:22 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: don't unref caps parameter Fix refcounting on incomming caps to make sure we don't unref it too much. 2012-02-03 00:50:33 +0000 Tim-Philipp Müller * ext/opus/Makefile.am: build: fix CFLAGS order and LIBS order _BAD_CFLAGS should always come first, then GST_PLUGINS_BASE_CFLAGS, then GST_BASE_CFLAGS then GST_CFLAGS. Same for libs: first plugins base libs, then GST_BASE_LIB then GST_LIBS. 2012-01-07 23:09:23 -0500 Ryan Lortie * autogen.sh: autogen.sh: allow calling from out-of-tree https://bugzilla.gnome.org/show_bug.cgi?id=667665 2012-02-02 16:10:45 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update spec file 2012-02-01 15:28:45 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: fix granpos interpolation violating max keyframe distance In case many packets fit on a page, we may not see a granpos for a while, and granpos interpolation can wrap the 'frames since last keyframe' part of the granpos, generating a granpos which is smaller than what it should be. This is fixed by detecting keyframe packets (at least for Theora), and updating the last keyframe granpos from this. This may still be generating potentially wrong granpos for streams which have a Theora like granpos (keyframes, a max keyframe distance and a count of frames since last keyframe), and which allow implicit granules on packets. For these streams, a custom keyframe detection routine should be plugged into their GstOggStream mapper. https://bugzilla.gnome.org/show_bug.cgi?id=669164 2012-02-02 12:14:15 +0100 Wim Taymans * gst/playback/gstplaysinkconvertbin.c: playsink: call the right default query handler We need to call the default query handler of the proxy pad because only that one will forward the query to the target pad in case of the allocation query. 2012-02-02 01:35:21 +0000 Tim-Philipp Müller * gst/subparse/gstsubparse.c: * gst/typefind/gsttypefindfunctions.c: typefindfunctions, subparse: fix for gst_type_find_register() API change 2012-02-01 19:26:29 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: mark GError argument of "discovered" signal with STATIC_SCOPE So the error is passed to the callback as is without a copy being made. 2012-02-01 16:46:13 +0000 Vincent Penquerc'h * ext/vorbis/gstvorbisparse.c: vorbisparse: pedantically recognize undefined headers too 2012-02-01 16:32:24 +0000 Vincent Penquerc'h * ext/vorbis/gstvorbisparse.c: vorbisparse: fix header detection It was matching non header packets. This fixes various leaks, where buffers would be pushed onto a headers list, but never popped. Might also fix corruption as those buffers were dropped from the output silently... https://bugzilla.gnome.org/show_bug.cgi?id=669167 2012-01-29 00:21:19 +0000 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: suppress GValueArray deprecation warnings for the time being until this gets sorted out and we have a viable alternative. https://bugzilla.gnome.org/show_bug.cgi?id=667228 2012-02-01 16:33:30 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: gst_pad_get_pad_template_caps() now returns a new reference, don't forget to unref 2012-02-01 16:32:53 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio{enc,dec}oder: Check if srcpad caps are a subset of the template caps 2012-02-01 16:04:03 +0100 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: vorbis: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:00:37 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Add gst_audio_encoder_set_output_format() function for consistency 2012-02-01 15:59:57 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Rename set_outcaps() to set_output_format() and take a GstAudioInfo as parameter 2012-01-31 17:56:04 +0100 Wim Taymans * tests/check/elements/audioresample.c: tests: fix audioresample formats 2012-01-31 17:47:40 +0100 Wim Taymans * tests/check/elements/audiorate.c: tests: improve tests 2012-01-31 16:56:03 +0100 Wim Taymans * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: tests: fix some more tests 2012-01-31 16:12:33 +0100 Wim Taymans * tests/check/elements/volume.c: tests: update after controller changes 2012-01-31 16:12:16 +0100 Wim Taymans * win32/common/libgstrtsp.def: defs: update for new API 2012-01-31 12:28:30 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: adapt to control-source type changes 2012-01-30 21:37:58 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: rename control-bindings gst_control_binding_xxx -> gst_xxx_control_binding for consistency. 2012-01-30 20:58:34 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: don't blindly forward all unknown events It causes the caps event to be send downstream and cause negotiation failures. 2012-01-30 17:16:17 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst/gdp/dataprotocol.c: * gst/gdp/gstgdppay.c: * gst/tcp/gstmultisocketsink.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/streamheader.c: update for HEADER flag changes 2012-01-10 21:17:58 +0200 George Kiagiadakis * tests/check/libs/video.c: tests: test 16-bit rgb formats in test_parse_caps_rgb https://bugzilla.gnome.org/show_bug.cgi?id=667681 2012-01-10 21:02:48 +0200 George Kiagiadakis * gst-libs/gst/video/video.c: video: Use host endianness when generating caps for 16-bit rgb formats This is necessary in order to match what the caps strings in video.h contain for 16-bit rgb formats and also to match how gst_video_format_parse_caps expects them. https://bugzilla.gnome.org/show_bug.cgi?id=667681 2012-01-30 13:06:55 +0100 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: videopool: update for allocator api update 2012-01-26 10:35:51 +0100 Jonathan Matthew * tests/icles/playback/test7.c: * tests/icles/playbin-text.c: * tests/icles/position-formats.c: * tests/icles/stress-playbin.c: tests: use playbin, not playbin2 2012-01-28 14:53:21 +0000 Olivier Crête * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst/adder/gstadder.c: Use macros to register boxed types thread safely 2012-01-27 17:52:49 +0100 Olivier Crête * gst-libs/gst/rtp/gstrtcpbuffer.c: * tests/check/libs/rtp.c: rtcpbuffer: Set the map.size to the current size of the RTCP packet maxsize is the maximum size 2012-01-27 12:55:45 +0100 Olivier Crête * gst-libs/gst/rtp/gstrtcpbuffer.c: rtpcbuffer: To write inside a RTCP buffer, you must be able to read So always require read 2012-01-26 18:24:44 +0100 Olivier Crête * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: Return errors if the map mode doesn't match the actions 2012-01-26 18:24:20 +0100 Olivier Crête * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: Don't try to modify read-only buffers 2012-01-27 18:25:38 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiosrc.c: audiosrc: wait on the right cond variable This broke with a merge commit 2012-01-27 17:55:34 +0100 Jason DeRose * gst/audiorate/gstaudiorate.c: audiorate: Use the number of samples for the in and out properties as documented 2012-01-27 17:10:35 +0100 Sebastian Dröge * ext/vorbis/gstvorbisenc.c: vorbisenc: Properly generate the channel-mask on the sinkpad caps 2012-01-27 13:52:30 +0000 Vincent Penquerc'h * sys/v4l/gstv4lxoverlay.c: * sys/v4l/v4l_calls.c: * sys/v4l/v4lsrc_calls.c: v4l: include the glib compatiblity header for the deprecated mutex API 2012-01-27 14:49:58 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusenc.c: plenty: fixup glib deprecations 2012-01-27 15:12:25 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst/adder/gstadder.c 2012-01-27 12:08:33 +0100 Sebastian Dröge * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbisparse.h: vorbisparse: Pass correct header buffer size to libvorbis and include channels/rate in the srcpad caps 2012-01-26 19:47:38 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: use default event handler for delayed events 2012-01-26 15:25:18 +0100 Andoni Morales Alastruey * gst/tcp/gsttcpserversink.c: tcpserversink: remove unused include 2012-01-26 14:28:06 +0100 Wim Taymans * ext/alsa/gstalsa.c: alsa: merge instead of appending structures 2012-01-26 11:02:51 +0100 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Add width/height/framerate to the srcpad caps 2012-01-26 11:01:12 +0100 Sebastian Dröge * ext/vorbis/gstvorbisenc.c: vorbisenc: Add samplerate and channels to the srcpad caps 2012-01-26 10:27:00 +0100 Sebastian Dröge * gst/adder/gstadder.c: adder: Update for new collectpads2 event handling API 2012-01-25 18:24:07 +0100 Sebastian Dröge * ext/theora/gsttheoraenc.c: theoraenc: Fix encoding of non-mod-16 widths/heights The next higher multiple of 16 has to be passed in the input buffers but Theora does never read beyond the configured picture size. 2012-01-25 16:42:43 +0100 Sebastian Dröge * ext/theora/gsttheoraparse.c: theoraparse: Remove the synchronization points property Is someone really using it? In that case it has to be changed from a GValueArray property to something else. 2012-01-25 14:31:34 +0100 Thomas Vander Stichele * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect-build.stamp: * docs/plugins/inspect.stamp: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs/plugins: update docs, add multisocketsink 2012-01-25 15:02:09 +0100 Edward Hervey * gst/adder/gstadder.c: adder: Remove deprecation disabling It's actually fixed in 0.11 2012-01-25 12:50:44 +0100 Edward Hervey * gst/adder/gstadder.c: * tests/examples/audio/audiomix.c: * tests/examples/audio/volume.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/icles/test-colorkey.c: * tests/icles/test-videooverlay.c: Suppress deprecations in selected files 2012-01-25 13:46:35 +0100 Thomas Vander Stichele * common: Automatic update of common submodule From c463bc0 to 7fda524 2012-01-25 13:22:43 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: configure.ac ext/kate/gstkateenc.c gst/colorspace/colorspace.c gst/mpegvideoparse/mpegvideoparse.c 2012-01-25 13:22:43 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: configure.ac ext/kate/gstkateenc.c gst/colorspace/colorspace.c gst/mpegvideoparse/mpegvideoparse.c 2012-01-25 12:50:44 +0100 Edward Hervey * gst/adder/gstadder.c: * tests/examples/audio/audiomix.c: * tests/examples/audio/volume.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: Suppress deprecations in selected files 2012-01-24 17:44:21 +0000 Vincent Penquerc'h * gst/subparse/gstsubparse.c: subparse: factor memory freeing 2012-01-24 17:42:51 +0000 Vincent Penquerc'h * gst/subparse/gstsubparse.c: subparse: fix parsing by not misusing non time segments A simple filesrc ! subparse ! fakesink type pipeline now works again. 2012-01-25 12:27:49 +0100 Wim Taymans * gst/playback/gstsubtitleoverlay.c: subtitle: fix merge 2012-01-24 14:37:12 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtp: improve structures Remove flags that is in the mapinfo now 2012-01-20 16:11:54 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.h: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/tags.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/gdp/dataprotocol.c: * gst/gdp/gstgdpdepay.c: * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesrc.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * gst/videoconvert/gstvideoconvert.c: * gst/volume/gstvolume.c: * tests/check/elements/audioresample.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/elements/playbin.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videoscale.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/check/elements/vorbistag.c: * tests/check/gst/typefindfunctions.c: * tests/check/libs/audio.c: * tests/check/libs/audiocdsrc.c: * tests/check/libs/rtp.c: * tests/check/libs/tag.c: * tests/check/libs/video.c: * tests/check/libs/xmpwriter.c: * tests/check/pipelines/streamheader.c: * tests/examples/app/appsrc_ex.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/examples/snapshot/snapshot.c: * tests/icles/playbin-text.c: port to new map API 2012-01-25 12:29:11 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst/playback/gstdecodebin2.c 2012-01-25 12:25:05 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin2: Prune old groups before switching to the new one" This reverts commit e2a038acee2969ed0b558093fa1c8b7422073e40. This wasn't entirely correct yet and needs some changes here and there. 2012-01-25 12:03:31 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Fix merge error 2012-01-25 11:04:43 +0100 Olivier Crête * gst-libs/gst/rtp/gstrtpbasepayload.c: rtpbasepayload: Port to group-less GstBufferList 2012-01-25 11:50:54 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/interfaces/propertyprobe.c sys/xvimage/xvimagesink.c 2012-01-25 11:37:55 +0100 Sebastian Dröge * common: Automatic update of common submodule From 2a59016 to c463bc0 2012-01-23 09:28:18 -0800 David Schleef * gst-libs/gst/interfaces/propertyprobe.c: propertyprobe: fix documentation 2012-01-23 11:57:36 +0000 Tim-Philipp Müller * tests/icles/audio-trickplay.c: tests: fix missing include in audio-trickplay 2012-01-18 14:58:08 +0000 Vincent Penquerc'h * gst/playback/gstplaybin2.c: playbin2: do not try to deactivate an inactive group A group may have failed to activate due to an error (for instance, having set the URI to a non existent location in about-to-finish). https://bugzilla.gnome.org/show_bug.cgi?id=666395 2012-01-21 20:06:53 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: move from control-binding to control-binding-direct 2012-01-22 22:52:28 +0000 Tim-Philipp Müller * ext/alsa/gstalsasink.c: * ext/cdparanoia/gstcdparanoiasrc.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: Replace deprecated GStaticMutex with GMutex 2012-01-22 01:47:14 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: use G_TYPE_ERROR instead of GST_TYPE_G_ERROR 2012-01-17 16:05:41 +0200 Anssi Hannula * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix state change stall on PAUSED->READY->PAUSED After a PAUSED->READY change the sink pads are currently not set to blocking state. When the element is set back to PAUSED, the change will be done asynchronously, but as the _pad_blocked_cb() callback is now not called, the state change never completes. Fix that by setting the sink pads to blocking state on a PAUSED->READY change, which ensures that the _pad_blocked_cb() is called when needed on any future READY->PAUSED change. The sink pads are already put to blocking state on NULL->READY change, so this behavior is consistent. Fixes bug #668097. 2012-01-20 14:44:19 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: adapt to control_binding changes 2012-01-20 08:29:02 +0100 Stefan Sauer * gst/volume/gstvolume.c: * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: adapt to controller api changes Don't use the convenience api for control sources. 2012-01-19 16:40:22 +0100 Mark Nauwelaerts * gst/playback/gststreamsynchronizer.c: streamsynchronizer: avoid unlikely NULL dereference 2012-01-19 16:35:54 +0100 Mark Nauwelaerts * gst/videoscale/vs_fill_borders.c: videoscale: prevent implicit upgrade to integer type and sign extension 2012-01-19 16:35:04 +0100 Mark Nauwelaerts * tools/gst-discoverer.c: gst-discoverer: remove extraneous variable 2012-01-19 16:32:37 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: verify linking to overlay element 2012-01-19 16:32:05 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: avoid finding sink in NULL bin in corner case 2012-01-19 16:29:53 +0100 Mark Nauwelaerts * gst-libs/gst/tag/gstexiftag.c: tag: exif: add missing break 2012-01-19 15:32:52 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/appsink.c: * tests/check/libs/rtp.c: * tests/check/pipelines/streamheader.c: tests: fix some tests 2012-01-19 15:19:34 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcp: handle size update correctly Do explicit resize to set the size of a buffer instead of setting a value in unmap. 2012-01-19 15:18:58 +0100 Wim Taymans * gst-libs/gst/app/gstappsrc.c: appsrc: handle NULL caps correctly 2012-01-19 14:07:34 +0000 Tim-Philipp Müller * common: * configure.ac: Add --disable-fatal-warnings configure option 2012-01-19 09:17:07 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/video.c: Update for memory API changes 2012-01-19 09:48:38 +0100 Wim Taymans * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: * gst/adder/gstadder.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamsynchronizer.c: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: port to new glib thread API 2012-01-17 18:13:43 +0100 Robert Swain * docs/design/part-interlaced-video.txt: docs: interlaced video: Update docs 2012-01-19 09:17:31 +0100 Wim Taymans * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: tcp: work around compiler warnings 2011-09-13 23:14:10 +0000 Youness Alaoui * gst/playback/gstdecodebin2.c: decodebin2: Prune old groups before switching to the new one In order to allow for proper functionality when a decoder only supports one instance at a time (dsp), we must block the demuxer pads when they get created if they are not part of the active group, preventing buffers from being sent to the decoder (and initializing it through setcaps), then after we switch to a new group, we unblock the demuxer pads for the active groups. In the callback for the unblock, we prune the old groups, making sure the previous decoder instance is destroyed before we push a buffer to the new instance. 2012-01-18 17:22:21 +0000 Tim-Philipp Müller * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/glib-compat-private.h: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/xmpwriter.c: * gst-libs/gst/video/video-overlay-composition.c: * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/tcp/gstmultisocketsink.c: * gst/videorate/gstvideorate.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/examples/encoding/encoding.c: * tests/examples/overlay/gtk-videooverlay.c: * tests/examples/overlay/qt-videooverlay.cpp: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/icles/stress-playbin.c: * tests/icles/test-colorkey.c: * tests/icles/test-videooverlay.c: * tools/gst-discoverer.c: Remove compatibility code cruft for old GLib versions 2012-01-18 17:21:57 +0000 Tim-Philipp Müller * Makefile.am: Add ext/gio/ to CRUFT_DIRS 2012-01-18 17:21:36 +0000 Tim-Philipp Müller * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamcombiner.h: * gst/encoding/gststreamsplitter.c: * gst/encoding/gststreamsplitter.h: encoding: port to new GLib threading API 2012-01-18 17:21:02 +0000 Tim-Philipp Müller * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: pango: port to new GLib threading API 2012-01-18 16:55:45 +0100 Sebastian Dröge * configure.ac: configure.ac: Remove GIO check, it's in gst-glib2.m4 now 2012-01-18 16:46:01 +0100 Sebastian Dröge * common: Automatic update of common submodule From 0807187 to 2a59016 2012-01-18 16:19:12 +0100 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * ext/Makefile.am: * gst/gio/Makefile.am: * gst/gio/gstgio.c: * gst/gio/gstgio.h: * gst/gio/gstgiobasesink.c: * gst/gio/gstgiobasesink.h: * gst/gio/gstgiobasesrc.c: * gst/gio/gstgiobasesrc.h: * gst/gio/gstgiosink.c: * gst/gio/gstgiosink.h: * gst/gio/gstgiosrc.c: * gst/gio/gstgiosrc.h: * gst/gio/gstgiostreamsink.c: * gst/gio/gstgiostreamsink.h: * gst/gio/gstgiostreamsrc.c: * gst/gio/gstgiostreamsrc.h: * tests/check/Makefile.am: * tests/examples/Makefile.am: * tests/examples/gio/Makefile.am: gio: Move to gst subdirectory It's a plugin without external dependencies now because we unconditionally depend on GIO anyway. 2012-01-18 16:15:30 +0100 Sebastian Dröge * configure.ac: configure.ac: Require GLib 2.31.10 and improve GIO check 2012-01-18 13:16:46 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update spec file with latest changes 2012-01-18 01:57:41 +0000 Tim-Philipp Müller * po/POTFILES.in: po: update POTFILES.in for recent changes 2012-01-17 21:46:58 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: commit correct number of samples when not syncing 2012-01-17 18:19:30 +0100 Mark Nauwelaerts * ext/ogg/gstoggstream.c: oggstream: initialize variable ... to help out challenged compiler. 2012-01-17 16:55:54 +0100 Sebastian Dröge * configure.ac: configure: Remove socket/winsock and related checks, not necessary anymore 2012-01-17 16:38:45 +0100 Sebastian Dröge * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.c: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp.pc.in: rtsp: Port to GIO 2012-01-17 13:27:05 +0100 Sebastian Dröge * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp.pc.in: sdp: Port to GIO for multicast address detection 2012-01-17 12:21:54 +0100 Sebastian Dröge * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: tcp: Fix handling of closed connections 2012-01-17 12:08:17 +0100 Sebastian Dröge * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: tcp: Add support for IPv6 2012-01-17 11:52:49 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: register state change function 2012-01-17 11:44:20 +0100 Sebastian Dröge * gst/tcp/gstmultisocketsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: tcp: Only read as much as is currently available from the socket 2012-01-17 11:32:01 +0100 Sebastian Dröge * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: tcp: Don't leak the resolver if name resolval failed 2012-01-17 11:29:26 +0100 Sebastian Dröge * configure.ac: configure: We require GIO now 2012-01-16 11:43:25 +0000 Vincent Penquerc'h * ext/alsa/gstalsasink.c: alsasink: fix high sample rates being rejected An ALSA sink may select a different rate (as we use the _set_rate_near API, which is not guaranteed to set the exact target rate). The rest of the code seems to already handle this well, as output from a 88200 Hz file seems to have the correct pitch when selecting a 96 kHz rate. 2012-01-16 11:40:47 +0000 Vincent Penquerc'h * ext/alsa/gstalsasink.c: alsasink: fix rate match message mistaking error code for sample rate 2012-01-16 11:40:16 +0000 Vincent Penquerc'h * ext/alsa/gstalsasink.c: alsasink: log API errors along with the error code and string 2012-01-16 12:29:35 +0100 Sebastian Dröge * gst/tcp/gstmultisocketsink.c: multisocketsink: Fix possible GType namespace conflicts with the private element enums 2012-01-16 12:17:00 +0100 Sebastian Dröge * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: multisocketsink: Re-add QoS DSCP property 2012-01-16 11:25:54 +0100 Sebastian Dröge * configure.ac: * m4/gst-fionread.m4: * tests/check/Makefile.am: * tests/check/elements/multifdsink.c: tcp: Remove remaining unused stuff 2012-01-16 11:01:10 +0100 Sebastian Dröge * gst/tcp/Makefile.am: * gst/tcp/gsttcp.c: * gst/tcp/gsttcp.h: tcp: Remove old socket helper functions 2012-01-16 10:08:24 +0100 Sebastian Dröge * docs/plugins/Makefile.am: * gst/tcp/Makefile.am: * gst/tcp/gstmultisocketsink.c: * gst/tcp/gstmultisocketsink.h: * gst/tcp/gsttcp-marshal.list: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpplugin.c: * gst/tcp/gsttcpplugin.h: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversink.h: tcpserversink: Port to GIO And change multifdsink to GIO too and rename it to multisocketsink because it only works on GSockets now, not generic fds. 2012-01-11 16:06:22 +0100 Sebastian Dröge * gst/tcp/gsttcpserversrc.c: * gst/tcp/gsttcpserversrc.h: tcpserversrc: Port to GIO 2012-01-11 15:43:11 +0100 Sebastian Dröge * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsink.h: tcpclientsink: Port to GIO 2012-01-11 15:09:46 +0100 Sebastian Dröge * gst/tcp/Makefile.am: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpclientsrc.h: tcpclientsrc: Port to GIO 2011-12-27 04:18:19 +0100 Matej Knopp * gst-libs/gst/video/gstvideopool.c: videopool: fix printf warning in debug message https://bugzilla.gnome.org/show_bug.cgi?id=662607 2012-01-13 16:57:15 -0300 Reynaldo H. Verdejo Pinochet * Android.mk: Android, Add explicit path for zlib This change fixes building gst-libs/gst/tag/ code with the Android buildsystem. 2012-01-13 14:50:49 -0300 Reynaldo H. Verdejo Pinochet * ext/vorbis/gstvorbisdec.c: Fix wrong access to undefined struct member For the USE_TREMOLO case, GstVorbisDec doesn't have a vb member. Besides, Tremolo's vorbis_dsp_synthesis() expects a vorbis_dsp_state to be passed as first argument. Not a vorbis_block. 2012-01-13 14:47:13 -0300 Reynaldo H. Verdejo Pinochet * ext/vorbis/gstvorbisdec.c: Fix TREMELO -> TREMOLO typo 2012-01-13 16:52:23 +0000 Vincent Penquerc'h * sys/xvimage/xvimagesink.c: xvimagesink: fix leak when images are freed after the X context I'm not 100% sure this is valid on any other X server than mine, but since the XFree call does not take the context as a parameter, it seems pretty certain it's the right thing to do, but I'll put this caveat here in case someone checks in the future. 2012-01-13 00:11:54 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2012-01-13 00:11:54 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2012-01-12 23:35:44 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2frames.c: * tests/check/libs/tag.c: GST_TYPE_DATE -> G_TYPE_DATE 2012-01-12 23:25:22 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix up for GstTagList != GstStructure 2012-01-12 23:21:17 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: gst-libs/gst/pbutils/gstdiscoverer-types.c gst-libs/gst/pbutils/gstdiscoverer.c tests/check/Makefile.am 2012-01-12 17:31:44 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: discoverer test is now valgrind clean 2012-01-12 16:24:01 +0000 Vincent Penquerc'h * ext/theora/gsttheoraparse.c: theoraparse: fix array leak 2012-01-12 14:26:05 +0000 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix structure leak I hit the 'misc' one, but let's also make sure the topology one get freed as well, though I do not know if this can happen twice. 2012-01-12 13:57:18 +0100 Mark Nauwelaerts * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: release extra ref on converter elements 2012-01-11 20:47:00 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/video/Makefile.am: Add missing DEFAULT_INCLUDES on androgenizer call Fix building of the libgstvideo module on Android by adding the missing and needed $(DEFAULT_INCLUDES) to CFLAGS for the androgenizer call on gst-libs/gst/video/Makefile.am Before this change, building was failing due to gst-plugins-base/ and gst-plugins-base/gst-libs/gst/video being left out of the include path. 2012-01-11 16:17:42 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix push mode chain leak When I first implemented push mode seeking, I removed the chain freeing there as it could be used later. The current code does not seem to do that though, so I'm restoring the previous freeing, which plugs the leak while apparently not reintroducing use of freed data with chained and normal files, both with gst-launch playbin2 and Totem. 2012-01-11 13:32:36 +0000 Vincent Penquerc'h * tests/check/elements/opus.c: tests: fix buffer leaks in opus tests 2012-01-11 12:52:17 +0000 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: fix leaks caused by some base class dtors not being called 2012-01-11 12:16:28 +0000 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix caps and discoverer object ref leaks 2012-01-11 11:55:59 +0000 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: add a few consts where appropriate 2012-01-11 11:55:36 +0000 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix pad leak 2012-01-11 10:49:49 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: More UNPOSITION flag sanity checks ..and turn the GST_WARNING() into a g_warning(). This is a programming error and should be fixed. 2012-01-11 10:44:37 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: Add validity check for the UNPOSITIONED audio flag Also reset the flag when parsing caps. 2012-01-10 19:01:11 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: Revert "oggmux: fix pad leak" This reverts commit 5df30c1b905edce16f2258e414a0a4afb540d0f1. I must have dreamt the Valgrind logs, reverting this reintroduces no leak, and gets rid of the test failures it introduced :S 2012-01-10 18:27:19 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: use GST_TYPE_TAG_LIST for tag lists They may not be structures in 0.11/1.0. 2012-01-10 18:07:19 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix potential tag list leaks Not that I have ever seen these in practice, but if they can't happen we may just as well just assign the new tag list. Merge properly to be on the safe side, and also avoid a useless tag list copy in the normal case where there is no tag list yet. 2012-01-10 17:48:44 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix potential caps leak in last else chunk. 2012-01-10 16:57:04 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: fix tag list leak 2012-01-10 16:51:09 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix pad leak 2012-01-10 16:14:29 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix hang on small truncated files A first hang was happening when trying to locate a page backwards, where we'd sync forever on the same page. With that fixed, a second hang would happen after preparing an EOS event, but with no chain created yet to send it to, the pipeline would stay idle forever. An element error is now emitted for this case. 2012-01-10 14:35:31 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: fix pad leak 2012-01-10 15:59:27 +0100 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Don't unref the parent in the event function 2012-01-10 15:50:37 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst/mpegtsdemux/tsdemux.c gst/videoparsers/gsth264parse.c tests/check/elements/camerabin2.c 2012-01-10 15:50:37 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst/mpegtsdemux/tsdemux.c gst/videoparsers/gsth264parse.c tests/check/elements/camerabin2.c 2012-01-10 13:38:50 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix slist leak 2012-01-10 13:38:42 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix caps leak 2012-01-10 13:15:12 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/app/gstappsrc.c gst-libs/gst/audio/multichannel.h gst-libs/gst/video/videooverlay.c gst/playback/gstplaysink.c gst/playback/gststreamsynchronizer.c tests/check/Makefile.am win32/common/libgstvideo.def 2012-01-10 12:57:27 +0100 Sebastian Dröge * win32/common/libgstaudio.def: win32: Add the new audio symbols to the list of exported symbols 2012-01-10 12:46:05 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: audiometa: Improve GstAudioDownmixMeta to be actually usable This now has a two-dimensional array of coefficients as required and also stores the source and destination channel positions. 2012-01-10 12:02:56 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: Don't crash if NULL positions are passed to gst_audio_info_set_format() 2012-01-09 14:19:54 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: Fix infinite recursion by chaining up to the correct parent class vfunc 2012-01-09 12:31:02 +0100 Mark Nauwelaerts * gst/playback/gstplay-enum.h: playback: document DEINTERLACE flag 2012-01-09 08:24:23 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: Don't check for channel positions in valid order when converting to a channel mask 2012-01-07 20:12:17 +0000 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: make hostname lookup more thread-safe Don't write IP number string to return into a static array which is shared amongst all threads (note: of course a copy is returned). https://bugzilla.gnome.org/show_bug.cgi?id=666711 2012-01-07 19:39:42 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: make is_subtitle_caps thread-safe 2012-01-07 16:43:26 +0000 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/libs/discoverer.c: * tests/files/Makefile.am: * tests/files/theora-vorbis.ogg: tests: add ogg test file and some proper unit tests for discoverer Leaks when re-used, so blacklisted for valgrind for now. 2012-01-07 14:44:51 +0000 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: .def file should be sorted for make check-exports 2012-01-06 16:15:40 +0100 Mark Nauwelaerts * ext/vorbis/gstvorbisdec.c: vorbisdec: use right channel variable even more 2012-01-06 16:13:35 +0100 Mark Nauwelaerts * gst/audioresample/gstaudioresample.c: audioresample: fix debug message format specifier 2012-01-06 15:40:06 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: Revert "decodebin2: Try harder to get initial topology caps" This reverts commit 6b3e3544d41ce0bc42c3597b3eb2130719379917. I really shouldn't put WIP commits in my main branch ... 2012-01-06 15:16:00 +0100 Edward Hervey * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: tests: Remove dead header include 2012-01-06 15:14:59 +0100 Edward Hervey * gst-libs/gst/audio/audio.c: audio: Fix size check We fail (and return) if the size is *NOT* a multiple of samples. 2012-01-05 08:29:43 +0100 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Try harder to get initial topology caps Since caps are no longer 'shared' between two pads (but forwarded from source pad to sink pad) we end up with the first chain pad not having specified caps (i.e. typefind:src). This solves the issues by getting the pad's peer caps. It is not optimal since it will (for most demuxers) return the pad template caps, which might contain non-fixed caps (ex : with qtdemux "video/quicktime; video/mj2; audio/x-m4a; application/x-3gp") https://bugzilla.gnome.org/show_bug.cgi?id=667337 2012-01-06 12:06:00 +0000 Christian Fredrik Kalager Schaller * docs/design/Makefile.am: Fix playbin2 -> playbin in Makefile 2011-12-14 14:14:47 +0000 Vincent Penquerc'h * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * win32/common/libgstvideo.def: video: overlays may now have premultiplied alpha https://bugzilla.gnome.org/show_bug.cgi?id=666177 2011-11-01 17:57:59 +0100 Havard Graff * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/tag/tags.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstsmartencoder.c: * gst/playback/gstplaysink.c: * tools/gst-discoverer.c: Fix various unlikely, but still potential memoryleaks in error code paths https://bugzilla.gnome.org/show_bug.cgi?id=667311 2011-10-22 16:41:23 +0200 Havard Graff * gst-libs/gst/app/gstappsrc.c: appsrc: implement get_caps vfunc This allows downstream elements to query what caps are available. https://bugzilla.gnome.org/show_bug.cgi?id=667312 2012-01-05 13:59:32 +0100 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: expose API to convert channel array to a mask 2012-01-05 12:23:08 +0000 Tim-Philipp Müller * tools/gst-discoverer.c: tools: avoid unportable vararg macro construct in gst-discoverer https://bugzilla.gnome.org/show_bug.cgi?id=667306 2012-01-05 12:32:06 +0100 Wim Taymans * ext/vorbis/gstvorbisdec.c: vorbisdec: use right channel variable 2012-01-05 12:31:51 +0100 Wim Taymans * gst-libs/gst/riff/riff-media.c: riff: don't use NULL arrays 2012-01-01 20:44:08 +0100 Idar Tollefsen * configure.ac: build: Run platform check for platform specific configuration. 2011-10-12 11:28:10 +0200 Pascal Buhler * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: prevent overflow of 16bit header length. RTCP header can be (2^16 + 1) * 4 bytes long, so when validating a bogus packet it was possible to get a 16bit overflow resulting in a length of 0. This would put the gst_rtcp_buffer_validate_data function in a endless loop. https://bugzilla.gnome.org/show_bug.cgi?id=667313 2011-09-24 14:05:42 +0200 Havard Graff * gst/videotestsrc/videotestsrc.c: videotestsrc: keep the calculation fixed-point https://bugzilla.gnome.org/show_bug.cgi?id=667315 2011-08-04 11:30:05 +0200 Idar Tollefsen * ext/pango/gstclockoverlay.c: * ext/pango/gsttimeoverlay.c: pango: changes includes from brackets to quotes for local files https://bugzilla.gnome.org/show_bug.cgi?id=667316 2012-01-04 14:48:33 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: Improve/fix handling of NONE layouts 2012-01-04 14:35:48 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: Add support again for more than 64 channels with NONE layouts 2012-01-04 10:26:47 +0100 Sebastian Dröge * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Fix channel-mask handling 2012-01-04 10:26:33 +0100 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Fix channel-mask handling 2012-01-04 09:54:56 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.h: audio: Fix GST_AUDIO_CHANNEL_POSITION_MASK macro 2011-12-31 14:32:45 +0100 Sebastian Dröge * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: ogg: Update for the libgstriff API changes Still needs to handle the raw audio channel reordering. 2011-12-31 14:31:08 +0100 Sebastian Dröge * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/volume/gstvolume.c: gst: Add new layout field to all raw audio caps 2011-12-31 14:25:09 +0100 Sebastian Dröge * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggstream.c: * ext/vorbis/gstvorbisenc.c: ext: Add new layout field to the raw audio caps 2011-12-31 14:21:27 +0100 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: gst: Add new layout field to the raw audio caps 2011-12-31 14:15:41 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-media.h: riff: Return a channel reorder map for raw audio when creating the caps 2011-12-31 13:50:04 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff: Add the layout field to the raw audio caps 2011-12-31 13:47:57 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Proxy the channel mask field instead of the old channel-layout field 2011-12-31 13:47:24 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: Add the layout field to the caps 2011-12-31 13:46:53 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: Add "layout" field to the raw audio caps This can be used to differentiate between interleaved and non-interleaved audio and whatever comes in the future. 2011-12-31 13:33:01 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: Add function to reorder channel positions from any order to the GStreamer order 2011-12-24 10:54:20 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioringbuffer.c: audioringbuffer: Use new function to get a channel reordering map 2011-12-24 10:50:20 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: audio: Add documentation for the new functions 2011-12-24 10:37:28 +0100 Sebastian Dröge * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: Add public functions to check channel positions validity and to get a reorder map 2011-12-20 16:55:34 +0100 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: riff: Port to the new multichannel caps 2011-12-20 16:34:38 +0100 Sebastian Dröge * Makefile.am: * tests/examples/audio/Makefile.am: * tests/examples/audio/testchannels.c: audio: Remove testchannels example It's not really relevant anymore 2011-12-20 12:08:53 +0100 Sebastian Dröge * ext/vorbis/gstvorbiscommon.c: * ext/vorbis/gstvorbiscommon.h: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.c: * ext/vorbis/gstvorbisenc.c: vorbis: Port to the new multichannel caps 2011-12-20 11:44:27 +0100 Sebastian Dröge * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Port to the new multichannel caps 2011-12-19 14:27:28 +0100 Sebastian Dröge * tests/check/elements/audioconvert.c: audioconvert: Update unit test for the new multichannel caps 2011-12-19 12:41:24 +0100 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/plugin.c: audioconvert: Port to the new multichannel caps audioconvert still needs support for mixing all the new channel positions, see: https://bugzilla.gnome.org/show_bug.cgi?id=666506 2011-12-20 16:20:06 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: audioringbuffer: Add support for reordering of channels 2011-12-19 10:04:30 +0100 Sebastian Dröge * tests/check/libs/audio.c: audio: Add tests for the new multichannel caps and reordering function 2011-12-16 10:55:13 +0100 Sebastian Dröge * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/multichannel.c: * gst-libs/gst/audio/multichannel.h: audio: Add new channel positions and simplify channel expression in the caps The available channel positions are all channels from SMPTE 2036-2-2008 (in that order) and DTS Coherent Acoustics, which are basically all 28 channels that currently can appear. The channels are now expressed in the caps as a channel-mask, which describes which of the channels are present, and an optional channel-reorder-map, which must only be used after negotiation for fixated caps. For negotiation only the channel-mask and the channel count is relevant and all elements are expected to handle all reorder maps. Elements that don't can use the new API to reorder an audio buffer from any order to another order. This simplifies negotiation a lot while still having as few reorderings necassary as possible and still allow all kinds of channel layouts. 2012-01-05 01:51:35 +0000 Philip Flarsheim * gst-libs/gst/interfaces/xoverlay.c: docs: add win32 code snippets to GstXOverlay Gtk+ example 2012-01-04 19:50:58 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From a62f3d4 to 0807187 2012-01-04 17:57:39 +0100 Wim Taymans * gst/tcp/gstmultifdsink.c: multifdsink: use pad caps for streamheader Instead of using the caps on the buffer, use the caps on the pad. 2012-01-04 16:41:53 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/appsink.c: * tests/check/elements/appsrc.c: * tests/check/elements/audiorate.c: * tests/check/elements/audioresample.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/elements/multifdsink.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: * tests/check/elements/videoscale.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/check/pipelines/basetime.c: * tests/check/pipelines/capsfilter-renegotiation.c: * tests/check/pipelines/streamheader.c: tests: port and enable more unit tests 2012-01-03 21:20:04 +0000 Tim-Philipp Müller * gst/videotestsrc/Makefile.am: videotestsrc: don't build generate_sine_table utility by default 2012-01-03 11:04:23 +0100 Mark Nauwelaerts * gst/playback/gststreamsynchronizer.c: streamsynchronizer: force fallback buffer_alloc when other pad not available ... to avoid unnecessary spurious errors (upon e.g. shutdown). If a real error is applicable in this unusual circumstance (missing other pad), other (STREAM_LOCK protected) call paths can take care of that. 2012-01-03 11:02:17 +0100 Mark Nauwelaerts * gst/playback/gststreamsynchronizer.c: streamsynchronizer: avoid crashing when operating on released pad 2012-01-03 10:41:51 +0100 Wim Taymans * gst-libs/gst/video/video.h: video: add macro to check interlaced Add a convenience macro to check if the video is interlaced. 2012-01-02 18:31:16 +0100 Wim Taymans * win32/common/libgstvideo.def: defs: update 2012-01-02 18:31:05 +0100 Wim Taymans * tests/check/elements/encodebin.c: tests: small cleanup 2012-01-02 18:28:46 +0100 Wim Taymans * gst/encoding/gststreamcombiner.c: streamcombiner: fix srcpad query caps The caps query on the srcpad should return the template caps instead of forwarding the query. 2012-01-02 17:42:11 +0100 Wim Taymans * gst/videorate/gstvideorate.c: videorate: chain up to parent event function 2012-01-02 17:28:12 +0100 Wim Taymans * gst/videorate/gstvideorate.c: videorate: fix caps negotiation function 2012-01-02 16:13:51 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: videofilter: use caps of the allocation query Use the caps from the allocation query to propose a video bufferpool instead of our own negotiated caps. 2012-01-02 15:59:09 +0100 Wim Taymans * gst/audioresample/gstaudioresample.c: audioresample: truncate in fixation 2012-01-02 15:40:35 +0100 Wim Taymans * tests/check/pipelines/oggmux.c: tests: fix a unit test The ogg muxer now has video and audio pads 2012-01-02 15:39:58 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: turn assert into a real error Post a real error instead of just asserting. Fixes a unit test. 2012-01-02 14:30:53 +0000 Tim-Philipp Müller * gst-libs/gst/audio/mixerutils.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * tests/check/elements/decodebin.c: * tests/check/elements/libvisual.c: * tests/check/generic/states.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: playback, mixerutils: gst_registry_get_default() -> gst_registry_get() 2012-01-02 15:03:54 +0100 Wim Taymans * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstchannelmix.c: audioconvert: handle unpositioned channels Refuse to convert between unpositioned layouts. 2012-01-02 15:01:58 +0100 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: add flag for unpositioned layout Check if thr layout is explicitly unpositioned and set a flag in the audio info structure. 2012-01-02 15:00:51 +0100 Wim Taymans * tests/check/elements/audioconvert.c: tests: remove unsupported formats Remove tests for a format that is no longer supported 2012-01-02 13:30:53 +0100 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: video: fix some video formats Rename the offset field in GstVideoFormatInfo to poffset to avoid confusion with the offset of the plane in the buffer. The poffset is the offset in the plane where the first byte of the component data can be found. Properly implement the COMP_OFFSET calculations. Fix YV12 and YVU9, simply use the same offsets as the regular I420 and YUV9 variants, we use the plane info to reorder components already. Improve the unit test. 2012-01-02 00:59:39 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/tag.h: * tests/check/libs/tag.c: * win32/common/libgsttag.def: tag: add function to check whether a string is a valid language code API: gst_tag_check_language_code() 2011-12-20 21:48:29 +0000 Tim-Philipp Müller * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/rtsp/gstrtspdefs.h: audio, rtsp: remove private/protected gtk-doc markup for enums This confuses glib-mkenums, and is not really useful anyway. https://bugzilla.gnome.org/show_bug.cgi?id=666618 2011-12-30 18:36:37 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: port to latest API changes 2011-12-30 19:26:24 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideofilter.h: video: add some padding to GstVideoFilter 2011-12-30 19:24:09 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/video/gstvideofilter.h: docs: make gtk-doc happier 2011-12-30 16:47:13 +0000 Tim-Philipp Müller * tests/check/libs/audiocdsrc.c: tests: disable direct structure access in audiocd test 2011-12-30 16:26:47 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.h: audiocdsrc: remove some probing-related vfuncs GstPropertyProbe was removed, so these aren't actually used and we probably want something different for the new API. 2011-12-30 16:18:39 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: audiocdsrc: update for GstIndex removal 2011-12-30 16:12:30 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.h: audiocdsrc: make private bits private 2011-12-30 13:21:35 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/theora/gsttheoraenc.c gst-libs/gst/tag/gstexiftag.c gst/adder/gstadder.c gst/adder/gstadder.h gst/playback/gstdecodebin2.c gst/playback/gstsubtitleoverlay.c tests/check/libs/tag.c 2011-12-30 11:49:27 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: tests/examples/camerabin2/Makefile.am 2011-12-30 11:49:27 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: tests/examples/camerabin2/Makefile.am 2011-12-30 11:41:17 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11-premerge Conflicts: docs/libs/Makefile.am ext/kate/gstkatetiger.c ext/opus/gstopusdec.c ext/xvid/gstxvidenc.c gst-libs/gst/basecamerabinsrc/Makefile.am gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideoencoder.c gst/asfmux/gstasfmux.c gst/audiovisualizers/gstwavescope.c gst/camerabin2/gstcamerabin2.c gst/debugutils/gstcompare.c gst/frei0r/gstfrei0rmixer.c gst/mpegpsmux/mpegpsmux.c gst/mpegtsmux/mpegtsmux.c gst/mxf/mxfmux.c gst/videomeasure/gstvideomeasure_ssim.c gst/videoparsers/gsth264parse.c gst/videoparsers/gstmpeg4videoparse.c 2011-12-30 11:41:17 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11-premerge Conflicts: docs/libs/Makefile.am ext/kate/gstkatetiger.c ext/opus/gstopusdec.c ext/xvid/gstxvidenc.c gst-libs/gst/basecamerabinsrc/Makefile.am gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideoencoder.c gst/asfmux/gstasfmux.c gst/audiovisualizers/gstwavescope.c gst/camerabin2/gstcamerabin2.c gst/debugutils/gstcompare.c gst/frei0r/gstfrei0rmixer.c gst/mpegpsmux/mpegpsmux.c gst/mpegtsmux/mpegtsmux.c gst/mxf/mxfmux.c gst/videomeasure/gstvideomeasure_ssim.c gst/videoparsers/gsth264parse.c gst/videoparsers/gstmpeg4videoparse.c 2011-12-28 16:25:37 +0100 Edward Hervey * tests/check/libs/video.c: check/video: Caps have "interlace-mode=progressive" by default 2011-12-28 16:24:53 +0100 Edward Hervey * tests/check/elements/decodebin.c: check/decodebin: Fix callback signature The "gboolean last" argument is gone. 2011-12-28 16:23:26 +0100 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils/descriptions: Handle "video/x-raw" without specified format Without having it raise an assertion, which is valid when asking for the description of the format. 2011-12-25 18:07:10 +0100 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: videopool: add support for custom allocators 2011-12-27 14:37:26 -0300 Thiago Santos * ext/ogg/gstoggmux.c: oggmux: fix leak when initializing pads Pads are initialized twice: when requesting pads and when initializing collectpads. Avoid double initialization by checking if collectpads are still going to be initialized when creating request pads. 2011-12-25 23:19:57 +0000 Tim-Philipp Müller * android/gdp.mk: * configure.ac: * gst/gdp/Makefile.am: * gst/gdp/dataprotocol.c: * gst/gdp/dp-private.h: * gst/gdp/gstgdp.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * tests/check/Makefile.am: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: gdp: move dataprotocol library into gdp plugin and make private We have removed things like protocol=gdp in the tcp elements in favour of explicit gdppay/depay elements, so there's no need to keep a public API and library for now. We can still add it back later. Someone needs to think hard about 0.11 and gdp anyway one of these days. 2011-12-25 23:25:34 +0000 Tim-Philipp Müller Merge branch 'merge-dataprotocol-library-into-gdp-plugin' into 0.11 2011-12-25 23:10:23 +0000 Tim-Philipp Müller * android/tcp.mk: * gst/tcp/Makefile.am: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcp.c: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpplugin.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: tcp: remove some dataprotocol cruft The protocol=gdp property has been removed in favour of explicit gdppay/depay. 2011-11-11 17:17:43 +0100 Wim Taymans * gst/gdp/dataprotocol.h: gdp: fix header files Ensure correct indentation and retab Make sure all structure have padding 2011-08-16 17:32:20 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: rename buffer PREROLL -> LIVE flag Rename the GST_BUFFER_FLAG_PREROLL to GST_BUFFER_FLAG_LIVE and give the new flag a meaning. The old PREROLL flag never had a clear meaning. 2011-06-10 13:40:57 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: make new _buffer_allocate method Make a new method to allocate a buffer + memory that takes the allocator and the alignment as parameters. Provide a macro for the old method but prefer to use the new method to encourage plugins to negotiate the allocator properly. 2011-05-13 18:07:24 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: Rework GstSegment handling Improve GstSegment, rename some fields. The idea is to have the GstSegment structure represent the timing structure of the buffers as they are generated by the source or demuxer element. gst_segment_set_seek() -> gst_segment_do_seek() Rename the NEWSEGMENT event to SEGMENT. Make parsing of the SEGMENT event into a GstSegment structure. Pass a GstSegment structure when making a new SEGMENT event. This allows us to pass the timing info directly to the next element. No accumulation is needed in the receiving element, all the info is inside the element. Remove gst_segment_set_newsegment(): This function as used to accumulate segments received from upstream, which is now not needed anymore because the segment event contains the complete timing information. 2011-05-10 11:50:16 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: Hide the GstStructure in GstEvent Hide the GstStructure of the event in the implementation specific part so that we can change it. Add methods to check and make the event writable. Add a new method to get a writable GstStructure of the element. Avoid directly accising the event structure. 2011-05-02 16:00:52 +0300 Stefan Kost * gst/gdp/dataprotocol.h: gdp: add docs for GstDPPacketizer 2011-03-21 18:13:55 +0100 Wim Taymans * gst/gdp/dataprotocol.c: gdp: port code to new buffer data API 2010-12-06 19:40:03 +0100 Wim Taymans * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: gdp: remove deprecated code 2010-10-08 09:34:47 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: make public enum _get_type() functions thread-safe Not that it is likely to matter in practice, but since these are public API they should probably be thread-safe. 2010-10-08 00:38:39 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: dataprotocol, lfocontrolsource: fix enum value name in enums that are public API So run-time bindings can introspect the names correctly (we abuse this field as description field only in elements, not for public API (where the description belongs into the gtk-doc chunk). https://bugzilla.gnome.org/show_bug.cgi?id=629946 2010-03-02 22:58:06 +0100 Benjamin Otte * gst/gdp/dataprotocol.c: gdp: Fixes for -Wmissing-declarations -Wmissing-prototypes Also adds those flags to the configure warning flags https://bugzilla.gnome.org/show_bug.cgi?id=611692 2010-03-02 23:51:18 +0100 Benjamin Otte * gst/gdp/dp-private.h: gdp: Make code safe for -Wredundant-decls Adds that warning to configure.ac Includes a tiny change of the GST_BOILERPLATE_FULL() macro: The get_type() function is no longer declared before being defined. https://bugzilla.gnome.org/show_bug.cgi?id=611692 2009-11-27 16:39:37 +0200 Stefan Kost * gst/gdp/dataprotocol.c: gdp: fix broken xrefs in docs 2008-06-30 09:38:45 +0000 Sebastian Dröge gdp: Don't write to the same region of memory as a uint64 and uint16 as this breaks ... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: Don't write to the same region of memory as a uint64 and uint16 as this breaks strict aliasing rules and apparantly breaks on PPC and s390. Thanks to Sjoerd Simons for analysing. Fixes bug #348114. 2008-03-27 15:23:55 +0000 Michael Smith gdp: When calculating GDP body CRC, use the correct pointer. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event_1_0): When calculating GDP body CRC, use the correct pointer. Fixes part of #522401. 2008-02-29 12:41:33 +0000 Sebastian Dröge gdp: Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static... Original commit message from CVS: * gst/gstconfig.h.in: * libs/gst/base/gstcollectpads.c: (gst_collect_pads_read_buffer): * libs/gst/check/gstcheck.c: (gst_check_log_message_func), (gst_check_log_critical_func), (gst_check_drop_buffers), (gst_check_element_push_buffer_list): * libs/gst/controller/gstcontroller.c: (gst_controller_get), (gst_controller_get_type): * libs/gst/controller/gsthelper.c: (gst_object_control_properties), (gst_object_get_controller), (gst_object_get_control_source): * libs/gst/controller/gstinterpolationcontrolsource.c: (gst_interpolation_control_source_new): * libs/gst/controller/gstlfocontrolsource.c: (gst_lfo_control_source_new): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_event_from_packet_0_2): * plugins/elements/gstfdsrc.c: * plugins/elements/gstmultiqueue.c: * plugins/elements/gsttee.c: * plugins/elements/gsttypefindelement.c: * plugins/indexers/gstfileindex.c: (_file_index_id_save_xml), (gst_file_index_add_association): * plugins/indexers/gstmemindex.c: * tests/benchmarks/gstpollstress.c: (mess_some_more): * tests/check/elements/queue.c: (setup_queue): * tests/check/gst/gstpipeline.c: * tests/check/libs/collectpads.c: (setup), (teardown), (gst_collect_pads_suite): * tests/examples/adapter/adapter_test.c: * tests/examples/metadata/read-metadata.c: (make_pipeline): * tests/examples/xml/createxml.c: * tests/examples/xml/runxml.c: * tools/gst-inspect.c: * tools/gst-run.c: Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static, using NULL instead of 0 for pointers, not using variable sized arrays on the stack, moving variable declarations to the beginning of a block and using "foo (void)" instead of "foo ()" for declarations. 2008-01-08 02:07:38 +0000 Damien Lespiau gdp: Fix empty prototypes. Fixes bug #507957. Original commit message from CVS: Patch by: Damien Lespiau * libs/gst/controller/gstcontroller.h: * libs/gst/controller/gstcontrolsource.h: * libs/gst/controller/gstinterpolationcontrolsource.h: * libs/gst/controller/gstlfocontrolsource.h: * libs/gst/dataprotocol/dataprotocol.h: Fix empty prototypes. Fixes bug #507957. 2007-11-01 21:50:05 +0000 Tim-Philipp Müller gdp: g_type_class_ref() other types as well, see #349410 and #64764. Original commit message from CVS: * gst/gst.c: (init_post): * gst/gstevent.c: (_gst_event_initialize): * gst/gstquery.c: (_gst_query_initialize): * libs/gst/dataprotocol/dataprotocol.c (gst_dp_init): g_type_class_ref() other types as well, see #349410 and #64764. * gst/gstbuffer.c: (_gst_buffer_initialize): * gst/gstmessage.c: (_gst_message_initialize): Simplify existing g_type_class_ref(). 2006-10-05 14:26:08 +0000 Tim-Philipp Müller gdp: Printf fixes. Original commit message from CVS: * gst/gstpad.c: (pre_activate): * gst/gstregistry.c: (gst_registry_scan_path_level): * gst/gstregistryxml.c: (load_plugin): * libs/gst/controller/gstcontroller.c: (gst_controlled_property_set_interpolation_mode): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event_1_0): * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_observe_times): * plugins/elements/gstfdsrc.c: (gst_fd_src_create): Printf fixes. 2006-08-11 15:26:33 +0000 Andy Wingo gdp: GST_DISABLE_DEPRECATED is only for users of API that don't want to see deprecated functions in the headers; people th... Original commit message from CVS: 2006-08-11 Andy Wingo * configure.ac: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new): * tests/check/libs/gdp.c: (gst_dp_suite): GST_DISABLE_DEPRECATED is only for users of API that don't want to see deprecated functions in the headers; people that want to compile out deprecated code should pass -DGST_REMOVE_DEPRECATED into the CFLAGS. Fixes the build of multifdsink, or will soon.. 2006-08-10 19:46:14 +0000 Stefan Kost gdp: add gst_object_{s,g}et_control_rate(), add private data section, fix docs Original commit message from CVS: * docs/libs/gstreamer-libs-sections.txt: * libs/gst/controller/gstcontroller.c: (_gst_controller_get_property), (_gst_controller_set_property), (_gst_controller_init), (_gst_controller_class_init): * libs/gst/controller/gstcontroller.h: * libs/gst/controller/gsthelper.c: (gst_object_get_control_rate), (gst_object_set_control_rate): API: add gst_object_{s,g}et_control_rate(), add private data section, fix docs * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new): * libs/gst/dataprotocol/dataprotocol.h: add deprecation guards to make gtk-doc happy and allow disabling cruft 2006-08-02 15:19:30 +0000 Wim Taymans gdp: Make debug category static Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any), (gst_dp_crc), (gst_dp_header_payload_length), (gst_dp_header_payload_type), (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0), (gst_dp_buffer_from_header), (gst_dp_caps_from_packet), (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet), (gst_dp_validate_header), (gst_dp_validate_payload): Make debug category static Constify the crc table. Do some more arg checking in public functions. Fix some docs and do some small cleanups. * tests/check/libs/gdp.c: (GST_START_TEST), (gst_dp_suite): Add some more checks to see if GDP deals with bogus input. 2006-07-13 14:02:16 +0000 Thomas Vander Stichele gdp: fix failure to deserialize event packets with empty payload (only ev... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_event_from_packet_1_0): Fixes #347337: failure to deserialize event packets with empty payload (only event type) 2006-06-13 19:24:34 +0000 Thomas Vander Stichele gdp: add a gdp image to the docs Original commit message from CVS: * docs/README: * docs/images/gdp-header.svg: add a gdp image * docs/libs/Makefile.am: * docs/libs/gdp-header.png: * libs/gst/dataprotocol/dataprotocol.c: add it to the API docs * docs/manual/intro-motivation.xml: fix typo 2006-06-06 14:29:54 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: add note to docs about GDP versioning; remove tmpl file Original commit message from CVS: add note to docs about GDP versioning; remove tmpl file 2006-06-06 14:24:00 +0000 Thomas Vander Stichele gdp: add a GstDPPacketizer object, and create/free functions Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any), (gst_dp_version_get_type), (gst_dp_init), (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0), (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0), (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0), (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0), (gst_dp_event_from_packet), (gst_dp_packetizer_new), (gst_dp_packetizer_free): * libs/gst/dataprotocol/dataprotocol.h: API: add a GstDPPacketizer object, and create/free functions API: add GstDPVersion enum Add 1.0 event function that uses the string serialization Serialize more useful buffer flags Fixes #343988 2006-06-02 16:46:19 +0000 Thomas Vander Stichele gdp: factor out CRC code Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer), (gst_dp_packet_from_caps), (gst_dp_packet_from_event): factor out CRC code 2006-06-02 10:58:47 +0000 Thomas Vander Stichele gdp: factor out some common header init code Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer), (gst_dp_packet_from_caps), (gst_dp_packet_from_event): factor out some common header init code 2006-06-02 10:08:31 +0000 Thomas Vander Stichele gdp: make gst_dp_crc() public Original commit message from CVS: * docs/libs/gstreamer-libs-sections.txt: * docs/libs/tmpl/gstdataprotocol.sgml: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc): * libs/gst/dataprotocol/dataprotocol.h: API: make gst_dp_crc() public 2006-06-01 11:13:44 +0000 Thomas Vander Stichele gdp: make sure we zero the whole ABI-compatible area Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer): make sure we zero the whole ABI-compatible area 2006-05-08 15:53:12 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: whitespace, comment, doc fixup Original commit message from CVS: whitespace, comment, doc fixup 2006-04-28 13:40:15 +0000 Michael Smith gdp: Fixes in reading/writing events over GDP (not currently used?) - dereferencing ... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event), (gst_dp_event_from_packet): Fixes in reading/writing events over GDP (not currently used?) - dereferencing NULL events for unknown/invalid event types, memory leak, and change g_warning to GST_WARNING. 2006-03-10 15:30:27 +0000 Michael Smith gdp: Fix docs for dataprocotol to not get the return types completely wrong for a fe... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: Fix docs for dataprocotol to not get the return types completely wrong for a few functions. 2005-12-18 16:04:41 +0000 Wim Taymans gdp: Documentation updates. Original commit message from CVS: * libs/gst/base/gstadapter.c: * libs/gst/base/gstadapter.h: * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init), (gst_base_sink_get_position): * libs/gst/base/gstbasesink.h: * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init), (gst_base_src_default_query), (gst_base_src_default_do_seek), (gst_base_src_do_seek), (gst_base_src_perform_seek), (gst_base_src_send_event), (gst_base_src_update_length), (gst_base_src_get_range), (gst_base_src_loop), (gst_base_src_start): * libs/gst/base/gstbasesrc.h: * libs/gst/base/gstbasetransform.h: * libs/gst/base/gstcollectpads.h: * libs/gst/base/gstpushsrc.c: * libs/gst/base/gstpushsrc.h: * libs/gst/dataprotocol/dataprotocol.c: * libs/gst/dataprotocol/dataprotocol.h: * libs/gst/net/gstnetclientclock.h: * libs/gst/net/gstnettimeprovider.h: Documentation updates. 2005-10-13 16:26:12 +0000 Andy Wingo gdp: Fix Timmeke Waymans bug. Original commit message from CVS: 2005-10-13 Andy Wingo * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps): Fix Timmeke Waymans bug. (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated string of the proper length to gst_caps_from_string. There's a potential for, before this fix, that this could cause someone connecting over the network to cause a segfault if the payload is not NUL-terminated. 2005-10-10 23:55:39 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: fix more valgrind warnings before turning up the heat Original commit message from CVS: fix more valgrind warnings before turning up the heat 2005-10-08 17:17:25 +0000 Wim Taymans gdp: It's about time we bump the version number. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer), (gst_dp_packet_from_caps), (gst_dp_packet_from_event): * libs/gst/dataprotocol/dataprotocol.h: * libs/gst/dataprotocol/dp-private.h: It's about time we bump the version number. Since event types don't fit in the guint8 anymore describing the payload type, make payload type 16 bits wide. 2005-09-27 16:30:26 +0000 Andy Wingo gdp: Fix error-checking return values. Original commit message from CVS: 2005-09-27 Andy Wingo * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return values. 2005-07-27 19:00:36 +0000 Wim Taymans gdp: Fix serialization of seek events. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event), (gst_dp_event_from_packet): Fix serialization of seek events. 2005-07-27 18:33:03 +0000 Wim Taymans gdp: Some docs updates Original commit message from CVS: * CHANGES-0.9: * docs/design/part-TODO.txt: * docs/design/part-events.txt: Some docs updates * gst/base/gstbasesink.c: (gst_base_sink_handle_object), (gst_base_sink_event), (gst_base_sink_do_sync), (gst_base_sink_activate_push), (gst_base_sink_activate_pull): * gst/base/gstbasesrc.c: (gst_base_src_send_discont), (gst_base_src_do_seek), (gst_base_src_event_handler), (gst_base_src_loop): * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps), (gst_base_transform_configure_caps), (gst_base_transform_setcaps), (gst_base_transform_get_size), (gst_base_transform_buffer_alloc), (gst_base_transform_event), (gst_base_transform_handle_buffer), (gst_base_transform_set_passthrough), (gst_base_transform_is_passthrough): * gst/elements/gstfakesink.c: (gst_fake_sink_event): * gst/elements/gstfilesink.c: (gst_file_sink_event): Event updates. * gst/gstbuffer.h: Use faster casts. * gst/gstelement.c: (gst_element_seek): * gst/gstelement.h: Update gst_element_seek. * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy), (gst_event_new), (gst_event_new_custom), (gst_event_get_structure), (gst_event_new_flush_start), (gst_event_new_flush_stop), (gst_event_new_eos), (gst_event_new_newsegment), (gst_event_parse_newsegment), (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos), (gst_event_parse_qos), (gst_event_new_seek), (gst_event_parse_seek), (gst_event_new_navigation): * gst/gstevent.h: Make GstEvent use GstStructure. Add parsing code, make sure the API is sufficiently generic. Mark possible directions of events and serialization. * gst/gstmessage.c: (gst_message_init), (gst_message_finalize), (_gst_message_copy), (gst_message_new_segment_start), (gst_message_new_segment_done), (gst_message_new_custom), (gst_message_parse_segment_start), (gst_message_parse_segment_done): Small cleanups. * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event): Update for new events. Catch events sent in wrong directions. * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_query): Event updates. * gst/gsttag.c: * gst/gsttag.h: Remove event code from this file. * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event), (gst_dp_event_from_packet): Event updates. 2005-07-05 10:20:14 +0000 Wim Taymans gdp: Ported dataprotol to 0.9. Original commit message from CVS: * configure.ac: * libs/gst/dataprotocol/Makefile.am: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet): * libs/gst/dataprotocol/dataprotocol.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in: * pkgconfig/gstreamer-dataprotocol.pc.in: Ported dataprotol to 0.9. Added pkgconfig files. 2005-05-16 20:21:55 +0000 David Schleef gdp: remove GstData checks Original commit message from CVS: * check/Makefile.am: remove GstData checks * check/gst-libs/gdp.c: (START_TEST): fix for API changes * gst/Makefile.am: add miniobject, remove data * gst/gst.h: add miniobject, remove data * gst/gstdata.c: remove * gst/gstdata.h: remove * gst/gstdata_private.h: remove * gst/gsttypes.h: remove GstEvent and GstMessage * gst/gstelement.c: (gst_element_post_message): fix for API changes * gst/gstmarshal.list: change BOXED -> OBJECT Implement GstMiniObject. * gst/gstminiobject.c: * gst/gstminiobject.h: Modify to be subclasses of GstMiniObject. * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type), (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy), (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc), (gst_subbuffer_get_type), (gst_subbuffer_init), (gst_buffer_create_sub), (gst_buffer_is_span_fast), (gst_buffer_span): * gst/gstbuffer.h: * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type), (gst_event_class_init), (gst_event_init), (gst_event_finalize), (_gst_event_copy), (gst_event_new): * gst/gstevent.h: * gst/gstmessage.c: (_gst_message_initialize), (gst_message_get_type), (gst_message_class_init), (gst_message_init), (gst_message_finalize), (_gst_message_copy), (gst_message_new), (gst_message_new_error), (gst_message_new_warning), (gst_message_new_tag), (gst_message_new_state_changed), (gst_message_new_application): * gst/gstmessage.h: * gst/gstprobe.c: (gst_probe_perform), (gst_probe_dispatcher_dispatch): * gst/gstprobe.h: * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type), (gst_query_class_init), (gst_query_finalize), (gst_query_init), (_gst_query_copy), (gst_query_new): Update elements for GstData -> GstMiniObject changes * gst/gstquery.h: * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush), (gst_queue_chain), (gst_queue_loop): * gst/elements/gstbufferstore.c: (gst_buffer_store_add_buffer_func), (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer): * gst/elements/gstfakesink.c: (gst_fakesink_class_init), (gst_fakesink_render): * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type), (gst_mmap_buffer_class_init), (gst_mmap_buffer_init), (gst_mmap_buffer_finalize), (gst_filesrc_map_region), (gst_filesrc_create_read): * gst/elements/gstidentity.c: (gst_identity_class_init): * gst/elements/gsttypefindelement.c: (gst_type_find_element_src_event), (free_entry_buffers), (gst_type_find_element_handle_event): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer): * libs/gst/dataprotocol/dataprotocol.h: * libs/gst/dataprotocol/dp-private.h: 2005-05-04 21:29:44 +0000 Andy Wingo gdp: GCC 4 fixen. Original commit message from CVS: 2005-05-04 Andy Wingo * check/Makefile.am: * docs/gst/tmpl/gstatomic.sgml: * docs/gst/tmpl/gstplugin.sgml: * gst/base/gstbasesink.c: (gst_basesink_activate): * gst/base/gstbasesrc.c: (gst_basesrc_class_init), (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query), (gst_basesrc_set_property), (gst_basesrc_get_property), (gst_basesrc_check_get_range), (gst_basesrc_activate): * gst/base/gstbasesrc.h: * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate), (gst_base_transform_src_activate): * gst/elements/gstelements.c: * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init), (gst_fakesrc_set_property), (gst_fakesrc_get_property): * gst/elements/gsttee.c: (gst_tee_sink_activate): * gst/elements/gsttypefindelement.c: (find_element_get_length), (gst_type_find_element_checkgetrange), (gst_type_find_element_activate): * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself): * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself), (gst_caps_load_thyself): * gst/gstelement.c: (gst_element_pads_activate), (gst_element_save_thyself), (gst_element_restore_thyself): * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself), (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range): * gst/gstpad.h: * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc), (gst_xml_parse_file), (gst_xml_parse_memory), (gst_xml_get_element), (gst_xml_make_element): * gst/indexers/gstfileindex.c: (gst_file_index_load), (_file_index_id_save_xml), (gst_file_index_commit): * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint), (read_enum), (load_pad_template), (load_feature), (load_plugin), (load_paths): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps), (gst_dp_packet_from_event), (gst_dp_caps_from_packet): * tools/gst-complete.c: (main): * tools/gst-compprep.c: (main): * tools/gst-inspect.c: (print_element_properties_info): * tools/gst-launch.c: (xmllaunch_parse_cmdline): * tools/gst-xmlinspect.c: (print_element_properties): GCC 4 fixen. 2005-03-21 17:34:02 +0000 Wim Taymans * gst/gdp/dataprotocol.c: gdp: Next big merge. Original commit message from CVS: Next big merge. Added GstBus for mainloop integration. Added GstMessage for sending notifications on the bus. Added GstTask as an abstraction for pipeline entry points. Removed GstThread. Removed Schedulers. Simplified GstQueue for multithreaded core. Made _link threadsafe, removed old capsnego. Added STREAM_LOCK and PREROLL_LOCK in GstPad. Added pad blocking functions. Reworked scheduling functions in GstPad to prepare for scheduling updates soon. Moved events out of data stream. Simplified GstEvent types. Added return values to push/pull. Removed clocking from GstElement. Added prototypes for state change function for next merge. Removed iterate from bins and state change management. Fixed some elements, disabled others for now. Fixed -inspect and -launch. Added check for GstBus. 2005-03-07 18:27:42 +0000 Wim Taymans * gst/gdp/dataprotocol.c: gdp: First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... Original commit message from CVS: First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. More docs follow this week. 2005-02-18 13:58:36 +0000 Zaheer Abbas Merali gdp: Allocate the 1 byte more memory that was forgotten!!!!! Original commit message from CVS: 2005-02-18 Zaheer Abbas Merali * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array): Allocate the 1 byte more memory that was forgotten!!!!! 2004-10-01 16:49:01 +0000 Wim Taymans gdp: Fix threadsafety of the crc checking function. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc): Fix threadsafety of the crc checking function. 2004-08-16 10:35:36 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: fix for #150242 Original commit message from CVS: fix for #150242 2004-07-28 10:22:07 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: doc style fixes Original commit message from CVS: doc style fixes 2004-06-09 16:24:19 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/dp-private.h: gdp: bump GDP to 0.1, add buffer flags Original commit message from CVS: bump GDP to 0.1, add buffer flags 2004-05-24 16:38:15 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.h: gdp: wrap header in _NEW Original commit message from CVS: wrap header in _NEW 2004-05-19 17:22:53 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: * gst/gdp/dp-private.h: Original commit message from CVS: use GST macros; add asserts 2004-05-19 16:59:39 +0000 Thomas Vander Stichele * gst/gdp/dp-private.h: gdp: private prototype Original commit message from CVS: private prototype 2004-05-19 16:37:53 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/dp-private.h: gdp: add dataprotocol Original commit message from CVS: clean up libs docs; add dataprotocol 2011-12-25 21:39:39 +0000 Tim-Philipp Müller * win32/common/libgstapp.def: * win32/common/libgstaudio.def: * win32/common/libgstinterfaces.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: win32: update .def files for API changes 2011-12-25 21:38:21 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: audioringbuffer: rename GST_BUFTYPE_* to GST_AUDIO_RING_BUFFER_FORMAT_TYPE_* Bit unwieldy, but more appropriate. Could also be moved into audio.h as GstAudioFormatType. 2011-12-25 21:37:42 +0000 Tim-Philipp Müller * tests/check/elements/alsa.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_x86_64.h: tests: remove more propertyprobe cruft 2011-12-25 21:23:11 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioringbuffer.h: audioringbuffer: remove unused GstAudioRingBufferSegState enum and field 2011-12-25 21:19:04 +0000 Tim-Philipp Müller * tests/icles/audio-trickplay.c: tests: fix unused-variable compiler warning in audio trickplay test 2011-12-25 21:18:47 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: docs: remove references to elements that don't exist any longer 2011-12-25 19:14:55 +0100 Stefan Sauer * tests/icles/audio-trickplay.c: controller: port to new controlsource api 2011-12-23 22:51:59 +0000 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: theoraenc: fix template caps creation on big endian systems 2011-12-23 22:24:44 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: fix writing of Exif tag payloads <= 4 bytes When the payload for an Exif tag is less than or equal to 4 bytes, the data is simply put into the offset field. Fix writing these kinds of payloads on big endian systems (and possibly also on little endian systems). The caller will have already formatted the bytes in memory according to the writer's endianness, so just write out the bytes as they are in this case. Fixes tags unit test on big endian systems. 2011-12-20 22:58:26 +0100 Stefan Sauer * gst/volume/gstvolume.c: controller: port to new controlbinding api 2011-12-23 16:09:13 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: improve cropping Only add cropping metadata when needed Remove some used code. 2011-12-23 00:54:43 +0000 Tim-Philipp Müller * ext/alsa/gstalsasink.c: alsasink: make work for raw audio formats by fixing template caps 2011-12-22 16:54:18 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: add a few more debug statements 2011-12-22 16:53:49 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: tweak documentation 2011-12-22 16:37:29 +0100 Wim Taymans * ext/alsa/gstalsadeviceprobe.h: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: remove more property probe stuff 2011-12-22 07:53:39 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Keep compatibility with our old generated xmp We used to add a trailing \n to the end of generated xmp packets. Windows viewer was unhappy with it and we fixed it in 96d2120c2bb0b29e1849098198f5fbef81939cdd The problem is that this caused xmp generated before this fix to not be recognized and parsed anymore. This patch makes it recognize xmp with the trailing \n and without, fixing the regression. Also adds tests for it. 2011-12-21 23:46:53 +0100 Wim Taymans * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideofilter.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videofilter: improve video filter Flesh out the video filter base class. Make it parse the input and output caps and turn them into GstVideoInfo. Map buffers as video frames and pass them to the transform functions. This allows us to also implement the propose and decide_allocation vmethods. Implement the transform size method as well. Update subclasses with the new improvements. 2011-12-21 18:58:42 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videofilter: implement propose_allocation With the new video bufferpool we can now implement the propose_allocation vmethod on some video filter elements so that we can also use video metadata and bufferpools when not operating in passthrough mode. 2011-12-21 18:58:08 +0100 Wim Taymans * docs/plugins/gst-plugins-base-plugins-sections.txt: docs: small fixes 2011-12-21 18:14:45 +0100 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x11: reset alignment 2011-12-21 18:13:17 +0100 Wim Taymans * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: videopool: add videopool implementation Add a GstVideoPool object that can be used to allocate video frames with support for metadata and alignment. Add method to reset alignment info. 2011-12-21 11:58:53 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * ext/alsa/gstalsadeviceprobe.c: * gst-libs/gst/audio/mixerutils.c: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/propertyprobe.c: * gst-libs/gst/interfaces/propertyprobe.h: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video.h: * sys/xvimage/xvimagesink.c: * tests/icles/test-colorkey.c: propertyprobe: remove propertyprobe Remove the propertyprobe interface Improve docs 2011-12-14 16:34:39 +0000 Vincent Penquerc'h * gst-libs/gst/video/video-blend.c: gstvideo: fix a RGB ordering mixup in colorspace conversion code 2011-12-19 17:41:23 +0100 Oleksij Rempel (Alexey Fisher) * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theoraenc: add "dup-on-gap" option This option will produce duplicate frames if we get a frame with GAP flag. This will reduce CPU load and file size. This option should be disabled for real time applications, because it collects GAP frames and waits until it gets a non GAP frame to start encoding. v30.06.2011: make some spell changes. v03.07.2011: add handling of EOS and discontinuous for dup-on-gap. v19.12.2011: fix pointer dangling in theora_timefifo_free v20.12.2010: fix timestamp bug for dup-on-gap=0 Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=627459 Signed-off-by: Oleksij Rempel (Alexey Fisher) 2011-12-20 14:35:31 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudiobasesrc.c: audiobasesrc: Use guint8 instead of guchar 2011-12-20 14:34:50 +0100 Sebastian Dröge * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: audioringbuffer: Use guint8 instead of guchar 2011-12-20 13:26:10 +0100 Wim Taymans * docs/design/part-mediatype-audio-raw.txt: docs: small update 2011-12-20 12:53:16 +0100 Wim Taymans * gst/playback/gstsubtitleoverlay.c: subtitle: don't use GST_CAPS_NONE macro This macro returns a singleton. 2011-12-20 12:42:18 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: set a non-zero default maximum tolerated errors Whereas the previous default 0 was backwards compatible in that it lead to erroring out immediately upon any error, elements that are really ported and using the base class error macro can be assumed to intend to improve behaviour rather than maintaining the old one. So, make it easy on those and any future one and tolerate some errors by default, as intended. Fixes #666579. 2011-12-20 12:02:25 +0100 Wim Taymans * docs/design/part-mediatype-audio-raw.txt: * docs/design/part-mediatype-video-raw.txt: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiometa.c: * gst-libs/gst/audio/gstaudiometa.h: add audio metadata Add some audio metadata to describe a downmix matrix. Add metadata to media type document. 2011-12-20 10:58:19 +0100 Wim Taymans * docs/design/part-mediatype-audio-raw.txt: * docs/design/part-mediatype-video-raw.txt: docs: update media design docs some more Add audio media type design doc 2011-12-20 10:08:46 +0100 Wim Taymans * docs/design/design-audiosinks.txt: * docs/design/part-interlaced-video.txt: * docs/design/part-mediatype-video-raw.txt: * docs/design/part-playbin.txt: docs: small update to design docs 2011-12-19 23:41:25 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: port to new interpolation-mode api 2011-12-19 22:51:47 +0100 Stefan Sauer * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: port to new controller api 2011-12-19 18:03:45 +0100 Wim Taymans * docs/design/draft-media-types.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: update interlace caps and docs Remove interlaced boolean from caps and replace with an interlace-mode enum. document this new property in the video caps document. With the enum we can put fields into separate video meta. Add enum for this interlace-mode in the VideoInfo. Update the buffer flags. 2011-12-19 11:03:55 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tagdemux: add FIXME Add a FIXME because the EOS before-type case now has to be solved differently because the srcpad is always available. 2011-12-19 09:49:07 +0100 Wim Taymans * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/examples/seek/stepping.c: * tests/examples/seek/stepping2.c: use playbin instead of playbin2 2011-12-16 17:32:41 +0000 Vincent Penquerc'h * gst/adder/gstadder.c: adder: do not send too many flush-stop events GstCollectPads2 now allows us to override the event function, so we can withhold flush stop events if none are to be sent. https://bugzilla.gnome.org/show_bug.cgi?id=666379 2011-12-16 17:31:06 +0000 Vincent Penquerc'h * gst/adder/gstadder.c: adder: use the stream lock where appropriate GstCollectPads2 locking was changed from GstCollectPads to use the stream lock instead of the object lock for those cases, so change it so here as well to match. https://bugzilla.gnome.org/show_bug.cgi?id=666379 2011-12-16 17:25:10 +0000 Vincent Penquerc'h * gst/adder/gstadder.c: adder: send a flush event before trying to get the stream lock This avoids hanging when the streaming thread is busy in _chain waiting for preroll. https://bugzilla.gnome.org/show_bug.cgi?id=666379 2011-12-16 15:27:24 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: assume live stream if byte size cannot be determined This prevents trying to seek and failing, then ending up unable to stream because we can't get back at the headers. A more robust way would be to find a good place to reinject the headers when a seek fails, but I can't seem to get this to work. 2011-12-15 16:42:20 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opus: fix bad merge (stray unmap, undeclared var) 2011-12-15 11:01:01 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: do not include \0 in size passed to g_convert When using g_convert, we should only pass the length of the string content (without the \0) as g_convert will only parse the real contents when changing formats. Including the \0 causes it to add another \0, increasing the string size when not needed. For example, when writting a North geo location ref entry, that should be a string with a single N letter, it would write: "N\0\0", causing the string to have size 3, instead of 2 as expected. In our case, we can pass -1 and let g_convert calculate the strlen as we don't use the length anywhere else. This fixes jifmux's tests on gst-plugins-bad. 2011-12-14 18:26:07 +0000 Vincent Penquerc'h * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: port to GstCollectPads2 2011-12-14 17:34:55 +0000 Christian Fredrik Kalager Schaller * gst-libs/gst/pbutils/encoding-profile.c: Fix 666168, add missing allow-None to encodebin APIs 2011-10-03 14:51:56 +0200 Mark Nauwelaerts * gst/playback/gstdecodebin2.c: decodebin2: tweak chain topology description ... to also properly indicate chain's endpad if no elements are in the chain (due to the endpad being a raw demuxer pad, or one setup without decoders since uridecodebin or higher up decided not to need those). 2011-12-14 12:28:26 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: add some missing allow-none g-i annotations Fix gst_encoding_container_profile_new() annotations. https://bugzilla.gnome.org/show_bug.cgi?id=666096 2011-12-14 11:31:31 +0100 Stefan Sauer * gst-libs/gst/riff/riff-media.c: riff-media: port GST_BUFFER_DATA to 0.11 in conditional code branch 2011-12-13 12:55:45 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix late buffer leak 2011-12-13 13:28:47 +0100 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Refactor code to check if a property exists on an element 2011-12-13 13:20:24 +0100 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Refactor autoplugging code and select overlay element by rank too Previously we always used textoverlay for rendering the output of a parser, now the same code as for the renderers is used and the element with the highest rank is used. Fixes bug #663822. 2011-12-12 11:54:56 +0100 Sebastian Dröge * gst-libs/gst/glib-compat-private.h: glib-compat: Add license boilerplate for LGPL 2011-12-12 17:27:10 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Update file locations for 0.11 2011-12-12 13:02:01 +0000 Tim-Philipp Müller * po/cs.po: * po/es.po: * po/sr.po: po: update translations 2011-12-12 12:59:44 +0000 Tim-Philipp Müller * configure.ac: Require gobject-introspection >= 1.31.1 Same as core. 2011-12-12 12:40:17 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: gst-plugins-base.spec.in po/LINGUAS po/cs.po po/eo.po po/es.po po/gl.po po/lv.po po/sr.po 2011-12-10 01:36:14 +0000 Tim-Philipp Müller * po/LINGUAS: * po/cs.po: * po/eo.po: * po/es.po: * po/gl.po: * po/lv.po: * po/sr.po: po: update translations 2011-12-09 17:25:41 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: opusenc: add upstream negotiation for multistream ability This will help elements that cannot deal with multistream, such as the RTP payloader. The caps now do not include a "streams" field anymore, but a "multistream" boolean, since we have no real use for knowing the exact amount of streams. https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-09 19:21:09 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtsptransport.c: rtsp: use rtpbin 2011-12-09 10:49:33 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.h: rtp: add INIT macros 2011-12-09 15:39:12 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add latest header file to spec file 2011-12-09 15:06:33 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: disable composition tests in video unit test for now 2011-12-07 15:13:11 -0200 Danilo Cesar Lemes de Paula * ext/opus/Makefile.am: * ext/opus/gstopus.c: Adding opus RTP payloader/depayloader element Adding OPUS RTP module based on the current draft: http://tools.ietf.org/id/draft-spittka-payload-rtp-opus-00.txt https://bugzilla.gnome.org/show_bug.cgi?id=664817 2011-12-08 19:47:55 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: opus: include streams count in caps https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-08 18:45:27 +0000 Vincent Penquerc'h * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opus: properly create channel mapping tables There are two of them, unintuitively enough; the one passed to the encoder should not be the one that gets written to the file. The former maps the input to an ordering which puts paired channels first, while the latter moves the channels to Vorbis order. So add code to calculate both, and we now have properly paired channels where appropriate. https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-09 15:03:41 +0000 Tim-Philipp Müller * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: add GST_RTP_BUFFER_INIT to initialize RTP buffers on the stack Fixes build of -good. 2011-12-09 12:08:37 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-12-09 01:31:20 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: only typefind text with a BOM as text/utf16 or text/utf32 We added the utf typefinder because the mp3 typefinder was a tad overzealous when it came to typefinding things as mp3, and replaced it with even more overzealous utf16/32 typefinders. Fixes unit test. 2011-12-08 01:20:24 +0000 Tim-Philipp Müller * tests/check/libs/audiocdsrc.c: Revert "tests: fix audiocdsrc for changed preroll behaviour" This reverts commit 2c9d442d51dd681463ae090c3c57320a90a4f888. Behaviour changed again, so revert this. 2011-12-08 01:19:03 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/alsa/gstalsadeviceprobe.c ext/alsa/gstalsamixer.c ext/pango/gsttextoverlay.c ext/pango/gsttextoverlay.h gst-libs/gst/audio/gstaudiobasesink.c gst-libs/gst/audio/gstaudioringbuffer.c gst-libs/gst/audio/gstaudiosrc.c gst-libs/gst/video/Makefile.am gst-libs/gst/video/video.c gst/encoding/gststreamcombiner.c gst/encoding/gststreamsplitter.c gst/playback/gstplaybasebin.c gst/playback/gststreamsynchronizer.c gst/playback/gstsubtitleoverlay.c gst/playback/gsturidecodebin.c sys/xvimage/xvimagesink.c tests/examples/Makefile.am win32/common/libgstvideo.def Video overlay composition disabled for now, needs porting to buffer meta. 2011-12-07 18:45:28 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: video: make composition_blend() return a boolean Not that anyone will ever check that, and it's not clear what they're supposed to do if it fails, but at least it's there. 2011-12-07 18:31:58 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: docs: add new API to docs 2011-12-07 17:57:08 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * tests/check/libs/video.c: * win32/common/libgstvideo.def: video: add seqnum getters for overlay compositions and rectangles API: gst_video_overlay_composition_get_seqnum() API: gst_video_overlay_rectangle_get_seqnum() 2011-11-23 15:45:57 -0300 Thibault Saunier * gst-libs/gst/video/video.c: video: support any type of video in _parse_caps Slight change in semantics for convenience. Shouldn't cause any problems since this function is usually only used on pre-filtered caps and not random caps, and it's hard to imagine a situation where someone would want to rely on the previous behaviour. 2011-12-07 00:06:11 -0500 Olivier Crête * ext/opus/gstopusdec.c: opusdec: header cleanup https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-07 00:06:11 -0500 Olivier Crête * ext/opus/gstopusdec.c: opusdec: Truncate caps first https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-11-28 19:47:34 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: default to stereo 48000 Hz if possible when no headers seen https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-06 21:57:32 +0000 Tim-Philipp Müller * gst/videorate/gstvideorate.c: videorate: don't leak previous buffer when shutting down Implement stop vfunc after port to basetransform, so we can clean up properly. Fixes make elements/videorate.valgrind 2011-12-06 20:30:55 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: fix calculation of last pixel offset in video unit test And check the right buffer (pix2) in one case. 2011-12-06 15:01:05 +0000 Tim-Philipp Müller * tests/examples/fft/Makefile.am: examples: fix build of fft example Should link against our own libgstfft-0.10. 2011-12-06 14:55:38 +0000 Tim-Philipp Müller * gst-libs/gst/video/video.c: video: fix leak in gst_video_format_new_template_caps() g_value_reset() is not the same as g_value_unset() 2011-12-06 15:06:12 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: ringbuffer: remove old _full version 2011-12-06 13:59:11 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiocdsrc.c: fix for basesrc changes 2011-11-23 15:43:46 -0300 Thibault Saunier * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: add suport for hardware accelerated videos Don't plug converters for non-raw video. 2011-12-06 08:37:32 +0100 Stefan Sauer * gst/volume/gstvolume.c: controller: port to GstValueArray removal API change 2011-12-05 20:33:41 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: Revert "videoconvert: We can handle GST_VIDEO_META_API" This reverts commit bd539753eb098c37afa033065f122712bf85f53a. Adding the supported metadata to the query does nothing at this stage. Proposing allocation parameters and supported metadata for upstream should use the propose_allocation vmethod. 2011-12-05 18:42:24 +0100 Edward Hervey * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: rtp: Initialize GstRTPBuffer before usage 2011-12-05 18:30:50 +0100 Edward Hervey * gst/videoconvert/gstvideoconvert.c: videoconvert: We can handle GST_VIDEO_META_API 2011-12-05 18:30:37 +0100 Edward Hervey * gst-libs/gst/rtp/gstrtpbasepayload.c: rtp: Don't forget to initialize GstRTPBuffer 2011-12-05 15:48:07 +0000 Tim-Philipp Müller * gst-libs/gst/video/video-overlay-composition.c: video: don't use deprecated GStaticMutex with newer glib versions 2011-12-05 15:34:42 +0000 Tim-Philipp Müller * tests/examples/Makefile.am: examples: dist fft sub-directory 2011-11-28 10:05:50 -0300 Thibault Saunier * ext/pango/gsttextoverlay.c: textoverlay: unpremultiply text image The GstVideoOverlayComposition only supports unpremultiplied ARGB (for now anyway, support for pre-multiplied alpha is planned.) 2011-11-23 12:49:02 -0300 Thibault Saunier * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: Attach OverlayComposition to buffers when needed Add video/x-surface support in the caps We should then attach it whenever the sink supports it, but this is working for the time being 2011-11-18 13:22:52 -0300 Thibault Saunier * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: Make the text_image data a buffer This way we won't free data that would be attached to some buffer. 2011-11-18 11:04:47 -0300 Thibault Saunier * ext/pango/gsttextoverlay.c: textoverlay: Sync the caps with the new supported formats Thanks to the use of the new video composition library, we gain support to more colospaces and formats, let's state it. 2011-11-16 17:54:43 -0300 Thibault Saunier * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: Make use of the new video blending utility 2011-11-25 16:46:09 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: add basic unit test for video overlay composition and rectangles 2011-11-12 14:59:35 +0000 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-overlay-composition.c: * gst-libs/gst/video/video-overlay-composition.h: * win32/common/libgstvideo.def: video: add video overlay composition API for subtitles Basic API to attach overlay rectangles to buffers, or blend them directly onto raw video buffers. To be used primarily for things like subtitles or logo overlays, not meant to replace videomixer. Allows us to associate subtitle overlays with non-raw video surface buffers, so that subtitles are not lost and can instead be rendered later when those surfaces are displayed or converted, whilst re-using all the existing overlay plugins and not having to teach them about our special video surfaces. Could also have been made part of the surface buffer abstraction of course, but a secondary goal was to consolidate the blending code for raw video into libgstvideo, and this kind of API allows us to do both in a way that's minimally invasive to existing elements, and at the same time is fairly intuitive. More features and extensions like the ability to pass the source data or text/markup directly will be added later. https://bugzilla.gnome.org/show_bug.cgi?id=665080 API: gst_video_buffer_get_overlay_composition() API: gst_video_buffer_set_overlay_composition() API: gst_video_overlay_composition_new() API: gst_video_overlay_composition_add_rectangle() API: gst_video_overlay_composition_n_rectangles() API: gst_video_overlay_composition_get_rectangle() API: gst_video_overlay_composition_make_writable() API: gst_video_overlay_composition_copy() API: gst_video_overlay_composition_ref() API: gst_video_overlay_composition_unref() API: gst_video_overlay_composition_blend() API: gst_video_overlay_rectangle_new_argb() API: gst_video_overlay_rectangle_get_pixels_argb() API: gst_video_overlay_rectangle_get_pixels_unscaled_argb() API: gst_video_overlay_rectangle_get_render_rectangle() API: gst_video_overlay_rectangle_set_render_rectangle() API: gst_video_overlay_rectangle_copy() API: gst_video_overlay_rectangle_ref() API: gst_video_overlay_rectangle_unref() 2011-11-23 00:31:18 +0000 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-blend.h: video: hide private video-blend.[ch] from gobject-introspection And remove unused fields from helper structure. 2011-11-15 18:00:00 +0000 Tim-Philipp Müller * gst-libs/gst/video/videoblendorc-dist.c: * gst-libs/gst/video/videoblendorc-dist.h: video: add fallbacks for compilation without orc 2011-10-17 17:25:11 +0200 Thibault Saunier * gst-libs/gst/video/.gitignore: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video-blend.c: * gst-libs/gst/video/video-blend.h: * gst-libs/gst/video/videoblendorc.orc: video: add some internal helper functions for image blending This could be improved if we decide we don't need it to be this generic/flexible. 2011-12-05 09:38:33 +0100 Sebastian Dröge * gst-libs/gst/interfaces/xoverlay.c: xoverlay: Fix mistakes in the sample code Fixes bug #665430. 2011-12-04 22:19:23 +0100 Matej Knopp * gst-libs/gst/app/gstappsink.c: Appsink fixes 2011-12-04 20:50:25 +0000 Tim-Philipp Müller * ext/alsa/gstalsamixer.c: * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamsynchronizer.c: * gst/tcp/gstmultifdsink.c: Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly GStaticRecMutex is part of our API/ABI, not much we can do here in 0.10 for most of these. 2011-12-04 20:38:19 +0000 Tim-Philipp Müller * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: alsamixer: use GRectMutext instead of GStaticRecMutex with newer glib versions 2011-12-04 20:21:26 +0000 Tim-Philipp Müller * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: alsamixer: embed static mutexes into the mixer structure instead of allocating them dynamically 2011-12-04 17:02:39 +0000 Tim-Philipp Müller * tests/examples/encoding/encoding.c: * tests/examples/overlay/gtk-xoverlay.c: * tests/examples/overlay/qt-xoverlay.cpp: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/icles/stress-playbin.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: * tools/gst-discoverer.c: tools, tests: g_thread_init() is deprecated in glib master It's not needed any longer. 2011-12-04 16:43:38 +0000 Tim-Philipp Müller * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggdemux.c: * ext/pango/gsttextoverlay.c: * gst-libs/gst/Makefile.am: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/glib-compat-private.h: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/video/convertframe.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Work around deprecated thread API in glib master Add private replacements for deprecated functions such as g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly to avoid the deprecation warnings. We'll change these over to the new API once we depend on glib >= 2.32. Replace g_thread_create() with g_thread_try_new(). 2011-12-04 15:23:21 +0000 Tim-Philipp Müller * gst-libs/gst/tag/xmpwriter.c: xmpwriter: update for thread API deprecations in glib master 2011-12-04 13:43:06 +0100 Stefan Sauer * tests/examples/fft/Makefile.am: fft-example: re-add Makefile.am 2011-12-02 23:35:50 +0100 Stefan Sauer * configure.ac: configure: trim trailing whitespace 2011-12-02 23:34:47 +0100 Stefan Sauer * configure.ac: * tests/examples/Makefile.am: * tests/examples/fft/.gitignore: * tests/examples/fft/fftrange.c: tests: add a test for fft result value-ranges Add a small example that uses ffts of various types and parameters and check the result value ranges. 2011-12-02 22:24:43 +0100 Wim Taymans * ext/gio/gstgiobasesink.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/audio/gstaudiobasesink.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: update for basesink event handler changes 2011-11-28 19:38:34 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: guard against decoding 0 samples https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-02 11:10:17 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: gst-libs/gst/netbuffer/gstnetbuffer.c gst/ffmpegcolorspace/avcodec.h gst/ffmpegcolorspace/gstffmpegcodecmap.c gst/ffmpegcolorspace/imgconvert.c gst/ffmpegcolorspace/imgconvert_template.h gst/ffmpegcolorspace/mem.c gst/playback/README gst/playback/gstplaybasebin.c gst/playback/gstplaybasebin.h gst/playback/gstplaybin.c sys/v4l/v4lmjpegsrc_calls.c sys/v4l/videodev_mjpeg.h tests/check/elements/gnomevfssink.c 2011-09-13 21:10:43 +0200 Piotr Fusik * docs/design/design-audiosinks.txt: * docs/design/design-decodebin.txt: * docs/design/design-encoding.txt: * docs/design/design-orc-integration.txt: * docs/design/draft-keyframe-force.txt: * docs/design/draft-va.txt: * ext/alsa/gstalsamixer.c: * ext/libvisual/visual.c: * ext/ogg/README: * ext/ogg/gstoggdemux.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts32.c: * gst-libs/gst/interfaces/navigation.c: * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.3.0.txt: * gst-libs/gst/tag/id3v2.4.0-frames.txt: * gst-libs/gst/tag/id3v2.4.0-structure.txt: * gst/adder/gstadder.c: * gst/audioconvert/audioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audioresample/resample.c: * gst/encoding/gststreamsplitter.c: * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: * gst/ffmpegcolorspace/mem.c: * gst/playback/README: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcp.c: * gst/typefind/gsttypefindfunctions.c: * gst/videotestsrc/gstvideotestsrc.c: * m4/freetype2.m4: * sys/v4l/v4lmjpegsrc_calls.c: * sys/v4l/videodev_mjpeg.h: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: * tests/check/elements/adder.c: * tests/check/elements/audioresample.c: * tests/check/elements/gnomevfssink.c: * tests/check/elements/textoverlay.c: * tests/examples/encoding/encoding.c: various: typo fixes Fix typos in code and docs. Fixes. #658984 2011-12-02 00:07:39 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/alsa/gstalsasrc.c ext/alsa/gstalsasrc.h gst/adder/gstadder.c gst/playback/gstplaybin2.c gst/playback/gstplaysinkconvertbin.c win32/common/libgstvideo.def 2011-12-01 23:26:36 +0000 Tim-Philipp Müller * .gitignore: Add {audio,video}-marshal.[ch] to .gitignore 2011-12-01 18:51:51 +0100 Wim Taymans * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tags: make the tag functions return GstSample gst_tag_image_data_to_image_buffer() -> gst_tag_image_data_to_image_sample() And make it return a GstSample. Store the image-type into the extra sample info. Remove a deprecated tag 2011-12-01 16:48:49 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/video.h: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: * tests/check/libs/video.c: * tests/examples/app/appsink-src.c: * tests/examples/app/appsrc_ex.c: * tests/examples/seek/seek.c: Use the new GstSample for snapshots Make appsink return a GstSample. Remove the pull_buffer_list method because it is not very useful anymore. Pass GstSample to the conversion function. Update playbin2 and examples 2011-12-01 15:54:49 +0100 Wim Taymans * gst-libs/gst/app/gstapp-marshal.list: update marshal list 2011-12-01 15:47:16 +0100 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: fix the transform_size function The output size of a buffer does not depend on the input size but simply on the caps of the output buffers. Don't let the base implementation deal with unit_sizes, because input buffers might not be a multiple of that when they have padding or non-default strides. instead, implement a transform size function that simply calculate the natural size of an output buffer based on the caps. 2011-12-01 15:45:28 +0100 Wim Taymans * gst-libs/gst/video/gstvideometa.c: videometa: add copy functions Without copy functions, the metadata is lost when we make a buffer copy such as when we make a buffer writable. 2011-12-01 15:38:10 +0100 Wim Taymans * gst-libs/gst/app/gstappsrc.c: appsrc: fix negotiation Remove old useless caps code. Make a negotiate function and use the configured caps as the caps on the appsrc pad. If nothing was configured, fall back to the parent implementation. 2011-12-01 11:59:17 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: be more graceful in the clipfunction Doing dynamic pipelines is hard in 0.10. As we don't have the sticky events in 0.10 and sending such events in special elements like adder and tee was outvoted on last attempt, be graceful to the misbehaviour instead. 2011-12-01 01:22:19 +0000 Tim-Philipp Müller * tests/check/elements/audioresample.c: tests: fix caps leak in audioresample tests 2011-12-01 01:07:26 +0000 Tim-Philipp Müller * tests/check/pipelines/basetime.c: tests: fix memory leak in basetime test 2011-11-30 23:58:19 +0000 Tim-Philipp Müller * gst/playback/gstplaybin2.c: playbin2: tone down debug message about file URIs with spaces Complain a bit less loudly about URIs that have not been escaped properly. 2011-11-30 23:15:35 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: Revert "alsasrc: Improve timestamp accuracy" This reverts commit 0b774e0b7cf7a8ef1780fb6100228ca6e8ca8bcf. 2011-11-30 23:15:22 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: Revert "alsasrc: Fix some compilation errors" This reverts commit 2b84f5bd74ddb50f7832917ea8b4dd38d005631b. 2011-11-30 23:15:12 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: Revert "alsa: Remove unused but set variable" This reverts commit e9aed7f31c7e9e415f733e147140ce3ef2f57a61. 2011-11-30 23:15:03 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: Revert "alsasrc: fail gracefully when ALSA does not give timestamps" This reverts commit c7282a5718c7f31f84fb31b2c38fab0f9a38e2b0. 2011-11-30 23:14:54 +0000 Tim-Philipp Müller * ext/alsa/gstalsasrc.c: Revert "alsasrc: handle the case where the drivers don't supply timestamps" This reverts commit 8154b69112cdc4830cd6002ec6c1f2917d30437b. 2011-11-28 10:55:39 +0100 Stefan Sauer * ext/alsa/gstalsasrc.c: Revert "alsasrc: style fix" This reverts commit f70ca6d4cbfd2b672dcc7215814bf6b39ce2c3f8. 2011-11-30 14:25:11 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Don't send undefined NEWSEGMENT events to the internal elements This happens when the internal elements are added before any NEWSEGMENT event arrived and in that case we shouldn't send a NEWSEGMENT event to the internal elements at all. They will get the NEWSEGMENT event from upstream later. 2011-11-30 11:34:23 +0100 Edward Hervey * tests/check/Makefile.am: * tests/check/elements/alsa.c: * tests/check/elements/playbin-compressed.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/mixer.c: tests: More fixes for moved interfaces 2011-11-30 11:34:04 +0100 Edward Hervey * win32/common/libgstaudio.def: * win32/common/libgstinterfaces.def: * win32/common/libgstvideo.def: win32: update for API changes 2011-11-30 11:33:41 +0100 Edward Hervey * gst-libs/gst/audio/Makefile.am: audio: Add audio-marshal.list to dist-ed files 2011-11-30 07:57:02 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixeroptions.h: * ext/alsa/gstalsamixertrack.h: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-marshal.list: * gst-libs/gst/audio/mixer.c: * gst-libs/gst/audio/mixer.h: * gst-libs/gst/audio/mixeroptions.c: * gst-libs/gst/audio/mixeroptions.h: * gst-libs/gst/audio/mixertrack.c: * gst-libs/gst/audio/mixertrack.h: * gst-libs/gst/audio/mixerutils.h: * gst-libs/gst/audio/streamvolume.c: * gst-libs/gst/audio/streamvolume.h: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/interfaces-marshal.list: * gst/playback/Makefile.am: * gst/playback/gstplaybin2.c: * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: audio: move audio interfaces Move the audio related interfaces to the audio library. 2011-11-30 07:23:47 +0100 Wim Taymans * tests/examples/overlay/gtk-videooverlay.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/test-videooverlay.c: fix includes for moved interfaces 2011-11-30 07:23:07 +0100 Wim Taymans * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: small cleanup in docs 2011-11-29 19:49:50 +0100 Edward Hervey * gst-libs/gst/video/Makefile.am: video: Don't forget to install moved header files 2011-11-29 19:31:55 +0100 Edward Hervey * tests/examples/seek/Makefile.am: * tests/icles/Makefile.am: * tests/icles/test-colorkey.c: tests: More fixes for moved interfaces 2011-11-29 19:10:01 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/colorbalance.c: * gst-libs/gst/video/colorbalance.h: * gst-libs/gst/video/colorbalancechannel.c: * gst-libs/gst/video/colorbalancechannel.h: * gst-libs/gst/video/video-marshal.list: * gst-libs/gst/video/videoorientation.c: * gst-libs/gst/video/videoorientation.h: * gst-libs/gst/video/videooverlay.c: * gst-libs/gst/video/videooverlay.h: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/examples/overlay/Makefile.am: * tests/examples/overlay/qt-videooverlay.cpp: * tests/examples/overlay/qtgv-videooverlay.cpp: * tests/icles/Makefile.am: * tests/icles/stress-videooverlay.c: video: move some interfaces Move some interfaces to the video library 2011-11-29 14:47:37 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: fill the audio-info that we use and not some random other one 2011-11-29 14:22:19 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: unbreak adder There was one line too much removed when porting. 2011-11-29 14:15:45 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Fix decoder-sink compatibility check for raw audio/video formats If the sink supports raw audio/video, we first check if the decoder could output any raw audio/video format and assume it is compatible with the sink then. We don't do a complete compatibility check here if converters are plugged between the decoder and the sink because the converters will convert between raw formats and even if the decoder format is not supported by the decoder a converter will convert it. We assume here that the converters can convert between any raw format. Fixes bug #665120. 2011-11-29 10:40:40 +0100 Stefan Sauer * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: fix deadly setcaps recursion Use a flag to avoid calling setcaps until our stack is exhausted. I don't see how this would be useful. 2011-11-29 09:11:21 +0100 Alessandro Decina * ext/ogg/gstoggdemux.c: oggdemux: fix compiler warning 2011-11-29 08:49:53 +0100 Alessandro Decina * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * win32/common/libgstvideo.def: libgstvideo: minor fixes to key unit events Make out args to gst_video_event_parse_{downstream|upstream}_force_key_unit optional, update libgstvideo.def and fix docs a bit. API: gst_video_event_new_upstream_force_key_unit API: gst_video_event_new_downstream_force_key_unit API: gst_video_event_is_force_key_unit API: gst_video_event_parse_upstream_force_key_unit API: gst_video_event_parse_downstream_force_key_unit https://bugzilla.gnome.org/show_bug.cgi?id=607742 2011-06-05 01:49:38 +0200 Andoni Morales Alastruey * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: libgstvideo: Add force key unit events 2011-11-28 23:20:58 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-11-28 23:20:58 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-11-28 23:20:32 +0000 Tim-Philipp Müller Merge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11 2011-11-28 23:20:32 +0000 Tim-Philipp Müller Merge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11 2011-11-28 23:20:02 +0000 Tim-Philipp Müller Merge commit '26d6add9457f00ce8ec13844368466f0e3816e5d' into 0.11 Conflicts: ext/rtmp/gstrtmpsink.c 2011-11-28 23:20:02 +0000 Tim-Philipp Müller Merge commit '26d6add9457f00ce8ec13844368466f0e3816e5d' into 0.11 Conflicts: ext/rtmp/gstrtmpsink.c 2011-11-28 21:25:11 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: gst-libs/gst/fft/gstffts16.h 2011-11-28 21:20:38 +0000 Tim-Philipp Müller Merge commit 'c5544630250ec434e4dafaf17274e83865415120' into 0.11 2011-11-28 21:20:10 +0000 Tim-Philipp Müller Merge commit '4a58223e4c824fedc024af435337a769e8ce593e' into 0.11 2011-11-28 20:11:09 +0100 Philippe Normand * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.h: fft: Bracket public headers This is especially needed if the gstfftw library is used from C++ code. Fixes #665074 2011-11-28 20:10:18 +0100 Philippe Normand * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Fix compiler warning 2011-11-28 19:03:50 +0100 Alexey Fisher * gst/typefind/gsttypefindfunctions.c: typefind: fix build error fix build errors: gsttypefindfunctions.c:248:25: error: 'low' may be used uninitialized in this function [-Werror=uninitialized] gsttypefindfunctions.c:239:24: error: 'high' may be used uninitialized in this function [-Werror=uninitialized] Signed-off-by: Alexey Fisher 2011-11-28 19:06:57 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Fix stupid mistake in last commit 2011-11-28 19:03:54 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Only return the converter caps if we actually have raw caps Fixes bug #664818 (hopefully). 2011-11-28 18:24:03 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiocdsrc.c: Update for indexable change 2011-11-28 17:59:32 +0100 Kipp Cannon * gst/audioresample/gstaudioresample.c: audioresample: Don't emit DISCONT buffers if no discontinuity happened audioresample is derived from GstBaseTransform, and one of GstBaseTransform's traits is that if the derived element does not produce an output buffer from some input buffer then the first output buffer after that gets flaged as a discontinuity, whether or not the buffer actually is discontinuous from the output buffer that preceded it. When downsampling, the audioresample element requires more than one input sample for each output sample, and if the ratio of input to output sample rates is high enough and the input buffers short enough it can come to pass that the resampler does not receive enough samples on its input to produce any output. Currently the resampler returns GST_BASE_TRANSFORM_FLOW_DROPPED from the transform() method in this case, causing the next buffer to be flagged as a discontinuity. If subsequent elements in the pipeline reset themselves on disconts, this can cause clicks and other undesireable behaviour. Fixes bug #665004. 2011-11-28 17:51:41 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.c: audio: update for clock provider API change 2011-09-30 20:00:50 +0100 Vincent Penquerc'h * gst/typefind/Makefile.am: * gst/typefind/gsttypefindfunctions.c: typefind: typefind UTF-16 and UTF-32 This avoids the MP3 typefinder from getting the highest score every time it thinks there's something it might possibly be able to parse. https://bugzilla.gnome.org/show_bug.cgi?id=607619 2011-11-28 16:55:32 +0100 Wim Taymans * gst/playback/gstplaysink.c: * gst/playback/gsturidecodebin.c: fix for element flag cleanups 2011-11-28 13:27:29 +0000 Vincent Penquerc'h * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: Revert "theoradec: move the QoS logic to libgstvideo" This reverts commit 149a4ce390a78e21309b210f7daba9db5d42afe6. *grumble* I managed to merge something I did not mean to. 2011-11-28 13:26:53 +0000 Vincent Penquerc'h * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * win32/common/libgstvideo.def: Revert "libgstvideo: add a new API to handle QoS events and dropping logic" This reverts commit eb03323fb683e06ed8e7f557037f13252f150c25. *grumble* I managed to merge something I did not mean to. 2011-11-28 12:51:22 +0000 Vincent Penquerc'h * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsrc.c: * sys/v4l/gstv4lsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/elements/audiorate.c: * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: * tests/check/elements/playbin.c: * tests/check/elements/playbin2-compressed.c: * tests/check/elements/playbin2.c: * tests/check/elements/videoscale.c: various: fix pad template leaks https://bugzilla.gnome.org/show_bug.cgi?id=662664 2011-11-28 13:08:27 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: various: fix pad template ref leaks https://bugzilla.gnome.org/show_bug.cgi?id=662664 2011-09-07 16:04:14 +0100 Vincent Penquerc'h * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: move the QoS logic to libgstvideo https://bugzilla.gnome.org/show_bug.cgi?id=658241 2011-09-05 13:56:05 +0100 Vincent Penquerc'h * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * win32/common/libgstvideo.def: libgstvideo: add a new API to handle QoS events and dropping logic https://bugzilla.gnome.org/show_bug.cgi?id=658241 2011-11-28 11:30:18 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: elaborate some documentation 2011-11-28 11:28:06 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add some documentation 2011-11-21 14:26:54 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: really discard NULL decoded frame altogether ... including any timestamp, rather than having that one influence base_ts. 2011-11-28 10:55:39 +0100 Stefan Sauer * ext/alsa/gstalsasrc.c: alsasrc: style fix Use timestamp==0 instead of mixing it with !timestamp style checks. 2011-11-28 09:12:37 +0100 Stefan Sauer * ext/alsa/gstalsasrc.c: alsasrc: handle the case where the drivers don't supply timestamps If highres-timestamp is 0, try lowres and if that fails fallback to system clock timestamps. 2011-11-27 23:33:45 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-11-27 23:33:45 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-11-27 20:14:08 +0100 Matej Knopp * gst/playback/gsturidecodebin.c: uridecodebin: fix debug message printf format compiler warning https://bugzilla.gnome.org/show_bug.cgi?id=662607 2011-11-26 15:37:25 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/opus/gstopusdec.c ext/opus/gstopusparse.c gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h 2011-11-26 15:37:25 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/opus/gstopusdec.c ext/opus/gstopusparse.c gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h 2011-11-26 12:12:59 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/vorbis/gstvorbisenc.c gst/playback/gstdecodebin2.c gst/playback/gstplaysinkconvertbin.c gst/videorate/gstvideorate.c 2011-11-01 15:21:54 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: set collectpads2 not to wait on sparse streams https://bugzilla.gnome.org/show_bug.cgi?id=663174 2011-11-25 11:41:19 -0200 Danilo Cesar Lemes de Paula * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opusenc: Fixing "Unused var" compiling error for opus codec https://bugzilla.gnome.org/show_bug.cgi?id=664815 2011-11-25 14:00:18 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: opusenc: only use mono streams for > 2 channels I'm getting odd results with packing streams into stereo streams, and using only mono streams is enough in all cases. 2011-11-25 12:47:42 +0000 Vincent Penquerc'h * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: add some more debug information about channel mapping 2011-11-25 12:40:31 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: do not cause the decoder to apply the channel mapping again Since we already reorder channels, we do not want to write that reordering in the header, or the decoder will do it again. 2011-11-25 12:39:20 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix bogus assertion 2011-11-25 15:35:39 +0100 Josep Torra * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: make identiy silent 2011-11-25 13:11:54 +0000 Tim-Philipp Müller * ext/vorbis/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audio: remove unstable API guards from the audio decoder and encoder base classes 2011-11-25 12:58:22 +0000 Tim-Philipp Müller * gst/playback/gstplaybin2.c: docs: mention explicitly that playbin2 signals are emitted from a streaming thread 2011-11-25 12:48:58 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/faac/gstfaac.c ext/opus/gstopusdec.c ext/opus/gstopusenc.c gst/audiovisualizers/gstspacescope.c gst/colorspace/colorspace.c 2011-11-25 12:48:58 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/faac/gstfaac.c ext/opus/gstopusdec.c ext/opus/gstopusenc.c gst/audiovisualizers/gstspacescope.c gst/colorspace/colorspace.c 2011-11-25 11:11:12 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Set the multiqueue limits to the playing limits after overrun too We don't expect any new pads anymore and prerolling is finished now. 2011-11-25 11:08:58 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Cache the upstream seekability for demuxer decode chains and use it for the non-preroll multiqueue limits After preroll the multiqueue limits are still set to the preroll limits if use-buffering is set to TRUE. In that case we only want time limits on the multiqueue if upstream is seekable. 2011-11-08 13:55:58 +0000 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin2: fix prerolling for low bitrate streams from hlsdemux Such streams were detected as seekable, as the query on the typefind element was testing the m3u8 file listing the actual streams, and not going through the demuxer(s). We now check for seekability for each multiqueue following a demuxer, so the query will flow through the elements which might prevent seeking. https://bugzilla.gnome.org/show_bug.cgi?id=647769 2011-11-25 10:31:38 +0100 Edward Hervey * gst-libs/gst/app/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gst-libs: Add --warn-all to introspection scanner And let's get fixing those docs :) 2011-11-24 21:39:14 +0100 René Stadler * tests/check/elements/audioconvert.c: * tests/check/elements/audiotestsrc.c: * tests/check/elements/vorbisdec.c: * tests/check/elements/vorbistag.c: tests: update for gstcheck API change 2011-10-24 11:46:05 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: minor cleanup 2011-09-27 16:45:26 +0100 Vincent Penquerc'h * gst-libs/gst/riff/riff-ids.h: libgstriff: add a couple tags that need skipping Found in a sample in the wild, appears to be ID3 tag. https://bugzilla.gnome.org/show_bug.cgi?id=660249 2011-11-24 14:41:13 +0100 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Rename ARG_ enums to PROP_ This is more consistent with other code and these are properties anyway, not arguments 2011-11-24 14:29:49 +0100 Sebastian Dröge * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: Add property to force an output framerate API: GstVideoRate:force-fps Changing the framerate during playback is not possible with a capsfilter downstream if upstream is not using gst_pad_alloc_buffer(). In that case there's no way in 0.10 to signal to videorate that the preferred framerate has changed. This new property will force the output framerate to a specific value and can be changed during playback. 2011-11-24 13:38:59 +0000 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: pre-skip and output gain are little endian, remove reminder note 2011-11-24 13:29:56 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opus: multichannel support 2011-11-23 17:49:58 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: switch to multistream API It's very similar to the basic API, and is a superset ot it, which will allow encoding and decoding more than 2 channels. 2011-11-23 17:32:03 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: shuffle supported sample rates to favor 48000 2011-11-23 16:36:54 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: remove useless setup field 2011-11-24 12:38:54 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Reconfigure if we switch from raw to incompatible raw caps We might need to add converters and worked in passthrough mode before. 2011-11-24 12:37:58 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Override acceptcaps function for the two ghostpads The ghostpad acceptcaps functions are not valid in this case because we don't only accept the caps accepted by the target but could also insert converters. Fixes bug #663892. 2011-11-24 11:34:12 +0100 Sebastian Dröge * gst/playback/gstplaysinkaudioconvert.c: playsinkaudioconvert: use-volume and use-converters are no construct-only properties anymore Fixes bug #663893. 2011-11-24 11:09:20 +0100 Vincent Penquerc'h * gst/videoconvert/videoconvert.c: videoconvert: fix width/height mismatches https://bugzilla.gnome.org/show_bug.cgi?id=663238 2011-11-24 11:04:10 +0100 Mark Nauwelaerts * gst/videoconvert/videoconvert.c: videoconvert: fix odd width and height handling in some fastpath cases 2011-10-22 20:29:26 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: skip the second bisection when possible If we already saw the keyframes that we need to find, we do not need to bisect to find them. This will always be the case for streams with audio only, where each frame acts as a keyframe, but will occasionally also happen for streams with video. https://bugzilla.gnome.org/show_bug.cgi?id=662475 2011-10-22 20:20:38 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: improve push time seeking Various tweaks to improve convergence, in particular for the worst case, which is now cut in about half. https://bugzilla.gnome.org/show_bug.cgi?id=662475 2011-10-21 19:38:19 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: gather some more stats about bisection https://bugzilla.gnome.org/show_bug.cgi?id=662475 2011-11-24 01:30:50 +0000 Tim-Philipp Müller * gst/playback/gsturidecodebin.c: uridecodebin: double-check property type before blindly setting/proxying values 2011-11-24 01:18:38 +0000 Tim-Philipp Müller * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin2, uridecodebin: make connection-speed property a guint64 2011-11-23 23:16:51 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: docs: update sgml for renames 2011-11-23 16:09:13 +0000 Vincent Penquerc'h * ext/vorbis/gstvorbisenc.c: vorbisenc: do not accept 256 channels, 255 is the max vorbis supports 2011-11-23 13:22:12 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: implement replay gain It would ideally be better to leave this to a rgvolume element, but we don't control the pipeline. So do it by default, and allow disabling it via a property, so the correct volume should always be output. 2011-11-23 11:58:54 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: add in-band FEC support This allows reconstruction of lost packets if FEC info is included in the next packet, at the cost of extra latency. Since we do not know if the stream has FEC (and this can change at runtime), we always incur the latency, even if we never lose any frame, or see any FEC information. Off by default. 2011-11-23 11:10:31 +0100 Wim Taymans * ext/ogg/gstoggstream.c: ogg: fix compilation 2011-11-23 11:08:39 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/opus/gstopusdec.c ext/opus/gstopusenc.c ext/opus/gstopusparse.c gst/audiovisualizers/gstwavescope.c gst/filter/Makefile.am gst/filter/gstfilter.c gst/filter/gstiir.c gst/playondemand/gstplayondemand.c 2011-11-23 11:08:39 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/opus/gstopusdec.c ext/opus/gstopusenc.c ext/opus/gstopusparse.c gst/audiovisualizers/gstwavescope.c gst/filter/Makefile.am gst/filter/gstfilter.c gst/filter/gstiir.c gst/playondemand/gstplayondemand.c 2011-11-23 10:50:53 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/ogg/gstoggmux.c 2011-11-22 20:27:50 +0000 Tim-Philipp Müller * ext/opus/gstopusenc.c: opusenc: mark properties changeable at runtime with GST_PARAM_MUTABLE_PLAYING 2011-11-22 18:33:17 +0000 Vincent Penquerc'h * tests/check/elements/opus.c: opus: add test 2011-11-22 17:04:09 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: allow setting most properties at PLAYING time Opus allows these to be changed during encoding, transparently to the decoder. 2011-11-22 16:14:06 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: bound the bitrate to more sensible values Go from the bounds mentioned in the spec, and allow some more variation. In particular, don't allow silly low bitrates, and allow reaching the maximum useful bitrate. 2011-11-22 15:33:20 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: fix crash on pathological parameters Asking for 1 bit/s would select a 0 byte buffer, leading to a crash. Buffer size is now controlled by a max-payload-size property, which can't be less than 2. 2011-11-22 13:29:10 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: extract opus comments if available 2011-11-21 17:48:54 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opus: move header magic testing to gstopusheader 2011-11-21 17:01:49 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: skip pre-skip samples 2011-11-21 12:50:22 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: read pre-skip from first header if available 2011-11-22 13:15:33 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: recognize opus headers from data, not packet count Opus streams outside of Ogg may not have headers, and oggstream may be used by oggmux to mux an Opus stream which does not come from Ogg - thus without headers. Determining headerness by packet count would strip the first two packets from such an Opus stream, leading to a very small amount of audio being clipped at the beginning of the stream. 2011-11-22 13:01:35 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: add some more debug info when determining start time 2011-11-22 12:55:56 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: fix opus duration calculation 2011-11-22 12:00:58 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: early out on headers when determining packet duration 2011-11-21 17:03:21 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: account for opus pre-skip in granpos/time mapping 2011-11-22 10:04:12 +0100 René Stadler * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: avoid removing children from bin twice GstBin base class removes children in dispose, so we need to do the same. 2011-11-22 01:21:04 +0000 Tim-Philipp Müller * ext/libvisual/visual.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: Fix some more printf format warnings 2011-11-21 19:28:01 +0100 Matej Knopp * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: Fix printf format compiler warnings for OSX / 64bit https://bugzilla.gnome.org/show_bug.cgi?id=662607 2011-11-21 13:35:34 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/tag/gsttagdemux.c: update for activation changes 2011-11-21 13:04:42 +0100 Edward Hervey * sys/ximage/ximagepool.c: ximagebufferpool: Use the default ::free_buffer() implementation Which does exactly the same thing 2011-11-21 13:04:12 +0100 Edward Hervey * sys/xvimage/xvimagepool.c: xvimagebufferpool: Use the default ::free_buffer() implementation Which does exactly the same thing 2011-11-21 12:02:28 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: reset tagsetter interface on stop 2011-11-21 11:44:01 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: handle NULL packets (used for PLC) 2011-11-21 11:28:10 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: light cleanup 2011-11-20 09:58:06 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: do not push header buffers Opus headers appear only when muxed in Ogg, so only place them on the caps, where oggmux will find them, but other elements will be blithely unaware of them. 2011-11-20 09:52:46 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opus: make opusparse set headers on caps Header-on-caps code moved to a new shared location to avoid duplicating the code. 2011-11-19 16:06:09 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: ogg: add opus support 2011-11-19 15:58:09 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix terminating NUL being written in signature 2011-11-16 19:40:20 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: make frame-size an enum It only supports a set number of specific values (including a non integer one). 2011-11-16 19:22:44 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: the encoder might not make use of all the bytes 2011-11-18 17:58:58 +0100 Wim Taymans * ext/gio/gstgiosrc.c: * ext/ogg/gstoggdemux.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/audiotestsrc/gstaudiotestsrc.c: update for new scheduling query 2011-11-18 13:56:04 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/tag/gsttagdemux.c: add parent to activate functions 2011-11-18 12:37:10 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiobasesink.c: fix for scheduling mode rename 2011-11-17 17:32:42 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/celt/gstceltdec.c ext/opus/gstopusdec.c ext/opus/gstopusdec.h ext/opus/gstopusenc.c ext/opus/gstopusenc.h ext/opus/gstopusparse.c 2011-11-17 17:32:42 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/celt/gstceltdec.c ext/opus/gstopusdec.c ext/opus/gstopusdec.h ext/opus/gstopusenc.c ext/opus/gstopusenc.h ext/opus/gstopusparse.c 2011-11-17 17:07:41 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/audio/gstaudiodecoder.c 2011-11-17 16:15:46 +0100 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: tag: update for new typefind 2011-11-17 12:48:25 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagmux.c: * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: add parent to pad functions 2011-11-17 08:24:27 +0100 Stefan Sauer * gst/adder/gstadder.c: collectpads: port API changes 2011-11-16 18:49:03 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: do not include variable fields in caps Those can vary from one packet to the next, so have no reason to be in the caps. 2011-11-16 18:43:53 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix constrained-vbr property name typo 2011-11-16 18:35:29 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: let the base class handle all timing 2011-11-16 19:00:44 +0100 Mark Nauwelaerts * ext/vorbis/gstvorbisenc.c: vorbisenc: reset tag setter interface when appropriate 2011-11-16 19:00:30 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: invalidate format info when setup negotiation failed ... which ensures nothing subsequently tries to slip past _chain and into a possibly improperly setup subclass. 2011-11-15 19:53:33 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopus.c: opusparse: add opusparse element A very simple element that parses Opus streams from the ad hoc framing used by the Opus test vectors. 2011-11-16 17:24:20 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: allow negotiation of rate/channels with downstream Since an opus stream may be decoded to any (sensible) rate, and either stereo or mono, we try to accomodate downstream. 2011-11-16 17:05:17 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: rewrite logic Parameters such as frame size, etc, are variable. Pretty much everything can change within a stream, so be prepared about it, and do not cache parameters in the decoder. 2011-11-16 16:56:43 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: port to base audio encoder/decoder 2011-11-15 13:29:31 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: accept dropped buffers before we know the format This allows flacdec to not emit audio for headers, while allowing the base audio decoder to keep its timestamps in sync. 2011-11-16 17:50:03 +0100 Wim Taymans * gst/playback/gststreamsynchronizer.c: add parent to internal links 2011-11-16 17:25:17 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audioresample/gstaudioresample.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/subparse/gstsubparse.c: add parent to query function 2011-11-16 13:26:35 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: allow negotiation of rate/channels with downstream Since an opus stream may be decoded to any (sensible) rate, and either stereo or mono, we try to accomodate downstream. 2011-11-16 01:14:32 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: rewrite logic Parameters such as frame size, etc, are variable. Pretty much everything can change within a stream, so be prepared about it, and do not cache parameters in the decoder. 2011-11-15 23:00:32 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: remove buffer pool, buffers are not constant size 2011-11-15 19:53:33 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopus.c: opusparse: add opusparse element A very simple element that parses Opus streams from the ad hoc framing used by the Opus test vectors. 2011-11-16 12:37:44 +0100 Wim Taymans * ext/libvisual/visual.c: visual: update for renamed flags Use the _check_reconfigure method instead of checking flags. Don't need to ref the parent anymore, core does that. 2011-11-15 17:49:48 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix pointer mismatch in memcpy on drain 2011-11-15 17:58:19 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: _query_peer_*() -> _peer_query_*() 2011-11-15 17:17:53 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst/adder/gstadder.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamsplitter.c: _peer_get_caps() -> _peer_query_caps() 2011-11-15 16:48:15 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * tests/check/elements/audioconvert.c: * tests/examples/encoding/encoding.c: * tests/icles/playback/test.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: update for _get_caps() -> _query_caps() 2011-11-15 16:30:38 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: change getcaps to query Add sink and src event functions in rtpbasepayload Add query vmethod to rtpbasepayload. 2011-11-15 13:29:31 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: accept dropped buffers before we know the format This allows flacdec to not emit audio for headers, while allowing the base audio decoder to keep its timestamps in sync. 2011-11-14 13:41:58 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: port to encoder/decoder base classes 2011-11-14 12:45:31 +0100 Robert Swain * gst-libs/gst/audio/gstaudiodecoder.c: audio: Remove some unused variables 2011-08-30 18:27:09 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtcpbuffer.h: rtcpbuffer: Add feedback message types from RFC 5104 These are Codec Control messages (CCM) https://bugzilla.gnome.org/show_bug.cgi?id=658419 2011-10-19 16:30:27 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: improve reverse playback ... by doing some more (reverse) timestamp interpolating and refactoring downstream pushing. Fixes #661983. 2011-11-14 09:59:36 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gsttagdemux.c: tag: convert GstTagDemux's sometimes source pad to an always source pad Originally decodebin couldn't deal with that in 0.10, but now simply setting the caps when we know them should be enough. Pad activation mode switching might need some more testing/tweaking with the new arrangement. 2011-11-14 10:46:56 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtppayloads.h: * gst-libs/gst/rtsp/gstrtsptransport.h: fix docs 2011-11-12 15:37:37 +0200 Stefan Sauer * tests/icles/audio-trickplay.c: controller: no need to explicitely add controlled properties anymore 2011-11-13 23:44:23 +0000 Tim-Philipp Müller * ext/gio/gstgio.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: Update for GstURIHandler get_protocols() changes 2011-11-13 18:22:06 +0000 Tim-Philipp Müller * ext/gio/gstgio.c: * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.c: * tests/check/libs/audiocdsrc.c: gio, appsrc, appsink, cdaudiosrc: update for GstURIHandler API changes 2011-11-13 14:39:43 +0000 Tim-Philipp Müller * win32/common/libgstaudio.def: * win32/common/libgstinterfaces.def: * win32/common/libgstrtp.def: * win32/common/libgstrtsp.def: win32: update for API changes 2011-11-13 13:32:30 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: gst-libs/gst/audio/Makefile.am gst-libs/gst/audio/audio.h tests/examples/seek/jsseek.c tests/examples/seek/seek.c tests/icles/test-colorkey.c 2011-11-13 13:18:16 +0000 Tim-Philipp Müller * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiodecoder.c: audio: add GST_AUDIO_INFO_IS_VALID macro and use in audio decoder base class API: GST_AUDIO_INFO_IS_VALID 2011-11-12 15:51:52 +0000 Tim-Philipp Müller * configure.ac: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: tests: require Gtk+ 3.0 for examples and Gtk-based test apps The Gtk+ dependency is entirely optional, we're just not supporting Gtk+ 2.x any longer. 2011-11-07 17:36:44 +0000 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: audio: fix order in LIBADD Local libs must come first. 2011-11-12 12:00:17 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update after library merge 2011-11-12 11:56:06 +0000 Tim-Philipp Müller * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_x86_64.h: tests: update after type renames 2011-11-11 11:29:56 +0000 Tim-Philipp Müller * po/POTFILES.in: po: update POTFILES.in for renamed source files 2011-11-07 17:36:44 +0000 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: audio: fix order in LIBADD Local libs must come first. 2011-11-07 17:25:45 +0000 Tim-Philipp Müller * tests/check/libs/audiocdsrc.c: tests: fix audiocdsrc for changed preroll behaviour Previously, the source posted a TAG message before buffers would even be pushed towards the sink, so we'd get the TAG message before any ASYNC_DONE message. Now the tags get sent downstream to the sink to get posted there, and the tag event will get queued and handled later after preroll has finished, so now we get the ASYNC_DONE message before the TAG message. 2011-09-24 19:55:25 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/audiocdsrc.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_x86_64.h: tests: fix up cddabasesrc unit test for GstCddaBaseSrc -> GstAudioCdSrc renaming 2011-09-24 19:35:40 +0100 Tim-Philipp Müller * ext/cdparanoia/Makefile.am: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/cdparanoia/gstcdparanoiasrc.h: cdparanoia: update for GstCddaBaseSrc -> GstAudioCdSrc renaming 2011-09-24 19:22:11 +0100 Tim-Philipp Müller * Android.mk: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiocdsrc.c: * gst-libs/gst/audio/gstaudiocdsrc.h: * gst-libs/gst/cdda/Makefile.am: * gst-plugins-base.spec.in: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-cdda-uninstalled.pc.in: * pkgconfig/gstreamer-cdda.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * po/POTFILES.in: * win32/MANIFEST: * win32/common/libgstcdda.def: * win32/vs6/libgstcdda.dsp: cdda: rename GstCddaBaseSrc to GstAudioCdSrc and move to libgstaudio Another mini-lib down, to make space for new mini libs. Remove bogus copyright line while at it. 2011-11-12 09:56:04 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: update spec file for latest 0.11 changes 2011-11-12 01:38:37 +0100 René Stadler * gst/audioconvert/gstaudioconvert.c: * gst/videoconvert/gstvideoconvert.c: audioconvert, videoconvert: fix caps leak in transform_caps 2011-11-11 20:19:53 +0100 René Stadler * gst/audioconvert/audioconvert.c: audioconvert: fix leak of channel matrix gst_channel_mix_unset_matrix relies on the channel count to free the matrix array, so run it before resetting it to zero with gst_audio_info_init. 2011-11-11 19:55:41 +0100 René Stadler * gst/videotestsrc/videotestsrc.c: videotestsrc: fix crash with ARGB64 This got broken when it was ported. 2011-11-11 19:53:11 +0100 René Stadler * gst-libs/gst/video/video.c: video: init chroma-size and colorimetry members even if missing from caps This makes a TRUE return from gst_video_info_from_caps fully consistent with gst_video_info_init. 2011-11-11 19:36:23 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-11 19:35:33 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.h: * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.h: rtsp: cleanup headers Add padding, fix indentation, remove deprecated stuff 2011-11-11 19:21:09 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.h: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/rtp/gstrtppayloads.h: rtp: fix headers indent, add padding, remove old abidata 2011-11-11 19:16:54 +0100 Wim Taymans * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/navigation.h: * gst-libs/gst/interfaces/propertyprobe.h: * gst-libs/gst/interfaces/streamvolume.h: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/videoorientation.h: remove padding from interfaces 2011-11-11 19:16:12 +0100 Wim Taymans * gst-libs/gst/interfaces/tunernorm.h: fix docs 2011-11-11 19:14:26 +0100 Wim Taymans * gst-libs/gst/interfaces/mixertrack.h: mixertrack: fix docs 2011-11-11 19:13:52 +0100 Wim Taymans * gst-libs/gst/audio/audio.h: audio: fix docs 2011-11-11 19:01:56 +0100 Wim Taymans * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/pbutils-private.h: pbutils: clean up headers Add padding indent 2011-11-11 18:49:09 +0100 Wim Taymans * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/colorbalancechannel.h: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/mixeroptions.h: * gst-libs/gst/interfaces/mixertrack.h: * gst-libs/gst/interfaces/navigation.h: * gst-libs/gst/interfaces/propertyprobe.h: * gst-libs/gst/interfaces/streamvolume.h: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/tunerchannel.h: * gst-libs/gst/interfaces/tunernorm.h: * gst-libs/gst/interfaces/videoorientation.h: * gst-libs/gst/interfaces/videooverlay.h: interfaces: clean up Remove deprecated bits Fix FIXMES Indent Add padding 2011-11-11 17:46:41 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: opus: port to 0.11 2011-11-11 18:23:22 +0100 Wim Taymans * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.c: * gst-libs/gst/fft/gstffts32.h: fft: fix headers More fft structure into .c file indent headers 2011-11-11 17:53:03 +0100 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstaudioiec61937.h: * gst-libs/gst/audio/gstaudiosink.h: audio: fix headers Add const to some methods. Add padding. Add GType for GstAudioInfo and GstAudioFormatInfo. Add new/copy/free for GstAudioInfo. 2011-11-11 17:52:36 +0100 Wim Taymans * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: app: fix headers 2011-11-11 13:32:23 +0000 Tim-Philipp Müller * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: fix visualisations again Make caps writable before merging other caps into them. 2011-11-11 13:14:21 +0100 Wim Taymans * docs/design/draft-media-types.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add support for max-framerate Add support for max-framerate in the video helpers and update the video caps document. 2011-11-11 13:12:27 +0100 Wim Taymans * gst/playback/gstplaysinkconvertbin.c: make the identity silent 2011-11-11 12:35:50 +0100 Wim Taymans * gst-libs/gst/video/gstmetavideoclip.h: remove bogus file 2011-11-11 12:32:23 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h: * gst-libs/gst/rtp/gstrtpbasedepayload.c: * gst-libs/gst/rtp/gstrtpbasedepayload.h: * gst-libs/gst/rtp/gstrtpbasepayload.c: * gst-libs/gst/rtp/gstrtpbasepayload.h: rename files to match object names 2011-11-11 12:24:08 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: rename BaseRTP -> RTPBase 2011-11-11 12:00:52 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiobasesink.c: * gst-libs/gst/audio/gstaudiobasesink.h: * gst-libs/gst/audio/gstaudiobasesrc.c: * gst-libs/gst/audio/gstaudiobasesrc.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiosrc.h: rename baseaudio* -> audiobase* 2011-11-11 11:52:47 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * ext/alsa/gstalsasrc.c: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosrc.h: rename GstBaseAudio* ->GstAudioBase* 2011-11-11 11:33:15 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioiec61937.h: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.h: rename files to match contained objects 2011-11-11 11:21:41 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioiec61937.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosrc.h: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/gstringbuffer.h: audio: GstRingBuffer -> GstAudioRingBuffer 2011-11-11 10:54:39 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audio: rename internal audio ringbuffer 2011-11-11 10:27:27 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioprocess.c: * gst-libs/gst/audio/gstaudioprocess.h: * gst-libs/gst/audio/gstaudioringbuffer.c: * gst-libs/gst/audio/gstaudioringbuffer.h: * gst-libs/gst/audio/gstbaseaudiosrc.c.orig: * gst-libs/gst/audio/gstbaseaudiosrc.c.rej: * gst-libs/gst/audio/gstringbufferthread.c: * gst-libs/gst/audio/gstringbufferthread.h: * gst-libs/gst/cdda/gst-plugins-base-sha1-2.patch: * gst-libs/gst/cdda/gstcddabasesrc.c.orig: * gst-libs/gst/rtp/gst-plugins-base-rtcp-feedback.patch: * gst-libs/gst/rtp/gstbasertppayload.c.orig: * gst-libs/gst/rtp/gstbasertppayload.c.rej: * gst-libs/gst/rtp/gstrtpbuffer.c.new: * gst-libs/gst/rtsp/gstrtspconnection.c.orig: * gst-libs/gst/rtsp/rtsp-marshal.c: * gst-libs/gst/rtsp/rtsp-marshal.h: * gst-libs/gst/rtsp/rtspdefs.patch: * gst/videorate/videorate-discont.patch: remove bogus files They got somehow commited in 7012e88090e69339c60a4eb9449f7a7e39ca6aa3 2011-11-11 10:39:17 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-11 10:39:17 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 23:02:35 +0200 Stefan Sauer * gst/volume/gstvolume.c: * tests/icles/audio-trickplay.c: controller: port controller api changes 2011-11-10 18:34:48 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 18:34:48 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 18:32:39 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst/gdp/gstgdpdepay.c: * gst/subparse/gstsubparse.c: update for adapter api changes 2011-11-10 18:30:31 +0100 Wim Taymans * tests/check/libs/gstlibscpp.cc: tests: fix build after removal of base64 lib 2011-11-10 17:13:40 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix bandwidth property type mismatch 2011-11-10 17:52:36 +0100 Wim Taymans * gst-libs/gst/video/gstvideosink.h: videosink: reset padding 2011-11-10 17:39:10 +0100 Wim Taymans * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspbase64.c: * gst-libs/gst/rtsp/gstrtspbase64.h: * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: remove deprecated base64 library 2011-11-10 17:26:12 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 17:18:00 +0100 Wim Taymans * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: rtp: fix de/payloaders gst_basertppayload -> gst_base_rtp_payload Add pts/dts support in the depayloader Remove old timestamp code Add a default getcaps function so subclasses can chain up to it instead of relying on the return value of the getcaps function. 2011-11-10 15:55:31 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: make unsigned properties unsigned, not signed 2011-11-10 16:24:12 +0100 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: audio: fix base class vmethods 2011-11-10 16:02:01 +0100 Wim Taymans * ext/alsa/gstalsa.c: * ext/alsa/gstalsasrc.c: alsa: fix negotiation Don't assume the format is a string because now it is a list of string in the template. Chain up to the parent class implementation of get_caps. 2011-11-10 16:00:28 +0100 Wim Taymans * gst-libs/gst/audio/gstaudiosrc.c: audiosrc: avoid deadlock 2011-11-10 14:37:02 +0000 Vincent Penquerc'h * ext/vorbis/gstvorbisenc.c: vorbisenc: fix getcaps ignoring filter caps 2011-11-10 14:24:30 +0000 Vincent Penquerc'h * gst/audioconvert/gstaudioconvert.c: audioconvert: truncate caps in _fixate Otherwise the resulting caps may not be fixed. 2011-11-10 14:18:54 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not try to write empty header buffers Those are valid, and the EOS skeleton packet is actually empty. 2011-11-10 13:02:13 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: split request pad templates into audio/video/subtitle https://bugzilla.gnome.org/show_bug.cgi?id=663766 2011-11-10 13:50:08 +0100 Wim Taymans * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: audioclock: remove _full version 2011-11-10 13:45:39 +0100 Wim Taymans * gst-libs/gst/app/gstappsink.h: appsink: fix header 2011-11-10 12:47:51 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: pbutils: Fix introspection annotations Fixes #663689 2011-11-10 12:14:19 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 12:14:19 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 11:42:10 +0100 Edward Hervey * tests/check/libs/struct_arm.h: tests: Remove old structures from struct_arm.h 2011-11-10 11:02:12 +0100 Wim Taymans * ext/libvisual/visual.c: * ext/pango/gsttextrender.c: update for removed fixate functions 2011-11-09 17:37:31 +0100 Wim Taymans * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: upates for new ACCEPT_CAPS query 2011-11-09 12:24:37 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-09 12:24:37 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-09 12:19:04 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/colorspace/colorspace.c 2011-11-09 12:19:04 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/colorspace/colorspace.c 2011-11-09 12:11:59 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: common ext/pango/gsttextoverlay.c gst-libs/gst/video/video.c 2011-11-09 11:47:54 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/audioresample/gstaudioresample.c: remove query types 2011-11-09 11:06:10 +0100 Wim Taymans * gst/playback/Makefile.am: * gst/playback/gstplayback.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamselector.h: remove streamselector It was only used by playbin, which is gone now 2011-11-09 10:53:38 +0100 Wim Taymans * gst/playback/gststreamselector.c: streamselector: GstSelectorPad -> GstStreamSelectorPad Rename object to avoid conflicts with an object of the same name in core. 2011-11-09 10:37:02 +0100 Wim Taymans * gst/playback/gststreamselector.c: streamselector: cleanups 2011-11-09 00:36:51 +0000 Tim-Philipp Müller * common: * configure.ac: configure: suppress warnings about unused variables if debugging system is disabled in core https://bugzilla.gnome.org/show_bug.cgi?id=662952 2011-10-27 14:48:52 +0100 Vincent Penquerc'h * ext/pango/gsttextoverlay.c: textoverlay: continue processing text when silent This prevents playback wegding when text buffers are left to pile up. https://bugzilla.gnome.org/show_bug.cgi?id=662829 2011-11-08 11:07:18 +0100 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * tests/check/elements/vorbistag.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisenc.c: * tests/icles/audio-trickplay.c: update for pad probe api changes 2011-11-08 08:22:56 +0100 Stefan Sauer * gst-libs/gst/video/video.c: video: log important details and fix format strings If we complain about wrong parameters passed, also log the actual value. 2011-11-08 00:16:56 +0000 Tim-Philipp Müller * win32/common/libgstaudio.def: win32: update .def file for new audiosink API API: gst_base_audio_sink_get_alignment_threshold() API: gst_base_audio_sink_set_alignment_threshold() API: gst_base_audio_sink_get_discont_wait() API: gst_base_audio_sink_set_discont_wait() 2011-11-07 23:41:33 +0000 Tim-Philipp Müller * tests/examples/seek/seek.c: examples: sprinkle GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS in seek test utility https://bugzilla.gnome.org/show_bug.cgi?id=630497 2011-11-07 23:05:44 +0000 Tim-Philipp Müller * ext/pango/gsttextoverlay.c: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/video/video.c: docs: fix up some Since: markers 2011-11-07 18:19:51 +0000 Vincent Penquerc'h * gst/videoconvert/videoconvert.c: videoconvert: fix r210 writing only half a scanline 2011-11-07 17:18:06 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-07 17:10:48 +0100 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: fix for new pad probe types Restore the previous behaviour by only blocking downstream items and not upstream events. 2011-11-04 10:34:27 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: fix speed level failure test It was testing the opposite of what it thought it was. https://bugzilla.gnome.org/show_bug.cgi?id=663390 2011-11-04 10:57:40 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: make logically static const data just so https://bugzilla.gnome.org/show_bug.cgi?id=663391 2011-11-04 10:58:15 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: use th_packet_iskeyframe instead of peeking at bits https://bugzilla.gnome.org/show_bug.cgi?id=663391 2011-11-04 10:59:00 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: trivial comment typos fixes https://bugzilla.gnome.org/show_bug.cgi?id=663391 2011-11-04 10:59:12 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: warn when trying to set an ignored obsolete property https://bugzilla.gnome.org/show_bug.cgi?id=663391 2011-11-04 11:10:46 +0000 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: refuse to get to READY if the encoder was disabled https://bugzilla.gnome.org/show_bug.cgi?id=663391 2011-10-18 17:58:49 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: survive skeleton finding length behind our backs in push mode In push mode, we determine duration by doing a seek to the end of the stream. However, a skeleton stream with an index will cause the duration to be known already, and we end up never setting the push_time_duration variable which we use to know duration has been determined. https://bugzilla.gnome.org/show_bug.cgi?id=662049 2011-10-05 15:29:54 +0100 Vincent Penquerc'h * tests/check/gst-plugins-base.supp: valgrind: add ALSA leaks fixed by snd_config_update_free_global If they go when calling snd_config_update_free_global, they're not really bug leaks, but more like intentional ones we don't want to get told about. https://bugzilla.gnome.org/show_bug.cgi?id=615342 2011-11-07 12:43:37 +0100 Wim Taymans * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: convertbin: port to 0.11 again 2011-11-07 12:23:15 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: common configure.ac gst-libs/gst/audio/gstbaseaudiosink.c gst/playback/gstdecodebin2.c gst/playback/gstplaysinkaudioconvert.c gst/playback/gstplaysinkaudioconvert.h gst/playback/gstplaysinkvideoconvert.c gst/playback/gstplaysinkvideoconvert.h 2011-10-05 18:25:58 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix latency query This makes live 'audiosrc ! opusenc ! opusdec ! audiosink' pipelines actually work without all audio being dumped. https://bugzilla.gnome.org/show_bug.cgi?id=660999 2011-10-05 15:47:06 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: use debug level for debug info, not error https://bugzilla.gnome.org/show_bug.cgi?id=660999 2011-09-29 14:22:33 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix calculation of filler data size https://bugzilla.gnome.org/show_bug.cgi?id=660469 2011-05-02 13:05:28 +0300 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: baseaudiosink: make discont-wait configurable Now we can configure how much time to wait before deciding that a discont has happened. Also, adds getter and setter to allow derived implementations to set this value upon construction. Suggestions and several improvements by Havard Graff. Signed-off-by: Felipe Contreras 2011-11-07 11:31:47 +0100 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: delay the resyncing of timestamp vs ringbuffertime A common problem for audio-playback is that the timestamps might not be completely linear. This is specially common when doing streaming over a network, where you can have jittery and/or bursty packettransmission, which again will often be reflected on the buffertimestamps. Now, the current implementation have a threshold that says how far the buffertimestamp is allowed o drift from the ideal aligned time in the ringbuffer. This was an instant reaction, and ment that if one buffer arrived with a timestamp that would breach the drift-tolerance, a resync would take place, and the result would be an audible gap for the listener. The annoying thing would be that in the case of a "timestamp-outlier", you would first resync one way, say +100ms, and then, if the next timestamp was "back on track", you would end up resyncing the other way (-100ms) So in fact, when you had only one buffer with slightly off timestamping, you would end up with *two* audible gaps. This is the problem this patch addresses. The way to "fix" this problem with the previous implementation, would have been to increase the "drift-tolerance" to a value that was greater than the largest timestamp-outlier one would normally expect. The big problem with this approach, however, is that it will allow normal operations with a huge offset timestamp vs running-time, which is detrimental to lip-sync. If the drift-tolerance is set to 200ms, it basically means that lip-sync can easily end up being off by that much. This patch will basically start a timer when the first breach of drift-tolerance is detected. If any following timestamp for the next n nanoseconds gets "back on track" within the threshold, it has basically eliminated the effect of an outlier, and the timer is stopped. If, however, all timestamps within this time-limit are breaching the threshold, we are probably facing a more permanent offset in the timestamps, and a resync is allowed to happen. So basically this patch offers something as rare as both higher accuracy, it terms of allowing smaller drift-tolerances, as well as much smoother, less glitchy playback! Commit message and improvments by Havard Graff. Fixes bug #640859. 2011-11-07 11:18:34 +0100 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: rename some variables 2011-05-21 16:16:42 +0300 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: use gst_util_uint64_scale_int when appropriate It's probably safer this way. 2011-05-21 15:49:20 +0300 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: baseaudiosink: split drift-tolerance into alignment-threshold So that drift-tolerance is used for clock slaving resync, and alignment-threshold is for timestamp drift. 2011-05-21 16:02:36 +0300 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: trivial comment fixes Some found by Havard Graff. Signed-off-by: Felipe Contreras 2011-11-07 10:02:00 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-07 10:02:00 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-04 22:00:43 +0100 Stefan Sauer * gst/adder/gstadder.c: adder: don't ref NULL caps 2011-11-04 21:00:29 +0100 Stefan Sauer * gst/volume/gstvolume.c: volume: use new api to check activity of a controller 2011-11-04 15:23:25 +0100 Stefan Sauer * ext/pango/Makefile.am: * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: * gst/audiotestsrc/Makefile.am: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/volume/Makefile.am: * gst/volume/gstvolume.c: * tests/check/elements/volume.c: * tests/icles/audio-trickplay.c: controller: port to new location and api changes 2011-11-04 17:40:01 +0100 Wim Taymans * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playback: name conversion elements differently 2011-11-04 15:36:25 +0100 Stefan Sauer * tests/examples/encoding/Makefile.am: * tools/Makefile.am: build: add audio libs (pulled by pbutils) to avoid linking against system version 2011-11-04 13:21:24 +0100 Wim Taymans * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: store bpf in the right variable 2011-11-04 13:01:52 +0100 Wim Taymans * docs/design/design-decodebin.txt: * docs/design/design-encoding.txt: docs: fix some docs 2011-11-04 13:00:36 +0100 Wim Taymans * gst/playback/gsturidecodebin.c: uridecodebin: fix template name 2011-11-04 12:53:33 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: fix somtimes pad 2011-11-04 11:01:42 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-04 11:01:42 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-04 10:48:50 +0100 Wim Taymans * ext/ogg/gstoggmux.c: * gst/adder/gstadder.c: * gst/encoding/gstencodebin.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * tests/check/elements/adder.c: * tests/check/pipelines/oggmux.c: * tests/examples/dynamic/sprinkle.c: * tests/examples/dynamic/sprinkle2.c: * tests/examples/dynamic/sprinkle3.c: fix pad template names for request pads 2011-11-04 10:37:12 +0100 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Use gst_caps_merge() instead of gst_caps_union() This keeps the caps order and is more efficient. 2011-11-04 10:36:51 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Use gst_caps_merge() instead of gst_caps_union() This keeps the caps order and is more efficient. 2011-11-04 08:41:00 +0100 Edward Hervey * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: Fix compilation issues with gcc 4.6.1 2011-11-04 08:58:23 +0100 Edward Hervey * win32/common/libgstvideo.def: win32: Update for modified API 2011-11-04 08:57:45 +0100 Edward Hervey * Android.mk: * android/netbuffer.mk: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-plugins-base.spec.in: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/check/libs/netbuffer.c: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_x86_64.h: * win32/MANIFEST: * win32/common/libgstnetbuffer.def: * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstnetbuffer.dsp: Really remove all mention of gstnetbuffer 2011-11-03 21:35:38 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/tag/Makefile.am: Add missing default include paths to androgenizer call Fixes building tag/ with Android's NDK 2011-11-03 17:58:57 +0100 Wim Taymans * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * tests/examples/dynamic/codec-select.c: * tests/icles/output-selector-test.c: update for request pads change. 2011-11-03 16:48:51 +0100 Wim Taymans * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/netbuffer/README: * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: * pkgconfig/gstreamer-netbuffer-uninstalled.pc.in: * pkgconfig/gstreamer-netbuffer.pc.in: net: remove net library, it's now in core 2011-11-03 14:10:31 +0200 Mart Raudsepp * gst/playback/gstdecodebin2.c: decodebin2: Post all source pads in stream-topology messages as "element-srcpad" values This allows us to easily get ahold of all pads on a stream-topology message, including pre-decoder ones, while "pad" only gives us access to the raw pads (as used by discoverer). 2011-10-20 13:04:52 +0300 Mart Raudsepp * gst/playback/gstdecodebin2.c: decodebin2: Use existing "caps" quark for one of the structure sets 2011-11-03 14:19:50 +0100 Wim Taymans * tests/check/libs/netbuffer.c: tests: fix netbuffer test 2011-11-03 10:07:27 +0100 Sebastian Dröge * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Don't add identity multiple times 2011-10-19 14:13:39 +0100 Vincent Penquerc'h * gst/playback/gstplaysinkconvertbin.c: playsink: send flush start/stop event when we switch elements https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-19 14:13:30 +0100 Vincent Penquerc'h * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: playsink: re-add identity where appropriate https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-19 14:12:01 +0100 Vincent Penquerc'h * gst/playback/gstplaysinkaudioconvert.c: playsink: lock the new {set,get}_property functions https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 23:14:54 +0000 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Be more consistent with ghostpad targets Set up targets on READY->PAUSED state change to passthrough by default. This prevents the targets from being unset on the first run, while the 'raw' variable would mean that some target is set. 2011-10-17 22:41:49 +0000 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: No need to remove the identity The identity element should be handled by the GstBin's cleanup, removing it on the remove_elements function might remove it too soon, as this function can be called directly from playsink 2011-10-17 22:41:11 +0000 Thiago Santos * gst/playback/gstplaysinkconvertbin.c: playsinkconvertbin: Adding some debug messages Adds a couple debug messages and some g_assert to make debugging easier 2011-10-17 22:02:03 +0000 Thiago Santos * gst/playback/gstplaysinkvideoconvert.c: playsink-videoconvert: Fix warning on build Remove unused variable 2011-10-17 21:05:30 +0000 Vincent Penquerc'h * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: playsink: handle after-the-fact changes in converters/volume booleans The playsink was nastily poking a boolean in the structure. Make those booleans properties, so we are told when they change, and rebuild the conversion bin when they do. Some cleanup to go with it too. https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 18:43:06 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkconvertbin.c: playsink: handle NULL cached caps in getcaps https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 18:06:00 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkconvertbin.c: playsink: consider both passthrough and converter caps in getcaps Since we can switch between both modes. https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 17:54:27 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: playsink: cache inner converter bin caps https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 17:26:48 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkconvertbin.c: playsink: keep both raw and non raw pipelines at all times and switch between them as needed. https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 17:29:50 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkconvertbin.c: playsink: only compare against the media type we expect ie, audio/x-raw- for audio, video/x-raw- for video. Add a trailing - to be more specific. I doubt there's anything like audio/x-rawhide or something, but you never know. https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 16:55:30 +0000 Vincent Penquerc'h * gst/playback/Makefile.am: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkconvertbin.c: * gst/playback/gstplaysinkconvertbin.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: playsink: refactor the converter bins since they are almost identical https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-17 13:00:05 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: playsink: fix passthrough mode (hopefully) The code was doing counterintuitive rewiring of pads when the bin did not contain any elements. We now add an identity element in that case, which makes it simpler, and should fix the AC3 passthrough mode when using pulseaudio (but I don't see the bug here so can't test). https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-10-07 11:16:44 +0000 Vincent Penquerc'h * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playsink: handle NULL ghost pad target For the src pad anyway. https://bugzilla.gnome.org/show_bug.cgi?id=661262 2011-11-03 09:56:14 +0100 Sebastian Dröge * gst/playback/gstplaysinkaudioconvert.c: Revert "playsinkaudioconvert: Fix warning when there is no target pad yet" This reverts commit f35c51c14915729f0fdf2b348f351ea7e81027cc. Better patch coming soon. 2011-10-28 10:07:42 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Remove obsolete #include 2011-11-02 23:33:18 +0000 Tim-Philipp Müller * docs/design/draft-subtitle-overlays.txt: docs: add draft for subtitle overlays to design docs Main purpose is to provide a generic way to make subtitles work on top of non-raw video (vaapi, vdpau, etc.). 2011-11-02 15:31:11 -0400 Colin Walters * common: * configure.ac: configure: Allow setting GLIB_EXTRA_CFLAGS Similar to gstreamer commit bb2020b1e794210cf7d44c6626122f611016a620 2011-11-02 12:08:22 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisdec.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: update for tag API removal 2011-11-02 11:24:05 +0100 Edward Hervey * gst-libs/gst/video/video.h: video: Add convenience macros for accessing GstVideoInfo flags 2011-11-02 10:31:24 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-02 10:31:24 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-10-31 02:39:48 +0100 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: netbuffer: _netaddress_ -> _net_address_ 2011-10-31 02:35:36 +0100 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: netaddress: updata api 2011-10-31 02:23:21 +0100 Wim Taymans * ext/theora/gsttheoradec.c: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideometa.c: * gst-libs/gst/video/gstvideometa.h: * gst-libs/gst/video/gstvideopool.h: * gst-libs/gst/video/video.c: * gst/videoconvert/gstvideoconvert.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: rename meta* -> *meta 2011-10-29 09:28:57 +0200 Wim Taymans * ext/alsa/gstalsamixer.c: alsa: update for new task api 2011-10-29 09:03:07 +0200 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/interfaces/videooverlay.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: structure: fix for api update 2011-10-29 08:25:07 +0200 Wim Taymans * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: bufferlist: update for new API 2011-11-01 00:34:28 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * tests/check/elements/vorbistag.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisenc.c: * tests/icles/audio-trickplay.c: Update for pad API changes GstProbeType, GstProbeReturn and GstActivateMode -> GstPad* 2011-10-31 14:51:32 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-10-31 14:51:32 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-10-31 14:26:09 +0000 Tim-Philipp Müller * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: don't include header that's been removed 2011-10-31 14:22:58 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-10-30 14:51:48 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: save audio info parsed in setcaps in encoder context Otherwise we'll just error out when the first buffer gets pushed. This is a porting artefact, in 0.10 the infos were allocated on the heap, now we're doing everything with stack-allocated structs. 2011-10-30 11:09:10 +0000 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/id3v2.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * tests/check/elements/vorbistag.c: * tests/check/libs/pbutils.c: * tests/check/libs/tag.c: * tests/check/libs/xmpwriter.c: ext, gst, gst-libs, tests: update for tag list API changes 2011-10-31 15:16:36 +0100 René Stadler * gst-libs/gst/audio/gstaudiofilterexample.c: audio: remove old C file generated from template Not sure how this one got pulled into a merge. In 0.10, it was moved away to gst-template a long time ago. gstaudiofilterexample.c got generated from gstaudiofiltertemplate.c. 2011-10-30 20:00:47 +0000 Tim-Philipp Müller * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: don't use soon-to-be-deprecated gst_filter_run() 2011-10-28 18:45:09 +0200 Edward Hervey * configure.ac: configure.ac: Fix build 2011-10-28 16:24:44 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-28 16:11:36 +0200 Wim Taymans * gst-libs/gst/tag/gsttagdemux.c: fix compile for SEEK_TYPE_CUR removal 2011-10-28 13:58:47 +0200 Mersad Jelacic * gst-libs/gst/audio/gstaudiosink.c: audiosink: avoid deadlocking audioringbuffer thread ... when it goes into wait for ringbuffer starting just after such having been signalled. Fixes #661738. 2011-10-28 11:37:31 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: use BPF for unit_size 2011-10-28 11:34:37 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-28 10:44:38 +0200 René Stadler * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: fix get_unit_size 2011-10-28 11:13:52 +0200 René Stadler * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: init audio info sooner 2011-10-28 11:11:55 +0200 René Stadler * gst-libs/gst/audio/audio.c: * gst-libs/gst/video/video.c: audio, video: init audio/video format info to UNKNOWN format This is to prevent e.g. GST_AUDIO_INFO_FORMAT() from crashing on a NULL pointer dereference when used with an unset info. 2011-04-26 22:20:29 +0200 Philip Jägenstedt * gst/typefind/gsttypefindfunctions.c: typefind: extract SOF marker in jpeg typefinder The SOF types are defined by http://www.w3.org/Graphics/JPEG/itu-t81.pdf This is needed to make sure that we plug a jpeg decoder that can handle the type of JPEG we have (e.g. lossless JPEG) https://bugzilla.gnome.org/show_bug.cgi?id=556648 2009-08-10 01:48:29 +0000 Thiago Santos * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: port to gstcollectpads2 2011-10-27 18:54:50 +0200 Wim Taymans * gst-libs/gst/rtp/gstbasertppayload.c: basertppay: rename caps fields Make the caps fields for timestamp and seqnum match the element properties. See #628773 2011-10-27 18:50:32 +0200 Wim Taymans * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: basedepay: remove old fields 2011-10-27 17:33:06 +0200 Wim Taymans * tests/check/elements/encodebin.c: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: tests: fix compilation 2011-10-27 17:26:58 +0200 Wim Taymans * ext/alsa/gstalsa.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst/subparse/gstsubparse.c: * gst/typefind/gsttypefindfunctions.c: fix compilation 2011-10-27 16:13:56 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-27 16:13:56 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-27 15:44:58 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: configure.ac gst-libs/gst/audio/gstbaseaudiosink.c gst/audioconvert/channelmixtest.c gst/playback/gstplaybasebin.c gst/playback/gstsubtitleoverlay.c tests/examples/Makefile.am tests/examples/audio/Makefile.am 2011-10-27 15:29:36 +0200 Wim Taymans * gst-libs/gst/interfaces/videooverlay.c: overlay: fix compilation 2011-10-27 23:39:31 +1100 Jan Schmidt * tests/examples/Makefile.am: build: Fix build for moved volume subdir 2011-10-27 09:51:46 +0200 Stefan Sauer * Makefile.am: * configure.ac: * tests/examples/Makefile.am: * tests/examples/audio/.gitignore: * tests/examples/audio/Makefile.am: * tests/examples/audio/volume.c: * tests/examples/volume/.gitignore: * tests/examples/volume/Makefile.am: volume: move volume example to audio 2011-10-27 09:42:36 +0200 Stefan Sauer * tests/examples/audio/Makefile.am: audio examples. fix the makefile 2011-10-27 09:33:55 +0200 Stefan Sauer * tests/examples/volume/volume.c: volume: make global vars static 2011-10-27 09:33:01 +0200 Stefan Sauer * tests/examples/audio/.gitignore: * tests/examples/audio/Makefile.am: * tests/examples/audio/audiomix.c: audiomix: add a simple audiomix example 2011-10-25 20:04:06 +1100 Jan Schmidt * gst/playback/gstplaysinkaudioconvert.c: playsinkaudioconvert: Fix warning when there is no target pad yet 2011-10-13 11:34:49 -0400 Nicolas Dufresne * gst/playback/gstdecodebin2.c: decodebin2: Link elements before testing if they can reach the READY state This is made possible by filtering errors. This is required to let harware accelerated element query the video context. The video context is used to determine if the HW is capable, and thus if the element is supported or not. Fixes bug #662330. 2011-10-21 21:57:17 +0200 René Stadler * gst/playback/gstplaybasebin.c: playbasebin: remove avoidable call to gst_object_set_name 2011-10-21 21:41:03 +0200 René Stadler * ext/ogg/gstoggdemux.c: oggdemux: remove avoidable call to gst_object_set_name 2011-10-21 21:39:01 +0200 René Stadler * gst/audioconvert/Makefile.am: * gst/audioconvert/channelmixtest.c: audioconvert: bury dead test program 2011-10-21 14:37:31 +0200 Stefan Sauer * docs/libs/gst-plugins-base-libs-sections.txt: * ext/alsa/gstalsamixer.h: * gst-libs/gst/audio/gstaudioprocess.c: * gst-libs/gst/audio/gstaudioprocess.h: * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/navigation.c: * gst-libs/gst/interfaces/navigation.h: * gst-libs/gst/interfaces/propertyprobe.c: * gst-libs/gst/interfaces/propertyprobe.h: * gst-libs/gst/interfaces/tuner.c: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/videoorientation.c: * gst-libs/gst/interfaces/videoorientation.h: * gst-libs/gst/interfaces/videooverlay.c: * gst-libs/gst/interfaces/videooverlay.h: * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/rtsp/gstrtspextension.h: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/libs/mixer.c: * tests/check/libs/navigation.c: * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: * tests/check/libs/struct_x86_64.h: interfaces: clean up the use of iface and class/klass 2011-10-20 10:13:46 -0300 Reynaldo H. Verdejo Pinochet * Android.mk: Disable ext/vorbis for the android ndk build It currently makes the build fail. Idea is to enable it back again once its building problems get sorted out. 2011-10-19 19:44:06 +0200 René Stadler * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix leaks of pad templates and internal proxy pads 2011-10-19 19:37:07 +0200 René Stadler * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix leak of element reference through pad block If the pad block never happens because there is no data flow at all, the callback is never fired and the reference is never released. This causes a reference cycle between the pad and element, so valgrind is not very vocal about it (memory is still reachable). 2011-10-18 21:42:21 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: having gather queue contents implies some draining is in order ... which ensures e.g. processing and sending last fragment of reverse playback downstream at EOS. 2011-10-19 15:28:44 +0100 Vincent Penquerc'h * ext/vorbis/gstvorbisdec.c: vorbisdec: do not try to read past the buffer array https://bugzilla.gnome.org/show_bug.cgi?id=662108 2011-10-18 21:40:54 +0200 Mark Nauwelaerts * ext/vorbis/gstvorbisdec.c: vorbisdec: only finish header packet frame if received in-stream ... rather than scaring audiodecoder with a frame extracted from caps. Fixes #662108 (partially). 2011-10-19 10:41:31 +0200 Stefan Sauer * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: make it more clean that "synchronous" props are not for avsync 2011-10-19 00:32:13 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix unused variable compiler warning if debugging in core is disabled https://bugzilla.gnome.org/show_bug.cgi?id=660150 2011-10-18 14:32:05 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-18 14:32:05 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-18 13:00:29 +0200 René Stadler * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix event unref in (rare) error case 2011-10-17 15:41:58 +0100 Tim-Philipp Müller * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: fix crash when setting the wave property before having negotiated a format https://bugzilla.gnome.org/show_bug.cgi?id=661911 2011-10-07 17:41:32 +0100 Vincent Penquerc'h * gst/playback/gstdecodebin2.c: decodebin2: fire drained signal where appropriate This will allow playbin2 to send its about-to-finish signal. Taken out (apparently by mistake) by the EOS rewrite in july. https://bugzilla.gnome.org/show_bug.cgi?id=661202 2011-10-17 12:28:58 +0200 Edward Hervey * gst/audioconvert/gstaudioconvert.c: audioconvert: We can handle channels conversion 2011-10-17 12:00:55 +0200 Edward Hervey * gst-libs/gst/audio/audio.c: audio: Add some default channel positions 2011-10-17 12:00:16 +0200 Edward Hervey * gst-libs/gst/audio/audio.c: * tests/check/libs/audio.c: audio: Properly handle signedness in gst_audio_format_build_integer() 2011-10-16 11:32:41 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not retry seeking indefinitely https://bugzilla.gnome.org/show_bug.cgi?id=661897 2011-10-17 11:45:39 +0200 Edward Hervey * gst-libs/gst/audio/audio.c: audio: Indent and doc fixes 2011-10-16 15:28:31 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-16 15:28:31 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-13 08:53:34 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-11 17:42:35 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Only call gst_video_info_from_caps on raw video 2011-10-10 12:15:37 -0300 Thiago Santos * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: update blocksize when caps or samples-per-buffer change Blocksize needs to be updated so we get a correct size buffer on _fill function. 2011-10-10 13:11:59 +0200 Brian Cameron * gst/videotestsrc/Makefile.am: videotestsrc: fix LDADD missing GST_LIBS 2011-10-10 11:45:49 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/vorbis/gstvorbisenc.c 2011-10-10 11:39:52 +0200 Wim Taymans * ext/gio/gstgiobasesrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/subparse/gstsubparse.c: * gst/tcp/gsttcp.c: * gst/videotestsrc/gstvideotestsrc.c: update for UNEXPECTED -> EOS flowreturn 2011-10-09 14:21:28 -0300 Thiago Santos * gst-libs/gst/video/video.c: libs: video: Add protection against null strings Check and assert if input for gst_video_format_from_string is null. Return GST_VIDEO_FORMAT_UNKNOWN as a fallback 2011-10-09 13:36:38 -0300 Thiago Santos * tests/check/libs/struct_arm.h: * tests/check/libs/struct_i386.h: * tests/check/libs/struct_i386_osx.h: tests: Updating some tests with GstXOverlayClass -> GstVideoOverlayIface 2011-10-09 21:19:32 +0200 Mark Nauwelaerts * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: vorbisenc: only push header buffers following initial events 2011-10-09 16:15:54 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: update to 0.11 API after merge 2011-10-09 16:08:36 +0100 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: tests/check/pipelines/vorbisdec.c tests/check/pipelines/vorbisenc.c 2011-10-09 16:48:18 +0200 Alessandro Decina * gst-libs/gst/audio/gstaudiodecoder.c: audioencoder: fix compile warning 2011-10-08 20:17:43 +0200 Mark Nauwelaerts * tests/check/pipelines/vorbisenc.c: tests: vorbisenc: adjust discontinuity checking to audioencoder behaviour ... which still detects gaps and marks DISCONT, depending on configuration, but may come up with somewhat different timestamps when crossing the gap. 2011-10-08 20:16:04 +0200 Mark Nauwelaerts * tests/check/pipelines/vorbisdec.c: tests: vorbisdec: properly configure audiodecoder when requiring perfect ts 2011-10-08 20:14:27 +0200 Mark Nauwelaerts * tests/check/elements/vorbisdec.c: tests: vorbisdec: remove empty header buffer check ... as empty buffers are discarded, and header buffers are now also optionally retrieved from caps anyway. 2011-10-08 20:13:11 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: only resync to upstream upon discont in perfect ts mode ... as documented, where discont is marked here if tolerance has been exceeded. 2011-10-08 20:11:22 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix timestamp tolerance handling 2011-10-08 20:09:09 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: handle empty input by discarding 2011-10-08 11:17:11 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-08 11:17:11 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-08 11:05:29 +0200 Wim Taymans * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.h: vorbisdec: report to 0.11 2011-10-08 10:19:06 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/vorbis/gstvorbisdec.c ext/vorbis/gstvorbisenc.c ext/vorbis/gstvorbisenc.h gst/audiotestsrc/gstaudiotestsrc.c 2011-10-07 14:52:33 +0200 Mark Nauwelaerts * ext/vorbis/Makefile.am: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: vorbisdec: port to audiodecoder 2011-10-07 14:33:04 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: make upstream queries MT-safe 2011-10-07 14:32:33 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: make upstream queries and events MT-safe 2011-10-05 15:43:35 +0200 Mark Nauwelaerts * ext/vorbis/Makefile.am: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: vorbisenc: port to audioencoder 2011-10-07 14:05:19 +0200 René Stadler * ext/ogg/gstoggdemux.c: oggdemux: don't leak scheduling query 2011-10-06 18:21:29 +0100 Vincent Penquerc'h * tests/check/elements/audiotestsrc.c: tests: actually test what we said we would All tests were testing the default sine wave https://bugzilla.gnome.org/show_bug.cgi?id=661106 2011-10-06 18:20:32 +0100 Vincent Penquerc'h * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: add missing break And make violet noise usable https://bugzilla.gnome.org/show_bug.cgi?id=661105 2011-10-06 15:38:49 +0100 Vincent Penquerc'h * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playsink: fix caps negotiation through the new convenience bins The bins' getcaps was bypassing the inner elements, and thus failing to account for the caps transformations they allow, which caused YUV video pipelines to fail with ximagesink, which does not support YUV, even though the convenience bin includes a colorspace converter for just this purpose. https://bugzilla.gnome.org/show_bug.cgi?id=660816 2011-10-06 11:53:26 +0100 Vincent Penquerc'h * gst/playback/gstplaybin2.c: playbin2: fix mismatch between video/ and video/x-dvd-subpicture The new code was checking for a prefix, and would find video/ first. Check in two passes, first checking for a perfect match, and falling back to a prefix check if nothing was found. https://bugzilla.gnome.org/show_bug.cgi?id=657261 2011-10-06 14:05:42 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-06 14:05:42 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-04 21:17:37 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Re-enable parsers Re-enable parsers in encodebin to allow more passthrough scenarios to work. Specially the ones that require changing 'stream formats'. i.e. h264 in mkv to mpegts. 2011-10-05 12:45:19 +0200 Robert Swain * gst/playback/gstplaysink.c: playsink: Add audio- and text-sink props 2011-10-05 11:57:54 +0200 Edward Hervey * gst-libs/gst/audio/audio.c: audio: Make sure 'channels' and 'channel-positions' are coherent If channel-positions are present, check they match the reported 'channels' value. 2011-10-05 11:51:07 +0200 Edward Hervey * gst-libs/gst/audio/audio.c: audio: Fix overread in channel positions The array we're writing to is limited to 64 ... but the amount of input positions might be lower than 64. Therefore use MIN and not MAX to know how many values to read from the array. 2011-10-04 23:09:42 +0200 Stefan Sauer * gst/audiotestsrc/gstaudiotestsrc.c: auditestsrc: indent fix 2011-10-04 18:06:07 +0200 Wim Taymans * gst/playback/gstplaybin2.c: playbin2: port new bits to 0.11 2011-10-04 17:58:49 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-04 17:56:19 +0200 Wim Taymans * tests/check/Makefile.am: Makefile: remove 0.11 fixme 2011-10-04 16:22:55 +0200 Robert Swain * gst/playback/gstplaysink.c: playsink: Add video-sink property The video-sink property allows manual specification via g_object_set () of the video sink element to be used. 2011-10-04 13:29:21 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-04 13:29:21 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-03 15:20:06 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Minor cleanup of decoder-sink compatibility checking code 2011-09-30 12:29:34 -0300 Thibault Saunier * gst/playback/gstplaybin2.c: playbin2: Make sure that the decoders we plug are compatible with the fixed sink The fact that a decoder is not compatible with the fixed sink is currently happenning in the case where we have hardware accelerated video decoders on the system (especially vaapi elements that are actually plugged), and the user is providing a sink that doesn't support the surface. A simple example that shows how it used to crash on a system where gstreamer-vaapi is installed: gst-launch playbin2 video-sink=xvimagesink uri=/codec/supported/by/vaapi What we are now doing in this case, is avoid using the accelerated decoder and plug a "normal" decoder instead (if avalaible). This commit doesn't handle the case where we have hardware accelerated demuxing. 2011-02-18 11:48:37 +0000 Vincent Penquerc'h * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * win32/common/libgstpbutils.def: encoding-profile: add a function to create a profile from a discoverer info Only A/V streams are added at the moment, there does not seem to be a similar way to add other streams (eg, subtitles). https://bugzilla.gnome.org/show_bug.cgi?id=642878 2011-10-03 11:24:04 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-03 11:24:04 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-28 14:57:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix decoding A simple ... opusenc ! opusdec ... pipeline now works. https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 14:56:18 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: moan if we get an unexpected amount of data https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 14:22:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: properly setup caps and init state from caps https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 13:25:21 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: use the same frame size setup as the opus test code https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 13:24:52 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: opus supports a select set of sampling rates https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 13:24:21 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: make it build against current, and remove cruft https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-27 00:26:29 +0100 Vincent Penquerc'h * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: alsasrc: fail gracefully when ALSA does not give timestamps https://bugzilla.gnome.org/show_bug.cgi?id=660170 2011-10-03 10:55:53 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Use a TIME limit for pre-rolling in live streams and not in non-live streams Fixes bug #647769 for real. 2011-10-03 10:11:19 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/pango/gsttextoverlay.c gst/encoding/gstencodebin.c 2011-10-03 10:02:21 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add h264 transfer functions 2011-10-01 01:05:00 +0100 Vincent Penquerc'h * ext/pango/gsttextoverlay.c: textoverlay: add YV12 support Basically the same as I420, just with chroma planes swapped. https://bugzilla.gnome.org/show_bug.cgi?id=660604 2011-09-30 09:44:12 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Fix typo on formatter adding condition The condition is if the muxer doesn't have tag setter *and* isn't a formatter itself. Any of those two conditions makes the muxer good enough to not need a formatter. 2011-09-30 10:54:26 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: audio: don't use GST_PTR_FORMAT for segments Avoids crashes with debugging output enabled. 2011-09-30 11:45:51 +0200 Wim Taymans * gst/playback/gstsubtitleoverlay.c: Revert "sbutitleoverlay: fix compiler warning" This reverts commit ed792293e7fc2bd54f4627649bb836a05709b5ab. Not needed anymore because of another commit 2011-09-30 11:00:31 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add another color matrix for mpeg2 2011-09-30 11:00:15 +0200 Wim Taymans * gst/playback/gstsubtitleoverlay.c: sbutitleoverlay: fix compiler warning 2011-09-30 10:59:52 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: fix docs 2011-09-29 21:50:59 +0100 Tim-Philipp Müller * ext/vorbis/gstvorbisdec.c: vorbisdec: set channel positions 2011-09-29 21:30:52 +0100 Tim-Philipp Müller * gst/playback/gstsubtitleoverlay.c: subitleoverlay: fix compiler warning gstsubtitleoverlay.c: In function 'gst_subtitle_overlay_video_sink_event': gstsubtitleoverlay.c:1736:22: error: 'target' may be used uninitialized in this function 2011-09-29 17:43:57 +0200 Wim Taymans * configure.ac: back to development === release 0.11.1 === 2011-09-29 17:43:00 +0200 Wim Taymans * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: RELEASE 0.11.1 2011-09-29 17:41:34 +0200 Wim Taymans * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2011-09-29 13:46:36 +0200 Wim Taymans * tests/check/elements/adder.c: * tests/check/elements/audioconvert.c: * tests/check/elements/audiorate.c: * tests/check/elements/audioresample.c: * tests/check/elements/audiotestsrc.c: * tests/check/elements/decodebin2.c: * tests/check/elements/encodebin.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/videorate.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/check/libs/audio.c: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: * tests/check/pipelines/simple-launch-lines.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: tests: update for new audio caps 2011-09-29 13:45:58 +0200 Wim Taymans * win32/common/libgstaudio.def: defs: add new symbols 2011-09-28 16:08:14 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix refcounting error 2011-09-28 16:07:53 +0200 Wim Taymans * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: store info so we can debug it 2011-09-28 15:46:40 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-28 15:41:16 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: really push pending events 2011-09-28 15:35:56 +0200 Wim Taymans * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: add method to set output caps Add a method to configure the output caps. Subclasses can't use gst_pad_set_caps() anymore because then we won't see the caps. Unbreak the padtemplate registration, the GTypeClass that is configured in the object during _init is not the right one, we need to use the klass passed as the argument to the init function.. 2011-09-28 14:32:20 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: remove more tags from upstream tag events such as bitrate tags We want to remove all codec specific tags. 2011-09-28 11:35:46 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/audio/gstaudioencoder.c gst/playback/gstplaybin2.c gst/videotestsrc/videotestsrc.c 2011-09-28 01:56:42 +0300 Raimo Järvi * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix compiler warning on 64 bit mingw-w64 Fixes bug #660304. 2011-09-28 01:11:30 +0300 Raimo Järvi * gst/playback/gstplaybin2.c: playbin2: Fix compiler warnings on 64 bit mingw-w64 Fixes bug #660301. 2011-09-27 16:18:05 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: only got_data if we really got some ... which avoids going loopy with casual subclass. 2011-09-27 16:57:45 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: really push pending events 2011-09-27 16:16:54 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: send tag event after pending events ... which probably includes a pending newsegment event. 2011-09-27 16:16:29 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: protect pending_events with proper lock 2011-09-27 15:31:20 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: clean up some documentation 2011-09-27 11:19:24 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/video.h: docs: improve docs 2011-09-27 00:32:41 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: minor docs fix 2011-09-26 22:31:17 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-26 22:31:17 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-26 21:11:14 +0200 Wim Taymans * gst-libs/gst/audio/gstaudioencoder.c: audioenc: fix compilation 2011-09-26 19:22:05 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/audio/gstaudiodecoder.c gst-libs/gst/audio/gstaudioencoder.c gst/encoding/gstencodebin.c 2011-09-26 16:36:56 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: docs: Adjust for GstAudioEncoder API changes 2011-09-26 16:36:22 +0200 Sebastian Dröge * win32/common/libgstaudio.def: win32: Adjust for GstAudioEncoder API changes 2011-09-26 16:35:55 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Improve set_frame_sample_{min,max} documentation 2011-09-26 16:22:00 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: audiodecoder: Fix thread safety issues if both pads have different streaming threads 2011-09-26 16:19:42 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Delay sending of serialized events to finish_frame() 2011-09-26 16:02:51 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: Revert "audioencoder: Use GST_BOILERPLATE instead of custom GObject boilerplate code" This reverts commit 11e375486e07cfa0686a97b5cf6110909b3a828c. GST_BOILERPLATE() can't define an abstract type and G_DEFINE_ABSTRACT_TYPE() does not pass the class struct to the instance_init function and there's no way to get the class struct of the current type in instance_init(). 2011-09-26 15:59:22 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Add support for requesting a minimum and maximum number of samples per frame This extends the special case of a fixed number of samples per frame that was supported before already. 2011-09-26 15:45:40 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: Fix thread safety issues if both pads have different streaming threads 2011-09-26 15:42:14 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Delay sending of serialized events to finish_frame() This makes sure that the caps are already set before any serialized events are sent downstream. 2011-09-26 15:34:54 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: Use GST_BOILERPLATE instead of custom GObject boilerplate code 2011-09-26 15:14:41 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: audioencoder: add some tag handling convenience help 2011-09-26 14:48:55 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: provide CODEC/AUDIO_CODEC handling 2011-09-26 13:42:38 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: filter AUDIO_CODEC/CODEC tags from passing tag events 2011-09-25 15:31:01 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: backport some const-ifications from 0.11 branch To keep code identical as much as possible between the two branches, for easier merging. 2011-09-25 15:24:56 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: fix indentation 2011-09-23 21:18:47 +0100 Tim-Philipp Müller * Android.mk: * configure.ac: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/Makefile.am: * gst-libs/gst/floatcast/Makefile.am: * gst-libs/gst/floatcast/floatcast.h: * gst-plugins-base.spec.in: * gst/audioconvert/audioconvert.c: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-floatcast-uninstalled.pc.in: * pkgconfig/gstreamer-floatcast.pc.in: * tests/check/elements/audioconvert.c: * tests/check/libs/gstlibscpp.cc: libs: remove unused floatcast header-only library There's no code whatsoever that uses these macros. If anyone ever feels the need to resurrect them, we should add them to gstutils.h in core or libgstaudio or so. 2011-09-23 18:27:11 +0200 Edward Hervey Merge branch 'master' into 0.11 Conflicts: ext/ogg/gstoggdemux.c ext/pango/gsttextoverlay.c gst-libs/gst/audio/gstaudioencoder.c gst-libs/gst/audio/gstbaseaudiosrc.c gst/playback/gstsubtitleoverlay.c gst/videorate/gstvideorate.c 2011-09-23 17:50:31 +0200 Robert Swain * gst/encoding/gstencodebin.c: encodebin: Avoid unnecessary read only caps copy 2011-09-21 13:30:43 +0200 Edward Hervey * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiodecoder.c: gst-libs: Temporarily remove dependency of gstaudio on gstpbutils Also re-order the SUBDIRS in the higher-level Makefile so it cleanly installs. https://bugzilla.gnome.org/show_bug.cgi?id=657675 2011-09-22 15:38:51 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: proxy some more optional downstream caps fields to upstream 2011-09-22 15:38:22 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: changed is verily the opposite of equal 2011-09-22 15:37:07 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: prevent crashing when comparing to a freshly inited GstAudioInfo 2011-09-22 15:36:22 +0200 Mark Nauwelaerts * gst-libs/gst/audio/audio.h: audio: some more accessor macros for GstAudioInfo 2011-09-22 15:34:41 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: fix documentation typo 2011-09-21 13:54:27 +0200 Edward Hervey * common: Update common to 0.11 branch 2011-09-21 13:31:35 +0200 Edward Hervey * win32/common/libgstaudio.def: win32: Update .def files 2011-09-19 18:32:26 +0100 Sjoerd Simons * tests/check/elements/videorate.c: videorate: Add tests for the max-rate case 2011-09-19 18:31:07 +0100 Sjoerd Simons * tests/check/elements/videorate.c: videorate: Print which caps didn't match up 2011-09-19 18:26:04 +0100 Sjoerd Simons * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: Add a max-rate property In various use-case you want to dynamically change the framerate (e.g. live streams where the available network bandwidth changes). Doing this via capsfilters in the pipeline tends to be very cumbersome and racy, using this property instead makes it very painless. 2011-09-01 17:05:23 +0100 Sjoerd Simons * tests/check/elements/videorate.c: videorate: Add test for caps negotiation 2011-09-01 16:47:49 +0100 Sjoerd Simons * gst/videorate/gstvideorate.c: videorate: Add more strict caps negotiation When in drop-only mode we can never provide a framerate that is higher then the input, so let the caps negotiation reflect this. 2011-09-20 13:35:55 +0100 Tim-Philipp Müller * gst/videorate/gstvideorate.c: videorate: don't unref event we don't own http://bugzilla.gnome.org/show_bug.cgi?id=659562 2011-09-20 14:04:45 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Only check if this is a discarded type if we have fixed caps For unfixed caps we will get here again later when the caps are fixed. 2011-09-20 14:03:47 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Only call autoplug-continue with fixed caps With unfixed caps we can't reliably decide if the final caps are going to be "raw" (e.g. supported by a sink) or not. We will get here again later when the caps are fixed. 2011-09-20 13:45:55 +0200 Sebastian Dröge * tests/check/elements/decodebin2.c: decodebin2: Fix unit test by strictly implementing parser behaviour instead of relying on basetransform 2011-01-13 15:35:30 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: oggstream: only use information from skeleton if we have nothing better The codec setup headers are a lot more likely to have correct information, especially as it's easy to remux a skeleton in a file where streams don't have the same parameters (I've even seen a file with two skeletons). Still, this is useful in the case we have a codec we can't decode, so we can at least (theoretically) convert granpos to time, so we discard this information if the codec setup has already provided it. This fixes playback on (at lesat) the original archive.org encoding of "The Night of the Living Dead" (now replaced by another encoding). https://bugzilla.gnome.org/show_bug.cgi?id=612443 2011-09-19 14:16:19 +0200 Age Bosma * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: Don't use gtk-doc /* < ... > */ style comments for signals The /*< ... >*/ style is only used for public|protected|private, signal comments use /* signals */. This prevents the some code parsers/binding generators to be confused by the comment. 2011-09-19 14:02:00 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Get the target of the video sinkpad, not the target sinkpad in the video setcaps handler 2011-08-18 15:13:23 +0000 Youness Alaoui * gst/playback/gstdecodebin2.c: decodebin2: Initialize variable correctly If subdrained isn't initialized to FALSE then a chain might think that its group is drained when in fact it's not and this can cause a switch too early or even cause a deadlock. 2011-07-28 16:44:33 +0000 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Rewrite EOS-handling code This is now really threadsafe and improves switching between different groups. 2011-09-19 11:53:02 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Fix non-prerolling pipelines and not-linked errors if a parser is available but no decoder Fixes bug #658846. 2011-08-01 07:54:02 +0200 Mark Nauwelaerts * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtspdefs: add RTCP-Interval header 2011-09-19 11:24:47 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Implement support for switching between raw and non-raw video streams 2011-09-19 09:34:08 +0200 Sebastian Dröge * ext/pango/gsttextoverlay.c: textoverlay: Protect against accessing the NULL parent of the pads during shutdown Fixes bug #658901. 2011-09-16 20:14:39 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: oggdemux: remove superfluous check in newsegment event handler If we get a newsegment event from upstream, we can be quite sure we're not operating pull-based. 2011-09-16 20:11:56 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: oggdemux: minor printf format fix 2011-09-14 12:23:19 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: fix wedge when seeking twice quickly in push mode This could happen when testing with navseek, and pressing right and left at roughly the same time. The current chain is temporarily moved away, and this caused the flush events not to be sent to the source pads, which would cause the data queues downstream to reject incoming data after the seek, and shut down, wedging the pipeline. Now, I can't really decide whether this is a nasty steaming hack or a good fix, but it certainly does fix the issue, and does not seem to break anything else so far. https://bugzilla.gnome.org/show_bug.cgi?id=621897 2011-08-13 14:18:56 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: implement push mode seeking This patch implements seeking in push mode (eg, over the net) in Ogg, using the double bisection method. As a side effect, it also fixes duration determination of network streams, by seeking to the end to check the actual duration. Known issues: - Getting an EOS while seeking stops the streaming task, I can't find a way to prevent this (eg, by issuing a seek in the event handler). - Seeking twice in a VERY short succession with playbin2 fails for streams with subtitles, we end up pushing in a dataqueue which is flushing. Rare in normal use AFAICT. - Seeking is slow on slow links - byte ranges guesses could be made better, decreasing the number of required requests - If no granule position is found in the last 64 KB of a stream, duration will be left unknown (should be pretty rare) https://bugzilla.gnome.org/show_bug.cgi?id=621897 2011-09-15 22:04:56 +0200 Alessandro Decina * gst/playback/gstplaybin2.c: playbin2: fix compiler warning Remove a check for gchar >= 128 2011-09-15 16:47:26 +0200 Stefan Sauer * gst/adder/gstadder.c: adder: don't access the event after pushing Fixes valgrind warnings. 2011-09-15 14:27:35 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: Revert "playbin2: autoplug sink if stream is incompatible to the configured one" This reverts commit b0b4e286c8cde2e79a959a444a2c68e99c3f29c6. We agreed that the previous (pre-.35) behaviour is broken and a bug and the current behaviour is correct, deterministic and allows the application to handle stuff properly while the old behaviour can't be handled properly by applications and just worked in some applications by luck. The solution to the problem that was solved by relying on the old, broken behaviour would be, to make decodebin2/playbin2 more aware of decoders and improve the autoplugging of decoders by considering the caps supported by the sink instead of just using something with the highest rank. See bug #656923. 2011-09-15 09:23:54 +0200 Josep Torra * gst/playback/gstplaybin2.c: playbin2: autoplug sink if stream is incompatible to the configured one Fixes regression since 0.10.33 where sinks that can cope with non raw caps or custom caps are not autoplugged if there's a sink configured with the properties video-sink and audio-sink which cannot handle the stream. This change checks for compatibility on the configured one and use it if success. Otherwhise it tries with the found factories. 2011-08-13 14:14:19 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not propagate discontinuities in sparse streams The first packet of a sparse stream may arrive after an initial delay in the stream. If ogg_stream_packetout reports a discontinuity in a sparse stream, do not propagate it to other streams in the chain unnecessarily. https://bugzilla.gnome.org/show_bug.cgi?id=621897 2011-09-12 15:48:59 +0200 Josep Torra * gst/playback/gstplaysink.c: Revert "playsink: only add text overlay if vido sink also accepts raw caps" This reverts commit a22faad18a73a27a2a0c903748c1a355df4d8c13. Instead of disabling subtitles completelly when video stream have custom caps, just let the sutbtileoverlay cope with them as now it's able to. 2011-09-12 15:46:46 +0200 Josep Torra * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: gracefully handle non raw video streams Implement handling of non raw video streams by avoiding colorspace elements and autoplugging a compatible renderer if available. Fallback to passthrough if no compatible renderer is found. 2011-09-12 15:10:37 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: playbin2: try to catch malformed URIs Only log in debug log for now, since the check is a bit half-hearted, its purpose is mostly to make sure people use gst_filename_to_uri() or g_filename_to_uri(). https://bugzilla.gnome.org/show_bug.cgi?id=654673 2011-09-12 19:53:51 +0100 Tim-Philipp Müller * gst-libs/gst/tag/tag.h: docs: minor addition to GST_TAG_ID3V2_HEADER_SIZE docs 2011-09-11 14:22:59 -0400 Thomas Vander Stichele * ext/theora/gsttheoraenc.c: theoraenc: Fix descriptions of properties 2011-09-10 18:30:55 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: don't try to fixate "width" field for alaw/mulaw Fixes warning when trying to fixate e.g. pulsesrc ! audio/x-alaw ! fakesink. 2011-09-09 13:10:13 +0100 Tim-Philipp Müller * docs/design/design-decodebin.txt: docs: fix some typos in the decodebin design document 2011-09-09 13:07:57 +0100 Tim-Philipp Müller * gst-libs/gst/interfaces/colorbalance.c: colorbalance: add some guards to interface methods https://bugzilla.gnome.org/show_bug.cgi?id=658584 2011-09-09 12:07:44 +0100 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: recognize Asylum modules Note that there is already a AMF detection for a different magic, I'm not sure if that's a different format with the same initials or not. AMF is used for a few different formats (including video), so... This fixes playbin2 playing Asylum modules. https://bugzilla.gnome.org/show_bug.cgi?id=658514 2011-08-31 20:51:17 -0400 Nicolas Dufresne * gst/subparse/gstsubparse.c: subparse: Improve subrip type check regex This patch prevents timestamp like "1 1:00:00", which would have been seen as hour 101 by our parser, and allow single digit hour, minute and seconds as it's already supported by the parser, and also by other implementation like in mplayer. This fixes bug 657872. https://bugzilla.gnome.org/show_bug.cgi?id=657872 2011-09-08 14:46:23 +0200 Sebastian Dröge * docs/design/design-decodebin.txt: decodebin: Update design documentation about how Parser/Converter are handled 2011-09-08 14:42:13 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "Revert "decodebin2: Do a subset check before actually using a factory"" This reverts commit 5f5d832a3bcff0828758f164fcb13c4258aefb36. 2011-09-08 14:42:00 +0200 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: docs/libs/Makefile.am tests/check/elements/decodebin2.c 2011-09-08 13:25:27 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin2: Do a subset check before actually using a factory" This reverts commit 50a88396ae6d54a83a10e7d2efd551d39033148e. See bug #658541. 2011-09-07 16:44:04 +0200 Sebastian Dröge * tests/check/elements/decodebin2.c: decodebin2: Don't use bufferalloc in the test elements This will cause not-linked errors that usually don't happen because normal decoders/parsers will set srcpad caps before allocating buffers from downstream. 2011-09-07 16:43:36 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Make sure to fixate Parser/Converter caps before continuing autoplugging 2011-09-07 16:04:43 +0200 Josep Torra * gst/playback/gstplaysink.c: playsink: only add text overlay if vido sink also accepts raw caps Fixes regression, pipeline fails with not negotiated, on media containing subtitles when decoder/sink with custom caps is used. 2011-09-07 14:19:32 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Intersect the factory caps with the current caps for the capsfilter Otherwise we'll include many incompatible caps in the capsfilter that will only slow down negotiation. 2011-09-07 14:07:00 +0200 Stefan Sauer * docs/libs/Makefile.am: * docs/plugins/Makefile.am: docs: cleanup makefiles Remove commented out parts that we don't need. Remove "the wingo addition" - no so useful after all. Narrow down file-globs for plugin docs. 2011-09-07 14:04:10 +0200 Stefan Sauer * gst/audiotestsrc/gstaudiotestsrc.h: docs: add two mising enum docs 2011-09-07 14:10:46 +0200 Sebastian Dröge * tests/check/elements/audiorate.c: audiorate: Use complete audio caps, including the endianness field 2011-09-07 12:32:01 +0100 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: decodebin2: fix element factory refcounting g_value_get_object() does not give us our own ref. Fixes "Trying to dispose object "flacparse", but it still has a parent "registry0". You need to let the parent manage the object instead of unreffing the object directly." and similar warnings. https://bugzilla.gnome.org/show_bug.cgi?id=658416 2011-09-07 11:06:44 +0100 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: do not automatically override quality when using target bitrate If both quality and bitrate are set, libtheora will try to meet both constraints, causing it to prefer emitting a smaller number of good frames, to emitting the full number of frames that would not meet the requested quality. This causes a slideshow effect when the bitrate is low and the quality is high. And the default theoraenc is high (48/63). So only set quality when it is requested, and leave it unset otherwise. https://bugzilla.gnome.org/show_bug.cgi?id=658443 2011-09-06 21:24:33 +0200 Stefan Sauer * common: Automatic update of common submodule From a39eb83 to 11f0cd5 2011-09-06 19:18:27 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add latest files to spec file 2011-09-06 20:13:30 +0200 Stefan Sauer * docs/libs/Makefile.am: docs: activate overrides file to fix make distcheck 2011-09-06 16:42:42 +0100 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Merge in doc updates for audio enums from 0.10, and get rid of the #if #else in the enum list, since that confuses gtk-doc. Conflicts: gst-libs/gst/audio/audio.c gst-libs/gst/audio/audio.h 2011-09-06 16:46:02 +0200 Wim Taymans * gst-libs/gst/audio/audio.h: audio: rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN 2011-09-06 16:46:48 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: audio/video add descriptions Add a description to the audio and video format info in case we want to use this later. 2011-09-06 15:46:45 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio.c: audio: update internal silent sample defines as well to match 0.11 2011-09-06 16:46:02 +0200 Wim Taymans * gst-libs/gst/audio/audio.h: * gst/audioconvert/audioconvert.c: rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN 2011-09-06 15:16:15 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: update audio format enums to match changes in 0.11 And add new audio format info stuff to docs. 2011-09-06 16:13:28 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-06 16:13:28 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-06 15:40:02 +0200 Stefan Sauer * common: Automatic update of common submodule From 605cd9a to a39eb83 2011-09-06 15:31:53 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/playback/gstsubtitleoverlay.c tests/check/elements/decodebin2.c 2011-09-06 15:24:32 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/audio/audio.h gst-libs/gst/audio/gstaudiodecoder.c gst-libs/gst/audio/gstaudiodecoder.h gst-libs/gst/audio/gstaudioencoder.c gst-libs/gst/audio/gstbaseaudioencoder.h gst/playback/Makefile.am gst/playback/gstplaybin.c gst/playback/gstplaysink.c gst/playback/gstplaysinkvideoconvert.c gst/playback/gstsubtitleoverlay.c gst/videorate/gstvideorate.c gst/videoscale/gstvideoscale.c win32/common/libgstaudio.def 2011-09-06 14:16:10 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Do a subset check before actually using a factory This prevents autoplugging if the caps have a non-empty intersection but are not accepted by the next element's pad. 2011-09-06 14:04:34 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Use subset check instead of non-empty-intersection check to check if pads are compatible 2011-09-06 14:03:31 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Use subset check instead of non-empty-intersection check to check if pads are compatible 2011-09-06 13:06:26 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Fix memory leak 2011-09-06 12:14:33 +0200 Sebastian Dröge * tests/check/elements/decodebin2.c: decodebin2: Add unit test for correct parser/converter negotiation 2011-06-26 15:40:17 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Correctly negotiate format for parsers that can convert different stream formats This is done by adding a capsfilter after every parser/converter that contains all possible caps supported by downstream elements. A capsfilter is necessary here because the decoder is only selected after the parser selected a format and the parser can't know what downstream would support otherwise. 2011-09-05 15:19:42 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: If a audio/video sink was already selected don't check caps of all other possible sinks 2011-09-06 08:25:12 +0200 Sebastian Dröge * tests/check/elements/decodebin2.c: decodebin2: Add Tim as author for the parser test 2011-09-06 12:06:39 +0200 Wim Taymans * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/ogg/gstoggstream.c: * ext/vorbis/gstvorbisdeclib.h: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/riff/riff-media.c: * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/volume/gstvolume.c: audio: change audio format syntax a little Remove the _ in front of the endianness prefix. Remove the _3 postfix for the 24 bits formats. Add a _32 postfix after the formats that occupy extra space beyond their natural size. The result is that the GST_AUDIO_NE() macro can simply append the endianness after all formats and that we only specify a different sample width when it is different from the natural size of the sample. This makes things more consistent and follows the pulseaudio conventions instead of the alsa ones. 2011-09-06 10:07:33 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: docs: more docs clean-ups 2011-09-05 23:00:30 +0100 Vincent Penquerc'h * gst/videorate/gstvideorate.c: videorate: don't take the object lock twice in {set,get}_property https://bugzilla.gnome.org/show_bug.cgi?id=658294 2011-09-05 22:51:38 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio.h: audio: fix GST_AUDIO_FORMAT_INFO_IS_*() macros to return a boolean 2011-09-05 21:40:05 +0100 Tim-Philipp Müller * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.h: docs: some docs love 2011-09-05 20:45:22 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: docs: add GstAudioDecoder and GstAudioEncoder to documentation 2011-09-05 15:01:09 +0100 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiodecoder.c: * gst-libs/gst/audio/gstaudiodecoder.h: * gst-libs/gst/audio/gstaudioencoder.c: * gst-libs/gst/audio/gstaudioencoder.h: * gst-libs/gst/audio/gstbaseaudioencoder.h: * win32/common/libgstaudio.def: audio: rename GstBaseAudioDecoder/Encoder to GstAudioDecoder/Encoder API: gst_gst_audio_decoder_finish_frame() API: gst_gst_audio_decoder_get_audio_info() API: gst_gst_audio_decoder_get_byte_time() API: gst_gst_audio_decoder_get_delay() API: gst_gst_audio_decoder_get_latency() API: gst_gst_audio_decoder_get_max_errors() API: gst_gst_audio_decoder_get_min_latenc()y API: gst_gst_audio_decoder_get_parse_state() API: gst_gst_audio_decoder_get_plc() API: gst_gst_audio_decoder_get_plc_aware() API: gst_gst_audio_decoder_get_tolerance() API: gst_gst_audio_decoder_get_type() API: gst_gst_audio_decoder_set_byte_time() API: gst_gst_audio_decoder_set_latency() API: gst_gst_audio_decoder_set_max_errors() API: gst_gst_audio_decoder_set_min_latency() API: gst_gst_audio_decoder_set_plc() API: gst_gst_audio_decoder_set_plc_aware() API: gst_gst_audio_decoder_set_tolerance() API: gst_gst_audio_encoder_finish_frame() API: gst_gst_audio_encoder_get_audio_info() API: gst_gst_audio_encoder_get_frame_max() API: gst_gst_audio_encoder_get_frame_samples() API: gst_gst_audio_encoder_get_hard_resync() API: gst_gst_audio_encoder_get_latency() API: gst_gst_audio_encoder_get_lookahead() API: gst_gst_audio_encoder_get_mark_granule() API: gst_gst_audio_encoder_get_perfect_timestamp() API: gst_gst_audio_encoder_get_tolerance() API: gst_gst_audio_encoder_get_type() API: gst_gst_audio_encoder_proxy_getcaps() API: gst_gst_audio_encoder_set_frame_max() API: gst_gst_audio_encoder_set_frame_samples() API: gst_gst_audio_encoder_set_hard_resync() API: gst_gst_audio_encoder_set_latency() API: gst_gst_audio_encoder_set_lookahead() API: gst_gst_audio_encoder_set_mark_granule() API: gst_gst_audio_encoder_set_perfect_timestamp() API: gst_gst_audio_encoder_set_tolerance() https://bugzilla.gnome.org/show_bug.cgi?id=642690 2011-08-03 13:31:59 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Select muxer further Sort muxers based on their caps and ranking before iterating to find one that fits the profile. Sorting is done by putting the elements that have a pad template that can produce the exact caps that is on the profile. For example: when asking for "video/quicktime, variant=iso", muxers that have this exact caps on their pad templates will be put first on the list than ones that have only "video/quicktime". https://bugzilla.gnome.org/show_bug.cgi?id=651496 2011-09-05 20:31:04 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Actually iterate over the factories instead of only taking the first one 2011-09-05 15:51:25 +0200 Stefan Sauer * tests/check/libs/profile.c: * tests/check/libs/tag.c: * tests/check/libs/video.c: tests: supress ERROR log output for some tests Be nice when we tests for correct error handling and don't spam stdout. 2011-09-05 14:40:24 +0100 Tim-Philipp Müller * gst/playback/gstplaysink.c: Revert "playsink: Try include 'pitch', if no other sink is provided" This reverts commit 105814e2c78f9867c61531b9e8166e4ae994296f. The general consensus seems to be that we should revert this for now. If such behaviour is desired, we should probably enable it via a flag. And maybe use the scaletempo plugin instead. 2011-09-05 12:02:23 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Don't leak the videochain ts-offset element Also don't leak the audiochain ts-offset element if one is found but the sink doesn't support volume settings. 2011-09-05 11:55:59 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Use gst_object_unref() instead of g_object_unref() for better debugging 2011-03-17 19:13:58 -0700 David Schleef * gst/videoscale/Makefile.am: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: * gst/videoscale/vs_image.h: * gst/videoscale/vs_lanczos.c: videoscale: Add modified Lanczos scaling method Adds a Lanczos-derived scaling method, which is rather slow, but very high quality. Adds a few properties that can be used to tune various scaling properties: sharpness, sharpen, envelope, dither. Not currently Orcified, but was designed with that in mind. 2011-05-16 14:46:52 -0700 David Schleef * gst/playback/Makefile.am: * gst/playback/gstplaybin.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: playback: Add define for colorspace element Single point of change if you want to switch from ffmpegcolorspace to colorspace. 2011-08-25 15:14:58 +0100 Sjoerd Simons * gst/videorate/gstvideorate.c: videorate: fix dynamically changing average period The average_period_set variable can be accessed in different threads, so always lock it when reading. Furthermore when switching to averaging mode we should make sure we don't have cached buffers that aren't used in that mode. And any modeswitch will cause the latency to change, so we should post a NewLatency message 2011-08-23 10:11:52 +0200 Sjoerd Simons * gst/videorate/Makefile.am: * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: Port to basetransform 2011-08-22 15:52:57 +0200 Sjoerd Simons * gst/videorate/gstvideorate.c: Correct added versions 2011-08-31 14:45:08 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Only unref ts_offset elements if they're not NULL 2011-08-31 13:32:21 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: improve docs a little 2011-08-31 12:39:18 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Keep the chain mutex locked while connecting to the notify::caps signal 2011-08-30 14:04:54 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add some more macros 2011-08-30 18:21:31 +1000 Jan Schmidt * tests/examples/seek/seek.c: seek: Accept pipeline descriptions for audiosink/videosink Make the element_factory_make_or_warn utility function try parsing the input string as a bin if element_factory_make() fails. This makes the --audiosink/--videosink commandline options accept a pipeline string. 2011-08-30 18:21:31 +1000 Jan Schmidt * gst/playback/gstplaysink.c: playsink: Try include 'pitch', if no other sink is provided As a default, try the pipeline 'pitch ! audioconvert ! autoaudiosink' before trying plain autoaudiosink 2011-08-29 13:33:49 +0200 Wim Taymans * gst/playback/gstplaysink.c: playsink: fix ts_offset refcounting 2011-08-29 13:28:08 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: base: port to 0.11 2011-08-29 11:42:35 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: audio: fix after merge 2011-08-29 11:38:01 +0200 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: pbutils: port to new API 2011-08-29 11:37:36 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/ogg/gstoggmux.c gst-libs/gst/audio/audio.c gst-libs/gst/audio/audio.h gst-libs/gst/audio/multichannel.h gst-libs/gst/pbutils/Makefile.am gst-libs/gst/pbutils/gstdiscoverer.c gst/playback/gstplaysinkaudioconvert.c gst/playback/gstplaysinkvideoconvert.c win32/common/libgstaudio.def 2011-08-27 14:57:41 +0100 Tim-Philipp Müller * gst-libs/gst/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstdiscoverer.c: pbutils: don't depend on libgstvideo just to parse some caps Let's extract those ints and fractions ourselves and not depend on libgstvideo. 2011-08-27 13:31:07 +0100 Tim-Philipp Müller * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * win32/common/libgstaudio.def: audio: add GstBaseAudioDecoder and GstBaseAudioEncoder to build However, libgstaudio now depends on libgstvideo (via pbutils). https://bugzilla.gnome.org/show_bug.cgi?id=642690 API: gst_audio_info_clear() API: gst_audio_info_convert() API: gst_audio_info_copy() API: gst_audio_info_free() API: gst_audio_info_from_caps() API: gst_audio_info_init() API: gst_audio_info_to_caps() API: gst_base_audio_decoder_finish_frame() API: gst_base_audio_decoder_get_audio_info() API: gst_base_audio_decoder_get_byte_time() API: gst_base_audio_decoder_get_delay() API: gst_base_audio_decoder_get_latency() API: gst_base_audio_decoder_get_max_errors() API: gst_base_audio_decoder_get_min_latency() API: gst_base_audio_decoder_get_parse_state() API: gst_base_audio_decoder_get_plc() API: gst_base_audio_decoder_get_plc_aware() API: gst_base_audio_decoder_get_tolerance() API: gst_base_audio_decoder_get_type() API: gst_base_audio_decoder_set_byte_time() API: gst_base_audio_decoder_set_latency() API: gst_base_audio_decoder_set_max_errors() API: gst_base_audio_decoder_set_min_latency() API: gst_base_audio_decoder_set_plc() API: gst_base_audio_decoder_set_plc_aware() API: gst_base_audio_decoder_set_tolerance() API: gst_base_audio_encoder_finish_frame() API: gst_base_audio_encoder_get_audio_info() API: gst_base_audio_encoder_get_frame_max() API: gst_base_audio_encoder_get_frame_samples() API: gst_base_audio_encoder_get_hard_resync() API: gst_base_audio_encoder_get_latency() API: gst_base_audio_encoder_get_lookahead() API: gst_base_audio_encoder_get_mark_granule() API: gst_base_audio_encoder_get_perfect_timestamp() API: gst_base_audio_encoder_get_tolerance() API: gst_base_audio_encoder_get_type() API: gst_base_audio_encoder_proxy_getcaps() API: gst_base_audio_encoder_set_frame_max() API: gst_base_audio_encoder_set_frame_samples() API: gst_base_audio_encoder_set_hard_resync() API: gst_base_audio_encoder_set_latency() API: gst_base_audio_encoder_set_lookahead() API: gst_base_audio_encoder_set_mark_granule() API: gst_base_audio_encoder_set_perfect_timestamp() API: gst_base_audio_encoder_set_tolerance() 2011-08-27 13:15:54 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: docs: add since markers to baseaudio{decoder,encoder} documentation 2011-08-27 12:47:40 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudiodecoder, baseaudioencoder: fix some compiler warnings Leaving the GST_USE_UNSTABLE_API guards in until some of the ported decoders have been updated and it's clear that I didn't mess up anywhere porting things to the new audio API. 2011-08-27 12:41:28 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudioutils.c: * gst-libs/gst/audio/gstbaseaudioutils.h: baseaudioutils: remove, merged into or superseded by audio.c 2011-08-27 12:39:50 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: port to new GstAudioInfo API 2011-08-27 12:37:16 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiodecoder: port to GstAudioInfo API 2011-08-27 11:43:02 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: add gst_audio_info_{init,clear} and gst_audio_info_{copy,free} 2011-08-22 20:15:15 +0100 Tim-Philipp Müller * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/multichannel.c: * gst-libs/gst/audio/multichannel.h: audio: add GstAudioFormat, GstAudioFormatInfo and GstAudioInfo Same as in 0.11, but with caps parsing/serialising for 0.10 style caps. Add setting default channel positions. 2011-08-17 18:48:41 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: remove leftover experimental code 2011-08-17 18:32:54 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioutils.c: * gst-libs/gst/audio/gstbaseaudioutils.h: audioutils: modify _parse, add GType support functions 2011-08-16 21:11:42 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiodecoder: move properties to private storage and add _get/_set 2011-08-16 21:11:52 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: rename property 2011-08-16 20:39:07 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiodecoder: replace context helper structure by various _get/_set 2011-08-16 18:59:13 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: move properties to private storage and add _get/_set 2011-08-16 18:25:43 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: rename some properties 2011-08-16 18:23:14 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: replace context helper structure by various _get/_set 2011-08-16 17:27:07 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: * gst-libs/gst/audio/gstbaseaudioutils.c: * gst-libs/gst/audio/gstbaseaudioutils.h: baseaudio: rename GstAudioState to GstAudioFormatInfo 2011-06-17 11:54:08 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: TEMP; avoid some imperfect ts jitter ? ... even when not in perfect mode ? 2011-04-28 12:01:43 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: debug format fixes 2011-04-28 12:01:30 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: debug format fix 2011-03-31 14:03:11 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: fixup documentation 2011-03-29 15:51:40 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: fix FLUSH_STOP actions 2011-03-28 13:16:27 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: preserve upstream seek event seqnum 2011-03-22 11:09:56 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: use buffer running time for granule calculation 2011-03-22 10:45:47 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: minor fix in ts resync 2011-03-21 11:40:31 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiodecoder: improve glitch resilience Provide a replacement for GST_ELEMENT_ERROR to avoid aborting at the first atom out of place, while on the other hand not failing indefinitely. 2011-03-17 12:09:47 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiodecoder: add limited legacy seeking support 2011-03-16 14:41:40 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: cater for audio-codec tag 2011-03-10 16:01:05 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiodecoder: initial version 2011-03-16 18:41:03 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: misc fixes 2011-03-15 17:27:42 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: * gst-libs/gst/audio/gstbaseaudioutils.c: * gst-libs/gst/audio/gstbaseaudioutils.h: baseaudio: add audioutils for caps and query handling helper utils 2011-03-14 12:39:49 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: mark unstable API 2011-03-10 15:12:54 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: fix clearing context 2011-03-10 15:12:19 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: simplify latency variable handling 2011-03-10 14:28:48 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: minor fixes and code simplifications Also modify and elaborate a bit on pre_push (though currently unused to no harm). 2011-03-09 12:44:36 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: additional documentation on granule semantics and configuration 2011-03-09 12:24:34 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: elaborate property names 2011-03-09 12:22:04 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: rename state field xint to is_int 2011-03-09 12:18:56 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: baseaudioencoder: gtk-doc syntax fixes 2011-03-09 12:17:18 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: baseaudioencoder: minor fix and cleanup 2011-03-01 14:08:18 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: baseaudiocodec: ... and also rename to baseaudiodecoder 2011-03-01 13:58:31 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: gst-libs/gst/audio: Remove baseaudiodecoder Adds little beyond baseaudiocodec (seeking, bit of query), and what it adds is mainly out-of-scope (e.g. decoder seeking, should be done by upstream demuxer/parser) and/or based on non-prime example (mad). 2009-09-17 13:26:28 +0200 Iago Toral * gst-libs/gst/audio/gstbaseaudiodecoder.c: baseaudiodecoder: Return TRUE if we run into special conversion cases. 2009-09-01 14:17:53 +0200 Iago Toral * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: audio: initial version of GstBaseAudioCodec Moved most of the code to GstBaseAudioCodec, GstBaseAudioDecode is now really small, maybe we do not really need it (or its encoder counterpart). Added more API for subclasses and documentation. 2009-08-14 09:45:52 +0200 Iago Toral * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: Added src_queries to decoder class. Added handle_discont to decoder class. Reworked reset. Various other minor fixes. 2009-08-06 15:28:00 +0200 Iago Toral * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: Added a draft implementation of gstbaseaudiodecoder 2011-03-01 11:56:29 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: Added audio directory for audio codec base classes 2011-02-18 16:38:37 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: audioencoders: add streamheader helper utility 2011-01-27 16:52:50 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudioencoder.c: * gst-libs/gst/audio/gstbaseaudioencoder.h: audioencoders: baseaudioencoder and ported encoders 2011-08-26 14:20:30 +0200 Wim Taymans * gst/videoconvert/gstvideoconvert.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: base: fix for allocation methods rename 2011-08-26 10:03:26 +0200 Sebastian Dröge * win32/common/libgstpbutils.def: win32: Add new discoverer API 2011-08-26 10:03:17 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: docs: Add new discoverer API 2011-08-24 16:29:08 +0100 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: retrieve audio track language from tags too https://bugzilla.gnome.org/show_bug.cgi?id=657257 2011-08-24 15:09:47 +0100 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: consider subtitles as raw Otherwise, discoverer will generated an "inner" codec where there can be a tranformation (eg, kate -> DVD SPU, and various ->text/x-pango-markup). https://bugzilla.gnome.org/show_bug.cgi?id=639055 2011-08-24 15:05:38 +0100 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: add application/x-kate to subtitles caps https://bugzilla.gnome.org/show_bug.cgi?id=639055 2011-08-24 14:59:38 +0100 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: get language from other tags if we did not get it already https://bugzilla.gnome.org/show_bug.cgi?id=639055 2011-08-24 15:04:50 +0100 Vincent Penquerc'h * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: discoverer: add subtitles API https://bugzilla.gnome.org/show_bug.cgi?id=639055 2011-08-21 14:51:45 -0700 David Schleef * gst/playback/gstplaysink.c: playback: reference count ts_offset Apparently this object is being used after it's freed. This is one way to fix it, although perhaps not the best way. Fixes: #656715. 2011-08-25 17:41:53 +0200 Edward Hervey * win32/common/libgstaudio.def: * win32/common/libgstinterfaces.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: win32: Update .def files 2011-08-25 17:41:30 +0200 Edward Hervey * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/interfaces-enumtypes.c: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: win32: Update pre-generated files 2011-08-25 17:41:11 +0200 Edward Hervey * gst-libs/gst/video/video.h: video: Fix typo in interlaced flag (TTF => TFF) 2011-08-25 16:41:54 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: clean up the custom flags Clean up the flags, make an enum of them. We can now do this because there are no subclasses of buffer anymore. 2011-08-25 16:30:49 +0200 Wim Taymans * gst-libs/gst/video/convertframe.c: convert: use new caps 2011-08-25 14:55:14 +0100 Vincent Penquerc'h * ext/theora/gsttheoraenc.c: theoraenc: fix caps leak https://bugzilla.gnome.org/show_bug.cgi?id=657333 2011-07-08 23:06:46 -0400 Olivier Crête * gst-libs/gst/rtp/gstbasertppayload.c: basertppayload: Make perfect timestamps reproducible across element restart Without the perfect timestamp machinery, the RTP timestamp can be computed directly from the running time of a buffer, but the perfect timestamp patch broke that assumption. This patch restores it by having the first perfect timestamp be the running time of that buffer and counting from there. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=654434 2011-08-25 13:21:14 +0200 Wim Taymans * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: use base class fill method 2011-08-25 12:49:26 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/resindvd/rsnwrappedbuffer.c 2011-08-25 12:49:26 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/resindvd/rsnwrappedbuffer.c 2011-08-24 17:39:11 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: fix leaks in skeleton writing https://bugzilla.gnome.org/show_bug.cgi?id=563251 2011-08-18 16:36:23 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: generate message headers from received tags Some message headers can be deduced from tags (eg, "Language"). https://bugzilla.gnome.org/show_bug.cgi?id=563251 2011-08-18 10:05:17 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggparse.c: ogg: use memory slices where appropriate While there, avoid zeroing newly allocated memory where unnecessary https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-24 18:39:47 +0200 Wim Taymans * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/riff/riff-media.c: multichannel: add some more channels 2011-08-24 16:40:43 +0200 Wim Taymans * gst-libs/gst/audio/audio.h: * gst-libs/gst/video/video.h: audio/video: add format of the pack functions Replace the unpack_size with an unpack_format, which is more descriptive of the kind of data the unpack function will create. 2011-08-24 14:13:33 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstchannelmix.c: audio: rename UNPOSITIONED to DEFAULT_POSITIONS Rename the UNPOSITIONED flag to the DEFAULT_POSITIONS flag because that is really what the resulting GstAudioInfo will contain as the chanel mappings. 2011-08-24 14:05:27 +0200 Sebastian Dröge * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playsink{audio,video}convert: Send NEWSEGMENT events to sinkpads instead of pushing them 2011-08-24 13:52:20 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add an id to the video frame Rename @view_id to @id. Add an id to the video metadata. Add a method to get the metadata from a buffer with the given id. Make a method to map a frame with a certain id. This only maps the frame with the given id on the video metadata. The generic frame id can be used when a buffer carries multiple video frames such as in multiview mode but maybe also when dealing with interlaced video that stores the fields in separate buffers. 2011-08-24 11:05:05 +0200 Wim Taymans * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: fix build 2011-08-24 11:04:53 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/ogg/gstoggmux.c ext/vorbis/gstvorbisenc.c 2011-08-23 11:12:10 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not warn when reaching EOS while scanning for the end chain After all, we were asking for it. This gets rid of the last warning-about-expected-condition. w00t. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 11:08:25 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: add media type to chain information reports One more little step in making logs a little less abstruse. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 11:05:11 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: correctly identify skeleton EOS packet It is 0 byte, and was triggering the "bad packet" logic. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 10:58:20 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not warn about expected occurences In this case, finding a skeleton packet. Once upon a time, it used to be rare indeed, but no more. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 10:47:53 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not warn when finding a non BOS page After all, we do hope to find actual data for these streams. However, warn if we could not set up a chain when we find a non BOS page, as that means we don't have a valid Ogg stream. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 10:40:12 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: rename local variable for clarity While the casual reader might end up bewildered by just why this change might increase clarity, it just happens than, in the libogg and associated sources, op is the canonical name for an ogg_packet whlie og is the canonical name for an ogg_page, and reading this code confuses me. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 10:32:36 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not try to determine duration of header packets Headers are inherently durationless. Instead, set duration to 0 to avoid increasing tracked granpos, and do not warn about it, since it is totally expected. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 10:29:49 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: include stream type in warnings It makes it easier to work out what's going on. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-23 10:28:33 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: set skeleton stream media type to application/x-ogg-skeleton This is to match the typefinder, and to make logs clearer. https://bugzilla.gnome.org/show_bug.cgi?id=657151 2011-08-17 17:09:44 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: add skeleton write support Version written is 3.0 Base times are left empty for now. Content-Type should be the MIME type of the stream. It is set to the GStreamer media type for now, which is probably the same for the streams oggmux supports. https://bugzilla.gnome.org/show_bug.cgi?id=563251 2011-08-23 20:34:24 +0200 Wim Taymans * ext/theora/gsttheoradec.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: fix chroma-site enums 2011-08-23 19:23:03 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: avoid gst-indent breaking the code 2011-08-23 19:04:34 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: fix docs 2011-08-23 18:57:35 +0200 Wim Taymans * ext/theora/gsttheoradec.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/playback/gstsubtitleoverlay.c: * gst/videoconvert/gstvideoconvert.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: video: add colorimetry info Make enums for the chroma siting for easier use in the videoinfo. Make enums for the color range, color matrix, transfer function and the color primaries. Add these values to the video info structure in a Colorimetry structure. These values define the exact colors and are needed to perform correct colorspace conversion. Use a couple of predefined colorimetry specs because in practice only a few combinations are in use. Add view_id to the video frames to identify the view this frame represents in multiview video. Remove old gst_video_parse_caps_framerate, use the videoinfo for this. Port elements to new colorimetry info. Remove deprecated colorspace property from videotestsrc. 2011-08-22 14:56:38 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not skip sparse streams when determining start times This fixes demuxing of streams containing only sparse streams, which would cause an infinite loop in _read_end_chain. https://bugzilla.gnome.org/show_bug.cgi?id=657062 2011-08-22 14:55:59 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: do not ignore sparse streams' start time But do not wait for them either, if we don't have a packet for them. https://bugzilla.gnome.org/show_bug.cgi?id=657062 2011-07-21 17:16:26 -0400 Monty Montgomery * ext/vorbis/gstvorbisenc.c: vorbisenc: Relax overly-tight jitter tolerances in gstvobisenc vorbisenc currently reacts in a rater draconian fashion if input timestamps are more than 1/2 sample off what it considers ideal. If data is 'too late' it truncates buffers, if it is 'too soon' it completely shuts down encode and restarts it. This is causingvorbisenc to produce corrupt output when encoding data produced by sources with bugs that produce a smple or two of jitter (eg, flacdec) 2011-08-22 16:21:02 +0200 Wim Taymans * ext/vorbis/gstvorbisdec.c: * gst/audiotestsrc/gstaudiotestsrc.c: audio: use convert audio helper 2011-08-22 16:11:27 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstringbuffer.c: audio: move function to convert 2011-08-22 15:57:30 +0200 Wim Taymans * docs/design/draft-media-types.txt: * gst-libs/gst/video/gstmetavideo.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: parse number of views Parse the number of views in multiview video buffers. 2011-08-22 13:14:49 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/pango/gsttextoverlay.c 2011-08-22 13:06:27 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/interfaces/videooverlay.c gst-libs/gst/rtp/gstrtpbuffer.c po/af.po po/az.po po/bg.po po/ca.po po/cs.po po/da.po po/de.po po/el.po po/en_GB.po po/es.po po/eu.po po/fi.po po/fr.po po/gl.po po/hu.po po/id.po po/it.po po/ja.po po/lt.po po/lv.po po/nb.po po/nl.po po/or.po po/pl.po po/pt_BR.po po/ro.po po/ru.po po/sk.po po/sl.po po/sq.po po/sr.po po/sv.po po/tr.po po/uk.po po/vi.po po/zh_CN.po 2011-08-22 12:22:02 +0200 Wim Taymans * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/video/video.h: * tests/check/Makefile.am: * tests/check/elements/decodebin.c: fourcc: remove fourcc Remove fourcc in caps. Fix pbutils descriptions. Add more video macros Fix some unit test 2011-08-22 12:21:08 +0200 Wim Taymans * ext/ogg/gstoggmux.c: oggmux: fix compilation 2011-08-22 09:06:53 +0100 Vincent Penquerc'h * ext/pango/gsttextoverlay.c: textoverlay: fix text buffer leak Make sure to always unref the input text buffer. Reported by bcxa.sz@gmail.com. https://bugzilla.gnome.org/show_bug.cgi?id=657049 2011-08-20 19:46:31 +0200 Stefan Kost * gst-libs/gst/video/gstvideosink.h: docs: fix xref for the property 2011-08-20 19:16:42 +0200 Stefan Kost * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/navigation.c: * gst-libs/gst/interfaces/streamvolume.h: * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/video/gstvideosink.h: docs: handle warnings emitted by gtk-doc This is useful and in most cases someone had put arbitrary markup into the docs, misspelled xref'ed symbols, forgot to add stuff to the docs etc.. 2011-08-20 17:53:11 +0200 Stefan Kost * docs/libs/gst-plugins-base-libs-sections.txt: docs: partially revert my last commit Somehow this was already there, but I missed that commit. 2011-08-20 14:11:11 +0200 Stefan Kost * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/licenses.c: docs: add new taglicense docs and clean them up Avoid ugly docbook tags unless needed. 2011-08-20 12:37:10 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for new translatable string 2011-08-20 12:36:20 +0100 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: tag: fix distcheck issue Dist licenses dict. 2011-08-20 10:49:17 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/riff/riff-media.c: * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstchannelmix.c: audio: rename INT -> INTEGER Spell INTEGER fully instead of using the int abreviation. Remove some old functions. 2011-08-19 17:41:22 +0200 Wim Taymans * ext/alsa/gstalsa.c: * ext/ogg/gstoggstream.c: * ext/vorbis/gstvorbisenc.c: * gst/audioconvert/channelmixtest.c: * gst/encoding/gstencodebin.c: more audio caps porting 2011-08-19 17:05:55 +0200 Wim Taymans * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: port to new caps 2011-08-19 17:05:42 +0200 Wim Taymans * tests/examples/seek/seek.c: seek: fix playbin2 setup 2011-08-19 16:49:30 +0200 Wim Taymans * ext/libvisual/Makefile.am: * ext/libvisual/visual.c: visual: port some more to new audio caps 2011-08-19 16:01:08 +0200 Wim Taymans * gst-libs/gst/riff/riff-media.c: riff: port to new audio caps 2011-08-19 16:00:33 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: add function to build audio format 2011-08-19 14:07:11 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-19 11:55:15 +0200 Wim Taymans * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiofilter.h: audio: add more macros 2011-08-19 10:06:39 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiofilter.h: * gst/volume/gstvolume.c: audiofilter: Pass a const pointer to the audio format info to ::setup() It is not meant to be changed by the subclass. 2011-08-18 16:20:57 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggparse.c: ogg: do not use 32 bit modifiers to print serial numbers If ints are 64 bits, 32 bits should get promoted in varargs anyway, and we don't care about 16 bit ints. This makes the code a lot more readable, and still gets us nice hexadecimal 32 bit serialnos. https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-18 19:36:50 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/ogg/gstoggmux.c gst/playback/gstplaysink.c 2011-08-18 19:15:03 +0200 Wim Taymans * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: * ext/vorbis/gstvorbisdeclib.c: * ext/vorbis/gstvorbisdeclib.h: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/audio/multichannel.c: * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/video/video.h: * gst/adder/gstadder.c: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/gstaudioquantize.c: * gst/audioconvert/gstchannelmix.c: * gst/audiorate/Makefile.am: * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: * gst/audioresample/Makefile.am: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audiotestsrc/Makefile.am: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: * gst/playback/gstrawcaps.h: * gst/volume/gstvolume.c: audio: rework audio caps. Rework the audio caps similar to the video caps. Remove width/depth/endianness/signed fields and replace with a simple string format and media type audio/x-raw. Create a GstAudioInfo and some helper methods to parse caps. Remove duplicate code from the ringbuffer and replace with audio info. Use AudioInfo in the base audio filter class. Port elements to new API. 2011-07-27 11:05:31 +0000 Edward Hervey * gst/playback/gstplaysink.c: playsink: Reconfigure when pads are added later Instead of just assuming all pads are created at the same time, remember which ones are actually new (via ->pending_blocked_pads). This allows the following use-case to properly work: * Upstream starts with audio-only * Only that pad gets data, blocks and a real audio sink is created * Upstream laters adds a video stream * A new pad is requested, blocks and reconfiguration kicks in in order to add a new real video sink 2011-08-18 09:37:38 +0100 Vincent Penquerc'h * ext/ogg/README: ogg: get the operator precedence right, even if only a doc https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-18 09:30:46 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: vorbis has a preroll of 2 https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-17 19:40:08 +0100 Vincent Penquerc'h * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: new convenience function to get a stream's media type This will make logging a lot clearer, both in code and in output. https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-17 18:48:54 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: ogg: move the "always flush page" to oggstream It avoids checking for specific media types in the muxer. https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-17 18:38:39 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: use oggstream to decide which BOS packets to place first Ogg recommends video BOS packets to be first. Use the "is_video" flag in oggstream to select those, rather than check for known mime types. https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-17 18:03:16 +0100 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.h: ogg: rationalize serialno type to guint32 It is a 32 bit unsigned number. Sure, the libogg API uses a long, but that's an unfortunate oversight. https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-17 17:39:18 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: factor the header packet creation code https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-17 17:18:47 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: headers should always have granpos 0 https://bugzilla.gnome.org/show_bug.cgi?id=656775 2011-08-18 09:48:16 +0100 Vincent Penquerc'h * gst/audioresample/resample.c: audioresample: fix build without orc https://bugzilla.gnome.org/show_bug.cgi?id=656781 2011-08-17 19:01:39 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-17 19:01:39 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-17 17:24:35 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: chain up to parent in fixate 2011-08-17 17:22:03 +0200 Wim Taymans * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: properly override fixate 2011-08-17 17:18:20 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: properly override the fixate function 2011-08-17 17:18:02 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add some more macros 2011-08-17 10:57:52 +0200 Wim Taymans * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/id3v2.c: tagdemux: port to 0.11 2011-08-17 10:57:13 +0200 Wim Taymans * sys/xvimage/xvimagesink.c: xvimagesink: fix compiler warning 2011-08-17 10:47:38 +0200 Wim Taymans * gst/audioresample/gstaudioresample.c: audioresample: fix after merge 2011-08-17 10:47:20 +0200 Wim Taymans * gst/adder/gstadder.c: adder: fix after merge 2011-08-16 18:01:14 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: configure.ac ext/pango/gsttextoverlay.c ext/theora/gsttheoradec.c gst/adder/gstadder.c gst/adder/gstadder.h gst/audioresample/gstaudioresample.c gst/encoding/gstencodebin.c gst/playback/gstdecodebin.c gst/playback/gstdecodebin2.c tests/check/elements/decodebin2.c tests/check/elements/playbin-compressed.c win32/common/libgsttag.def 2011-08-16 16:51:30 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: audio: remove deprecated methods 2011-08-15 01:22:02 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstid3tag.c: * tests/check/libs/tag.c: tag: id3: avoid some more relocations in genre table 2011-08-12 12:07:32 +0100 Vincent Penquerc'h * tests/check/Makefile.am: * tests/check/elements/audioresample.c: audioresample: add FFT based checks Send a few simple tones through audioresample and check that the main frequency spot is the same for the input and the resampled output. https://bugzilla.gnome.org/show_bug.cgi?id=656392 2011-08-15 23:41:24 +0200 Alessandro Decina * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: add OSX specific hack to detect when a connection is refused Unlike linux, OSX wakes up select with POLLOUT (instead of POLLERR) when connect() is done async and the connection is refused. Therefore always check for the socket error state using getsockopt (..., SO_ERROR, ...) after a connection attempt. 2011-08-15 18:39:09 +0200 Wim Taymans * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimage: avoid caps intersection Store the video format in the XvImage format list so that we can quickly map between the two. 2011-08-15 18:38:04 +0200 Wim Taymans * gst/playback/gststreamsynchronizer.c: gststreamsynchronizer: don't abuse PREROLL flag the preroll flag is not implemented and will disappear soon. 2011-08-15 12:18:15 +0200 Wim Taymans * ext/ogg/gstoggmux.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: * tests/check/libs/struct_x86_64.h: * tests/check/pipelines/oggmux.c: fix for _negotiated_caps() change 2011-08-15 00:17:14 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: docs: add new license API to docs 2011-08-15 00:03:39 +0100 Tim-Philipp Müller * configure.ac: configure: try pkg-config first when looking for zlib 2011-08-14 20:44:19 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.3.0.txt: * gst-libs/gst/tag/id3v2.4.0-frames.txt: * gst-libs/gst/tag/id3v2.4.0-structure.txt: tag: id3v2: add specs to git for reference 2011-08-14 13:32:12 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: id3v2: avoid some relocations, make table static 2011-08-14 01:47:41 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: add debug category for ID3 tag parsing 2011-07-18 18:09:53 +0200 Mark Nauwelaerts * configure.ac: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * win32/common/libgsttag.def: tag: id3v2: add id3v2 tag parsing helpers https://bugzilla.gnome.org/show_bug.cgi?id=654388 2011-02-22 15:19:00 +0200 Stefan Kost * gst-libs/gst/tag/id3v2.c: tag: id3v2: return ID3TAGS_BROKEN_TAG for unsupported versions This prevents us for trying to work with a NULL taglist. 2011-01-02 19:23:51 +0000 Erich Schubert * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: fix parsing of ID3v2.4 genre frames with multiple genres We'd only extract the first genre (multiple times) instead of all genres. https://bugzilla.gnome.org/show_bug.cgi?id=638535 2010-09-24 15:19:15 +0200 Edward Hervey * gst-libs/gst/tag/id3v2.c: tag: id3v2: Sanitize id3 frame names This is similar to what is done in qtdemux. Avoids providing invalid structure/tags names 2010-03-30 01:50:32 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: fix parsing of unsynced frames with data length indicator Fixes bug #614158. 2010-03-20 00:54:14 +0100 Benjamin Otte * gst-libs/gst/tag/id3v2.c: Add -Wwrite-strings to the configure flags ... and fix all warnings 2009-12-13 13:19:43 +0000 Tim-Philipp Müller * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: prefer two letter ISO 639-1 code for extended comment 2009-10-09 15:59:25 +0200 Josep Torra * gst-libs/gst/tag/id3v2.c: tag: id3v2: fixes warnings building on macosx Another round on the formating of that debug line. 2009-10-09 14:44:02 +0300 Stefan Kost * gst-libs/gst/tag/id3v2.c: tag: id3v2: cast pointer math results to glong 2009-10-09 13:38:17 +0300 Stefan Kost * gst-libs/gst/tag/id3v2.c: tag: id3v2: don't cast, but use the right format specified instead This correct some of the previous macos fixes. 2009-10-09 11:42:36 +0200 Josep Torra * gst-libs/gst/tag/id3v2.c: tag: id3v2: fix printf warnings on macosx 2009-10-07 14:03:20 +0300 Stefan Kost * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: fprintf, sprintf, sscanf need stdio.h 2009-09-22 15:03:20 +0200 Alessandro Decina * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: Fix compile warnings with gcc 4.0.1. 2009-08-09 12:52:17 +0200 LoneStar * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: Try GST_*_TAG_ENCODING and locale encoding if tags are not UTF8 Fixes bug #499242. 2009-08-07 16:42:39 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: sizes in ID3 v2.3 are unlikely to be sync-safe integers In ID3 v2.3 compressed frames will have a 4-byte data length indicator after the frame header to indicate the size of the decompressed data. This integer is unlikely to be a sync-safe integer for v2.3 tags, only in v2.4 it's sync-safe. 2009-08-07 16:36:55 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: id3v2: fix typo in debug message 2009-08-07 16:02:23 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: tag: id3v2: fix parsing of unsync'ed ID3 v2.4 tags and frames Reversing the unsynchronisation seems to work slightly differently for ID3 v2.3 tags and v2.4 tags: v2.3 tags don't have syncsafe frame sizes in the frame header, so the unsynchronisation is applied to the whole frame data including all the frame headers. v2.4 frames have sync-safe sizes, however, so the unsynchronisation only needs to be applied to the actual frame data, and it seems that's what's being done as well. So we need to undo the unsynchronisation on a per-frame basis for v2.4 tags for things to work properly. Fixes extraction of coverart/images from APIC frames in ID3 v2.4 tags (#588148). Add unit test for this as well. 2009-04-24 01:51:35 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: id3v2: parse unsynchronised tags properly We didn't handle unsynchronization at all up to now, which might have caused frames to not be extracted - esp. frames after an APIC picture frame. Fixes #577468. 2009-04-24 01:01:53 +0100 Tim-Philipp Müller * gst-libs/gst/tag/id3v2.c: tag: id3v2: pass the right size value for size of all frames to the parser Frame data size is tag size adjusted for size of the tag header and footer, not tag size including header and footer. 2008-06-04 10:42:46 +0000 Tim-Philipp Müller tag: id3v2: Use new utility functions in libgsttag to process coverart (#512333). Original commit message from CVS: * ext/flac/gstflacdec.c: (gst_flac_extract_picture_buffer): * gst-libs/gst/tag/id3v2frames.c: (parse_picture_frame): Use new utility functions in libgsttag to process coverart (#512333). 2008-01-11 21:08:59 +0000 Jan Schmidt tag: id3v2: Generate the image-type values correctly. Leave them out of the caps when outputting a "preview image" tag, since it ... Original commit message from CVS: * ext/flac/gstflacdec.c: (gst_flac_extract_picture_buffer): * gst-libs/gst/tag/id3v2frames.c: (parse_picture_frame): Generate the image-type values correctly. Leave them out of the caps when outputting a "preview image" tag, since it only makes sense to have one of those - the type is irrelevant. * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_open): If we can, mark the mixer multiple open when we use it, in case (for some reason) the process wants to open it again elsewhere. 2008-01-09 15:20:19 +0000 Tommi Myöhänen tag: id3v2: Make sure the ISO 639-X language code in ID3v2 COMM frames so we don't end up with non-UT... Original commit message from CVS: Based on patch by: Tommi Myöhänen * gst-libs/gst/tag/id3v2frames.c: (parse_comment_frame): Make sure the ISO 639-X language code in ID3v2 COMM frames is actually valid UTF-8 (or rather: ASCII), so we don't end up with non-UTF8 strings in tags if there's garbage in the language field. Also make sure the language code is always lower case. Fixes: #508291. 2007-12-14 10:17:10 +0000 Tim-Philipp Müller tag: id3v2: Parse WOAF frames and put the result into GST_TAG_CONTACT, which is where it would end up... Original commit message from CVS: * tag: id3v2: (parse_url_link_frame): Parse WOAF frames and put the result into GST_TAG_CONTACT, which is where it would end up if the same information was put in a vorbis comment (don't think it's worth adding a new URI tag for this). Fixes #488112. 2007-11-14 21:39:47 +0000 Tim-Philipp Müller tag: id3v2: We don't want the same string multiple times in a tag list for the same tag ever, for any tag, not jus... Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: (id3v2_tag_to_taglist): We don't want the same string multiple times in a tag list for the same tag ever, for any tag, not just for GST_TAG_GENRE, so make sure this doesn't happen and remove special-case code for GST_TAG_GENRE. 2007-10-11 17:55:29 +0000 Jason Kivlighn tag: id3v2: Extract license/copyright URIs from ID3v2 WCOP frames (Fixes #447000). Original commit message from CVS: Based on patch by: Jason Kivlighn * gst-libs/gst/tag/id3v2frames.c: Extract license/copyright URIs from ID3v2 WCOP frames (Fixes #447000). * tests/check/elements/id3demux.c: * tests/files/Makefile.am: * tests/files/id3-447000-wcop.tag: Add simple unit test. 2007-10-06 16:13:14 +0000 Tim-Philipp Müller tag: id3v2: Port ID3 tag demuxer over to the new GstTagDemux in -base (now would be a good time to test re-importi... Original commit message from CVS: * gst-libs/gst/tag/gstid3demux.c: * gst-libs/gst/tag/gstid3demux.h: * gst-libs/gst/tag/id3v2.c: * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: Port ID3 tag demuxer over to the new GstTagDemux in -base (now would be a good time to test re-importing your music collection). 2007-03-12 13:28:29 +0000 Tim-Philipp Müller tag: id3v2: Fix parsing of ID3 v2.2.0 PIC frames. Only in version >= 2.3.0 is the image format a vari... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_picture_frame): Fix parsing of ID3 v2.2.0 PIC frames. Only in version >= 2.3.0 is the image format a variable-length NUL-terminated string; in versions before that the image format is a fixed-length string of 3 characters (see #348644 for a sample tag). Also make supplied mime type lower-case and fix up 'jpg' to 'jpeg'. 2007-03-06 18:16:49 +0000 Tim-Philipp Müller tag: id3v2: Do not convert obsolete TDA/TDAT frames to TDRC frames, otherwise the four-digit number will be interp... Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_id3v2_frames_to_tag_list): * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_obsolete_tdat_frame): Do not convert obsolete TDA/TDAT frames to TDRC frames, otherwise the four-digit number will be interpreted as a year, whereas it is month and day in DDMM format. Instead, parse TDAT frames and fix up the date in the GST_TAG_DATE tag later if we also extracted a year. Fixes #407349. 2006-11-19 13:41:53 +0000 René Stadler tag: id3v2: Make sure that g_free always gets called on the same pointer that was returned by g_mallo... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame): Make sure that g_free always gets called on the same pointer that was returned by g_malloc. Fixes #376594. Do not leak memory if decompressed size is wrong. Remove unneeded check of return value of g_malloc. Patch by: René Stadler 2006-11-01 13:59:49 +0000 Tim-Philipp Müller tag: id3v2: We require a -base more recent than 0.10.9, so it's safe to use Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_picture_frame): We require a -base more recent than 0.10.9, so it's safe to use GST_TYPE_TAG_IMAGE_TYPE unconditionally now. * ext/dv/gstdvdec.c: (gst_dvdec_sink_event): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_sink_event): Use _newsegment_full() now that we depend on a recent enough core. * gst/wavparse/gstwavparse.c: Remove cruft that we don't need any longer now that we depend on a recent enough -base. 2006-10-05 16:37:33 +0000 Tim-Philipp Müller tag: id3v2: Printf format fixes. Original commit message from CVS: * ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_update_font_height): * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_transform_caps): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_parse_image_data): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain): * ext/jpeg/gstsmokedec.c: (gst_smokedec_chain): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain): * ext/libpng/gstpngdec.c: (user_endrow_callback): * gst/auparse/gstauparse.c: (gst_au_parse_parse_header): * gst/avi/gstavidemux.c: (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_stream_data): * gst/cutter/gstcutter.c: (gst_cutter_chain): * gst/debug/efence.c: (gst_efence_buffer_alloc), (gst_fenced_buffer_copy): * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame): * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): * gst/matroska/matroska-mux.c: (gst_matroska_mux_start): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_handle_message): * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): * sys/ximage/ximageutil.c: (ximageutil_xcontext_get): Printf format fixes. 2006-08-22 13:53:34 +0000 Jan Schmidt tag: id3v2: If strings in text fields are marked ISO8859-1, but contain valid UTF-8 already, then han... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_text_identification_frame), (parse_insert_string_field): If strings in text fields are marked ISO8859-1, but contain valid UTF-8 already, then handle them as UTF-8 and ignore the encoding. (#351794) 2006-08-16 13:01:32 +0000 Tim-Philipp Müller configure.ac: Require CVS of GStreamer core and -base (for Original commit message from CVS: * configure.ac: Require CVS of GStreamer core and -base (for GST_TAG_EXTENDED_COMMENT and gst_tag_parse_extended_comment()). * ext/taglib/gstid3v2mux.cc: Write extended comment tags properly (#348762). * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_comment_frame): Extract COMM frames into extended comments, which makes it easier to properly retain the description bit of the tag and maintain this information when re-tagging (#348762). 2006-07-25 16:47:04 +0000 Tim-Philipp Müller tag: id3v2: Extract frames for ID3v2 versions prior to ID3v2.3.0 properly as well, and add the version to... Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_add_id3v2_frame_blob_to_taglist): Extract frames for ID3v2 versions prior to ID3v2.3.0 properly as well, and add the version to the blob's buffer caps, since that information will be needed for deserialisation later on (#348644). 2006-07-23 11:33:54 +0000 Tim-Philipp Müller tag: id3v2: On second thought, it might be wiser and more efficient not to do tag registration from a streaming th... Original commit message from CVS: * gst-libs/gst/tag/gstid3demux.c: (plugin_init): * gst-libs/gst/tag/id3v2.c: (id3demux_add_id3v2_frame_blob_to_taglist): * gst-libs/gst/tag/id3v2.h: On second thought, it might be wiser and more efficient not to do tag registration from a streaming thread. 2006-07-23 10:56:27 +0000 Tim-Philipp Müller tag: id3v2: Put ID3v2 frames we can't parse as binary blobs into private tags, so that they are not lost ... Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_add_id3v2_frame_blob_to_taglist), (id3demux_id3v2_frames_to_tag_list): Put ID3v2 frames we can't parse as binary blobs into private tags, so that they are not lost when retagging, at least once id3v2mux has been taught to re-inject those frames again. See bug #334375. 2006-07-21 10:57:00 +0000 Wim Taymans tag: id3v2: Don't use \n in debug lines Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_process_next_entry): Fix some leaks. * gst-libs/gst/tag/id3v2.c: (id3demux_id3v2_frames_to_tag_list): Don't use \n in debug lines. 2006-06-22 12:17:13 +0000 Tim-Philipp Müller tag: id3v2: Set image type from APIC frame as "image-type" field of GST_TAG_IMAGE buffer caps (#344605). Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_picture_frame): Set image type from APIC frame as "image-type" field of GST_TAG_IMAGE buffer caps (#344605). 2006-06-11 19:31:10 +0000 Tim-Philipp Müller tag: id3v2: Extract images from ID3v2 tags (APIC frames). Fixes #339704. Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (scan_encoded_string), (parse_picture_frame): Extract images from ID3v2 tags (APIC frames). Fixes #339704. * configure.ac: Require core >= 0.10.8 (for GST_TAG_IMAGE and GST_TAG_PPEVIEW_IMAGE used in the patch above). 2006-05-28 10:05:47 +0000 Tim-Philipp Müller tag: id3v2: A track/volume number or count of 0 does not make sense, just ignore it along with negati... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3v2_tag_to_taglist): A track/volume number or count of 0 does not make sense, just ignore it along with negative numbers (a tag might only contain a track count without a track number). 2006-05-19 14:05:53 +0000 Jan Schmidt tag: id3v2: Don't output any tag when we encounter a negative track number - the tag type is uint, so... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3v2_tag_to_taglist): Don't output any tag when we encounter a negative track number - the tag type is uint, so we end up outputting huge positive numbers instead. (Fixes: #342029) 2006-05-16 14:07:29 +0000 Jan Schmidt tag: id3v2: Rework string parsing to always walk over BOM markers in UTF16 strings, using the endianness indicated by the innermost one ... Original commit message from CVS: * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_find_best): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_find_best): Make the name of the child element be based on the name of the parent, so that debug output is more useful. * gst-libs/gst/tag/id3v2frames.c: (find_utf16_bom), (parse_insert_string_field), (parse_split_strings): Rework string parsing to always walk over BOM markers in UTF16 strings, using the endianness indicated by the innermost one, then trying the opposite endianness if that fails to convert to valid UTF-8. Fixes #341774 2006-05-12 08:21:37 +0000 Tim-Philipp Müller tag: id3v2: Some more debug info. No need to check whether the string returned by g_convert() is real... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_insert_string_field): Some more debug info. No need to check whether the string returned by g_convert() is really UTF-8 - either it is or we get NULL returned. 2006-05-10 13:51:01 +0000 Jan Schmidt tag: id3v2: Fix parsing of numeric genre strings some more, by ensuring that we only try and parse st... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3v2_genre_fields_to_taglist): Fix parsing of numeric genre strings some more, by ensuring that we only try and parse strings that a) Start with '(' and b) Consist only of digits. Also, when finding an escaping '((' sequence, bust it back to '(' by swallowing the first parenthesis 2006-04-28 11:37:22 +0000 Tim-Philipp Müller tag: id3v2: Recognise and skip any byte order marker (BOM) in Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (has_utf16_bom), (parse_split_strings): Recognise and skip any byte order marker (BOM) in UTF-16 strings. 2006-04-17 10:01:51 +0000 Alex Lancaster tag: id3v2: Recognise TCO (Genre) tags in ID3v2.2 Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: Recognise TCO (Genre) tags in ID3v2.2. Patch by Alex Lancaster (Fixes #338713) 2006-03-30 23:37:16 +0000 Sébastien Moutte tag: id3v2: use of GST_DEBUG instead of DEBUG(a...) for WIN32 Original commit message from CVS: * ext\jpeg\smokecodec.c: use of GST_DEBUG instead of DEBUG(a...) for WIN32 * ext\speex\gstspeexenc.c: (gst_speexenc_set_header_on_caps): move first instruction after all variables declarations * gst\alpha\gstalpha.c: * gst\effectv\gstshagadelic.c: * gst\smpte\paint.c: * gst\videofilter\gstvideobalance.c: define M_PI if it's not defined (it's not defined on WIN32) * gst\cutter\gstcutter.c: (gst_cutter_chain): * gst\id3demux\id3v2frames.c: (parse_relative_volume_adjustment_two): * gst\level\gstlevel.c: (gst_level_set_property), (gst_level_transform_ip): * gst\matroska\matroska-demux.c: (gst_matroska_demux_parse_info), (gst_matroska_demux_video_caps): * gst\matroska\matroska-mux.c: (gst_matroska_mux_start), (gst_matroska_mux_finish): * gst\wavparse\gstwavparse.c: (gst_wavparse_stream_data): use gst_guint64_to_gdouble for conversions * gst\goom\filters.c: (setPixelRGB_): fix a debug which was using undefined variable * gst\level\gstlevel.c: (gst_level_set_caps), (gst_level_transform_ip): * gst\matroska\ebml-read.c: (gst_ebml_read_sint): replace LL suffix with L suffix (LL isn't supported by MSVC6.0) * win32/vs6: add vs6 projects files for most of plugins-good 2006-03-22 13:00:34 +0000 Jan Schmidt tag: id3v2: Don't attempt typefinding on too-short buffers that have been completely trimmed away. Original commit message from CVS: * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain): * gst-libs/gst/tag/gstid3demux.c: (gst_id3demux_chain): Don't attempt typefinding on too-short buffers that have been completely trimmed away. * gst-libs/gst/tag/id3v2.c: (id3demux_read_id3v2_tag): Improve the debug output 2006-03-16 16:06:22 +0000 Tim-Philipp Müller tag: id3v2: We only care about gain and peak data for the master volume. Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_relative_volume_adjustment_two): We only care about gain and peak data for the master volume. 2006-03-16 13:22:28 +0000 Tim-Philipp Müller tag: id3v2: Read replay gain tags Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_id_string), (parse_unique_file_identifier), (parse_relative_volume_adjustment_two), (id3v2_tag_to_taglist): Read replay gain tags (#323721). 2006-03-14 17:56:02 +0000 Tim-Philipp Müller configure.ac: Bump -base requirement to 0.10.5 for gst_tag_from_id3_user_tag(), used by id3demux. Original commit message from CVS: * configure.ac: Bump -base requirement to 0.10.5 for gst_tag_from_id3_user_tag(), used by id3demux. * gst-libs/gst/tag/gstid3demux.c: (plugin_init): * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_user_text_identification_frame), (parse_unique_file_identifier): Add support for UFID and TXXX frames and extract musicbrainz tags. 2006-02-18 20:48:09 +0000 Jan Schmidt tag: id3v2: Handle 0 data size in otherwise valid frames. Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_id3v2_frames_to_tag_list): * gst-libs/gst/tag/id3v2frames.c: (id3v2_genre_fields_to_taglist): Handle 0 data size in otherwise valid frames. Handle numeric strings in 2.4.0 even when not in parentheses 2006-02-16 10:58:18 +0000 Jan Schmidt tag: id3v2: 3 2.3.0 used synch-safe integers for the tag size, but not for the frame size. (Fixes #331368) Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_id3v2_frames_to_tag_list): ID3 2.3.0 used synch-safe integers for the tag size, but not for the frame size. (Fixes #331368) 2006-02-13 12:00:51 +0000 Jan Schmidt tag: id3v2: Add more validation to ensure that a char encoding conversion produced a valid UTF-8 string. Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_insert_string_field), (parse_split_strings): Add more validation to ensure that a char encoding conversion produced a valid UTF-8 string. 2006-02-04 13:30:12 +0000 Jan Schmidt tag: id3v2: Adjust for data length indicators when parsing (Fixes #329810) Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_split_strings): Adjust for data length indicators when parsing (Fixes #329810) Fix stupid bug parsing UTF-8 tag text. Output tag strings with multiple fields as multiple tags, so the app gets all the data. 2006-02-03 13:06:24 +0000 Jan Schmidt tag: id3v2: Never output a tag with a null contents string. Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (parse_text_identification_frame), (id3v2_tag_to_taglist), (id3v2_genre_string_to_taglist), (id3v2_genre_fields_to_taglist): Never output a tag with a null contents string. 2006-01-30 23:13:05 +0000 Jan Schmidt tag: id3v2: Someone should kick my butt. Remove ID3v1 tags from the end of the file. Original commit message from CVS: * gst-libs/gst/tag/gstid3demux.c: (gst_id3demux_chain), (gst_id3demux_read_id3v1), (gst_id3demux_sink_activate), (gst_id3demux_send_tag_event): * gst-libs/gst/tag/id3v2.c: (id3demux_read_id3v1_tag): Someone should kick my butt. Remove ID3v1 tags from the end of the file. Improve error messages. Send the TAG message as soon as we complete typefinding, instead of waiting until we send the first buffer. Downstream tag event is still sent before the first buffer. 2006-01-25 18:23:05 +0000 Jan Schmidt tag: id3v2: Never trust ANY information encoded in a media file, especially when it's giving you size... Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame): Never trust ANY information encoded in a media file, especially when it's giving you sizes. (Fixes #328452) 2006-01-23 14:32:47 +0000 Jan Schmidt tag: id3v2: Remove errant break statement, and fix compilation with older GCC. Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3v2_tag_to_taglist): Remove errant break statement, and fix compilation with older GCC. 2006-01-23 09:22:17 +0000 Jan Schmidt tag: id3v2: Rewrite parsing of text tags to handle multiple NULL terminated strings. Parse numeric genre strings a... Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_read_id3v2_tag): * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_comment_frame), (parse_text_identification_frame), (id3v2_tag_to_taglist), (id3v2_are_digits), (id3v2_genre_string_to_taglist), (id3v2_genre_fields_to_taglist), (parse_split_strings), (free_tag_strings): Rewrite parsing of text tags to handle multiple NULL terminated strings. Parse numeric genre strings and ID3v2 type "(3)(6)Alternative" style genre strings. Parse dates that are only YYYY or YYYY-mm format. 2006-01-15 20:21:48 +0000 Sergey Scobich tag: id3v2: Fix compilation of id3demux when zlib is not present. Original commit message from CVS: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame): Fix compilation of id3demux when zlib is not present. (Fixes #326602; patch by: Sergey Scobich) 2006-01-06 11:46:53 +0000 Edward Hervey tag: id3v2: Add gst_element_no_more_pads() for proper decodebin behaviour. Original commit message from CVS: * gst-libs/gst/tag/gstid3demux.c: (gst_id3demux_add_srcpad): Add gst_element_no_more_pads() for proper decodebin behaviour. * gst-libs/gst/tag/id3v2frames.c: (parse_comment_frame), (parse_text_identification_frame), (parse_split_strings): Failure to decode some tags is not a GST_ERROR() but a GST_WARNING() When iterating over a chunk of text, check that we haven't gone too far. 2005-12-28 18:55:32 +0000 Jan Schmidt tag: id3v2: If a broken tag has 0 bytes payload, at least still skip the 10 byte header Original commit message from CVS: * gst-libs/gst/tag/id3v2.c: (id3demux_read_id3v2_tag): If a broken tag has 0 bytes payload, at least still skip the 10 byte header 2005-12-18 15:14:44 +0000 Jan Schmidt tag: id3v2: all new LGPL id3 demuxer, can use zlib for compressed frames Original commit message from CVS: * configure.ac: Check for optional dependency on zlib for id3demux * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gstid3demux.c: (gst_gst_id3demux_get_type), (gst_id3demux_base_init), (gst_id3demux_class_init), (gst_id3demux_reset), (gst_id3demux_init), (gst_id3demux_dispose), (gst_id3demux_add_srcpad), (gst_id3demux_remove_srcpad), (gst_id3demux_trim_buffer), (gst_id3demux_chain), (gst_id3demux_set_property), (gst_id3demux_get_property), (id3demux_get_upstream_size), (gst_id3demux_srcpad_event), (gst_id3demux_read_id3v1), (gst_id3demux_read_id3v2), (gst_id3demux_sink_activate), (gst_id3demux_src_activate_pull), (gst_id3demux_src_checkgetrange), (gst_id3demux_read_range), (gst_id3demux_src_getrange), (gst_id3demux_change_state), (gst_id3demux_pad_query), (gst_id3demux_get_query_types), (simple_find_peek), (simple_find_suggest), (gst_id3demux_do_typefind), (gst_id3demux_send_tag_event), (plugin_init): * gst-libs/gst/tag/gstid3demux.h: * gst-libs/gst/tag/id3v2.c: (read_synch_uint), (id3demux_read_id3v1_tag), (id3demux_read_id3v2_tag), (id3demux_id3v2_frame_hdr_size), (convert_fid_to_v240), (id3demux_id3v2_frames_to_tag_list): * gst-libs/gst/tag/id3v2.h: * gst-libs/gst/tag/id3v2.4.0-frames.txt: * gst-libs/gst/tag/id3v2.4.0-structure.txt: * gst-libs/gst/tag/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_comment_frame), (parse_text_identification_frame), (id3v2_tag_to_taglist), (parse_split_strings): All new LGPL id3 demuxer. Can use zlib for compressed frames, otherwise it discards them. Works on my test files. * gst/wavparse/gstwavparse.c: (gst_wavparse_loop): Don't send EOS to a non-existing srcpad The debug category can be static 2011-08-11 18:50:08 +0100 Vincent Penquerc'h * gst/audioresample/gstaudioresample.c: audioresample: fix quality setting being ignored by the resampler state https://bugzilla.gnome.org/show_bug.cgi?id=636562 2011-08-11 15:54:15 +0100 Vincent Penquerc'h * configure.ac: * gst/audioresample/resample.c: * gst/audioresample/resample_sse.h: * gst/audioresample/speex_resampler_double.c: * gst/audioresample/speex_resampler_float.c: audioresample: use SSE/SSE2 when possible Compile in the code on i386 and x86_64, and use ORC to determine when the runtime platform can run the code. https://bugzilla.gnome.org/show_bug.cgi?id=636562 2011-08-11 19:23:42 +0100 Vincent Penquerc'h * gst/audioresample/resample_sse.h: audioresample: fix SSE2 building with double precision The full double implementation was missing. https://bugzilla.gnome.org/show_bug.cgi?id=636562 2011-08-11 12:12:07 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: Check for utf8 before trying to convert If the string is already on utf8, there is no need to try to convert it, because it is useless and it might garble the string. 2011-08-10 13:16:13 -0300 Thiago Santos * tests/check/libs/tag.c: tests: tag: exif: Add tests for 'non-trivial' chars Adds two new cases to check that characters are properly converted to ascii when writen to exif and parsed correctly back to utf8 when read. 2011-08-09 16:02:28 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: Exif strings should be ascii Use g_convert to turn all strings into extended ascii before writing to the exif buffer and converting back from ascii to utf8 when reading them. 2011-08-10 15:57:02 +0100 Tim-Philipp Müller * win32/common/libgsttag.def: win32: update libgsttag.def for new API 2011-08-10 15:21:41 +0100 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: tag: don't build helper programs that generate/update data by default No point building these by default. Also, these generated files should go into the srcdir, not the builddir in this case, since they're version controlled. 2011-08-10 15:20:37 +0100 Tim-Philipp Müller * gst-libs/gst/tag/mklicensestables.c: tag: fix stray printf in mklicensestables Don't dump debug output to stdout. 2011-08-10 15:06:59 +0100 Tim-Philipp Müller * gst-libs/gst/tag/licenses.c: tag: fix compilation of new licenses code with GLib versions < 2.28 Add local g_variant_lookup_value() fallback for now when compiling against older GLib versions. 2011-08-10 14:57:14 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/tag.h: tag: add GType for GstTagLicenseFlags API: gst_tag_license_flags_get_type() 2011-08-09 16:41:01 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstxmptag.c: xmptag: fix compiler warning in release mode Fix compiler warning caused by g_assert_not_reached() being skipped because releases are compiled with -DG_DISABLE_ASSERT. https://bugzilla.gnome.org/show_bug.cgi?id=656264 2011-08-10 10:49:38 +0100 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: fix runtime warnings when doing position query Add missing 'break'. 2011-07-15 13:19:38 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/libs/tag.c: * tests/files/Makefile.am: * tests/files/license-uris: tag: add unit test for new license API https://bugzilla.gnome.org/show_bug.cgi?id=646868 2011-07-15 13:14:16 +0100 Tim-Philipp Müller * .gitignore: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/mklicensestables.c: tag: add mklicensestables utility Add (uninstalled) tool to create licenses-table.dat from liblicense's RDF files. It's not very pretty and makes loats of assumptions about the input, but should work. If things change, we can fix it then. https://bugzilla.gnome.org/show_bug.cgi?id=646868 2011-07-15 13:07:55 +0100 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/license-translations.dict: * gst-libs/gst/tag/licenses-tables.dat: * gst-libs/gst/tag/licenses.c: * gst-libs/gst/tag/tag.h: tag: add convenience API to handle creative commons licenses Based on liblicense's RDF files. API: GstTagLicenseFlags API: gst_tag_get_licenses() API: gst_tag_get_license_flags() API: gst_tag_get_license_nick() API: gst_tag_get_license_title() API: gst_tag_get_license_version() API: gst_tag_get_license_description() API: gst_tag_get_license_jurisdiction() https://bugzilla.gnome.org/show_bug.cgi?id=646868 2011-08-08 10:00:40 +0100 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: bump probability if all frames we found are similar Similar meaning same layer, same bitrate, and same number of channels This fixes misdetection of (some MP3 files that have zero padding between the ID3 tag and the MP3 stream) as H.264 video. https://bugzilla.gnome.org/show_bug.cgi?id=656018 2011-08-09 16:39:31 +0200 Josep Torra * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/video.h: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/playback/gststreamsynchronizer.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcp.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * gst/videoscale/gstvideoscale.c: * tests/icles/stress-videooverlay.c: Fix debug statements Fixes build on MacOSX Signed-off-by: Edward Hervey 2011-08-08 14:41:17 +0100 Tim-Philipp Müller * gst-libs/gst/interfaces/videooverlay.c: * gst-libs/gst/interfaces/videooverlay.h: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/stress-videooverlay.c: videooverlay: add convenience API to check if a message is a prepare-window-handle message API: gst_is_video_overlay_prepare_window_handle_message() 2011-08-08 14:16:39 +0100 Tim-Philipp Müller * tests/examples/overlay/Makefile.am: * tests/icles/Makefile.am: tests: fix libs order in some makefiles Local libs should come first. 2011-08-08 13:55:21 +0100 Tim-Philipp Müller * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: * tests/examples/overlay/.gitignore: * tests/examples/overlay/Makefile.am: * tests/examples/overlay/gtk-videooverlay.c: * tests/examples/overlay/qt-videooverlay.cpp: * tests/examples/overlay/qtgv-videooverlay.cpp: * tests/examples/overlay/qtgv-videooverlay.h: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/stress-videooverlay.c: * tests/icles/test-colorkey.c: * tests/icles/test-videooverlay.c: tests: update for GstXOverlay => GstVideoOverlay 2011-08-08 10:44:17 +0100 Tim-Philipp Müller * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximagesink, xvimagesink: update for GstXOverlay -> GstVideoOverlay 2011-08-07 16:55:25 +0100 Tim-Philipp Müller * android/interfaces.mk: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/videooverlay.c: * gst-libs/gst/interfaces/videooverlay.h: * gst-libs/gst/interfaces/xoverlay.h: * gst-plugins-base.spec.in: interfaces: rename GstXOverlay interface to GstVideoOverlay And remove deprecated methods, and fix up some cruft. 2011-08-07 18:36:04 +0200 Thomas Vander Stichele * gst-plugins-base.spec.in: gst-plugins-base.spec.in: update for 0.11 2011-08-05 16:53:47 +0100 Vincent Penquerc'h * gst-libs/gst/tag/gstvorbistag.c: gstvorbistag: map ENCODER Vorbis comment to application-name What GStreamer calls encoder ("encoder used to encode this stream") is stored in the vendor string in Vorbis/Theora/Kate and possibly others. The Vorbis comment packet used in those streams uses ENCODER as the name of the encoding program, which GStreamer calls application-name. https://bugzilla.gnome.org/show_bug.cgi?id=656034 2011-08-05 11:32:09 +0100 Vincent Penquerc'h * gst/volume/gstvolume.c: volume: fix sample depth typo https://bugzilla.gnome.org/show_bug.cgi?id=656022 2011-08-05 13:05:43 +0200 Sebastian Dröge * gst/volume/gstvolumeorc-dist.c: volume: Update disted ORC files 2011-08-05 12:48:07 +0200 Wim Taymans * sys/xvimage/xvimagepool.c: xvimagepool: cleanups 2011-08-04 18:08:49 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: call parent alloc function Call the parent alloc function to allocate buffers. 2011-08-04 15:18:14 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: remove useless alignment 2011-08-04 15:18:03 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: improve debug 2011-08-04 09:40:46 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-04 09:40:46 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-04 09:36:07 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: common configure.ac gst/colorspace/colorspace.c gst/colorspace/colorspace.h gst/colorspace/gstcolorspace.c 2011-08-04 09:36:07 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: common configure.ac gst/colorspace/colorspace.c gst/colorspace/colorspace.h gst/colorspace/gstcolorspace.c 2011-08-03 14:14:55 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Set queues to silent=true As encodebin doesn't connect to the queue signals, it can set queues to silent mode to make queue not emit them. Check https://bugzilla.gnome.org/show_bug.cgi?id=621299 for more info on queue's silent property. 2011-08-03 13:40:19 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Fix typo on installing properties queue buffers and bytes properties have ids swapped, fix it. 2011-08-03 12:08:16 +0200 Wim Taymans * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/multichannel-enumtypes.c: * win32/common/multichannel-enumtypes.h: back to development === release 0.11.0 === 2011-08-03 10:55:32 +0200 Wim Taymans * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/config.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: Release 0.11.0 2011-08-03 10:18:29 +0200 Jonathan Liu * ext/ogg/gstoggstream.c: oggstream: Fix crashes with 0-byte vorbis packets Fixes bug #655574. 2011-07-28 14:43:53 +0200 Jens Georg * gst-libs/gst/pbutils/codec-utils.c: pbutils: Add SP levels 4a, 5 and 6 https://bugzilla.gnome.org/show_bug.cgi?id=655503 2011-07-26 16:10:17 +0200 Philip Jägenstedt * ext/theora/gsttheoradec.c: theoradec: segfault on 0-byte ogg_packet in _chain_reverse 2011-08-02 12:53:15 +0200 Wim Taymans * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: update po 2011-08-02 12:24:37 +0200 Wim Taymans * gst/volume/gstvolumeorc-dist.c: update ORC dist files 2011-08-02 12:24:19 +0200 Wim Taymans * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: videoconvert: update ORC dist files 2011-08-02 12:22:12 +0200 Wim Taymans * win32/common/libgstvideo.def: def: add new symbols 2011-08-01 19:04:47 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: ximage: add support for alignment bufferpool option 2011-08-01 18:36:33 +0200 Wim Taymans * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: xv: apply cropping on padded images Store the dimensions of the unpadded image in the metadata and use that info to display the valid region of the image. 2011-08-01 17:10:10 +0200 Wim Taymans * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: xvimage: add suport for video alignment Add support for the VideoAlignment option in the bufferpool. The extra configuration options can be used to request special padding and alignment requirements for the video buffers. 2011-08-01 16:50:28 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: ensure sign in scale function 2011-08-01 16:48:46 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideopool.c: * gst-libs/gst/video/gstvideopool.h: videopool: add implementation Rename very long structure name to GstVideoAlignment Add the implementation of the video alignment config setter and getters. 2011-07-29 17:15:39 +0200 Wim Taymans * ext/theora/gsttheoradec.c: * gst/videoconvert/gstvideoconvert.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: base: update for new bufferpool API 2011-07-29 17:14:07 +0200 Wim Taymans * gst-libs/gst/video/gstvideopool.h: videopool: add stuff related to bufferpools Add bufferpool options and extra config parameters. 2011-07-29 12:22:16 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: relax bufferpool checks Check if the metadata belongs to us instead of checking the current bufferpool. The bufferpool can change at any time when upstream wants to renegotiate. 2011-07-27 16:55:45 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add macro to access flags 2011-07-29 10:23:02 +0100 Tim-Philipp Müller * gst-libs/gst/tag/Makefile.am: * win32/common/libgsttag.def: Add new GstTagMux base class Hook up new tag muxing base class to build system. https://bugzilla.gnome.org/show_bug.cgi?id=555437 API: GstTagMux 2011-07-29 10:22:26 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: docs: add documentation for GstTagMux 2011-07-28 20:38:37 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gsttagmux.c: tagmux: require subclass to install sink pad template Require the subclass to install both source and sink pad templates. Also, print some warnings if the subclass doesn't do that. https://bugzilla.gnome.org/show_bug.cgi?id=555437 2011-07-15 20:57:47 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gsttagmux.h: tagmux: const-ify GstTagList argument of render vfuncs 2011-07-15 20:39:20 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: tagmux: fix up private base class header so it can be made public Move private bits into a private struct, add some padding. https://bugzilla.gnome.org/show_bug.cgi?id=555437 2011-07-28 23:31:03 +0100 Michael Smith * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: tagmux: add support for end tags Originally "id3tag: Add new id3 tagging plugin, supports v1, v2.3, and v2.4." from gst-plugins-bad. This is an artificial bridge commit. 2010-06-06 18:00:22 +0200 Sebastian Dröge * gst-libs/gst/tag/gsttagmux.c: ext: Don't use GST_DEBUG_FUNCPTR for GObject vfuncs 2007-11-20 11:41:13 +0000 Julien Moutte Fix build on Mac OS X 10.5 Original commit message from CVS: 2007-11-20 Julien MOUTTE * gst-libs/gst/tag/gsttagmux.c: (gst_tag_lib_mux_render_tag), (gst_tag_lib_mux_adjust_event_offsets): * gst/qtdemux/qtdemux.c: (qtdemux_parse_theora_extension): * sys/osxaudio/Makefile.am: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: Fix build on Mac OS X 10.5 2007-09-13 15:04:15 +0000 Sebastian Dröge Update my mail address. Original commit message from CVS: * ext/taglib/gstapev2mux.cc: * ext/taglib/gstapev2mux.h: * gst-libs/gst/tag/gsttagmux.c: * tests/check/elements/apev2mux.c: Update my mail address. 2006-05-30 14:35:18 +0000 Sebastian Dröge Add apev2mux element (#343122). Original commit message from CVS: Patch by: Sebastian Dröge * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * ext/taglib/Makefile.am: * ext/taglib/gstapev2mux.cc: * ext/taglib/gstapev2mux.h: * ext/taglib/gstid3v2mux.cc: * gst-libs/gst/tag/gsttagmux.c: (plugin_init): * gst-libs/gst/tag/gsttagmux.h: Add apev2mux element (#343122). * tests/check/Makefile.am: * tests/check/elements/apev2mux.c: (test_taglib_apev2mux_create_tags), (test_taglib_apev2mux_check_tags), (fill_mp3_buffer), (got_buffer), (demux_pad_added), (test_taglib_apev2mux_check_output_buffer), (test_taglib_apev2mux_with_tags), (GST_START_TEST), (apev2mux_suite), (main): Add unit test for apev2mux element. 2006-05-18 12:46:08 +0000 James Doc Livingston gst-libs/gst/tag/gsttagmux.c: Merge event tags and tag setter tags correctly (#339918). Also, don't leak taglist in case... Original commit message from CVS: Patch by: James "Doc" Livingston * gst-libs/gst/tag/gsttagmux.c: (gst_tag_lib_mux_render_tag): Merge event tags and tag setter tags correctly (#339918). Also, don't leak taglist in case of an error. 2006-05-01 11:46:33 +0000 Thomas Vander Stichele docs/plugins/Makefile.am: also check .cc files for gtk-doc markup Original commit message from CVS: * docs/plugins/Makefile.am: also check .cc files for gtk-doc markup * configure.ac: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * tests/check/Makefile.am: * tests/check/elements/id3v2mux.c: (id3v2mux_suite), (main): * ext/Makefile.am: * ext/taglib/Makefile.am: * ext/taglib/gstid3v2mux.h: * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: move taglib-based id3v2muxer to -good. Fixes #336110. 2006-04-30 16:16:59 +0000 Thomas Vander Stichele * gst-libs/gst/tag/gsttagmux.c: small cleanups Original commit message from CVS: small cleanups 2006-04-29 18:46:36 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.cc: Post an error message on the bus in the (extremely unlikely) case of an error. Original commit message from CVS: * ext/taglib/gsttaglib.cc: Post an error message on the bus in the (extremely unlikely) case of an error. 2006-04-29 18:18:24 +0000 Tim-Philipp Müller ext/taglib/: Split the actual ID3v2 tag rendering code into its own subclass. Original commit message from CVS: * ext/taglib/Makefile.am: * ext/taglib/gstid3v2mux.cc: * ext/taglib/gstid3v2mux.h: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: Split the actual ID3v2 tag rendering code into its own subclass. 2006-04-28 15:33:09 +0000 Thomas Vander Stichele * gst-libs/gst/tag/gsttagmux.c: * gst-libs/gst/tag/gsttagmux.h: pedantic cleanups Original commit message from CVS: pedantic cleanups 2006-04-01 16:50:49 +0000 Thomas Vander Stichele * gst-libs/gst/tag/gsttagmux.c: add taglib checks and docs Original commit message from CVS: add taglib checks and docs 2006-03-26 19:56:37 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.*: Fix newsegment event handling a bit. We need to cache the first newsegment event, because we ... Original commit message from CVS: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: Fix newsegment event handling a bit. We need to cache the first newsegment event, because we can't adjust offsets yet when we get it, as we don't know the size of the tag yet for sure at that point. Also do some minor cleaning up here and there and add some debug statements. 2006-03-25 21:57:24 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.cc: We do not want to proxy the caps on the sink pad; our source pad should have application/x-i... Original commit message from CVS: * ext/taglib/gsttaglib.cc: We do not want to proxy the caps on the sink pad; our source pad should have application/x-id3 caps; also, don't use already-freed strings in debug messages; finally, adjust buffer offsets on buffers sent out. 2006-03-20 08:59:29 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.h: Fix left-over gst_my_filter_get_type. Original commit message from CVS: * ext/taglib/gsttaglib.h: Fix left-over gst_my_filter_get_type. 2006-03-13 17:22:19 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.cc: Add gtk-doc blurb (unused for the time being); match registered plugin name to the filename ... Original commit message from CVS: * ext/taglib/gsttaglib.cc: Add gtk-doc blurb (unused for the time being); match registered plugin name to the filename of the plugin (taglibmux => taglib) 2006-03-12 15:02:02 +0000 Tim-Philipp Müller ext/taglib/: Add support for writing MusicBrainz IDs. Original commit message from CVS: * ext/taglib/Makefile.am: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: Add support for writing MusicBrainz IDs. 2006-03-11 10:58:08 +0000 Alex Lancaster ext/taglib/gsttaglib.cc: and add support for TCOP (copyright) Original commit message from CVS: 2006-03-11 Christophe Fergeau Patch by: Alex Lancaster * ext/taglib/gsttaglib.cc: fix writing of TPOS tags (album number), and add support for TCOP (copyright) 2006-03-09 17:44:17 +0000 Christophe Fergeau new id3v2 muxer based on TagLib Original commit message from CVS: 2006-03-09 Christophe Fergeau reviewed by: Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/taglib/Makefile.am: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: new id3v2 muxer based on TagLib 2011-07-28 15:28:41 +0100 Tim-Philipp Müller * gst/videotestsrc/Makefile.am: videotestsrc: use local libgstvideo here as well 2011-07-28 11:21:26 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: rename flags names Rename flags names from native-audio/-video to no-audio/video-conversion to be more explicit on what it does 2011-07-28 14:18:34 +0100 Tim-Philipp Müller * gst/videoconvert/Makefile.am: videoconvert: link to local libgstvideo-0.11 2011-07-28 13:39:14 +0100 Tim-Philipp Müller * gst-libs/gst/video/video.h: * tests/check/libs/video.c: video: make GST_VIDEO_FORMATS_ALL define more readable We don't need all those quotes, strings will be parsed as strings regardless, and g-i doesn't seem to like all those escaped quotes. 2011-07-20 18:10:57 +0200 Stefan Sauer * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix latency calculation for live elements Max_latency was computed on already adjusted min_latency. Introduce a new variable for clarity. Spotted by Blaise Gassend. Fixes #644284 2011-07-28 11:44:20 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix max latency calculation ... to allow infinite max, as also claimed by comment. 2011-06-01 10:21:39 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: drop samples that are too late ... rather than having all of them rendered at 0 or subsequently aligned, likely inevitably leading to repeated resyncing. 2011-07-27 01:18:19 +0100 Tim-Philipp Müller * tests/check/pipelines/gio.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/examples/snapshot/snapshot.c: * tests/icles/playback/test3.c: * tests/icles/playback/test7.c: * tests/icles/playbin-text.c: * tests/icles/position-formats.c: tests: update for query API changes 2011-07-27 01:16:53 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/vorbis/gstvorbisenc.c: * gst/adder/gstadder.c: * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: ext,gst: update for query API changes 2011-07-27 01:16:08 +0100 Tim-Philipp Müller * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/tag/gsttagdemux.c: gst-libs: update for query API changes 2011-07-26 13:51:31 +0200 Stefan Sauer * tests/check/pipelines/basetime.c: basetime: fix failing test Always use audiotestsrc as it seems to have been the intention according to the comment header. The test does not work with live-audiosources. 2011-07-26 14:10:33 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: let old pool drain Let the old pool drain without deactivating it, some elements might still be using it. 2011-07-26 13:17:20 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: use new setup_allocation vmethod 2011-07-26 12:47:38 +0200 Wim Taymans * ext/gio/gstgiobasesink.c: giosink: use new query vmethod 2011-07-26 12:42:22 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: chain up to parent_class correctly 2011-07-25 19:51:24 +0200 Stefan Kost * tests/check/elements/playbin2-compressed.c: tests: rename the test suite to match the binary This unbreaks determining the name for make elements/playbin2-compressed.check from the test output. 2011-07-25 19:39:55 +0200 Stefan Kost * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: rework pending event handling Use atomic ops on pending flags. Rename the segment_pending to new_segment_pending. Set new_segment_pending not when we received seek, but when we received the first upstream new_segment. 2011-07-25 19:11:59 +0200 Stefan Kost * gst/adder/gstadder.c: adder: more debug logging for events 2011-07-26 12:37:04 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: use new basesink query vmethod 2011-07-26 12:33:56 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Allow all EOS to go through if we don't have a next group Only drop them if the current group isn't drained .. AND there is a next group to switch to. Should Fix #655268 2011-07-25 18:37:15 +0200 Edward Hervey * gst/playback/gstplaybin2.c: playbin2: Avoid resetting playsink when not needed When we don't have specific {audio|video|text}-sink properties, don't set them on playsink when reconfiguring. If we do that, we end up setting the previous configured sink to GST_STATE_NULL resulting in any potentially pending push being returned with GST_FLOW_WRONG_STATE which will cause the upstream elements to silently stop. https://bugzilla.gnome.org/show_bug.cgi?id=655279 2011-07-25 18:35:01 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add pack and unpack functions Add pack and unpack function to handle complex formats in the future. 2011-07-25 18:08:24 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add more info in the format structure Add a field to describe how many bits are used to pack items. Specify the shift for each component. Add some more flags to better describe the format. 2011-07-25 12:04:02 +0200 Stefan Sauer * ext/pango/gsttextoverlay.c: textoverlay: improve the example Mentioned that this is not ment to be used with subtitles and suggest alternatives. 2011-07-25 10:41:04 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Properly handle multi-stream chains When we have a multi-stream (i.e. audio and video) input and the demuxer adds/removes pads for a new stream (common in a mpeg-ts stream when the program stream mapping is updated), the algorithm for EOS handling was previously wrong (it would only drop the EOS of the *last* pad but would let the EOS on the other pads go through). The logic has only been changed a tiny bit for EOS handling resulting in: * If there is no next group, let the EOS go through * If there is a next group, but not all pads are drained in the active group, drop the EOS event * If there is a next group and all pads are drained, then the ghostpads will be removed and the EOS event will be dropped automatically. 2011-07-23 14:21:27 +0200 Stefan Sauer * ext/pango/gsttextoverlay.c: textoverlay: add example for feeding from stdin 2011-07-23 13:46:31 +0200 Stefan Sauer * tests/check/pipelines/basetime.c: test: print actual timestamp on failure 2011-07-20 13:46:31 +0200 Stefan Sauer * ext/pango/gsttextoverlay.c: textoverlay: keep untimestamped textbuffer until next one Instead of discarding untimestamped text-buffers immeditely after rendering, keep them until we receive the next text buffer. Fixes #654959 2011-07-22 21:19:08 +0200 Wim Taymans * gst/audioresample/gstaudioresample.c: audioresample: fix for event handler change 2011-07-19 18:31:23 +0100 Wim Taymans * ext/theora/gsttheoradec.c: the 2011-07-19 18:21:42 +0100 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: make sure our buffer is big enough Make sure we allocate a buffer that is big enough. 2011-07-18 18:46:01 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x11: call parent set_config Call the parent set_config method to make it aware of the current config so that its default methods can do preallocation. 2011-07-18 16:48:25 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: improve allocation parameters Set the min-buffers to 2 because our base class will hold on to 1 buffer for the last-buffer property. 2011-07-15 16:46:54 +0100 Tim-Philipp Müller * tests/check/elements/decodebin2.c: tests: add decodebin2 test for parser autoplugging Make sure decodebin2 doesn't try to plug the same parser twice in a row. 2011-07-06 19:40:48 +0100 Tim-Philipp Müller * tests/check/elements/decodebin.c: * tests/files/Makefile.am: * tests/files/test.mp3: tests: add decodebin1 test for parser autoplugging Make sure decodebin1 doesn't try to plug the same parser twice in a row (so we can change all parsers to accept parsed input as well without breaking applications still using the old decodebin1 element). 2011-07-07 15:02:19 +0100 Tim-Philipp Müller * gst/playback/gstdecodebin.c: decodebin: don't plug the same parser multiple times in a row This allows us to make parsers accept both parsed and unparsed input without decodebin plugging them in a loop until things blow up, ie. without affecting applications that still use the old playbin or the old decodebin. (Making parsers accept parsed input is useful for later when we want to use parsers to convert the stream-format into something the decoder can handle. It's also much more convenient for application authors who can plug parsers unconditionally in transcoding pipelines, for example). 2011-07-15 16:34:02 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: X11: also check the bufferpool Don't just check the availability of the metadata but also if the buffer is really from our bufferpool. 2011-07-15 12:32:25 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: decodebin2 is dead, long live decodebin 2011-07-14 13:56:02 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/codec-utils.c: * win32/common/libgstpbutils.def: docs: add Since marker to gtk-doc chunk for new codec utils API And add new API to .def file. API: gst_codec_utils_h264_get_level_idc() 2011-03-07 17:55:48 -0500 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: codec-utils: Add method to convert H.264 text level in a level_idc 2011-07-11 18:21:49 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.c: metavideo: fix for API change 2011-07-10 21:47:12 +0200 Mark Nauwelaerts * gst-libs/gst/video/video.c: video: init video info to some sensible defaults 2011-07-10 13:49:14 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-07-10 13:39:31 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add macros for par and fps 2011-07-09 18:33:38 -0700 David Schleef * ext/ogg/gstoggmux.c: oggmux: check for EOS on both current and best pad Oops, need both. Fixes #654270. 2011-07-09 18:24:26 -0700 David Schleef * ext/ogg/gstoggmux.c: oggmux: check for EOS on current pad, not best Fixes #654270. 2011-07-09 11:59:42 +0200 Piotr Fusik * gst/typefind/gsttypefindfunctions.c: typefind: fixed detection of audio/x-sap Fixes: #654295. Signed-off-by: David Schleef 2011-07-06 17:03:08 +0200 Mark Nauwelaerts * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: provide a WRITE map with maximum available size ... which allows adding additional packets and may be needed to counteract the shrink that implicitly occurred during a map/unmap cycle when adding a previous packet. 2011-07-08 20:02:25 +0100 Tim-Philipp Müller * gst/gdp/gstgdppay.c: gdppay: parse caps event and payload caps Which makes it actually output stuff. 2011-07-07 23:57:33 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/adder.c: * tests/check/libs/video.c: tests: make adder test and libgstvideo test compile, disable some tests Don't fully work yet though 2011-07-07 21:24:38 +0100 Tim-Philipp Müller * Android.mk: * android/videoconvert.mk: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * ext/ogg/gstoggmux.c: * ext/pango/gstclockoverlay.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/video/convertframe.c: * gst-plugins-base.spec.in: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstencodebin.c: * sys/ximage/ximagesink.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/videoscale.c: * tests/check/pipelines/oggmux.c: * tests/examples/dynamic/addstream.c: * tests/examples/seek/jsseek.c: * tests/examples/snapshot/snapshot.c: * tests/icles/output-selector-test.c: * tests/icles/playback/test.c: * tests/icles/test-box.c: * tests/icles/test-scale.c: * tests/icles/test-textoverlay.c: * tools/gst-launch-ext.1.in: * tools/gst-visualise-m.m: * win32/MANIFEST: * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstffmpegcolorspace.dsp: * win32/vs6/libgsttag.dsp: * win32/vs7/gst-plugins-base.sln: * win32/vs7/libgstffmpegcolorspace.vcproj: * win32/vs8/gst-plugins-base.sln: * win32/vs8/libgstffmpegcolorspace.vcproj: ffmpegcolorspace -> videoconvert 2011-07-07 21:04:47 +0100 Tim-Philipp Müller * tests/old/Makefile.am: * tests/old/examples/Makefile.am: * tests/old/examples/capsfilter/Makefile.am: * tests/old/examples/capsfilter/capsfilter1.c: * tests/old/examples/gob/Makefile.am: * tests/old/examples/gob/gst-identity2.gob: * tests/old/examples/indexing/.gitignore: * tests/old/examples/indexing/Makefile.am: * tests/old/examples/indexing/indexmpeg.c: * tests/old/examples/seek/.gitignore: * tests/old/examples/seek/Makefile.am: * tests/old/examples/seek/cdparanoia.c: * tests/old/examples/seek/cdplayer.c: * tests/old/examples/seek/chained.c: * tests/old/examples/stats/Makefile.am: * tests/old/examples/stats/mp2ogg.c: * tests/old/examples/switch/.gitignore: * tests/old/examples/switch/Makefile.am: * tests/old/examples/switch/switcher.c: * tests/old/testsuite/alsa/.gitignore: * tests/old/testsuite/alsa/Makefile.am: * tests/old/testsuite/alsa/formats.c: * tests/old/testsuite/alsa/sinesrc.c: * tests/old/testsuite/alsa/sinesrc.h: * tests/old/testsuite/alsa/srcstate.c: * tests/old/testsuite/alsa/state.c: * tests/old/testsuite/embed/Makefile.am: * tests/old/testsuite/embed/embed.c: * tests/old/testsuite/gst-lint: tests: remove tests from ancient times They're just noise. 2011-06-05 00:54:19 -0700 David Schleef * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: duplicate from CELT Copy the celt plugin and convert it to Opus. Mostly works. 2011-07-07 11:10:39 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/tag/gstxmptag.c gst/encoding/gststreamsplitter.c 2011-07-07 10:28:08 +0200 Wim Taymans * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: audioconvert: update orc dist files 2011-07-07 10:20:19 +0200 Wim Taymans * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/plugin.c: audioconvert: don't use .init function Don't use the .init function but compile all functions when needed instead of when the plugin is registered. 2011-07-06 12:54:40 +0100 Tim-Philipp Müller * tests/check/libs/netbuffer.c: * tests/check/libs/tag.c: tests: update netbuffer and tag tests for gst_buffer_take_memory() API change 2011-07-06 12:51:03 +0100 Tim-Philipp Müller * tests/check/libs/pbutils.c: tests: update libs/pbutils test for GstMessage API changes Can't access msg->structure directly any more. 2011-07-06 12:47:01 +0100 Tim-Philipp Müller * tests/check/libs/mixer.c: tests: fix libs/mixer test for GstImplementsInterface removal Not sure if we want to keep the GstMixer API in its current form though.. 2011-07-06 12:42:36 +0100 Tim-Philipp Müller * tests/check/pipelines/theoraenc.c: tests: update theoraenc test for new pad probe API Compiles now, but fails. 2011-07-06 12:38:10 +0100 Tim-Philipp Müller * tests/check/gst/typefindfunctions.c: tests: update typefindfunctions test for latest API changes 2011-07-06 12:36:37 +0100 Tim-Philipp Müller * tests/check/libs/audio.c: tests: update libs/audio test for latest API changes 2011-07-06 10:27:50 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: update exports for new libgstvideo API 2011-07-06 10:27:02 +0100 Tim-Philipp Müller * docs/libs/Makefile.am: docs: add -DGST_USE_UNSTABLE_API also to GTKDOC_CFLAGS To avoid warnings 2011-07-05 16:58:04 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: update docs 2011-07-05 10:07:08 +0100 Tim-Philipp Müller * configure.ac: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: Add -DGST_USE_UNSTABLE_API to the compiler flags to avoid warnings 2011-07-05 10:04:42 +0100 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: theoraenc: remove some unused code that caused a compiler warning The video format is set up in the sink pad's setcaps() function. 2011-07-04 18:08:25 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add macro to get frame size 2011-07-04 16:27:50 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: add some more macros Add macros to get the plane and offset of a component. 2011-07-04 10:19:13 +0200 Wim Taymans * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/videoconvert.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/videotestsrc.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: video: More video helper library improvements Make a new GstVideoFormatinfo structure that contains the specific information related to a format such as the number of planes, components, subsampling, pixel stride etc. The result is that we are now able to introduce the concept of components again in the API. Use tables to specify the formats and its properties. Use macros to get information about the video format description. Move code to set strides, offsets and size into one function. Remove methods that are not handled with the structures. Add methods to retrieve pointers and strides to the components in the video. 2011-06-30 20:33:36 +0200 Luis de Bethencourt * gst/encoding/gstencodebin.c: encodebin: fix compiler warning cspace and cspace2 may run uninitialized. 2011-06-29 13:12:49 +0200 Robert Swain * gst/encoding/gstencodebin.c: encodebin: Add flags to disable conversion elements Add a flags property and two flags to allow one to disable the conversion elements within encodebin. Doing so insists that the uncompressed input to encodebin for the appropriate stream type is sufficient to meet the caps requirements of the encoders, muxers and encodebin target. This is mostly beneficial to bypass slow caps negotiations in the conversion elements. 2011-06-29 09:59:05 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Remove extra chars from end of xmp packet Windows picture viewer is unhappy with extra trailing chars at the end of the xmppacket footer. So remove them as they aren't needed. 2011-06-29 11:30:51 +0200 Robert Swain * gst/encoding/gststreamsplitter.c: streamsplitter: Fix getcaps src pad caps merge Caps returned from gst_pad_peer_get_caps_reffed () may not be writable. If they are not is should cause an assertion in gst_caps_merge (), however, sometimes assertions are disabled in binary builds of -base and it's safer to just be sure the caps are writable. Also, check that the reffed caps pointer is not NULL. 2011-06-28 19:03:23 +0200 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: only unset initialized GValue 2011-06-15 13:51:31 +0200 Philip Jägenstedt * gst/typefind/gsttypefindfunctions.c: typefind: NULL check in degas_type_find The length check isn't sufficient, an source might report the correct length, but then still fail to read the requested number of bytes for some reason. https://bugzilla.gnome.org/show_bug.cgi?id=652642 2011-06-26 23:17:03 +0100 Tim-Philipp Müller * gst/videoconvert/gstvideoconvert.c: videoconvert: fix unused-but-set-variable compiler warning 2011-06-26 23:16:08 +0100 Tim-Philipp Müller * gst/encoding/gstencodebin.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: gst, sys: remove GstImplementsInterface usage 2011-06-26 22:58:17 +0100 Tim-Philipp Müller * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsasrc.c: alsa: don't use GstImplementsInterface 2011-06-26 21:46:08 +0100 Tim-Philipp Müller * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/tuner.c: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/videoorientation.c: * gst-libs/gst/interfaces/videoorientation.h: * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/interfaces/xoverlay.h: gst-libs: remove GstImplementsInterface usage Will need to add replacement API for some of these. 2011-06-26 21:27:28 +0100 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-06-26 01:06:58 +0100 Tim-Philipp Müller * docs/design/design-decodebin.txt: docs: minor addition to decodebin2 design doc 2011-06-26 01:06:19 +0100 Tim-Philipp Müller * tests/check/libs/navigation.c: tests: the navigation interface isn't GstImplementsInterface-wrapped 2011-06-26 00:49:46 +0100 Tim-Philipp Müller * gst-libs/gst/interfaces/streamvolume.h: interfaces: GstStreamVolume isn't wrapped by GstImplementsInterface This interface depends on properties and isn't per-instance. 2011-06-26 00:40:20 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspextension.h: rtsp: GstRTSPExtension isn't wrapped by GstImplementsInterface Fix copy'n'paste error in headers, GstRTSPExtension isn't something that's per-instance. 2011-06-26 00:36:36 +0100 Tim-Philipp Müller * gst-libs/gst/tag/xmpwriter.h: tag: GstXmpWriter doesn't use the GstImplementsInterface No need for per-instance checking of interface implementation here, presumably just a copy'n'paste issue. 2011-06-11 19:03:57 +1000 Jonathan Matthew * gst-libs/gst/pbutils/encoding-target.c: encoding-target: set names on audio and video profiles https://bugzilla.gnome.org/show_bug.cgi?id=652342 2011-06-23 11:28:04 -0700 David Schleef * common: Automatic update of common submodule From 69b981f to 605cd9a 2011-06-23 18:02:40 +0200 Wim Taymans * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: use cropping metadata 2011-06-23 16:31:21 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: let upstream know we support cropping 2011-06-23 12:55:13 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: x11: add image cropping Use the cropping metadata to crop the image. Remove deprecated display-region property to set a clipping rectangle. 2011-06-23 09:55:27 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: meta: add some docs 2011-06-23 09:30:19 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: meta: add video crop metadata 2011-06-22 19:35:16 +0200 Wim Taymans * sys/xvimage/xvimagesink.c: xvimagesink: handle unknown formats 2011-06-22 16:38:48 +0200 Wim Taymans * ext/gio/gstgio.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/cdda/gstcddabasesrc.c: fix for uri changes 2011-06-22 15:38:24 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: x11: use frame copy functions 2011-06-22 15:25:35 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add video copy function Add a function to copy a video frame, taking care of source and destination strides. 2011-06-22 12:57:46 +0200 Wim Taymans * tests/examples/seek/seek.c: seek: wait for the spinbutton widget Wait for the spinbutton widget before trying to update it when the volume changed callback is called. 2011-06-22 11:45:58 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: fix for allocator name change 2011-06-21 18:17:59 +0200 Wim Taymans * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: audio: clean up headers 2011-06-21 18:13:48 +0200 Wim Taymans * ext/alsa/gstalsasink.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: audio: clean up audiosink headers 2011-06-21 18:08:12 +0200 Wim Taymans * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/gstringbuffer.h: audio: clean up ringbuffer header 2011-06-21 17:57:56 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: configure.ac docs/plugins/inspect/plugin-gnomevfs.xml 2011-06-21 17:33:27 +0200 Wim Taymans * gst/videotestsrc/Makefile.am: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: port to video helpers Port videotestsrc to use the video helper functions to parse caps and handle video frames. Enable GstMetaVideo to make us handle strided video. 2011-06-21 17:31:17 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: use gint to make parsing easier Use gint for with/height etc to make it easier to pass the variables to various caps and structure parsing functions. 2011-06-21 12:52:23 +0200 Wim Taymans * gst/videotestsrc/videotestsrc.c: videotestsrc: small cleanups 2011-06-20 17:49:13 +0200 Wim Taymans * gst/videoscale/gstvideoscale.c: videoscale: activate Video meta Configure the allocator with GstMetaVideo because we can handle that using the GstVideoFrame helpers. 2011-06-20 17:36:24 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: delay pool activation don't activate the pool we return in the ALLOCATION query because upstream might still want to configure it 2011-06-20 17:34:57 +0200 Wim Taymans * gst/videoconvert/gstvideoconvert.c: videoconvert: use new allocation setup Add setup_allocation to configure video metadata in the negotiated bufferpool. 2011-06-20 15:43:57 +0200 Mark Nauwelaerts * configure.ac: configure.ac: bump required GLib to 2.26 2011-06-20 13:30:07 +0200 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: enable video metadata in the bufferpool Enable the video metadata in the bufferpool. 2011-06-20 13:28:12 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x11: handle new bufferpool metadata api Provide a method to list the supported metadata apis. Activate the video metadata on buffers when a downstream element configured the bufferpool to support that api. 2011-06-20 11:25:58 +0200 Wim Taymans * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/videoconvert/videoconvert.c: * gst/videoscale/gstvideoscale.c: video: remove intermediate Plane structure Remove the GstVideoPlane structure and move the fields directly into the GstVideoInfo structure. This makes things a little easier to read and also makes it more likely that we can pass the stride array to external libraries. 2011-06-18 13:32:17 +0100 Tim-Philipp Müller Bump git version after unplanned 0.10.35 release Merge branch '0.10.35' Conflicts: configure.ac docs/plugins/inspect/plugin-adder.xml docs/plugins/inspect/plugin-alsa.xml docs/plugins/inspect/plugin-app.xml docs/plugins/inspect/plugin-audioconvert.xml docs/plugins/inspect/plugin-audiorate.xml docs/plugins/inspect/plugin-audioresample.xml docs/plugins/inspect/plugin-audiotestsrc.xml docs/plugins/inspect/plugin-cdparanoia.xml docs/plugins/inspect/plugin-decodebin.xml docs/plugins/inspect/plugin-encoding.xml docs/plugins/inspect/plugin-ffmpegcolorspace.xml docs/plugins/inspect/plugin-gdp.xml docs/plugins/inspect/plugin-gio.xml docs/plugins/inspect/plugin-gnomevfs.xml docs/plugins/inspect/plugin-libvisual.xml docs/plugins/inspect/plugin-ogg.xml docs/plugins/inspect/plugin-pango.xml docs/plugins/inspect/plugin-playback.xml docs/plugins/inspect/plugin-subparse.xml docs/plugins/inspect/plugin-tcp.xml docs/plugins/inspect/plugin-theora.xml docs/plugins/inspect/plugin-typefindfunctions.xml docs/plugins/inspect/plugin-uridecodebin.xml docs/plugins/inspect/plugin-videorate.xml docs/plugins/inspect/plugin-videoscale.xml docs/plugins/inspect/plugin-videotestsrc.xml docs/plugins/inspect/plugin-volume.xml docs/plugins/inspect/plugin-vorbis.xml docs/plugins/inspect/plugin-ximagesink.xml docs/plugins/inspect/plugin-xvimagesink.xml gst-libs/gst/audio/Makefile.am gst/subparse/gstsubparse.c win32/common/_stdint.h win32/common/config.h 2011-06-18 11:16:19 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Allow GError* argument to be NULL This is how other methods taking GError* arguments behave. Fixes #652838 2011-06-17 17:54:52 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: x11: use GstVideoInfo to parse caps Use GstVideoInfo to keep track of the configured format. Add GstMetaVideo to buffers, disabled by default for now until we can have it enabled with a property on the bufferpool configuration. 2011-06-17 17:44:56 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.c: metavideo: small fixes Set the buffer as a field in the metadata so that we can use it to map the buffer data. Fix wrong assert. 2011-06-17 17:27:22 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: x11: make function static Don't export buffer creation function, we need to use the bufferpool now. 2011-06-17 16:47:25 +0200 Wim Taymans * gst-libs/gst/video/video.c: video: use metadata to set up strides Use the GstMetaVideo when we can to map the buffers and set up the strides. 2011-06-17 15:48:19 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: tests/examples/Makefile.am 2011-06-17 15:31:59 +0200 Wim Taymans * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: -base: port to GstVideoFrame API 2011-06-17 15:29:50 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add GstVideoFrame helper structure The videoframe structure can be used to easily parse the contents of video buffers. 2011-06-17 09:21:27 +0200 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/videoconvert.c: video: port to new API Add support for palette again. Rewrite setup code for videoconvert using the new video methods. 2011-06-16 19:35:27 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: rework part 2 Update docs. Add method to get number of components. Implement method to calculate defaults from format and dimensions. Improve caps parsing. Implement GstVideoInfo to caps conversion. 2011-06-16 16:27:31 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: rework part 1 Add GstVideoFlags similar to the flags on the metadata. The idea is to replace the metadata flags with the GstVideoFlags. Move VideoPlane to video.h, it contains the information for a plane. Add GstVideoInfo structure that holds the current configuration of a video format. Add methods to parse caps into GstVideoInfo. 2011-06-16 13:41:25 +0200 Wim Taymans * tests/check/elements/ffmpegcolorspace.c: * tests/check/elements/libvisual.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: * tests/check/elements/videoscale.c: * tests/check/elements/videotestsrc.c: * tests/check/libs/pbutils.c: * tests/check/libs/profile.c: * tests/check/libs/video.c: * tests/check/pipelines/capsfilter-renegotiation.c: * tests/check/pipelines/simple-launch-lines.c: * tests/check/pipelines/theoraenc.c: test: port some more tests 2011-06-16 12:48:33 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstrawcaps.h: * gst/videoconvert/gstvideoconvert.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: -base: port elements to new video caps 2011-06-16 12:43:54 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add methods to parse X11 visuals Add method to convert X11 visual description to GstVideoFormat 2011-06-15 16:16:02 +0200 Wim Taymans * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: update video caps 2011-06-16 14:23:25 +1000 Jan Schmidt * po/POTFILES.in: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Remove deleted playbin/decodebin files from POTFILES.in === release 0.10.35 === 2011-06-15 19:29:48 +0100 Tim-Philipp Müller Release 0.10.35 This is an ad-hoc release that is almost identical to 0.10.34: * work around GLib atomic ops API change * don't use G_CONST_RETURN in public headers * subparse: typefinding fixes for subtitles in non-UTF8 charsets 2011-06-15 18:08:32 +0200 Wim Taymans * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * gst/playback/gstplay-enum.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: some more ffmpegcolorspace to videoconvert changes 2011-06-15 18:01:04 +0200 Wim Taymans * configure.ac: * docs/plugins/Makefile.am: * gst/ffmpegcolorspace/Makefile.am: * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/dsputil.c: * gst/ffmpegcolorspace/dsputil.h: * gst/ffmpegcolorspace/ffmpegcolorspace.vcproj: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/gstffmpegcodecmap.h: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: * gst/ffmpegcolorspace/mem.c: * gst/ffmpegcolorspace/utils.c: * gst/playback/gstplaysink.c: ffmpegcolorspace: remove plugin 2011-06-15 17:49:21 +0200 Wim Taymans * configure.ac: * gst/colorspace/Makefile.am: * gst/videoconvert/Makefile.am: * gst/videoconvert/gstvideoconvert.c: * gst/videoconvert/gstvideoconvert.h: * gst/videoconvert/gstvideoconvertorc-dist.c: * gst/videoconvert/gstvideoconvertorc-dist.h: * gst/videoconvert/gstvideoconvertorc.orc: * gst/videoconvert/videoconvert.c: * gst/videoconvert/videoconvert.h: * gst/videoconvert/videoconvert.vcproj: videoconvert: renamed from colorspace 2011-06-15 16:52:52 +0200 Wim Taymans * gst/colorspace/gstcolorspace.c: colorspace: fix caps negotiation 2011-06-15 16:28:44 +0200 Wim Taymans * gst/colorspace/gstcolorspace.c: colorspace: port to 0.11 2011-06-15 16:28:30 +0200 Wim Taymans * configure.ac: colorspace: add to build 2011-04-30 19:46:40 +0100 Tim-Philipp Müller * gst/colorspace/gstcolorspaceorc-dist.c: [MOVED FROM BAD 68/68] Update orc-generated disted C backup code to orc 0.4.14 2011-04-28 00:00:09 +0100 Tim-Philipp Müller * gst/colorspace/gstcolorspaceorc-dist.c: [MOVED FROM BAD 67/68] 0.10.21.3 pre-release 2011-04-17 01:09:33 +0100 Tim-Philipp Müller * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: [MOVED FROM BAD 66/68] ext, gst: update disted orc backup files 2011-04-15 00:09:14 +0100 Tim-Philipp Müller * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 65/68] Fix some unused-but-set-variable warnings with gcc 4.6 2011-04-11 00:36:35 -0400 Thibault Saunier * gst/colorspace/Makefile.am: [MOVED FROM BAD 64/68] android: make it ready for androgenizer Remove the android/ top dir Fixe the Makefile.am to be androgenized To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files. Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git 2011-02-25 19:59:05 -0800 David Schleef * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 63/68] colorspace: set dithering enum directly 2011-02-25 19:57:47 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 62/68] colorspace: Add support for r210 2011-02-20 23:01:30 -0800 David Schleef * gst/colorspace/colorspace.c: [MOVED FROM BAD 61/68] colorspace: Fix YUV->RGB matrixing 2011-02-20 22:43:56 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: [MOVED FROM BAD 60/68] colorspace: Add dithering Dithering only happens when a 16-bit-per-channel format is involved. 2011-02-20 14:14:27 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspaceorc.orc: [MOVED FROM BAD 59/68] colorspace: fix a few formats 2011-02-19 13:12:41 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 58/68] colorspace: Add 16-bit-per-channel handling 2011-02-19 13:13:13 -0800 David Schleef * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 57/68] colorspace: Fix memleak 2011-02-15 18:12:02 -0800 David Schleef * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 56/68] colorspace: Fix memory leak 2011-01-02 16:13:56 -0800 David Schleef * gst/colorspace/colorspace.c: [MOVED FROM BAD 55/68] colorspace: Disable matrixing on big-endian It's broken until someone writes better Orc code. Fixes #631232. 2010-11-21 23:11:19 -0800 David Schleef * gst/colorspace/colorspace.c: [MOVED FROM BAD 54/68] colorspace: remove incorrect check 2010-11-05 10:56:51 +0100 Sebastian Dröge * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: [MOVED FROM BAD 53/68] colorspace: Update generated ORC sources 2010-11-04 14:18:29 +0100 Sebastian Dröge * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 52/68] colorspace: Inverse -base version check logic to actually make sense 2010-11-03 15:37:48 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: [MOVED FROM BAD 51/68] colorspace: Add support for IYU1 2010-11-03 15:12:42 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspaceorc.orc: [MOVED FROM BAD 50/68] colorspace: First version of YUV9 and YVU9 implementation 2010-11-03 09:20:15 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 49/68] colorspace: Use GST_CHECK_PLUGINS_BASE_VERSION() instead of other hacks 2010-11-02 16:54:59 +0000 Tim-Philipp Müller * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 48/68] colorspace: fix build with current git of gst-plugins-base ifdef tests don't work so well if we define them in the code above in case they aren't defined. 2010-11-02 16:05:37 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: [MOVED FROM BAD 47/68] colorspace: Add support for 8 bit paletted RGB This needs the 8 bit paletted support from -base which will be committed after release. Without this the 8 bit parts are disabled. 2010-11-01 15:53:52 +0000 Tim-Philipp Müller * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: [MOVED FROM BAD 46/68] cog, colorspace: update orc backup functions for latest changes Should fix build on systems without the latest orc. 2010-10-31 23:46:27 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 45/68] colorspace: Add support for RGB15 and BGR15 2010-10-31 23:44:20 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 44/68] colorspace: Add support for RGB16 and BGR16 2010-10-31 23:25:57 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspaceorc.orc: [MOVED FROM BAD 43/68] colorspace: Add support for Y16 2010-10-31 23:25:40 +0100 Sebastian Dröge * gst/colorspace/gstcolorspaceorc.orc: [MOVED FROM BAD 42/68] colorspace: Fix Y800 ORC getline implementation 2010-10-31 23:07:43 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspaceorc.orc: [MOVED FROM BAD 41/68] colorspace: Add support for A420 2010-10-31 23:00:07 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: [MOVED FROM BAD 40/68] colorspace: Add support for Y41B 2010-10-31 22:39:38 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: [MOVED FROM BAD 39/68] colorspace: Add support for SDTV/HDTV YUV conversions 2010-10-31 22:21:35 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: [MOVED FROM BAD 38/68] colorspace: Add comment for the A420 getline/putline table row 2010-10-31 20:40:09 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: [MOVED FROM BAD 37/68] colorspace: Add const to the source arrays and the getline/putline table 2010-10-31 19:42:30 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: [MOVED FROM BAD 36/68] colorspace: Make fast-path transform table const 2010-10-31 19:39:33 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: [MOVED FROM BAD 35/68] colorspace: Only do the I420->YUY2 conversion once per scanline in the fast path 2010-09-21 18:13:37 -0700 David Schleef * gst/colorspace/colorspace.c: [MOVED FROM BAD 34/68] colorspace: quiet a GST_ERROR 2010-09-15 21:47:09 +0100 Tim-Philipp Müller * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: [MOVED FROM BAD 33/68] colorspace: add orc-dist files Should fix build without orc or too old orc. 2010-09-13 18:49:43 -0700 David Schleef * gst/colorspace/Makefile.am: * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/gstcolorspaceorc.orc: [MOVED FROM BAD 32/68] colorspace: Add conversion code Work in progress. Colorspace handles most format conversion using 3-stage getline/matrix/putline process using an AYUV or ARGB intermediate, with most functions handled by Orc. There is also a table of single-pass conversions, all handled by Orc. The plan is to add optional stages for various chroma upsampling/downsampling algorithms, dithering, and float/int16 intermediates, and then have Orc create multi-stage functions at runtime. 2010-09-13 12:48:50 -0700 David Schleef * gst/colorspace/Makefile.am: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/gstcolorspaceorc.orc: * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: [MOVED FROM BAD 31/68] colorspace: Revive element Now based on Orc. 2010-03-18 17:30:26 +0100 Benjamin Otte * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 30/68] gst_element_class_set_details => gst_element_class_set_details_simple 2008-11-04 12:42:30 +0000 Stefan Kost [MOVED FROM BAD 29/68] Don't install static libs for plugins. Fixes #550851 for -bad. Original commit message from CVS: * ext/alsaspdif/Makefile.am: * ext/amrwb/Makefile.am: * ext/apexsink/Makefile.am: * ext/arts/Makefile.am: * ext/artsd/Makefile.am: * ext/audiofile/Makefile.am: * ext/audioresample/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/divx/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/gsm/Makefile.am: * ext/hermes/Makefile.am: * ext/ivorbis/Makefile.am: * ext/jack/Makefile.am: * ext/jp2k/Makefile.am: * ext/ladspa/Makefile.am: * ext/lcs/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/metadata/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/polyp/Makefile.am: * ext/resindvd/Makefile.am: * ext/sdl/Makefile.am: * ext/shout/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spc/Makefile.am: * ext/swfdec/Makefile.am: * ext/tarkin/Makefile.am: * ext/theora/Makefile.am: * ext/timidity/Makefile.am: * ext/twolame/Makefile.am: * ext/x264/Makefile.am: * ext/xine/Makefile.am: * ext/xvid/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst/aiffparse/Makefile.am: * gst/app/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/bayer/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/chart/Makefile.am: * gst/colorspace/Makefile.am: * gst/dccp/Makefile.am: * gst/deinterlace/Makefile.am: * gst/deinterlace2/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/filter/Makefile.am: * gst/flacparse/Makefile.am: * gst/flv/Makefile.am: * gst/games/Makefile.am: * gst/h264parse/Makefile.am: * gst/librfb/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/modplug/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/passthrough/Makefile.am: * gst/pcapparse/Makefile.am: * gst/playondemand/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/rtpmanager/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/selector/Makefile.am: * gst/smooth/Makefile.am: * gst/smoothwave/Makefile.am: * gst/speed/Makefile.am: * gst/speexresample/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videodrop/Makefile.am: * gst/videosignal/Makefile.am: * gst/virtualdub/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/acmenc/Makefile.am: * sys/cdrom/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/oss4/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/vcd/Makefile.am: * sys/wininet/Makefile.am: * win32/common/config.h: Don't install static libs for plugins. Fixes #550851 for -bad. 2007-06-22 10:46:33 +0000 Edward Hervey [MOVED FROM BAD 28/68] Fix leaks. Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_init): * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_init): * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_init): * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: (gst_bz2dec_init): * ext/bz2/gstbz2enc.c: (gst_bz2enc_init): * ext/divx/gstdivxdec.c: (gst_divxdec_init): * ext/divx/gstdivxenc.c: (gst_divxenc_init): * ext/faac/gstfaac.c: (gst_faac_init): * ext/gsm/gstgsmdec.c: (gst_gsmdec_init): * ext/gsm/gstgsmenc.c: (gst_gsmenc_init): * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_init): * ext/lcs/gstcolorspace.c: (gst_colorspace_init): * ext/libfame/gstlibfame.c: (gst_fameenc_init): * ext/snapshot/gstsnapshot.c: (gst_snapshot_init): * ext/spc/gstspc.c: (gst_spc_dec_init): * ext/swfdec/gstswfdec.c: (gst_swfdec_init): * ext/xvid/gstxvidenc.c: (gst_xvidenc_init): * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_init): * gst/chart/gstchart.c: (gst_chart_init): * gst/colorspace/gstcolorspace.c: (gst_colorspace_init): * gst/festival/gstfestival.c: (gst_festival_init): * gst/freeze/gstfreeze.c: (gst_freeze_init): * gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_request_new_pad): * gst/mpeg1sys/gstmpeg1systemencode.c: (gst_system_encode_init): * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init): * gst/nsf/gstnsf.c: (gst_nsfdec_init): * gst/overlay/gstoverlay.c: (gst_overlay_init): * gst/passthrough/gstpassthrough.c: (passthrough_init): * gst/playondemand/gstplayondemand.c: (play_on_demand_init): * gst/smooth/gstsmooth.c: (gst_smooth_init): * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_init): * gst/speed/gstspeed.c: (speed_init): * gst/vbidec/gstvbidec.c: (gst_vbidec_init): * gst/videodrop/gstvideodrop.c: (gst_videodrop_init): * sys/dxr3/dxr3spusink.c: (dxr3spusink_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_init): * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_init): Fix leaks. 2006-06-01 22:00:26 +0000 Stefan Kost [MOVED FROM BAD 27/68] Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.h: * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbenc.h: * ext/amrwb/gstamrwbparse.h: * ext/arts/gst_arts.h: * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.h: * ext/audioresample/gstaudioresample.h: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.h: * ext/dirac/gstdiracdec.h: * ext/directfb/dfbvideosink.h: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.h: * ext/dts/gstdtsdec.h: * ext/faac/gstfaac.h: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.h: * ext/ivorbis/vorbisenc.h: * ext/libfame/gstlibfame.h: * ext/nas/nassink.h: * ext/neon/gstneonhttpsrc.h: * ext/polyp/polypsink.h: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.h: * ext/shout/gstshout.h: * ext/snapshot/gstsnapshot.h: * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.h: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.h: * ext/theora/theoradec.h: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.h: * ext/xine/gstxine.h: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.h: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstcdxastrip.h: * gst/colorspace/gstcolorspace.h: * gst/festival/gstfestival.h: * gst/freeze/gstfreeze.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/modplug/gstmodplug.h: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/multifilesink/gstmultifilesink.h: * gst/overlay/gstoverlay.h: * gst/playondemand/gstplayondemand.h: * gst/qtdemux/qtdemux.h: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.h: * gst/smooth/gstsmooth.h: * gst/smoothwave/gstsmoothwave.h: * gst/spectrum/gstspectrum.h: * gst/speed/gstspeed.h: * gst/stereo/gststereo.h: * gst/switch/gstswitch.h: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.h: * gst/videodrop/gstvideodrop.h: * gst/xingheader/gstxingmux.h: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.h: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.h: * sys/qcam/gstqcamsrc.h: * sys/vcd/vcdsrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-04-25 21:56:38 +0000 Stefan Kost [MOVED FROM BAD 26/68] Define GstElementDetails as const and also static (when defined as global) Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init): * ext/faac/gstfaac.c: (gst_faac_base_init): * ext/faad/gstfaad.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: (gst_mms_base_init): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init): * ext/nas/nassink.c: (gst_nassink_base_init): * ext/neon/gstneonhttpsrc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/theora/theoradec.c: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init): * gst/chart/gstchart.c: * gst/colorspace/gstcolorspace.c: * gst/deinterlace/gstdeinterlace.c: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init): * gst/festival/gstfestival.c: * gst/filter/gstbpwsinc.c: * gst/filter/gstiir.c: * gst/filter/gstlpwsinc.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: (gst_puzzle_base_init): * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/playondemand/gstplayondemand.c: * gst/qtdemux/qtdemux.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/smooth/gstsmooth.c: * gst/smoothwave/gstsmoothwave.c: * gst/spectrum/gstspectrum.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/switch/gstswitch.c: * gst/tta/gstttadec.c: (gst_tta_dec_base_init): * gst/tta/gstttaparse.c: (gst_tta_parse_base_init): * gst/vbidec/gstvbidec.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/virtualdub/gstxsharpen.c: * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init): * gst/y4m/gsty4mencode.c: * sys/cdrom/gstcdplayer.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsink.c: * sys/glsink/glimagesink.c: * sys/qcam/gstqcamsrc.c: * sys/v4l2/gstv4l2src.c: * sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init): * sys/ximagesrc/ximagesrc.c: Define GstElementDetails as const and also static (when defined as global) 2006-04-08 21:48:01 +0000 Stefan Kost [MOVED FROM BAD 25/68] Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_class_init): * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_class_init): * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_class_init): * ext/arts/gst_arts.c: (gst_arts_class_init): * ext/artsd/gstartsdsink.c: (gst_artsdsink_class_init): * ext/audiofile/gstafsink.c: (gst_afsink_class_init): * ext/audiofile/gstafsrc.c: (gst_afsrc_class_init): * ext/audioresample/gstaudioresample.c: * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init): * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_class_init): * ext/divx/gstdivxdec.c: (gst_divxdec_class_init): * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_class_init): * ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_class_init): * ext/jack/gstjack.c: (gst_jack_class_init): * ext/jack/gstjackbin.c: (gst_jack_bin_class_init): * ext/lcs/gstcolorspace.c: (gst_colorspace_class_init): * ext/libfame/gstlibfame.c: (gst_fameenc_class_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_class_init): * ext/nas/nassink.c: (gst_nassink_class_init): * ext/shout/gstshout.c: (gst_icecastsend_class_init): * ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init): * ext/sndfile/gstsf.c: (gst_sf_class_init): * ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init), (gst_swfdec_class_init): * ext/tarkin/gsttarkindec.c: (gst_tarkindec_class_init): * ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_class_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_class_init): * gst/chart/gstchart.c: (gst_chart_class_init): * gst/colorspace/gstcolorspace.c: (gst_colorspace_class_init): * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init): * gst/festival/gstfestival.c: (gst_festival_class_init): * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init): * gst/filter/gstiir.c: (gst_iir_class_init): * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init): * gst/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init): * gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_class_init): * gst/mpeg1sys/gstmpeg1systemencode.c: (gst_system_encode_class_init): * gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_class_init): * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_class_init): * gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_class_init): * gst/overlay/gstoverlay.c: (gst_overlay_class_init): * gst/passthrough/gstpassthrough.c: (passthrough_class_init): * gst/playondemand/gstplayondemand.c: (play_on_demand_class_init): * gst/rtjpeg/gstrtjpegdec.c: (gst_rtjpegdec_class_init): * gst/rtjpeg/gstrtjpegenc.c: (gst_rtjpegenc_class_init): * gst/smooth/gstsmooth.c: (gst_smooth_class_init): * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init): * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init): * gst/stereo/gststereo.c: (gst_stereo_class_init): * gst/switch/gstswitch.c: (gst_switch_class_init): * gst/tta/gstttadec.c: (gst_tta_dec_class_init): * gst/tta/gstttaparse.c: (gst_tta_parse_class_init): * gst/vbidec/gstvbidec.c: (gst_vbidec_class_init): * gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init): * gst/virtualdub/gstxsharpen.c: (gst_xsharpen_class_init): * gst/y4m/gsty4mencode.c: (gst_y4mencode_class_init): * sys/cdrom/gstcdplayer.c: (cdplayer_class_init): * sys/directsound/gstdirectsoundsink.c: (gst_directsoundsink_class_init): * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_class_init): * sys/dxr3/dxr3spusink.c: (dxr3spusink_class_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_class_init): * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_class_init): * sys/v4l2/gstv4l2colorbalance.c: (gst_v4l2_color_balance_channel_class_init): * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_channel_class_init), (gst_v4l2_tuner_norm_class_init): * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init): Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) 2006-04-08 19:04:01 +0000 Stefan Kost [MOVED FROM BAD 24/68] gst/: Fix more broken GObject macros Original commit message from CVS: * gst/colorspace/gstcolorspace.h: * gst/deinterlace/gstdeinterlace.h: * gst/passthrough/gstpassthrough.h: * gst/y4m/gsty4mencode.h: Fix more broken GObject macros 2006-04-01 10:09:11 +0000 Thomas Vander Stichele * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 23/68] rework build; add translations for v4l2 Original commit message from CVS: rework build; add translations for v4l2 2005-12-06 19:55:58 +0000 Thomas Vander Stichele * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: [MOVED FROM BAD 22/68] expand tabs Original commit message from CVS: expand tabs 2005-12-05 13:04:22 +0000 Andy Wingo [MOVED FROM BAD 21/68] Update for alloc_buffer changes. Original commit message from CVS: 2005-12-05 Andy Wingo * ext/faac/gstfaac.c: (gst_faac_sink_event), (gst_faac_chain): * ext/faad/gstfaad.c: (gst_faad_chain): * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_chain): * ext/lcs/gstcolorspace.c: (gst_colorspace_chain): * ext/xine/xineinput.c: (gst_xine_input_get): * gst/colorspace/gstcolorspace.c: (gst_colorspace_chain): * gst/speed/gstspeed.c: (speed_chain): * gst/videocrop/gstvideocrop.c: (gst_video_crop_chain): Update for alloc_buffer changes. 2005-09-05 17:20:29 +0000 Jan Schmidt * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 20/68] Fix up all the state change functions. Original commit message from CVS: Fix up all the state change functions. 2005-08-14 16:21:00 +0000 Thomas Vander Stichele * gst/colorspace/Makefile.am: * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 19/68] pound some sense in the colorspace elements Original commit message from CVS: pound some sense in the colorspace elements 2005-07-05 10:51:49 +0000 Andy Wingo [MOVED FROM BAD 18/68] Way, way, way too many files: Remove crack comment from the 2000 era. Original commit message from CVS: 2005-07-05 Andy Wingo * Way, way, way too many files: Remove crack comment from the 2000 era. 2004-07-27 21:41:30 +0000 Steve Lhomme * gst/colorspace/colorspace.vcproj: [MOVED FROM BAD 17/68] more working plugins Original commit message from CVS: more working plugins 2004-07-27 09:57:33 +0000 Steve Lhomme * gst/colorspace/colorspace.vcproj: [MOVED FROM BAD 16/68] rename GStreamer-0.8.lib to libgstreamer.lib Original commit message from CVS: rename GStreamer-0.8.lib to libgstreamer.lib 2004-07-27 09:48:51 +0000 Steve Lhomme * gst/colorspace/colorspace.vcproj: [MOVED FROM BAD 15/68] avoid problems with math.h, fix release dependancy Original commit message from CVS: avoid problems with math.h, fix release dependancy 2004-07-26 22:11:21 +0000 Steve Lhomme * gst/colorspace/gstcolorspace.c: * gst/colorspace/yuv2rgb.h: [MOVED FROM BAD 14/68] local include fixes Original commit message from CVS: local include fixes Fix some 64 bits constants to be glib friendly issue for a vararg macro with MSVC 2004-07-26 13:20:11 +0000 Steve Lhomme * gst/colorspace/colorspace.vcproj: [MOVED FROM BAD 13/68] more plugins supported under windows Original commit message from CVS: more plugins supported under windows 2004-05-21 22:39:30 +0000 Stéphane Loeuillet * gst/colorspace/gstcolorspace.c: [MOVED FROM BAD 12/68] first batch : remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc Original commit message from CVS: first batch : remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc 2004-04-22 03:52:52 +0000 Benjamin Otte [MOVED FROM BAD 11/68] s/gst_caps_simplify/gst_caps_do_simplify/ Original commit message from CVS: * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_caps_remove_format_info): * gst/colorspace/gstcolorspace.c: (gst_colorspace_caps_remove_format_info): * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcolorspace_caps_remove_format_info): s/gst_caps_simplify/gst_caps_do_simplify/ 2004-04-09 00:01:44 +0000 David Schleef [MOVED FROM BAD 10/68] gst/colorspace/gstcolorspace.c: Don't advertise a conversion we don't support (bug #139532) Original commit message from CVS: * gst/colorspace/gstcolorspace.c: Don't advertise a conversion we don't support (bug #139532) 2004-03-30 07:07:46 +0000 David Schleef [MOVED FROM BAD 09/68] ext/hermes/gsthermescolorspace.c: decrease rank by 2 to not interfere with other colorspaces. Original commit message from CVS: * ext/hermes/gsthermescolorspace.c: (plugin_init): decrease rank by 2 to not interfere with other colorspaces. * ext/pango/gsttextoverlay.c: (plugin_init): change rank to NONE * gst/colorspace/gstcolorspace.c: (plugin_init): decrease rank by one to not interfere with ffmpeg_colorspace. 2004-03-15 19:32:27 +0000 Thomas Vander Stichele * gst/colorspace/gstcolorspace.c: * gst/colorspace/yuv2rgb.c: [MOVED FROM BAD 08/68] don't mix tabs and spaces Original commit message from CVS: don't mix tabs and spaces 2004-03-15 16:32:54 +0000 Johan Dahlin [MOVED FROM BAD 07/68] *.h: Revert indenting Original commit message from CVS: * *.h: Revert indenting 2004-03-14 22:34:33 +0000 Thomas Vander Stichele * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: [MOVED FROM BAD 06/68] gst-indent Original commit message from CVS: gst-indent 2004-03-13 00:19:26 +0000 David Schleef [MOVED FROM BAD 05/68] configure.ac: the Hermes library controls hermescolorspace, not colorspace. Original commit message from CVS: * configure.ac: the Hermes library controls hermescolorspace, not colorspace. * ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_base_init), (gst_mpeg2dec_init): minor pet peeve: disable code with #ifdef, not /* */ * ext/sdl/sdlvideosink.c: Change XID to unsigned long. * ext/sdl/sdlvideosink.h: ditto. * gst/colorspace/gstcolorspace.c: Fix old comments about Hermes 2004-01-18 19:02:33 +0000 Christian Schaller * gst/colorspace/Makefile.am: [MOVED FROM BAD 04/68] fix to make it possible to build from disted tarball Original commit message from CVS: fix to make it possible to build from disted tarball 2004-01-16 00:55:29 +0000 David Schleef [MOVED FROM BAD 03/68] gst-libs/gst/audio/Makefile.am: Add gstaudiofiltertemplate.c and building of gstaudiofilterexample.c from the template. Original commit message from CVS: * gst-libs/gst/audio/Makefile.am: Add gstaudiofiltertemplate.c and building of gstaudiofilterexample.c from the template. * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: Add bytes_per_sample and size and n_samples calculation. * gst-libs/gst/audio/gstaudiofilterexample.c: Remove, now autogenerated. * gst-libs/gst/audio/gstaudiofiltertemplate.c: Moved from gstaudiofilterexample, object name changed, code added so that it actually works. * gst-libs/gst/audio/make_filter: Script to build an audiofilter subclass from the template. * gst/colorspace/Makefile.am: * gst/colorspace/yuv2yuv.c: Remove file, since it's GPL, and we don't use it. 2004-01-15 10:45:55 +0000 Ronald S. Bultje [MOVED FROM BAD 02/68] gst/colorspace/: Fix compiling... Didn't test if it actually works. Original commit message from CVS: 2004-01-15 Ronald Bultje * gst/colorspace/gstcolorspace.c: * gst/colorspace/yuv2yuv.c: (gst_colorspace_yuy2_to_i420), (gst_colorspace_i420_to_yv12): Fix compiling... Didn't test if it actually works. 2004-01-15 08:58:22 +0000 David Schleef [MOVED FROM BAD 01/68] Duplicate the ext/hermes colorspace plugin, and remove Hermes code and GPL code. Fix for new caps negotiation. Rewr... Original commit message from CVS: * configure.ac: * gst/colorspace/Makefile.am: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: Duplicate the ext/hermes colorspace plugin, and remove Hermes code and GPL code. Fix for new caps negotiation. Rewrite much of the format handling code, and some of the conversion code. Basically, rewrote almost everything. This element handles I420, YV12 to RGB conversions. * ext/hermes/Makefile.am: * ext/hermes/gsthermescolorspace.c: Rename colorspace to hermescolorspace. Fix negotiation issues. Remove non-Hermes related code. This element handles lots of RGB to RGB conversions, but no YUV. * ext/hermes/gstcolorspace.c: * ext/hermes/gstcolorspace.h: * ext/hermes/rgb2yuv.c: * ext/hermes/yuv2rgb.c: * ext/hermes/yuv2rgb.h: * ext/hermes/yuv2rgb_mmx16.s: * ext/hermes/yuv2yuv.c: * ext/hermes/yuv2yuv.h: Remove old code. 2011-06-15 15:08:32 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add gobject introspection files to spec 2011-06-15 16:06:36 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: android/aacparse.mk android/amrparse.mk android/h264parse.mk android/metadata.mk android/qtmux.mk android/sdpelem.mk configure.ac gst/qtmux/gstqtmux.c win32/common/config.h 2011-06-15 14:53:56 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: remove old v4l plugin from spec file 2011-06-15 14:49:41 +0100 Christian Fredrik Kalager Schaller * tests/examples/Makefile.am: Add missing dist subdir 2011-06-15 14:21:30 +0100 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: audio: link test program against libgstaudio 2011-06-15 13:01:34 +0200 Wim Taymans * tests/examples/seek/seek.c: seek: cleanup and use playbin after rename Remove the static pipelines and other unused things Use playbin 2011-06-15 12:48:04 +0200 Wim Taymans * docs/design/draft-media-types.txt: docs: add more media type 2011-06-15 00:52:47 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/inspect/plugin-gnomevfs.xml: * ext/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/gnomevfs/gstgnomevfs.c: * ext/gnomevfs/gstgnomevfs.h: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssink.h: * ext/gnomevfs/gstgnomevfssrc.c: * ext/gnomevfs/gstgnomevfssrc.h: * ext/gnomevfs/gstgnomevfsuri.c: * ext/gnomevfs/gstgnomevfsuri.h: * gst-libs/gst/pbutils/descriptions.c: * gst-plugins-base.spec.in: * po/POTFILES.in: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/gnomevfssink.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/icles/playback/decodetest.c: gnomevfs: remove GnomeVFS plugin The gio plugin replaces it. 2011-06-15 00:35:58 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: * tests/check/elements/playbin-compressed.c: * tests/check/elements/playbin.c: * tests/check/elements/playbin2.c: tests: fix up unit tests for playbin2/decodebin2 renames and updates Even if they don't work yet. 2011-06-15 00:32:23 +0100 Tim-Philipp Müller * docs/design/design-decodebin.txt: * gst/playback/gstdecodebin2.c: * gst/playback/gstplay-marshal.list: * gst/playback/gsturidecodebin.c: uridecodebin, decodebin: remove new-decoded-pad and removed-decoded-pad signals They were deprecated, use "pad-added" and "pad-removed" instead. 2011-06-15 00:06:09 +0100 Tim-Philipp Müller * gst/playback/gstplaybin2.c: * gst/playback/gststreamsynchronizer.c: playback: rename playbin2 to playbin But keep source file name as-is for now. 2011-06-15 00:02:13 +0100 Tim-Philipp Müller * gst/playback/Makefile.am: * gst/playback/gstdecodebin2.c: * gst/playback/gstplayback.c: * gst/playback/gstplayback.h: * gst/playback/gsturidecodebin.c: playback: merge playbin and decodebin plugins into one single playback plugin again 2011-06-14 23:51:29 +0100 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: decodebin2: rename decodebin2 to decodebin But don't rename source file for now, which hopefully makes merging from master easier. 2011-06-14 23:42:27 +0100 Tim-Philipp Müller * gst/playback/Makefile.am: * gst/playback/README: * gst/playback/gstdecodebin.c: * gst/playback/gstplayback.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: * gst/playback/gststreaminfo.c: * gst/playback/gststreaminfo.h: playback: remove old playbin and decodebin elements 2011-06-15 01:55:31 +0530 Debarshi Ray * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst/tcp/gsttcpclientsink.c: Remove unused but set variables This is needed to satisfy the new -Wunused-but-set-variable added in GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html 2011-06-14 18:25:47 +0200 Wim Taymans * docs/design/draft-media-types.txt: docs: add beginnings of new media types design doc Start with new video media types and properties 2011-06-14 15:20:37 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-06-14 10:31:18 +0530 Debarshi Ray * gst-libs/gst/pbutils/codec-utils.c: codec-utils: restore 7350 as a valid sampling frequency for AAC This was lost during c77f88cac675a1dbb89e40da8e3c28320523bfca. 2011-06-09 18:30:33 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: libs: replace G_CONST_RETURN with 'const' G_CONST_RETURN will be deprecated soon. https://bugzilla.gnome.org/show_bug.cgi?id=652211 2011-05-31 22:14:09 -0700 David Schleef * gst/audioresample/resample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/videoscale/vs_4tap.c: * gst/videotestsrc/generate_sine_table.c: * gst/videotestsrc/videotestsrc.c: * tests/icles/test-xoverlay.c: convert M_PI to G_PI, for msvc 2011-06-06 14:41:41 +0200 Mark Nauwelaerts * gst-libs/gst/tag/gsttagdemux.c: tagdemux: no input data implies no type can be found ... and posting a proper error message to this effect is appropriately informative and prevents auto-plugging otherwise stalling. 2011-06-04 13:36:55 -0700 David Schleef * gst/adder/gstadder.c: adder: Work around changes in g_atomic API See #651514 for details. 2011-05-31 20:38:56 -0700 David Schleef * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix c99-ism 2011-05-23 16:02:34 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Try to typefind even if conversion to UTF8 failed Fixes bug #600043. 2011-05-23 15:51:14 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Interprete typefind strings passed to GRegex as raw bytes instead of valid UTF8 2011-05-20 10:48:39 +0300 Stefan Kost * gst-libs/gst/tag/lang.c: lang: fix possible array overrun We where checking for i * gst-libs/gst/pbutils/codec-utils.c: codec-utils: restore 7350 as a valid sampling frequency for AAC This was lost during c77f88cac675a1dbb89e40da8e3c28320523bfca. 2011-06-13 19:09:05 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-06-13 16:32:56 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstxmptag.c: * gst/gdp/gstgdppay.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: -base: update for buffer API change 2011-06-13 16:28:58 +0200 Wim Taymans * gst-libs/gst/rtp/gstbasertppayload.h: basertppayload: cleanup header 2011-06-13 12:15:33 +0200 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: use _check_reconfigure method 2011-06-13 12:09:34 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: use baseclass allocator negotiation logic Let the baseclass implement the negotiation of the allocators. Influence the allocator buffersize. Use the fill vmethod to fill the buffer with data. 2011-06-11 20:47:01 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximage: fix alignment and size Set the right alignment and size in the bufferpool. 2011-06-11 18:54:44 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: update for bufferpool api change 2011-05-31 22:14:09 -0700 David Schleef * gst/audioresample/resample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/videoscale/vs_4tap.c: * gst/videotestsrc/generate_sine_table.c: * gst/videotestsrc/videotestsrc.c: * tests/icles/test-xoverlay.c: convert M_PI to G_PI, for msvc 2011-06-07 21:30:18 -0700 David Schleef * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: refactor how EOS is determined This decreases the number of buffers held on each pad by one, eliminating next_buffer. Simplifies the logic by relying solely on CollectPads to let us know when a pad is in EOS. As a side benefit, the collect pads related code is structured more like other CollectPad users. The previous code would occasionally mark the wrong pad as EOS, causing the code to get in a state where all the streams were finished, but EOS hadn't been sent to the source pad. 2011-06-10 18:04:29 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: update for alignment change 2011-06-10 17:58:48 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: small cleanups 2011-06-10 17:58:26 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: fix for alignment value change 2011-06-10 12:14:57 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: tests/examples/audio/Makefile.am tests/examples/v4l/Makefile.am 2011-06-10 11:59:53 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: * gst/adder/gstadder.c: * gst/encoding/gstsmartencoder.c: -base: fix for flush_stop event API change 2011-06-09 18:30:33 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: libs: replace G_CONST_RETURN with 'const' G_CONST_RETURN will be deprecated soon. https://bugzilla.gnome.org/show_bug.cgi?id=652211 2011-06-09 00:02:07 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Fix LocationShown syntax According to the specification, the LocationShown requires its struct fields to be inside a Bag type. 2011-06-09 11:52:32 +0200 Wim Taymans * ext/libvisual/visual.c: visual: small improvements 2011-06-08 14:21:40 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Add room for extra namespace definitions Adds an extra field to the namespace definitions of the schemas so they can add the namespace of any array/struct fields they might use internally. 2011-06-08 13:43:28 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: playback: changes for message API changes 2011-06-08 12:21:43 +0100 Tim-Philipp Müller * ext/pango/Makefile.am: * gst/audioresample/Makefile.am: * tests/check/Makefile.am: * tests/examples/v4l/Makefile.am: GST_PLUGINS_BASE_LIBS is not defined in -base. 2011-06-08 11:33:07 +0200 Christophe Fergeau * tests/examples/audio/Makefile.am: examples: don't link testchannels example with system libgstaudio The testchannels audio test program is using -lgstaudio-0.10 to link with libgstaudio which won't use the gstaudio library that was just built but the one from the system. This is an issue since it means we won't be testing the code from the current source tree, and it also breaks the build when building on a system which don't have a libgstaudio yet. https://bugzilla.gnome.org/show_bug.cgi?id=652100 2011-06-08 11:11:05 +0100 Tim-Philipp Müller * docs/design/design-decodebin.txt: docs: add some text about parser/decoder autoplugging issues 2011-06-07 20:43:24 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/inspect/plugin-video4linux.xml: * gst-plugins-base.spec.in: * gst/videorate/gstvideorate.c: * po/POTFILES.in: * sys/Makefile.am: * sys/v4l/.gitignore: * sys/v4l/Makefile.am: * sys/v4l/README: * sys/v4l/TODO: * sys/v4l/gstv4l.c: * sys/v4l/gstv4lcolorbalance.c: * sys/v4l/gstv4lcolorbalance.h: * sys/v4l/gstv4lelement.c: * sys/v4l/gstv4lelement.h: * sys/v4l/gstv4ljpegsrc.c: * sys/v4l/gstv4ljpegsrc.h: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsink.h: * sys/v4l/gstv4lmjpegsrc.c: * sys/v4l/gstv4lmjpegsrc.h: * sys/v4l/gstv4lsrc.c: * sys/v4l/gstv4lsrc.h: * sys/v4l/gstv4ltuner.c: * sys/v4l/gstv4ltuner.h: * sys/v4l/gstv4lxoverlay.c: * sys/v4l/gstv4lxoverlay.h: * sys/v4l/v4l_calls.c: * sys/v4l/v4l_calls.h: * sys/v4l/v4lmjpegsink_calls.c: * sys/v4l/v4lmjpegsink_calls.h: * sys/v4l/v4lmjpegsrc_calls.c: * sys/v4l/v4lmjpegsrc_calls.h: * sys/v4l/v4lsrc_calls.c: * sys/v4l/v4lsrc_calls.h: * sys/v4l/videodev_mjpeg.h: * tests/examples/Makefile.am: * tests/examples/v4l/.gitignore: * tests/examples/v4l/Makefile.am: * tests/examples/v4l/probe.c: Remove v4l plugin The old v4l interface has been deprecated for years and even been removed from the kernel headers. If anyone still needs this plugin, they can resurrect it in gst-plugins-bad, there's no reason for it to be in -base. 2011-06-07 16:18:40 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: use new memory alloc API 2011-06-07 12:06:22 +0200 Wim Taymans * ext/libvisual/visual.c: * gst-libs/gst/rtp/gstbasertppayload.c: event: fix some event leaks 2011-06-07 11:55:36 +0200 Wim Taymans * ext/ogg/gstoggaviparse.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/vorbis/gstvorbisenc.c: * gst/videorate/gstvideorate.c: -base: use caps event Remove uses of setcaps function and use the caps event. 2011-06-07 10:58:27 +0200 Wim Taymans * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/subparse/gstssaparse.c: -base: use caps event instead of setcapsfunction 2011-06-06 16:27:12 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/theora/gsttheoraenc.c 2011-06-06 12:03:50 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: remove deprecated peer-alloc property Remove the peer-alloc property, it's not used anymore because pad-alloc is gone. 2011-06-06 14:30:03 +0100 Tim-Philipp Müller * configure.ac: configure: also define GST_DISABLE_XML for now to fix subparse build 2011-06-06 14:41:41 +0200 Mark Nauwelaerts * gst-libs/gst/tag/gsttagdemux.c: tagdemux: no input data implies no type can be found ... and posting a proper error message to this effect is appropriately informative and prevents auto-plugging otherwise stalling. 2011-06-06 12:48:23 +0200 Mark Nauwelaerts * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: determine granulepos metadata using stream mapper whenever possible ... which unfortunately is not the case for all types, but at least so for most common ones. 2011-06-06 12:46:05 +0200 Mark Nauwelaerts * ext/ogg/gstoggmux.c: oggmux: convert incoming buffer timestamp to running time ... so all subsequent manipulation can take place in the proper timeline without further ado. 2011-06-01 20:48:44 +0200 Mark Nauwelaerts * ext/ogg/gstoggmux.c: oggmux: remove superfluous code ... since there is nothing in oggstream that cares (or even should) about granulepos for what is being asked from it. 2011-06-05 23:47:37 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for removed translatable strings 2011-06-05 23:47:58 +0100 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: fix indentation 2011-06-05 23:44:47 +0100 Tim-Philipp Müller * configure.ac: configure: define USE_XML conditional used by subparse as FALSE for now The subparse plugin needs to be split and/or moved to ext/ for the libxml2 dependency. The media type needs to be format-specific instead of a catch-all format. Maybe add a base class or line-based adapter. 2011-06-04 13:36:55 -0700 David Schleef * gst/adder/gstadder.c: adder: Work around changes in g_atomic API See #651514 for details. 2011-05-31 20:38:56 -0700 David Schleef * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: fix c99-ism 2011-06-03 16:29:00 +0200 Luis de Bethencourt * ext/theora/gsttheoraenc.c: theora: separate encode and push block in chain, into own function. 2011-06-03 19:10:33 +0200 Edward Hervey * tests/check/elements/vorbistag.c: check/vorbistag: Convert to new probe API 2011-06-03 19:07:44 +0200 Edward Hervey * tests/check/pipelines/vorbisenc.c: check/vorbisenc: Convert to new probe API 2011-06-03 19:00:23 +0200 Edward Hervey * tests/check/pipelines/oggmux.c: check/oggmux: Convert to new probe API 2011-06-03 15:51:08 +0200 Edward Hervey * tests/check/elements/playbin2.c: check/playbin2: Update for caps and structure API changes 2011-06-03 12:19:49 +0200 Edward Hervey * tests/check/elements/gnomevfssink.c: check: Use new gst_event_new_segment() API 2011-06-03 11:48:43 +0200 Edward Hervey * tests/examples/audio/Makefile.am: examples: Link against proper libgstaudio It was previously attempting to link against the non-local one. 2011-06-03 19:00:39 +0200 Edward Hervey * ext/ogg/gstoggmux.c: oggmux: Use the GstPad (and not the GstOggPadData for GstPad functions For those willing, renaming that 'pad' variable to something more obvious would be nice to avoid such bugs... 2011-06-03 13:35:49 +0200 Wim Taymans * ext/theora/gsttheoraenc.c: thoeraenc: port to 0.11 2011-06-03 13:31:42 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/theora/gsttheoraenc.c 2011-06-03 13:16:09 +0200 Wim Taymans * gst/typefind/gsttypefindfunctions.c: typefind: fix after merge 2011-06-03 13:12:31 +0200 Wim Taymans * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: playback: fix compilation after ghostpad setcaps removal 2011-06-02 19:08:41 +0200 Luis de Bethencourt * ext/theora/gsttheoraenc.c: theora: use fixed src cap pads 2011-06-02 18:57:05 +0200 Luis de Bethencourt * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theora: set the width/height/par on the srcpad caps 2011-06-02 17:29:53 +0200 Luis de Bethencourt * ext/theora/gsttheoraenc.c: theora: get sink caps info from downstream element pad https://bugzilla.gnome.org/show_bug.cgi?id=651564 2011-06-02 19:26:33 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-06-02 19:21:24 +0200 Wim Taymans * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: basertp: use caps event instead of setcaps function Use the caps event instead of the setcaps function to configure caps. Use a default event handler for the base rtp payloader instead of the awkward way of handling the return value. 2011-05-27 14:41:39 -0700 Patrick McCarty * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for wbmp images. https://bugzilla.gnome.org/show_bug.cgi?id=651294 2011-06-02 00:55:41 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: add typefinder for WAP WBMP bitmaps https://bugzilla.gnome.org/show_bug.cgi?id=651294 2011-06-02 12:21:28 +0200 Wim Taymans * gst-libs/gst/video/video.h: video: fix header after merge 2011-06-02 12:18:13 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/video/video.h gst/playback/gstplaysinkaudioconvert.c gst/playback/gstplaysinkvideoconvert.c tests/check/libs/rtp.c 2011-06-02 12:12:04 +0200 Wim Taymans * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playsinconvert: clear the probe id when removing 2011-06-02 12:08:22 +0200 Wim Taymans * gst/playback/gstplaysink.c: playsink: refactor block/unblock code a little 2011-06-02 11:53:10 +0200 Sebastian Dröge * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playsink: Fix deadlock in the audio/video converter bins when linking fails 2011-06-01 19:34:54 +0200 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: * gst/playback/gststreaminfo.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: * gst/playback/gsturidecodebin.c: * tests/icles/audio-trickplay.c: probes: port to new API for blocking and probes 2011-06-01 17:31:35 +0200 Edward Hervey * tests/check/Makefile.am: check: ... and don't forget to add the new arm header Forgot it in my previous commit 2011-06-01 17:24:30 +0200 Edward Hervey * tests/check/libs/libsabi.c: * tests/check/libs/struct_arm.h: libsabi: Add structure sizes for arm 2011-05-31 19:57:57 -0700 David Schleef * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts32.c: fft: s/M_PI/G_PI/ for MSVC 2011-05-31 11:05:03 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: * tests/check/elements/volume.c: volume: Fix handling of volume>=4.0 for 8 and 16 bit integer formats Also add a unit test for this. Previously volumes bigger than 4.0 would have resulted in overflows in the fixed point processing. Fixes bug #649642. 2011-05-30 18:36:14 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: playbin: fixed for new pad block API 2011-05-30 17:14:48 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: activate pad before pushing things Activate the pad before pushing things on it or else we get errors. 2011-05-29 13:32:04 +0100 Tim-Philipp Müller * tests/check/elements/adder.c: * tests/check/elements/ffmpegcolorspace.c: * tests/check/elements/vorbistag.c: * tests/check/libs/rtp.c: * tests/check/pipelines/theoraenc.c: tests: fix some more unused-but-set-variable warnings with gcc 4.6 2011-05-28 16:14:23 +0100 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: update .def file for new API 2011-05-28 12:39:06 +0100 Tim-Philipp Müller * Makefile.am: * tests/check/elements/.gitignore: Ignore new playbin2-compress test binary And add old testchannels binary to CRUFT_FILES. 2011-05-27 23:31:27 +0100 Tim-Philipp Müller * gst-libs/gst/video/video.h: video: sprinkle some G_GNUC_CONST Mark functions that have no effect besides their return value and only inspect their input arguments with G_GNUC_CONST. (We just ignore the g_return_val_if_fail() guards for this) 2011-05-27 23:25:00 +0100 Tim-Philipp Müller * gst-libs/gst/video/video.h: video: clean up header file Sprinkle some spaces and newlines here and there. 2011-05-27 14:30:19 +0200 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: Optimize transform_caps() If the second and next caps structures are a subset of the already existing transformed caps we can safely skip them because we would transform them to the same caps again. 2011-05-27 14:28:46 +0200 Sebastian Dröge * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Optimize transform_caps() If the second and next caps structures are a subset of the already existing transformed caps we can safely skip them because we would transform them to the same caps again. 2011-05-27 14:20:08 +0200 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Optimize transform_caps() If the second and next caps structures are a subset of the already existing transformed caps we can safely skip them because we would transform them to the same caps again. 2011-05-27 14:10:50 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Use new gst_caps_is_subset_structure() API This prevents one copy of every structure and creating a new caps instance. 2011-05-27 15:03:19 +0300 Stefan Kost * configure.ac: * gst-libs/gst/audio/.gitignore: * gst-libs/gst/audio/Makefile.am: * tests/examples/Makefile.am: * tests/examples/audio/.gitignore: * tests/examples/audio/Makefile.am: * tests/examples/audio/testchannels.c: audio: move testchannels example to 'tests/examples' dir Also fix it up a little to not include 'c' file but link to the libs instead. 2011-05-27 13:58:41 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2011-05-27 13:13:42 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Optimize transform_caps() If the second and next caps structures are a subset of the already existing transformed caps we can safely skip them because we would transform them to the same caps again. This makes gst_pad_get_caps() on an audiotestsrc ! audioconvert ! audioconvert ! audioconvert ! fakesink pipeline about 1.7 times faster. 2011-05-27 12:13:32 +0200 Sebastian Dröge * tests/check/elements/audioconvert.c: audioconvert: Fix audioconvert unit test to work again 2011-05-27 12:13:14 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/videoscale/gstvideoscale.c: gst: Update for the GstBaseTransform::transform_caps() changes 2011-05-27 11:39:21 +0300 Stefan Kost * gst-libs/gst/pbutils/codec-utils.c: code-utile: fix level descriptions for fgs fgs levels range from 8-13 and are mapped to 0-5. 2011-05-25 14:38:21 +0300 Stefan Kost * gst-libs/gst/pbutils/codec-utils.c: codec-utils: fix mpeg4 level verification The current condition would never be true. As levels<6 are asp and levels>7 and <14 are fgs, we should return NULL for cases 6,7,14,15. 2011-05-26 16:08:44 +0200 Wim Taymans * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstsubtitleoverlay.c: -base: change for changed set_blocked API 2011-05-26 13:47:24 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2011-05-26 12:33:08 +0200 Sebastian Dröge * sys/xvimage/xvimagesink.c: xvimagesink: Fallback to non-XShm mode if allocating the XShm image failed Fixes bug #630442. 2011-05-26 12:30:31 +0200 Sebastian Dröge * sys/ximage/ximagesink.c: ximagesink: Fallback to non-XShm mode if allocating the XShm image failed Fixes bug #630442. 2011-05-26 11:41:50 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Let the input-selectors sync all streams to the running time This is especially needed when switching between a non-sparse and sparse video stream, see bug #537382. It also lowers the time needed for switching between streams a bit. 2011-01-20 00:52:50 -0700 Lane Brooks * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: added 'outline-color' parameter to control whether text gets a shadow 2011-01-20 00:42:39 -0700 Lane Brooks * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: added 'shadow' option to control whether text gets a shadow 2011-05-26 10:48:05 +0200 Jindrich Makovicka * ext/pango/gsttextrender.c: textrender: Correctly negotiate with downstream instead of just using random caps Fixes bug #638897. 2011-05-26 10:43:51 +0200 Jindrich Makovicka * ext/pango/gsttextrender.c: textrender: Add bound checks to not write outside the image area 2011-05-26 10:42:46 +0200 Jindrich Makovicka * ext/pango/gsttextrender.c: textrender: Prevent double unref of caps if the caps can't be set on the srcpad 2011-05-26 10:31:11 +0200 Sebastian Dröge * ext/gnomevfs/gstgnomevfssrc.c: gnomevfssrc: Keep track of interruptions during read with a flag 2010-09-03 09:11:30 -0400 American Dynamics * ext/gnomevfs/gstgnomevfssrc.c: * ext/gnomevfs/gstgnomevfssrc.h: gnomevfssrc: Add support for cancelling the read operations This allows the state change from PAUSED to READY to be faster. Fixes bug #628337. 2011-05-25 14:14:46 +0300 Sreerenj Balachandran * sys/ximage/ximagesink.c: ximagesink: Remove g_assert from interface query 2011-05-25 14:08:43 +0300 Sreerenj Balachandran * sys/xvimage/xvimagesink.c: xvimagesink: Remove the g_assert from interface query 2011-05-26 00:17:40 +0300 Stefan Kost * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: add blue and violet noise by using spectral inversion Add blue and violet noise by spectral inversion of pink and red noise. Fixes #649969 2011-05-25 23:40:26 +0300 Stefan Kost * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: add red (brownian) noise generator Add another noise generator which produces a quite dark noise color. Fixes parts of #649969. 2010-09-27 13:32:31 +0400 Vladimir Eremeev * tests/examples/seek/seek.c: seek: set selected/default audio/video sinks on playbin and playbin2 https://bugzilla.gnome.org/show_bug.cgi?id=630322 2011-05-25 19:03:44 +0100 Tim-Philipp Müller * tests/examples/seek/seek.c: seek: add --audiosink and --videosink command line options 2011-05-25 18:50:34 +0100 Tim-Philipp Müller * tests/examples/seek/seek.c: seek: use the right GDK defines to differentiate between the backends 2011-05-25 18:45:33 +0100 Tim-Philipp Müller * tests/examples/seek/seek.c: seek: use gst_filename_to_uri() to convert a filename to a uri 2010-09-27 12:46:54 +0400 Vladimir Eremeev * tests/examples/seek/seek.c: seek: make seek example work in win32 https://bugzilla.gnome.org/show_bug.cgi?id=630322 2011-05-25 16:08:54 +0100 Tim-Philipp Müller * configure.ac: configure: update GLib requirement to >= 2.24 Same as core (make implicit requirement explicit). http://gstreamer.freedesktop.org/wiki/ReleasePlanning/GLibRequirement 2011-05-25 15:24:33 +0300 Stefan Kost * ext/theora/gsttheoraenc.c: theoraenc: remove bogus <0 check for unsigned var bytes_written is a gsize which is unsigned and thus never < 0. 2011-05-25 15:23:13 +0300 Stefan Kost * ext/theora/gsttheoraenc.c: theoraenc: fix variable type for bytes_consumed th_encode_ctl() returns an int. Using a gsize result in bogus <0 checks. 2011-05-25 15:04:20 +0300 Stefan Kost * gst-libs/gst/riff/riff-read.c: riff: remove the g_return_if_fail as we test it below We don't want to return without setting taglist=NULL if asserts are on and with setting taglist=NULL otherwise. 2011-05-25 14:28:18 +0300 Stefan Kost * gst/volume/gstvolume.c: volume: use a flag for 'mute' using the controller Previously we checked mute_csource to determine wheter we need to premultiply volumes and mute values. That fails as we unrefs mute_csource and set it to NULL after. Use an extra flag instead. 2011-05-25 14:12:50 +0300 Stefan Kost * gst-libs/gst/tag/gstexiftag.c: exiftag: reflow the code Move the warning on unsupported units to the swicth-case. Move fetching the pending tags down to where we use them. 2011-05-25 13:59:57 +0300 Stefan Kost * gst-libs/gst/tag/gstexiftag.c: exiftag: set value=1 if we found the token Otherwise we never write the tag. This would also be consistent with the code in deserialize_scene_type(). 2011-05-25 12:30:51 +0300 Stefan Kost * sys/xvimage/xvimagesink.c: xvimagesink: run gst-indent 2011-05-25 12:29:21 +0300 Stefan Kost * sys/xvimage/xvimagesink.c: xvimagesink: remove unneded !=NULL checks We check for matching_attr!=NULL right before already. 2011-05-24 18:21:06 +0200 Wim Taymans * gst-libs/gst/audio/mixerutils.c: * gst/encoding/gstencodebin.c: * gst/playback/gstplaybin2.c: * tests/check/elements/libvisual.c: feature: use object name instaed of feature name 2011-05-24 17:37:45 +0200 Wim Taymans * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiosrc.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/audiotestsrc/gstaudiotestsrc.c: scheduling: port to new scheduling query 2011-05-24 10:46:48 +0200 Wim Taymans * ext/theora/gsttheoradec.c: theoradec: handle reconfigure events Handle the caps with the caps event. Handle the reconfigure event and renegotiate the bufferpool when needed. 2011-05-24 09:55:47 +0200 Wim Taymans * gst-libs/gst/video/convertframe.c: convertframe: fix for merge conflict 2011-05-24 09:47:15 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/video/convertframe.c 2011-05-24 09:45:18 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x11: free bufferpool whe activation fails 2011-05-24 00:13:04 +0300 Stefan Kost * docs/libs/gst-plugins-base-libs-sections.txt: docs: massage the section file more Add more symbols (from unused.txt). Move the whole bunch of riff-fourcc defines to std section too (no one is hoing to document them, right). 2011-05-24 00:12:26 +0300 Stefan Kost * gst-libs/gst/video/video.c: docs: add missing parameter docs 2011-05-23 23:53:38 +0300 Stefan Kost * docs/libs/gst-plugins-base-libs-sections.txt: docs: move the riff structure to std-section If someone intents to document them and the fields we can move them back. 2011-05-23 23:53:06 +0300 Stefan Kost * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstpluginsbaseversion.c: docs: move pluginbaseversion to separate section as we have section docs 2011-05-23 23:51:15 +0300 Stefan Kost * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspdefs.h: docs: add minimal docblobs for status code and headers Use a trick to avoid documenting all 100 enums. 2011-05-23 23:41:56 +0300 Stefan Kost * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/interfaces/xoverlay.h: docs: update xoverlay docs for api addition and deprecation 2011-05-23 23:12:50 +0300 Stefan Kost * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: docs: rtp library docs update 2011-05-23 22:58:22 +0300 Stefan Kost * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/cdda/gstcddabasesrc.h: * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/colorbalancechannel.h: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/mixeroptions.h: * gst-libs/gst/interfaces/navigation.h: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideosink.h: docs: add missing documentation for various pieces 2010-02-19 12:54:18 +0100 Thijs Vermeir * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: recalibrate clock on setcaps Because the spec for the ringbuffer can change when changing the caps, we must recalibrate the clock. https://bugzilla.gnome.org/show_bug.cgi?id=610443 2011-05-23 16:02:34 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Try to typefind even if conversion to UTF8 failed Fixes bug #600043. 2011-05-23 16:02:20 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Compile the typefind regex with optimization to speed up matching 2011-05-23 15:51:14 +0200 Sebastian Dröge * gst/subparse/gstsubparse.c: subparse: Interprete typefind strings passed to GRegex as raw bytes instead of valid UTF8 2011-05-23 15:21:59 +0300 Stefan Kost * gst-libs/gst/video/convertframe.c: convertframe: fix docs Fixup paramter mismatch between func and prototype. Add missing parameter docs. 2011-05-23 15:08:24 +0300 Stefan Kost * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/multichannel.h: docs: fixup audio-library docs 2011-05-23 15:02:27 +0300 Stefan Kost * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst/app/gstapp.c: docs: fixup appsrc/sink api docs 2011-05-23 14:53:26 +0300 Stefan Kost * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioiec61937.h: docs: fix docs for new api Some parameters where wrong, first line missed the ':' and return docs where broken. 2011-05-23 14:45:23 +0300 Stefan Kost * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: docs: update xmp api docs Add missing section. Add new section to main-sgml. Add missing function. 2011-05-23 14:07:38 +0300 Stefan Kost * gst-libs/gst/tag/gstxmptag.c: xmptag: remove late check We deref the pointer two lines before already and besides this internal function should not be called with this parameter=NULL. 2011-05-23 14:01:29 +0300 Stefan Kost * gst-libs/gst/tag/gstxmptag.c: xmptag: have the default branch as the last one 2011-05-23 14:00:04 +0300 Stefan Kost * gst-libs/gst/tag/gstxmptag.c: xmptag: an uint value can't be <0 2011-05-23 13:53:06 +0300 Stefan Kost * gst-libs/gst/video/video.c: whitespace: trim trailing whitespace 2011-05-23 13:50:59 +0300 Stefan Kost * gst-libs/gst/video/video.c: video.c: use a break and a final warning instead of early returns Use breaks for case branches instead of return 0. We don't expect these to happen anyway. Thus have a warning before the final return to make it easier to see when things go out of sync. 2011-05-23 13:49:01 +0300 Stefan Kost * gst-libs/gst/video/video.c: video.c: use g_assert_not_reached() for logical error here. This will help to detect them closer to the source if they ever happen. 2011-05-20 12:50:39 +0200 Wim Taymans * gst/encoding/gstencodebin.c: encodebin: use new method Use the new element class method to get the metadata from an element. Not all elements might have an elementfactory. 2011-05-20 12:32:35 +0200 Sebastian Dröge * gst/encoding/gstencodebin.c: encodebin: Fix compilation after the removal of GstElementDetails 2011-05-20 12:26:57 +0200 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: docs/plugins/gst-plugins-base-plugins.hierarchy docs/plugins/gst-plugins-base-plugins.interfaces docs/plugins/gst-plugins-base-plugins.prerequisites 2011-05-20 10:48:39 +0300 Stefan Kost * gst-libs/gst/tag/lang.c: lang: fix possible array overrun We where checking for i * gst/audioconvert/gstaudioconvert.c: audioconvert: cleanup helper code make_lossless_changes() returns the same structure that we're passing (probably to enable chaining). Instead of reusing s and making it point to s2 as well, keep using s2. Drop the assignment which in the 2nd case is a dead one anyway. 2011-05-19 23:25:24 +0300 Stefan Kost * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: docs: update plugin introspection data Now more files are merged and produced in a canonical fashion, which hopefully creates less or no delta in the future. 2011-05-19 22:56:53 +0300 Stefan Kost * common: Automatic update of common submodule From 9e5bbd5 to 69b981f 2011-05-19 15:56:57 +0200 Wim Taymans * sys/ximage/ximagesink.c: ximagesink: implement ALLOCATION query 2011-05-19 15:55:53 +0200 Wim Taymans * sys/xvimage/xvimagesink.c: xvimagesink: improve allocation query If the allocation query contains the same caps as the current allocator, we can return that one instead of making a new one. 2011-05-19 13:40:29 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add new header file 2011-05-19 13:38:55 +0200 Wim Taymans * ext/libvisual/visual.c: visual: fix upstream renegotiation Fix a refcount problem. Handle reconfiguration requests. 2011-05-19 08:30:14 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Autoplug formatters Autoplug formatters for streams if a formatter with secondary or higher rank is found. Formatters are autoplugged when there is no muxer or when the muxer doesn't implement the tagsetter interface. Currently only the first formatter found is plugged, this might help in lots of cases, but it doesn't solve the 'lamemp3 ! xingmux ! id3mux' case. https://bugzilla.gnome.org/show_bug.cgi?id=649841 2011-05-19 08:27:29 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: fix typos 2011-05-19 12:42:46 +0200 Wim Taymans * ext/libvisual/visual.c: visual: improve negotiation Remove the setcaps function on the srcpad, we know exactly when we negotiate a new format now. Use a caps event to configure new caps. 2011-05-19 12:29:57 +0200 Wim Taymans * ext/vorbis/gstvorbisdec.c: vorbis: fix for new API 2011-05-19 11:31:53 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-05-18 22:07:58 +0200 Aleix Conchillo Flaque * ext/vorbis/gstvorbisdec.c: vorbisdec: Handle headers in caps 2011-05-18 17:23:18 +0200 Sebastian Dröge * ext/gio/gstgiobasesink.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/libvisual/visual.c: * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/audiorate/gstaudiorate.c: * gst/encoding/gstsmartencoder.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/subparse/gstsubparse.c: * gst/videorate/gstvideorate.c: base: Update for SEGMENT event parse API changes 2011-05-18 16:09:47 +0300 Stefan Kost * common: Automatic update of common submodule From fd35073 to 9e5bbd5 2011-05-18 13:18:15 +0200 Robert Swain * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: gstvideo: Add gst_video_get_size_from_caps function gst_video_get_size_from_caps () allows easy calculation of the raw video buffer size from some fixed video caps. API: gst_video_get_size_from_caps() 2011-05-18 12:24:02 +0300 Stefan Kost * common: Automatic update of common submodule From 46dfcea to fd35073 2011-05-18 09:34:52 +0200 Robert Swain * ext/alsa/gstalsasrc.c: alsa: Remove unused but set variable Unused but set variables cause warnings in GCC 4.6.x and newer. 2011-05-17 13:04:27 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: gst: Update for caps/pad template related API changes 2011-05-17 13:03:57 +0200 Sebastian Dröge * tests/check/elements/ffmpegcolorspace.c: * tests/check/elements/videoscale.c: * tests/check/elements/videotestsrc.c: tests: Update for caps/pad template related API changes 2011-05-17 13:01:39 +0200 Sebastian Dröge * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/libvisual/visual.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/vorbis/gstvorbisdec.c: ext: Update for caps/pad template related API changes 2011-05-17 12:54:41 +0200 Sebastian Dröge * sys/v4l/gstv4lmjpegsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: sys: Update for caps/pad template related API changes 2011-05-17 12:51:34 +0200 Sebastian Dröge * gst/encoding/gstencodebin.c: encodebin: Update for caps/pad template related API changes 2011-05-17 12:47:32 +0200 Sebastian Dröge * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: encoding-profile: Returns a new reference of caps everywhere instead of const caps 2011-05-17 12:29:24 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: audiofilter: gst_pad_template_new() does not take ownership of the caps anymore There's no need to copy the caps before passing them to that function. 2011-05-17 11:27:12 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2011-05-17 11:25:31 +0200 Sebastian Dröge * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstplaybin2.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstsubparse.c: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/v4l/gstv4lsrc.c: * sys/xvimage/xvimagesink.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/audio-trickplay.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: Revert "-base_port to new query API" This reverts commit c9f4e0676ba8c8074a50aa6d1d058f6da9a76b32. 2011-05-17 11:24:18 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: Revert "decodebin2: Update for GstQuery related API changes" This reverts commit 549128c2a3702a878c62f5603e097c8df7075f36. 2011-05-17 10:20:36 +0200 Edward Hervey * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Fix typo which broke the build 2011-05-17 09:31:01 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-05-16 15:35:50 +0200 Miguel Angel Cabrera Moya * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: not enter in not controllable state unless it is necessary When closing rtspsrc the state change blocks until the polling in the connection timeouts. This is because the second time we loop to read a full message controllable is set to FALSE in the poll group, even though no message is half read. This can be avoided by not setting controllable to FALSE the poll group unless we had begin to read a message. Fixes #610916 2011-05-16 15:35:50 +0200 Miguel Angel Cabrera Moya * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: not enter in not controllable state unless it is necessary When closing rtspsrc the state change blocks until the polling in the connection timeouts. This is because the second time we loop to read a full message controllable is set to FALSE in the poll group, even though no message is half read. This can be avoided by not setting controllable to FALSE the poll group unless we had begin to read a message. Fixes #610916 2010-05-30 13:21:00 +0100 Tim-Philipp Müller * ext/cdparanoia/gstcdparanoiasrc.c: * ext/cdparanoia/gstcdparanoiasrc.h: cdparanoiasrc: fix build on OSX by #undef-ing VERSION before including system headers On OSX the cdparanoia headers include IOKit framework headers (in particular SCSICmds_INQUIRY_Definitions.h) which define a structure that has a member named VERSION, so we must #undef VERSION before including those for things to compile on OSX. Fixes #609918. 2011-05-16 17:44:44 +0200 Sebastian Dröge * sys/v4l/gstv4lsrc.c: v4l: Make sure to return a subset of the filter caps in getcaps 2011-05-16 17:30:13 +0200 Wim Taymans * sys/v4l/gstv4lsrc.c: v4lsrc: fix for new getcaps function 2011-05-16 17:14:08 +0200 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Update for segment API changes 2011-05-16 17:13:14 +0200 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Update for GstQuery related API changes 2011-05-16 17:13:04 +0200 Sebastian Dröge * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkvideoconvert.c: playsink: Update for other 0.11 API changes 2011-05-16 17:08:45 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Use correct number of parameters to gst_pad_get_caps() 2011-05-16 17:06:22 +0200 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: configure.ac ext/alsa/gstalsasrc.c gst-libs/gst/audio/gstbaseaudiosink.c gst-libs/gst/tag/gstxmptag.c gst/playback/gstsubtitleoverlay.c gst/videorate/gstvideorate.c sys/xvimage/xvimagesink.c 2011-05-16 15:31:58 +0200 Sebastian Dröge * tests/examples/encoding/encoding.c: * tests/icles/playback/test.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: tests: Update for negotiation related API changes 2011-05-16 15:25:34 +0200 Sebastian Dröge * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: vorbis: Update for negotiation related API changes 2011-05-16 15:19:35 +0200 Sebastian Dröge * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: theora: Update for negotiation related API changes 2011-05-16 12:23:17 +0200 Sebastian Dröge * ext/pango/gstbasetextoverlay.c: textoverlay: Update for negotiation related API changes 2011-05-16 12:20:34 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: ogg: Update for negotiation related API changes 2011-05-16 12:18:03 +0200 Sebastian Dröge * ext/libvisual/visual.c: visual: Update for negotiation related API changes 2011-05-16 12:17:49 +0200 Sebastian Dröge * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Update for negotiation related API changes 2011-05-16 12:04:39 +0200 Sebastian Dröge * sys/xvimage/xvimagesink.c: xvimagesink: Update for negotiation related API changes 2011-05-16 12:01:14 +0200 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Update for negotiation related API changes 2011-05-16 11:37:39 +0200 Sebastian Dröge * gst/tcp/gsttcpclientsrc.c: tcpclientsrc: Update for negotation related API changes 2011-05-16 11:37:25 +0200 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Update for negotiation related API changes 2011-05-16 11:33:12 +0200 Sebastian Dröge * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: playback: Update for negotiation related API changes 2011-05-16 11:26:17 +0200 Sebastian Dröge * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Update for negotiation related API changes 2011-05-16 11:04:30 +0200 Sebastian Dröge * gst/encoding/gstencodebin.c: * gst/encoding/gstsmartencoder.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: encodebin: Update for negotiation related API changes 2011-05-16 10:56:11 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvert.c: audioconvert: Update for negotiation related API changes 2011-05-16 10:52:59 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Update for negotiation related API changes 2011-05-16 10:48:35 +0200 Sebastian Dröge * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Update for the new gst_pad_get_caps() signature 2011-05-16 10:47:02 +0200 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: appsink: Update for the negotiation related API changes 2011-05-16 10:44:18 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: basertppayload: Change ::get_caps to include the filter caps And improve downstream negotiation a bit by passing our proposed caps to the peer as a filter. 2011-05-11 17:39:52 +0200 Sebastian Dröge * sys/ximage/ximagesink.c: ximagesink: Update for negotiation related API changes 2011-05-11 17:39:06 +0200 Sebastian Dröge * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Update for negotiation related API changes 2011-05-16 12:02:48 +0200 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: Update for negotiation related API changes 2011-05-11 17:35:36 +0200 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: basetransform is now better at trying passthrough, remove workaround 2011-05-16 13:48:11 +0200 Wim Taymans * ext/gio/gstgiobasesink.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/libvisual/visual.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisenc.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/adder/gstadder.h: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstsmartencoder.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstplaybin2.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.c: -base: port to new SEGMENT API 2011-05-02 11:43:38 +0200 Mark Nauwelaerts * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: optionally ensure maximum average output frame rate See #628764. 2011-04-29 14:58:02 +0200 Alexey Fisher * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: optionally only drop frames to ensure maximum frame rate This adds option to arrange for maximal allowed variable frame rate. Fixes #628764. 2011-04-26 13:37:51 +0200 Mark Nauwelaerts * gst/playback/gsturidecodebin.c: uridecodebin: use bitrate to configure streaming buffer-duration default case In particular, in audio only cases whose (estimated) metadata provides bitrate information, the buffer-size based on such bitrate (and buffer-duration) will be much more reasonable than queue2 default buffer-size. 2011-04-26 11:27:40 +0200 Mark Nauwelaerts * gst/playback/gsturidecodebin.c: uridecodebin: remove some dead code ... which was dead as pads were never added to the list, and need not be added, since removing them is handled by a pad callback. 2011-04-29 11:48:02 -0300 Thiago Santos * tests/examples/encoding/Makefile.am: encodebin: examples: Add missing base libs to makefile 2011-04-28 10:58:15 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Check for missing converters Adds checks for missing video and audio converter elements 2011-04-27 22:05:55 -0300 Thiago Santos * gst-libs/gst/tag/xmpwriter.c: tag: xmpwriter: Rename documentation headers Fix some wrong documentation headers from the first name given to this interface. 2011-04-19 08:41:53 -0300 Thiago Santos * tests/check/libs/tag.c: tests: xmp: New tests for the Iptc4xmpExt tags 2011-04-18 23:28:13 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Add Iptc4xmpExt schema support Adds Iptc4xmpExt schema with country, city and sublocation tags mapped 2011-04-19 11:00:24 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Add support for reading struct tags Adds a context variable that controls if the parsing is on 'top level' tags or inside a struct tag. 2011-04-18 16:54:54 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Add struct xmp tag type support Adds support for writing the xmp struct tag type, it is a compound tag that has inner tags. 2011-04-18 23:16:59 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Fixing schema maps Do not forget to create a new schema for every supported schema instead of reusing the same object 2011-04-18 10:20:00 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Write the same tag to all schemas Instead of writing only the xmp tag for the first found entry that matches the gstreamer tag, look for all mappings to write the tag to different schemas. The rationale here is that some reader application might only be interested on a particular schema tags, so we should try to write as many tags for all schemas. 2011-05-15 13:39:18 +0200 Edward Hervey * win32/common/libgstaudio.def: win32: Update libgstaudio.def for new symbols 2011-05-14 17:27:30 +0530 Arun Raghavan * gst-libs/gst/audio/gstringbuffer.c: baseaudiosink: Use g_str_equal() instead of strncmp() The strncmp is unnecessary anyway since one of the strings is a const string. 2011-05-14 16:49:53 +0530 Arun Raghavan * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: Fix trivial indentation problems 2011-03-07 20:49:16 +0530 Arun Raghavan * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioiec61937.c: * gst-libs/gst/audio/gstaudioiec61937.h: audio: Add an IEC 61937 payloading library This can be used by sinks to take compressed formats, correctly payload these in IEC 61937 frames and feed these to sinks that support passthrough output over IEC 60958 (S/PDIF) or, in the case of MP3, over Bluetooth. Initial implementation includes AC3, E-AC3, MPEG-1, MPEG-2 (non-AAC), and DTS (type-I/II/II) payloading. More formats can be added as needed. API: gst_audio_iec61937_frame_size() API: gst_audio_iec61937_payload() https://bugzilla.gnome.org/show_bug.cgi?id=642730 2011-03-09 11:12:39 +0530 Arun Raghavan * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: baseaudiosink: Allow subclasses to provide payloaders This allows subclasses to provide a "payload" function to prepare buffers for consumption. The immediate use for this is for sinks that can handle compressed formats - parsers are directly connected to the sink, and for formats such as AC3, DTS, and MPEG, IEC 61937 patyloading might be used. API: GstBaseAudioSinkClass:payload() https://bugzilla.gnome.org/show_bug.cgi?id=642730 2011-04-09 09:49:10 +0530 Arun Raghavan * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: Add support for E-AC3 Adds support for pushing E-AC3 buffers and doing bytes-to-ms conversion correctly. The assumption (as with other formats) is that something like IEC 61937 payloading will be used. Correspondingly the ringbuffer spec is populated so that the data rate is 4x normal AC3. https://bugzilla.gnome.org/show_bug.cgi?id=642730 2011-03-14 15:51:40 +0530 Arun Raghavan * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: Add support for MPEG audio buffers 2011-03-14 15:49:57 +0530 Arun Raghavan * gst-libs/gst/audio/gstringbuffer.h: ringbuffer: Add AAC format types These are meant to be used for buffers containing AAC data. Nothing uses this yet, but for now it serves to distinguish from GST_BUFTYPE_MPEG which represents non-AAC MPEG audio. API: GST_BUFTYPE_MPEG2_AAC API: GST_BUFTYPE_MPEG4_AAC 2011-03-09 22:57:00 +0530 Arun Raghavan * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: Add support for DTS buffers 2011-05-14 11:42:50 +0200 Sebastian Dröge * configure.ac: configure: Require core 0.10.34.1 for the new ghostpad API 2011-05-09 22:20:23 +0200 Andoni Morales Alastruey * gst/playback/gstdecodebin2.c: decodebin2: fix preroll for streams at low bitrates For streams at low bitrates we need to set a limit in time because the limit in bytes might not reached too late, sometimes more than 30 seconds. This limit can only be set if upstream is seekable (see #584104) Closes #647769 2011-05-09 13:11:00 +0200 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Use new ghostpad/proxypad API to get the internal pad 2011-05-09 12:59:22 +0200 Sebastian Dröge * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: playsink: Use new ghostpad/proxypad API 2011-05-09 12:50:06 +0200 Sebastian Dröge * tests/check/elements/playbin2-compressed.c: playbin2: Disable some compressed stream tests that are racy without a stream-activate event 2011-03-29 19:15:27 +0200 Sebastian Dröge * tests/check/elements/playbin2-compressed.c: playbin2: Reset buffer counter in playbin2-compressed tests every time when going to READY 2011-03-25 08:26:00 +0100 Sebastian Dröge * gst/playback/Makefile.am: * gst/playback/gstplaysink.c: * gst/playback/gstplaysinkaudioconvert.c: * gst/playback/gstplaysinkaudioconvert.h: * gst/playback/gstplaysinkvideoconvert.c: * gst/playback/gstplaysinkvideoconvert.h: playsink: Add audio and video converter convenience bins These reconfigure based on the caps and plugin in converters if necessary. This also makes switching between compressed and raw streams work flawlessly without loosing the states of any element somewhere or having running time problems. 2011-03-15 12:51:04 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2/playsink: Decide if A/V caps are raw only inside playsink Before playbin2 would use different selectors for raw audio and compressed audio (and the same for video) and used different pads from playsink. This made the involved logic much more complex and was not implemented completely in playsink, which made it impossible to support files with a compressed and uncompressed stream that is support by the sink. playbin2 handles raw/non-raw streams the same now and the decision is left to playsink, which now can also handle caps changes from raw to non-raw and the other way around. Fixes bug #632788. 2011-03-15 11:41:14 +0100 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/playbin2-compressed.c: playbin2: Add unit test for compressed stream support in playbin2/playsink 2011-05-09 12:56:14 +0200 Sebastian Dröge * ext/alsa/gstalsasrc.c: alsasrc: Fix some compilation errors 2011-05-09 11:50:05 +0200 Pontus Oldberg * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: alsasrc: Improve timestamp accuracy Fixes bug #635256. 2011-05-06 17:01:53 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Use new, public ghostpad functions 2011-05-03 11:26:32 +0300 Sreerenj Balachandran * sys/xvimage/xvimagesink.c: xvimagesink: Use GST_BOILERPLATE 2011-05-14 09:41:58 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development === release 0.10.34 === 2011-05-14 01:00:38 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.34 2011-05-11 19:12:42 +0200 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/video/gstmetavideo.c: * sys/v4l/v4lsrc_calls.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: -base: remove metadata (des)serialize functions 2011-05-10 18:39:07 +0200 Wim Taymans * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstplaybin2.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstsubparse.c: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/v4l/gstv4lsrc.c: * sys/xvimage/xvimagesink.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/audio-trickplay.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: -base_port to new query API 2011-05-10 16:44:37 +0200 Wim Taymans * ext/ogg/gstoggmux.c: * gst/adder/gstadder.c: * gst/encoding/gstencodebin.c: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamsplitter.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: -base: fix for now request pad API 2011-05-10 15:43:08 +0200 Wim Taymans * gst-libs/gst/interfaces/navigation.c: navigation: use new query method names 2011-05-10 13:35:49 +0200 Wim Taymans * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst/playback/gstplaybin.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gsturidecodebin.c: * tests/examples/gio/giosrc-mounting.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: message: don't acces the structure directly === release 0.10.33 === 2011-05-10 09:32:11 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.33 Highlights: - support for 16-bit-per-component video formats - playbin2 fixes and improvements for custom and non-raw sinks - oggmux muxes based on running time now - many other fixes and improvements 2011-05-10 11:54:30 +0200 Wim Taymans * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: event: don't access the event structure the event structure is now hidden, so don't access it directly. 2011-05-09 18:53:03 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: * gst/playback/gststreamsynchronizer.c: qos: _qos_full -> _qos 2011-05-09 18:16:46 +0200 Wim Taymans * ext/gio/gstgiobasesink.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/libvisual/visual.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/adder/gstadder.c: * gst/audiorate/gstaudiorate.c: * gst/encoding/gstsmartencoder.c: * gst/gdp/gstgdppay.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/videorate/gstvideorate.c: segment: fix for new core API Fix for gst_*_segment_full rename. 2011-05-09 16:42:34 +0200 Wim Taymans * gst/audiorate/gstaudiorate.c: audiorate: abs_rate is removed from segment structure 2011-05-09 15:41:19 +0200 Wim Taymans * ext/libvisual/visual.c: visual: use the right pad 2011-05-09 15:37:46 +0200 Wim Taymans * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * ext/libvisual/visual.c: visual: use CAPS event to configure caps 2011-05-09 15:37:09 +0200 Wim Taymans * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisdec.c: theora/vorbis: use default pad handler Use the default pad event handler because we are not supposed to pass on CAPS events. 2011-05-09 13:05:12 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tags.c: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/encoding/gstsmartencoder.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaysink.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/videorate/gstvideorate.c: * tests/examples/app/appsink-src.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/examples/snapshot/snapshot.c: -base: don't use buffer caps Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS. 2011-05-08 13:24:30 +0200 Wim Taymans * gst/adder/gstadder.c: adder: fix getcaps function Explicitely get the possible caps in the sinkpad instead of using an old removed function. 2011-05-08 13:09:35 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: avoid setting caps on buffers We don't need to set caps on buffers anymore, this is now done with a caps event. 2011-05-06 11:31:43 +0200 Wim Taymans * ext/libvisual/visual.c: visual: avoid unreffing a NULL object 2011-05-05 18:47:58 +0200 Sebastian Dröge * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Update for new GstIterator API 2011-05-05 18:47:50 +0200 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Update for new GstIterator API 2011-05-05 18:38:53 +0200 Sebastian Dröge * gst/playback/gststreamselector.c: streamselector: Return a NULL iterator instead of an empty iterator that returns NULL if there's no otherpad 2011-05-05 18:35:46 +0200 Sebastian Dröge * gst/playback/gstplaybasebin.c: playbasebin: Update for new GstIterator API 2011-05-05 18:29:13 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Fix usage of gst_iterator_fold() 2011-05-05 16:05:13 +0200 Sebastian Dröge * win32/common/libgstvideo.def: win32: Update exports 2011-05-05 16:04:11 +0200 Sebastian Dröge * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: icles: Update for new GstIterator API 2011-05-05 16:03:52 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/encoding/gstencodebin.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: gst: Update for new GstIterator API 2011-05-05 15:30:53 +0200 Sebastian Dröge * tests/check/pipelines/capsfilter-renegotiation.c: capsfilter-renegotiation: Fix for the removal of the bufferalloc function 2011-05-03 12:57:28 +0200 Sebastian Dröge * sys/ximage/ximagesink.c: ximagesink: Send reconfigure event upstream if the window geometry changes 2011-04-28 10:55:21 +0200 Sebastian Dröge * sys/ximage/ximagesink.c: ximagesink: Add caps with the current window geometry to the top in getcaps 2011-01-17 14:12:06 -0300 Thiago Santos * tests/check/pipelines/capsfilter-renegotiation.c: tests: capsfilter-renegotiation: New renegotiation use cases Adds some new tests for renegotiation use cases that would use the new renegotiate event 2011-04-29 14:14:53 +0200 Philippe Normand * gst-libs/gst/pbutils/encoding-target.c: * tests/check/libs/profile.c: base: presets moved from $HOME/.gstreamer-0.11 to $HOME/.local/share/gstreamer-0.11 2011-05-03 09:49:26 +0200 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: configure.ac 2011-05-02 11:11:33 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/theora/gsttheoradec.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/xvimage/xvimagesink.c: plugins: fix for allocation query API change 2011-04-30 17:35:54 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * po/da.po: * po/de.po: * po/fr.po: * po/uk.po: * win32/common/_stdint.h: * win32/common/config.h: 0.10.32.4 pre-release 2011-04-30 17:21:28 +0100 Tim-Philipp Müller * gst/videoscale/gstvideoscaleorc-dist.c: * gst/volume/gstvolumeorc-dist.c: gst: update orc-generated disted C backup code to orc 0.4.14 2011-04-29 18:23:25 +0200 Wim Taymans * ext/libvisual/visual.c: visual: add bufferpool support to libvisual 2011-04-29 16:52:23 +0200 Wim Taymans * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: use bufferpool 2011-04-29 13:48:39 +0200 Wim Taymans * tests/check/elements/audioresample.c: * tests/check/elements/videoscale.c: tests: make unit tests compile 2011-04-29 13:28:17 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisdec.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/playback/gststreamselector.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/subparse/gstsubparse.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: remove buffer_alloc 2011-04-29 12:10:14 +0200 Wim Taymans * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: videotestsrc: use ALLOCATION query Use the allocation query to get the buffer parameters and potentially a bufferpool from downstream. Use the bufferpool to create buffers. 2011-04-29 12:09:38 +0200 Wim Taymans * sys/xvimage/xvimagesink.c: xvimagesink: implement ALLOCATION query 2011-04-29 11:27:46 +0200 Wim Taymans * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: metavideo: add flags and a define for the API 2011-04-28 19:28:16 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: configure.ac 2011-04-28 19:20:58 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstmetavideo.c: * gst-libs/gst/video/gstmetavideo.h: metavideo: first attempt at video metadata Add a first version of video metadata for buffers that can contain more info about the video such as strides and flags etc. 2011-04-27 12:09:33 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * po/bg.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/sl.po: * po/tr.po: * win32/common/_stdint.h: * win32/common/config.h: 0.10.32.3 pre-release 2011-04-25 11:32:27 +0200 Wim Taymans * tests/check/elements/videoscale.c: tests: fix test 2011-04-25 11:20:45 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/videoscale/gstvideoscale.c 2011-04-24 18:45:40 -0700 David Schleef * gst/videoscale/vs_image.c: videoscale: Fix off-by-one error in previous commit Fix for 7c0b702e. It helps to get your j+1's right. 2011-04-24 18:16:20 -0700 David Schleef * gst/videoscale/vs_image.c: videoscale: Fix ARGB bilinear scaling Fixes #648548. Orc generates bad code for gst_videoscale_orc_resample_merge_bilinear_u32, so we'll use the slightly slower two-stage process. I'd fix Orc, but it's hard to get excited about fixing a feature that I'm planning to deprecate and replace. 2011-04-23 13:42:23 -0700 David Schleef * gst/videoscale/vs_image.c: videoscale: hack to fix invalid reads in linear https://bugzilla.gnome.org/show_bug.cgi?id=633837 2011-04-23 12:46:09 -0700 David Schleef * gst/videoscale/vs_4tap.c: videoscale: protect 4tap from out-of-bounds reads https://bugzilla.gnome.org/show_bug.cgi?id=633837 2011-04-24 14:03:12 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From c3cafe1 to 46dfcea 2011-04-23 12:44:50 -0700 David Schleef * gst/videoscale/gstvideoscale.c: videoscale: use simpler scaling method for small images https://bugzilla.gnome.org/show_bug.cgi?id=633837 2011-04-14 09:32:19 +0200 Marc Plano-Lesay * gst/audioresample/gstaudioresample.c: audioresample: fix unused-but-set-variable warnings with gcc 4.6 https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-22 13:55:20 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttageditingprivate.h: tag: exif: register common tags from tag library Exif uses tags like image-vertical-ppi or image-horizontal-ppi which are registered in gst_tag_register_musicbrainz_tags(), but neither GstExifReader nor GstExifWriter register them. https://bugzilla.gnome.org/show_bug.cgi?id=648459 2011-04-24 12:16:47 +0100 Tim-Philipp Müller * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: update some FIXMEs for 0.11 2011-04-21 14:11:49 +0100 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: add unit test for basetransform/videoscale negotiation regression Turn Rene's test pipeline into a unit test. https://bugzilla.gnome.org/show_bug.cgi?id=648220 2011-04-19 16:40:02 +0200 Wim Taymans * sys/v4l/gstv4lelement.c: * sys/v4l/gstv4lsrc.c: v4l: use G_DEFINE_TYPE 2011-04-19 14:31:20 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: GstElement takes ownership of pad templates and it should be called from class_init now, not base_init 2011-04-19 14:21:34 +0200 Sebastian Dröge * tests/check/elements/audiorate.c: * tests/check/elements/playbin.c: * tests/check/elements/playbin2.c: * tests/check/elements/videoscale.c: * tests/check/libs/cddabasesrc.c: * tests/check/libs/mixer.c: * tests/check/libs/navigation.c: * tests/check/libs/xmpwriter.c: tests: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 14:11:32 +0200 Sebastian Dröge * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsamixertrack.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstbasetextoverlay.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: ext: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 11:44:14 +0200 Sebastian Dröge * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: sys: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 11:36:35 +0200 Sebastian Dröge * gst/audioresample/gstaudioresample.c: audioresample: Remove filter-length property, it only existed for backward compatibility 2011-04-19 11:35:53 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: gst: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 10:54:50 +0200 Sebastian Dröge * gst-libs/gst/cdda/gstcddabasesrc.c: cddabasesrc: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 10:52:00 +0200 Sebastian Dröge * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: audio: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 10:47:15 +0200 Sebastian Dröge * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: app: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-18 18:30:41 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstbasertppayload.c: gstbasertppayload: Use g_once_init_{enter,leave}() in the _get_type() function 2011-04-18 18:29:35 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: rtp: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-18 13:23:32 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2010-11-25 17:01:53 +0100 Håvard Graff * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: make sure to not start if the may_start flag is FALSE Fixes #635784 2011-04-18 11:24:57 +0200 Sebastian Dröge * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: If NULL caps are passed to buffer_alloc() do fallback allocation Fixes bug #647857. 2011-04-18 10:19:52 +0200 Sebastian Dröge * tests/check/pipelines/oggmux.c: oggmux: Remove bus GSource to prevent a valgrind warning 2011-04-18 09:16:35 +0200 Sebastian Dröge * tests/check/pipelines/gio.c: gio: Remove the bus GSource from the main context Prevents a valgrind warning about possibly leaked memory, see bug #647763. 2011-04-17 19:33:04 +0100 Tim-Philipp Müller * gst-libs/gst/sdp/Makefile.am: sdp: remove gst_init() for g-i scanner here again as well to avoid problems with -Wl,--as-needed 2011-04-17 17:59:40 +0100 Tim-Philipp Müller * gst-libs/gst/fft/Makefile.am: fft: remove gst_init() for g-i scanner again libgstfft doesn't actually use any symbols from libgstreamer, so when compiling with -Wl,--as-needed it won't even link to it, which can cause failures with older versions of g-i that ignore the --pkg arguments. Should fix PPA build failure on Ubuntu Maverick 2011-04-16 16:31:57 +0200 Sebastian Dröge * ext/pango/gsttextoverlay.c: textoverlay: Always hold the class-global pango mutex when using pango API 2011-04-16 16:23:47 +0200 Sebastian Dröge * ext/pango/gstclockoverlay.c: * ext/pango/gsttimeoverlay.c: {time,clock}overlay: Hold the class-global pango mutex when changing the pango context 2011-04-16 16:21:39 +0200 Sebastian Dröge * ext/pango/gstclockoverlay.c: * ext/pango/gsttimeoverlay.c: {clock,time}overlay: Only set the global pango context options once in class_init Instead of doing it over and over again when instantiating a new instance. 2011-04-16 16:18:40 +0200 Sebastian Dröge * ext/pango/gsttextoverlay.c: pango: Create a new pango context for every subclass timeoverlay/clockoverlay are setting some global options on the context that shouldn't be used for the generic textoverlay. 2011-04-16 16:03:56 +0100 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: 0.10.32.2 pre-release 2011-04-16 15:58:21 +0100 Tim-Philipp Müller * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: gst: update disted orc backup code 2011-04-16 15:50:05 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update documentation 2011-04-16 15:42:04 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2011-03-31 17:56:00 +0000 Thibault Saunier * Android.mk: * configure.ac: * ext/vorbis/Makefile.am: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: * ext/vorbis/gstvorbisdeclib.h: vorbis: add support for using tremolo on android Tremolo is an ARM-optimised version of xiph's tremor library. 2011-04-16 16:14:26 +0200 Sebastian Dröge * ext/ogg/gstoggstream.c: ogg: Update new code for 0.11 buffer API 2011-04-16 16:06:26 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2011-04-16 15:56:55 +0200 Sebastian Dröge * ext/pango/Makefile.am: * ext/pango/gstbasetextoverlay.c: * ext/pango/gstbasetextoverlay.h: * ext/pango/gstclockoverlay.c: * ext/pango/gstclockoverlay.h: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: pango: Create a new base class for all the elements This prevents the ugly hack where the text_sink pad template was only added for textoverlay but not for the subclasses. Also makes this work with the core change that made subclasses inherit the templates of their parent class. 2011-04-15 13:36:39 +0100 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggmux: prefer headers from caps to determine stream type Ogg mandates the first header packet must determine a stream's type. However, some streams (such as VP8) do not include such a header when muxed in other containers, and thus do not include this header as a buffer, but only in caps. We thus use headers from caps when available to determine a new stream's type. https://bugzilla.gnome.org/show_bug.cgi?id=647856 2011-04-16 11:00:31 +0100 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: libs: gobject-introspection scanner doesn't need to scan or update plugin info Make sure the scanner doesn't load or introspect or check any plugins, (especially not outside the build directory). 2011-04-16 09:33:44 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2011-04-16 09:12:31 +0200 Sebastian Dröge Merge branch 'master' into 0.11 2011-04-15 21:09:00 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: list libs/struct*h files explicitly in Makefile.am Hopefully makes the gentoo buildbot happy again. 2011-04-15 11:11:52 +0200 Mark Nauwelaerts * gst/playback/gstplaybin2.c: playbin2: avoid foregoing READY_TO_NULL when appropriate 2011-04-14 22:13:21 +0200 Mark Nauwelaerts * gst/playback/gstplaybin2.c: playbin2: ensure proper PAUSED_TO_READY cleanup ... since going async to PAUSED might fail, and never making it to PAUSED subsequently skips going down to READY. Fixes #647781. 2011-04-14 12:42:20 -0700 David Schleef * gst-libs/gst/video/video.c: Revert "video: Remove the extensive checkings from switch" This reverts commit 500d14c35c656890686574e1c041fb556df17056. 2011-04-14 13:15:08 +0200 Sebastian Dröge * tests/check/elements/encodebin.c: encodebin: Unref encoding profiles after usage in the test 2011-04-14 12:55:00 +0200 Sebastian Dröge * tests/check/elements/encodebin.c: encodebin: Release pads after setting the state to NULL in the unit test See bug #647756. 2011-04-14 12:23:10 +0200 Sebastian Dröge * gst/encoding/gstencodebin.c: encodebin: Set all elements to NULL and remove them from the bin when removing a source group 2011-04-14 00:26:34 +0300 Sreerenj Balachandran * gst-libs/gst/video/video.c: video: Remove the extensive checkings from switch The default case handles them already 2011-04-13 23:17:34 -0300 Thiago Santos * tests/check/libs/tag.c: tests: tag: Fix typo 2011-04-13 23:17:14 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION for xmp library. Includes unit tests. 2011-04-13 23:16:02 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION Adds mapping for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION for exif library. Includes unit tests. 2011-04-13 23:13:59 -0300 Thiago Santos * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: Adds GST_TAG_CAPTURING_EXPOSURE_COMPENSATION Adds a new tag for indicating the used exposure compensation level in EV used when capturing an image. API: GST_TAG_CAPTURING_EXPOSURE_COMPENSATION 2011-04-14 00:24:26 +0100 Tim-Philipp Müller * tests/examples/encoding/gstcapslist.c: * tests/examples/gio/giosrc-mounting.c: * tests/examples/playrec/playrec.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: tests: fix unused-but-set-variable warnings with gcc 4.6 https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-13 23:57:56 +0100 Tim-Philipp Müller * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: ogg: fix unused-but-set-variable warnings with gcc 4.6 https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-13 23:19:07 +0100 Tim-Philipp Müller * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: fix unused-but-set-variable warnings with gcc 4.6 https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-13 22:59:03 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: fix unused-but-set-variable warning with gcc 4.6 We don't compare the bitrates of consecutive mp3 frames on purpose here. https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-13 09:10:52 +0100 Tim-Philipp Müller * gst-libs/gst/video/video.h: docs: fix typo in video format docs 2011-04-12 12:41:06 +0100 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: fix uninitialised variable usage and element leak gcc on OSX complains about ret being used uninitialized in this function, and it is right. Don't leak element ref when returning early because newsegment event is not in TIME format. 2011-04-12 12:20:43 +0100 Tim-Philipp Müller * gst/tcp/gstmultifdsink.c: multifdsink: do check return values of fcntl() and fstat() https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-09 19:15:23 +0200 Marc Plano-Lesay * gst/playback/gstplaybasebin.c: * gst/subparse/tmplayerparse.c: * gst/tcp/gstmultifdsink.c: * gst/videoscale/vs_image.c: fix unused-but-set-variable warnings with gcc 4.6 https://bugzilla.gnome.org/show_bug.cgi?id=647294 2011-04-06 22:57:41 +0300 Sreerenj Balachandran * gst-libs/gst/rtsp/gstrtsptransport.c: rtsptranport: ensure valid int result when parsing ranges Specifically, make sure that the return value of strtol is falling in between the range of G_MININT and G_MAXINT. Fixes #646952. 2011-04-06 16:27:54 +0100 Bastien Nocera * gst-libs/gst/pbutils/encoding-target.c: encoding-profile: fix unused-but-set-variable warnings with gcc 4.6 Top-level profiles don't have restrictions, only stream profiles, so no need to serialise that here. https://bugzilla.gnome.org/show_bug.cgi?id=646925 2011-04-11 14:29:35 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: dist all struct_*.h files for libs ABI test Should fix distcheck on x86_64. 2011-04-11 15:02:38 +0200 Mark Nauwelaerts * gst/videorate/gstvideorate.c: videorate: empty caps have no structure to pick 2011-04-11 11:37:51 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: android/alsa.mk android/app.mk android/app_plugin.mk android/audio.mk android/audioconvert.mk android/decodebin.mk android/decodebin2.mk android/gdp.mk android/interfaces.mk android/netbuffer.mk android/pbutils.mk android/playbin.mk android/queue2.mk android/riff.mk android/rtp.mk android/rtsp.mk android/sdp.mk android/tag.mk android/tcp.mk android/typefindfunctions.mk android/video.mk 2011-04-11 10:06:53 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstid3tag.c: tag: fix typo in ID3 genres psychadelic -> psychedelic. Spotted by Sébastien Wilmet. https://bugzilla.gnome.org/show_bug.cgi?id=647399 2011-04-11 00:36:35 -0400 Thibault Saunier * gst/rawparse/Makefile.am: android: make it ready for androgenizer Remove the android/ top dir Fixe the Makefile.am to be androgenized To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files. Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git 2011-01-27 17:28:51 +0100 Alessandro Decina * Android.mk: * android/alsa.mk: * android/app.mk: * android/app_plugin.mk: * android/audio.mk: * android/audioconvert.mk: * android/audioresample.mk: * android/audiotestsrc.mk: * android/decodebin.mk: * android/decodebin2.mk: * android/ffmpegcolorspace.mk: * android/gdp.mk: * android/gst-libs/gst/app/gstapp-marshal.c: * android/gst-libs/gst/app/gstapp-marshal.h: * android/gst-libs/gst/audio/audio-enumtypes.c: * android/gst-libs/gst/audio/audio-enumtypes.h: * android/gst-libs/gst/interfaces/interfaces-enumtypes.c: * android/gst-libs/gst/interfaces/interfaces-enumtypes.h: * android/gst-libs/gst/interfaces/interfaces-marshal.c: * android/gst-libs/gst/interfaces/interfaces-marshal.h: * android/gst-libs/gst/pbutils/pbutils-enumtypes.c: * android/gst-libs/gst/pbutils/pbutils-enumtypes.h: * android/gst-libs/gst/rtsp/gstrtsp-enumtypes.c: * android/gst-libs/gst/rtsp/gstrtsp-enumtypes.h: * android/gst-libs/gst/rtsp/gstrtsp-marshal.c: * android/gst-libs/gst/rtsp/gstrtsp-marshal.h: * android/gst-libs/gst/video/video-enumtypes.c: * android/gst-libs/gst/video/video-enumtypes.h: * android/gst/playback/gstplay-marshal.c: * android/gst/playback/gstplay-marshal.h: * android/gst/tcp/gsttcp-enumtypes.c: * android/gst/tcp/gsttcp-enumtypes.h: * android/gst/tcp/gsttcp-marshal.c: * android/gst/tcp/gsttcp-marshal.h: * android/interfaces.mk: * android/netbuffer.mk: * android/pbutils.mk: * android/playbin.mk: * android/queue2.mk: * android/riff.mk: * android/rtp.mk: * android/rtsp.mk: * android/sdp.mk: * android/tag.mk: * android/tcp.mk: * android/typefindfunctions.mk: * android/video.mk: * android/videoscale.mk: * android/videotestsrc.mk: * ext/ogg/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst/adder/Makefile.am: * gst/app/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/encoding/Makefile.am: * gst/ffmpegcolorspace/Makefile.am: * gst/ffmpegcolorspace/gstffmpegcodecmap.h: * gst/gdp/Makefile.am: * gst/playback/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * tools/Makefile.am: android: make it ready for androgenizer Remove the android/ top dir Fixe the Makefile.am to be androgenized To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files. Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git 2011-04-09 02:01:08 +0100 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add new header file to spec file 2011-04-08 15:10:02 +0200 Sebastian Dröge * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: rtp: Unref events if the parent element disappeared or has no event handler implemented 2011-01-06 18:20:58 +0100 Ole André Vadla Ravnås * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: rtp: fix pad callbacks so they handle when parent goes away 1) We need to lock and get a strong ref to the parent, if still there. 2) If it has gone away, we need to handle that gracefully. This is necessary in order to safely modify a running pipeline. Has been observed when a streaming thread is doing a buffer_alloc() while an application thread sends an event on a pad further downstream, and from within a pad probe (holding STREAM_LOCK) carries out the pipeline plumbing while the streaming thread has its buffer_alloc() in progress. 2011-03-20 08:59:33 +0100 Havard Graff * gst/audioresample/gstaudioresample.c: audioresample: Make src query MT-safe It is possible that the element might be going down while the event arrives 2011-04-08 15:00:58 +0200 Sebastian Dröge * ext/vorbis/gstvorbisdec.c: vorbisdec: Unref events if the parent element disappeared 2011-03-21 16:03:16 +0100 Havard Graff * ext/vorbis/gstvorbisdec.c: vorbisdec: make upstream queries and events MT-safe 2011-04-07 16:19:08 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/rtp/gstbasertpdepayload.c 2011-04-07 16:07:57 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: ximage: don't share the memory We can't share the memory on the buffer with other buffers because the metadata X(v)Image points to it and we don't want it to go away. 2011-04-06 16:25:37 +0100 Bastien Nocera * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: Remove unused variables https://bugzilla.gnome.org/show_bug.cgi?id=646924 2011-04-07 10:06:53 +0200 Sebastian Dröge * gst-libs/gst/video/video.c: video: Fix creation of grayscale caps The endianness was not set correctly before. Fixes bug #646923. 2011-04-06 19:21:02 +0200 Wim Taymans * sys/xvimage/xvimagesink.c: xvimagesink: make the show_frame function prettier 2011-04-06 17:54:28 +0200 Wim Taymans * sys/ximage/ximagepool.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: ximage: more fixes 2011-04-06 16:33:56 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/theora/gsttheoraenc.c 2011-04-06 16:26:12 +0200 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximage: more fixes 2011-04-06 16:11:02 +0200 Robert Swain * docs/design/part-interlaced-video.txt: docs: Update interlaced video design document The RFF flag is to be reused for buffers in the telecine state to indicate that the buffer contains only unneeded repeated fields that are present in other buffers and as such this buffer can be dropped. 2011-04-06 12:26:47 +0200 benjamin gaignard * sys/ximage/ximage.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/Makefile.am: * sys/xvimage/xvimage.c: * sys/xvimage/xvimagepool.c: * sys/xvimage/xvimagepool.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimagesink: use bufferpool Improve bufferpool handling in ximagesink. Implement bufferpool handling on xvimagesink. Based on patches from benjamin gaignard 2011-03-25 16:59:51 +0100 Mark Nauwelaerts * ext/theora/gsttheoraenc.c: theoraenc: refactor multipass file writing 2011-02-08 14:02:20 +0100 Mark Nauwelaerts * gst/audioresample/gstaudioresample.c: audioresample: minor simplification ... which avoids crashing in the off-chance that structure == NULL. 2011-04-05 18:14:49 +0300 Stefan Kost * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/discoverer.c: tests: add basic unit tests for discoverer 2010-08-24 13:14:33 +0200 Pascal Buhler * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: Round to next 32bit word, not current 32bit word at end of SDES chunk 2011-04-05 11:32:52 +0300 Stefan Kost * sys/xvimage/xvimagesink.c: xvimagesink: don't paint the window black when going to NULL Leave dealing with the appearance of the window when we are not playing to the applications. We anyway want to go to NULL as quickly as possible. Fixes #635800 2011-04-04 16:00:30 -0700 David Schleef * gst-libs/gst/video/video.c: * tests/check/libs/video.c: video: Fix YUV9 and YVU9 again 2011-04-04 23:41:16 +0100 Tim-Philipp Müller * gst-libs/gst/tag/gstvorbistag.c: tag: fix compiler warning on OSX gstvorbistag.c: In function 'gst_tag_list_from_vorbiscomment_buffer': gstvorbistag.c:371: warning: 'data' may be used uninitialized in this function 2011-04-04 23:23:37 +0100 Tim-Philipp Müller * tests/check/libs/.gitignore: tests: ignore xmpwriter unit test binary 2011-04-04 17:21:45 +0200 Haakon Sporsheim * gst-libs/gst/tag/gstexiftag.c: tag: use gst/math-compat.h header. https://bugzilla.gnome.org/show_bug.cgi?id=646744 2011-04-04 17:23:53 +0200 Haakon Sporsheim * gst-libs/gst/tag/xmpwriter.c: tag: Remove constness to silence MS compiler. https://bugzilla.gnome.org/show_bug.cgi?id=646744 2011-04-04 17:23:13 +0200 Haakon Sporsheim * gst-libs/gst/tag/gstxmptag.c: tag: Explicit cast to GThreadFunc to silence MS compiler. https://bugzilla.gnome.org/show_bug.cgi?id=646744 2011-04-04 15:56:50 +0300 Stefan Kost * common: Automatic update of common submodule From 1ccbe09 to c3cafe1 2011-04-04 11:44:15 +0200 Wim Taymans * ext/pango/gsttextoverlay.c: * gst-libs/gst/tag/gstvorbistag.c: * tests/check/libs/video.c: fix compilation after merge 2011-04-04 11:31:33 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst-libs/gst/tag/gstvorbistag.c 2011-03-11 10:41:11 +0100 Trond Andersen * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: fix invalid read in validation of padding in rtcp packet 2011-02-23 10:55:12 +0100 Stian Johansen * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: Add src object lock around call to ringbuffer parse caps. A race was observed between query() and setcaps() where the latter would change the ringbuffer spec while the former was performing operations based this data. 2011-01-22 23:09:32 +0100 Havard Graff * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: protect against ringbuffer disappearing while in a query Observed a case where the src went to null-state during the query, hence the spec pointer was no longer valid, and gst_util_unit64_scale_int crashed (assertion `denom > 0´failed) Add locking to make sure the ringbuffer can't disappear. 2011-02-08 18:27:43 +0100 Havard Graff * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: don't allow aligning behind the read-segment Given a large enough drift-tolerance, one could end up in a situation where one would keep aligning the written buffers behind the current read-segment position. The result for the reader would be complete silence, possible preceded by very choppy audio. By checking the available headroom, one can determine if there is room to do alignment, or if one should resort to a resync instead to get the pointers back on track. Also refactor the alignment-logic out of the render function for cleaner code. 2011-04-01 13:55:26 -0700 David Schleef * gst/encoding/Makefile.am: * gst/playback/Makefile.am: Remove setting of plugindir from Makefiles 2011-03-23 23:10:51 -0700 David Schleef * gst-libs/gst/video/video.c: * tests/check/libs/video.c: video: Fix height calculation for YUV9/YVU9 2011-04-01 15:34:30 +0200 Josep Torra * ext/ogg/gstoggmux.c: oggmux: fix warning building in mac os x 2011-04-01 15:33:42 +0200 Josep Torra * ext/pango/gsttextoverlay.c: textoverlay: fix comparison is always false due to limited range of data type Perform calculation in a temp var with enough room as there's guarantee that ret will be able to hold the result for example in _blit_AYUV. 2011-04-01 12:52:05 +0200 Sebastian Dröge * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Write GST_TAG_IMAGE and GST_TAG_PREVIEW_IMAGE as METADATA_BLOCK_PICTURE This is the official, standardized way of embedding images into vorbiscomments now. 2011-04-01 12:28:28 +0200 Sebastian Dröge * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Add support for METADATA_BLOCK_PICTURE tags This is the official, standardized way of embedding pictures inside vorbiscomments now. Parsing code taken from flacparse and slightly changed. Fixes bug #635669. 2011-04-01 12:09:44 +0200 Sebastian Dröge * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Use g_base64_decode_inplace() Instead of using the GLib base64 decoding functions manually to do inplace base64 decoding. This makes the code easier to understand. 2011-04-01 11:00:38 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: Store the segment directly inside the pad Also initialize it always in TIME format. We require TIME segments in oggmux anyway and drop newsegment events in other formats and assume an open-ended segment starting at 0. 2011-04-01 10:57:08 +0200 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Reset the segment on flush-stop events and when going back to READY 2011-03-03 08:45:15 -0300 Thiago Santos * ext/ogg/gstoggmux.c: oggmux: Use running time instead of timestamps Theora and vorbis use running time (which is correct) for calculating the granulepos for their ogg packets. Oggmux, however, used timestamps to order the received buffers. This patch makes it use the running time to compare buffer times and also to timestamp pushed buffers. Some bits of the code still use timestamps, but they are only used to calculate durations, so it should be fine. https://bugzilla.gnome.org/show_bug.cgi?id=643775 2011-02-16 16:07:49 -0300 Thiago Santos * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: Keep track of pad's segments https://bugzilla.gnome.org/show_bug.cgi?id=643775 2011-04-01 10:39:31 +0200 Sebastian Dröge * ext/pango/gsttextoverlay.c: textoverlay: Add support for xBGR and RGBx Now all RGB variants are supported. 2011-01-17 21:12:18 -0700 Lane Brooks * ext/pango/gsttextoverlay.c: textoverlay: Added support for ARGB and other RGB alpha variants 2011-01-11 10:34:33 -0700 Lane Brooks * ext/pango/gsttextoverlay.c: textoverlay: converted AYUV to use 'A OVER B' alpha compositing 'A OVER B' compositing is explained at http://en.wikipedia.org/wiki/Alpha_compositing. Previously, overlaying text on a transparent background image left the text overlay also transparent. This pipeline shows such an example: gst-launch videotestsrc pattern=white ! video/x-raw-yuv,format=\(fourcc\)AYUV ! alpha alpha=0.0 ! textoverlay text=Testing auto-resize=False font-desc=60px ! videomixer ! ffmpegcolorspace ! autovideosink With this patch, text is composited "OVER" the background image and thus is visible regardless of the alpha of the background image. The overlay in the above pipeline works after applying this patch. 2011-03-31 18:40:48 +0200 Wim Taymans * tests/check/libs/libsabi.c: * tests/check/libs/struct_x86_64.h: * tests/check/libs/xmpwriter.c: fixes for new API 2011-03-31 17:53:12 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-03-31 17:47:43 +0200 Wim Taymans * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst/gdp/gstgdppay.c: * tests/check/elements/appsink.c: bufferlist: fixes for new API 2011-03-28 22:00:25 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: baseaudiosink: arrange for running clock when rendering eos Commit ba2e500bd992d8ad7db0da923801964964835967 ensured to provide a running clock when EOS had finished rendering. However, other measures are needed (and were in place before) to ensure a running clock when EOS still needs rendering (i.e. waiting). So, specifically, re-introduce eos_rendering removed in aforementioned commit, this time as a public variable so subclasses can be aware of the situation. Fixes (part of) #645961. API: GstBaseAudioSink:eos_rendering 2011-03-31 12:37:32 +0200 Edward Hervey * tests/check/libs/libsabi.c: * tests/check/libs/struct_i386_osx.h: tests: Fixes libsabi for MacOSX/32bit. GStaticRecMutex is 60bytes on macosx/32bit (As opposed to 40). Fixes #644996 2011-03-31 10:38:43 +0200 Sebastian Dröge * tests/check/libs/libsabi.c: * tests/check/libs/struct_x86_64.h: libsabi: Add structure sizes for x86-64 2011-03-09 11:51:14 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: libs: make sure gobject-introspection scanner calls gst_init() Cherry-picked from 0.11, since it's the right thing to do (we now silently rely on various _get_type() working without gst_init() having been called). 2011-03-30 20:57:32 +0100 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: libs: replace 0.10 with @GST_MAJORMINOR@ in Makefile.am For easier cherry-picking/merging later. 2011-03-30 20:35:51 +0200 Wim Taymans * gst-libs/gst/tag/gstxmptag.c: xmp: fix after merge conflict 2011-03-30 20:23:54 +0200 Wim Taymans Merge branch 'master' into 0.11-fdo Conflicts: gst-libs/gst/tag/gstxmptag.c 2011-03-30 16:50:45 +0200 Wim Taymans * ext/gio/gstgiobasesrc.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/tag/gsttagdemux.c: * gst/audiorate/gstaudiorate.c: Fix for latest API changes 2011-03-30 15:47:38 +0100 Tim-Philipp Müller * tests/check/gst/typefindfunctions.c: * tests/files/Makefile.am: * tests/files/hls.m3u8: tests: add typefind test for application/x-hls To make sure we don't break detection when we add typefinding for normal m3u8 playlists. 2011-03-30 15:44:45 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: rename type playlist/m3u8 to application/x-hls We should keep playlist/m3u8 available for normal m3u8 playlists, which we we'll likely support some day. Also, we probably don't want this handled like other playlists, so application/* seems more appropriate in this case, even if it's really just a playlist. 2011-03-30 09:18:00 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind: Fix comment typo and add a link the the HTTP live streaming spec 2011-03-30 09:12:25 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefind: Use the DataScanCtx for the m3u8 typefinder 2011-02-14 19:05:09 +0100 Andoni Morales Alastruey * gst/typefind/gsttypefindfunctions.c: typefind: add m3u8 playlists 2011-03-21 15:34:09 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/libs/xmpwriter.c: tagxmpwriter: Add check tests https://bugzilla.gnome.org/show_bug.cgi?id=645167 2011-03-17 15:42:28 -0300 Thiago Santos * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/xmpwriter.c: * gst-libs/gst/tag/xmpwriter.h: * win32/common/libgsttag.def: tagxmpwriter: Adds a new GstTagXmpWriter interface The GstTagXmpWriter interface is to be implemented on elements that provide xmp serialization. It allows users to select which xmp schemas should be used on serialization. API: GstTagXmpWriter https://bugzilla.gnome.org/show_bug.cgi?id=645167 2011-03-18 09:28:23 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/tag.h: * win32/common/libgsttag.def: tag: xmp: Add function to list the available schemas Adds a function to list the available schemas in our xmp lib https://bugzilla.gnome.org/show_bug.cgi?id=645167 2011-03-29 15:41:33 +0200 Sebastian Dröge * tests/check/elements/encodebin.c: encodebin: Requesting a pad again now gives a g_return_val_if_fail() Before the behaviour was undefined and implemented differently by elements, now core checks for this (and other problems) and returns NULL and an assertion. 2011-03-29 11:08:19 +0200 Wim Taymans * ext/gio/gstgiobasesrc.c: * ext/gnomevfs/gstgnomevfssrc.c: remove deprecated buffer methods 2011-03-28 20:19:24 +0200 Wim Taymans * ext/ogg/gstoggparse.c: oggparse: fix for _make_writable 2011-03-28 20:13:59 +0200 Wim Taymans Merge branch 'master' into 0.11-fdo 2011-03-28 19:23:38 +0200 Wim Taymans * ext/vorbis/gstvorbisenc.c: * gst-libs/gst/audio/audio.c: * tests/check/pipelines/vorbisenc.c: * win32/common/libgstapp.def: * win32/common/libgstnetbuffer.def: * win32/common/libgstrtp.def: * win32/common/libgsttag.def: tests: fix more checks 2011-03-28 18:42:09 +0200 Wim Taymans * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: tests: fix RTP and RTCP unit tests 2011-03-28 18:22:50 +0200 Wim Taymans * tests/check/libs/tag.c: test: fic tag check 2011-03-28 18:17:45 +0200 Wim Taymans * tests/check/libs/profile.c: tests: fix patch names and g_object_unref 2011-03-28 18:01:03 +0200 Wim Taymans * tests/check/libs/pbutils.c: tests: fix version number checks 2011-03-28 17:58:46 +0200 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.h: netbuffer: fix netbuffer add function 2011-03-28 17:53:39 +0200 Wim Taymans * tests/check/elements/videorate.c: tests: fix more tests refcounts are always 1 because subbuffers don't ref the original buffer anymore, just the memory. 2011-03-28 17:46:52 +0200 Wim Taymans * tests/check/elements/gdppay.c: * tests/check/elements/subparse.c: tests: fix more unit tests 2011-03-28 17:02:26 +0200 Wim Taymans * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: encodebin: fix new profile unref 2011-03-28 16:54:30 +0200 Wim Taymans * gst-libs/gst/audio/audio.c: * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: * tests/check/elements/textoverlay.c: * tests/check/elements/vorbistag.c: * tests/check/pipelines/vorbisenc.c: tests: fix some unit tests 2011-03-28 15:51:46 +0200 Wim Taymans * tests/check/libs/gstlibscpp.cc: * tests/check/libs/video.c: * tests/check/pipelines/streamheader.c: tests: fix remaining unit tests 2011-03-28 14:12:24 +0200 Wim Taymans * tests/check/elements/appsink.c: * tests/check/elements/audioconvert.c: * tests/check/elements/audiorate.c: * tests/check/elements/audioresample.c: * tests/check/elements/decodebin.c: * tests/check/elements/decodebin2.c: * tests/check/elements/ffmpegcolorspace.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/elements/gnomevfssink.c: * tests/check/elements/multifdsink.c: * tests/check/elements/playbin.c: * tests/check/elements/playbin2.c: * tests/check/elements/subparse.c: * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: * tests/check/elements/videoscale.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/check/elements/vorbisdec.c: * tests/check/elements/vorbistag.c: * tests/check/gst/typefindfunctions.c: * tests/check/libs/audio.c: * tests/check/libs/cddabasesrc.c: * tests/check/libs/libsabi.c: * tests/check/libs/netbuffer.c: * tests/check/libs/profile.c: * tests/check/libs/rtp.c: * tests/check/libs/struct_i386.h: * tests/check/libs/tag.c: * tests/check/pipelines/oggmux.c: * tests/examples/app/appsink-src.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: * tests/examples/app/appsrc_ex.c: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/examples/snapshot/snapshot.c: * tests/icles/playbin-text.c: tests: work on porting the unit tests 2011-03-28 10:25:38 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: audiosink: improve comment 2011-03-28 10:20:06 +0200 Wim Taymans * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.h: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * tools/gst-discoverer.c: plugins: more porting 2011-03-27 20:15:46 +0200 Wim Taymans * ext/theora/gsttheoraparse.c: theora: port to new memory API 2011-03-27 18:30:24 +0200 Wim Taymans * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: plugins: more porting to new memory API 2011-03-27 17:16:10 +0200 Wim Taymans * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/libvisual/visual.c: * sys/v4l/v4lsrc_calls.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: plugins: fix for new memory API 2011-03-27 16:35:28 +0200 Wim Taymans * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gststreamsynchronizer.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcp.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: * gst/typefind/gsttypefindfunctions.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: plugins: port some plugins to the new memory API 2011-03-27 13:55:15 +0200 Wim Taymans * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-read.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/gstvideofilter.c: libs: port to new data API 2011-03-26 19:36:50 +0000 Tim-Philipp Müller * ext/ogg/gstoggparse.c: oggparse: fix list iteration code Not that it really matters, but let's fix it before someone notices and makes fun of us. 2011-03-26 12:01:05 +0000 Tim-Philipp Müller * tests/check/libs/.gitignore: tests: ignore new libsabi test binary 2011-03-26 11:59:54 +0000 Tim-Philipp Müller * ext/ogg/gstoggparse.c: oggparse: make sure buffer metadata is writable before setting caps on buffers 2011-03-25 22:14:44 +0100 Sebastian Dröge * common: Automatic update of common submodule From 193b717 to 1ccbe09 2011-03-25 19:52:30 +0100 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tags: port to new metadata and memory API 2011-03-25 14:55:52 +0200 Stefan Kost * common: Automatic update of common submodule From b77e2bf to 193b717 2011-03-25 11:06:35 +0200 Stefan Kost * docs/plugins/Makefile.am: docs: do xrefs for non installed books too Get the xrefs from the builddir for the books in the same package. This fixes the cross references if one does not have the docs already installed. 2011-02-25 16:46:29 +0100 Robert Swain * docs/design/part-interlaced-video.txt: docs: Add an interlaced video design document 2011-03-25 09:29:38 +0100 Sebastian Dröge * common: Automatic update of common submodule From d8814b6 to b77e2bf 2011-03-25 09:03:13 +0100 Sebastian Dröge * common: Automatic update of common submodule From 6aaa286 to d8814b6 2011-03-24 18:48:59 +0200 Stefan Kost * common: Automatic update of common submodule From 6aec6b9 to 6aaa286 2011-03-24 14:22:00 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Update comment about why an audio queue is needed 2011-03-24 14:21:01 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: Revert "playsink: Only add a queue before the audio sink if visualizations are enabled" This reverts commit df886c0622257bb8635e5bd0fc7fc3da20bfc3be. 2011-03-24 14:03:31 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Only add a queue before the audio sink if visualizations are enabled The queue is not needed otherwise and will add some delay to track switches. 2011-03-23 12:42:04 -0300 Thiago Santos * tests/check/libs/video.c: tests: video: Uncommenting test Pushed a commented test by accident, uncommenting it. 2011-03-23 12:02:42 -0300 Thiago Santos * win32/common/libgstvideo.def: video: adds missing function to win32 def 2011-03-23 12:02:35 -0300 Thiago Santos * gst-libs/gst/video/video.c: video: Getting component offsets without dimensions is fine if it is not YUV This fixes a regression that an assertion would happen if gst_video_get_component_offset would be called with width or height as 0. Calling it with 0 is fine if the format isn't yuv and this was already being used in some other places of video.c 2011-03-23 11:13:57 -0300 Thiago Santos * tests/check/libs/video.c: tests: video: Add a test for checking rgb caps creation This new test for checking rgb caps creation exposes a regression 2011-03-15 14:45:03 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: Remember automatically created sinks for future reconfigures Also allow reuse of sink elements in error cases. 2011-03-16 15:27:51 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Check if an already existing sink supports the non-raw format too Before we were assuming that a sink will always support all non-raw formats in a single stream. 2011-03-10 19:04:51 +0530 Arun Raghavan * gst/playback/gstplaybin2.c: playbin2: Check if an element accepts requisite caps before selecting In addition to ensuring that an element we want to select in autoplug-select can enter the READY state, we also now check if it can accept the caps we wish to plug it for. This is handy for sinks that need to perform a probe to figure out whether they can actually handle a given format. 2011-03-16 15:56:34 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Set sinks to READY before checking if it accept caps Fixes bug #642732. 2011-03-16 15:56:34 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Always prefer the custom set sink and also set it back to NULL in all cases. 2011-03-17 13:47:10 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Only consider the audio/video sinks in autoplug_continue for the normal uridecodebin Considering them for the subtitle uridecodebin will add audio/video streams that might be in a file used as subtitle file. 2011-03-22 11:59:40 -0700 David Schleef * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add gst_video_format_new_template_caps() 2011-02-24 08:42:34 -0300 Thiago Santos * gst/videoscale/gstvideoscale.c: videoscale: Fix assertion on caps fixation When fixating caps, from_par should always be initialized with a fixed value. In case the fixation is from src to sink pad it was setting the from par (srcpad par) to a fraction range, this patch initializes it to 1/1, based on the assumption that missing PAR is 1/1. https://bugzilla.gnome.org/show_bug.cgi?id=641952 2011-03-22 12:44:49 +0100 Luis de Bethencourt * configure.ac: configure.ac: redundant use of AC_MSG_RESULT() cleaned the redundant use of AC_MSG_RESULT() in configure.ac 2011-03-18 19:34:57 +0100 Luis de Bethencourt * autogen.sh: autogen: wingo signed comment 2011-03-21 19:22:30 +0100 Fraxinas * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Fix syntax in Example: Creating a profile https://bugzilla.gnome.org/show_bug.cgi?id=645437 2011-03-21 18:33:03 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Add missing schema creation tiff schema entries were being added to the previous schema (xap) because a new one wasn't being created for it. 2011-03-17 21:50:15 -0400 Olivier Crête * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: Off-by-one error when creating RTP header extensions with a two-byte header 2011-03-16 15:38:31 +0200 Mart Raudsepp * ext/pango/gsttextoverlay.h: textoverlay: Clean up alignment docs a bit and remove horiz top alignment enum 2011-02-07 09:13:39 +0200 Mart Raudsepp * tests/check/Makefile.am: check: Really fix the linking order of libs/tag Follow-up to commit 5f5c52c, which only fixed the CFLAGS order. Fix the linker order as well. 2011-03-16 10:19:42 +0000 Tim-Philipp Müller * gst/playback/gsturidecodebin.c: uridecodebin: post proper error message if decodebin2/typefind elements are missing Post better error messages in case typefind/decodebin2 are missing or could not be loaded for some reason (e.g. because they inadvertently got blacklisted). https://bugzilla.gnome.org/show_bug.cgi?id=644892 2011-03-15 19:47:11 +0100 Blaise Gassend * ext/alsa/gstalsamixer.c: alsamixer: Store return values of poll functions in a signed integer Negative return values are used for errors and storing them in an unsigned integer will make it impossible to detect the errors. Fixes bug #644845. 2011-03-15 11:11:56 +0100 Wim Taymans Merge branch 'master' into 0.11-fdo 2011-03-14 19:42:49 +0100 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Increase the seen header packets count when seeing a header packet This fixes muxing of Speex content and possibly other formats where the header detection works by counting the packets. Fixes bug #644745. 2011-03-14 18:35:27 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: add depth and endianness to DTS caps https://bugzilla.gnome.org/show_bug.cgi?id=644208 2011-03-14 11:14:04 +0200 Stefan Kost * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: use a class wide mutex to work around pango reentrance issues Pango is not reentrant. Use a class wide mutex to protect pange use in gst_text_overlay_render_pangocairo(). This works reliable in contrast to the hack in my previous commit. Fixes Bug #412678 2011-03-14 11:12:53 +0200 Stefan Kost * ext/pango/gsttextoverlay.c: Revert "textoverlay: add a hack to init the pango engine" This reverts commit fee3266056b522cdd34e606b5682553d35eec5a1. 2011-03-14 10:09:35 +0200 Stefan Kost * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin2.c: plaback: trim trailing whitespace 2011-03-14 10:05:34 +0200 Stefan Kost * gst/playback/gstdecodebin2.c: decodebin2: reflow configuring new multiqueue instance Use a single g_object_set to configure the new multiqueue instance. Also don't needlessly set "use-buffering" if it is the default. 2011-03-04 14:52:01 +0200 Stefan Kost * ext/pango/gsttextoverlay.c: textoverlay: drop trailing whitespaces 2011-03-04 14:52:28 +0200 Stefan Kost * ext/pango/gsttextoverlay.c: textoverlay: add a hack to init the pango engine Layout a single char to pre-create all resources. 2011-03-12 17:51:41 +0000 Tim-Philipp Müller * configure.ac: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstlibscpp.cc: tests: add libscpp unit test to make sure g++ likes our library headers 2011-03-10 14:22:38 -0300 Thiago Santos * tests/check/elements/encodebin.c: tests: encodebin: Add reuse test case Adds a test case to check if encodebin can be reused https://bugzilla.gnome.org/show_bug.cgi?id=644416 2011-03-10 14:38:47 -0300 Thiago Santos * gst/encoding/gstencodebin.c: encodebin: Tear down old profiles when setting new ones In NULL/READY, we should be able to switch profiles on encodebin, this patch makes it tear down old profiles when new ones are set if in NULL/READY states https://bugzilla.gnome.org/show_bug.cgi?id=644416 2010-10-22 14:01:26 +0200 Andoni Morales Alastruey * gst/tcp/gstmultifdsink.c: multifdsink: disconnect inactive clients in the select loop too Clients are usually disconnected in the streaming thread if their inactivity is bigger than the timeout. If no new buffers are to be rendered in the sink, these clients will never be disconnected and for that reason it should be handled in the select() loop too. 2010-10-22 14:01:26 +0200 Andoni Morales Alastruey * gst/tcp/gstmultifdsink.c: multifdsink: disconnect inactive clients in the select loop too Clients are usually disconnected in the streaming thread if their inactivity is bigger than the timeout. If no new buffers are to be rendered in the sink, these clients will never be disconnected and for that reason it should be handled in the select() loop too. 2011-03-09 11:51:14 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: libs: make sure gobject-introspection scanner calls gst_init() Fixes introspection failures caused by type assertions/warnings. Since we now moved from _get_type() functions to external GType variables in a couple of places, we actually have to call gst_init() to make sure these are set when we use GST_TYPE_FOO. 2011-03-09 11:45:03 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: libgstapp: fix backticks in gobject-introspection section of Makefile.am 2010-11-03 14:37:07 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Don't wait for subtitle streams to preroll Subtitle streams being parse can cause the pipeline to wait indefinitely to PREROLL. This makes subtitle streams got to PAUSED even if no data is available. This should not be a cause for concern as we don't expect to get much data for subtitle streams other than language tags from the container. https://bugzilla.gnome.org/show_bug.cgi?id=632291 2011-03-08 17:01:41 +0000 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * sys/v4l/v4lsrc_calls.c: * sys/ximage/ximagepool.c: * sys/xvimage/xvimagesink.c: meta: update for new API 2011-03-04 18:32:53 +0100 Wim Taymans * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: ximagesink: make metadata methods more like core 2011-03-04 17:25:46 +0100 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: use sink preroll lock 2011-03-04 10:21:52 +0100 Wim Taymans * sys/ximage/ximagesink.c: ximagesink: reset the pool 2011-03-03 18:39:38 +0100 Wim Taymans * sys/ximage/ximagepool.c: ximagesink: implement buffer_alloc from the pool Use the bufferpool for pad_alloc when we are asked for the same caps as the bufferpool. 2011-03-03 16:48:23 +0100 Wim Taymans * sys/ximage/Makefile.am: * sys/ximage/ximage.c: * sys/ximage/ximagepool.c: * sys/ximage/ximagepool.h: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: ximage: rewrite the buffer pool in ximagesink Rewrite the pooling in ximagesink to extend from the bufferpool base class in core. Move some code to a comon place and refactor. 2011-03-04 16:21:13 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-03-03 19:14:38 +0100 Mark Nauwelaerts * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: start ringbuffer upon going to PLAYING and already EOS ... otherwise we may end up without running clock in PLAYING. Fixes #636886. 2011-03-04 14:39:45 +0200 Stefan Kost * gst/playback/gstplaybin2.c: playbin2: set several properties in one go g_object_set is a varargs function. Save 7 g_obvject_calls (and the overhead of them) by using it accordingly. 2011-03-02 15:38:01 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefindfunctions: fix compiler warning on 32-bit systems Mark 64-bit interger constant as such to avoid warnings such as: gsttypefindfunctions.c:2152: error: integer constant is too large for ‘long’ type 2011-02-28 18:52:47 +0100 Mark Nauwelaerts * configure.ac: configure.ac: export plugin description more platform independent Fixes #642504. 2011-02-28 18:32:33 +0100 Mark Nauwelaerts * common: Automatic update of common submodule From 1de7f6a to 6aec6b9 2011-02-28 12:59:40 +0100 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: netbuffer: Implement NetAddress with metadata Make a NetAddress metadata. 2011-02-27 19:42:31 +0100 Wim Taymans * sys/v4l/v4lsrc_calls.c: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: meta: fix for new API 2011-02-26 18:19:01 +0100 Wim Taymans * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: ximagesink: experiment with convenience macros 2011-02-25 16:28:55 +0100 Wim Taymans * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.h: ximage: fix macros 2011-02-25 16:01:47 +0100 Wim Taymans * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximage: reimplement buffer pooling with metadata Use the buffer metadata to get back to the extra info we can use to optimize the video rendering. 2011-02-25 15:49:33 +0100 Wim Taymans * sys/v4l/v4lsrc_calls.c: * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: metadata: implement extra buffer data with metadata Use buffer metadata to attach arbitrary extra data to buffers. 2011-02-24 12:19:27 +0100 Wim Taymans * tests/examples/app/appsink-src.c: * tests/examples/app/appsrc_ex.c: tests: fix some tests now that appbuffer is gone 2011-02-24 12:18:43 +0100 Wim Taymans * sys/v4l/v4lsrc_calls.c: v4l: use buffer private data for extra buffer info Since we can't subclass anymore, use the owber_priv pointer for storing extra info for the buffer. 2011-02-24 11:57:53 +0100 Wim Taymans * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: X11: port imagesinks to new miniobjects Remove the subbuffer from X11 sinks and use the private pointer to store a single buffer metadata with the extra info. 2011-02-23 15:46:56 +0100 Wim Taymans * gst/encoding/gstencodebin.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/subparse/gstssaparse.c: miniobject: fix for changed miniobject 2011-02-23 14:12:22 +0100 Wim Taymans * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: pbutils: use GObject as the base class We can't subclass miniobject so use GObject as the base class, 2011-02-23 13:42:16 +0100 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: remove deprecated method 2011-02-23 13:14:21 +0100 Wim Taymans * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: netbuffer: disable GstNetBuffer object There are no more buffer subclasses and this should be implemented with buffermetadata later. 2011-02-23 13:13:32 +0100 Wim Taymans * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstappbuffer.c: * gst-libs/gst/app/gstappbuffer.h: app: remove appbuffer There are no more buffer subclasses and the application can use the regular API to make buffers. 2011-02-28 11:47:44 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: configure.ac gst-libs/gst/pbutils/Makefile.am 2011-02-28 10:10:22 +0200 Stefan Kost * tests/check/Makefile.am: * tests/check/libs/libsabi.c: * tests/check/libs/struct_i386.h: tests: add ABI test suite for libs 2011-02-27 09:32:55 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Only prevent to autoplug the same parser multiple times for the same chain Parsers are the only element class that are not changing the data and could lead to an infinite loop. Other element classes like demuxers, e.g. id3demux, can be used multiple times in a row and sometimes are. 2011-02-26 23:43:39 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Break the double-factory checking loop immediately if the factory was used already 2011-02-26 23:39:03 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Don't use the same element multiple times in the same chain This is going to lead to an infinite loop of this element and can easily happen with parsers that accept their own src caps on the sinkpad. 2011-02-26 23:20:42 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Improve detection of raw caps in expose-all-streams=false mode Previously we only checked against the raw caps but we should also check against the return value of autoplug-continue. Additionally fix a thread-safety issue with accessing the raw caps. 2011-02-25 19:37:07 -0800 David Schleef * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add support for r210 2011-01-03 11:41:56 +0100 Robert Swain * gst-libs/gst/video/video.h: gstvideo: Add GST_VIDEO_BUFFER_PROGRESSIVE flag Maps to GST_BUFFER_FLAG_MEDIA4. The purpose is to explicitly indicate whether a telecined buffer is progressive or not without having to make assumptions based on previous buffers. 2011-02-24 20:59:48 +0100 Sebastian Dröge * tests/check/elements/encodebin.c: encodebin: Fix double unref in unit test 2011-02-22 14:54:55 +0000 Tim-Philipp Müller * tests/check/elements/playbin2.c: checks: add a simple unit test for the source-setup signal 2011-02-22 12:56:48 +0000 Tim-Philipp Müller * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin2, uridecodebin: add "source-setup" signal Add "source-setup" signal for convenience and discoverability. No need to figure out "notify::source", look up the notify callback signature, then do an g_object_get() to get the source element.. https://bugzilla.gnome.org/show_bug.cgi?id=626152 2011-02-24 16:22:53 +0100 Sebastian Dröge * ext/ogg/gstoggmux.c: oggmux: Don't handle GstCollectData as GstObject, use the pad instead 2011-02-24 16:02:50 +0100 Sebastian Dröge * tests/check/elements/encodebin.c: encodebin: Fix memory leaks related to request pads Request pads have to be released by the caller and must be unreffed after releasing them. 2011-02-24 15:55:00 +0100 Sebastian Dröge * gst/encoding/gstencodebin.c: encodebin: Return a new reference of the pad for the "request-pad" signal The GObject signal code assumes that the signal handlers return a new reference or copy. Fixes bug #641927. 2011-02-21 20:34:41 -0800 Leo Singer * gst/adder/gstadder.c: adder: Fill in offset_end field of outgoing buffers ... rather than leave it as GST_BUFFER_OFFSET_NONE Fix bug #642942. 2011-02-23 14:31:13 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: release all chains when going to NULL Also fixes #642466. 2011-02-23 14:29:03 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: undo state change side effect on error way out ... to avoid subsequent cleanup disposing an element not in NULL state. 2011-02-23 10:32:08 +0100 Mark Nauwelaerts * gst/playback/gstplaysink.c: playsink: avoid crashing on the way out when needed chain missing 2011-02-22 15:26:14 +0000 Tim-Philipp Müller * win32/common/libgstvideo.def: win32: update .def file for new libgstvideo API 2011-02-22 16:41:54 +0200 Stefan Kost * tools/gst-discoverer.c: discoverer: handle desc==NULL It would otherwise be printed as (null) and mess up indentation (no \n). 2011-02-08 12:42:32 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Chain dispose() up to parent class 2011-02-07 13:04:55 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Keep a ref for the async timeout callback This makes sure we maintain a ref on the discoverer object while the async timeout callback is alive to prevent a potential crash if the object is freed while the callback is pending. https://bugzilla.gnome.org/show_bug.cgi?id=641706 2011-02-07 13:57:39 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Use g_signal_connect_object instead of g_signal_connect We want to make sure the discoverer object passed to the various callbacks doesn't become invalid if a callback is pending and the object is free'd in the mean time. https://bugzilla.gnome.org/show_bug.cgi?id=641706 2011-02-10 03:22:42 +1100 Parthasarathi Susarla * gst/typefind/gsttypefindfunctions.c: typefinding: detect raw h.263 https://bugzilla.gnome.org/show_bug.cgi?id=623846 2011-02-21 15:58:16 +0200 Teemu Katajisto * gst-libs/gst/pbutils/encoding-target.c: pbutils: encoding-target: fix error checking in target file loading https://bugzilla.gnome.org/show_bug.cgi?id=642949 2011-02-21 17:55:04 +0000 Tim-Philipp Müller * tests/check/elements/videoscale.c: tests: fix videoscale test by ignoring newly-added 64-bit formats They probably fail because ffmpegcolorspace can't handle those formats. 2011-02-21 18:01:04 +0100 Benjamin Otte * gst-libs/gst/sdp/Makefile.am: sdp: Fix copy/paste error in inrospection part of Makefile 2011-02-21 18:00:36 +0100 Benjamin Otte * gst-libs/gst/tag/Makefile.am: tag: Fix copy/paste error in inrospection part of Makefile 2011-02-21 18:00:02 +0100 Benjamin Otte * gst-libs/gst/rtsp/Makefile.am: rtsp: Fix copy/paste error in inrospection part of Makefile 2011-02-21 12:40:36 +0100 Mark Nauwelaerts * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: audiorate: add skip-to-first property API: GstAudioRate::skip-to-first 2011-02-21 12:27:17 +0100 Mark Nauwelaerts * gst/videorate/gstvideorate.c: videorate: fix skip-to-first ts setup ... such as avoiding arithmetic mixing counts and ts, although latter would typically be 0 so far. 2011-02-21 12:04:09 +0100 Edward Hervey * ext/ogg/gstoggmux.c: * gst/adder/gstadder.c: Revert "oggmux,adder: Check if collectpads has been freed" This reverts commit 6d150873e8b4c23d694b0351570de323b1576d76. Depends on a core commit that was reverted. 2011-02-20 23:49:54 -0800 David Schleef * ext/ogg/gstoggmux.c: * gst/adder/gstadder.c: oggmux,adder: Check if collectpads has been freed Core now calls release_pad in finalize, which is usually after the collectpads has been unreffed. 2011-02-19 18:50:37 -0800 David Schleef * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_fill_borders.h: * gst/videoscale/vs_image.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: videoscale: Add 16-bit-channel support 2011-02-19 16:41:43 -0800 David Schleef * gst/videotestsrc/videotestsrc.c: videotestsrc: Add 16-bit-per-channel formats 2011-02-19 12:03:17 -0800 David Schleef * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add ARGB64 and AYUV64 16-bit per channel formats. 2011-02-18 16:26:59 -0800 David Schleef * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add gst_video_format_get_component_depth() 2011-02-18 13:27:23 -0800 Leo Singer * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: each element gets its own instance of GRand, if needed As a result, pipelines that contain multiple instances of audiotestsrc with the 'wave' property set to 'white-noise', 'pink-noise', or 'gaussian-noise' will run much faster, since they won't be competing for access to the global, lock-protected instance of GRand. Fixes bug #642720. 2011-02-18 17:26:53 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: If a sink claims to support ANY caps assume that it only supports the usual raw formats This should be changed again in 0.11, if a sink really claims to support ANY caps it should support everything or provide correct caps. 2011-02-17 18:11:10 +0100 Edward Hervey * gst/encoding/gstencodebin.c: encodebin: Add a audioconverter after the audio resampler. This allows handling non-native-endianness conversion properly. 2011-02-18 14:04:38 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Use gst_pad_accept_caps() instead of intersecting with the getcaps caps This might be faster and more accurate in some cases to detect if a sink supports a format and autoplugging can be stopped. 2011-02-18 12:06:30 +0100 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Add default handler for autoplug-select uridecodebin proxies this signal and only the first signal handler will ever be called from decodebin2, which is uridecodebin's proxy signal handler. 2011-02-18 12:02:07 +0100 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Return NULL from the default autoplug-sort handler ...instead of copying the array. Returning NULL will result in the original factories array to be used and prevents a useless array copy in most use cases. 2011-02-18 12:01:05 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Return NULL from the default autoplug-sort handler ...instead of copying the array. Returning NULL will result in the original factories array to be used and prevents a useless array copy in most use cases. 2011-02-18 12:00:34 +0100 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Update autoplug-* signal docs from decodebin2 uridecodebin proxies these signals. 2011-02-18 11:58:44 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Update documentation of the autoplug-* signals Add notes about the behaviour if multiple signal handlers are connected. For most autoplug-* signals only the first signal handler will ever be invoked. Also add to the autoplug-sort docs that the signal handler can return NULL to specify that the order should change and other handlers get the chance to sort the array. 2011-02-18 11:57:12 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Keep the original factory list if the sort signal handlers returned NULL 2011-02-16 20:14:25 +0900 tskd2@yahoo.co.jp * gst/playback/gsturidecodebin.c: uridecodebin: expose "autoplug-sort" signal It is a proxy of the decodebin2's one, and was missing in the previous code. See bug #642433. 2011-02-18 10:57:40 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Use a recursive mutex for the playbin lock This lock is taken when activating a group, which could result in calling the autoplug-continue callback, which also needs this lock to access the sinks. See bug #642174. 2011-02-18 09:36:34 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Disconnect signal handlers when removing a failed element This prevents crashes later if one of the signals is emitted after the element was removed from decodebin2 already, which can happen in discoverer. 2011-02-15 19:23:48 -0800 David Schleef * gst/typefind/gsttypefindfunctions.c: typefind: Fix mpeg TS detection 2011-02-04 17:36:40 -0800 David Schleef * ext/theora/gsttheoraenc.c: theoraenc: move debug category init earlier 2011-02-03 22:41:23 -0800 David Schleef * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.h: oggparse: better detection of delta unit flag 2011-01-15 18:21:28 -0800 David Schleef * ext/theora/gsttheoraenc.c: theoraenc: Set speed level while running 2011-01-13 15:12:53 -0800 Ralph Giles * ext/theora/gsttheoraenc.c: Set the theoraenc speed-level property from libtheora's defaults. The speed-level property, which allows callers to trade of encoding quality for speed in the libtheora api, has a version-dependent maximum and default values. Instead of hardcoding the acceptable range for the theoraenc element's presentation of this setting, we query the library directly at class initialization time and set the maximum and default values from that. If the query fails, we fall back to the previous default setting. To keep the values reported by gst-inspect (which I'm told use the spec values from the class) with those available on an\ instantiated element, we remove to setting of enc->speed_level from the initializer and instead pass G_PARAM_CONSTRUCT to the property spec flags, asking g_object to set this property when theoraenc objects are constructed. NB in theory the maximum speed-level could depend on the actual video caps. If later versions of libtheoraenc do this, a second call will need to be made from theora_enc_reset to update the property, since this function is mostly useful for realtime adjustment of performance while the pipeline is running. 2011-02-16 11:57:31 +0200 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: don't leak parent tags 2011-02-16 11:56:16 +0200 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: improve logging (and reindent) Add more logging for the tag merging and use the _OBJECT flavour more. 2011-02-15 17:46:22 +0100 Sebastian Dröge * gst/playback/gstplaybin2.c: playbin2: Optimize autoplug-continue handler a bit Don't build merge the caps of all sinks but check them one-by-one until one supports the caps. Also get reffed caps from the sinkpads instead of a writable copy and add debug output if a sink claims to support ANY caps. 2011-02-15 17:24:28 +0100 Akihiro Tsukada * gst/playback/gstplaybin2.c: playbin2: Fix handling of non-raw custom sinks When autoplugging elements in decodebin2, check if the caps are supported by one of the sink before continuing autoplugging. Fixes bug #642174. 2011-02-15 17:01:13 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Don't leak elements that fail to go to PAUSED after being autoplugged Fixes bug #642381. 2011-02-13 14:42:14 +0000 Sjoerd Simons * ext/theora/gsttheoraenc.c: theoraenc: Don't reset the video quality setting the bitrate libtheora has two encoding modes, CBR, where it tries to hit a target bitrate and VBR where it tries to achieve a target quality. Internally if the target bitrate is set to anything other then 0 the encoding-mode is CBR. This means that the gstreamer element can leave the video_quality setting alone as long as the user is tweaking the bitrate. Which has the nice side-effect that if the user explicitely sets the bitrate to 0 (which is actually the default), the quality value doesn't get reset and one ends up encoding VBR at quality-level 0... 2011-02-09 12:45:23 +0100 Andoni Morales Alastruey * gst/gdp/gstgdppay.c: gdppay: ensure buffer's metadata is writable before setting caps 2011-02-14 12:52:59 +0200 Stefan Kost * common: Automatic update of common submodule From f94d739 to 1de7f6a 2011-02-10 23:44:43 +0000 Tim-Philipp Müller * gst-plugins-base.doap: doap: update mailing list location 2011-02-08 23:58:56 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Use nominal bitrate if bitrate tag is unavailable If the bitrate tag is unavailable, this falls back to the nominal bitrate tag instead, if that is present. https://bugzilla.gnome.org/show_bug.cgi?id=641860 2011-02-08 12:31:34 +0200 Stefan Kost * gst/playback/gstdecodebin2.c: decodebin2: caps can be NULL Don't use and unref NULL caps. 2011-02-02 16:49:04 +0100 Mark Nauwelaerts * gst-libs/gst/tag/gsttagdemux.c: tagdemux: also push cached events downstream when operating in pull mode Otherwise, having 2 tagdemux in a row followed by an element operating in pull mode will make the second tagdemux implictly eat the first tagdemux' tag event(s). Fixes (part of) #641047. 2011-01-21 18:10:29 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: ensure serialnos are unique We do that by checking a newly generated one is not already used in an existing stream, and doing it again if it is. https://bugzilla.gnome.org/show_bug.cgi?id=640211 2011-02-02 17:30:15 +0000 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: free stream map caps when done 2011-02-02 17:23:43 +0000 Tim-Philipp Müller * ext/ogg/gstoggmux.c: oggmux: keep IN_CAPS flag check for header buffers as fallback In case the ogg mapper doesn't handle all the accepted input formats (although it really should). Saves us error handling for that case though. Also log caps properly. https://bugzilla.gnome.org/show_bug.cgi?id=629196 2011-01-21 16:05:46 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: use oggstream for less brittleness in recognizing headers Using the IN_CAPS flag for this is brittle, and will fail if either vorbisparse or vorbistag (which is itself based on vorbisparse) is inserted between oggdemux and oggmux. Possibly other elements too (eg, theoraparse, etc). Using oggstream ensures we Get It Right More Often Than Not. https://bugzilla.gnome.org/show_bug.cgi?id=629196 2011-02-02 15:33:36 +0100 Mark Nauwelaerts * gst/playback/gsturidecodebin.c: uridecodebin: fix copy-and-paste typo in property docs 2011-01-21 10:56:00 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: oggmux: do not skip a pageno at start Discontinuities are automatically signalled by oggdemux at the start of a new stream. When oggmux is yet to output actual data pages, do not signal these discontinuities in the ogg stream. This patch may miss some actual discontinuities at the very start of a stream, but avoids the spurious missing pages when encoding happens normally. A better fix might involve finding a way to distinguish between actual data discontinuities and discontinuities merely marking the start of a new stream. Fixes an issue with ogg page numbering (would skip a number for no reason, which then looks like a packet was lost somewhere) when re-muxing an ogg stream, e.g. when re-tagging in rhythmbox. https://bugzilla.gnome.org/show_bug.cgi?id=629196 2011-02-01 15:57:14 +0000 Tim-Philipp Müller * ext/theora/gsttheoraenc.c: theoraenc: clean up property descriptions Remove "This property requires libtheora version >= 1.1" qualifiers from property descriptions. They aren't needed any longer now that we require libtheora >= 1.1. 2010-08-19 22:31:07 +0300 Sreerenj Balachandran * configure.ac: * gst-libs/gst/tag/gstid3tag.c: id3tag: map the ID3v2 TENC frame to GST_TAG_ENCODED_BY https://bugzilla.gnome.org/show_bug.cgi?id=627268 2011-01-29 20:43:08 +0100 Mark Nauwelaerts * gst/tcp/gsttcpserversink.c: tcp: use socklen_t where appropriate rather than specific type In particular, fixes Cygwin build where socklen_t is defined as int in line with native win32 api definition. 2011-01-29 19:40:23 +0100 Mark Nauwelaerts * gst-libs/gst/tag/gstxmptag.c: xmptag: cast argument to isdigit to int ... as that is the specification and fixes compilation on Cygwin: gstxmptaag.c: In function 'read_one_tag': gstxmptag.c:1015: error: array subscript has type 'char' 2011-01-31 18:06:18 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: * tests/check/elements/appsink.c: appsink: add buffer fallback in case the application doesn't handle buffer lists We shouldn't assume the application handles buffer lists, for ease-of-use reasons and for backwards compatibility reasons. 2011-01-26 10:32:32 +0800 Cai Yuanqing * gst-libs/gst/app/gstappsink.c: appsink: send new-buffer-list signal Send new-buffer-list signal when emit-signals is TRUE https://bugzilla.gnome.org/show_bug.cgi?id=640607 2011-01-20 16:25:42 +0100 Wim Taymans * gst/playback/gsturidecodebin.c: uridecodebin: also add https to buffer protocols HTTPS also needs buffering. 2011-01-30 15:40:53 +0200 Felipe Contreras * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: trivial cleanups It seems these stuff was neglected from commmit d8942e2. Signed-off-by: Felipe Contreras 2011-01-27 15:26:25 +0000 Tim-Philipp Müller * configure.ac: * win32/common/config.h: win32: fix DEFAULT_AUDIOSINK, should be direct*sound*sink https://bugzilla.gnome.org/show_bug.cgi?id=640705 2011-01-27 12:32:35 +0100 Philippe Normand * gst/typefind/gsttypefindfunctions.c: typefinding: register H264 typefinder with H264 caps https://bugzilla.gnome.org/show_bug.cgi?id=640709 2011-01-26 12:16:58 -0300 Thiago Santos * gst/encoding/gststreamsplitter.c: streamsplitter: release pending events refs Unref pending events when disposing the streamsplitter. Also refactor a little to replace a for with a g_list_foreach 2011-01-26 15:42:48 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: don't run encodebin test if vorbis or theora plugins aren't available 2011-01-26 09:07:26 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for degas images 2011-01-26 09:06:10 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: use image/x-icon as media type for ICON files That's what we've been using so far (e.g. gdkpixbufdec). 2011-01-18 10:20:29 +0200 Stefan Kost * tests/examples/snapshot/snapshot.c: snapshot: use a keyframe seek One would usualy get good quality snapshots quickly. The exact seek position does not really matter. 2011-01-17 23:13:29 +0200 Stefan Kost * tests/examples/snapshot/snapshot.c: snapshot: add a newline to the usage and error output 2011-01-25 18:03:23 +0200 Stefan Kost * gst/playback/gstdecodebin2.c: decodebin2: add comment and whitespace trimming 2011-01-12 14:03:12 +0200 Stefan Kost * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for x-annodex 2011-01-25 13:39:25 +0000 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: add typefinder for DEGAS images This fixes at least one DEGAS image from being misdetected as DTS audio. https://bugzilla.gnome.org/show_bug.cgi?id=625129 2011-01-21 14:56:28 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: oggmux: cleanup Remove a pointless string concatentation, and fix an off-by-one in packetno in a log. https://bugzilla.gnome.org/show_bug.cgi?id=640189 2011-01-24 11:45:21 +0000 Vincent Penquerc'h * gst/typefind/gsttypefindfunctions.c: typefind: add detection for windows icon files to get them out of the way Some of them can otherwise be misdetected for MPEG audio. https://bugzilla.gnome.org/show_bug.cgi?id=620364 2011-01-17 15:11:15 +0200 Sreerenj Balachandran * ext/ogg/gstoggdemux.c: oggdemux: Remove dead code 2011-01-11 15:10:42 +0800 Yang Xichuan * ext/ogg/gstoggparse.c: oggparse: Make gst_ogg_parse_submit_buffer() safe By not passing zero-sized buffers to ogg_sync_buffer() and checking the return values of libogg functions. Fixes bug #639136. 2011-01-11 18:18:34 +0100 Lane Brooks * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: Add support for vertical center alignment Fixes bug #639159. 2011-01-24 15:21:10 -0300 Thiago Santos * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Move static variable to local function Variable was being written to and could cause crashes if multiple elements were parsing xmp at the same time. Moving it to local scope solves the problem. 2011-01-24 18:27:30 +0100 Edward Hervey * gst-libs/gst/riff/riff-media.c: riff: Add support for video/x-camstudio 2011-01-24 00:00:27 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development === release 0.10.32 === 2011-01-21 10:50:06 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.32 2011-01-18 10:45:01 +0000 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.31.4 pre-releases 2011-01-18 10:44:01 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update docs 2011-01-18 10:40:29 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-target.c: * tests/check/libs/profile.c: encoding-target: change keyfile header to 'GStreamer Encoding Target' which is more in line with other files such as .desktop files. 2011-01-18 01:06:50 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-target.c: pbutils: don't assume LC_MESSAGES is always defined, also check for ENABLE_NLS Should fix build with mingw32 build bot again. 2011-01-18 00:09:37 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * win32/common/libgstapp.def: app: export gst_app_stream_type_get_type() API: gst_app_stream_type_get_type() API: GST_TYPE_APP_STREAM_TYPE https://bugzilla.gnome.org/show_bug.cgi?id=639747 2011-01-17 23:59:48 +0000 Tim-Philipp Müller * gst-libs/gst/app/gstappbuffer.c: app: make GstAppBuffer get_type() function thread-safe 2011-01-18 01:09:53 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Drop new stream tags once preroll is done This makes sure we do not touch the stream taglist once the pipeline has been prerolled. Adding of stream tags happens in the pad event probe which runs in a different thread from discoverer stream processing, so modifying the tag list while discoverer might be processing it can sometimes cause a crash. https://bugzilla.gnome.org/show_bug.cgi?id=639778 2011-01-17 15:30:08 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Validate timeouts before processing them This avoids a race where the timeout callback is scheduled to run but we get sufficient information to finish discovery before actually getting around to executing the callback. See the documentation of g_source_is_destroyed() for more details. https://bugzilla.gnome.org/show_bug.cgi?id=639730 2011-01-18 00:08:32 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Make sure we call _stop() before being freed This ensures that everything is properly cleaned up before the GstDiscoverer object is freed. Specifically, it makes sure that we've removed the async timeout callback before freeing the object to avoid a potential crash later on. https://bugzilla.gnome.org/show_bug.cgi?id=639755 2011-01-16 14:55:46 -0800 David Schleef * gst/gdp/gstgdppay.c: gdppay: make newsegment buffer metadata writable 2011-01-16 16:46:22 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-target.c: pbutils: save localised strings properly when writing encoding targets to a file Use LC_MESSAGES rather than LC_ALL. Save/load description as untranslated string when using an English language locale. Strip locale information to the language, so we don't save keys like description[fr_FR.UTF-8]=... https://bugzilla.gnome.org/show_bug.cgi?id=638860 2011-01-13 13:59:41 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: set framed=false on DTS caps 2011-01-12 17:51:43 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: docs: add some more Since: markers for new encoding-profile API 2011-01-12 15:51:52 +0000 Tim-Philipp Müller * configure.ac: configure: require gobject-introspection >= 0.9.12 Earlier versions don't honour the -L/--library-path option, which we need. See commit 4d0ccdad in gobject-introspection git. Should "fix" build on lucid/maverick build bots. 2011-01-11 19:19:50 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: 0.10.31.3 pre-release 2011-01-11 18:59:39 +0000 Tim-Philipp Müller * po/da.po: * po/gl.po: * po/pt_BR.po: po: update translations 2011-01-11 14:41:53 +0000 Bastien Nocera * tests/examples/seek/jsseek.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: examples: allow building with newer GTK+ GtkFunction is gone, and there's no update policies for GtkRanges any more (but the default was continuous anyway, so no need to set it to that mode explicitly). https://bugzilla.gnome.org/show_bug.cgi?id=639215 2011-01-11 14:59:38 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: gobject-introspection: pass --library-path as well to make it find the right libgstreamer Makes things work again properly in uninstalled setups (and presumably in installed setups where GStreamer is installed into a non-standard prefix). Requires fixes from core git. https://bugzilla.gnome.org/show_bug.cgi?id=639039 2011-01-11 14:52:51 +0000 Byeong-ryeol Kim * gst-libs/gst/pbutils/Makefile.am: gobject-introspection: fix issue when gold linker is used Need to pass libgstreamer-0.10 explicitly to linker, since we're calling gst_init(), which in turn is needed because the encoding target get_type() function calls gst_value_register(). https://bugzilla.gnome.org/show_bug.cgi?id=639039 2011-01-11 15:49:54 +0200 Stefan Kost * common: Automatic update of common submodule From e572c87 to f94d739 2011-01-10 16:35:44 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From ccbaa85 to e572c87 2011-01-10 14:53:04 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 46445ad to ccbaa85 2011-01-10 15:55:26 +0800 Yang Xichuan * ext/ogg/gstoggdemux.c: oggdemux: remove outdated comment https://bugzilla.gnome.org/show_bug.cgi?id=639121 2011-01-08 02:16:19 +0000 Koop Mast * configure.ac: configure: fix bash-ism https://bugzilla.gnome.org/show_bug.cgi?id=638961 2011-01-08 02:10:03 +0000 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gobject-introspection: use same PKG_CONFIG_PATH for g-ir-compiler as for g-ir-scanner Make sure to use the PKG_CONFIG_PATH set at configure time instead of just relying on an env-var set one. This makes sure both g-ir-compiler and g-ir-scanner use the same PKG_CONFIG_PATH for determining include paths etc. 2011-01-08 01:12:02 +0000 Tim-Philipp Müller * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-app.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-cdda-uninstalled.pc.in: * pkgconfig/gstreamer-cdda.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-fft.pc.in: * pkgconfig/gstreamer-floatcast.pc.in: * pkgconfig/gstreamer-interfaces-uninstalled.pc.in: * pkgconfig/gstreamer-interfaces.pc.in: * pkgconfig/gstreamer-netbuffer-uninstalled.pc.in: * pkgconfig/gstreamer-netbuffer.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-riff.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtp.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-tag.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: * pkgconfig/gstreamer-video.pc.in: pkg-config: add girdir and typelibdir variables to .pc files We need them when building gir and typelib files for libraries that depend on these, such as gst-rtsp-server for example, in an uninstalled setup. 2011-01-07 12:50:07 +0000 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/pbutils-enumtypes.c: * win32/common/video-enumtypes.c: 0.10.31.2 pre-release 2011-01-07 13:04:11 +0100 Edward Hervey * gst/encoding/gstencodebin.c: * gst/encoding/gstencodebin.h: encodebin: Add missing-plugin support https://bugzilla.gnome.org/show_bug.cgi?id=638903 2011-01-07 12:51:11 +0100 Edward Hervey * gst/encoding/gstencodebin.c: encodebin: Extend documentation https://bugzilla.gnome.org/show_bug.cgi?id=638901 2011-01-07 00:43:07 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: never disable g_assert() and cast checks for the unit tests The unit tests are riddled with g_assert() and friends, sometimes containing functional code like set_state() calls in them even (looking at you, pipeline/capsfilter-renegotiation). Make sure we don't disable assert and cast checks for the unit tests even if this has been specified for the rest of the code base, e.g. via --disable-glib-asserts. 2011-01-06 23:17:12 +0000 Tim-Philipp Müller * win32/common/libgstpbutils.def: win32: udpate pbutils .def file for API change 2011-01-06 23:13:53 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: docs: update docs 2011-01-06 23:13:35 +0000 Tim-Philipp Müller * po/fi.po: * po/ru.po: po: update translations 2011-01-06 23:08:34 +0000 Tim-Philipp Müller * ext/pango/gsttextoverlay.c: textoverlay: make text property controllable too Because we can, and because it's the most interesting one to control really, after xpos/ypos. 2011-01-06 23:01:20 +0000 Lane Brooks * ext/pango/Makefile.am: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: make some properties controllable https://bugzilla.gnome.org/show_bug.cgi?id=638859 2011-01-06 20:37:50 +0000 Tim-Philipp Müller * tests/check/libs/.gitignore: tests: ignore new rtsp test binary 2011-01-05 15:54:15 -0800 David Schleef * ext/ogg/gstoggdemux.c: oggdemux: ignore header pages when looking for keyframe This was causing keyframe_granule to be set to 0 for all streams when seeking to the beginning of the stream, i.e., at the beginning of playback. Fixes #619778. 2010-12-29 15:27:44 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: when the last keyframe position is not known, do not use -1 Instead, use either 0 or 1, depending on bitstream version, which give the correct result for streams which aren't cut off at start. This allows that function to not return negative granpos. https://bugzilla.gnome.org/show_bug.cgi?id=638276 2011-01-06 17:57:41 +0000 christian schaller * gst-plugins-base.spec.in: Update spec file with discoverer and encodebinchanges 2011-01-05 15:53:09 +0530 Arun Raghavan * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: Documentation updates Some cosmetic changes and expands on some bits of the documentation to make it more newbie-friendly. 2011-01-06 13:08:53 +0100 Robert Swain * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: Fix behaviour for frame rate cap changes The outgoing buffer timestamp is calculated by scaling an output buffer count by the src pad frame rate caps. If these caps change, we need to reset the count and work from a new base timestamp. The new output buffer timestamp is then the count scaled by the new caps values added onto the base timestamp. 2011-01-06 08:47:04 +0100 Edward Hervey * tools/gst-discoverer.c: tools: Improve pretty-printing of tags Avoids escaping strings for nothing and printing out useless buffer contents. 2011-01-06 08:46:42 +0100 Edward Hervey * tools/gst-discoverer.c: tools: don't leak the GMainLoop 2011-01-06 00:28:39 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/encoding-target.c: pbutils: config.h include should come before all other includes 2011-01-05 22:02:35 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst/encoding/gstencodebin.c: * tests/check/libs/profile.c: * tests/examples/encoding/encoding.c: encoding: encoding_profile_get_output_caps => _get_input_caps Makes more sense name-wise 2011-01-05 20:40:39 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: docs: Add various new symbols 2011-01-05 01:50:34 +0530 Arun Raghavan * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: encoding-profile: Minor documentation updates 2011-01-03 19:07:45 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Give a better usage example 2011-01-03 18:52:00 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * tests/check/libs/profile.c: * win32/common/libgstpbutils.def: encoding-target: Fixup loading/saving methods 2011-01-03 18:51:22 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: encoding-target: more docs cleanups 2011-01-03 16:07:49 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-target.c: * tests/check/libs/profile.c: encoding-target: Change target suffix to .gep Along with a bunch of other internal cleanups 2011-01-03 13:21:26 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: encoding-target: Add more docs regarding categories 2011-01-03 13:20:19 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * tests/check/libs/profile.c: * win32/common/libgstpbutils.def: encoding-target: Add API for list all categories and targets API: gst_encoding_list_available_categories API: gst_encoding_list_all_targets 2010-12-22 18:18:00 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * tests/check/libs/profile.c: * win32/common/libgstpbutils.def: encoding-profile: Add convenience method to find a profile API: gst_encoding_profile_find 2010-12-22 18:16:33 +0100 Edward Hervey * configure.ac: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * tests/check/libs/profile.c: encoding-target: Implement save/load feature Fixes #637735 2010-12-22 11:41:41 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * tests/check/libs/profile.c: * win32/common/libgstpbutils.def: encoding-target: Add method to get a profile by name API: gst_encoding_target_get_profile 2011-01-05 19:30:50 +0100 Edward Hervey * gst/encoding/gstencodebin.c: encodebin: Convert to new GstElementClass::request_new_pad_full vmethod 2011-01-05 15:31:09 +0100 Edward Hervey * gst-libs/gst/pbutils/pbutils.h: pbutils: Don't forget to include the encoding headers 2011-01-05 12:02:02 +0100 Edward Hervey * gst-libs/gst/video/video.c: video: Fix uninitialized variables reported by macosx gcc 2010-12-07 14:59:46 +0530 Arun Raghavan * gst-libs/gst/pbutils/codec-utils.c: codec-utils: Minor documentation changes 2011-01-02 15:48:47 -0800 David Schleef * gst/typefind/gsttypefindfunctions.c: typefind: Add stream-format to h264 caps 2011-01-02 17:21:54 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: default to enable-last-buffer=FALSE for audio sinks There isn't really any good reason to get the last buffer from an audio sink, so don't make the sink keep it around unnecessarily. 2010-12-31 12:14:22 +0000 Tim-Philipp Müller * configure.ac: * gst/playback/Makefile.am: * gst/playback/gstinputselector.c: * gst/playback/gstinputselector.h: * gst/playback/gstplay-marshal.list: * gst/playback/gstplaybin2.c: playbin2: use input-selector from core instead of internal copy 2010-12-31 01:24:50 +0000 Tim-Philipp Müller * tests/icles/.gitignore: * tests/icles/Makefile.am: tests: add input-selector-test and output-selector-test Moved from gst-plugins-bad into -base, becasue it uses videotestsrc and other elements from -base, so it can't be in core. 2010-11-24 12:22:01 +0200 Stefan Kost * tests/icles/output-selector-test.c: output-selector-test: don't hardcode videosinks and use more colorspace conv. Use autovideosink instead of hardcoded sinks. Use an additional colorspace converter between videotestsrc and timeoverlay. 2009-10-27 11:51:05 -0700 Michael Smith * tests/icles/output-selector-test.c: tests: Remove executable bits from non-executable files. 2009-02-24 16:33:51 +0100 Sebastian Dröge * tests/icles/input-selector-test.c: tests: move examples directory to tests/examples as in every other GStreamer module 2008-06-19 13:18:24 +0000 Stefan Kost tests: Use BOILERPLATE macro and update output-selector test to the latest api changes. Original commit message from CVS: * gst/selector/gstoutputselector.c: * tests/icles/output-selector-test.c: Use BOILERPLATE macro and update test to the latest api changes. 2008-02-07 13:48:20 +0000 Stefan Kost tests/icles/output-selector-test.c: Add a fixme comment. Original commit message from CVS: * gst/multifile/gstmultifilesink.c: Add a fixme comment. * gst/selector/gstoutputselector.c: Fix same leak as in input-selector. * tests/icles/output-selector-test.c: Improve the test. 2008-01-29 07:38:31 +0000 Stefan Kost Replace the switch plugin with the selector plugin. Add output-selector as the opposite of input-selector (was switc... Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-switch.xml: * gst/selector/.cvsignore: * gst/selector/Makefile.am: * gst/selector/gstinputselector.c: * gst/selector/gstinputselector.h: * gst/selector/gstoutputselector.c: * gst/selector/gstoutputselector.h: * gst/selector/gstselector-marshal.list: * gst/selector/gstselector.c: * gst/selector/selector.vcproj: * gst/switch/.cvsignore: * gst/switch/Makefile.am: * gst/switch/gstswitch-marshal.list: * gst/switch/gstswitch.c: * gst/switch/gstswitch.h: * gst/switch/switch.vcproj: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/output-selector-test.c: Replace the switch plugin with the selector plugin. Add output- selector as the opposite of input-selectoo (was switch). Add a test for output-selector. Add docs for the elements. The vcproj needs update. Fixes #500142. 2010-12-30 18:08:05 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertpaudiopayload.c: baseaudiopay: fix timestamps on buffer lists Fix the outgoing timestamps and RTP timestamps on outgoing buffers when using buffer lists. 2010-12-29 22:36:41 +0000 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: assume EBML files without doctype are matroska https://bugzilla.gnome.org/show_bug.cgi?id=638019 2010-12-29 12:53:36 +0100 Wim Taymans * gst/tcp/gstmultifdsink.c: multifdsink: only keep last valid timestamp Fixes #634397 2010-10-13 17:09:13 +0200 Andoni Morales Alastruey * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: multifdsink: add first and last buffer's timestamp to the stats 2010-12-29 11:51:42 +0000 Tim-Philipp Müller * ext/ogg/gstoggstream.c: ogg: fix typo in comment 2010-12-28 17:39:58 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: fix interpretation of Theora granule position The offset part of the granpos is not a sign of the newer encoding. Use the version number instead. This fixes the criticals thrown by theoraparse, and (at last) the remaining part of #553244. 2010-11-25 17:01:04 +0100 Havard Graff * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: protect against ringbuffer disappearing while in a query Observed a case where the sink went to null-state during the query, hence the ringbuffer-pointer was NULL, causing a crash. Moving the ringbuffer-check code until after the query, and hold the lock during the check and while using the spec-values. It should not matter to the query wether the ringbuffer is present or not, and it actually gets a time bit more time to get the ringbuffer set up in this case! Fixes #635231 2010-12-28 19:39:18 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: handle pads that are not added yet Don't try to stream data on pads that are not added yet. This happens while we discover the different streams. 2010-12-28 11:41:49 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertpdepayload.c: basedepay: fix refcounting issue Make sure that when _make_writable() returns a new buffer, we actually push that one instead of the old one. 2010-12-25 15:22:42 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: implement tag extraction for Kate streams This will mainly allow Totem to know the language of those streams, so the subtitle selection menu gets properly filled out. https://bugzilla.gnome.org/show_bug.cgi?id=638005 2010-12-26 17:29:38 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for DVB subtitle caps 2010-12-23 17:18:17 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: set headers on caps This will allow switching from one stream to another without having to send the headers for the new stream again. https://bugzilla.gnome.org/show_bug.cgi?id=637927 2010-12-22 15:29:56 -0800 David Schleef * ext/ogg/gstoggstream.c: oggstream: Fix parsing of theora size 2010-12-22 19:06:56 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: oggdemux: Don't use gst_pad_alloc_buffer() allocate buffers using gst_buffer_new_and_alloc() instead of gst_pad_alloc_buffer_and_set_caps(), as the first one will cause the pad to block, and we don't want that since that will prevent subsequent pads from being fed if a block occurs at start, when all pads must be fed for playback to start. This fixes autoplugging of the tiger element and other things. https://bugzilla.gnome.org/show_bug.cgi?id=637822 2010-12-22 18:12:14 +0100 Edward Hervey * gst/encoding/gstencodebin.c: encodebin: Also use "Formatter"s for container formats 2010-12-22 18:19:48 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-target.c: encoding-target: Fix typo 2010-12-22 10:32:03 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: Fix unitialized data warning Fixes a valgrind warning on jifmux tests on -bad caused by unitialized bytes. Fixes #637758 2010-12-22 13:56:12 +0100 Alessandro Decina * gst/encoding/gstencodebin.c: encodebin: minor fix in error handling. Don't call gst_bin_remove (bin, ). 2010-12-21 18:51:29 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/missing-plugins.c: pbutils: More gtk-doc annotations 2010-12-21 10:26:40 +0000 Vincent Penquerc'h * gst/playback/gstplaybin2.c: playbin2: delay stream-changed messages https://bugzilla.gnome.org/show_bug.cgi?id=637586 2010-12-21 16:33:50 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-target.c: * tests/check/libs/profile.c: encoding-target: Ensure target names and categories are valid 2010-12-21 15:11:10 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertpdepayload.h: depay: update some docs 2010-12-21 15:02:18 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: rtpdepayloade: add support for getting events Add support for intercepting sink events in the depayloader by adding a new vmethod. 2010-12-21 13:37:41 +0100 Wim Taymans * ext/vorbis/gstvorbisdec.c: vorbisdec: keep timestamps when no decoded output Keep track of the timestamps even when we didn't generate decodable output. 2010-12-21 13:19:38 +0100 Wim Taymans * ext/vorbis/gstvorbisdec.c: vorbisdec: avoid using invalid timestamps 2010-12-21 10:41:27 +0100 Wim Taymans * tests/examples/seek/seek.c: seek: don't pause for live buffering messages 2010-12-20 18:29:15 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertppayload.c: basertppay: use RTP base time when invalid timestamps When we have an invalid running-time (because we clipped, for example) use the RTP base time for timestamping instead of generating wrong RTP timestamps. 2010-12-20 18:28:14 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertppayload.c: rtppayload: copy applied rate to segment Use set_segment_full to copy all segment values to the segment structure. 2010-12-21 13:09:34 +0100 Edward Hervey * tests/check/elements/encodebin.c: * tests/check/libs/profile.c: tests: Update container-less profile checks 2010-12-21 13:08:15 +0100 Edward Hervey * gst-libs/gst/pbutils/encoding-profile.c: encoding-profile: Add guard against profiles without format 2010-12-21 13:07:27 +0100 Edward Hervey * gst/encoding/gstencodebin.c: encodebin: Fix usage of non-container profiles 2010-12-17 16:10:53 +0100 Edward Hervey * docs/plugins/inspect/plugin-videoscale.xml: docs: Update for videoscale class changes 2010-12-20 17:46:48 +0100 Edward Hervey * common: Automatic update of common submodule From 169462a to 46445ad 2010-12-19 13:41:22 +0100 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: gstdiscoverer: Don't leak tags 2010-12-19 13:22:23 +0100 Edward Hervey * tools/gst-discoverer.c: gst-discoverer: show global tags by default 2010-12-19 09:53:08 +0100 Sebastian Dröge * tests/check/libs/rtsp.c: rtsp: Fix memory leaks in the gst_rtsp_url_decode_path_components() unit tests 2010-12-18 20:47:00 +0100 Sebastian Dröge * tests/examples/encoding/Makefile.am: examples: Fix encodebin example CFLAGS and LDFLAGS Previously it would only succeed to link if a new enough libgstpbutils-0.10 was installed in the default library search path. 2010-12-17 14:16:18 +0000 Vincent Penquerc'h * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: ogg: implement packet duration query for kate streams https://bugzilla.gnome.org/show_bug.cgi?id=637519 2010-12-17 19:06:27 -0600 Rob Clark * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst/encoding/gstencodebin.c: fix compile errors on macosx with i686-apple-darwin10-gcc-4.2.1: encoding-profile.h:134: warning: type qualifiers ignored on function return type encoding-profile.c:240: warning: type qualifiers ignored on function return type gstencodebin.c: In function 'next_unused_stream_profile': gstencodebin.c:454: warning: format '%d' expects type 'int', but argument 8 has type 'GType' gstencodebin.c:464: warning: format '%d' expects type 'int', but argument 8 has type 'GType' 2010-12-17 00:49:26 -0800 Leo Singer * gst/audioresample/gstaudioresample.c: audioresample: corrected buffer duration calculation to account for nonzero initial timestamp Since we calculate timestamps by: timestamp = t0 + (out samples) / (out rate) and durations by: duration = ((out samples) + (processed samples)) / (out rate) - timestamp if t0 is nonzero, this would simplify to duration = t0 + (processed samples) / (out rate). This duration is too large by the amount t0. We should have done: duration = t0 + ((out samples) + (processed samples)) / (out rate) - timestamp so that duration = (processed samples) / (out rate). 2010-12-16 20:40:33 -0800 Leo Singer * gst/audioresample/gstaudioresample.h: audioresample: changed num_gap_samples, num_nongap_samples from guint32 to guint64 so that gaps of greater than or equal to 2^32 samples do not cause integer overflow 2010-12-16 20:38:31 -0800 Leo Singer * gst/audioresample/gstaudioresample.c: audioresample: push half a history length, instead of a full history length, at end-of-stream so that output segment and input segment have same duration 2010-12-16 20:34:13 -0800 Leo Singer * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: audioresample: renamed count_gap, count_nongap to more descriptive num_gap_samples, num_nongap_samples 2010-12-16 20:32:07 -0800 Leo Singer * gst/audioresample/gstaudioresample.c: audioresample: replaced void* with gpointer 2010-12-16 20:30:24 -0800 Leo Singer * gst/audioresample/gstaudioresample.c: audioresample: initial filter transient discarded; unit tests passing 2010-12-16 20:09:58 -0800 Leo Singer * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/speex_resampler.h: * gst/audioresample/speex_resampler_wrapper.h: Revert "Revert "audioresample: Add GAP flag support"" This reverts commit 35c76b3409dde7f2dcc8232388a47a1b99b661a7. Conflicts: gst/audioresample/gstaudioresample.c gst/audioresample/gstaudioresample.h 2010-12-16 10:26:43 +0000 Vincent Penquerc'h * ext/pango/gsttextoverlay.c: timeoverlay: add missing break https://bugzilla.gnome.org/show_bug.cgi?id=637377 2010-12-16 10:11:43 +0100 Sebastian Dröge * gst/videoscale/gstvideoscale.c: videoscale: Change classification to Filter/Converter/Video/Scaler 2010-12-15 23:47:29 +0200 Stefan Kost * win32/common/libgstrtsp.def: win32: update the def file with the new rtsp api 2010-12-15 17:51:36 +0100 Andy Wingo add gst_rtsp_url_decode_path_components * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/rtsp/gstrtspurl.c (gst_rtsp_url_decode_path_components): New public function, returns a strv of uri-decoded path components. * tests/check/Makefile.am: * tests/check/libs/rtsp.c: Add tests. 2010-12-15 16:35:43 +0100 Wim Taymans * win32/common/libgstrtp.def: win32: update defs file 2010-12-15 16:30:55 +0100 Wim Taymans * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: relax arrangement for RTP bufferlists Don't assume there are exactly 2 buffers but allow cases where the header and payload are in 1 buffer or where the payload is in more buffers. 2010-12-15 14:55:34 +0200 Stefan Kost * common: Automatic update of common submodule From 20742ae to 169462a 2010-12-15 12:58:47 +0100 Wim Taymans * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: basedepay: add support for buffer lists in the depayloader Add support for buffer lists in the depayloader. 2010-09-13 10:08:47 +0200 Edward Hervey * configure.ac: * tests/examples/Makefile.am: * tests/examples/encoding/.gitignore: * tests/examples/encoding/Makefile.am: * tests/examples/encoding/encoding.c: * tests/examples/encoding/gstcapslist.c: * tests/examples/encoding/gstcapslist.h: examples: encoding example Along with gstcapslist 2010-08-13 17:36:38 +0200 Edward Hervey * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-libvisual.xml: * gst/encoding/.gitignore: * gst/encoding/Makefile.am: * gst/encoding/gstencode-marshal.list: * gst/encoding/gstencodebin.c: * gst/encoding/gstencodebin.h: * gst/encoding/gstsmartencoder.c: * gst/encoding/gstsmartencoder.h: * gst/encoding/gststreamcombiner.c: * gst/encoding/gststreamcombiner.h: * gst/encoding/gststreamsplitter.c: * gst/encoding/gststreamsplitter.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/encodebin.c: gst: New encoding plugin https://bugzilla.gnome.org/show_bug.cgi?id=627476 2010-08-13 17:27:52 +0200 Edward Hervey * docs/design/Makefile.am: * docs/design/design-encoding.txt: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/encoding-profile.c: * gst-libs/gst/pbutils/encoding-profile.h: * gst-libs/gst/pbutils/encoding-target.c: * gst-libs/gst/pbutils/encoding-target.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/profile.c: * win32/common/libgstpbutils.def: pbutils: New Profile library https://bugzilla.gnome.org/show_bug.cgi?id=627476 2010-12-15 12:21:05 +0200 Stefan Kost * configure.ac: configure: use the -Bsymbolic-functions linker flag if supported This feature turns intra library calls into direct function calls and thus makes them a little faster. The downside is that this causes problems for e.g. LD_PRELOAD based tools. Thus add a configure option to turn it off. 2010-12-14 00:16:13 -0800 David Schleef * gst/typefind/gsttypefindfunctions.c: typefind: Add check for yuv4mpeg 2010-12-13 18:05:41 +0200 Stefan Kost * gst-libs/gst/pbutils/descriptions.c: pbutils: spell out two more container formats 2010-12-13 16:20:23 +0200 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-private.h: * tools/gst-discoverer.c: * win32/common/libgstpbutils.def: discoverer: query seekability Besides the duration we can also query the seekability of a stream. Use the new API in the gst-discoverer tool. API: gst_discoverer_info_get_seekable 2010-12-13 16:23:04 +0200 Stefan Kost * common: Automatic update of common submodule From 011bcc8 to 20742ae 2010-12-13 13:04:40 +0100 Mark Nauwelaerts * tests/check/elements/audioresample.c: tests: audioresample: adjust unit test to relaxed discont checking 2010-12-13 12:34:58 +0200 Stefan Kost * docs/Makefile.am: * docs/design/Makefile.am: make: move the design doc also on the Makefile.am level (for dist) 2010-12-13 10:05:00 +0100 Mark Nauwelaerts * gst/audioresample/gstaudioresample.c: audioresample: relax discont checking slightly 2010-12-13 09:56:04 +0100 Mark Nauwelaerts * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: audioresample: provide as much valid output ts and offset as valid input ... by independently tracking time and offset, rather than having no offset leading to no output ts. 2010-12-13 10:41:24 +0200 Stefan Kost * gst/typefind/gsttypefindfunctions.c: typefinders: name "aac" typefinder "audio/aac" This is in sync how we call the others. 2010-12-13 09:58:53 +0200 Stefan Kost * docs/design/design-audiosinks.txt: docs: move design doc to design folder 2010-12-11 19:33:33 +0200 Zeeshan Ali (Khattak) * gst/videotestsrc/generate_sine_table.c: videotestsrc: Add a missing return statement 2010-12-11 17:18:49 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Deprecate new-decoded-pad and removed-decoded-pad signals They're really the same as pad-added and pad-removed from GstElement and it doesn't make sense to have two signals for the same thing. 2010-12-11 17:14:36 +0100 Sebastian Dröge * gst/playback/gstdecodebin2.c: decodebin2: Emit "remove-decoded-pad" signal when pads are removed from decodebin2 Fixes bug #636198. 2010-12-10 18:57:56 +0100 Wim Taymans * gst-libs/gst/app/gstappsink.c: appsink: unset flushing flag when starting When we start again after being stopped, clear the flushing flag or else it will always be TRUE. Fixes #636769 2010-12-09 16:57:35 +0100 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add/Fix some media descriptions Fixes #623413 2010-12-09 08:40:25 +0100 Gavin Stark * sys/xvimage/xvimagesink.c: xvimagesink: Use gst_caps_can_intersect() instead of gst_caps_intersect() Fixes a memory leak and bug #636827. 2010-12-08 12:55:24 +0100 Mark Nauwelaerts * gst/typefind/gsttypefindfunctions.c: typefinding: improve iso media typefinding ... by also considering compatible brands rather than only aiming at major brand (of which there are a seemingly ever expanding great many). 2010-12-08 12:28:32 +0200 Stefan Kost * tests/check/libs/pbutils.c: tests: remove superflous ';' and reindent 2010-12-08 12:09:45 +0200 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/rtp/gstrtpbuffer.c: docs: fix wrong use of Since: keyword 2010-12-07 20:28:37 +0200 René Stadler * tests/check/gst/typefindfunctions.c: tests: add AC-3, E-AC-3 typefind tests 2010-12-03 17:33:40 +0200 René Stadler * gst/typefind/gsttypefindfunctions.c: typefind: ignore AC-3 BSIDs 9, 10 and >16 These are reserved for future extensions which will not be backwards compatible to E-AC-3. 2010-12-03 16:54:21 +0200 René Stadler * gst/typefind/gsttypefindfunctions.c: typefind: accept consecutive AC-3 frames of different sizes This is perfectly valid and occurs in particular when there are (in)dependent substreams present. 2010-12-03 16:22:32 +0200 René Stadler * gst/typefind/gsttypefindfunctions.c: typefind: remove useless masking in (E-)AC-3 typefinders 2010-12-03 16:14:15 +0200 René Stadler * gst/typefind/gsttypefindfunctions.c: typefind: stop scanning after suggesting E-AC-3 caps 2010-12-03 18:08:58 +0200 René Stadler * gst/typefind/gsttypefindfunctions.c: typefind: fix E-AC-3 frame size parsing Frame size is given in words; it is already multiplied by two where needed, so the left shift is superfluous. This extra multiplication caused the code to inspect the third packet instead of the second, which would fail for files where the second packet has a size different from the first. 2010-12-07 17:35:14 +0100 Edward Hervey * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp: Move around the typedefs to make GIR happy Otherwise it will generate they symbols as _GstRTSP* (with the leading underscore). 2010-12-07 11:31:30 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: use _object_ref_sink() when we can 2010-12-07 11:30:28 +0100 Wim Taymans * ext/alsa/gstalsadeviceprobe.c: alsaprobe: don't abuse the object class lock don't abuse the class lock but use a new static lock for protecting the probed list of devices. 2010-12-06 20:01:35 +0100 Wim Taymans * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcp.c: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsink.h: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpclientsrc.h: * gst/tcp/gsttcpserversrc.c: * gst/tcp/gsttcpserversrc.h: tcp: remove deprecated GDP protocol 2010-12-06 17:09:10 +0100 Wim Taymans * configure.ac: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: more 0.10 -> 0.11 changes 2010-12-06 16:50:39 +0100 Wim Taymans * android/alsa.mk: * android/app.mk: * android/app_plugin.mk: * android/audio.mk: * android/audioconvert.mk: * android/decodebin.mk: * android/decodebin2.mk: * android/gdp.mk: * android/interfaces.mk: * android/netbuffer.mk: * android/pbutils.mk: * android/playbin.mk: * android/queue2.mk: * android/riff.mk: * android/rtp.mk: * android/rtsp.mk: * android/sdp.mk: * android/tag.mk: * android/tcp.mk: * android/typefindfunctions.mk: * android/video.mk: android: update for 0.11 2010-12-06 12:11:03 +0100 Wim Taymans * configure.ac: configure: start 0.11 branch 2010-12-04 14:48:46 +0000 Tim-Philipp Müller * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: tests: use GLib 2.22 API unconditionally 2010-12-04 14:45:58 +0000 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/mklangtables.c: * gst-libs/gst/video/convertframe.c: libs: use GLib 2.22 API unconditionally 2010-12-03 17:41:18 +0100 Benjamin Gaignard * Android.mk: * android/NOTICE: * android/alsa.mk: * android/app.mk: * android/app_plugin.mk: * android/audio.mk: * android/audioconvert.mk: * android/decodebin.mk: * android/decodebin2.mk: * android/gdp.mk: * android/gst-libs/gst/app/gstapp-marshal.c: * android/gst-libs/gst/app/gstapp-marshal.h: * android/gst-libs/gst/audio/audio-enumtypes.c: * android/gst-libs/gst/audio/audio-enumtypes.h: * android/gst-libs/gst/interfaces/interfaces-enumtypes.c: * android/gst-libs/gst/interfaces/interfaces-enumtypes.h: * android/gst-libs/gst/interfaces/interfaces-marshal.c: * android/gst-libs/gst/interfaces/interfaces-marshal.h: * android/gst-libs/gst/pbutils/pbutils-enumtypes.c: * android/gst-libs/gst/pbutils/pbutils-enumtypes.h: * android/gst-libs/gst/rtsp/gstrtsp-enumtypes.c: * android/gst-libs/gst/rtsp/gstrtsp-enumtypes.h: * android/gst-libs/gst/rtsp/gstrtsp-marshal.c: * android/gst-libs/gst/rtsp/gstrtsp-marshal.h: * android/gst-libs/gst/video/video-enumtypes.c: * android/gst-libs/gst/video/video-enumtypes.h: * android/gst/playback/gstplay-marshal.c: * android/gst/playback/gstplay-marshal.h: * android/gst/tcp/gsttcp-enumtypes.c: * android/gst/tcp/gsttcp-enumtypes.h: * android/gst/tcp/gsttcp-marshal.c: * android/gst/tcp/gsttcp-marshal.h: * android/interfaces.mk: * android/netbuffer.mk: * android/pbutils.mk: * android/playbin.mk: * android/queue2.mk: * android/riff.mk: * android/rtp.mk: * android/rtsp.mk: * android/sdp.mk: * android/tag.mk: * android/tcp.mk: * android/typefindfunctions.mk: * android/video.mk: Add build system for Android 2010-12-03 15:46:07 +0100 Wim Taymans * win32/common/libgstvideo.def: defs: add new symbol 2010-10-27 13:49:41 +0200 Mark Nauwelaerts * ext/ogg/gstoggstream.c: oggstream: additional tag extraction ... supporting theora, flac, speex, celt. Fixes #629349. 2010-10-27 12:08:25 +0200 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: use separate tag extraction vfunction 2010-10-27 11:58:53 +0200 Mark Nauwelaerts * ext/ogg/gstoggstream.c: oggstream: refactor vorbis comment tag extraction 2010-10-27 11:16:15 +0200 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: oggdemux: plug some oggstream leaks 2010-10-27 10:59:03 +0200 Mark Nauwelaerts * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: streamline tag extraction and prevent some leaks 2010-10-27 10:58:16 +0200 Mark Nauwelaerts * ext/ogg/gstoggdemux.c: oggdemux: send stream tags after newsegment and global tags 2010-09-14 23:08:51 +0300 Sreerenj Balachandran * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: perform more (vorbis comment header) tag extractions In particular, move comment header parsing to gstoggstrem.c. Thanks to Felipe Contreras. Fixes #629349 (partially). 2010-10-27 10:20:15 +0200 Mark Nauwelaerts * gst-libs/gst/riff/riff-ids.h: riff: document omitted field in _gst_riff_strf_auds (aka WAVEFORMATEX) 2010-10-10 17:15:53 -0700 David Schleef * ext/ogg/gstoggstream.c: oggstream: fix incorrect warning on skeleton headers 2010-11-20 19:02:50 -0800 David Schleef * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggparse: Set DELTA_UNIT on buffers 2010-12-03 00:01:06 +0000 Tim-Philipp Müller * tests/check/libs/video.c: tests: fix video library unit test and skip non-working YUV9/YVU9 parts for now 2010-12-02 23:49:31 +0000 Tim-Philipp Müller * gst-libs/gst/video/video.c: video: add missing break statement for the GST_VIDEO_FORMAT_RGB8_PALETTED case 2010-11-15 22:02:07 +0200 Evan Broder * tools/gst-visualise-m.m: gst-visualise: trim unused perl dependency Remove an unused perl module. Fixes #634522. 2010-11-01 23:07:12 +0200 Stefan Kost * gst/playback/gstplaybin2.c: playbin2: add some logging for failure case 2010-11-01 23:06:21 +0200 Stefan Kost * gst/playback/gstinputselector.c: inputselector: log times in human readable form 2010-11-01 22:44:16 +0200 Stefan Kost * gst/playback/gstinputselector.c: inputselector: more G_PARAM_STATIC_STRINGS use 2010-11-01 22:42:23 +0200 Stefan Kost * gst/playback/gstinputselector.c: inputselector: move reoccuring logs to LOG and remove a double info Less debug spew in DEBUG category. No need to log pad again if we use GST_LOG_OBJECT(pad,...). 2010-12-02 19:11:37 +0100 Edward Hervey * gst-libs/gst/rtsp/Makefile.am: libgstrtsp: Fix typo in .pc to use for GIR 2010-12-02 15:16:25 +0100 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: docs: Add a whole bunch of symbols that were unused to the proper sections 2010-11-10 11:02:27 +0100 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: only parse TTL for IP4 addresses Only IP4 addresses can have a TTL in the address. 2010-11-10 10:53:41 +0100 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: * win32/common/libgstsdp.def: sdp: add method to check for multicast addresses Expose a previously internal method to check for multicast addresses. See #634093 2010-11-03 11:13:08 +0100 Sebastian Dröge * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: pbutils: Take nano version into account in GST_CHECK_PLUGINS_BASE_VERSION() If the nano is > 0 the current version should be handled the same as micro + 1. 2010-11-03 09:51:40 +0100 Sebastian Dröge * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add YUV9, YVU9 and IYU1 video formats API: GST_VIDEO_FORMAT_YUV9: planar 4:1:0 YUV API: GST_VIDEO_FORMAT_YVU9: planar 4:1:0 YUV (chroma planes swapped) API: GST_VIDEO_FORMAT_IYU1: packed 4:1:1 YUV (Cr-Y0-Y1-Cb-Y2-Y3) 2010-11-02 11:57:09 +0100 Sebastian Dröge * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add 8-bit paletted RGB API: Add GST_VIDEO_FORMAT_RGB8_PALETTED API: Add GST_VIDEO_CAPS_RGB8_PALETTED API: Add gst_video_parse_caps_palette() 2010-10-31 19:17:28 +0100 Sebastian Dröge * ext/gnomevfs/gstgnomevfssrc.c: gnomevfssrc: Remove dead assignment 2010-10-31 19:14:27 +0100 Sebastian Dröge * gst/tcp/gsttcp.c: tcp: Remove dead assignment 2010-10-31 19:11:53 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: gen_video_chain() always returns a bin, no need to check for that 2010-10-31 19:08:32 +0100 Sebastian Dröge * gst/playback/gststreamsynchronizer.c: streamsynchronizer: If we get EOS for an unknown stream just do nothing instead of dereferencing NULL pointers. This can happen if the stream was just removed from the streamsynchronizer in a bad time. 2010-10-31 19:06:00 +0100 Sebastian Dröge * gst/playback/gstplaysink.c: playsink: gen_video_deinterlace_chain() always returns a bin, no need to check that 2010-10-31 19:01:49 +0100 Sebastian Dröge * sys/v4l/v4l_calls.c: v4l: If no video tuner is the requested one don't read unitialized data 2010-10-25 14:13:16 +0100 Sebastian Dröge * sys/ximage/ximagesink.c: ximagesink: Add docs for the new property Including Since markers 2010-10-25 14:11:01 +0100 Sebastian Dröge * sys/xvimage/xvimagesink.c: xvimagesink: Add docs for the new property Including Since markers 2010-10-25 14:09:39 +0100 Sebastian Dröge * sys/xvimage/xvimagesink.c: xvimagesink: Use PROP_ instead of ARG_ for the property enums 2010-10-25 14:09:20 +0100 Andrea Sebastianutti * sys/xvimage/xvimagesink.c: xvimagesink: Add read-only properties window-width and window-height 2010-10-25 14:08:43 +0100 Andrea Sebastianutti * sys/ximage/ximagesink.c: ximagsink: Add read-only properties window-width and window-height 2010-10-17 14:26:23 +0200 Sebastian Dröge * gst-libs/gst/video/video.c: video: Return correct component width/height for A420 2010-12-02 00:15:25 +0000 Tim-Philipp Müller * configure.ac: Bump GLib requirement to >= 2.22 See http://gstreamer.freedesktop.org/wiki/ReleasePlanning/GLibRequirement 2010-12-02 00:12:51 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development === release 0.10.31 === 2010-11-30 19:25:44 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.31 2010-11-24 17:34:21 +0200 Stefan Kost * gst/playback/gsturidecodebin.c: uridecodebin: disconnect signal handlers before disposing 2010-11-22 00:54:35 +0000 Tim-Philipp Müller * gst/playback/gstdecodebin2.c: docs: improve decodebin2 docs a little Mention that new pads may be created even after no-more-pads. https://bugzilla.gnome.org/show_bug.cgi?id=634584 2010-11-20 15:45:49 -0800 Evan Nemerson * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: introspection: Add information on exported packages to GIRs https://bugzilla.gnome.org/show_bug.cgi?id=635392 2010-11-18 04:51:56 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: Minor documentation fix docs: Minor discoverer documentation fix 2010-11-18 00:36:14 +0000 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.30.5 pre-release 2010-11-18 00:35:53 +0000 Tim-Philipp Müller * po/bg.po: * po/ca.po: * po/es.po: * po/hu.po: * po/sk.po: * po/tr.po: po: update translations 2010-11-18 00:33:22 +0000 Tim-Philipp Müller * gst/playback/gstdecodebin.c: decodebin: fix one more pad template ref leak 2010-11-17 10:14:59 +0200 Harri Mähönen * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: *decodebin*: don't leak pad templates set on ghostpads https://bugzilla.gnome.org/show_bug.cgi?id=635067 2010-11-17 01:01:03 +0000 Tim-Philipp Müller * gst/playback/gststreamsynchronizer.c: playbin2: disable streamsynchronizer magic for this release Some things aren't quite right yet and cause problems (0-sized buffers with PREROLL flag set cause crashes in elements that don't expect those; getting pipeline back to preroll/playing again when audio/video streams have different lengths and a seek past the end of one of the stream happens doesn't always work, etc.). Needs further investigation in the next cycle. https://bugzilla.gnome.org/show_bug.cgi?id=633700 https://bugzilla.gnome.org/show_bug.cgi?id=634699 2010-11-08 09:27:52 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Fix a gtk-doc gobject-introspection annotation gst_discoverer_discover_uri() expects the caller to unref the returned GstDiscovererInfo object. The corresponding gtk-doc annotation was not updated to reflect this. 2010-11-08 09:26:27 +0530 Arun Raghavan * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * tools/gst-discoverer.c: discoverer: Fix argument type to _container_info_get_streams() No reason for gst_discoverer_container_info_get_streams() to not take a GstDiscovererContainerInfo as its argument. 2010-11-05 20:47:41 +0000 Tim-Philipp Müller * configure.ac: configure: add --with-gtk option and default to Gtk+ 2.0 while the 3.0 API is still in flux https://bugzilla.gnome.org/show_bug.cgi?id=634014 2010-11-03 10:35:35 +0100 Sebastian Dröge * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix IYU1 support Fix conversions to IYU1, they allocated infinite amounts of memory before because no conversion to IYU1 was actually implemented and it was running into an infinite loop trying to find suitable intermediate formats. Also fix the stride and sizes used for IYU1. 2010-11-02 12:29:05 +0000 Tim-Philipp Müller * tests/check/libs/rtp.c: tests: fix invalid free and buffer list leak in rtp library unit test 2010-11-02 12:03:21 +0000 Tim-Philipp Müller * tests/check/libs/tag.c: tests: fix leak in tag library unit test 2010-11-02 12:01:03 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gstexiftag.c: tag: fix leak when parsing undefined EXIF tag into tag list gst_buffer_set_data() does not set GST_BUFFER_MALLOCDATA, but the code assumes the buffer takes ownership of the memory allocated earlier. 2010-11-02 11:57:02 +0000 Tim-Philipp Müller * gst-libs/gst/tag/gstexiftag.c: tag: fix GstDateTime leak when converting exif tag to tag list 2010-11-01 17:00:38 +0000 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.30.4 pre-release 2010-11-01 16:59:59 +0000 Tim-Philipp Müller * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/fr.po: * po/ja.po: * po/nb.po: * po/nl.po: * po/pl.po: * po/sl.po: po: update translations 2010-10-30 16:07:59 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: update docs for discoverer API changes as well 2010-10-30 16:03:18 +0100 Matthias Clasen * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: examples: update some more code for new Gtk+ API, with fallback for older Gtk+ versions Move code to new Gtk+ 3.x / 2.9x API. We have defines in place already that make this code work fine on older Gtk+ 2.x. https://bugzilla.gnome.org/show_bug.cgi?id=632653 2010-10-28 15:13:45 +0200 Sebastian Dröge * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: seek: Define the new combobox API to the old functions if using older GTK https://bugzilla.gnome.org/show_bug.cgi?id=632653 2010-10-30 15:31:52 +0100 Tim-Philipp Müller * win32/common/libgstutils.def: * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstutils.dsp: win32: remove unused libgstutils stuff Cruft from before the lib was renamed to pbutils 2010-10-28 18:51:08 +0300 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * tools/gst-discoverer.c: * win32/common/libgstpbutils.def: discoverer: rename boolean getters for consistency Rename _get_is_image() to _is_image() and _get_interlaced() to _is_interlaced(). https://bugzilla.gnome.org/show_bug.cgi?id=633311 2010-10-30 12:24:05 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/pbutils-private.h: pbutils: remove padding from now-private GstDiscovererInfo structure 2010-10-30 12:03:39 +0100 Tim-Philipp Müller * Makefile.am: * tools/.gitignore: * tools/Makefile.am: tools: rename gst-discoverer binary to gst-discoverer-0.10 We're not providing a wrapper like we do for the tools in core, since wrappers are confusing (e.g. for debugging purposes), mostly pointless (since the API is likely to change between major versions), and cause packaging issues when packages for two different major versions are to be installed in parallel. https://bugzilla.gnome.org/show_bug.cgi?id=633023 2010-10-30 11:41:23 +0100 Tim-Philipp Müller * tools/gst-discoverer.c: tools: update gst-discoverer tool for last-minute API change https://bugzilla.gnome.org/show_bug.cgi?id=633311 2010-10-29 14:17:44 +0100 Wim Taymans * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: calculate better timeout value We want to send the keealive message a little earlier than the timeout value specifies. Scale this based on the value of the timeout instead of just assuming 5 seconds. 2010-10-29 14:24:54 +0200 Thijs Vermeir * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: don't let the rtsp connection timeout Because we should act before the rtsp server does a timeout, we reduce the timeout-time with 5 seconds, this should be safe to always keep te rtsp connection alive. https://bugzilla.gnome.org/show_bug.cgi?id=633455 2010-10-28 15:55:12 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/videoscale.c: videoscale: Add unit test for working reverse negotiation See bug #633147. 2010-10-29 11:48:18 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: fix wrong flowreturn handling Oggdemux will currently try to pad alloc a buffer from the peer when it is reading the header files. This is a relic from the time where we had an internal parser and needs to be removed at some point in time. The problem is that when there is no peer pad yet (which is normal when collecting headers) we should still continue to parse all the packets of a page instead of erroring out on NOT_LINKED. Fixes #632167 2010-10-29 11:47:53 +0100 Wim Taymans * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: ogg: add some more debug statements 2010-10-26 16:41:28 +0100 Jan Schmidt * gst/playback/gstplaysink.c: playsink: Fix subpicture overlay when deinterlacing disabled. Fix a bug when reconfiguring the playsink where the subpicture stream is broken by attempting to connect it through streamsynchroniser and second time. 2010-10-28 17:38:29 +0300 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: use const in most of the getters 2010-10-28 03:09:10 +0300 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: use specific types in getters Use GstDiscoverer{Audio,Video}Info in getters like gst_discoverer_{audio,video}_info_get_*(). This avoids the casts in the macros, help language bindings and is more correct. 2010-10-28 11:56:06 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-docs.sgml: discoverer: Move documentation to the correct section And don't mention the (not existing) libgstdiscovery. https://bugzilla.gnome.org/show_bug.cgi?id=633336 2010-10-27 13:16:37 +0100 Jan Schmidt * common: Automatic update of common submodule From 7bbd708 to 011bcc8 2010-10-24 16:09:26 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Get pad caps if we can't get negotiated caps Better provide something than nothing https://bugzilla.gnome.org/show_bug.cgi?id=632988 2010-10-24 15:38:30 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer-types.c: discoverer: Don't ref a NULL caps https://bugzilla.gnome.org/show_bug.cgi?id=632988 2010-09-24 16:02:42 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Don't add non prerolled stream to topology If a final stream didn't preroll, don't add it to the topology since it doesn't give any information at all. https://bugzilla.gnome.org/show_bug.cgi?id=632988 2010-10-24 16:17:09 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Description for RealAudio container format 2010-10-24 15:38:42 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for VP6 alpha and ASS subtitle 2010-10-22 17:44:08 +0100 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.30.3 pre-release 2010-10-20 11:01:59 +0200 Sebastian Dröge * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: seek: The new combo box text API is available since 2.23.0 and 2.91.1 Only use it conditionally. 2010-10-20 11:01:14 +0200 Matthias Clasen * tests/examples/seek/jsseek.c: seek: Don't use deprecated combo box text API Fixes bug #632653. 2010-10-21 12:24:19 +0200 Mark Nauwelaerts * gst/playback/gsturidecodebin.c: uridecodebin: workaround internal decodebin2 failing state change Fixes #632656. 2010-10-21 13:38:01 +0100 Tim-Philipp Müller * tests/examples/overlay/gtk-xoverlay.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: tests: don't use deprecated gtk_widget_hide_all() gtk_widget_hide_all() has been deprecated in gtk+ 2.x and removed in 2.9x master. Just use gtk_widget_hide() instead. 2010-10-21 13:07:34 +0100 Tim-Philipp Müller * tools/Makefile.am: tools: fix linking problems caused by accidentally linking against installed pbutils/gstvideo libs Fixes build errors in jhbuild: /foo/build/gst-plugins-base/gst-libs/gst/video/.libs/libgstvideo-0.10.so: undefined reference to `gst_element_factory_list_get_elements' ../gst-libs/gst/pbutils/.libs/libgstpbutils-0.10.so: undefined reference to `gst_element_link_pads_full' /foo/build/gst-plugins-base/gst-libs/gst/video/.libs/libgstvideo-0.10.so: undefined reference to `gst_element_factory_list_filter' ../gst-libs/gst/pbutils/.libs/libgstpbutils-0.10.so: undefined reference to `gst_pad_link_full' /foo/build/gst-plugins-base/gst-libs/gst/video/.libs/libgstvideo-0.10.so: undefined reference to `gst_plugin_feature_list_debug' 2010-10-19 00:07:47 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/pbutils-marshal.list: * gst-libs/gst/rtsp/gstrtsp-marshal.list: libs: touch marshal.list files to force rebuild after Makefile.am changes Force regeneration of marshal.[ch] files after prefix changes in Makefile.am, to avoid build errors for those of us who don't habitually make clean first. 2010-10-16 01:08:38 +0100 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/pbutils-enumtypes.c: * win32/common/pbutils-enumtypes.h: * win32/common/video-enumtypes.c: 0.10.30.2 pre-release 2010-10-16 01:07:16 +0100 Tim-Philipp Müller * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2010-10-08 17:24:07 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * tests/check/libs/tag.c: tag: Adds GST_TAG_CAPTURING_SOURCE Adds a tag to indicate the source/device used for the capture. Already maps it in exif and adds tests. API: GST_TAG_CAPTURING_SOURCE https://bugzilla.gnome.org/show_bug.cgi?id=631773 2010-10-08 15:51:28 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * tests/check/libs/tag.c: tag: Adds GST_TAG_CAPTURING_METERING_MODE Adds a tag to inform what mode was used by a camera to calculate the picture capturing exposure Also adds mapping to exif and tests API: GST_TAG_CAPTURING_METERING_MODE https://bugzilla.gnome.org/show_bug.cgi?id=631773 2010-10-08 15:14:22 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: * tests/check/libs/tag.c: tag: Adds GST_TAG_CAPTURING_SHARPNESS Adds new tag for tagging sharpness processing used when capturing an image. Also maps it in the exif tags. Tests included. API: GST_TAG_CAPTURING_SHARPNESS https://bugzilla.gnome.org/show_bug.cgi?id=631773 2010-10-15 23:54:40 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspextension.c: * win32/common/libgstrtsp.def: rtsp: don't export marshaller function Make sure the marshaller function isn't exported. As it was never in a public header file, this should be fine. 2010-10-15 21:22:35 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: pbutils: fix distcheck Apparently noinst implies dist. 2010-10-15 11:23:02 -0700 David Schleef * tests/check/Makefile.am: tests: Don't dist generated orc code 2010-10-15 11:22:45 -0700 David Schleef * gst/videoscale/gstvideoscaleorc-dist.c: Update generated orc code 2010-10-15 19:18:12 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/pbutils.h: * win32/common/libgstpbutils.def: pbutils: make marshaller private There's no reason to make the marshaller public API. Don't install pbutils-marshal.h header file and use prefix that makes sure the symbol doesn't get exported. 2010-10-15 19:14:49 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/Makefile.am: pbutils: use fewer variables in Makefile.am to make things clearer Also fix typo in DISTCLEANFILES. 2010-10-15 17:59:26 +0100 Tim-Philipp Müller * configure.ac: configure: bump Orc requirement to 0.4.11 Has fixes for volume, among other things. 2010-10-15 17:23:44 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: docs: improve gst_discoverer_new() docs a bit 2010-10-15 16:43:41 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: private structs need to padding 2010-10-15 11:26:50 +0200 Sebastian Dröge * gst-libs/gst/video/video.c: video: Fix stupid copy&paste error in last commit 2010-10-13 22:51:12 +0200 Sebastian Dröge * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Add support for A420 2010-10-13 20:45:28 +0200 Sebastian Dröge * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: API: Add A420 video format This is planar 4:2:0 YUV plus non-subsampled alpha plane. 2010-10-14 12:31:39 -0700 David Schleef * common: Automatic update of common submodule From 5a668bf to 7bbd708 2010-10-14 16:36:30 +0100 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: typefinding: fix ADTS caps stream-format detail Field should be "stream-format", not "stream-type". 2010-07-08 15:22:08 +0200 Andrzej K. Haczewski * gst/typefind/gsttypefindfunctions.c: typefinding: extend AAC typefinder to detect LOAS streams Extend AAC typefinder to recognize LOAS stream as specified by ISO/IEC 14496-3:2009. https://bugzilla.gnome.org/show_bug.cgi?id=623918 2010-10-13 23:26:35 +0300 Stefan Kost * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: *decodebin*: set pad-templates on ghostpads This makes calling gst_pad_get_pad_template() work. 2010-10-12 21:23:03 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: Update with latest datetime from core Updates datetime functions to latest APIs in core 2010-10-13 16:12:38 +0300 Stefan Kost * ext/theora/gsttheoraparse.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/interfaces/mixertrack.c: * gst/audioresample/gstaudioresample.c: * gst/playback/gstinputselector.c: * gst/playback/gstplaybasebin.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstsubparse.c: various: add a missing G_PARAM_STATIC_STRINGS flag to object properties 2010-10-13 13:05:12 +0100 Tim-Philipp Müller * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: decodebin2: declare decodebin2 stable, deprecate the old decodebin https://bugzilla.gnome.org/show_bug.cgi?id=624949 2010-10-13 12:55:31 +0100 Tim-Philipp Müller * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: playbin2: declare stable, deprecate the old playbin https://bugzilla.gnome.org/show_bug.cgi?id=624949 2010-10-12 16:03:36 +0200 Wim Taymans * ext/ogg/gstoggdemux.c: oggdemux: only keep last valid granulepos Only keep the last valid granulepos we see when scanning the last pages. It is possible that the last page that we inspect has a -1 granulepos, in which case we want to keep the previous valid time instead. Fixes #631703 2010-10-10 15:22:52 -0700 David Schleef * ext/ogg/gstoggdemux.c: oggdemux: Fix check for last page 2010-10-10 15:22:04 -0700 David Schleef * ext/ogg/gstoggdemux.c: oggdemux: change checks from is_skeleton to is_sparse 2010-10-10 15:17:31 -0700 David Schleef * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: move is_sparse into stream map 2010-10-11 18:06:18 -0300 Thiago Santos * tests/check/Makefile.am: tests: vorbis: adds missing lib Adds missing lib to vorbis check tests makefile 2010-10-11 14:30:02 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Set GST_ELEMENT_IS_SOURCE flag uridecodebin behaves like a source, let's mark it as a source 2010-10-10 00:52:13 +0100 Tim-Philipp Müller * ext/theora/gsttheoradec.c: theoradec: expose telemetry properties only if libtheora was compiled with --enable-telemetry Since this is just a debugging feature and libtheora will usually not be compiled with that option enabled, we should maybe just hide these properties, since they won't work anyway, and avoid confusing warnings. Also rename properties to make them less cryptic. https://bugzilla.gnome.org/show_bug.cgi?id=628488 2010-10-09 23:49:35 +0100 Alexey Fisher * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: add properties to enable debugging telemetry overlay The theora decoder can overlay debugging information on the output video. This functionality is only available if libtheora has been compiled with --enable-telemetry. For more details see: http://people.xiph.org/~xiphmont/demo/theora/demo2.html Based on original patch by Michael Smith https://bugzilla.gnome.org/show_bug.cgi?id=628488 2010-10-10 18:35:54 +0200 Sebastian Dröge * sys/xvimage/xvimagesink.c: xvimagesink: Make sure that the caps for upstream negotiation are simple caps Fixes bug #631774. 2010-10-09 14:17:57 +0100 Vincent Penquerc'h * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: examples: g_mapped_file_unref exists already since GLib 2.21.3 2010-10-07 19:32:56 +0200 Guillaume Emont * ext/ogg/gstoggdemux.c: oggdemux: fix seeking with negative rate with skeleton Files with a skeleton, or other files with a stream that ends before the end of the chain would start playing from the end of the chain when trying to seek with a negative rate at a position between the end of any stream and the end of the chain. This is due to the loop in _do_seek() assuming that pages will be encountered for all streams shortly after the place where we want to seek, as found by do_binary_search(). In the first iteration of the loop, stream ends are now checked against the time of the current page. 2010-10-07 18:53:35 +0100 Zaheer Abbas Merali * gst/tcp/gstmultifdsink.c: multifdsink: gdp protocol is deprecated. People should use gdppay instead. 2010-10-08 12:43:28 -0700 David Schleef * common: Automatic update of common submodule From c4a8adc to 5a668bf 2010-09-28 12:17:41 +0200 Edward Hervey * docs/libs/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/pbutils-private.h: pbutils: rename gstdiscoverer-private.h to pbutils-private.h 2010-09-28 12:15:22 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: * gst-libs/gst/pbutils/gstdiscoverer-private.h: * gst-libs/gst/pbutils/missing-plugins.c: pbutils: Use copy_and_clean_caps for description methods This allows the various _get_*_description() methods to be more forgiving with the provided caps. 2010-10-08 12:51:43 +0200 Sebastian Dröge * common: Automatic update of common submodule From 5e3c9bf to c4a8adc 2010-10-08 11:23:33 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: make public _get_type() functions thread-safe 2010-10-08 10:29:04 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtspurl.c: rtspurl: minor clean-up Merge and const-ify two arrays that should be one. 2010-10-08 10:06:07 +0100 Tim-Philipp Müller * gst-libs/gst/rtsp/gstrtsptransport.c: rtsp: fix enum value name in enums that are public API https://bugzilla.gnome.org/show_bug.cgi?id=629746 2010-10-08 09:48:50 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: audio: make public get_type() functions thread-safe 2010-10-08 09:45:30 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: audio: fix enum value name in enums that are public API So run-time bindings can introspect the names correctly (we abuse this field as description field only in elements, not for public API (where the description belongs into the gtk-doc chunk). https://bugzilla.gnome.org/show_bug.cgi?id=629746 2010-10-08 12:30:33 +0200 Sebastian Dröge * gst/volume/gstvolumeorc-dist.c: volume: Regenerate generated orc C code again with an orc fix for loading double parameters 2010-10-08 11:50:43 +0200 Sebastian Dröge * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: volume: Update generated orc sources 2010-10-08 11:49:09 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Fix unit test failure for the controlled processing functions Going over integer arithmetic will lead to minimal rounding errors, leading to +/-1 changes for volume==1.0. Implement the controlled processing with floating point arithmetic, which was already done for the C versions anyway. 2010-10-08 09:10:41 +0200 Sebastian Dröge * configure.ac: configure: Require orc 0.4.10 2010-10-07 23:54:57 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: audioconvert: Update generated orc files 2010-10-07 23:54:25 +0200 Sebastian Dröge * gst/volume/gstvolumeorc.orc: volume: Update for orc changes double parameters are declared with .doubleparam now. 2010-10-03 11:21:20 +0200 Sebastian Dröge * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: volume: Update generated orc sources 2010-10-03 12:00:42 +0200 Sebastian Dröge * gst/volume/gstvolumeorc.orc: volume: Fix controlled processing via orc 2010-10-03 11:24:29 +0200 Sebastian Dröge * gst/volume/gstvolume.c: volume: Actually enable usage of the orc optimized functions 2010-10-03 11:20:37 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Implement int32 processing with orc 2010-10-01 12:21:52 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Implement controlled processing for int16/1-2ch and int8/1,2,4ch with orc 2010-10-01 11:13:01 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Implement controlled processing for f64/1ch and f32/1-2ch in orc 2010-10-01 11:00:54 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Convert parts of the controlled processing to orc 2010-10-01 10:44:37 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Implement f64 scaling with orc This requires orc 0.4.10 2010-10-01 10:38:38 +0200 Sebastian Dröge * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioconvertorc.orc: audioconvert: Implement remaining conversion functions from/to doubles to orc This requires orc 0.4.10 2010-10-07 20:54:32 +0100 Tim-Philipp Müller * gst/audiorate/gstaudiorate.c: audiorate: use g_object_notify_by_pspec() if possible Use g_object_notify_by_pspec() when building against GLib >= 2.26. This avoids the pspec lookup which takes the global paramspec pool lock. 2010-10-07 20:37:10 +0100 Tim-Philipp Müller * gst/videorate/gstvideorate.c: videorate: use g_object_notify_by_pspec() if possible Use g_object_notify_by_pspec() when building against GLib >= 2.26. This avoids the pspec lookup which takes the global paramspec pool lock. 2010-10-04 10:01:19 -0300 Thiago Santos * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Do not advance segment starts beyond stop times Advance stop times too when they are getting higher than the stop time of segments, avoiding assertions. The stop time has to be advanced too so that running time keep in sync for gapless mode. https://bugzilla.gnome.org/show_bug.cgi?id=631312 2010-10-07 10:34:48 +0200 Sebastian Dröge * gst/rawparse/Makefile.am: audioparse: Add support for setting the channel-positions 2010-10-06 16:19:49 -0300 Thiago Santos * tests/check/libs/rtp.c: tests: rtp: No need to unref buffer from bufferlist Buffers obtained from buffer list iterators don't need to be unreffed. Test was failing due to this. 2010-10-04 11:22:45 +0200 Mark Nauwelaerts * ext/vorbis/gstvorbisdec.c: vorbisdec: reverse playback; decode pending buffers upon EOS 2010-10-05 19:15:47 +0100 Tim-Philipp Müller * gst/videoscale/vs_4tap.c: videoscale: use math-compat.h here as well Hopefully the powers that be don't mind the gst/glib include here too much. 2010-10-05 19:13:43 +0100 Tim-Philipp Müller * gst/videotestsrc/videotestsrc.c: videotestsrc: include new math-compat.h header for rint() on MSVC Should fix compilation with Visual Studio 2008. https://bugzilla.gnome.org/show_bug.cgi?id=630802 2010-10-05 17:19:28 +0200 Wim Taymans * win32/common/libgstrtp.def: win32: update def file with new RTP methods 2010-10-05 17:13:09 +0200 Wim Taymans * tests/check/libs/rtp.c: check: fix rtp checks Fix the checks for the extension support in RTP. 2010-10-05 16:36:24 +0200 Wim Taymans * tests/examples/seek/seek.c: seek: fix position reporting 2010-08-26 12:34:11 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: rtcpbuffer: Add function to manipulation the data in RTCP feedback packets Add methods to get/set the length of the Feedback Control Information (FCI) as well as getting a pointer to the FCI itself. 2010-08-23 16:41:44 -0400 Olivier Crête * tests/check/libs/rtp.c: tests: Test the manipulations of bufferlists containing RFC 5285 header extensions 2010-08-23 14:24:21 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add function to transform a GstBuffer into a GstBufferList Add a new function called gst_rtp_buffer_list_from_buffer() that takes a GstBuffer containing a RTP packets and spits out a GstBufferList containing two buffers, one with the header and the other with the payload. 2010-08-22 19:44:38 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add functions to add RFC 5285 header extensions to GstBufferLists Add functions to add header extensions to buffer lists, these functions only modify the header part of the buffer lists, so the data is not copied. 2010-08-22 17:22:21 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add function to read RFC 5285 header extensions from GstBufferLists 2010-08-20 15:30:08 -0400 Olivier Crête * tests/check/libs/rtp.c: tests: Add test for RTP header extension functions 2010-08-20 17:13:06 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add function to add RTP header extensions with a two bytes header 2010-08-20 12:54:38 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add function to append RFC 5285 one byte header extensions 2010-08-19 16:26:18 -0400 Olivier Crête * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: rtpbuffer: Add function to parse RFC 5285 header extensions RFC 5285 describes a generic method to add multiple header extensions to RTP packets. These functions parse these headers and return them, both for the one-byte header and the two bytes headers. 2010-10-05 12:05:38 +0200 Wim Taymans * ext/libvisual/visual.c: libvisual: only drop frames that are really too old Also take the frame duration into account so that we don't drop frames that are partially past the estimated QoS time. 2010-10-05 12:01:25 +0200 Wim Taymans * ext/libvisual/visual.c: libvisual: add latency query Add our own latency to the latency query reply from upstream. 2010-10-05 12:00:28 +0200 Wim Taymans * ext/libvisual/visual.c: libvisual: add some defines Add some defines for width/height/fps and a define for the minimum amount of samples we need to buffer. 2010-10-04 15:48:51 +0530 Arun Raghavan * tools/gst-discoverer.c: gst-discoverer: The 'ready' signal was renamed to 'finished' 2010-10-04 17:27:00 +0200 Wim Taymans * ext/theora/gsttheoraparse.c: parse: Don't error on discont We don't need to error out when we detect a discontinuity. 2010-10-04 17:08:43 +0200 Wim Taymans * ext/theora/gsttheoraparse.c: theoraparse: set caps on streamheader too 2010-10-04 13:07:14 +0530 Arun Raghavan * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: build: Fix include path order for gir generation This makes sure that the built girs are picked up over installed girs where this is currently the case. 2010-10-01 14:52:15 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/codec-utils.c: codec utils: populate mpeg4 caps "level" field with level, not profile Call the right function to get the level. Also add some more debug logging. 2010-10-01 10:47:08 +0200 Sebastian Dröge * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: volume: Update generated orc files 2010-10-01 10:42:27 +0200 Sebastian Dröge * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: volume: Improve f32 scaling by using only a single array Passing the same array as dest and src is invalid anyway because they're maked with the restrict qualifier. 2010-09-30 15:19:02 +0100 Tim-Philipp Müller * gst-libs/gst/pbutils/codec-utils.c: pbutils: include config.h in codec utils 2010-09-30 00:19:29 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/codec-utils.c: docs: add new codec utils API to docs 2010-05-01 01:03:18 +0530 Arun Raghavan * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * win32/common/libgstpbutils.def: pbutils: Add MPEG-4 Video profile/level extraction This adds code to translate the profile_and_level indication from the MPEG-4 video (ISO/IEC 14496-2) headers to a string profile/level. The mappings are taken from the spec and Wireshark's code, and might need to be expanded on. https://bugzilla.gnome.org/show_bug.cgi?id=617314 API: gst_codec_utils_mpeg4video_get_profile() API: gst_codec_utils_mpeg4video_get_level() API: gst_codec_utils_mpeg4video_caps_set_level_and_profile() 2010-04-30 20:50:09 +0530 Arun Raghavan * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: pbutils: add H.264 profile/level extraction functions to codec utils This adds code to parse the first few bytes of H.264 sequence parameter set in order to extract the profile and level as const strings. This code was originally in both qtdemux and matroskademux. https://bugzilla.gnome.org/show_bug.cgi?id=617314 API: gst_codec_utils_h264_get_level() API: gst_codec_utils_h264_get_profile() API: gst_codec_utils_h264_caps_set_level_and_profile() 2010-04-30 15:12:04 +0530 Arun Raghavan * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * gst/typefind/gsttypefindfunctions.c: * win32/common/libgstpbutils.def: pbutils: add AAC profile detection to codec utils This moves AAC profile detection to pbutils, and uses this in typefindfunctions. This will also be used in qtdemux. https://bugzilla.gnome.org/show_bug.cgi?id=617314 API: gst_codec_utils_aac_get_profile() API: codec_utils_aac_caps_set_level_and_profile() 2010-04-30 13:41:17 +0530 Arun Raghavan * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/codec-utils.c: * gst-libs/gst/pbutils/codec-utils.h: * gst-libs/gst/pbutils/pbutils.h: * gst/typefind/Makefile.am: * gst/typefind/gstaacutil.c: * gst/typefind/gsttypefindfunctions.c: * win32/common/libgstpbutils.def: pbutils: add codec-specific utility functions for AAC This allows us to add generic codec-specific functionality, like extracting profile/level data from headers, without having to duplicate code across demuxers and typefindfunctions. As a starting point, this moves over AAC level extraction code from typefindfunctions, so it can be reused in qtdemux, etc. https://bugzilla.gnome.org/show_bug.cgi?id=617314 API: gst_codec_utils_aac_get_sample_rate_from_index() API: gst_codec_utils_aac_get_level() 2010-09-30 13:12:30 +0300 René Stadler * gst-libs/gst/tag/tags.c: tags: fix unused function warning with debug disabled 2010-09-30 12:59:46 +0300 René Stadler * gst-libs/gst/tag/tags.c: tags: fix illegal use of internal debug category function From gstinfo.h: /* do not use this function, use the GST_DEBUG_CATEGORY_INIT macro */ GstDebugCategory *_gst_debug_category_new (const gchar * name, And more importantly: #pragma GCC poison _gst_debug_category_new So this commit fixes --disable-gst-debug builds. 2010-09-29 18:57:50 +0200 Edward Hervey * tools/gst-discoverer.c: gst-discoverer: Print out topology if available. If we have some unhandled streams, we can still print out the remaining topology. 2010-09-29 18:54:28 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Don't post async-done when not needed Where it was previously located, we would get async-done for the first unknown-type, even if other valid streams would appear afterwards. decode_bin_expose() will take care of posting async-done when the group is exposed. But we still want to post it in case the typefinding returned an unknown type, in which case we will post it after posting an error. These two changes ensure we do as much as possible before posting async-done. 2010-09-29 16:53:21 +0200 Thijs Vermeir * gst-libs/gst/rtp/gstbasertpdepayload.c: basertpdepay: ensure metadata is writable 2010-09-29 13:29:20 +0200 Edward Hervey * gst-libs/gst/pbutils/descriptions.c: pbutils: Add descriptions for more codecs 2010-09-29 12:33:44 +0200 Edward Hervey * tests/examples/seek/seek.c: seek: Fix debug statement argument type 2010-09-28 09:30:57 -0300 Thiago Santos * tests/check/Makefile.am: * tools/Makefile.am: More makefile Fixes Removing some not needed lines added in the last makefile fixes commit (previous commit). Also adds some more makefile files to check tests 2010-06-17 14:32:22 +0300 René Stadler * sys/xvimage/xvimagesink.c: xvimagesink: allow render rectangle coordinates to be negative Useful for cropped zooming. 2010-06-17 14:33:44 +0300 René Stadler * gst-libs/gst/interfaces/xoverlay.c: xoverlay: allow render rectangle coordinates to be negative This is useful for cropped zooming of the overlay. 2010-09-28 15:15:57 +0300 René Stadler * gst-libs/gst/interfaces/xoverlay.c: xoverlay: fix endless loop in deprecated method 2010-09-28 08:46:25 -0300 Thiago Santos * tests/examples/app/Makefile.am: * tools/Makefile.am: Fixing Makefiles Adds some missing lines to makefiles 2010-09-27 18:14:50 +0100 Tim-Philipp Müller * gst-libs/gst/tag/tags.c: tags: add debug category for tags utility functions 2010-09-27 14:36:17 +0100 Tim-Philipp Müller * gst-libs/gst/tag/tags.c: tags: try ISO-8859-1 as second fallback in case WINDOWS-1252 is not supported Better safe than sorry. Some embedded systems may use crippled iconv implementations or not support WINDOWS-1252 for other reasons. https://bugzilla.gnome.org/show_bug.cgi?id=630471 2010-09-23 23:53:48 +0300 Sreerenj Balachandran * gst-libs/gst/tag/tags.c: tags: when converting freeform strings try Windows-1252 as fallback instead of ISO-8859-1 Windows-1252 is a superset of ISO-8859-1, which uses some space allocated to control characters for additional printable characters. https://bugzilla.gnome.org/show_bug.cgi?id=630471 2010-09-24 21:30:20 -0700 David Schleef * ext/theora/gsttheoraenc.c: theoraenc: ptalarbvorm speed level goes to 3 2010-09-24 16:31:37 +0200 Vladimir * tests/examples/seek/seek.c: seek: Add #define for seekbar granularity Fixes #630496 2010-09-24 14:03:45 +0100 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/audio-enumtypes.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/gstrtsp-enumtypes.h: * win32/common/interfaces-enumtypes.c: * win32/common/interfaces-enumtypes.h: * win32/common/pbutils-enumtypes.c: * win32/common/pbutils-enumtypes.h: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: win32: define GST_PACKAGE_RELEASE_DATETIME in win32 config.h as well Also update enums. 2010-09-24 00:25:20 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: .gitignore: ignore new appsrc unit test 2010-09-24 13:09:28 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: add Since markers Fixes #630443 2010-07-30 13:54:42 +0200 Havard Graff * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: * win32/common/libgstaudio.def: baseaudiosink: Added getter and setter for drift tolerance. 2010-09-24 12:54:47 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: subtract the render_delay from our latency The latency reported by the base class includes the render_delay, which we don't want to include when we start slaving our clocks. See #630441 2010-09-23 23:57:50 +0200 Sebastian Dröge * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: Use G_DEFINE_ABSTRACT_TYPE instead of manual GObject boilerplate code This also makes the _get_type() function threadsafe. Fixes bug #630440. 2010-09-23 10:16:07 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tags: exif: Add mapping for _HORIZONTAL_ERROR Maps GST_TAG_GEO_LOCATION_HORIZONTAL_ERROR to the GPSHPositionError tag in exif. Tests included. 2010-09-22 14:10:18 -0300 Thiago Santos * gst-libs/gst/app/gstappsrc.c: * tests/check/Makefile.am: * tests/check/elements/appsrc.c: appsrc: Do not override buffer caps if appsrc caps is null Make appsrc not set caps on buffers when its own caps is NULL. This avoids calling make_metadata_writable on all buffers and prevents losing buffer caps in case we are not replacing it with something meaningful. https://bugzilla.gnome.org/show_bug.cgi?id=630353 2010-09-21 18:57:42 -0400 Olivier Crête * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theoraenc: Make the bitrate/quality dynamically modifiable https://bugzilla.gnome.org/show_bug.cgi?id=630303 2010-09-22 12:35:59 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: * tools/gst-discoverer.c: discoverer: Fixup DiscovererResult handling This was a leftover from the changes from a flag to an enum 2010-09-22 12:10:24 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: We don't need the signals from the queues 2010-09-22 01:50:21 -0700 David Schleef * gst-libs/gst/Makefile.am: gst-libs: build pbutils after video Because pbutils now depends on video. 2010-09-21 18:33:36 +0200 Edward Hervey * common: Automatic update of common submodule From aa0d1d0 to 5e3c9bf 2010-09-20 21:04:48 +0300 Stefan Kost * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: discoverer: fix docs While the doc parser allows for certain variation, it is a good idea to not use random characters here and there, but try to stick to the little markup syntax there is. 2010-09-20 16:45:32 +0200 Edward Hervey * gst-libs/gst/pbutils/gstdiscoverer.c: discoverer: Fix debug statement. Fixes build on macosx 2010-09-20 16:28:52 +0200 Edward Hervey * gst/volume/gstvolumeorc-dist.c: volume: orc fixup for loading float arguments This is only used with DISABLE_ORC. 2010-09-20 11:24:10 +0200 Edward Hervey * tools/.gitignore: * tools/Makefile.am: * tools/gst-discoverer.c: tools: Standalone tool for discovering media file properties Fixes #625944 2010-09-20 11:23:36 +0200 Edward Hervey * win32/common/libgstpbutils.def: win32: Update with symbols from GstDiscoverer Fixes #625944 2010-09-20 11:23:17 +0200 Edward Hervey * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: docs: Documentation for new pbutils GstDiscoverer Fixes #625944 2010-09-20 11:22:32 +0200 Edward Hervey * gst-libs/gst/Makefile.am: * gst-libs/gst/pbutils/.gitignore: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstdiscoverer-private.h: * gst-libs/gst/pbutils/gstdiscoverer-types.c: * gst-libs/gst/pbutils/gstdiscoverer.c: * gst-libs/gst/pbutils/gstdiscoverer.h: * gst-libs/gst/pbutils/pbutils-marshal.list: * gst-libs/gst/pbutils/pbutils.h: pbutils: New Discoverer utility Fixes #625944 2010-09-20 11:13:56 +0200 Sebastian Dröge * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add mp3 to the apetag extensions 2010-09-18 13:15:08 -0700 David Schleef * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix regression in ball pattern Was painting using two different methods. 2010-09-17 11:46:05 +0200 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Fix ACCEPTABLE_CHAR() macro to work with signed and unsigned chars 2010-09-17 11:44:29 +0200 Sebastian Dröge * gst-libs/gst/sdp/gstsdpmessage.c: Revert "sdp: Remove useless check in macro" This reverts commit e6a041b69fd21c42651d98cf8a3064e43cecc51c. It's not a useless check, the signedness of "char" and "gchar" is defined by the ABI. 2010-09-17 10:43:04 +0200 Edward Hervey * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Remove useless check in macro A signed char is always < 128. Fixes a warning on macosx build. 2010-09-16 18:03:23 -0700 David Schleef * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: orc: update generated files to fix MSVC compile issues 2010-09-16 17:56:31 -0700 David Schleef * gst/videoscale/gstvideoscaleorc.orc: videoscale: Don't use broken orc feature 2010-09-16 19:30:59 +0200 Wim Taymans * gst-libs/gst/interfaces/xoverlay.c: xoverlay: G_GUINTPTR_FORMAT is since 2.22 Don't rely on too new symbols, we only depend on 2.20. 2010-09-16 15:01:59 +0200 Wim Taymans * configure.ac: * tests/examples/Makefile.am: * tests/examples/playrec/.gitignore: * tests/examples/playrec/Makefile.am: * tests/examples/playrec/playrec.c: examples: add synchronized playback and capture example Add an example that demonstrates synchronized playback and capture. 2010-09-16 17:15:32 +0200 Thijs Vermeir * gst/videotestsrc/videotestsrc.h: videotestsrc: Fix indentation 2010-09-16 17:14:20 +0200 Thijs Vermeir * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add bar pattern Simple bar with foreground color on the background color 2010-09-16 15:07:15 +0200 Thijs Vermeir * tests/check/elements/videotestsrc.c: tests: use gst-check API in videotestsrc use gst_check_drop_buffers in videotestsrc to clear the global buffers list. 2010-09-16 14:55:55 +0200 Thijs Vermeir * tests/check/elements/videotestsrc.c: tests: Fix unit test of videotestsrc Use UYVY for unit tests, it's exactly the same as Y422. (which is currently disabled in videotestsrc) 2010-09-15 15:13:15 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for new strings 2010-09-15 15:12:26 +0100 Tim-Philipp Müller * gst-libs/gst/video/video.h: docs: add Since: comment to docs for new GST_VIDEO_FORMAT_UYVP 2010-09-14 11:20:42 -0400 Tristan Matthews * ext/gnomevfs/gstgnomevfssrc.c: gnomevfsrc: set GST_PARAM_MUTABLE_READY flag on the "handle" property Fixes #629672 2010-09-15 15:19:04 +0200 Thijs Vermeir * gst/videotestsrc/videotestsrc.c: videotestsrc: fix segfault on negative horizontal-speed 2010-09-15 14:15:13 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: decodebin2: Actually dispose the unused ghostpads 2010-09-15 11:28:29 +0200 Sebastian Dröge * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/speex_resampler.h: * gst/audioresample/speex_resampler_wrapper.h: Revert "audioresample: Add GAP flag support" This reverts commit 129af0d8e6a74e8edef3e77c3626616b674b7cc1. This shouldn't be committed at all, it isn't ready and apparently was in the wrong branch locally. 2010-09-15 11:26:48 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: video: Add a destroy notify parameter to gst_video_convert_frame_async() Binding generators apparently need this as they can't really know that the callback is guaranteed to be called exactly once and that the user_data can be freed at the end of it. 2010-09-14 12:00:39 +0200 Leo Singer * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/speex_resampler.h: * gst/audioresample/speex_resampler_wrapper.h: audioresample: Add GAP flag support Fixes bug #586570. 2010-09-05 15:17:47 -0700 David Schleef * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/interfaces/xoverlay.h: * sys/v4l/gstv4lxoverlay.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/examples/overlay/gtk-xoverlay.c: * tests/examples/overlay/qt-xoverlay.cpp: * tests/examples/overlay/qtgv-xoverlay.cpp: * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/stress-xoverlay.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: * win32/common/libgstinterfaces.def: xoverlay: Add guintptr versions of functions And deprecate the gulong versions. This is to support platforms where sizeof(unsigned long) < sizeof(void *). Fixes #627565. API: Add gst_x_overlay_set_window_handle() API: Deprecate: gst_x_overlay_set_xwindow_id() API: Add gst_x_overlay_got_window_handle() API: Deprecate: gst_x_overlay_got_xwindow_id() API: Add GstXOverlay::set_window_handle() API: Deprecate: GstXOverlay::set_xwindow_id() 2010-09-14 12:31:58 -0700 David Schleef * gst/videotestsrc/videotestsrc.c: videotestsrc: Add UYVP 2010-09-12 20:36:19 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Various improvements Replace moving-color-bars pattern with smpte100, and change moving-speed to horizontal-speed. Default is now 0. Add a rotation stage to pattern building. Allocate a temporary scanline for building images. Remove unused code. Disable several patterns that we're unable to test and probably never used. Add other variants of bayer sampling. Convert some patterns to use videotestsrc_blend_line. 2010-09-10 18:10:40 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: clean up blink pattern 2010-09-10 15:57:54 -0700 David Schleef * gst/videotestsrc/videotestsrc.c: videotestsrc: Clean up the RGB code 2010-09-10 14:40:44 -0700 David Schleef * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Convert to intermediate AYUV/ARGB Scanlines are generated into AYUV/ARGB, then converted to the various formats. 2010-09-10 12:48:30 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: rearrange code to work on scanlines 2010-09-10 12:03:07 -0700 David Schleef * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix recent breakage of smpte75 pattern 2010-09-01 15:18:31 +0200 Thijs Vermeir * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add moving color bars pattern This pattern is moving the color bars with a given speed. Negative speed is inverting the moving direction. https://bugzilla.gnome.org/show_bug.cgi?id=628500 2010-06-14 15:42:09 -0700 David Schleef * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_image.c: * gst/videoscale/vs_scanline.c: videoscale: refactor using more Orc code Convert downsampling to Orc. Convert horizontal linear scaling to Orc. Combine horizontal and vertical scaling into one pass. 2010-09-12 19:34:28 -0700 David Schleef * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add UYVP, 10-bit 4:2:2 2010-09-14 08:41:43 +0200 Sebastian Dröge * docs/libs/gst-plugins-base-libs-sections.txt: video: Add gst_video_convert_frame_async() to the docs 2010-09-14 08:40:52 +0200 Sebastian Dröge * win32/common/libgstvideo.def: win32: Add gst_video_convert_frame() and gst_video_convert_frame_async() to the .def files 2010-09-14 08:40:07 +0200 Sebastian Dröge * tests/check/libs/video.c: video: Add unit test for gst_video_convert_frame_async() 2010-09-14 08:39:20 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/video.h: video: Add async variant of the convert frame function API: gst_video_convert_frame_async() 2010-09-12 16:53:59 +0200 Sebastian Dröge * tests/check/libs/video.c: video: Add a simple unit test for the new convert_frame API Unfortunately this can't test the encoding because there's no image encoder in base. 2010-09-12 16:51:52 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: video: Strip framerate from the target caps There will always be only a single output buffer and if the target caps have a different framerate than the input there will be a negotiation error during conversion. 2010-09-12 16:36:15 +0200 Sebastian Dröge * gst-libs/gst/video/convertframe.c: video: Refactor convert_frame a bit and fix some minor memory leaks in error cases 2010-09-09 14:11:52 +0200 Edward Hervey * gst/playback/Makefile.am: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: * gst/playback/gstscreenshot.c: * gst/playback/gstscreenshot.h: playback: Switch to using gst_video_convert_frame https://bugzilla.gnome.org/show_bug.cgi?id=629157 2010-09-09 13:44:54 +0200 Edward Hervey * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/convertframe.c: * gst-libs/gst/video/video.h: video: Add new method for converting a video frame https://bugzilla.gnome.org/show_bug.cgi?id=629157 2010-09-13 10:02:44 +0200 Mark Nauwelaerts * gst/playback/gstdecodebin2.c: decodebin2: prevent another race with shutdown state change 2010-09-11 14:55:01 +0200 Sebastian Dröge * win32/common/libgstsdp.def: win32: Add new SDP symbols to the .def files 2010-09-10 18:42:16 +0200 Wim Taymans * gst-libs/gst/sdp/gstsdpmessage.c: sdp: remove leftover g_print 2010-09-10 17:55:46 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/sdp/gstsdpmessage.c: * gst-libs/gst/sdp/gstsdpmessage.h: sdp: add methods to convert between uri and message Add methods to convert between uri and sdpmessages, loosly based on http://tools.ietf.org/html/draft-fujikawa-sdp-url-01 API: GstSDPMessage::gst_sdp_message_parse_uri API: GstSDPMessage::gst_sdp_message_as_uri 2010-09-10 10:40:52 +0200 Thijs Vermeir * tests/check/elements/videotestsrc.c: tests: videotestsrc change the pattern property for the tests 2010-09-10 08:42:37 +0200 Sebastian Dröge * gst/adder/gstadderorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/volume/gstvolumeorc-dist.c: orc: Fix generated source files 2010-09-09 20:45:38 +0100 Tim-Philipp Müller * tests/examples/seek/seek.c: tests: fix passing of URIs containing '*' and '?' to the seek example Only do wildcard expansion (why?!) on things that look like local file paths. Fixes passing of URIs containing '*' and '?' (see #629212). 2010-09-09 21:51:18 +0300 Stefan Kost * tests/check/Makefile.am: * tests/check/generic/states.c: tests: allow running state tests for all elements Now one can use GST_NO_STATE_IGNORE_ELEMENTS=1 make generic/states.check to try elements that would normaly be skipped. 2010-09-09 11:12:56 +0200 Sebastian Dröge * gst/adder/gstadder.c: adder: Do debug category initialization in plugin_init again 2010-09-09 10:59:13 +0200 Sebastian Dröge * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: orc: Update generated source files everywhere 2010-09-09 10:57:41 +0200 Sebastian Dröge * gst/adder/gstadder.c: * gst/adder/gstadderorc.orc: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/plugin.c: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscaleorc.orc: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrcorc.orc: * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: Revert "Revert "Use init functions for Orc code"" This reverts commit 93aa13639d74449dc68296427e5dbcfe8aca5f51. Everything should work now after regenerating the disted source files. 2010-09-07 19:04:23 +0200 Edward Hervey * win32/common/libgstaudio.def: win32: Add new symbol to libgstaudio 2010-09-07 18:09:12 +0200 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudio: avoid taking extra ref on sink/src Don't take an extra ref on the sink and source because that creates a reference cycle. Instead, use the invalidate method of the clock when the sink and source are freed. This way, we don't call into the time function anymore after the objects are disposed. 2010-09-07 18:06:27 +0200 Wim Taymans * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: audioclock: add a function to invalidate the clock Add a function to invalidate the time function of a clock. Useful for when the function becomes invalid. 2010-09-07 16:26:56 +0200 Edward Hervey * tests/check/Makefile.am: check: Fix linking order of libs/tag 2010-09-07 16:26:30 +0200 Edward Hervey * tests/check/gst-plugins-base.supp: check: Make fontconfig leak suppression more generic 2010-09-07 08:46:15 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Adds mappings for new image ppi tags Adds mappings for GST_TAG_IMAGE_HORIZONTAL/VERTICAL_PPI into our exif lib Tests included. Fixes #626570 2010-09-07 08:22:27 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tags: Add GST_TAG_IMAGE_HORIZONTAL/VERTICAL_PPI tags Adds new tags for representing the intended PPI of images/videos API: GST_TAG_IMAGE_HORIZONTAL_PPI API: GST_TAG_IMAGE_VERTICAL_PPI Fixes #626570 2010-09-07 11:41:52 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From c2e10bf to aa0d1d0 2010-09-06 18:17:10 +0100 Tim-Philipp Müller * gst-libs/gst/rtp/gstbasertpdepayload.c: rtp: improve basertpdepayload's error message when no input caps were set This is pretty much an FAQ, so try to make the error message a bit more helpful. Also, don't tell people to file a bug in bugzilla about this (which is what happens if the default error message for CORE_NEGOTIATION is used). 2010-09-06 13:14:00 +0200 Wim Taymans * gst-libs/gst/rtp/gstbasertppayload.c: rtppayload: notify of first timestamp/seqnum Notify of the first timestamp/seqnum pushed out by the payloader. Fixes #612264 2010-09-06 11:53:35 +0200 Edward Hervey * gst/videotestsrc/.gitignore: videotestsrc: .gitignore new generate_sine_table 2010-09-06 11:44:17 +0300 Stefan Kost * gst/playback/gstinputselector.c: * gst/playback/gstinputselector.h: * gst/playback/gstplaybin2.c: playback: ref the selector pad class inside input-selector Minimizes the delta to original element in -bad and allows us to keep the type static. 2010-09-05 20:57:48 -0700 David Schleef * gst/videotestsrc/Makefile.am: * gst/videotestsrc/generate_sine_table.c: * gst/videotestsrc/videotestsrc.c: videotestsrc: Use static sine table 2010-09-05 20:35:13 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Add foreground/background-color properties Replace solid-color property with foreground-color and add background-color. Pull some common code out of each of the pattern generating functions. Fix many of the patterns to use foreground-color/background-color instead of white/black. Generated images are indentical to previously if foreground-color and background-color are left as default. API: GstVideoTestSrc::foreground-color API: GstVideoTestSrc::background-color 2010-09-05 18:58:03 -0700 David Schleef * common: Automatic update of common submodule From d3d9acf to c2e10bf 2010-09-05 17:04:31 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: deprecate colorspec property Fixes: #616392. 2010-09-05 12:57:36 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc.orc: audioconvert: Simplify float->s32 conversion orc 0.4.7 is doing saturated conversion from floats to integers and it's not necessary to do this manually anymore. 2010-09-05 12:14:55 +0200 Sebastian Dröge * common: Automatic update of common submodule From ca1c867 to d3d9acf 2010-09-05 12:12:43 +0200 Sebastian Dröge * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: audioconvert: Update disted orc files 2010-09-05 12:09:19 +0200 Sebastian Dröge * gst/volume/gstvolume.c: volume: Enable float processing with orc again 2010-09-05 12:08:44 +0200 Sebastian Dröge * configure.ac: configure: Require orc 0.4.8.1 for the volume test 2010-08-26 19:16:18 +0200 Sebastian Dröge * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioconvertorc.orc: audioconvert: Use the ORC double support 2010-09-04 09:06:08 +0200 Leo Singer * gst-libs/gst/tag/gstexiftag.c: exiftag: Fix compiler warnings with old gcc versions Old gcc complains about possibly uninitialized variables which are always initialized before usage in reality. Fixes bug #628747. 2010-08-06 11:53:38 +0200 Edward Hervey * gst/playback/Makefile.am: * gst/playback/gstdecodebin2.c: * gst/playback/gstfactorylists.c: * gst/playback/gstfactorylists.h: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: Switch to gstfactorylist from core https://bugzilla.gnome.org/show_bug.cgi?id=626181 2010-09-02 12:57:42 +0300 Stefan Kost * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: fix typo in property description 2010-09-01 17:52:31 +0200 Sebastian Dröge * ext/pango/gsttextoverlay.c: textoverlay: Add support for AYUV 2010-09-01 11:37:37 +0200 Sebastian Dröge * gst/audiorate/gstaudiorate.c: audiorate: Fill segment until the end on EOS 2010-09-01 11:33:12 +0200 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Fill the segment on EOS or at least produce enough frames to use the complete buffer duration Fixes bug #628400. 2010-09-01 11:22:25 +0200 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Don't ignore flow returns when filling the previous segment during NEWSEGMENT handling 2010-09-01 11:11:47 +0200 Philippe Normand * tests/examples/seek/seek.c: seek: allow seeking behind the currently downloaded position. 2010-09-01 10:06:09 +0300 Stefan Kost * gst/adder/gstadder.c: adder: use GST_BOILERPALTE macro 2010-08-31 10:09:51 +0200 Edward Hervey * gst/playback/gstplaysink.c: playback: Set queues silent property to TRUE We don't use the queue signals within playsink. 2010-08-30 14:59:22 -0500 Rob Clark * ext/pango/gsttextoverlay.c: textoverlay: fix Cb/Cr inversion for colored text overlays In case of odd values for xpos or ypos, the division by two in CbCr plane would result in an off-by-one error, which in the case of NV12, NV21, or UYVY would cause inversion of blue and red colors. (And would be not so easily noticed for I420 as it would just cause the chroma to be offset slightly from the luma.) This patch also fixes a silly typo from the earlier patch which added NV12 support that broke UYVY support. 2010-08-30 15:50:26 +0200 Sebastian Dröge * ext/ogg/gstoggdemux.c: oggdemux: Don't reset the pad when pushing resulted in NOT_LINKED The pad might be linked later and after resetting it it will only work after resetting all of oggdemux. 2010-08-27 20:45:19 +0200 Sebastian Dröge * gst/playback/gsturidecodebin.c: uridecodebin: Only enable progressive downloading if the upstream duration in bytes is known Otherwise we might try to enable it for live streams, where this would cause playback to fail completely. Fixes bug #628028. 2010-08-27 17:23:46 +0200 Sebastian Dröge * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: oggdemux: Don't use GST_FLOW_IS_FATAL() And while we're at it, handle WRONG_STATE as error too in oggdemux and WRONG_STATE and NOT_LINKED in oggaviparse. 2010-08-27 11:49:47 +0200 Wim Taymans * gst/adder/gstadder.c: * gst/adder/gstadderorc.orc: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/plugin.c: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscaleorc.orc: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrcorc.orc: * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: Revert "Use init functions for Orc code" This reverts commit b2051090b43f82b23bb01826f09053479bbd7874. Fixes the build again until someone pushes the regenerated .c/.h files too. 2010-08-22 23:01:19 -0700 David Schleef * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: clean up code Merge various color structures into one. 2010-08-22 22:16:45 -0700 David Schleef * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Add ball pattern 2010-08-19 15:43:09 -0700 David Schleef * gst/adder/gstadder.c: * gst/adder/gstadderorc.orc: * gst/audioconvert/gstaudioconvertorc.orc: * gst/audioconvert/plugin.c: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscaleorc.orc: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrcorc.orc: * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc.orc: Use init functions for Orc code 2010-08-26 15:17:20 +0300 Stefan Kost * gst/volume/gstvolume.c: volume: make the orc usage for float conditional again See bug #628009. The tests still fail in the orc code (which we just don't call now). 2010-08-25 12:19:05 +0200 Thijs Vermeir * gst-libs/gst/riff/riff-media.c: riff: add support for 2vuy It is the apple alternative for Microsofts UYVY. (http://ntta.szm.com/Tutors/FourCC.htm) Only use the UYVY for the caps to enable support in other gstreamer elements. https://bugzilla.gnome.org/show_bug.cgi?id=627924 2010-08-25 19:01:57 +0300 Stefan Kost * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: * gst/volume/gstvolumeorc.orc: volume: enable ORC for float in volume 2010-08-25 11:19:31 -0300 Thiago Santos * configure.ac: * gst-libs/gst/tag/gstexiftag.c: configure: Add check for log2 Adds check for log2 and only use it in exif library if it is available. 2010-08-25 15:32:41 +0200 Sebastian Dröge * gst-libs/gst/tag/Makefile.am: tag: Link to $(LIBM) for pow(), log2() and friends 2010-08-25 08:41:52 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: Move some tags to their correct IFDs Put some tags in their correct IFDs 2010-08-20 16:39:08 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: Always write FlashPixVersion tag FlashPixVersion is mandatory and constant. Write it always. 2010-08-20 15:59:22 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Adds flash tags mapping Adds a mapping for GST_TAG_CAPTURING_FLASH_FIRED/_MODE to the exif Flash tag. Tests included. 2010-08-19 15:47:18 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: * win32/common/libgsttag.def: tag: exif: More photography mappings Adds mappings from: GST_TAG_CAPTURING_EXPOSURE_PROGRAM -> ExposureProgram GST_TAG_CAPTURING_EXPOSURE_MODE -> ExposureMode GST_TAG_CAPTURING_SCENE_CAPTURE_TYPE -> SceneCaptureType GST_TAG_CAPTURING_GAIN_ADJUSTMENT -> GainControl GST_TAG_CAPTURING_WHITE_BALANCE -> WhiteBalance GST_TAG_CAPTURING_CONTRAST -> Constrast GST_TAG_CAPTURING_SATURATION -> Saturation Also renames gst_tag_image_orientation_from_exif_value and gst_tag_image_orientation_to_exif_value to remove the 'gst' prefix and not including in the win32 defs. Tests included. 2010-08-19 09:39:39 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: tag: exif: Add macros for the exif ids Use macros for exif ids to avoid having those numbers spread all over the code. 2010-08-17 15:56:34 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Adds photography tags mappings Adds the following mappings for the exif helper: * GST_TAG_CAPTURING_DIGITAL_ZOOM_RATIO -> DigitalZoomRatio * GST_TAG_CAPTURING_FOCAL_LENGTH -> FocalLength * GST_TAG_CAPTURING_SHUTTER_SPEED -> ExposureTime, ShutterSpeedValue * GST_TAG_CAPTURING_FOCAL_RATIO -> FNumber, ApertureValue * GST_TAG_CAPTURING_ISO_SPEED -> ISOSpeed, PhotographicSensitivity Tests included. 2010-08-17 15:05:32 -0300 Thiago Santos * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Adds mapping for GST_TAG_APPLICATION_DATA Adds mapping for GST_TAG_APPLICATION_DATA to the exif 'maker-note' tag. 2010-08-20 14:54:23 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: Adds GST_TAG_CAPTURE_FLASH_FIRED/_MODE Adds a new tag for informing if flash was used while capturing an image and the flash mode selected by the user during this capture API: GST_TAG_CAPTURING_FLASH_FIRED API: GST_TAG_CAPTURING_FLASH_MODE https://bugzilla.gnome.org/show_bug.cgi?id=626651 2010-08-17 07:21:20 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: More photography related tags API: GST_TAG_CAPTURING_EXPOSURE_PROGRAM API: GST_TAG_CAPTURING_EXPOSURE_MODE API: GST_TAG_CAPTURING_SCENE_CAPTURE_TYPE API: GST_TAG_CAPTURING_GAIN_ADJUSTMENT API: GST_TAG_CAPTURING_WHITE_BALANCE API: GST_TAG_CAPTURING_CONTRAST API: GST_TAG_CAPTURING_SATURATION Fixes #626651 2010-08-17 06:47:52 -0300 Thiago Santos * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: tag: Adds some basic photography tags Adds the following basic photography tags. API: GST_TAG_CAPTURING_SHUTTER_SPEED API: GST_TAG_CAPTURING_FOCAL_RATIO API: GST_TAG_CAPTURING_FOCAL_LENGTH API: GST_TAG_CAPTURING_DIGITAL_ZOOM_RATIO API: GST_TAG_CAPTURING_ISO_SPEED Fixes #626651 2010-08-24 15:06:31 +0200 Sebastian Dröge * configure.ac: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: audioconvert: Require ORC 0.4.7 for the loadl/storel opcodes And update disted files to allow compilation with no or too old ORC. 2010-08-24 11:39:09 +0200 Alessandro Decina * gst/adder/gstadder.c: adder: Make sure FLUSH_STOP is always sent after a flushing seek. Send FLUSH_STOP right after forwarding the seek event upstream if necessary. This makes sure that adder->srcpad is not left flushing if seeking fails or if upstream is blocked. The same fix was already applied to videomixer in 49b2a946. 2010-08-24 11:11:49 +0200 Sebastian Dröge * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioconvertorc.orc: audioconvert: Use ORC for the float<->int32 conversion This should speed up standard Vorbis encoding and decoding pipelines a bit. Thanks to David Schleef for the assistance to get the ORC code right and explaining everything. 2010-08-24 10:12:53 +0200 Sebastian Dröge * ext/pango/gsttextoverlay.c: textoverlay: Support NV21 too and minor cleanups 2010-08-24 10:03:04 +0200 Sebastian Dröge * gst-libs/gst/video/video.c: video: Fix component width for NV12/NV21 Both have width/2 as component width for the chroma planes. 2010-08-24 09:51:46 +0200 Sebastian Dröge * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix NV21 rendering Using the same as for NV12 will result in wrong colors and crashes. 2010-08-23 18:51:18 -0400 Chris Shoemaker * ext/pango/gstclockoverlay.c: * ext/pango/gstclockoverlay.h: clockoverlay: only rerender text if time string has changed The textoverlay element will rerender the text string whenever overlay sets the 'need_render' flag to TRUE. Previously, we lazily set the flag to TRUE every time the time string was requested. Now, we save a copy of the previously given string, and only set 'need_render' to TRUE if the string has changed. In my tests with a 30fps video stream, and a time string including a seconds field, this change reduced the CPU usage of the clockoverlay element from 60% to 5%. Fixes bug #627780. 2010-08-23 13:59:38 -0500 Rob Clark * ext/pango/gsttextoverlay.c: textoverlay: add NV12 support Fixes bug #627768. 2010-08-20 12:03:44 +0200 Sebastian Dröge * gst/videorate/gstvideorate.c: videorate: Mark duplicated frames with the GAP flag We currently don't use the GAP flag for video and the docs say that this is for buffers, that have been created to fill a gap and contains neutral data. For video this is the previous frame. This information can be used by encoders to encode the duplicated frames more efficiently. See bug #627459. 2010-08-19 18:51:25 +0200 Sebastian Dröge * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Add back support for 8 bit paletted RGB This was removed by 3a00a97fd2b4015e93cdcabaa75da406aa599570 while making the pad template caps more compact. Fixes bug #626629. 2010-08-18 16:45:37 +0200 Wim Taymans * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsasrc/sink: add property to get the card name fixes #627203 2010-08-18 16:42:13 +0200 Wim Taymans * ext/alsa/gstalsa.c: * ext/alsa/gstalsa.h: alsa: add method to retrieve the card name Reuse an existing method to retrieve the card name. 2010-08-18 12:34:07 +0200 American Dynamics * gst-libs/gst/rtp/gstbasertpdepayload.c: basertpdepay: don't clear the discont flag too early Set the discont flag when we receive a DISCONT buffer and only clear the discont state when we pushed out a DISCONT buffer. Fixes #626869 2010-08-14 19:08:53 +0100 Tim-Philipp Müller * gst-libs/gst/app/gstappsink.c: docs: fix typo in appsink docs so function gets cross-referenced properly 2010-08-14 19:02:44 +0100 Tim-Philipp Müller * common: * configure.ac: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: build: use new AG_GST_PKG_CONFIG_PATH m4 macro from common Sets up a GST_PKG_CONFIG_PATH variable for use in Makefile.am (avoids trailing ':' in PKG_CONFIG_PATH used). 2010-08-14 18:36:55 +0100 Tim-Philipp Müller * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: introspection: set PKG_CONFIG_PATH so that our in-tree libs come first when calling scanner When calling gobject-introspection scanner, make sure our own freshly-built libs within the source tree (well, build dir) come first in the PKG_CONFIG_PATH. May or may not help to make sure that it doesn't pick up older external plugins-base libs (or .gir files) from outside the source tree / build directory as dependencies of the introspected lib instead of using the stuff we just built in a sibling directory. https://bugzilla.gnome.org/show_bug.cgi?id=623698 2010-08-06 17:16:27 +0200 Edward Hervey * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: Delay usage of GstFactoryList By delaying it to when it's actually needed, we speed things up a bit since some elements might have been added/removed in between. https://bugzilla.gnome.org/show_bug.cgi?id=626718 2010-06-17 09:10:11 +0200 Robert Swain * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin2: uridecodebin: add property to configure ring buffer size 2010-08-13 17:23:46 +0300 Stefan Kost * common: Automatic update of common submodule From 3e8db1d to ec60217 2010-08-13 13:59:08 +0300 Stefan Kost * docs/plugins/gst-plugins-base-plugins-sections.txt: plugin-docs: the tag should come right after <FILE>. Fixes missing plugin entries. If the object name, e.g. GstGIOSrc came before the title, we ended up with differnt section_id in the generated docbook. 2010-08-12 18:14:38 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/app/gstappsrc.c: appsrc: fix the classification. Change "Src" into "Source" (we use that elsewhere). I did not keept "Src" as it is quite unlikely that someone plugs appsrc by searching the registry by classification. 2010-08-12 15:26:08 +0300 Stefan Kost <ensonic@users.sf.net> * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: remove 'dir' out variable Alsa seems to expect that we initialize it. Remove the variable and pass NULL as we actually don't use it. In alsasink also #ifdef one section that is grabing diagnostics to be disabled, when logging is disabled (the code was using the out parameter as well). Fixes #626125 2010-08-12 11:46:11 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: remove chroma-site and color-matrix fields from RGB caps 2010-08-11 12:49:40 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: prevent deadlock with _chain when deactivating pad Fixes #626581. 2010-08-12 12:50:27 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/Makefile.am: playback: bad bad editor, readd missing line to fix the build 2010-08-12 12:08:35 +0300 Stefan Kost <ensonic@users.sf.net> * configure.ac: * tests/examples/Makefile.am: * tests/icles/Makefile.am: * tests/icles/playback/.gitignore: * tests/icles/playback/Makefile.am: * tests/icles/playback/decodetest.c: * tests/icles/playback/test.c: * tests/icles/playback/test2.c: * tests/icles/playback/test3.c: * tests/icles/playback/test4.c: * tests/icles/playback/test5.c: * tests/icles/playback/test6.c: * tests/icles/playback/test7.c: tests/playback: due to popular demand mv them from examples to icles The tests are toys and not reference demos. 2010-08-12 10:02:56 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: send preroll buffer when delaying preroll eos That is, if eos is received which will not be forwarded, and the stream has not yet seen any data, then send a buffer to preroll downstream (which might otherwise be accomplished by the eos event). 2010-08-12 10:01:03 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: remove some heuristic in chain configuration code .. since queues are now inserted unconditionally. 2010-08-11 10:27:35 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2/playsink: update subtitle handling for streamsynchronizer Streamsynchronizer excepts to see stream-changed msg for all streams, but to arrange for this, video and subtitle streams need to be decoupled by means of queues (due to pad blocks that may occur). Fixes #626463. 2010-08-10 13:06:32 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: always have a queue in chain head to aid streamsynchronizer Specifically, as the latter may have one thread pushing EOS to several streams, that needs to be decoupled into various thread to prevent preroll hanging problems. 2010-08-10 11:28:43 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: drop lock when pushing eos downstream ... to prevent deadlock (e.g. upon seek) when downstream waits in preroll. 2010-08-10 11:19:59 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: clear stream eos state on FLUSH and new stream 2010-08-10 11:19:22 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: set READY sinks to NULL before freeing chain upon failure 2010-08-12 10:49:59 +0300 Stefan Kost <ensonic@users.sf.net> * configure.ac: * gst/playback/.gitignore: * gst/playback/Makefile.am: * tests/examples/Makefile.am: * tests/examples/playback/.gitignore: * tests/examples/playback/Makefile.am: * tests/examples/playback/decodetest.c: * tests/examples/playback/test.c: * tests/examples/playback/test2.c: * tests/examples/playback/test3.c: * tests/examples/playback/test4.c: * tests/examples/playback/test5.c: * tests/examples/playback/test6.c: * tests/examples/playback/test7.c: playback: move tests from plugin-dir to tests/examples/playback 2010-08-11 18:08:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * sys/xvimage/xvimagesink.c: xvimagesink: Suggest caps with different width/height if bufferalloc is called with impossible width/height 2010-08-11 17:16:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/videoscale.c: videoscale: Add some debug output to the videoscale negotiation test 2010-08-11 17:03:11 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Only set the PAR if the caps already had a PAR Otherwise we're producing different caps and basetransform thinks that it can't passthrough buffer allocations, etc. In 0.11 all video caps really should have the PAR set... 2010-08-11 17:00:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * sys/xvimage/xvimagesink.c: xvimagesink: It's not a bad thing if the preferred video format needs less bytes per frame 2010-08-11 08:47:57 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tags: exif: Fix bug in inner ifd parsing Do not use the result of inner ifd's parsing to increment the current tag index. The reasons are: 1) The function returns a boolean. 2) The inner ifd's tags are in a separate table, so they shouldn't interfere with its parent ifd table parsing. 2010-08-11 08:03:44 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tag: exif: Put ExifVersion in the correct IFD ExifVersion is from the 'exif' ifd, not the 0th ifd. 2010-08-10 19:50:42 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tag: exif: Refactor functions declaration Use some macros to declare serialization/deserialization functions prototypes. 2010-08-10 19:30:11 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tag: exif: Add another DateTime mapping datetimes can also be represented by the 0x132 tag. Map it, too. 2010-08-10 11:29:22 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tag: exif: Fix bug on image-orientation parsing Do not skip one extra tag when parsing image-orientation tags. 2010-08-10 10:57:17 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From bd2054b to 3e8db1d 2010-08-10 11:52:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: exiftag: Compare with G_MAXUINT16 instead of -1 Fixes a compiler warning on the OS X buildbot. 2010-08-09 18:04:08 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: xmp: exif: Adds GST_TAG_APPLICATION_NAME mappings adds xmp and exif helper library mappings for GST_TAG_APPLICATION_NAME tag. 2010-08-04 13:01:21 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tag: exif: Write ExifVersion tag Write ExifVersion tag unconditionally when creating exif buffers. Might help other applications parsing of this data. 2010-08-04 13:02:52 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * tests/check/libs/tag.c: tests: tag: Test to try to serialize multiple exif tags Adds a new test for exif data that tries serializing data from multiple ifd tables and check if it works. 2010-08-09 17:25:07 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tags: exif: Fix inner tags offset rewriting Fixes a bug that made exif helper lib fail to rewrite inner ifd tags offsets when there were more than 1 inner ifd. 2010-07-22 17:29:57 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: configurable text color and position Rather than only left, right, top, etc, allow for horizontal and vertical positioning on a scale from 0 to 1. Also cater for configuring rendered text color. Fixes #624920. API: GstTextOverlay:xpos API: GstTextOverlay:ypos API: GstTextOverlay:color 2010-07-21 14:20:03 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add solid-color pattern ... which generalizes the current listing of white, black, etc. In particular, also allow specifying alpha channel, and modify some structures and pattern filling to cater for alpha value as well. Fixes #624919. API: GstVideoTestSrc:solid-color 2010-08-08 17:42:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggstream: static forward declarations are forbidden by the C standard ...and actually cause compiler errors on VC++. Change it to an extern forward declaration and non-static definition. 2010-08-05 13:56:29 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From 2004d03 to bd2054b 2010-08-04 19:24:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: configure: Check if the compiler supports ISO C89 or C99 and which parameters are required This first checks what is required for ISO C99 support and sets the relevant compiler parameters and if no C99 compiler is found, it checks for a C89 compiler. This enables us to check for and use C89/C99 functions that gcc hides from us without the correct compiler parameters. 2010-08-04 15:18:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosink/baseaudiosrc: Post CLOCK-LOST/CLOCK-PROVIDE when going to/from READY Otherwise the clocks are redistributed every time the pipeline goes to PAUSED, which is quite expensive. 2010-08-03 15:03:27 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Make xmp lib aware for the different tag types Makes the xmp helper lib aware that the tags can be simple, sequences or bags (there is still struct and alt, but those aren't handled yet). Adding this info makes serialization and deserialization more consistent. 2010-08-02 09:56:21 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: xmp: Add a new layer of indirection (GstXmpSchema) Instead of storing all tags in a single hashtable, store them grouped by schema in a GstXmpSchema, and add those to the toplevel hashtable. 2010-08-03 14:37:05 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Make bag tags deserialization work correctly If we find a bag of tags of type string in the xmp packet, we should concat them, this is not the ideal approach, but at least works for now as we don't know what type of tag it is (simple, structure, seq, alt or bag) 2010-08-04 21:44:22 +1000 Jan Schmidt <thaytan@noraisin.net> * tests/examples/seek/seek.c: examples/seek: Don't unpause on clock-lost unless playing If the pipeline is paused by the user, don't pause/unpause on clock-lost. 2010-07-02 12:10:16 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: improve debugging 2010-07-02 12:09:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.h: ringbuffer: whitespace fixes 2010-06-28 10:53:57 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: use more efficient way of getting caps When inspecting the caps of a pad, try to get the pad _CAPS first before calling the getcaps function. 2010-08-02 11:06:00 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * tests/check/pipelines/oggmux.c: oggmux: Fix test build when theora and vorbis aren't available Ifdef properly to avoid build failures 2010-08-01 06:50:13 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefind: Detect avc1 ftyp as video/quicktime Detects avc1 ftyp as video/quicktime (iso variant) 2010-07-27 11:25:12 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: removing useless locking Everything in the xmp helper lib is initiallized once and on a thread safe way, and after that there are only reads going on, no more writing. Based on that, drop the locking. 2010-06-20 23:53:38 +1000 Jan Schmidt <thaytan@noraisin.net> * tests/examples/seek/jsseek.c: jsseek: Set joystick io encoding to 'NULL' Fix problems with newer glib reporting bad encodings on the binary data emerging from the joystick device fd. 2010-07-26 20:25:55 +0200 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: fix printf format compiler warnings Make OSX build bot happy. 2010-07-26 18:23:33 +0200 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: initialize datetime variable in xmp tag parsing code Fixes (correct) compiler warning on the OSX build bot. 2010-07-26 17:48:14 +0200 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: require core from git For GstDateTime stuff used in libgsttag. 2010-07-26 17:04:02 +0200 Tim-Philipp Müller <tim.muller@collabora.co.uk> * .gitignore: * configure.ac: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/gstpluginsbaseversion.c: * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: * gst-libs/gst/pbutils/pbutils.h: * tests/check/libs/pbutils.c: * win32/common/libgstpbutils.def: pbutils: add compile time and runtime version checks for gst-plugins-base So people can check what version of the gst-plugins-base libs they're building against or linked against. API: GST_PLUGINS_BASE_VERSION_MAJOR API: GST_PLUGINS_BASE_VERSION_MINOR API: GST_PLUGINS_BASE_VERSION_MICRO API: GST_PLUGINS_BASE_VERSION_NANO API: GST_CHECK_PLUGINS_BASE_VERSION API: gst_plugins_base_version() API: gst_plugins_base_version_string() 2010-06-30 16:36:14 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Map GST_TAG_DATE_TIME Adds mapping to the exif helper library for GST_TAG_DATE_TIME. Tests included. https://bugzilla.gnome.org/show_bug.cgi?id=594504 2010-06-23 12:02:24 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Maps GST_TAG_DATE_TIME Adds mapping for GST_TAG_DATE_TIME. Tests included. https://bugzilla.gnome.org/show_bug.cgi?id=594504 2010-07-26 16:05:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videorate/gstvideorate.c: videorate: Fixate the pixel-aspect-ratio if necessary 2010-07-24 18:17:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Delay EOS events until all streams are EOS This fixes a race condition in playbin2's gapless mode, where the EOS of other streams might arrive in the sinks before the last stream ends and the switch to the new track happens. The EOS sinks won't accept any new data then and playback stops. To prevent this, delay all EOS events until all streams are EOS and advance the sinks of the EOS streams by filler newsegment events if necessary. Fixes bug #625118. 2010-06-01 23:43:45 +0530 Arun Raghavan <arun.raghavan@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: export 3gp profile in caps This reads the 3gp profile from the major/compatible brands and puts this as a 'profile' field in caps. This can be used by demuxers to decide whether they can handle this stream or not. Also needed for DLNA. https://bugzilla.gnome.org/show_bug.cgi?id=620291 2010-07-24 11:48:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: examples: Use cairo instead of to-be-deprecated GDK API Fixes bug #625001. 2010-07-24 09:22:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: * configure.ac: configure: set release date/time Use the new AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO macro. 2010-07-20 12:08:52 +0530 Parthasarathi Susarla <partha.susarla@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: detect enhanced AC-3 https://bugzilla.gnome.org/show_bug.cgi?id=623846 2010-07-22 09:13:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: streamsynchronizer: Fix another deadlock when going PAUSED->READY while streams are waiting for the GCond 2010-07-20 21:05:45 +0200 Edward Hervey <bilboed@bilboed.com> playsink: Switch to faster pad linking methods Logic for choice of GST_PAD_LINK_CHECK_* is as follows: * Where return of pad_link wasn't checked before : NOTHING * Where linking is between known compatible elements : NOTHING * All other cases : TEMPLATE_CAPS Slashes down playsink reconfigure by up to 50% cpu time. 2010-07-19 15:58:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: * gst/playback/gstscreenshot.c: playsink: Set add-borders=true on the videoscale instances This makes sure that we always keep the display aspect ratio and add black borders if necessary, which is usually something you want for viewing a video. 2010-07-19 15:44:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Rename borders property to add-borders 2010-07-19 09:39:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: videoscale: update disted orc files for latest changes 2010-07-17 20:24:18 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/Makefile.am: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_fill_borders.c: * gst/videoscale/vs_fill_borders.h: * gst/videoscale/vs_image.h: videoscale: Add support for adding black borders to keep the DAR if necessary Fixes bug #617506. 2010-07-18 15:08:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_scanline.c: videoscale: Fix linear scaling of UYVY scanlines Fixes bug #624656. 2010-07-17 19:57:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Fix caps fixating if the height is fixed but the width isn't 2010-07-16 20:41:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: Remove interlaced scaling again This behaviour was not preferred and caused visible image quality degradations. The real solution would be, to apply a real deinterlacing filter before scaling the frames. Fixes bug #615471. 2010-07-16 19:06:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Add helper method for filling the VSImage struct 2010-07-18 11:43:00 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/files/Makefile.am: tests: don't forget to dist test file for typefinding unit test 2010-07-18 11:38:19 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/gst/typefindfunctions.c: * tests/files/623663.mts: tests: add unit test for mpeg-ts typefinding bug See #623663. 2010-07-18 11:24:46 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: make mpeg-ts typefinder scan more data We only look for packets with payload, but it appears there may be packets without, which makes it harder to find the N packets with payload in a row that we need in order to typefind this successfully, so scan some more data than necessary in the optimistic scenario. Alternatively we could change IS_MPEGTS_HEADER(). Fixes #623663. 2010-07-16 18:51:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: * gst/playback/gststreamsynchronizer.c: playsink/streamsynchronizer: Remove and deactivate pads after calling the change_state function of the parent class Fixes some deadlocks. 2010-07-16 18:25:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gststreamsynchronizer.c: streamsynchronizer: Drop DISCONT flag on first buffer for new streams Also reset stream state when going back to READY and on flush-stop. 2010-07-11 14:44:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/Makefile.am: * gst/playback/gstplaysink.c: * gst/playback/gststreamsynchronizer.c: * gst/playback/gststreamsynchronizer.h: * gst/playback/test7.c: playsink: Fix gapless playback in many non-simple scenarios Before gapless playback failed when switching between audio-only, video-only and audio-video files, when choosing different clocks and when the different streams had different durations. This is now handled by a helper element, which keeps track of the running times of all streams and synchronizes them. Fixes bug #602437. 2010-07-11 14:43:52 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Remove QOS event adjustments for gapless playback mode 2010-07-09 17:15:55 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: Post clock-provide and clock-lost messages when going from/to PLAYING 2010-07-09 17:15:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: Post clock-provide and clock-lost messages when going from/to PLAYING 2010-07-08 16:11:12 +0200 Philip Jägenstedt <philipj@opera.com> * gst/typefind/gsttypefindfunctions.c: typefind: only associate .webm with WebM .weba (audio) and .webv (video) were speculation on my part before the public launch. As of yet no decision has been made on the file extension for audio-only WebM, and I'm pretty sure there will never be one for video-only. Fixes bug #623837. 2010-07-08 09:54:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: Use new gst_audio_clock_new_full() 2010-07-08 09:54:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: Use new gst_audio_clock_new_full() 2010-07-08 08:32:22 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: * win32/common/libgstaudio.def: audioclock: API: Add gst_audio_clock_new_full() with a GDestroyNotify for the user_data Elements usually use their own instance as instance data but the clock can have a longer lifetime than their elements and the clock doesn't own a reference of the element. Fixes bug #623807. 2010-07-04 20:29:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/theora/Makefile.am: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraenc.h: theoraenc: Implement two pass encoding Fixes bug #621349. 2010-07-04 20:14:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * ext/theora/gsttheoraenc.c: configure: Require libtheora >= 1.1 It's more than a year old at the time of the next -base release, has many encoder and decoder improvements and gets us rid of a lot of #ifdefs 2010-07-04 20:08:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: theora: Use PROP_ instead of ARG_ for property enum values 2010-05-04 12:09:57 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: use proper error message code for failing state change 2010-07-16 11:24:21 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development === release 0.10.30 === 2010-07-15 01:20:54 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.30 2010-07-15 00:32:09 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/cs.po: * po/lv.po: po: update translations 2010-07-14 12:59:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Disconnect and destroy uridecodebins when going from READY to NULL Fixes spurious errors that happen after an error and playing a working stream afterwards or signals that are emitted for non-active groups. Fixes bug #624266. 2010-07-08 14:51:08 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/design/Makefile.am: docs: dist more of the gst-plugin-base design docs 2010-07-07 00:35:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: 0.10.29.4 pre-release 2010-07-07 00:24:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/LINGUAS: * po/es.po: * po/fr.po: * po/it.po: * po/nl.po: * po/pt_BR.po: * po/sl.po: * po/sv.po: po: update translations 2010-07-06 09:47:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: Revert "playbin2: Don't put "raw" subtitle types in the raw caps for decodebin2" This reverts commit 9d7538247ff1bf9841b53eeb71ddc47f2c662415. If the DVD subpicture caps are not part of the raw caps, uridecodebin doesn't qualify resindvdbin as raw source and plugs decodebins, which causes broken DVD playback because of bugs elsewhere. This change was originally added to only expose supported, raw subtitles, e.g. if the subtitle sink did not support DVD subpictures but a converter to some supported format exists. It's not very important right now because we have nothing (that is autoplugged) to convert from plaintext/pango-markup or DVD subpictures to something else. Fixes bug #623583. 2010-07-04 17:27:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Use correct Y offset for YVYU -> RGB conversions Fixes bug #623530. 2010-07-04 17:26:03 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Use correct Y offset for the YUY2 -> RGB conversions Fixes bug #623530. 2010-07-04 14:55:50 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/plugins/inspect/plugin-ogg.xml: docs: update ogg introspection info after riff fourcc addition 2010-07-02 20:09:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix conversion of packed 4:2:2 YUV to 8 bit grayscale The last pixel wasn't written before for odd widths. Fixes bug #623418. 2010-07-02 14:56:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Fix conversion of packed 4:2:2 YUV to RGB The last pixel wasn't written before. Fixes bug #623384. 2010-07-02 13:59:55 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix invalid memory accesses with odd widths/heights during subsampling Fixes bug #623375. 2010-07-01 21:21:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: If setup of the source element fails in READY->PAUSED deactive the current group Otherwise the uridecodebin will be still a child of playbin2 and its signals will still be connected. In future state changes this will then emit unrelated signals that will confuse playbin2 or, even worse, cause crashes and assertions. Fixes bug #623318. 2010-06-30 21:20:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/riff/riff-media.c: riff: add FLV4 fourcc and map it to video/x-vp6-flash Fixes #623176. 2010-06-30 15:13:10 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/netbuffer/gstnetbuffer.c: netbuffer: declare with G_DEFINE_TYPE for type safety Fixes #623233. 2010-06-24 16:55:57 +0200 Fredrik Söderquist <fs@opera.com> * ext/ogg/gstoggdemux.c: oggdemux: Handle errors from _get_next_page in _do_seek. If the source element failed here, oggdemux would crash. Fixes #623218. 2010-06-30 11:00:45 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: keep things sorted alphabetically On special request. Because it's important, apparently. 2010-06-29 18:48:15 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: 0.10.29.3 pre-release 2010-06-29 18:46:18 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: fix --disable-external 2010-06-28 15:43:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * autogen.sh: * configure.ac: Bump automake requirement to 1.10 For maintainability reasons and $(builddir). Fixes #622944. 2010-06-27 10:43:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/seek/jsseek.c: * tests/examples/seek/seek.c: examples: Remove some #if GTK_CHECK_VERSION(2,12,0) We depend on GTK+ >= 2.14 already. 2010-06-26 21:28:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/Makefile.am: videotestsrc: Explicitely link with $(LIBM) 2010-06-26 21:27:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/Makefile.am: videoscale: Explicitely link with $(LIBM) 2010-06-26 18:19:56 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: 0.10.29.2 pre-release 2010-06-26 18:19:33 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: gst: update orc files 2010-06-26 18:19:16 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2010-06-26 17:55:12 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: Properly clean DecodeChain after errors. If an error happens, the PAUSED state will never be reached. If an application re-uses decodebin2 (like totem) where one would normally set to READY between each file, the cleanup that normally happens in the PAUSED=>READY codepath will never be called, resulting in the following file to re-use the previous demuxer/decoder/... https://bugzilla.gnome.org/show_bug.cgi?id=622807 2010-06-26 12:39:34 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/design/design-orc-integration.txt: docs: fix a few typos 2010-06-26 12:03:54 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/elements/videoscale.c: checks: simplify GstBus usage in videoscale unit test There's no need to run a main loop, add a bus watch and deal with helper structs here just to wait for an EOS message. 2010-06-26 11:38:56 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/elements/videoscale.c: checks: speed up videoscale unit test a little Use new gst_element_link_pads_full() function to link elements, and disable all checks when linking (don't try this at home). Down to 18s from 3m20s. Scary. 2010-06-25 17:18:34 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: check for ringbuffer state first Check for the state of the ringbuffer before doing the checks of the other buffer properties, when we're not started, we don't care about those values. 2010-06-24 13:30:59 +0200 Edward Hervey <bilboed@bilboed.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Use a more concise pad template Speeds up caps nego 2 fold https://bugzilla.gnome.org/show_bug.cgi?id=622696 2010-06-24 15:31:31 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/icles/audio-trickplay.c: tests: make audio-trickplay test compile when the gst debugging system is disabled Fixes unused variable warning in that case. 2010-06-24 15:13:31 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/gst/typefindfunctions.c: tests: add test that runs all typefinders over random data 2010-06-06 12:31:35 +0530 Arun Raghavan <arun.raghavan@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: Mark ISO 14496-14 files as video/quicktime These are currently being marked as audio/x-m4a which is incorrect. https://bugzilla.gnome.org/show_bug.cgi?id=620720 2010-06-24 13:42:20 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * .gitignore: .gitignore: add temporary orc test directory 2010-06-24 13:30:50 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/Makefile.am: tests: add plugin loading whitelist to test environment Only want to load core/-base plugins here. 2010-06-24 15:09:04 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From 73ff93a to a519571 2010-06-24 08:41:42 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gsttageditingprivate.c: tag: Fix printf format string Use %s for strings, not %d. 2010-06-24 12:06:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_scanline.c: videoscale: Fix resampling of ARGB scanlines Previously we would read behind the end of the source lines. 2010-06-16 14:08:05 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Adds GST_TAG_IMAGE_ORIENTATION mapping Adds GST_TAG_IMAGE_ORIENTATION mapping to xmp helper lib. Tests included. 2010-06-16 11:19:37 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/gsttageditingprivate.c: * gst-libs/gst/tag/gsttageditingprivate.h: * tests/check/libs/tag.c: * win32/common/libgsttag.def: tag: exif: Adds mapping for GST_TAG_IMAGE_ORIENTATION Adds GST_TAG_IMAGE_ORIENTATION to the exif helper lib mapped tags. Tests included. 2010-06-23 12:10:32 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: clear ts-offset pointer We need to clear the pointer to our ts-offset element when we destroy the video chain elements to make sure nobody derefs it to invalid memory afterwards. 2010-06-23 10:16:07 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplaysink.c: playsink: Reset ts_offset field when freeing chain Otherwise we would end up with a bogus ->audiochain->ts_offset field which would cause segfaults/assertions when trying to modify the 'ts-offset' property in update_av_offset(). Was easy to trigger when using a list of audio+video files mixed with video-only files in totem. 2010-06-18 16:37:14 +0300 Stefan Kost <ensonic@users.sf.net> * tests/check/elements/adder.c: * tests/check/elements/appsink.c: * tests/check/elements/audiotestsrc.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/elements/multifdsink.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/vorbisdec.c: tests: use our own macros for the tests main function 2010-06-18 14:17:30 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstvorbistag.c: tag: Use gst_tag_list_peek_string_index in vorbistag Use _peek_string_index instead of _get_string_index to avoid a string copy 2010-06-14 12:27:02 +0200 Philippe Normand <pnormand@igalia.com> * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: ximagesink: Ask pad peer to accept new caps once only In buffer_alloc, if the buffer caps are new, call gst_pad_peer_accept_caps once only, it's useless to call it in the cases where we know it will always fail. Fixes bug #621190 2010-06-17 17:07:39 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Add YUY2/YVYU to all RGB formats conversions 2010-06-17 16:57:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix Y42B to YUY2/YVYU/UYVY conversion for odd widths 2010-06-17 16:54:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix YUY2/YVYU/UYVY to Y42B conversion for odd widths 2010-06-17 16:06:53 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: docs: update introspected plugin docs for gstdoc-scangobj and other changes Update common for latest gstdoc-scangobj and inspect xml files for escaping and pad template order changes. Update other gtk-doc files for API additions and object hierarchy changes. 2010-06-16 19:15:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: improve autoplugging Use the pad caps when they are available to continue the autoplugging. If the pad caps are set, they are fixed and then we can directly continue autoplugging. 2010-06-15 16:49:17 +0200 Edward Hervey <bilboed@bilboed.com> * common: Automatic update of common submodule From 9339ccc to 35617c2 2010-06-15 16:53:49 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From 5adb1ca to 9339ccc 2010-06-15 16:34:54 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From 57c89b7 to 5adb1ca 2010-06-15 15:32:34 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From c804988 to 57c89b7 2010-06-15 13:09:37 +0200 Edward Hervey <bilboed@bilboed.com> * tests/check/elements/audioresample.c: Revert "audioresample: set pads as negotiable" This reverts commit 5f74f3a82eb54f9a9517f99dffbe45ce4d474870. 2010-06-15 13:09:29 +0200 Edward Hervey <bilboed@bilboed.com> * tests/check/elements/audioconvert.c: Revert "audioconvert: set pads negotiable" This reverts commit bbd7dee8f604bd0373a82e6e5cc3eec8313806ac. 2010-06-14 15:19:32 -0700 David Schleef <ds@schleef.org> * gst/videoscale/vs_scanline.c: videoscale: Fix black horizontal line in image 2010-06-14 15:05:16 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Init char variable for gps coordinates Initialize char variable for gps coordinates deserialization to 0 to identify when it couldn't be parsed/found and error out. Fixes #621509 2010-06-14 18:10:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/check/elements/audioconvert.c: audioconvert: set pads negotiable 2010-06-14 17:48:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/check/elements/audioresample.c: audioresample: set pads as negotiable 2010-06-14 16:25:46 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Revert accidental downgrade of common revision. 2010-06-14 16:07:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/videoscale.c: videoscale: And only expect a single buffer in the unit test 2010-06-14 16:02:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/videoscale.c: videoscale: Only convert one buffer instead of five Should make the unit test a lot faster. 2010-06-14 14:13:32 +0200 Edward Hervey <bilboed@bilboed.com> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Fix unitialized variables yay macosx compilers :( 2010-06-14 14:13:16 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/video/video.c: video: Fix unitialized variable. yay macosx compilers :( 2010-06-14 13:27:01 +0200 Edward Hervey <bilboed@bilboed.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Use Quarks for structure name/field checking 2010-06-14 13:26:02 +0200 Edward Hervey <bilboed@bilboed.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Speed up _remove_format_info Instead of copying full caps, use the fact that the provided caps only have one structure and only copy around structures. 2010-06-14 13:24:06 +0200 Edward Hervey <bilboed@bilboed.com> * common: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Transfer structures instead of copying them Avoids many expensive structure copies 2010-06-14 13:20:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: configure: Use GLIB_EXTRA_CFLAGS 2010-06-14 13:02:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 7a0fdf5 to c804988 2010-06-14 11:31:09 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 6da3bab to 7a0fdf5 2010-06-14 11:20:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/seek/jsseek.c: jsseek: Don't use deprecated GLib API Fixes once again bug #605100. 2010-06-14 11:16:45 +0200 Prahal <prahal at yahoo.com> * gst/playback/gstdecodebin2.c: decodebin2: use accumulator for autoplug-sort Use an accumulator for the autoplug-sort signal so that we can stop the emission when a signal handler produced a valid result. This avoids the object handler to overwrite the results from user signals. Fixes #621161 2010-06-14 11:11:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: activate_chain must not be called with a NULL chain It will crash later and shouldn't really happen anyway unless something is really wrong. 2010-06-14 11:08:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gnomevfs/gstgnomevfssrc.c: gnomevfssrc: Fix possible NULL pointer dereference It's always an error if gst_buffer_try_new_and_alloc() returns NULL 2010-06-14 11:03:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: Return FALSE from the seek handler if no seek callback was set 2010-06-14 09:53:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiostreamsrc.c: giostreamsrc: Fix copy&paste error in the docs 2010-06-14 00:33:04 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggstream.c: ogg: fix debug message printf format some more Just cast the pointer diff, so it works everywhere without warnings. Can't use %tu, because that modifier is C99. Warning was: "format '%li' expects type 'long int', but argument 8 has type 'int'". 2010-06-13 22:17:18 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/videoscale.c: videoscale: Add ffmpegcolorspace after videotestsrc for the unit test 2010-06-13 20:57:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: ...and add Y16 case for the linear scaling 2010-06-13 20:38:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Add Y16 case for 4-tap scaling 2010-06-13 18:27:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/Makefile.am: tests: Fix linking of the tags test 2010-06-13 08:20:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.h: video: Re-add (but deprecated) GST_VIDEO_{RED,GREEN,BLUE}_MASK_1[56] 2010-06-12 21:04:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Use correct variables for debug output 2010-06-12 16:51:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix Y16 from/to GRAY8 conversion 2010-06-12 16:31:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Don't crash when doing gray YUV to GRAY conversion 2010-06-12 16:23:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: videoscale: Update disted orc files 2010-06-12 16:16:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Allow video/webm for progressive downloading 2010-06-12 13:59:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Add support for more gray formats 2010-06-01 16:45:34 +0000 Martin Bisson <martin.bisson@gmail.com> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video.{c,h}: Fix an endianness bug fix. This commit makes sure the endianness is ok for RGB/BGR 15/16 formats. 2010-06-01 14:42:54 +0000 Martin Bisson <martin.bisson@gmail.com> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video.{c,h}: Add support for RGB and BGR with 15 and 16 bits. 2010-06-12 13:35:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: Use libgstvideo for caps parsing, etc 2010-06-12 13:04:43 +0200 Philippe Normand <phil@base-art.net> * ext/ogg/gstoggstream.c: oggdemux: Fix format string compiler warning on OS X 2010-06-12 13:00:26 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Use GST_VIDEO_CAPS_GRAY{8,16} 2010-06-12 12:57:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_scanline.c: videoscale: Implement linear merging of Y16 scanlines with orc 2010-06-12 08:26:27 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 733fca9 to 6da3bab 2010-06-11 22:16:26 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * ext/cdparanoia/Makefile.am: cdparanoia: check for cdparanoia with pkg-config first cdparanoia now has a .pc file in post-0.10.2 SVN, so use that to check for cdparanoia before we try all the other checks. Besides being generally nicer, this may help with correctly detecting cdparanoia on OSX some day (see #609918). 2010-06-11 12:34:24 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: look for dts frames at non-zero offsets too Scan a bit into the data when checking for dts frames instead of expecting the frame sync to be right at the start of the data. This is needed for some dts-disguised-as-pcm-in-wav files. See #413942. 2010-06-10 18:12:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: add typefinder for dts audio 2010-06-11 15:23:14 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/tag/gstexiftag.c: gstexiftag: Fix unitialized variables I hate thee macosx 2010-06-11 08:47:27 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/tag/gstexiftag.c: gstexiftag: Fix debug statements 2010-06-11 08:47:17 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/tag/gstexiftag.c: exiftag: Fix unitialized variable 2010-06-10 20:45:42 +0300 Stefan Kost <ensonic@users.sf.net> * win32/common/libgsttag.def: win32: update def file 2010-06-10 20:36:32 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/tag/tag.h: docs: fix gtk-doc warnings Variable names in function prototypes in the headers should match the doc- comment. 2010-06-10 08:47:17 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: If the text-sink claims to support ANY caps assume it only support raw plaintext subtitles Fixes bug #621071. 2010-06-10 08:46:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/icles/playbin-text.c: icles: Only accept plain subtitles in the playbin-text icles test 2010-06-09 22:34:24 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add support for VP6F (On2 VP6 Flash variant) 2010-06-09 12:35:40 -0700 David Schleef <ds@schleef.org> * configure.ac: Use the Orc m4 macro 2010-06-09 12:40:00 -0700 David Schleef <ds@schleef.org> * common: Automatic update of common submodule From fad145b to 733fca9 2010-06-09 12:33:51 -0700 David Schleef <ds@schleef.org> * common: Automatic update of common submodule From 47683c1 to fad145b 2010-06-09 15:58:32 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: tag: exif: Refactor byte-order handling Only check for valid byte-order values when creating the exif readers and writers 2010-05-10 14:01:46 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstexiftag.c: * tests/check/libs/tag.c: tag: exif: Adds new geo-location tag mappings Adds mappings for: GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION GST_TAG_GEO_LOCATION_MOVEMENT_SPEED GST_TAG_GEO_LOCATION_ELEVATION Does some refactoring in the code to reduce number of parameters passed to functions Tests included. 2010-04-04 22:25:24 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * tests/check/libs/tag.c: tests: tag: Adds unit tests for exif helper lib Adds some simple unit tests for exif helper lib functions Fixes #614872 2010-04-03 23:02:57 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gstexiftag.c: * gst-libs/gst/tag/tag.h: * win32/common/libgsttag.def: tag: Adds basic exif tags support Adds exif helper lib functions to parse exif buffers from/to taglists. Exif is tipically used in jpeg images, but it can also be embedded into TIFF, AVI and WAV formats. Adds a couple function to handle exif in tiff header structures, that is how exif is embedded in jpeg and (obviously) in tiff. API: gst_tag_list_to_exif_buffer API: gst_tag_list_to_exif_buffer_with_tiff_header API: gst_tag_list_from_exif_buffer API: gst_tag_list_from_exif_buffer_with_tiff_header Fixes #614872 2010-06-09 17:02:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Handle SEEKING query in push mode too 2010-06-09 16:38:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Update the total time from the Skeleton 4 indexes Fixes bug #620939, see bug #607945. 2010-06-09 16:33:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggstream: Implement latest version of the Skeleton 4.0 spec Fixes bug #620939. 2010-06-09 16:59:10 +0300 Stefan Kost <ensonic@users.sf.net> * gst/volume/gstvolume.c: volume: make the orc codes available for testing. Add a USE_ORC define for now and switch 'this' to 'self'. Having orc enabled passes the test suite and various manual gst-launch pipelines. 2010-06-08 13:34:46 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * .gitignore: .gitignore: add orc-related temp files 2010-06-08 13:26:53 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * gst/audioresample/Makefile.am: * gst/audioresample/gstaudioresample.c: Fix build if orc is not installed Orc is not a hard requirement. Things should still compile and work without orc, but slow fallback code may be used in this case. Fix up configure to not error out if orc is not installed and wrap use of orc profiling in audioresample in #ifdefs. Fixes #620136 some more. 2010-06-08 13:11:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: Implement correct parsing of Skeleton 4.0 index packets 2010-06-08 12:01:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: Add parsing of Skeleton 4.0 indexes 2010-06-08 11:40:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: Parse segment length and content offset from fishead And print them for debugging purposes. Not sure if we can do anything useful with this information. 2010-06-08 11:31:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: Parse Skeleton stream major/minor version 2010-06-08 11:26:26 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: Use binary search for searching in the index 2010-06-08 11:02:08 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/libs/video.c: video: Fix unit test, the Y800 checks were not used before and were not working 2010-06-08 11:01:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.c: video: Return TRUE in gst_video_format_is_gray() for Y800 and Y16 2010-06-08 00:33:31 -0700 David Schleef <ds@schleef.org> * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: audioconvert, videotestsrc: Update generated Orc code Fixes compile errors with initialization of unions. 2010-06-08 00:32:36 -0700 David Schleef <ds@schleef.org> * REQUIREMENTS: requirements: change liboil to Orc 2010-06-06 23:50:05 -0700 David Schleef <ds@schleef.org> * gst/audioresample/Makefile.am: * gst/audioresample/gstaudioresample.c: audioresample: convert from liboil to orc 2010-06-06 23:48:35 -0700 David Schleef <ds@schleef.org> * tests/check/Makefile.am: tests: Add orc tests 2010-06-06 23:48:15 -0700 David Schleef <ds@schleef.org> * gst/volume/Makefile.am: * gst/volume/gstvolume.c: * gst/volume/gstvolumeorc-dist.c: * gst/volume/gstvolumeorc-dist.h: * gst/volume/gstvolumeorc.orc: volume: convert from liboil to orc 2010-06-06 23:47:53 -0700 David Schleef <ds@schleef.org> * gst/videotestsrc/Makefile.am: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrcorc-dist.c: * gst/videotestsrc/gstvideotestsrcorc-dist.h: * gst/videotestsrc/gstvideotestsrcorc.orc: * gst/videotestsrc/videotestsrc.c: videotestsrc: convert from liboil to orc 2010-06-06 23:47:16 -0700 David Schleef <ds@schleef.org> * gst/videoscale/Makefile.am: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscaleorc-dist.c: * gst/videoscale/gstvideoscaleorc-dist.h: * gst/videoscale/gstvideoscaleorc.orc: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: videoscale: convert from liboil to orc 2010-06-06 23:46:41 -0700 David Schleef <ds@schleef.org> * gst/audioconvert/Makefile.am: * gst/audioconvert/audioconvert.c: * gst/audioconvert/gstaudioconvertorc-dist.c: * gst/audioconvert/gstaudioconvertorc-dist.h: * gst/audioconvert/gstaudioconvertorc.orc: audioconvert: convert from liboil to orc 2010-06-06 23:45:58 -0700 David Schleef <ds@schleef.org> * gst/adder/Makefile.am: * gst/adder/gstadder.c: * gst/adder/gstadder.h: * gst/adder/gstadderorc-dist.c: * gst/adder/gstadderorc-dist.h: * gst/adder/gstadderorc.orc: adder: convert from liboil to orc 2010-06-06 23:45:10 -0700 David Schleef <ds@schleef.org> * docs/design/Makefile.am: * docs/design/design-orc-integration.txt: docs: Add notes about Orc integration 2010-06-06 23:34:39 -0700 David Schleef <ds@schleef.org> * configure.ac: configure: convert liboil check to orc 2010-06-08 07:34:08 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggmux.c: oggmux: Start a new page for every CMML buffer 2010-06-07 14:38:42 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: add av-offset property Add av-offset property to control the audio and video sync offset. This can be used to to manually correct badly synced streams. See #620529 2010-06-07 08:31:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/gstffmpegcodecmap.c: ffmpegcolorspace: Map "Y8 " and "GREY" to "Y800" and add it to the template caps 2010-06-07 08:17:13 +0200 Martin Bisson <martin.bisson@gmail.com> * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Add support for Y800 and Y16 Fixes bug #620441. 2010-06-07 08:16:01 +0200 Martin Bisson <martin.bisson@gmail.com> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add support for Y800 and Y16 Fixes bug #620441. 2010-06-06 16:46:55 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: fix log function printf format issue 2010-06-05 18:14:38 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: stop jpeg typefinding once we found a SOF marker 2010-06-05 18:05:40 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/gst/typefindfunctions.c: tests: fix memory leak in unit test 2010-05-19 15:40:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: improve jpeg typefinder Make jpeg typefinder check more than just the first two bytes plus Exif or JFIF marker. This allows us to report MAXIMUM probability in cases where there's no Exif or JFIF marker, making typefinding stop early. Also extract width and height, because we can. 2010-06-05 17:22:17 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * tests/Makefile.am: * tests/check/Makefile.am: * tests/check/gst/typefindfunctions.c: * tests/files/Makefile.am: * tests/files/partialframe.mjpeg: tests: add small unit test for AC3 vs. JPEG typefinding issue 2010-06-05 16:58:50 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: fix AC-3 typefinding so that it actually checks for a second frame Fix typo that made the AC-3 typefinder not actually check for a second frame, but rather compare the sync point found to itself, which resulted in the AC-3 typefinder reporting an overly optimistic MAXIMUM or VERY_LIKELY probability when it found a possible frame sync. 2010-06-05 12:27:12 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstscreenshot.c: playbin2: improve screenshot code Use appsrc and appsink in the screenshot code to make things nicer. 2010-06-05 11:28:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: fix documentation string 2010-06-05 11:05:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: add convert-frame action signal Add a convert-frame action signal. Fixes #620279 2010-06-05 11:02:24 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstscreenshot.c: * gst/playback/gstscreenshot.h: playbin2: move marshaller to screenshot Move the marshaller for the convert_frame signal to the screenshot file in preparation for moving it to playsink. See #620279 2010-06-05 10:42:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: move convert_frame to playsink Move the convert_frame function to playsink and make it part of the API. This is in preparation to add the convert_frame signal to playsink. See #620279 2010-06-05 10:31:03 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: add property to get the last frame Add a property to get the last video frame. See #620279 2010-06-04 19:30:14 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: Handle raw streams we don't want. If a file contains raw streams (not requiring a decoder) that we do not want (expose-all-streams == FALSE), we would previously consider those of unknown-type (missing a decoder) ... whereas in fact it was just because they don't need decoders. This only applies if expose-all-streams is FALSE. 2010-06-03 13:44:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: Revert "baseaudiosink: Allocate and free the clock in NULL->READY and reverse" This reverts commit cea2644ed86097aadedc9e8731e78a22ffc6246b. Many audio sink assume that they can create a clock in the instance init function and it will be there forever and not be cleared by the state change functions. 2010-06-02 12:19:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: Allocate and free the clock in NULL->READY and reverse 2010-06-01 23:49:07 -0700 David Schleef <ds@schleef.org> * common: Automatic update of common submodule From 17f89e5 to 47683c1 2010-06-01 22:54:33 -0700 David Schleef <ds@schleef.org> * common: Automatic update of common submodule From fd7ca04 to 17f89e5 2010-06-01 13:00:22 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * tests/examples/overlay/Makefile.am: examples: get the right Qt moc binary to use via pkg-config Should make us do the right thing in cases where both Qt3 and Qt4 are installed. Fixes #620211. 2010-05-31 19:28:45 +1000 Jonathan Matthew <jonathan@d14n.org> * ext/gio/gstgiobasesink.c: gio: map GIO NO_SPACE error to NO_SPACE_LEFT Fixes bug #620140. 2010-05-28 08:27:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * gst-libs/gst/interfaces/streamvolume.c: configure: Remove (now) useless check for cbrt 2009-12-02 22:16:22 -0800 David Schleef <ds@schleef.org> * gst-libs/gst/interfaces/streamvolume.c: interfaces: Use pow() instead of cbrt() for MSVC 2010-05-26 11:54:51 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 357b0db to fd7ca04 2010-05-26 08:51:09 +0200 Edward Hervey <bilboed@bilboed.com> * gst/audiorate/gstaudiorate.c: audiorate: Fix buffer offset_end when within tolerance. This fixes issues if we then have downstream elements that operate on offset/offset_end. And add the expected timestamp in the debug logs 2010-05-24 11:27:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/fft/kiss_fft_f32.c: * gst-libs/gst/fft/kiss_fft_f32.h: * gst-libs/gst/fft/kiss_fft_f64.c: * gst-libs/gst/fft/kiss_fft_f64.h: * gst-libs/gst/fft/kiss_fft_s16.c: * gst-libs/gst/fft/kiss_fft_s16.h: * gst-libs/gst/fft/kiss_fft_s32.c: * gst-libs/gst/fft/kiss_fft_s32.h: * gst-libs/gst/fft/kiss_fftr_f32.c: * gst-libs/gst/fft/kiss_fftr_f64.c: * gst-libs/gst/fft/kiss_fftr_s16.c: * gst-libs/gst/fft/kiss_fftr_s32.c: fft: Merge kissfft 1.2.8 This reduces memory footprint for the FFT and adds OpenMP support (but we don't use it). 2010-05-22 10:05:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Fixate interlaced, chroma-site and color-matrix fields if necessary 2010-05-22 10:02:46 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * gst/videorate/gstvideorate.c: videorate: Use new string fixation function from core 2010-05-22 09:48:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videorate/gstvideorate.c: videorate: Fixate color-matrix and chroma-site fields if necessary 2010-05-22 09:39:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videorate/gstvideorate.c: videorate: Fixate the interlaced field if necessary Fixes bug #619310. 2010-05-22 08:55:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add IVF typefinder 2010-05-21 18:16:07 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/videorate/gstvideorate.c: videorate: pass object to logging functions, use GST_DEBUG_FUNCPTR 2010-05-20 15:14:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/descriptions.c: pbutils: add basic descriptions for new WebM and VP8 types 2010-05-20 14:21:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Fix sizes again, this time for real 2010-05-20 13:58:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: oggdemux: Fix size checks 2010-05-20 10:19:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: oggdemux: Drop all other Ogg VP8 header packets and make VP8 mapping check a bit more strict 2010-05-20 08:52:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: ogg: Some more minor adjustments for the VP8 Ogg mapping 2010-05-19 21:35:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: ogg: Update to the latest VP8 mapping 2010-05-10 05:53:22 +0200 Philip Jägenstedt <philipj@opera.com> * gst/typefind/gsttypefindfunctions.c: typefind: Detect WebM as video/webm Refactor matroska_type_find into ebml_check_header and a new matroska_type_find and webm_type_find. 2010-05-14 13:31:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: Fix granulepos->key granule calculation for Dirac 2010-05-14 11:02:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: Add support for mapping specific granulepos to key granule mapping 2010-05-05 13:59:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: ogg: Implement Ogg VP8 mapping 2010-04-27 15:24:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/riff/riff-media.c: riff: Add support for On2 VP8 2010-05-19 16:17:19 +0200 Alessandro Decina <alessandro.decina@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: fix a typo introduced by 9d753824. video/x-raw-float => audio/x-raw-float. Fixes #619090. 2010-05-18 08:45:52 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Don't put "raw" subtitle types in the raw caps for decodebin2 We handle them from the autoplug-continue signal, where the caps supported by the subtitle sink or overlay are known already. 2010-05-15 21:15:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: configure: Use = instead of == in shell scripts for equality checks 2010-05-14 18:23:11 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 4d67bd6 to 357b0db 2010-05-14 17:24:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: Always take the object lock when accessing the caps Fixes bug #618625. 2010-05-14 17:17:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Don't fail if subtitles are used but only audio is available and no visualizations Instead simply disable displaying of the subtitles for now, as was intended by that part of code... Fixes bug #610866. 2010-05-14 17:13:17 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Fix deadlock caused from an additional lock instead of unlock Also improve debug output for the playsink lock. 2010-05-13 12:16:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Use passthrough mode if width and height are not changed It doesn't matter if the PAR changes or not, processing of every pixel is only necessary when the width or height changes. 2010-05-13 12:03:07 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/riff/riff-media.c: riff: relax width and height constraints Increase the acceptable video sizes from [16,4096] to [1, MAX]. See #618392 2010-05-13 08:05:09 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.c: video: Use simple fraction multiplication functions instead of going through GValues 2010-05-10 17:09:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/videoscale.c: videoscale: Add a unit test for checking if the negotiation works as expected 2010-05-10 17:09:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Try harder to keep the DAR if possible Fixes bug #371108. 2010-05-10 15:13:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Log PAR and DAR of input and output caps when setting caps 2010-05-10 14:52:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Set input width/height if the output caps don't have any width or height 2010-05-10 13:01:44 +0200 Andoni Morales <ylatuya@gmail.com> * gst/videoscale/gstvideoscale.c: videoscale: Try to keep DAR when scaling Fixes bug #371108. 2010-05-10 19:09:28 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: basertpaudiopayload: Add extra frame for non-complete frame lengths Some payloaders like rtpg729pay can add a shorter frame at the end of a RTP packet. We need to count it like a full frame for timestamps. https://bugzilla.gnome.org/show_bug.cgi?id=618324 2010-05-10 18:53:29 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: basertpaudiopayload: Set duration on buffers Set the duration of the buffers from their size 2010-05-11 16:12:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Fixate PAR to 1/1 if possible 2010-05-11 10:07:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: configure: Check for GTK+ 3.0 and if it's not available for GTK+ 2.0 2010-05-10 12:44:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * sys/ximage/ximagesink.c: ximagesink: Check if the X context is allocated before using it It should be allocated at these places already or the state changes would have failed... but better add an additional check here. 2010-05-10 12:28:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * sys/ximage/ximagesink.c: ximagesink: Post an error message on the bus if no supported pixmap formats can be found Might fix bug #615851. 2010-05-07 19:49:57 +0200 Edward Hervey <bilboed@bilboed.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace : whooops 2010-05-07 19:21:13 +0200 Edward Hervey <bilboed@bilboed.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: more minor cleanups 2010-05-07 17:16:28 +0200 Edward Hervey <bilboed@bilboed.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: speedup caps transformation * don't re-create our possible caps every single time, just use the template caps. * don't intersect the caps against the template, basetransform has already done that for us. 62% speedup of _transform_caps() (instruction calls, measured with callgrind) 2010-05-07 12:19:25 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gsturidecodebin.c: uridecodebin: add the 'expose-all-streams' property from decodebin2 API: expose-all-streams https://bugzilla.gnome.org/show_bug.cgi?id=617868 2010-05-06 18:50:51 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: Add a property to not expose/decode all streams API : expose-all-streams If disabled: * only the streams that CAN be decoded and match the final caps will have a decoder plugged in and be exposed. * the streams that COULD HAVE BEEN decoded but do not match the finals caps will not have a decoder plugged in and will not be exposed. If no decoder is available to decode a certain stream, then the missing element message will still be emitted regardless of the value of the property. https://bugzilla.gnome.org/show_bug.cgi?id=617868 2010-05-06 17:47:12 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: rename are_raw_caps to are_final_caps, correct comment https://bugzilla.gnome.org/show_bug.cgi?id=617868 2010-05-07 17:16:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/sdp/gstsdpmessage.h: sdpmessage: add new TIAS bandwidth modifier Add TIAS modifier as specified in RFC 3890. Do some whitespace fixes. 2010-05-07 00:10:22 +0300 Stefan Kost <ensonic@users.sf.net> * gst/audioconvert/audioconvert.c: audioconvert: disambigue comment due to popular demand Write "target depth" instead of "our depth" or previous ambigous "out depth". 2010-05-06 15:40:34 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: disconnect signals in some more cleanup cases 2010-05-06 13:10:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: don't seek when no current chain Avoid a crash when we try to seek when there is no current chain. 2010-05-06 12:21:38 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: ignore the skeleton start time Ignore the skeleton start time as it is usually wrong for live streams and we have the needed logic to calculate it anyway. 2010-05-06 12:06:09 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: wait for headers before exposing chains Wait until we have all the stream headers before we start exposing the streams of a chain. 2010-05-06 10:56:21 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: use index to estimate bitrate When we have an index, use it to much more accurately estimate the total stream bitrate. 2010-05-06 11:34:53 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/rtsp/gstrtsptransport.h: docs: be more firendly to gtk-doc limitted parsing capabilities 2010-05-06 09:42:02 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: docs: fix wrong doc markup 2010-05-06 09:17:33 +0300 Stefan Kost <ensonic@users.sf.net> * gst/videoscale/gstvideoscale.c: videoscale: use can_intersect to avoid a caps copy 2010-05-06 09:14:25 +0300 Stefan Kost <ensonic@users.sf.net> * gst/videorate/gstvideorate.c: videorate: trucate own caps, instead of copying and using the first only We got the caps from an intersect, it is our own, hence we can truncate it. Besides gst-indent has chooses to line-up all caps in one line again :/. 2010-05-06 09:12:32 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstdecodebin.c: decodebin: use can_intersect to avoid a caps copy 2010-05-06 09:11:17 +0300 Stefan Kost <ensonic@users.sf.net> * ext/libvisual/visual.c: libvisual: trucate own caps, instead of copying and using the first only We got the caps from an intersect, it is our own, hence we can truncate it. 2010-05-06 08:20:10 +0300 Stefan Kost <ensonic@users.sf.net> * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: * ext/vorbis/gstvorbisdeclib.c: * ext/vorbis/gstvorbisdeclib.h: vorbis: have a copy_sample func as a func pointer Make some more variants for copy_sample funcs and use them via function pointer. 2010-05-06 08:16:45 +0300 Stefan Kost <ensonic@users.sf.net> * gst/audioconvert/audioconvert.c: audioconvert: fix typo in comment 2010-05-06 08:15:16 +0300 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: use gst_caps_can_intersect() more In place where we just need to know whether caps intersect, we can use this quicker function. 2010-04-15 13:09:45 +0300 Stefan Kost <ensonic@users.sf.net> * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/position-formats.c: examples: add a test for difference position formats The test runs position and duration queries on the pipeline in all formats. 2010-04-15 13:08:39 +0300 Stefan Kost <ensonic@users.sf.net> * tests/icles/audio-trickplay.c: example: update status (adder is fixed now) 2010-04-15 13:08:01 +0300 Stefan Kost <ensonic@users.sf.net> * tests/icles/playbin-text.c: example: make app static 2010-05-05 13:25:02 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: printf format fixes 2010-05-04 15:32:59 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: weekday and month names in RTSP date string should be in C locale Create date string using C locale weekday and month names. Fixes #617636. 2010-05-04 17:54:01 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: add all qtdemux types to downloadable types Add all the media types that qtdemux can handle to the list of downloadable types. 2010-05-04 17:38:50 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: handle corrupt indexes Make sure we handle and receover from corrupt indexes. 2010-05-04 15:47:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: fix EOS check 2010-05-04 13:51:07 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: oggstream: avoild division by 0 2010-05-04 13:50:46 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: cleanup unused defines 2010-05-04 13:36:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: use the index in push mode when we can When seeking in push mode, try to use the index first before we use the bitrate estimation. 2010-05-04 13:05:51 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: use skeleton duration when possible 2010-05-04 13:02:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggstream: parse duration from 3.3 skeleton 2010-03-02 11:16:39 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: more index parsing work 2010-03-01 13:50:32 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: clean up fishead/fisbone parsing Remove some redundant code for parsing fishead streams. Actually use the data we parsed (mostly start_time). 2010-05-04 11:19:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: implement seek in push mode Refactor start time collection code. When we receive a flush_stop, resync to the new start time and push out a new segment event. 2010-05-03 16:52:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: make event handling better Explicitly handle FLUSH events and resync on FLUSH_STOP. Make send_event return a boolean. Use more performant send_event function to forward events. 2010-04-30 18:37:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: implement seeking in pushmode Convert seek requests to bytes using the bitrate and forward them upstream. Does not quite work because the flushing and resyncing is not implemented yet. 2010-04-30 18:03:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: refactor for seeking in pushmode refactor the code a little to prepare for seeking in push mode 2010-05-03 12:46:34 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Adds new geo-location mappings Adds GST_TAG_GEO_LOCATION_MOVEMENT_SPEED, GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION and GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION to xmp mappings. Tests included. 2010-04-26 22:08:41 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Adds xmp mappings for device tags Adds xmp mappings for GST_TAG_DEVICE_MANUFACTURER and GST_TAG_DEVICE_MODEL. Also adds tests for it. 2010-04-30 19:56:14 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspbase64.c: * gst-libs/gst/rtsp/gstrtspbase64.h: rtsp: deprecate remaining base64 function now that we depend on GLib 2.20 API: deprecate gst_rtsp_base64_decode_ip(), use g_base64_decode_inplace() instead 2010-04-30 19:37:33 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpdepayload.c: basertpdepayload: ensure writable metadata 2010-04-30 17:41:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: use bitrate to estimate length in pushmode Parse the bitrate from the various streams. Use the bitrate and the upstream length in bytes to estimate the total stream duration in push mode. 2010-04-30 14:07:59 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * ext/gio/gstgiobasesrc.c: Bump GLib requirement to 2.20 See http://gstreamer.freedesktop.org/wiki/ReleasePlanning/GLibRequirement 2010-04-30 13:36:59 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: forward duration query duration during group switch if no cached duration ... such as during first group setup. Fixes #616396. 2010-04-02 16:37:21 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: only EOS when all streams are EOS 2010-04-02 16:36:53 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: fix debug message 2010-04-30 08:45:43 +0300 Stefan Kost <ensonic@users.sf.net> * tests/icles/audio-trickplay.c: test: fix copy and paste error of variable name 2010-04-18 20:46:37 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: only accept seek-types none and set Previously we were also acting on cur and end, but treating them like none. 2010-04-14 23:31:20 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: rework timestamping Adder was using always incrementing timestamps. Seeking was done by setting the position in the newsegment event. This was failing when doing segmented seeks with rate<0.0, as offset (and thus timestamp) would go below 0. Now we take both cur and end from the seek event. We construct newsegment events depending including cur and end from the seek event. We set position to the start of the segment. Timestamp is set to start or end of segment depending on rate. Offset is recalculated. 2010-04-26 17:30:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Add support for deinterlacing This is disabled by default and can be enabled with the deinterlace flag. Fixes bug #547603. 2010-04-26 11:12:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: playbin2: Add flag for enabling/disabling automatic deinterlacing 2010-04-26 11:11:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplay-enum.c: playbin: Use g_once_init_{enter,leave} instead of GOnce for enum/flag registration 2010-04-23 17:01:55 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/Makefile.am: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: ffmpegcolorspace: Use GST_BOILERPLATE and use GstVideoFilter as base class This gives automatic QoS handling. 2010-04-23 16:24:11 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Correctly reconfigure the video chain when switching from a subtitle to a non-subtitle file Fixes bug #616422. 2010-04-23 16:08:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: If a text sink is provided, let subtitle parsing be done by decodebin2 if required This way subtitle sinks only get buffers in the format that they understand, i.e. raw parsed text in most cases. Fixes bug #614942. 2010-04-23 15:30:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Set subtitle encoding on the decodebins again 2010-04-23 15:22:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: API: Add GST_VIDEO_FORMAT_v308 for packed 4:4:4 YUV 2010-04-23 15:14:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: Some random cleanup 2010-04-23 15:06:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Add support for Y444, Y42B and Y41B 2010-04-23 14:42:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Reorder template caps by the amount of information contained in the color formats 2010-04-22 15:46:17 -0400 Joshua M. Doe <joshua.doe@us.army.mil> * gst/videorate/gstvideorate.c: videorate: add support for video/x-raw-gray 2010-04-29 15:05:59 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/inspect/plugin-decodebin2.xml: * docs/plugins/inspect/plugin-playbin.xml: docs: remove references to and introspection data of plugins that no longer exist Some plugins (decodebin2, playbin) have been renamed or merged into different plugins (uridecodebin, playback). 2010-04-29 15:02:39 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development. === release 0.10.29 === 2010-04-28 02:16:58 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.29 2010-04-28 01:34:24 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-04-25 23:14:35 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.28.3 pre-release 2010-04-20 17:20:43 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-plugins-base.doap: doap: update repository info from cvs->git and maintainers 2010-04-23 14:39:46 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From fc85867 to 4d67bd6 2010-04-22 20:58:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Fix Y41B->Y444 conversion ...which is the intermediate conversion for conversion to all other formats. Fixes bug #616545. 2010-04-16 20:03:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: Don't leak the input buffer in error cases Fixes bug #615572. 2010-03-29 12:53:11 +0300 Stefan Kost <ensonic@users.sf.net> * ext/ogg/gstoggmux.c: docs: fix typo in link name 2010-04-15 12:59:53 +0300 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: gracefully handle ximagesink>xwindow == NULL Expose could be called before we have set the xwindow. Handle this gracefully like we do in image_put. Fixes #615789 2010-04-15 11:44:49 +0300 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: ximagesink: refactor _update_geometry() Refactor like in xvimagesink. Remove the extra parameter and adjust the assert check. 2010-04-15 07:18:05 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * configure.ac: configure: Drop -Wcast-align Commit message copied from core's commit from Benjamin Otte: 246f5dba96a5b50bb74621af67b30942cca72af5 Apparently gcc warns that GstMiniObject is not castable to GstEvent/Message/Buffer due to them containing 64bit variables, even though ARM hackers claim that those only need 4byte alignment. And as long as gcc behaves that way, this warning is not very useful. So we'll remove the warning until this problem is fixed. Fixes #615698 2010-04-14 14:13:25 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * gst-libs/gst/tag/lang-tables.dat: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: 0.10.28.2 pre-release 2010-04-14 13:50:21 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2010-04-13 16:20:10 +0300 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: init geometry when setting new xid Don't rely on expose event to query geomentry after new xid is set. Fixes #615647. 2010-04-14 13:43:44 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/audioconvert/Makefile.am: * tests/examples/app/Makefile.am: * tests/examples/dynamic/Makefile.am: * tests/examples/gio/Makefile.am: * tests/examples/volume/Makefile.am: * tests/old/examples/switch/Makefile.am: build: use LDADD instead of LDFLAGS to specify libs to link to when building executables Use foo_LDADD instead of foo_LDFLAGS to specify the libraries to link to. This should make sure arguments are passed to the linker in the right order, and makes LDFLAGS usable again. Based on initial patch by Brian Cameron <brian.cameron@oracle.com> Fixes #615697. 2010-04-12 14:02:34 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: add channels and rate to ADTS caps if we can 2010-04-12 13:33:18 +0100 Arun Raghavan <arun.raghavan@collabora.co.uk> * gst/typefind/Makefile.am: * gst/typefind/gstaacutil.c: * gst/typefind/gstaacutil.h: * gst/typefind/gsttypefindfunctions.c: typefinding: add AAC level to ADTS caps This adds code to calculate the level for a given AAC stream and export it in the stream caps. For AAC LC streams, the level is calculated according to the definition under the AAC Profile. For other streams, the definition under the Main Profile is used. HE-AAC support is still to be done, and is dependent on detecting the presence of SBR and PS in the stream. Level is added as a field of type string because that's the way it's done in H.264 caps as well. There are only a few possible levels, so not using a numerical type is not too painful in this case, and consistency is nice. Fixes #613589. 2010-03-10 13:32:53 +0000 Arun Raghavan <arun.raghavan@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: add AAC profile to ADTS caps This looks at the AAC profile for ADTS streams and adds the profile as a string in the corresponding caps. Profile is the actual profile, base-profile denotes the minimum codec requirements to decode this stream. In this case they're always the same, but they may differ e.g. in case of certain HE-AAC streams that can be partially decoded by LC decoders (with loss of quality of course) if no suitable HE-AAC decoder is available. Fixes #612312. 2010-04-11 22:58:15 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: add support for negative playback rates Decrement sample counter when playing backwards. Set proper segment when playing backwards (0..cur instead or cur..-1). Add more logging and fix a format string. 2010-03-26 19:00:47 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiopayload: use ptime-multiple Based on patch by Olivier Crête <olivier.crete@collabora.co.uk> Fixes #613248 2010-04-09 16:06:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: audiopayload: add property to control packet duration Add a property to specify that the amount of data in a packet should be a multiple of ptime-multiple. See #613248 2010-04-09 11:20:55 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 218568f to fc85867 2010-04-08 17:49:02 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/Makefile.am: * gst/playback/Makefile.am: * gst/playback/gstplayback.h: playback, ogg: dist new gstplayback.h and gstogg.h 2010-04-09 08:23:33 +0200 Thomas Green <thomasgr33n@googlemail.com> * gst/playback/gstplaybin.c: playbin: Only unref the volume element on dispose and when a new audio sink is set Unreffing it whenever the sinks are removed will make the volume element unavailable after a playbin reuse because it is only recreated if the audio sink has changed. Fixes bug #614288. 2010-04-08 07:39:08 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: Be sure that metadata is writable before setting caps Call gst_buffer_make_metadata_writable before attempting to set caps on the buffer. 2010-04-08 12:21:50 +0200 Edward Hervey <bilboed@bilboed.com> * ext/gio/gstgio.c: * ext/gnomevfs/gstgnomevfs.c: ext: Invert rank of gio and gnomevfs elements 2010-04-08 01:26:09 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: don't pass non-constant strings as printf format strings Fixes 'format not a string literal and no format arguments' compiler warning when compiling with -DGST_DISABLE_PRINTF_EXTENSION. 2010-04-07 20:21:14 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/video/video.h: docs: add gtk-doc chunks with Since: tags for new GST_VIDEO_CAPS_GRAY* API 2010-04-07 19:07:29 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * autogen.sh: * configure.ac: build: bump autoconf requirement to 2.60 for gobject-introspection.m4 Require autoconf 2.60 (which was released in June 2006). Fixes #600718. 2010-04-07 17:25:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.c: video: Fix parsing of 8-bit grayscale caps 2010-04-07 17:21:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.h: video: API: Add GST_VIDEO_CAPS_GRAY{8,16} 2010-04-07 17:08:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: video: API: Add gst_video_format_is_gray() to the docs 2010-04-07 17:07:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * win32/common/libgstvideo.def: video: Add new symbol to the exported symbols list 2010-04-07 17:06:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add support for 8-bit and 16-bit grayscale formats 2010-04-06 10:55:42 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtspconnection: Handle closed POST socket in tunneling Catch more socket errors. Rework how sockets are managed in the GSource, wake up the maincontext instead of adding/removing the sockets from the source. Add callback for when the tunnel connection is lost. Some clients (Quicktime Player) close the POST connection in tunneled mode and reopen the socket when needed. See #612915 2010-04-04 21:24:44 -0700 David Schleef <ds@schleef.org> * configure.ac: configure: fix cdparanoia check Linking with libcdda_paranoia.so requires also linking with libcdda_interface.so. 2010-04-04 18:00:23 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * tests/check/libs/tag.c: tests: tag: Refactor a bit Refactor xmp tags unit tests and remove an useless assertion. This will make easier to add unit tests to serialize/deserialize taglists. 2010-04-04 21:18:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: alsa: Ignore errors when unpreparing or closing the device Errors could happen here when the device was removed already or when something is broken anyway. If errors happen here and they're propagated, the element can't shutdown cleanly. Fixes bug #614545. 2010-04-04 20:55:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/alsa/gstalsamixer.c: alsamixer: Detect errors from device polling, stop the task and post an error message Partially fixes bug #614545. 2010-04-04 12:13:02 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * tests/examples/seek/Makefile.am: examples: build silly joystick seek example only on linux jsseek depends on linux headers and should therefore only be built on linux. Fixes #614764. 2010-04-03 22:49:11 +0300 Stefan Kost <ensonic@users.sf.net> * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: swap timestamps in forward and reverse mode. In reverse mode we want use the next next timestamp (and not the other way around). Fixes the tests again. Also readd a log line that was dropped with previous commit. 2010-04-03 14:03:45 +0100 Vincent Untz <vuntz@gnome.org> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: libs: point gobject-introspection scanner to .la files Point g-ir-scanner to the .la file of our library, which hopefully makes it find the right dependencies in all cases (ie. our locally built libgstreamer and not the system-installed one). This is also how it's done in Gtk+ and how it's documented in the wiki, see http://live.gnome.org/GObjectIntrospection/AutotoolsIntegration Fixes #603710. 2010-04-02 21:01:25 +0300 Stefan Kost <ensonic@users.sf.net> * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: implement reverse playback Support playback at negative rates. When having a GstController assigned, the element will produce time dependend output. 2010-04-02 20:56:19 +0300 Stefan Kost <ensonic@users.sf.net> * tests/icles/audio-trickplay.c: tests: extend audio-trickplay test app Tell status in top comment. Use debug logging instead of print to be able to see timing issue in debug log viewer. Add more commandline flags. Test reverse playback. 2010-04-02 18:56:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/seek/seek.c: seek: Only use embed_xid if HAVE_X is defined Fixes bug #614622. 2010-04-01 19:13:22 +0200 Edward Hervey <bilboed@bilboed.com> * tests/check/pipelines/basetime.c: tests/basetime: Don't run test with osxaudiosrc libcheck runs the actual tests in a forked process and that makes the guys in Cupertino really sad. 2010-04-01 18:51:17 +0200 Edward Hervey <bilboed@bilboed.com> * tests/check/pipelines/capsfilter-renegotiation.c: tests: Unref the bus once we're done with it 2010-04-01 16:49:37 +0200 Edward Hervey <bilboed@bilboed.com> * common: common: Update for new suppressions 2010-04-01 13:55:15 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplaysink.c: gstplaysink: Remove unused variable. The value of klass is never used 2010-04-01 13:53:37 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: Removing dead assignment. The value of group is overwritten a few lines below before being used. 2010-04-01 13:51:13 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Remove unused variable 2010-04-01 13:48:42 +0200 Edward Hervey <bilboed@bilboed.com> * ext/gnomevfs/gstgnomevfssink.c: gstgnomevfssink: Return the proper GstFlowReturn. We were always returning GST_FLOW_OK previously even if we encountered errors. 2010-03-30 23:44:51 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gst-libs: more gobject-introspection fixes Use right .pc file variable for compiler includes this time: g-ir-compiler wants the girdirs not the typelibdirs as includes. 2010-03-30 20:21:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/seek/jsseek.c: examples: fix printf format warning in jsseek example Yes, I know about G_GSIZE_FORMAT. 2010-03-30 19:56:56 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: gst-libs: fix up gobject-introspection some more Use new girdir and typlibdir from core .pc files, so we can figure out the right includes to pass to the gobject-introspection tools, whether core is installed in the same prefix as gobject-introspection or in a different prefix or uninstalled. This also keeps us from adding bogus paths to the includes that only work if core is uninstalled. Also add some missing includes/pkgs where needed. 2010-03-30 19:29:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/Makefile.am: Our RIFF library depends on both the audio and tag libraries Update rules in Makefile.am accordingly. 2010-03-30 15:10:42 +0200 Robert Swain <robert.swain@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Fix aduio_raw_sink typo 2009-11-28 21:03:44 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/examples/seek/.gitignore: * tests/examples/seek/Makefile.am: * tests/examples/seek/jsseek.c: examples: Add a silly joystick based shuttle example 2010-03-29 20:07:52 -0700 David Schleef <ds@schleef.org> * ext/theora/gsttheoraenc.c: theoraenc: 0-length packets are delta units 2010-03-29 10:47:31 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/Makefile.am: gst-libs: build independent sub-directories in parallel if make -jN is used Build those libraries that don't depend on any other gst-plugins-base libraries in parallel if make -jN is used. 2010-03-29 00:22:20 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: * ext/Makefile.am: * gst/Makefile.am: * sys/Makefile.am: * tests/examples/Makefile.am: build: build plugin and example directories in parallel if make -jN is used We know our plugins and examples are independent of each other, so may just as well build them in parallel. Makes the output a bit messy, but that shouldn't be a problem and can easily be avoided with make -j1. 2010-03-28 21:50:58 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/Makefile.am: gst-libs: specify dependencies in Makefile.am to make them explicit 2010-03-24 09:59:42 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/interfaces/xoverlay.h: * sys/xvimage/xvimagesink.c: * tests/icles/test-xoverlay.c: xoverlay: change new set_render_rectangle() vfunc to take four arguments so we don't depend on libgstvideo Don't make libgstinterfaces (and thus libgstaudio etc.) indirectly depend on libgstvideo by using the GstVideoRectangle helper structure in the API, which causes undesirable dependencies, esp. with the gobject-introspection (people will point and laugh at us if they find out that libgstaudio depends on libgstvideo). Instead, pass the x, y, width and height parameters directly to the function. Re-fixes #610249. 2010-03-25 18:45:48 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: we can handle avi in download mode too Add avi to the whitelisted types that can be used for download buffering. 2010-03-26 15:57:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: Provide packet duration function for old FLAC mapping too Fixes bug #613809. 2010-03-18 22:12:40 +0000 Damien Lespiau <damien.lespiau@intel.com> * autogen.sh: autogen.sh: Don't call configure with --enable-plugin-docs configure gives a nice warning: configure: WARNING: unrecognized options: --enable-plugin-docs and indeed, I could not find anything in the configure.ac or the m4 macros that would allow enabling that option. Remove it then. 2010-03-24 23:04:43 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Do not remove tag from list twice There was a but when parsing the tags that removed two tags from the list when only one was parsed 2010-03-24 14:43:21 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Add some comments Just adds some comments explaining some stuff about the (de)serialization functions. Add myself to the copyright list too. 2010-03-24 10:18:13 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Adds _USER_RATING mapping for xmp Adds a new mapping for _USER_RATING on xmp helper lib and also adds tests for it 2010-03-23 09:32:40 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Add Elevation tag mapping Adds a mapping to the _ELEVATION tag, this is a different mapping as it has to be mapped into exif:GPSAltitude and exif:GPSAltitudeRef at the same time. So we needed to refactor a little more to be able to deserialize it properly. Now, when parsing a xmp buffer into a taglist all tags are added to a list before being parsed so that when one of the altitude tags are found the deserialization function can search for its complementary tag to do the correct parsing Fixes #613690 2010-03-23 09:48:19 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Fix off by one Avoid ignoring single char tags, like exif:GPSAltitudeRef Fixes #613690 2010-03-22 15:18:28 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: * tests/check/libs/tag.c: tag: xmp: Adds mappings for LATITUDE and LONGITUDE Adds the mappings for those tags and tests for tags serialization. Fixes #613690 2010-03-22 22:03:09 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Refactor buffer parsing When parsing the xmp buffer into the gst taglist store the found tags into a list to be parsed only after finding all tags on the buffer. This allows the parser function to search this list for complimentary tags that should be parsed together Fixes #613690 2010-03-20 11:17:38 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tag: xmp: Refactor mappings storage This commit is only refactoring, no fetaures added. Do not store tags in flexible arrays as it doesn't allow us to use nested flexible arrays. This is going to be needed in the following commits to map gst tags that are stored into 2 separate tags in xmp (Not that they are alternatives, but they are complementary). For example, GST_TAG_ELEVATION is represented in the exif schema with 2 fields: the absolute altitude and an integer to indicate if it is above or below sea level. The previous mappings storage wouldn't allow us to express it. Also store a serialization and a deserialization function for each xmp tag as some of them require some non-trivial convertion to its string form. Fixes #613690 2010-03-24 18:51:42 +0100 Edward Hervey <bilboed@bilboed.com> * common: Automatic update of common submodule From 55cd514 to c1d07dd 2010-03-24 18:55:25 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: parse more info from the buffering query Parse more info from the buffering query and log this as debug info. 2010-03-24 12:10:38 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtsptransport.c: rtsptransport: ignore unparsable ranges Ignore unparsable port ranges instead of erroring out. Fixes #613591 2010-03-23 18:36:26 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * win32/common/libgstrtsp.def: win32: Add new gst_rtsp_lower_trans_get_type() symbol to the symbol lists 2010-03-23 11:01:17 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/riff/riff-media.c: riff: add some more fourcc for MPEG-4 video 2010-03-22 09:15:28 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: require core git 2010-03-22 08:38:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-fft.pc.in: pkgconfig: Add @LIBM@ to the FFT pkg-config files 2010-03-22 08:35:57 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-cdda-uninstalled.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-floatcast-uninstalled.pc.in: * pkgconfig/gstreamer-floatcast.pc.in: * pkgconfig/gstreamer-interfaces-uninstalled.pc.in: * pkgconfig/gstreamer-netbuffer-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: pkgconfig: Fix include and library paths for the uninstalled pc files 2010-03-20 13:42:32 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/gio/gstgiobasesrc.c: gio: add cast to avoid compiler warning with old GLib versions g_file_input_stream_query_info() had char * instead of const char * as attribute argument before 2.20. Fixes #613387, spotted by tetsuyayasuda@gmail.com 2010-03-20 12:55:36 +0000 Torsten Schönfeld <kaffeetisch@gmx.de> * gst-libs/gst/interfaces/xoverlay.c: docs: add Since: tags to gst_x_overlay_handle_event() docs Fixes #613403. 2010-03-19 22:33:58 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: Constify some strings in the API Needed by plugins-good 2010-03-19 16:41:54 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: videotestsrc: Only set color-matrix and chroma-site for relevant formats The color-matrix only makes sense for colorful formats, i.e. not Y800 and the chroma-site only for non-4:4:4(:4) formats. 2010-03-19 15:37:04 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/gsttheoradec.c: * ext/theora/gsttheoradec.h: theoradec: add QoS messages to the decoder Post QoS messages when we drop a frame because of QoS. 2010-03-19 15:00:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp: add GType for transport flags Make a method to register the transport flags as a GType. 2010-03-19 01:00:36 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/cdparanoia/Makefile.am: * ext/gio/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst/ffmpegcolorspace/Makefile.am: * gst/tcp/Makefile.am: * gst/videotestsrc/Makefile.am: * sys/v4l/Makefile.am: * tests/examples/app/Makefile.am: * tests/examples/overlay/Makefile.am: * tests/icles/Makefile.am: build: Makefile.am fixes Mostly just add missing $(GST_BASE_CFLAGS), but also fix up order of flags (see docs/random/moving-plugins). 2010-03-19 00:46:56 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/pipelines/.gitignore: .gitignore: ignore new unit test binary 2010-03-17 23:57:31 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure.ac: -Wmissing-prototypes and -Wnested-externs are not valid for C++ Fixes building Qt-based overlay examples in combination with -Werror. 2010-03-17 16:32:35 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure.ac: wrap overly long warning flag lines 2010-03-17 19:24:27 -0300 Reuben Dowle <reube.dowle@navico.com> * sys/ximage/ximagesink.c: ximagesink: Fix caps leak Unref caps when peer doesn't accept caps Fixes #613198 2010-03-17 08:13:59 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * tests/check/Makefile.am: * tests/check/pipelines/capsfilter-renegotiation.c: tests: capsfilter-renegotiation: Adds a new unit test Adds a new test for checking that capsfilter 'caps' property changes cause caps renegotiation on the pipeline. 2010-03-17 16:46:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_scanline.c: videoscale: Use correct boundary checks for YUY2/UYVY Fixes bug #613093. 2010-03-17 16:39:13 +0100 Peter Kjellerstedt <peter.kjellerstedt@axis.com> * gst-libs/gst/rtsp/gstrtspdefs.c: rtsp: Further clean up of gst_rtsp_strresult() Since we no longer use an array of error messages, there is no reason to clamp the error code, which allows us to simplify the code some more and also to actually report the correct error code for unknown errors. 2010-03-17 15:41:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/volume/gstvolume.c: volume: Remove useless cast It's not necessary anymore after latest core change to GstValueArray. 2010-03-17 12:08:30 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: Add more warning flags The warnings are: -Wcast-align -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs No code needed to be fixed. 2010-03-17 11:14:29 +0100 Benjamin Otte <otte@redhat.com> * gst/audioconvert/gstfastrandom.h: Fix for -Wold-style-definition I didn't add the flag to configure because libvisual ships headers that trigger this warning. 2010-03-17 10:53:21 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: * ext/pango/gstclockoverlay.h: * gst/subparse/mpl2parse.c: Add -Wformat-nonliteral -Wformat-security And fix the resulting compile failures. I'm sorry about the patch necessary to gstclockoverlay.h but after talking to Tim we decided we can live with it. 2010-03-17 10:51:57 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/rtsp/gstrtspdefs.c: rtsp: Refactor gst_rtsp_strresult 2 goals in the refactoring: - Put the error messages closer to their enum values, so that it's easy to see which error belongs to which value. - Make gcc not complain with -Wformat-nonliteral 2010-03-17 10:47:07 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/tag/gstxmptag.c: xmp: Refactor code I initially looked here because I wanted compiles to not fail with -Wformat-nonliteral but ended up refactoring the code to make it look nicer. As I lack a large collection of XMP tagged files, I only did rough testing of the code. The testsuite passes though. 2010-03-16 20:05:43 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * m4/Makefile.am: * m4/a52.m4: * m4/aalib.m4: * m4/as-arts.m4: * m4/as-ffmpeg.m4: * m4/as-liblame.m4: * m4/as-slurp-ffmpeg.m4: * m4/esd.m4: * m4/gconf-2.m4: * m4/glib.m4: * m4/gst-artsc.m4: * m4/gst-matroska.m4: * m4/gst-sdl.m4: * m4/gst-shout2.m4: * m4/gst-sid.m4: * m4/gtk.m4: * m4/libfame.m4: * m4/libmikmod.m4: m4: remove some unused .m4 files 2010-03-16 18:31:15 +0100 Benjamin Otte <otte@redhat.com> * ext/alsa/gstalsaplugin.c: * ext/ogg/gstoggdemux.c: More ENABLE_NLS fixes 2010-03-16 18:06:16 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/gettext.h: Fix for ENABLE_NLS being undefined for -Wundef 2010-03-15 22:49:53 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: * ext/libvisual/visual.c: * ext/theora/gsttheoraenc.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/tag/tags.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: * gst/typefind/gsttypefindfunctions.c: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: * gst/volume/gstvolume.c: * sys/v4l/gstv4lelement.c: * sys/xvimage/xvimagesink.c: * tests/check/elements/audioconvert.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/playbin.c: * tests/check/elements/playbin2.c: * tests/check/elements/videorate.c: * tests/check/libs/pbutils.c: * tests/check/libs/video.c: * tests/check/pipelines/simple-launch-lines.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/icles/stress-playbin.c: Add -Wwrite-strings to configure Fixes for the code included 2010-03-16 15:45:23 +0100 Benjamin Otte <otte@redhat.com> * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdeclib.h: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: * gst-libs/gst/sdp/gstsdpmessage.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstinputselector.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gststreamselector.c: * gst/playback/gsturidecodebin.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/v4l/gstv4ljpegsrc.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsrc.c: * sys/v4l/gstv4lsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/elements/audioconvert.c: * tests/check/elements/playbin.c: * tests/check/elements/playbin2.c: * tests/check/elements/textoverlay.c: * tests/check/libs/cddabasesrc.c: * tests/check/libs/pbutils.c: * tests/old/testsuite/alsa/formats.c: * tests/old/testsuite/alsa/sinesrc.c: gst_element_class_set_details => gst_element_class_set_details_simple Also change my email from the old university one to the current one. 2010-03-15 22:17:56 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: Add -Wundef flag 2010-03-16 16:15:39 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: allow for more ipv6 addresses Use hints in getaddrinfo() so that we can also resolve ipv6 addresses. 2010-03-11 14:52:09 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: arrange for a running ringbuffer/clock for _wait_eos Fixes #612223. 2010-03-16 01:08:48 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/elements/videorate.c: tests: fix videorate test Fix up videorate test for latest videotestsrc changes: just check for the important bits in the negotiated caps, not for exact equality with our filter caps. Also don't leak the videorate element in the test. 2010-03-15 12:54:32 -0500 Rob Clark <rob@ti.com> * gst-libs/gst/riff/riff-media.c: riff: add mapping for On2 VP7 fourccs Fixes #612968. 2010-03-15 12:54:01 -0500 Rob Clark <rob@ti.com> * gst-libs/gst/riff/riff-media.c: riff: add mapping for On2 VP62 fourcc See #612968. 2010-03-15 23:46:39 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/multichannel.c: * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/interfaces/propertyprobe.c: * gst-libs/gst/interfaces/tuner.c: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtsp/gstrtsptransport.h: docs: more helper libraries docs fixes Quieten gtk-doc a bit more. 2010-03-15 23:47:23 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspextension.c: docs: add GstRTSPExtension to docs Add minimal docs for GstRTSPExtension so people know it exists. 2010-03-15 18:45:13 +0000 David Hoyt <dhoyt@llnl.gov> * gst/typefind/gsttypefindfunctions.c: typefind: use g_ascii_strncasecmp() instead of strncasecmp() g_ascii_strncasecmp() is more portable and likely more robust as well (with random binary data as input). Fixes #612845. 2010-03-15 13:39:58 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: docs: fix typo in gst_tag_list_from_xmp_buffer() docs chunk 2010-03-15 13:32:58 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/navigation.c: * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/interfaces/xoverlay.h: docs: fix up interfaces library docs to make gtk-doc happy 2010-03-15 13:24:42 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: docs: add new libgstvideo API to documentation 2010-03-15 13:19:09 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * win32/common/libgstinterfaces.def: * win32/common/libgstvideo.def: win32: add recently added API to .def files Also add API markers to make life easier for the release manager: API: gst_x_overlay_set_render_rectangle() API: gst_video_parse_caps_color_matrix() API: gst_video_parse_caps_chroma_site() 2010-03-15 13:14:54 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: use C comments instead of C++-style comments 2010-03-15 13:10:23 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: videotestsrc: use g_value_set_static_string() for string constants 2010-03-15 14:26:28 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Avoid g_object_set() on NULL if a text sink is used Fixes bug #611702. 2010-03-15 14:10:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: Correctly escape brackets in DKS regex Fixes bug #612783. 2010-03-15 11:36:22 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: make timeout usec more accurate Adjust the returned usec from the elapsed time so it represents the remaining timeout. 2010-03-15 11:41:35 +0200 Stefan Kost <ensonic@users.sf.net> * tests/check/elements/videorate.c: tests: update videorate test for videotestsrc changes Add color-matrix to the caps we are comparing. Add logging og the caps in the test. 2010-03-15 01:35:15 -0700 David Schleef <ds@schleef.org> * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add chroma-zone-plate pattern pattern=chroma-zone-plate is pattern similar to zone-plate, but in the chroma channels instead of luma. 2010-03-15 01:34:09 -0700 David Schleef <ds@schleef.org> * ext/theora/gsttheoradec.c: theoradec: add chroma-site to caps 2010-03-15 01:33:36 -0700 David Schleef <ds@schleef.org> * gst/videotestsrc/videotestsrc.c: videotestsrc: add chroma-site to caps 2010-03-15 01:31:20 -0700 David Schleef <ds@schleef.org> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: add gst_video_parse_caps_chroma_site() 2010-03-14 19:10:16 -0700 David Schleef <ds@schleef.org> * ext/theora/gsttheoradec.c: theoradec: add color-matrix to caps 2010-03-14 16:17:46 -0700 David Schleef <ds@schleef.org> * gst/videotestsrc/videotestsrc.c: videotestsrc: Add color-matrix to template caps 2010-03-14 22:14:19 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/overlay/gtk-xoverlay.c: * tests/examples/seek/seek.c: * tests/icles/test-colorkey.c: * tests/icles/test-xoverlay.c: tests: make Gtk+ test programs compile with -DGSEAL_ENABLE Fixes #612552, at least for now. 2010-03-14 22:13:25 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * Makefile.am: build: add cruft alert for common/shave* leftovers to top-level Makefile.am 2010-03-14 13:11:53 -0700 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: oggdemux: Don't drop zero-sized packets Zero-sized packets have relevence to Theora. 2010-03-12 15:47:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/volume/gstvolume.c: volume: Revert rounding behaviour changes when using controlled volume properties Now the controlled and non-controlled code paths are all having exactly the same rounding behaviour and the unit tests pass again. 2010-03-12 15:44:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/volume/gstvolume.c: volume: Only allocate a mute value array if a control source exists for the mute property 2010-03-12 13:55:55 +0100 Edward Hervey <bilboed@bilboed.com> * common: Automatic update of common submodule From e272f71 to 55cd514 2010-03-10 10:50:32 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst-libs/gst/tag/gstxmptag.c: tags: Add new mapping to XMP helpers Adds geotagging mappings to XMP helpers Fixes #609539 2010-03-11 20:16:44 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/interfaces/Makefile.am: Don't have 2 include dirs Seems to have been accidentally introduced in 7269bc26d0a4bf44bd77a039fb54777625ef5f39. 2010-03-11 16:35:10 +0100 Edward Hervey <bilboed@bilboed.com> * tests/icles/audio-trickplay.c: tests: Fix another unitialized variable 2010-03-11 16:09:26 +0100 Edward Hervey <bilboed@bilboed.com> * tests/icles/audio-trickplay.c: tests: Fix unitialized variable. 2010-03-11 15:38:18 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: * ext/ogg/gstoggdemux.c: * ext/theora/gsttheoraparse.c: * ext/vorbis/gstvorbistag.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioquantize.h: * gst/audioconvert/gstchannelmix.h: * gst/playback/gstplaysink.c: Add -Wredundant-decls to warning flags ... and fix all the warnings that flag throws. 2010-03-11 13:32:14 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: * ext/ogg/Makefile.am: * ext/ogg/gstogg.c: * ext/ogg/gstogg.h: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstogmparse.c: * ext/ogg/vorbis_parse.c: * ext/ogg/vorbis_parse.h: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.h: * gst-libs/gst/audio/audio.c: * gst-libs/gst/riff/riff.c: * gst-libs/gst/rtsp/gstrtspbase64.c: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/tag/lang.c: * gst/ffmpegcolorspace/Makefile.am: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/playback/gstdecodebin2.c: * gst/playback/gstplayback.c: * gst/playback/gstplayback.h: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: * gst/videorate/gstvideorate.h: * tests/check/elements/appsink.c: * tests/check/elements/audiorate.c: * tests/check/elements/audioresample.c: * tests/check/libs/cddabasesrc.c: * tests/check/libs/mixer.c: * tests/check/libs/navigation.c: * tests/examples/gio/giosrc-mounting.c: Add -Wmissing-declarations -Wmissing-prototypes to warning flags Includes all the fixes necessary to make stuff compile again. 2010-03-11 12:49:02 +0100 Benjamin Otte <otte@redhat.com> * ext/gio/gstgiobasesink.c: gio: Remove unused function 2010-03-11 11:14:35 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/vorbis/gstvorbisparse.c: vorbisparse: make sure header buffer metadata is writable before modifying it Fixes unit test failures with core git. 2010-03-11 12:18:00 +0100 Benjamin Otte <otte@redhat.com> * tests/check/elements/multifdsink.c: check: Ref buffers after setting caps on them Reffing makes metadata unwritable, so we need to set the caps before. 2010-03-11 12:04:32 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: Add WARNING_CXXFLAGS where ERROR_CXXFLAGS are This matches the previous commit doing the same for CFLAGS in response to the common/ module changes. 2010-03-11 12:04:37 +0100 Edward Hervey <bilboed@bilboed.com> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-03-11 10:38:53 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/icles/test-xoverlay.c: tests: don't use Gtk+ 2.18 API for no good reason The rest of the code directly uses widget->allocation as well, so no point in using the new API in other places. 2010-03-11 11:20:48 +0100 Benjamin Otte <otte@redhat.com> * common: Automatic update of common submodule From df8a7c8 to e272f71 2010-03-11 10:55:21 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/interfaces/xoverlay.c: xvoverlay: correct version number in docs 2010-02-26 13:56:21 +0200 Stefan Kost <ensonic@users.sf.net> * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/audio-trickplay.c: tests: add a test for trickplay in audio synthesis graphs Right now this mostly demonstatest what not works. That is seeking with start-type = NONE to only update the rate and playing backwards. Also it shows that non-flushing seeks tend to lockup adder. Separate unit tests for the issues follow. 2010-02-08 17:20:35 +0200 Stefan Kost <ensonic@users.sf.net> * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gstxmptag.c: * gst-libs/gst/tag/tag.h: * tests/check/libs/tag.c: * win32/common/libgsttag.def: tags: add basic xmp metadata support XMP metadata can be embedded in many media container formats. Implement own parser and formatter that can be used to convert between an xpacket and a GstTagList. Add unit tests. 2010-02-19 14:38:36 +0200 Stefan Kost <ensonic@users.sf.net> * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/test-xoverlay.c: example: add an example for xoverlay::set_render_rectangle() This add a new example which animates a target recangle for the video. 2010-02-19 14:46:43 +0200 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimagesink: implement set_render_rectangle Previously we hardcoded the target rectangle passes to Xv(Shm)PutImage. Extend the implementation to use a full rectangle and don't assume 0,0 for top,left. 2010-02-17 15:00:13 +0200 Stefan Kost <ensonic@users.sf.net> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/xoverlay.c: * gst-libs/gst/interfaces/xoverlay.h: xoverlay: add new vmethod ::set_render_rectangle() Add set_render_rectangle() vmethod to the interface to better support windowless toolkits (e.g. qt graphicsview or video on canvas in general). Right now we always fill the widget to 100%. With the patch we can use a rectangular target region. Fixes #610249. API: GstXOverlay::set_render_rectangle() 2010-02-16 12:06:08 +0200 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: take new size from event thread and do not poll for every frame We can update the geometry in ConfigureNotify (unless we disable event- handling). If event handling is disabled, one should use _expose() to trigger a redraw and update the geometry. 2010-03-10 21:51:59 +0100 Benjamin Otte <otte@redhat.com> * common: Automatic update of common submodule From 9720a7d to df8a7c8 2010-03-10 21:01:20 +0100 Benjamin Otte <otte@redhat.com> * configure.ac: Update for recent changes to common submodule This just replaces every "$ERROR_CFLAGS" usage with a usage of "$WARNING_CFLAGS $ERROR_CFLAGS" to get the same functionality as previously. Actually using that separation will happen later. 2010-03-10 20:43:46 +0100 Benjamin Otte <otte@redhat.com> * common: Automatic update of common submodule From 0b6e072 to 9720a7d 2010-03-10 16:09:45 +0100 Benjamin Otte <otte@redhat.com> * common: Automatic update of common submodule From 7cc5eb4 to 0b6e072 2010-03-10 14:36:34 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/tag/gsttagdemux.c: tagdemux: do not cache FLUSH_START/_STOP events ... and similarly so for serialized events. 2010-03-10 14:34:57 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: provide correct error message if configured audio/video sink fails 2010-03-10 10:22:47 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/vorbis/gstvorbisdec.h: vorbisdec: remove unused field 2010-02-02 11:34:10 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * tests/check/pipelines/vorbisdec.c: tests: enable strict discontinuity checking on vorbisdec pipeline Closes #423086. 2010-03-10 01:09:31 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 7aa65b5 to 7cc5eb4 2010-03-10 01:07:09 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/video/video.c: docs: fix Returns: for gst_video_parse_caps_color_matrix() 2010-03-10 00:46:34 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for changed string 2010-03-10 00:42:15 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/elements/videorate.c: tests: fix typo in videorate unit test pipeline description Two consecutive ! ! leave a 'Link without source' error in the debug log. 2010-03-10 00:41:13 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/elements/videorate.c: tests: don't use deprecated functions in videorate unit test 2010-03-10 00:29:21 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * win32/common/libgstvideo.def: win32: add new API to libgstvideo.def 2010-03-09 15:39:55 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggmux.c: oggmux: Don't flush after every frame for theora 2010-03-09 21:26:58 +0000 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 44ecce7 to 7aa65b5 2010-03-09 13:05:23 -0800 David Schleef <ds@schleef.org> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add color-matrix handling to caps 2010-01-30 22:55:01 -0800 David Schleef <ds@schleef.org> * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Add color-matrix to caps 2010-02-26 16:25:59 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: * pkgconfig/Makefile.am: * tests/examples/overlay/Makefile.am: * tools/Makefile.am: build: Make some more rules silent if requested 2010-02-26 15:40:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: configure: Use automake 1.11 silent rules instead of shave if available This makes sure that we use something that is still maintained and also brings back libtool 1.5 support. 2010-02-23 19:12:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Don't fail if there are subtitles and audio but no video Change playbin2 to not error out if there are subtitles and audio but no video. If visualizations are enabled the subtitles are rendered on top of the visualization stream, otherwise the subtitles are not linked at all and only the audio is played (and a warning message is posted). If there are only subtitles but neither audio nor video an error message is still posted. Fixes bug #610866. 2010-02-17 19:18:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: volume: If a controller is used, use sample accurate property values Fixes bug #609801. 2010-03-09 19:17:04 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/video/video.c: gstvideo: Fix typos in comments 2010-03-09 17:32:25 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/_stdint.h: * win32/common/config.h: Back to development === release 0.10.28 === 2010-03-08 23:20:43 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.28 2010-03-08 23:19:57 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-03-08 21:57:03 +0100 Benjamin Otte <otte@redhat.com> * ext/theora/gsttheoraenc.c: theora: Fix SIGFPE when using 0/1 framerate libtheora crashes with a 0 framerate, so let's forbid it. https://bugzilla.redhat.com/show_bug.cgi?id=571289 2010-03-08 14:50:25 +0000 David Schleef <ds@schleef.org> * ext/ogg/dirac_parse.c: oggdemux: fix dirac header parsing Fixes #611900. 2010-03-08 14:46:17 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/overlay/Makefile.am: examples: make sure to dist qtgv-xoverlay.h header file This time for real. Fixes #610832. 2010-03-08 12:11:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpdepayload.c: basedepay: clarify some documentation 2010-03-08 11:25:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/alsa/gstalsasrc.c: alsasrc: return right number of bytes that we wrote 2010-03-08 11:20:51 +0100 Dake Gu <gudake@gmail.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: fix handling of x-server-ip-address Fix handling of x-server-ip-address. 2010-03-02 11:25:31 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/design/draft-keyframe-force.txt: docs: update keyframe force event Add field to send all headers. === release 0.10.27 === 2010-03-06 00:09:29 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.27 2010-03-06 00:08:23 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-03-05 15:58:44 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: first check for QtGui >= 4.6, only then for >= 4.0 If we first check for >= 4.0 the second check for >= 4.6 will just short-cut since we are using the same prefix for the variables for both checks, and they've already been set previously. So the examples requiring >= 4.6 were built even in the >= 4.0 case. 2010-03-03 20:18:16 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.26.4 pre-release 2010-03-03 20:17:31 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/ja.po: po: update translations 2010-03-03 20:15:44 +0000 Josep Torra Valles <n770galaxy@gmail.com> * gst/playback/gstplaysink.c: playsink: avoid g_object_set() on NULL pointers There may not be an overlay element if a text-sink is set. Fixes #611702. 2010-03-01 12:17:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: oggstream: mark skeleton streams correctly Mark skeleton streams because we need to ignore them for calculating the duration of the stream. Fixes #611227 2010-02-24 01:10:09 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * po/nl.po: * win32/common/_stdint.h: * win32/common/config.h: 0.10.26.3 pre-release 2010-02-23 16:57:53 +0100 Götz Waschk <waschk@mandriva.org> * tests/examples/overlay/Makefile.am: examples: Dist header file for the Qt graphics view example Fixes bug #610832. 2010-02-23 11:41:20 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: use the chain begin_time instead of our counter We update the passed begintime argument to narrow our search region in the binary search. This means that it does not always contain the chain begin time after a couple of bisects. Use the real chain->begin_time to bring the granuletime to the time in the chain instead. Fixes #610005 2010-02-19 18:24:40 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * tests/check/elements/videorate.c: videorate: tests: New unit tests for upstream caps nego Adds unit tests that check videorate's upstream caps negotiation works properly (put passthrough caps first) Fixes #608025 2010-01-27 15:07:47 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/videorate/gstvideorate.c: videorate: Improve upstream negotiation Put peer pad caps preferred framerates first, indicating they are videorate's first choices, removing an unnecessary conversion. Fixes #608025 2010-02-21 19:52:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: playbin2, playsink, subtitleoverlay: Set subtitle encoding properly For this add subtitle encoding properties to playsink and subtitleoverlay and update the values in the containing elements. Also update the font description in textoverlay or the used renderer element if it is changed during playback. Fixes bug #610310. 2010-02-22 13:01:19 +0200 Stefan Kost <ensonic@users.sf.net> * tests/examples/overlay/gtk-xoverlay.c: * tests/examples/overlay/qt-xoverlay.cpp: * tests/examples/overlay/qtgv-xoverlay.cpp: examples: also add sink detection and set title to qt examples Also set a title in the qt examples like it is now done in the gtk example. Fix the newly added find_video_sink in the gtk example and add similar function to the qt examples. 2010-02-19 14:40:43 +0200 Stefan Kost <ensonic@users.sf.net> * tests/examples/overlay/.gitignore: gitignore: ignore files in new example directroy 2010-02-17 14:59:33 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/video/Makefile.am: make: fix copy and paste error in git rules (audio<->video) 2010-02-19 17:44:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Ghost the video sinkpad if a text sinkpad is available Only don't ghost it if no visualizations are need and if no text is needed and no textchain was created yet. Fixes bug #610379. 2010-02-19 00:22:13 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.26.2 pre-release 2010-02-19 00:20:02 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translation files 2010-02-19 00:17:51 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/overlay/.gitignore: Ignore new overlay examples 2010-02-18 23:47:35 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/overlay/gtk-xoverlay.c: examples: don't hard-code xvimagesink for Gtk+ GstXOverlay example Try to find a working videosink, don't hardcode xvimagesink. Also add some borders to window and give it a title so that it's clear that this is really a Gtk+ window and not a window created by the videosink. 2010-02-18 11:42:55 -0800 David Schleef <ds@schleef.org> * gst/tcp/gsttcp.c: tcp(client/server)src: Fix handling of closed sockets The peer closing the socket should cause an EOS, instead of silently doing nothing. This changes the behavior to be more like fdsrc. Fixes: #610386 2010-02-18 12:42:53 +0000 Patrick Radizi <patrick.radizi@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: make sure not to dereference NULL username or password Fixes #610268. 2010-02-17 21:22:54 -0800 David Schleef <ds@schleef.org> * ext/theora/gsttheoradec.c: theoradec: Fix chroma copying for 4:2:2 Fix mixup of height/width, causing only half the chroma lines to be copied when outputting buffers. Fixes: #610329. 2010-02-16 15:43:26 +0200 Stefan Kost <ensonic@users.sf.net> * configure.ac: * gst-libs/gst/interfaces/xoverlay.c: * tests/examples/Makefile.am: * tests/examples/overlay/Makefile.am: * tests/examples/overlay/gtk-xoverlay.c: * tests/examples/overlay/qt-xoverlay.cpp: * tests/examples/overlay/qtgv-xoverlay.cpp: * tests/examples/overlay/qtgv-xoverlay.h: examples: add video overlay examples for gtk, qt and qt graphics view Add simple videotestsrc ! xvimagesink examples using gtk and qt. This patch also adds all boilerplate to configure for using c++. The qt based examples are optional like their gtk counterparts. 2010-02-16 17:20:01 +0200 Stefan Kost <ensonic@users.sf.net> * docs/libs/compiling.sgml: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: docs: cleanup library docs Correct name of included files. Remove files that are not used anymore. Add many new api entries to their sections. 2010-02-15 11:11:04 +0200 Stefan Kost <ensonic@users.sf.net> * tests/icles/test-colorkey.c: test-colorkey: remove the XInitThreads() We don't do this is any other example, this should be done for us in gdk it if would be needed. 2010-02-16 10:09:54 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: use same message string for missing elements as in playbin Use the same translated message string for missing core elements as playbin uses, which is a bit nicer and also indicates that there is something wrong with the user's GStreamer installation (which arguably is the case if elements like typefind or queue2 are missing). 2010-02-08 13:54:57 +0200 Kaj-Michael Lang <milang@tal.org> * gst/typefind/gsttypefindfunctions.c: typefind: Handle stm module format Fixes #609314. 2010-02-15 12:10:10 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/vorbis/gstivorbisdec.c: ivorbisdec: set rank to SECONDARY 2010-02-15 12:09:53 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * configure.ac: * ext/Makefile.am: * ext/vorbis/Makefile.am: * ext/vorbis/gstivorbisdec.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: * ext/vorbis/gstvorbisdeclib.c: * ext/vorbis/gstvorbisdeclib.h: vorbisdec: also support ivorbis tremor decoder ... which only needs a bit of refactoring and extracting to support the minor difference in (i)vorbis interface. Fixes #609063. 2010-02-03 14:37:43 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: vorbisdec: reduce some hard-coding ... such as assuming float all over, and base src caps on template caps. 2010-02-15 10:23:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/playbin.c: playbin: Fix the primary-decoder-missing test with USE_DECODEBIN2 2010-02-15 09:04:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggparse.c: oggparse: Fix another format string compiler warning 2010-02-15 08:56:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Fix format string compiler warnings 2010-02-15 08:48:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Post a missing element message and an error message if no uridecodebin can be found 2010-02-15 08:46:26 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Post missing element messages if a core plugin is missing And post a warning in cases where we can still continue to work or an error when the missing element is fatal. 2010-02-15 08:28:24 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/playbin2.c: playbin2: Enable all unit tests They're all working and valgrind clean now. 2010-02-15 08:26:05 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: First post a missing-plugin message, then emit the unkown-type signal This makes sure that there *always* is a missing plugin message in the bus before any errors or warning messages. 2010-02-15 08:20:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Missing decoder errors should be STREAM CODEC_NOT_FOUND and not CORE MISSING_PLUGIN. 2010-02-15 08:18:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Free the subtitle URI 2010-02-15 08:06:44 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Post missing plugin messages if a required element can't be created Especially if no suitable URI source can be found. 2010-02-15 06:50:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/.gitignore: tests: Add decodebin2 test to .gitignore 2010-02-15 01:18:55 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Set ghostpad targets to NULL when freeing a decode chain Otherwise the ghostpad will still be linked to the peer and there will still be a reference kept, leading to nothing being unlinked and destroyed until decodebin2 is finalized. This fixes reuse of decodebin2 if a raw stream is connected to its sinkpad. 2010-02-15 01:17:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/Makefile.am: * tests/check/elements/decodebin2.c: decodebin2: Add simple unit test, mainly a copy of the decodebin unit test The only difference between the two unit tests right now is, that the decodebin2 test resets the element to READY before trying to reuse it instead of NULL. decodebin2 guarantees to be reusable without going back to NULL. 2010-02-15 00:11:17 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggstream.c: ogg: theora PAR of 0:N, N:0 or 0:0 is allowed and maps to 1:1 See #609252. 2010-02-14 23:16:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 96dc793 to 44ecce7 2010-02-14 23:10:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/Makefile.am: playbin2: Enable playbin2 unit test It now contains a single working unit test and can be enabled. The other more useful unit tests still need fixing. 2010-02-14 22:16:31 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/playbin.c: playbin: Fix indention in the unit test 2010-02-13 01:08:05 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/volume/gstvolume.c: volume: Replace this variables by self 2010-02-12 19:43:13 +0100 Josep Torra Valles <n770galaxy@gmail.com> * gst/playback/gstplaysink.c: playsink: Reset the sink's state to NULL before unreffing it unless it's the same instance again This makes sure that we don't destroy the last reference before the element gets back to NULL state. Fixes assertion failures if a playbin2 instance is reused but different sinks are automatically chosen because of different caps. 2010-02-12 18:00:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: fix Since tag 2010-02-12 14:19:33 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/riff/riff-read.c: riff: treat JUNQ chunks like JUNK chunks 2010-02-12 14:29:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: Update basesrc segment duration and post duration messages from the streaming thread 2010-02-11 14:10:02 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/tag/tags.c: tags: improve docs about determining the encoding 2010-02-11 14:09:05 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/tag/gstvorbistag.c: comment: fix wrong header comment 2010-02-01 13:50:14 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/riff/riff-ids.h: riff: add a variant of the JUNK tag that several adobe products produce JUNQ has same semantics as JUNK. 2010-02-01 19:01:33 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: add min-percent property Emit need-data when the amount of data in the internal queue drops below min-percent. Fixes #608309 2010-02-01 18:56:34 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: cleanups Avoid some typechecks. Avoid dereferencing appsrc->priv all the time. 2010-02-01 18:55:39 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsink.c: appsink: cleanups Avoid some typecasting. Avoid dereferencing appsink->priv all the time. 2010-02-01 15:09:56 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: avoid some typecasts 2010-01-29 16:34:44 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: ignore \n and \r as the first line Be more forgiving for bad servers and ignore \r and \n when we are looking for the response/request line. See #608417 2010-02-10 16:05:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fail gracefully on bad Content-Length headers Be careful when allocating the amount of bytes specified in the Content-Length because it can be an insanely huge value. Try to allocate the memory but fail gracefully with a nice error when the allocation failed. 2010-02-10 10:12:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Add conversions from all ARGB formats to AYUV and back 2010-02-09 17:39:21 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: Update segment duration and post a duration message if the duration changes Fixes bug #609423. 2010-02-11 10:56:17 +0100 Benjamin Otte <otte@redhat.com> * tests/examples/seek/Makefile.am: build: link to libm in examples that use it This fixes build failure in Fedora 13. 2010-02-11 01:11:30 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * MAINTAINERS: Update MAINTAINERS, add myself 2010-02-11 23:57:38 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: back to development Slushy freeze remains in effect. === release 0.10.26 === 2010-02-10 20:17:36 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.26 2010-02-10 20:16:37 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-02-08 11:21:35 +0100 Benjamin M. Schwartz <bens@alum.mit.edu> * ext/theora/gsttheoradec.c: theoradec: PARs of 0:x, x:0 and 0:0 are all allowed and map to 1:1 Fixes #609252. 2010-01-24 12:31:04 +0000 Vincent Penquerc'h <ogg.k.ogg.k@googlemail.com> * ext/ogg/gstoggstream.c: oggdemux: use the default granpos functions for kate streams Set timestamps on kate packets. See bug #600929. 2010-02-05 01:18:43 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.25.3 pre-release 2010-02-04 18:52:59 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/bg.po: po: update translations 2010-02-04 18:32:48 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaybin2.c: Revert "playbin2: Only allow to set the URIs in states <= READY or from an about-to-finish signal handler" This reverts commit 7335ce5d3e03c126a417a721571cb6f3af136ecf. Support abusing the uri property to configure the next uri to play outside of the about-to-finish handler for the time being after all. We also shouldn't use thread private structures for this, since it should be possible to block the thread that emitted about-to-finish while the main thread sets the uri property. See #607226. 2010-02-02 10:18:05 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Don't leak allocated buffers This can happen if the combined flow return is not OK although the allocation succeeded or if the packet in question is a BOS and we're not going to push headers. Fixes bug #608699. 2010-02-01 11:44:34 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: clean up decodebin properties When reusing a decodebin2 element, clear the properties we might have changed, to their default values or else we might end up with old configuration. Fixes #608484 2010-01-29 13:56:05 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: when no uri is set, post an error message When no uri is set, don't just return STATE_CHANGE_FAILURE from the state change function, but actually post an error message. 2010-01-30 15:18:13 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 15d47a6 to 96dc793 2010-01-28 17:12:34 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/gstadder.c: adder: don't hold object lock when calling peer elements Do not hold the object lock while we call methods on peer elements as this can lead to deadlocks. Fixes #608179 2010-01-27 01:12:49 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: 0.10.25.2 pre-release 2010-01-27 01:07:55 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * win32/common/_stdint.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/interfaces-enumtypes.c: * win32/common/interfaces-enumtypes.h: * win32/common/pbutils-enumtypes.c: * win32/common/video-enumtypes.c: win32: update generated files for non-autotools win32 builds 2010-01-27 00:56:00 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translation files 2010-01-27 00:41:24 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstaudiosrc.c: audiosrc: add gratuitious FIXME for use of generic G_TYPE_POINTER type 2010-01-26 16:47:40 +0100 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: Don't skip an element when getting the topology Fixes #608167 2010-01-24 14:41:44 +0000 Vincent Penquerc'h <ogg.k.ogg.k@googlemail.com> * ext/ogg/gstoggdemux.c: oggdemux: sparse streams aren't timed by end time, and their duration isn't implicit Fixes timestamps and durations on Kate subtitle streams. See http://www.xiph.org/ogg/doc/ogg-multiplex.html section 'start-time and end-time positioning' for some more details, and bug #600929. 2010-01-23 20:15:08 +0000 Vincent Penquerc'h <ogg.k.ogg.k@googlemail.com> * ext/ogg/gstoggstream.c: oggdemux: properly set up the media type for kate streams See #600929. 2010-01-25 18:57:52 +0100 Julien Moutte <julien@fluendo.com> * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: relax caps template on sink pads Allow any caps on sink pad templates as we could do passthrough with non raw video caps. 2010-01-25 15:14:56 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.h: oggdemux: use right type for the serialno Use a consistent type for the serialno to avoid problems when comparing between signed and unsigned variants. Fixes #607926 2010-01-25 14:00:52 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: don't push headers twice Don't push the stream headers twice but only in the activation of a chain. Fixes #607929 2010-01-25 13:18:18 +0100 Wim Taymans <wim.taymans@collabora.co.uk> Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base 2010-01-25 12:31:24 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: rename a variable Rename the 'seekable' variable to 'pullmode'. We might be able to seek in push mode too eventually. 2010-01-25 12:22:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: Revert "inputselector: Protect g_object_notify() with the object's mutex" This reverts commit a37426c41c80fd21e5017fea01a786c05bcd9661, it's causing deadlocks with playbin2. 2010-01-24 20:55:26 +0100 Kipp Cannon <kcannon@ligo.caltech.edu> * gst/playback/gstinputselector.c: inputselector: Protect g_object_notify() with the object's mutex This works around the thread unsafety of g_object_notify() Fixes bug #607513. 2010-01-24 20:46:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add typefinder for ISO MP4 files Fixes bug #607848. 2010-01-24 13:29:07 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: fix crash when freeing headers Use _ogg_packet_free() instead of gst_mini_object_unref in one more place now that the header list contains ogg packets and not buffers. file: Stephen_Fry-Happy_Birthday_GNU-nq_600px_425kbit.ogv 2010-01-24 08:57:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Strip trailing \0 for subtitle OGM streams Fixes bug #607870. 2010-01-23 22:09:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Correctly set DELTA_UNIT flag for OGM streams 2010-01-23 22:05:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Don't strip all 0-bytes from the end of OGM packets This fixes broken packets pushed downstream by oggdemux for MPEG4 streams for example. 2010-01-23 22:03:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Extract tags from OGM text streams and don't push them downstream 2010-01-23 14:46:19 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Store header/queued packets as ogg_packet and use normal peer chaining functions to pass them downstream 2010-01-23 15:25:42 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: optimise AC-3 typefinder a bit Make AC-3 typefinder use the DataScanCtx stuff so we don't have to do gst_type_find_peek() in the inner loop all the time. Also return when we've suggested AC3 caps, instead of continuing with the loop. 2010-01-23 14:31:15 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: Revert "typefind: Reduce number of calls to gst_type_find_peek." This reverts commit c661bfaa991c58f1fbd9fbc0dae90b8b2c27f92b. This breaks AC-3 typefinding for all cases where the first frame is at an offset > 0. 2010-01-23 15:35:05 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for Zip Block Motion Video 2010-01-23 15:34:54 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add mapping for Zip Block Motion Video 2010-01-23 15:26:37 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: YUNV is a fourcc which is also used for YUY2 raw video 2010-01-23 15:13:45 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: vp61 and VP61 are also valid On2 VP6 fourcc 2010-01-23 15:10:45 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add mapping for On2 VP5 2010-01-23 15:04:35 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add mapping for Sigma-Designs MPEG4 It's actually a xvid-compatible stream. both xviddec and ffmpeg handle it. 2010-01-23 14:35:28 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for LOCO Lossless codec 2010-01-23 14:35:16 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add mapping for LOCO Lossless codec 2010-01-23 14:08:39 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add support for YV12 / Uncompressed packed YVU 4:2:2 2010-01-23 13:50:26 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for Autodesk Animator codec 2010-01-23 13:50:09 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add mapping for Autodesk Animator Codec 2010-01-23 13:20:46 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: ...and set caps on queued packet buffers too 2010-01-23 13:19:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Set caps on header buffers 2010-01-22 16:23:43 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: handle raw sources about-to-finish signals When we are dealing with a source that produces raw audio/video, we don't use a decodebin2 to decode the data and we thus don't have the drained/about-to-finish signal emited. To fix this, we add a padprobe on the source pads and emit the drained signal ourselves. This then makes playbin2 emit the about-to-finish signal for raw sources such as cdda:// Fixes #607116 2010-01-22 16:15:54 +0200 Stefan Kost <ensonic@users.sf.net> * gst/typefind/gsttypefindfunctions.c: typefind: include stdio.h for sscanf 2010-01-22 01:49:38 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: add PNM typefinder Add PNM typefinder, so we can remove the one that's in the PNM plugin in -bad (which btw uses different/wrong media types that don't match the ones used by gdkpixbufdec) and people don't make fun of us for loading image decoders when typefinding and playing back audio files. 2010-01-21 19:31:23 +0100 Thijs Vermeir <thijsvermeir@gmail.com> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: rename performance category rename the performance category to ffmpegcolorspace_performance as there is already a global GST_CAT_PERFORMANCE in core 2010-01-21 17:32:33 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: keep track of added pads Keep track of the pads we added and removed. Remove some unused fields. Don't add pads for which we don't have caps. 2010-01-21 17:31:13 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: oggstream: don't call NULL setup functions If we find a known mapper but it doesn't have a setup function, simply skip it instead of crashing. 2010-01-21 17:30:15 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: oggstream: avoid division by 0 on bad annodex streams 2010-01-21 13:47:01 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for y4m container 2010-01-19 14:31:34 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppayload: ptime/maxptime should be unsigned https://bugzilla.gnome.org/show_bug.cgi?id=607403 2010-01-18 21:16:32 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: basertppayload: ptime should be in nanoseconds https://bugzilla.gnome.org/show_bug.cgi?id=607403 2010-01-20 00:53:20 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 14cec89 to 15d47a6 2010-01-19 13:33:06 -0800 David Schleef <ds@schleef.org> * gst/typefind/gsttypefindfunctions.c: typefind: rewrite h.264 detection Make detection simpler: check for NALs, check that they make sense, and report how certain we are that it's a raw H.264 stream. Fixes: #583376. 2010-01-18 14:33:30 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppayload: Reject empty caps https://bugzilla.gnome.org/show_bug.cgi?id=607353 2010-01-19 08:39:14 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: No need to subtract begin time Last stop is already based on the chain start and there is no need to subtract the chain start as it may lead to a negative overflow. This was causing seeking issues when the target chain was not the first one (that has chain start = 0) Fixes #606382 2010-01-19 09:25:35 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/audio.h: audio: Use rounding scaling functions for GST_CLOCK_TIME_TO_FRAMES and _FRAMES_TO_CLOCK_TIME Fixes bug #607381. 2010-01-18 15:22:52 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: granulepos is relative to its chain When performing seeks, the granulepos should be offset by its chain start time to avoid using wrong values to update segment's last_stop. A sample file is indicated on bug #606382 2010-01-18 17:57:16 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for MXF container format 2010-01-18 10:07:30 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: re-use iterator callback to avoid code duplication 2010-01-18 02:08:39 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: when looking for sink properties, make sure they have the right type We don't want to end up setting values on elements where the property is of a different type than we expect. Can't transform the value either, since we can't really make assumptions about the scale and transform function. Fixes crashes when using playbin2 with apexsink (#606949). 2010-01-18 09:30:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Only allow to set the URIs in states <= READY or from an about-to-finish signal handler Changing the URIs in a state > READY results in unexpected behaviour, i.e. the new URIs are only used after the current track has finished. Fixes bug #607226. 2010-01-15 19:52:29 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: sprinkle some more locking ... to avoid races and ensure some data structure consistency. See also #574289. 2010-01-14 18:26:03 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: mind blocked pads when shutting down Fix regression in shutdown deadlock handling now that the target of a ghostpad is blocked instead of ghostpad itself. See also #574293. 2010-01-14 13:36:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Fix disabling of subtitles if subtitles were used before In this case the video still goes through the text chain and subtitles are still going in there, in case subtitles are enabled again. This makes sure that re-enabling subtitles happens instantly. Fixes hanging video when disabling subtitles, caused by an unliked video pad. 2010-01-14 10:43:59 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: fix pad ref leak 2010-01-12 21:42:59 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * docs/plugins/Makefile.am: docs: fix out-of-source build 2009-04-29 11:50:03 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * tests/icles/stress-playbin.c: stress-playbin: fix error return check 2010-01-14 10:10:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/theora/Makefile.am: * ext/theora/gsttheora.c: * ext/theora/gsttheoradec.c: * ext/theora/gsttheoraenc.c: * ext/theora/gsttheoraparse.c: theora: Rename source files to have the same name as the headers 2010-01-14 10:07:22 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/vorbis/Makefile.am: * ext/vorbis/gstvorbis.c: * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisenc.c: * ext/vorbis/gstvorbisparse.c: * ext/vorbis/gstvorbistag.c: vorbis: Rename source files to have the same name as the headers 2010-01-14 10:05:35 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/vorbis/Makefile.am: * ext/vorbis/gstvorbiscommon.c: * ext/vorbis/gstvorbiscommon.h: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: vorbis: Move channel layout definitions into a single separate file ...instead of having two copies. 2010-01-14 08:19:55 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: vorbis: Add official 6.1 and 7.1 channel mappings These are in the Vorbis spec since 2010-01-13. Fixes bug #606926. 2010-01-13 23:05:45 +0100 Benjamin Otte <otte@redhat.com> * gst-libs/gst/rtsp/gstrtspdefs.c: rtsp: Don't define h_error ourselves It's included from netdb.h and that header might define it differently, which can lead to build failures. 2010-01-13 17:36:05 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefind: mp4 video is not parsed 2010-01-13 12:49:20 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefind: Add aac stream-format to caps Also add the aac stream-format field on the caps when detecting it. 2010-01-13 09:39:54 +0100 Brijesh Singh <brijesh.ksingh@gmail.com> * gst/playback/gstplaysink.c: playsink: Fix handling of the native audio/video flags Fixes bug #606687. 2010-01-12 16:35:50 +0100 Edward Hervey <bilboed@bilboed.com> * ext/ogg/gstoggdemux.c: oggdemux: Fix unitialized variable. If the package isn't handled, gracefully return GST_FLOW_OK. 2010-01-10 23:50:02 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/xoverlay.c: docs: flesh out GtkXOverlay docs some more and add example for Gtk+ >= 2.18 Explain why the whole bus sync handler mess is needed. Add section about how to use GstXOverlay in connection with Gtk+ and mention the Gtk+ API break issue and how to work around it (see #601809). 2010-01-10 21:18:04 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/netbuffer/gstnetbuffer.c: docs: minor netbuffer documentation fix 2010-01-10 20:41:53 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translated strings Queue2 moved into core, so remove its strings. 2010-01-08 16:57:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.h: oggdemux: push headers when activating chains Keep a list of headers for each stream of a chain. When a chain is activated, push the headers before pushing the data so that decoders can sync. Fix seeking in chains, take the chain start time into account when comparing timestamps. See #606382 2010-01-07 15:26:57 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/lang-tables.dat: * gst-libs/gst/tag/lang.c: tag: fix up disting of lang-tables.c more correctly lang-tables.c is included by lang.c and not really a proper source file that should be compiled into its own object, so rename it to lang-tables.dat and put it into EXTRA_DIST instead to ensure it gets disted. 2010-01-07 13:50:03 +0000 Christian Schaller <christian.schaller@collabora.co.uk> * gst-libs/gst/tag/Makefile.am: * gst-plugins-base.spec.in: Add missing source file for tagger to Makefile and update spec file 2010-01-06 18:30:57 -0800 Mark Yen <mook@songbirdnest.com> * gst-libs/gst/riff/riff-media.c: riff-media: handle 32 bit raw RGB video. 2010-01-06 13:57:51 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: decide flac header packet by content rather than count 2010-01-06 13:56:26 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: reset header packet count at bos page 2010-01-06 13:39:14 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiopayload: add support for buffer-lists 2010-01-06 11:33:03 +0100 Wim Taymans <wim.taymans@collabora.co.uk> Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base 2010-01-05 17:17:58 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Ignore zero framerate https://bugzilla.gnome.org/show_bug.cgi?id=606163 2009-12-29 18:45:32 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: basertpaudiopayload: Respect ptime if it is given If the ptime is given in the caps, respect it and force the minimum and maximum sizes to be exactly the requested ptime. https://bugzilla.gnome.org/show_bug.cgi?id=606050 2009-12-29 18:36:29 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: rtpbasepayload: Store ptime from caps https://bugzilla.gnome.org/show_bug.cgi?id=606050 2009-12-02 19:40:58 +0530 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppayload: Accept maxptime from caps https://bugzilla.gnome.org/show_bug.cgi?id=606050 2010-01-05 14:11:06 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ext/ogg/gstoggstream.c: oggdemux: enhance flac packet duration calculation 2010-01-05 10:38:41 +0100 Wim Taymans <wim.taymans@collabora.co.uk> Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base 2010-01-04 09:49:25 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/seek/seek.c: * tests/icles/test-colorkey.c: examples: use Gtk+-2.18 API conditionally so the seek example and colorkey test work with older Gtk+ versions as well. Fixes #605960. 2009-12-29 00:53:53 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/icles/test-colorkey.c: tests: fix colorkey test up for Gtk+ >= 2.18 Make test-colorkey work with newer versions of Gtk+. See #601809. 2009-12-29 00:40:27 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/seek/seek.c: examples: make seek example work with Gtk+ >= 2.18 Gtk+ broke API slightly with the introduction of client-side windows in Gtk+ 2.18. Fix up seek example to work with newer Gtk+ versions. Fixes #601809. 2009-12-26 23:29:24 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/icles/stress-xoverlay.c: tests: fix warning and memory leak in stress-overlay test Not all messages have structures and we need to unref messages when returning GST_BUS_DROP in the sync bus handler. 2009-12-26 18:46:50 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: correctly eat empty and dummy buffers 2009-12-24 19:56:55 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/gstadder.c: adder: be a lot smarter with buffer management Detect EOS faster. Try to reuse one of the input buffer as the output buffer. This usually works and avoids an allocation and a memcpy. Be smarter with GAP buffers so that they don't get mixed or cleared at all. Also try to use a GAP buffer as the output buffer when all input buffers are GAP buffers. 2009-12-24 16:30:23 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/Makefile.am: * gst/adder/gstadder.c: * tests/check/elements/adder.c: adder: use collectpads clipping function Install a clipping function in the collectpads and use the audio clipping helper function to perform clipping to the segment boundaries. Fixes #590265 2009-12-24 13:58:52 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/gstadder.c: adder: fix juvenile comment 2009-12-23 21:24:48 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: fix typo in debug message 2009-12-23 18:18:03 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: avoid some type checks 2009-12-23 17:08:27 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: avoid leaking selector request pads 2009-12-23 15:46:25 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: avoid leaking queue and typefind Don't leak the queue and typefind elements that we might link after the source element. 2009-12-23 15:43:52 +0100 Jonathan Matthew <jonathan@d14n.org> * gst/playback/gsturidecodebin.c: uridecodebin: don't name the queue There is no reason to name the queue. Fixes #605219 2009-12-23 15:30:50 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstrtp.def: defs: update defs with new symbols 2009-12-22 20:15:28 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: rtcpbuffer: add helper functions for SDES types Add functions to convert SDES names to their types and back. Will be used later to set SDES items using a GstStructure. See #595265 2009-12-21 19:12:02 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * common: Automatic update of common submodule From 47cb23a to 14cec89 2009-12-21 18:45:58 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: add Since marker for the new tolerance property 2009-12-21 07:57:42 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/lang.c: docs: use 'Returns: xyz' rather than 'Returns xyz' to make gtk-doc happy 2009-12-21 07:50:26 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: tests: don't use deprecated GLib API g_mapped_file_free Fixes #605100. 2009-12-20 17:34:46 -0800 David Schleef <ds@schleef.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theoraenc: Add encoder controls for libtheora 1.1 Added drop-frames, cap-overflow, cap-underflow, and rate-buffer. 2009-12-19 21:40:44 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: increase default drift tolerance to fix glitches with WMA Increase default drift tolerance to 40ms to avoid glitches with decoders or formats where there's a lot of timestamp jitter for some reason or another (in this case: asf/wma), at least until we implement timestamp smoothing. 2009-12-16 11:43:27 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: add some debugging 2009-12-15 18:41:38 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: audiorate: add a tolerance property It may not be uncommon for the input timestamps to experience some jitter around the 'perfect time'. As such, instead of regularly adding and dropping samples, optionally allow for some tolerance in a more relaxed approach. API: GstAudioRate:tolerance 2009-12-15 19:50:56 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * gst/audiorate/gstaudiorate.c: audiorate: add documentation 2009-12-15 16:52:44 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/Makefile.am: * gst/audiorate/gstaudiorate.c: * gst/audiorate/gstaudiorate.h: audiorate: use separate header file 2009-12-14 21:17:57 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: set DISCONT when resyncing (e.g. newsegment) 2009-12-14 18:47:27 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: also fill up segments if possible 2009-12-15 19:29:29 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: fix segment handling Do not compare a media (buffer) time to a (bogus) running time (or their offset equivalents). 2009-12-15 19:22:45 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/audiorate/gstaudiorate.c: audiorate: properly report truncated samples as dropped samples 2009-12-13 18:43:56 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/lang.c: docs: mention that gst_tag_get_language_name() may return NULL 2009-12-13 18:42:11 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/libs/tag.c: checks: some more testing for the new language code functions 2009-12-12 18:58:39 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixeroptions.c: * gst-libs/gst/interfaces/mixertrack.c: docs: misc. mixer docs improvements 2009-12-12 18:16:39 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: docs: add short descriptions for API reference contents page 2009-12-12 17:43:26 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/lang-tables.c: * gst-libs/gst/tag/mklangtables.c: tag: make internal language names table static 2009-12-12 17:41:44 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/mklangtables.c: tag: don't use GLib 2.22 API g_mapped_file_unref() was introduced in GLib 2.22, but we depend only on GLib 2.18, so use g_mapped_file_free() when compiling against older GLib versions until we bump the GLib dependency. 2009-12-11 23:59:54 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * .gitignore: * configure.ac: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/lang-tables.c: * gst-libs/gst/tag/lang.c: * gst-libs/gst/tag/mklangtables.c: * gst-libs/gst/tag/tag.h: * tests/check/libs/tag.c: * win32/common/libgsttag.def: tag: add some utility functions for language codes and tags Add some utility functions for language tags and ISO-639 codes. These are useful for both GUIs and elements. The iso-codes package is used for language name translations if available. API: gst_tag_get_language_codes() API: gst_tag_get_language_name() API: gst_tag_get_language_code() API: gst_tag_get_language_code_iso_639_1() API: gst_tag_get_language_code_iso_639_2B() API: gst_tag_get_language_code_iso_639_2T() 2009-12-11 12:02:15 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggstream.c: ogg: ogm video has constant packet duration 2009-12-10 22:47:53 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggstream.c: oggdemux: implement old fLaC mapping 2009-12-10 17:53:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/tcp/gsttcpclientsrc.c: tcpclientsrc: unset flushing state too When unlocking, we set the flushing state on the fdset. Implement unlock_stop so that we can use it to unset the flushing state again. Fixes #577326 2009-12-10 16:09:09 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: remove redundant fields 2009-12-09 19:03:16 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/vorbis/gstvorbisdec.h: * ext/vorbis/vorbisdec.c: vorbisdec: adapt to new oggdemux Remove all granulepos hacks and simply use the timestamps from the new oggdemux like any other decoder. 2009-12-09 19:04:18 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/vorbis/vorbisdec.c: vorbisdec: fix peer query 2009-12-09 17:24:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/theoradec.c: theoradec: fix query 2009-12-09 16:55:52 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/theoradec.c: theoradec: small cleanups 2009-12-09 16:38:43 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/vorbis/vorbisdec.c: vorbisdec: use gst_pad_peer_query() 2009-12-09 12:10:35 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: fix video when subtitles disabled When we have a source with subtitles but they were disabled with the flags, still ghostpad the video pad instead of leaving it unlinked. 2009-12-09 09:47:30 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Only flush downstream on seeks for flushing seeks 2009-12-09 09:35:14 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Proxy buffer allocation on the video sinkpad to the srcpad 2009-12-08 17:30:39 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: update slider only 25 times a second don't update the slider a 100 times a second, it's likely higher than the screen framerate and just wastes cpu. 2009-12-08 17:23:53 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: theora: remove granulepos hacks Remove the granulepos hacking now that oggdemux outputs timestamps like any other demuxer. 2009-12-08 13:40:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Fix stream-changed message list iteration When iterating the list and removing the current element, first get the next element and then remove the current one and not the other way around. 2009-12-07 18:49:43 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: improve keyframe seeking Improve keyframe seeking. Fix reverse playback. 2009-12-07 15:42:05 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: implement keyframe seeking Implement keyframe seeking in oggdemux by doing the double seek trick. First seek to the required position, then read pages for all streams to grab the granulepos (to know the timing of the keyframe) of each stream, then seek back to the first keyframe. 2009-12-07 09:13:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Some minor cleanup 2009-12-06 18:05:15 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Reset stream segments on FLUSH_STOP and don't adjust QoS events for non-time segments 2009-12-04 16:35:09 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: fix timestamps after seek After a seek, discard all packets before the packet with the granulepos on it so that the output buffers contain valid timestamps. Reorder some code so that we check the timestamps before allocating and pushing an output buffer. Do more checks on valid packets in ogm mode. 2009-12-04 15:39:59 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: add comment 2009-12-04 14:01:11 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: don't do math with invalid granulepos When the current granulepos is unknown and set to -1, don't try to add durations to it. 2009-12-04 13:14:57 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: guard against wrong granulepos Clamp the initial granulepos to 0 instead of going negative for some badly muxed ogg files. 2009-12-04 12:26:47 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/theoradec.c: theoradec: don't fail on bogus granulepos Do some additional checks on the granulpos timestamp before using it for calculating the duration because oggdemux generates wrong granulepos now. Fixes seeking somewhat again. 2009-12-03 20:05:29 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: reimplement OGM support OGM demuxing no longer requires helper elements. It's done internally in oggdemux. Vorbis comments are still not handled because I don't have anything to test with. 2009-12-03 17:02:11 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggstream.c: oggdemux: fix for I-frame-only theora 2009-12-03 01:16:17 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggstream.c: ogg: log when ogg mapper doesn't accept the setup header packet 2009-12-02 02:08:46 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggstream.c: ogg: extract width, height and PAR from theora header and add to caps 2009-12-03 23:43:08 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggstream.c: ogg: extract number of channels from FLAC, speex and vorbis headers Because we can. 2009-12-03 22:14:34 +0200 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaybin2.c: build: fix build with debug logging disabled. 2009-12-03 21:07:49 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: ogg: more print fixes gstoggstream.c:419: error: format ‘%lld’ expects type ‘long long int’, but argument 8 has type ‘gint64’ gstoggdemux.c:2253: error: format ‘%lld’ expects type ‘long long int’, but argument 8 has type ‘GstClockTime’ gstoggdemux.c:2333: error: format ‘%lld’ expects type ‘long long int’, but argument 8 has type ‘GstClockTime’ 2009-12-03 16:57:48 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: ogg: Fixing some printf format strings Fixes some printf format strings to make it build on mac. 2009-12-03 18:08:49 +0200 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstfactorylists.c: * gst/playback/gstfactorylists.h: * gst/playback/gstplaybin2.c: playbin2: don't iterate the factory lists in non-debug mode When debugging is disabled, we won't see anything printed anyway. 2009-12-02 23:55:55 -0800 David Schleef <ds@schleef.org> * gst/videoscale/vs_4tap.c: Build fix for MSVC 2009-12-02 23:27:55 +0200 Stefan Kost <ensonic@users.sf.net> * gst/subparse/qttextparse.c: build: add missing includes for sprintf and atoi 2009-12-01 16:42:42 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/subparse/gstsubparse.c: * gst/subparse/qttextparse.c: subparse: Add support for some tags of qttext Currently supporting timescale, timestamps, font, size, textColor, backColor, plain, bold and italic Fixes #603357 2009-12-01 13:13:24 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * gst/subparse/qttextparse.c: * gst/subparse/qttextparse.h: subparse: add qttext support Adds basic support for qttext subtitles, still lacks markup tags to make it prettier, but the plain text already works. Implemented according to: http://www.apple.com/quicktime/tutorials/texttracks.html http://www.apple.com/quicktime/tutorials/textdescriptors.html Fixes #603357 2009-12-01 13:22:57 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: conditionally cleanup sami context Only cleanup sami context if we are parsing sami subtitles, otherwise we might have crashes. 2009-12-01 13:19:35 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: Add missing caps to sink caps template Some caps were missing from the sink caps template when xml was disabled 2009-12-01 15:06:10 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 87bf428 to 47cb23a 2009-12-01 14:14:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From da4c75c to 87bf428 2009-11-30 10:22:15 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Fix some pad refcount issues Fixes bug #603345. 2009-11-27 18:54:57 +0100 Edward Hervey <bilboed@bilboed.com> * common: Automatic update of common submodule From 53a2485 to da4c75c 2009-11-25 17:04:41 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: handle theora streams with 0 keyoffset 2009-11-25 16:53:26 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: oggdemux: Handle unknown streams 2009-11-26 14:30:33 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: Revert "textoverlay: First draw outline text and then the real text" This reverts commit 60aa09d28c1f9fd29b56876d7ac6c0366d6cef4d. First drawing the real text and then the outline produces ugly text in lower resolutions. The outline line width needs to be somehow changed relative to the resolution. Fixes bug #602924. 2009-11-26 10:30:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: Use G_DEFINE_ABSTRACT_TYPE_WITH_CODE ...and fix code style a bit. 2009-11-26 10:31:00 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/gstaudiofilter.h: audiofilter: Add _CAST variants of the cast macros 2009-11-25 10:26:16 -0600 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: audiosink: add adjustement when slaving Our calibration against the pipeline clock is done with the adjusted ringbuffer time, so take the adjustement into account. Fixes some audio dropouts when reusing audio sinks after switching clocks and slaving methods in a pipeline. 2009-11-25 16:17:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Prefer transforming alpha formats to alpha formats and the other way around Fixes bug #602834 and #350748. 2009-11-25 00:46:55 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: oggdemux: Reset last_granule during seeking Fix case where we would reconstruct the wrong granulepos for outgoing streams immediately after a seek. 2009-11-24 22:08:09 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: oggdemux: Fix timestamp generation for theora Timestamp generation was broken by the last commit for formats with a non-zero granule shift. Also keep track of the last keyframe so that we can regenerate granulepos for theora. 2009-11-24 21:22:03 -0800 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: * ext/ogg/vorbis_parse.c: oggdemux: Fix vorbis parsing Add a granule to granulepos conversion function. Fix the duration function for vorbis. Handle timestamps on header packets differently and be more careful about calculating OFFSET and OFFSET_END. After this change, timestamps for vorbis don't exactly match up with the timestamps that vorbisparse outputs, but it's unclear if vorbisparse is actually correct and it would add a lot more code to make oggdemux match vorbisparse. Fixes #602790. 2009-11-19 19:28:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Transform QoS events to be meaningful for upstream elements This is necessary because the sinks don't notice the group switches and the decoders/demuxers have a different running time than the sinks. Fixes bug #537050. 2009-11-21 22:05:34 +0100 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: ogg: Fix generation of timestamps and durations After changing some internal functions, I forgot to update the code that puts the values on the buffers. 2009-08-29 10:51:48 -0700 David Schleef <ds@schleef.org> * ext/ogg/Makefile.am: * ext/ogg/dirac_parse.c: * ext/ogg/dirac_parse.h: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggparse.c: * ext/ogg/gstoggstream.c: * ext/ogg/gstoggstream.h: * ext/ogg/vorbis_parse.c: ogg: Add ogg stream parsing Adds code that parses headers of various formats encapsulated in Ogg in order to calculate timestamps and durations of each buffer. Removes the creation of helper decoder elements to do this calculation via conversion queries. Fixes: #344013, #568014. 2009-09-04 00:11:38 -0700 David Schleef <ds@schleef.org> * ext/ogg/gstoggmux.c: oggmux: don't overwrite object properties 2009-11-21 17:54:49 +0200 Stefan Kost <ensonic@users.sf.net> * ext/theora/theoradec.c: debug: also cast packet.packetno to gint64 in debug log We do this already for granulepos to handle ogg_int64_t mismatches. 2009-11-21 17:47:26 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/gstbaseaudiosrc.c: debug: fix format string that was missing a var 2009-10-10 00:32:04 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: * tests/check/elements/adder.c: adder: make events succeed, if they succed on atleast one pad 2009-11-19 14:51:33 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: error when all streams have no buffers In some cases (all buffers dropped by a parser) a decodebin2 chain might receive an EOS before it gets enough data to expose a decoded pad. In the case that no streams can expose a pad we should error out instead of hang. Fixes #542758 2009-11-19 12:23:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Fix stupid bug introduced in last commit 2009-11-19 12:10:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Aggregate the stream-changed message by looking at the seqnum Just counting how many messages were sent and how many were received is not good enough because they might've been duplicated (e.g. by the visualization audio tee). Comparing the sequence numbers should give better results in that case. 2009-11-19 10:05:28 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Ignore async state changes of the uridecodebins Otherwise the async state change from READY->PAUSED of the uridecodebins will take playbin2 from PLAYING->PAUSED again during gapless group switches. Fixes bug #602000. 2009-11-19 10:30:06 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Automatic update of common submodule From 0702fe1 to 53a2485 2009-11-18 14:50:28 -0300 Thiago Santos <thiago.sousa.santos@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: set to buffer less on no-more-pads When a decodebin2 receives no-more-pads of a group it can set that group's multiqueue buffering thresholds to 'playing' buffering method, avoiding that it buffers too long and cause problems when using with queue2. See the associated bug for details. Fixes #600787 2009-11-18 17:09:28 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix initial calibration When we are calibrating the internal clock against the external clock take into account the time offset applied to our internal clock because we will subtract that in the render_function again. 2009-11-18 09:22:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Don't handle DURATION queries during group switches During a group switch return the cached duration of the old group because the old group still didn't finish playback. If we have no cached duration return FALSE. Fixes bug #585969. 2009-11-15 19:36:21 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Post a stream-changed message after activating a group This is useful to detect when playbin2 has really switched to the next group after about-to-finish for example. Fixes bug #584987. 2009-11-18 12:27:19 +0000 Jan Schmidt <thaytan@noraisin.net> * win32/common/libgstvideo.def: win32: Add new still-frame API to the defs Add gst_video_event_new_still_frame() and gst_video_event_parse_still_frame() functions to the win32 defs files 2009-11-18 12:37:44 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: fix 'uninitialized' compiler warning 2009-11-18 10:14:41 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: bump core requirement to 0.10.25.1 We depend on new API that's only in git so far. 2009-11-15 17:34:37 +0000 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: * tests/check/libs/video.c: video: Add functions to create/parse still frame events. Add a new video event to mark the start or end of a still-frame sequence, and a parser function to identify and extract info from such events. API: gst_video_event_new_still_frame() API: gst_video_event_parse_still_frame() Fixes: #601942 2009-11-17 16:39:09 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: make sure we always go to PAUSED async Set the need_async_start flag before going to PAUSED so that we always post the ASYNC_START message, even after reusing playsink. 2009-11-17 16:37:57 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: make sure we remain a sink When we remove our elements, we could lose our sink flag. Make sure we remain a sink by setting the flag again after removing elements. 2009-11-16 22:47:54 +0200 Stefan Kost <ensonic@users.sf.net> * gst/audioconvert/gstaudioconvert.c: audioconvert: remove unused array 2009-11-16 09:57:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: Use new double->fraction transformation function from core 2009-11-14 14:05:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Make subtitle error handling more robust and ignore late errors too Make sure, to only "simulate" subtitle no-more-pads if it was still pending and also handle errors in the subtitle pipeline as warnings after the subtitles prerolled. Don't set the suburidecodebin to READY after errors, handle_message will usually be called from the streaming thread and doing that from there is obviously not a good idea. 2009-11-14 13:21:15 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Handle errors from subtitle elements as warning and go into passthrough mode 2009-11-13 12:47:55 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Don't leak the GError and debug string when parsing error messages 2009-11-13 11:16:44 +0100 Sreerenj B <bsreerenj@gmail.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: avoid crashing on SIGPIPE Use send() instead of write() so that we can pass the MSG_NOSIGNAL flags to avoid crashing with SIGPIPE when the remote end is not listening to us anymore. Fixes #601772 2009-11-11 17:35:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Improve subtitle passthrough in uridecodebin Now the caps property isn't set anymore for the subtitle caps but instead in the autoplug-continue signal it is detected if the caps belong to a supported subtitle stream. This makes automatic use of newly installed plugins. 2009-11-11 17:08:47 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Only recreate factory caps if necessary and cache them 2009-11-10 18:27:15 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Only update the factory list when the registry has changed Also don't free the list every time we go to NULL. 2009-11-08 15:04:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: Use gst_pad_get_caps_reffed() 2009-11-07 21:38:10 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2/playsink: Use new "silent" property instead of unlinking This makes sure that subtitleoverlay still gets segment updates and everything to pass on downstream. Without this segment problems happen. 2009-11-07 21:10:27 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Update segments after pushing the events downstream This makes sure that we don't apply segments twice downstream. Also always send our newsegment events downstream. 2009-11-07 21:09:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Add silent property to disable subtitles This tries to disable subtitles in the overlay or renderer and if that's not possible it goes into passthrough mode. 2009-11-07 11:46:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Set the video framerate on parsers if possible Fixes bug #599649. 2009-11-07 11:31:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: subparse: Make fps a GstFraction typed property and use it properly 2009-11-07 11:08:19 +0100 Iago Toral <itoral@igalia.com> * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: subparse: Add property for the video framerate 2009-11-06 12:51:22 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Handle external subtitles better First of all, make sure that suburidecodebin never errors out because of not-linked in case external subtitles are used but then subtitles are disabled. And then make sure that external subtitles always start from the correct position and are not racing until EOS if they get unselected and selected again. 2009-11-04 17:29:07 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Flush the subtitles before switching to a new subtitle stream This makes sure that all currently shown subtitles disappear and new ones can be shown as soon as possible. 2009-11-03 12:47:55 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Set subtitle caps as raw caps for the uridecodebins This will make sure that no subparse is ever plugged and subtitleoverlay, that subpicture streams are handled the same was as subtitles and that subtitle renderers are used if available. Fixes bugs #595123, #570753, #591662, #591706. 2009-11-03 12:33:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2/playsink: Remove everything related to subpicture streams These will soon be handled the same way as subtitle streams. 2009-11-02 15:50:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Add a queue before subtitleoverlay This will improve playback, and the same thing is done for subpicture streams too. 2009-11-02 15:05:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Use subtitleoverlay for subtitles 2009-11-02 07:43:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: subtitleoverlay: Add to the docs 2009-10-13 16:48:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/Makefile.am: * gst/playback/gstplayback.c: * gst/playback/gstsubtitleoverlay.c: * gst/playback/gstsubtitleoverlay.h: subtitleoverlay: Add new element for generic subtitle overlaying This autopluggs the required elements for parsing and rendering different subtitle formats on a video stream. Fixes bug #600370. 2009-11-11 19:32:01 -0500 Olivier Crête <olivier.crete@collabora.co.uk> * ext/theora/theoradec.c: theoradec: Keep timestamp from incoming buffer if it is valid Fixes bug #601627. 2009-11-11 14:00:26 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: Update factories list on every access if the registry has changed This makes application's simpler because the element doesn't need to go to NULL first to make use of newly installed plugins. Fixes bug #601480. 2009-11-10 18:13:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playback: When going from NULL->READY check if the registry has new features This makes it possible to use newly installed plugins after going back to NULL instead of requiring a new instance. Fixes bug #599266. 2009-11-10 13:55:26 +0000 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/app/gstappsrc.c: appsrc: Clear the EOS state on a seek. Allow seeking back into the stream after it hits EOS. 2009-11-10 12:21:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/audioresample/README: * gst/audioresample/arch.h: * gst/audioresample/fixed_arm4.h: * gst/audioresample/fixed_arm5e.h: * gst/audioresample/fixed_bfin.h: * gst/audioresample/fixed_debug.h: * gst/audioresample/resample.c: * gst/audioresample/resample_sse.h: * gst/audioresample/speex_resampler.h: audioresample: Update speex resampler to latest GIT 2009-11-10 00:48:42 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: assign chain->mute before using it Fixes GObject warnings when starting totem. 2009-10-28 22:10:33 -0700 David Schleef <ds@schleef.org> * ext/theora/theoradec.c: theora: Fix alignment of frames when converting Fix logic inversion in calculating the offset in the theora frame when copying to a GStreamer frame. 2009-11-09 19:58:20 +0100 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstfactorylists.c: playback: Fix the order in strcmp that I broke in previous commit. 2009-11-09 19:16:21 +0100 Edward Hervey <bilboed@bilboed.com> * gst/typefind/gsttypefindfunctions.c: typefind: Reduce number of calls to gst_type_find_peek. Shaves off a couple percents off typefinding 2009-11-09 17:49:51 +0100 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstfactorylists.c: playback: Avoid expensive API calls in tight loop. We know we're dealing with GstPluginFeature. 2009-11-09 18:11:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/libs/cddabasesrc.c: cddabasesrc: Add unit test for property settings Also includes a regression test for bug #601104. 2009-11-09 18:04:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/cdda/gstcddabasesrc.c: cddabasesrc: Never return a negative track number in get_uri() 2009-11-09 18:03:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/cdda/gstcddabasesrc.c: cddabasesrc: Don't set the track to 1 every time a device is set Fixes bug #601104. 2009-11-08 11:27:10 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: inputselector: Remove useless variables and fix a uninitialized variable compiler warnings 2009-11-06 17:01:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Add property to disable/enable posting of stream-topology messages Most people don't need this messages and generating them is quite expensive. 2009-11-06 15:12:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Protect subtitle elements and subtitle encoding by a new mutex Using the object lock here can and will lead to deadlocks because of deep-notifies of property changes: the deep-notify handler will get the parent of objects, which will take the object lock again. Fixes bug #600479. 2009-11-06 13:13:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: inputselector: Make sure that running_time->timestamp calculation never becomes negative 2009-11-06 13:25:05 +0200 Mart Raudsepp <leio@gentoo.org> * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: examples: Correct casting of g_signal* funcs first arguments This completes the deprecated GTK API fix in commits 81a0a986 and 79adfa54 - unlike gtk_signal_connect and co, g_signal_connect and co take a gpointer, not a GtkObject. 2009-11-06 12:25:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Improve all-raw-caps detection for pads 2009-11-06 12:19:47 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: basesrc: fix startup position in the ringbuffer When we start and we need to produce the first sample, go to the next sample that will be written into the ringbuffer instead of trying to go to sample 0. We relied on rather small ringbuffer sizes to correctly go to the current sample, which breaks whith large buffers. Fixes #600945 2009-11-06 11:26:14 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: inputselector: Use the start time (i.e. timestamp) as the last stop Using the end time makes it impossible to replace buffers, which is a big problem for subtitles that could have very long durations. 2009-11-06 12:08:19 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Synchronize video/text based on the running time Instead of simply using the buffer timestamps. 2009-11-06 09:30:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Clip text buffers to the text segment and reset segments properly 2009-11-06 09:01:34 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: Put the video segment into the instance struct instead of allocating it separately 2009-11-06 09:05:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Check if text timestamp/duration is valid before clipping 2009-11-05 23:33:42 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/theora/theoradec.c: theoradec: printf format fix 2009-11-05 15:42:09 +0100 Olivier Crête <olivier.crete@collabora.co.uk> * gst/gdp/gstgdpdepay.c: gdpdepay: Clear adapter on flush and state change Fixes #600469 2009-11-05 13:12:19 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstinputselector.c: inputselector: use _get_caps_reffed() 2009-11-05 13:00:27 +0200 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: pad: rename new api from _refed to _reffed. Due to popular demand rename the new api as we still can. 2009-11-04 18:57:07 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin2: avoid copying caps Use get_caps_refed() when we can. 2009-11-04 18:31:09 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: use new getcaps function to avoid copies Use the gst_pad_get_caps_refed() to avoid some caps copy functions. 2009-11-04 17:50:11 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: use faster element_link_pads Use the faster gst_element_link_pads because we know for sure the sinkpad name and we don't need to have the function search for a suitable pad anymore. 2009-11-04 16:16:31 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: make drift tolerance configurable Add drift-tolerance property (defaulting to 20ms) to handle resync after clock drift or timestamp drift instead of relying on the latency-time value for clock drift and 500ms for timestamp drift. Remove warning about discont timestamp and simply resync. The warning is in some cases not correct and is triggered more frequently now that we lower the tolerance value. 2009-11-04 10:52:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Return NOT_LINKED for unselected text pads from a demuxer We want to return NOT_LINKED for unselected pads but only for pads from the normal uridecodebin. This makes sure that subtitle streams are not raced past audio/video from decodebin2's multiqueue. For pads from suburidecodebin OK should always be returned, otherwise it will most likely stop with an error. 2009-11-04 08:20:59 +0100 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstinputselector.c: inputselector: also add inline to the proto to fix the build Merged from gst-plugins-bad, e1e9be6dbe1bd0df0543f2a72dcf9cc6d644dd78. 2009-11-03 12:01:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Initialize caps property with the default raw caps 2009-11-03 11:48:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/Makefile.am: * gst/playback/gstdecodebin2.c: * gst/playback/gstrawcaps.h: decodebin2: Use static caps for the default raw caps and put them into a separate header This way we can use the same default raw caps everywhere. 2009-11-03 08:26:37 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: First draw outline text and then the real text Improves the output a bit because no parts of the outline are overwritten again. 2009-10-31 14:02:40 +0100 Josep Torra Valles <n770galaxy@gmail.com> * gst/playback/gstplaybin.c: playbin: Make sure to keep a reference on the volume element Fixes null pointer dereferences under certain circumstances. Fixes bug #595401. 2009-10-31 09:47:54 +0100 Edward Hervey <bilboed@bilboed.com> * po/POTFILES.in: po: queue2 has moved to core 2009-10-30 09:24:30 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Reset {mute,volume}-changed flags after setting the volume These flags are there to make sure that the volume is set, if there is no volume element yet. 2009-10-30 09:24:03 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: If notify::{volume,mute} is triggered by the volume element, update our internal state 2009-10-29 14:30:31 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Proxy notify::volume and notify::mute from the volume/mute elements (or sinks) Fixes bug #600027. 2009-10-29 14:19:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Proxy notify::volume and notify::mute from the playsink to playbin2 2009-10-29 11:37:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/plugins/inspect/plugin-queue2.xml: queue2: Remove inspect file 2009-10-29 11:29:46 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/Makefile.am: * gst/playback/gstqueue2.c: queue2: Remove from gst-plugins-base This is now in coreplugins. 2009-10-28 11:29:36 +0200 Stefan Kost <ensonic@users.sf.net> * docs/libs/gst-plugins-base-libs-docs.sgml: docs: include more indexes 2009-10-28 11:13:20 +0200 Stefan Kost <ensonic@users.sf.net> * docs/libs/gst-plugins-base-libs-docs.sgml: docs: turn entities into xi:includes This is faster to process and easier to maintain. Its also less 80s. 2009-10-28 10:17:43 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: dump packets which we reject 2009-10-28 01:01:35 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/pipelines/.gitignore: .gitignore: ignore basetime unit test binary 2009-10-28 00:59:35 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst/adder/gstadder.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstinputselector.c: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstqueue2.c: * gst/playback/gststreaminfo.c: * gst/playback/gststreamselector.c: * gst/subparse/gstssaparse.c: Remove GST_DEBUG_FUNCPTR where they're pointless There's not much point in using GST_DEBUG_FUNCPTR with GObject virtual functions such as get_property, set_propery, finalize and dispose, since they'll never be used by anyone anyway. Saves a few bytes and possibly a sixteenth of a polar bear. 2009-10-27 15:23:00 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstqueue2.c: queue2: add custom acceptcaps function 2009-10-27 15:22:22 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: implement low/high watermark property 2009-10-23 14:56:11 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: add checkbox to enable buffering 2009-10-23 14:54:47 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: don't use 2 buffering elements Only use the multiqueue buffering when we don't have a stream (and thus are using queue2 to do the buffering already). 2009-10-23 14:34:42 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: * gst/playback/gstplaybin2.c: playbin2: add flag to enable decodebin buffering Add a flag that enables buffering in decodebin. 2009-10-23 14:32:29 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: buffering is implemented now 2009-10-23 14:30:52 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: buffering is implemented now 2009-10-23 14:09:17 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: configure use-buffering on multiqueue 2009-10-23 13:58:25 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: use 0 for max buffer size 2009-10-23 13:53:21 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: set some reasonable defaults 2009-10-23 13:44:12 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: set buffering properties on decodebin2 Propagate the buffering properties on decodebin2 but only if we are not already doing download buffering. 2009-10-23 11:52:09 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: add use-buffering property Add a use-buffering property that will perform buffering on the parsed or demuxed media. 2009-10-23 11:31:47 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: refactor queue size configuration. Refactor the queue size configuration into a new method. Use the same queue values for buffering as for preroll. 2009-10-23 11:08:50 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: move error path down 2009-10-23 11:02:40 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: implement max queue size properties 2009-10-23 10:42:23 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: add properties for buffering Add properties that can be used to configure the multiqueue buffers and buffering methods 2009-10-24 13:19:08 +0200 Edward Hervey <bilboed@bilboed.com> * tests/examples/app/Makefile.am: * tests/examples/seek/Makefile.am: * tests/examples/v4l/Makefile.am: examples: fix linking order. the uninstalled wrapper would create a LD_LIBRARY_PATH with system-wide path before the local ones... resulting in the example applications picking up the system-wide libraries and not the (potentially modified) uninstalled libraries 2009-10-24 13:08:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Don't destroy the suburidecodebin on errors It can still be reused 2009-10-24 13:07:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: If setting the state of the suburidecodebin fails just warn, don't error out 2009-10-24 12:12:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Don't set uridecodebin states to NULL before reusing them This makes sure that the internal decodebin2 and everything else can be reused without reinstantiation. 2009-10-18 17:28:22 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gsturidecodebin.c: uridecodebin: Store unused decodebin2 instances for further usage. This allows faster re-use of uridecodebin. https://bugzilla.gnome.org/show_bug.cgi?id=599471 2009-10-23 17:49:15 -0700 David Schleef <ds@schleef.org> * ext/theora/gsttheoraparse.h: * ext/theora/theoraparse.c: theora: Convert theoraparse to libtheora 1.0 API 2009-10-21 12:38:59 +0300 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: rtpaudiopayload: Only sent exact multiple of the frame size Also align the maximum size with the frame size, not only the minimum 2009-10-22 09:12:03 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> * gst/audiorate/gstaudiorate.c: audiorate: move debug calculation into debug macro Remove in_duration and move its calculation to GST_LOG_OBJECT macro. This way it will only be calculated if we have debug enabled. 2009-10-22 09:06:02 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> * gst/audiorate/gstaudiorate.c: audiorate: Removing unused variable The in_stop variable was never read. Removing it. 2009-10-22 08:40:01 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> * gst/audiorate/gstaudiorate.c: audiorate: be more accurate on offset math Replace gst_util_uint64_scale_int for its rounding version to improve accuracy and avoid inserting samples where they aren't needed. Fixes #499181 2009-10-22 10:17:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Optimize a bit more ...and add a FIXME for bug #598695 and explain what we should do once Pango supports user fonts. 2009-10-22 10:02:11 +0200 Iago Toral <itoral@igalia.com> * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: * tests/check/elements/subparse.c: subparse: Add support for DKS subtitle format Fixes bug #598936. 2009-10-22 09:31:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Do shading as first operation 2009-10-22 09:08:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Only use a single cairo surface for drawing ... and comment/optimize what is going on here a bit better. 2009-10-21 16:24:29 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstinputselector.c: inputselector: set output caps before pushing Set the output caps on the srcpad before pushing the buffer because else core will do a rather expensive check to see if we can actually accept those caps on the srcpad. 2009-10-21 15:58:11 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstinputselector.c: inputselector: install an acceptcaps function Install a custom acceptcaps function instead of using the default expensive check. We accept whatever downstream accepts so we pass along the acceptcaps call to the downstream peer. 2009-10-21 20:35:17 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefind: fix typo in previous mxf typefinder change 2009-10-21 20:44:33 +0200 Edward Hervey <bilboed@bilboed.com> * gst/typefind/gsttypefindfunctions.c: typefind: speed up mxf_type_find over 300 times for worst case scenarios * memcmp is expensive and was being abused, reduce calling it by checking the first byte. * iterating one byte at at time over 64 kbites introduces a certain overhead, therefore we now do it in chunks of 1024 bytes And I do mean over 300 times. The average instruction call per mxf_type_find was previously 785685 and it's now down to 2458 :) 2009-10-20 17:13:39 -0400 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstfactorylists.c: decodebin2: avoid type checks 2009-10-20 09:00:28 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: gst/decodebin2: Ensure we get fixed caps for topology message There are some corner cases (like with dvdemux amongst others) where the caps won't be negotiated, but the pad has fixed caps. 2009-10-20 08:52:36 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: gst/decodebin2: Don't expose chains if we're shutting down. This avoids adding flushing pads to ourself 2009-10-17 21:16:57 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * ext/pango/gsttextoverlay.c: pango: bump pango requirement to stable version and remove ifdefs Bump pango requirement from an ancient development version to an ancient stable version. 2009-10-17 21:11:10 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/.gitignore: .gitignore: update after files got renamed 2009-10-16 10:54:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppayload: small comment fix 2009-10-16 10:50:35 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtp/gstbasertppayload.c: rtp: Correct timestamping of buffers when buffer_lists are used The timestamping of buffers when buffer_lists are used failed if a buffer did not have both a timestamp and an offset. 2009-10-16 10:56:56 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtsp-marshal.list: * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/video/Makefile.am: * gst/playback/Makefile.am: * gst/tcp/Makefile.am: build: fix previous commit to fully accomodate the glib-gen.mak changes I also renamed glib_enum_prefix to glib_gen_prefix as we also use that for the marshallers. Also rename the rtsp-marshal.list to work with the unified prefix. 2009-10-16 10:18:45 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst/playback/Makefile.am: * gst/tcp/Makefile.am: build: use gst-glib-gen.mak to fix the glib build rules. Fixes #598114 The build rules in glib-gen.mak were using pattern rules in a non save way. 2009-10-16 10:14:36 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From 85d1530 to 0702fe1 2009-09-10 11:39:18 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoradec.c: theora: Make theoradec use gstvideo for image conversion Vastly simplifies code. https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-10 09:36:31 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoradec.c: theora: Don't always round to even width/height Previously, the code always rounded to even sizes. Now it only ensures that pic_x and pic_y are multiples of 2 if the output format requires it. Also inlcudes fixes to take pic_x/y into account properly when copying the buffer. https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-10 00:00:44 +0200 Benjamin Otte <otte@gnome.org> * configure.ac: theora: Don't check for theora.pc anymore THe new APIs from theoradec and theoraenc are used now. https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-07-31 14:59:03 -0700 David Schleef <ds@schleef.org> * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: theora: Convert theoradec to libtheora 1.0 API https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-09 23:44:36 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/Makefile.am: * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Port encoder to new Theora API Includes ripping out the old buffer copy code to fill up to frame size. This is not necesary with the new encoder. https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-09 21:59:31 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Disable sharpness property It's ignored by libtheora https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-09 21:57:08 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Disable noise-sensitivity property It is ignored by libtheora https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-09 21:50:57 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Disable keyframe-mindistance property It's ignored by the current Theora library https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-09 21:48:08 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Disable keyframe_threshold property It's ignored by the current theora encoder https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-09 20:26:47 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Get rid of "quick" property The proeprty is not used by libtheora at all https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-08 15:12:23 +0200 Benjamin Otte <otte@gnome.org> * configure.ac: * ext/theora/theoraenc.c: theora: remove support for outdated granulepos hack This is in preparation to switching to switching to the new Theora API https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-08 13:23:04 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Ignore border property Always make the video use black as padding color. The output will be identical to previous versions. https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-09-08 13:18:26 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theora: Ignore the center property, always set video to top left This is not a necessary property, the output will be identical no matter what. https://bugzilla.gnome.org/show_bug.cgi?id=594729 2009-10-15 16:34:28 +0100 Jan Schmidt <thaytan@noraisin.net> * po/Makevars: po: Don't create backup .po files As well as preventing creation of useless backup files, it works around a bug in gettext 0.17 on OS/X 2009-10-15 13:13:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Post a element message on the bus with the stream topology Fixes bug #598533. 2009-10-15 13:01:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Store the "endcaps" of a chain This are the caps that either resulted in a deadend if no plugin for them could be found or raw caps. 2009-10-15 11:38:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Store for every chain, which pad resulted in its creation 2009-10-15 10:28:39 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/pipelines/basetime.c: check: Don't fail the basetime test when no audiosrc is available On OS/X the DEFAULT_AUDIOSRC is not going to be available, because it isn't in gst-plugins-base. Just defer the test, instead of failing it. 2009-10-14 10:41:03 +0200 Edward Hervey <bilboed@bilboed.com> * common: Automatic update of common submodule From a3e3ce4 to 85d1530 2009-10-14 08:36:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Use gst_object_has_ancestor() instead of our own implementation of it 2009-10-13 19:14:41 +0300 Tommi Myöhänen <ext-tommi.1.myohanen@nokia.com> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: fix timestamp comparission, Fixes #597407 2009-10-13 13:52:02 +0300 Tommi Myöhänen <ext-tommi.1.myohanen@nokia.com> * tests/check/Makefile.am: * tests/check/pipelines/basetime.c: tests: new test for baseaudiosrc base_time comparison This test reveals a bug in comparison operation between timestamp and GstElement's base_time in GstBaseAudioSrc. 2009-10-08 19:55:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Don't stop completely on initialization errors from subtitle elements Instead disable the subtitles and play the other parts of the stream. Fixes bug #587704. 2009-10-13 16:50:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Ignore no-more-pads from non-demuxer elements instead of printing an error that no corresponding group could be found. no-more-pads from non-demuxer elements doesn't give any additional information because there can only be a single srcpad. Fixes bug #598288. 2009-10-12 21:30:15 +0300 Stefan Kost <ensonic@users.sf.net> * gst/audioconvert/gstaudioconvert.c: audioconvert: track active conversion in perf log 2009-10-12 15:48:46 +0200 Patrick Radizi <patrick.radizi at axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: handle socket errors gstrtspconnection.c:gst_rtsp_connection_receive() can hang when an error occured on a socekt. Fix this problem by checking for error on 'other' socket after poll return. Fixes #596159 2009-10-06 14:08:48 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstaudioclock.c: audioclock: whitespace fixes 2009-10-06 14:07:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/theoradec.c: theoradec: avoid confusing error 2009-10-09 22:00:45 +0200 Josep Torra <n770galaxy@gmail.com> * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: vorbis: fixes warings in macosx snow leopard 2009-10-09 18:52:12 +0200 Josep Torra <n770galaxy@gmail.com> * ext/theora/theoradec.c: * ext/theora/theoraparse.c: theora: fixes warnings on macosx snow leopard 2009-10-09 16:56:29 +0200 Josep Torra <n770galaxy@gmail.com> * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: ogg: fixes warnings on macosx snow leopard 2009-10-09 16:19:17 +0200 Josep Torra <n770galaxy@gmail.com> * ext/ogg/gstoggdemux.c: oggdemux: fix a warning in macosx 2009-10-08 14:16:44 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/tag/tags.c: tag: use BOM to recognize UTF-16/32 encoding and convert accordingly 2009-10-09 15:11:16 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/gst-plugins-base.supp: check: Add valgrind suppressions for ALSA and fontconfig bits on Jaunty. 2009-10-09 15:32:45 +0200 Josep Torra <n770galaxy@gmail.com> * ext/gnomevfs/gstgnomevfssrc.c: audioconvert: change the format instead of cast as ensonic asked 2009-10-09 15:29:15 +0200 Josep Torra <n770galaxy@gmail.com> * gst/audioconvert/gstchannelmix.c: audioconvert: fixes warning: format not a string literal and no format arguments redo of valid part of my previous revert. 2009-10-09 15:19:42 +0200 Josep Torra <n770galaxy@gmail.com> * common: * gst/audioconvert/gstchannelmix.c: Revert "audioconvert: fixes warning: format not a string literal and no format arguments" Revert this commit as unintentionally I've changed common. This reverts commit 49ea0138223ec5f9e53780635cbcc70f33778667. 2009-10-09 14:28:42 +0200 Josep Torra <n770galaxy@gmail.com> * ext/gnomevfs/gstgnomevfssrc.c: gnomevfssrc: fixes warnings in macosx warning: format '%llu' expects type 'long long unsigned int', but argument 8 has type 'GnomeVFSFileOffset' warning: format '%lld' expects type 'long long int', but argument 9 has type 'guint64' 2009-10-09 14:23:36 +0200 Josep Torra <n770galaxy@gmail.com> * gst/videorate/gstvideorate.c: videorate: fix warning in macosx 2009-10-09 14:20:47 +0200 Josep Torra <n770galaxy@gmail.com> * gst/audiorate/gstaudiorate.c: audiorate: fix warning in macosx 2009-10-09 14:14:15 +0200 Josep Torra <n770galaxy@gmail.com> * common: * gst/audioconvert/gstchannelmix.c: audioconvert: fixes warning: format not a string literal and no format arguments 2009-10-09 14:07:24 +0200 Josep Torra <n770galaxy@gmail.com> * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: audio: fix warnings building on macosx 2009-10-08 18:08:22 +0300 Stefan Kost <ensonic@users.sf.net> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: chwck formats just once per _chain() 2009-10-08 17:49:39 +0300 Stefan Kost <ensonic@users.sf.net> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: add perf-log-category and log suboptimal operation Log if we use an intermediate colorspace for conversion. 2009-10-08 10:59:36 +0100 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From 19fa4f3 to a3e3ce4 2009-10-08 00:17:21 +0100 Jan Schmidt <jan.schmidt@sun.com> * gst/playback/gstdecodebin2.c: decodebin2: Fix type-punning warning 2009-09-26 12:56:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Chains with an exposed endpad are complete too This allows partial group changes, i.e. demuxer2 in the example below goes EOS but has a next group and audio2 stays the same. /-- >demuxer2---->video demuxer--- \--->audio1 \--->audio2 2009-09-26 12:47:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Use the iterate internal links function instead of string magic to get multiqueue srcpads 2009-09-24 14:56:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Don't post missing plugin messages twice decodebin2 already posts them after emitting the unknown-type signal, there's no need to post another one. 2009-09-26 12:17:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Rewrite autoplugging and how groups of pads are exposed This now keeps track of everything that is going on, creates a tree of chains and groups to allow "demuxer after demuxer" scenarios and allows chained Oggs with multiple streams (needs oggdemux or playbin2 fixes). Also document everything in detail and give a general overview of what decodebin2 is doing at the top of the sources. Fixes bug #596183, #563828 and #591677. 2009-10-07 17:45:33 +0300 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: ximagesink: only start event thread if needed The event thread is doing 20 wakeups per second to poll the events. If one runs ximagesink with handle-events=false and handle-expose=false then we can avoid the extra thread. 2009-10-07 16:56:28 +0200 Edward Hervey <bilboed@bilboed.com> * ext/theora/theoraenc.c: theoraenc: Make the default quality property 48. This guarantees that people who use theoraenc without modifying any properties will end up with a reasonably good quality output. 48 is also the default of the encoder_example application shipped with libtheora. 2009-10-07 11:48:37 +0200 Benjamin Otte <otte@gnome.org> * tests/check/libs/video.c: tests/check/libs/video.c: Update strides for Y41B 2009-10-07 10:32:17 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: we can use GLib 2.18 API unconditionally now 2009-10-07 10:13:59 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: bump GLib requirement to 2.18 Bump required GLib version as per the release planning docs. 2009-10-05 00:33:32 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/tuner.c: docs: clarify GstTuner docs in two places 2009-09-25 15:32:18 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * sys/v4l/gstv4lelement.c: v4l: fix compiler warning Fix 'variable may be used uninitialized' compiler warning (which is true in theory, but can't actually ever happen, since we always call the function with check=FALSE). Fixes #596313. 2009-10-07 11:56:35 +0300 Stefan Kost <ensonic@users.sf.net> * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstogmparse.c: * gst/subparse/gstsubparse.c: * gst/subparse/mpl2parse.c: * gst/subparse/tmplayerparse.c: build: sprintf, sscanf need stdio.h 2009-09-15 15:26:06 +0300 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: only start event thread if needed The event thread is doing 20 wakeups per second to poll the events. If one runs xvimagesink with handle-events=false and handle-expose=false then we can avoid the extra thread. 2009-10-07 09:58:27 +0200 Benjamin Otte <otte@gnome.org> * gst-libs/gst/video/video.h: Update Since tags for NV12/NV21 They are added in 0.10.26 now, not 0.10.25 2009-09-23 15:31:50 +0200 Benjamin Otte <otte@gnome.org> * gst/videotestsrc/videotestsrc.c: [videotestsrc] Make checkers-8 pattern create 8x8 instead of 16x16 tiles 2009-09-23 11:03:57 +0200 Benjamin Otte <otte@gnome.org> * gst/ffmpegcolorspace/imgconvert_template.h: [ffmpegcolorspace] Fix NV12 and NV21 with odd width and height 2009-09-23 10:25:02 +0200 Benjamin Otte <otte@gnome.org> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: Add NV12 and NV21 formats 2009-09-21 18:49:42 +0200 Benjamin Otte <otte@gnome.org> * gst-libs/gst/video/video.c: [video] Fix Y41B Chroma components should be aligned on 4byte boundaries. https://bugzilla.gnome.org/show_bug.cgi?id=595849 2009-09-21 18:49:06 +0200 Benjamin Otte <otte@gnome.org> * gst/videotestsrc/videotestsrc.c: [videotestsrc] Fix Y41B Chroma components should be aligned on 4byte boundaries. https://bugzilla.gnome.org/show_bug.cgi?id=595849 2009-10-07 07:28:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * gst-libs/gst/interfaces/streamvolume.c: streamvolume: Define cbrt() if it's not available Fixes build on Win32, bug #597537. 2009-09-24 16:05:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstfactorylists.c: factorylist: Use gst_caps_can_intersect() instead of _intersect() This is faster and results in less allocations. 2009-09-26 12:10:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Don't set the external ghostpads blocked but only their targets Pad blocks should never be done on external pads as outside elements might want to use their own pad blocks on them and this will lead to conflicts and deadlocks. 2009-09-26 12:04:55 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Only use the object lock for protecting the subtitle elements Using the decodebin lock will result in deadlocks if the subtitle encoding is accessed from a pad-added handler. 2009-09-26 18:11:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Improve debugging of pad blocks 2009-09-23 16:07:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2/playsink: Use gst_object_ref_sink() instead of calling both separately 2009-10-06 19:59:11 -0700 David Schleef <ds@schleef.org> * configure.ac: configure: Add an 'else' to pangocairo check Otherwise it exits if it fails. 2009-10-06 19:35:50 -0700 David Schleef <ds@schleef.org> * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: add pattern with out-of-gamut colors Adds a pattern with out-of-gamut colors in a checkerboard pattern with in-gamut neighbors. Useful for checking YCbCr->RGB color matrixing. Correct matrixing and clamping will cause the checkerboard pattern to be invisible. 2009-10-06 19:17:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: use CLOSE_SOCKET() instead of close() Use CLOSE_SOCKET instead of directly calling close() because it does the right thing for windows. Fixes #597539 2009-10-01 14:19:41 +0200 Robert Swain <robert swain gmail com> * gst/audioresample/gstaudioresample.c: audioresample: fix printf variable type Change printf variable type from %lu to %" G_GUINT64_FORMAT " as it should be for guint64. Fixes #596981 2009-09-30 23:22:35 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: ffmpegcolorspace: Use the ffmpegcolorspace debug category Move gstffmpegcodecmap debug to the ffmpegcolorspace category 2009-09-22 11:58:26 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/gdp/gstgdppay.c: gdppay: Don't repeat tags buffers for every new segment Only send a tag buffer when one is received, not after every new segment event/update. 2009-09-28 20:25:35 -0700 David Schleef <ds@schleef.org> * gst/typefind/gsttypefindfunctions.c: typefind: detect 'ftypqt ' as video/quicktime 2009-10-06 19:47:00 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: back to development -> 0.10.25.1 === release 0.10.25 === 2009-10-05 13:56:15 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: Release 0.10.25 2009-10-05 13:49:10 +0100 Jan Schmidt <thaytan@noraisin.net> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-10-01 17:17:55 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.24.4 pre-release 2009-10-01 10:37:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: pango: Unpremultiply Cairo's ARGB to match GStreamers ARGB 2009-09-28 22:06:11 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: make the lock recursive for now Fixes #583255 2009-09-28 21:54:03 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: fix the vis property getter 2009-09-30 18:06:56 +0100 Christian F.K. Schaller <christian.schaller@collabora.co.uk> * gst-plugins-base.spec.in: Add missing file to spec file 2009-09-17 16:57:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/cdda/gstcddabasesrc.c: * tests/check/libs/cddabasesrc.c: cddabasesrc: Fix string leaks in the unit test and a leak in cddabasesrc 2009-09-17 23:42:52 +1000 Jonathan Matthew <jonathan@d14n.org> * gst-libs/gst/cdda/gstcddabasesrc.c: * tests/check/libs/cddabasesrc.c: cddabasesrc: ignore URI fragments that look like device paths Rhythmbox uses cdda:// URIs of the form cdda://track#device, which worked before the fix for bug #321532. Also adds a check for negative track numbers and some unit tests for URI parsing. Fixes bug #595454. 2009-09-17 01:20:45 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.24.3 pre-release 2009-09-15 15:23:49 -0700 Michael Smith <msmith@songbirdnest.com> * gst-libs/gst/tag/gstvorbistag.c: vorbistag: don't ever return NULL in list of strings. 2009-09-14 12:18:33 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplaysink.c: playsink: Expose mute,volume,vis-plugin and font-desc properties https://bugzilla.gnome.org/show_bug.cgi?id=594623 2009-09-09 12:42:04 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplaysink.c: GstPlaySink: Expose 'reconfigure' as an action signal. 2009-09-09 11:17:28 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplaysink.c: GstPlaySink: Expose flags as a gobject property. 2009-09-08 11:35:20 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplayback.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playback: Register playsink as an element. This allows using playsink from outside the playback plugin. Add code to be able to request the sink pads using standard GStreamer API. TODO : expose GObject properties/signals. 2009-09-12 14:55:06 +0300 Stefan Kost <ensonic@users.sf.net> * docs/libs/gst-plugins-base-libs.types: docs: add new gst_stream_volume_get_type to types file This is needs to get Gobject features to show up in the docs. 2009-09-12 15:48:11 -0700 David Schleef <ds@schleef.org> * ext/ogg/gstoggdemux.c: oggdemux: Fix duration calculation for truncated files If the last page of a stream has a granulepos of -1, that is, it doesn't complete a packet, we need to continue to search for the last granulepos. 2009-09-12 14:01:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: introspection: Build pkgconfig before all libraries and set PKG_CONFIG_PATH This way g-ir-scanner can find the gstreamer-*-0.10 pkg-config files. 2009-09-12 02:23:07 +0100 Jan Schmidt <thaytan@noraisin.net> * ext/theora/theoraenc.c: theoraenc: Fix a string leak in _getcaps() 2009-09-11 23:49:11 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * configure.ac: * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.24.2 pre-release 2009-09-11 21:44:18 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/elements/audioresample.c: check: Improve audioresample test Make the audioresample test work with CK_FORK=no, and turn a g_print into a GST_INFO. 2009-09-11 22:09:06 +0200 Benjamin Otte <otte@gnome.org> * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix crashes with even widths The fix for green lines introduced by commit 35fdfcc6258c66ba462a4330a35deffb0f2b501d caused invalid memory accesses for even widths. This patch fixes it. 2009-09-11 15:11:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Implement GstStreamVolume interface 2009-09-11 15:04:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: * tests/check/Makefile.am: * tests/check/elements/volume.c: volume: Implement GstStreamVolume interface 2009-09-11 14:54:17 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/streamvolume.c: * gst-libs/gst/interfaces/streamvolume.h: * gst/playback/Makefile.am: * win32/common/libgstinterfaces.def: interfaces: API: Add GstStreamVolume interface Fixes bug #567660. 2009-09-11 12:20:10 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: properly fix the HTTP manual mode When we're not parsing HTTP, return EPARSE when we get an HTTP message. 2009-09-11 10:16:15 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/mixertrack.h: mixertrack: add READONLY and WRITEONLY flags Should really have been READABLE and WRITABLE, but those are hard to add whilst maintaining backwards compatibility. See #343615. API: GST_MIXER_TRACK_READONLY API: GST_MIXER_TRACK_WRITEONLY 2009-09-11 10:02:54 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: fix build against core that has debugging disabled The macro is called GST_DISABLE_GST_DEBUG, not GST_DISABLE_DEBUG. 2009-09-11 07:38:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videorate/gstvideorate.c: videorate: Add Since marker for the new skip-to-first property 2009-09-11 07:36:10 +0200 Olivier Crête <olivier.crete@collabora.co.uk> * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: Make videorate work with a live source Add a property that makes videorate skip to the first buffer it receives instead of padding the stream from segment start to the first real buffer. Fixes bug #567928. 2009-09-11 07:20:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.h: fft: Mark one function as const and add notes that the structs should be private in 0.11 2009-09-10 22:28:19 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: add human readable format names when logging Add string array with human readable names for format and type to be used in log statements. 2009-09-10 18:19:36 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppay: don't print RTP timestamps as clocktime Don't try to print the RTP timestamp as a GstClockTime, it's just a guint32. Fixes #594757 2009-09-10 16:55:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: playbin(2): Document that the volume property uses a linear scale Fixes bug #571610. 2009-09-10 14:04:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: don't return EPARSE Don't blindly return EPARSE when http mode is disabled. Restore old http mode after temporarily setting it to TRUE. 2009-09-10 12:38:16 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: add ugly backward compat hack Check for pulsesink < 0.10.17 because it includes code that is now included in baseaudiosink. Disable that code in baseaudiosink to be compatible with the older version. 2009-09-10 10:56:29 +0200 Benjamin Otte <otte@gnome.org> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Handle YVU9/YUV9 conversion with odd widths A green border could be visible when converting to Y444 or RGB, because the last chroma samples weren't copied correctly 2009-09-10 10:43:37 +0200 Benjamin Otte <otte@gnome.org> * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix YVU9 and YUV9 - Buffer sizes were computed different from ffmpegcolorspace - Green bar on right size for widths not divisable by 4 2009-09-10 10:08:28 +0200 Benjamin Otte <otte@gnome.org> * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix image for odd widths in some formats videotestsrc rounds chroma down. This causes it to omit the last chroma value completely for odd widths when the chroma is downsampled. This patch special cases the last pixel to not be rounded down. 2009-09-10 10:02:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: Handle kate and cmml as sparse streams too 2009-09-10 10:00:16 +0200 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: Better handling of sparse streams by sending segment updates Fixes bug #397419. 2009-09-10 09:43:28 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gsturidecodebin.c: docs: tell a biit more about uri-decodebin and buffering 2009-09-09 18:24:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: take clock time in setcaps Take the time of the clock so that the last_time field is set. This is important for sinks that restart their internal ringbuffer after a caps change and need to know the last know position. 2009-09-09 18:24:15 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstaudioclock.c: audioclock: add some more debug 2009-09-09 16:44:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/theora/theoraenc.c: theoraenc: Print a debug message with supported formats 2009-09-07 17:29:38 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoraenc.c: theora: Check supported input formats in getcaps function We want to fail early when an older libtheora release is used that does not support Y444 or Y42B formats, so use a getcaps function that does this. 2009-09-04 21:37:04 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoraenc.c: theora: Implement support in theoraenc for Y444 and Y42B Fixes bug #594165. 2009-09-04 20:23:52 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoraenc.c: theora: Refactor the buffer copy code 2009-09-04 16:59:49 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoraenc.c: theora: Split yuv_buffer creation into its own function 2009-09-04 16:49:08 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoraenc.c: theora: Split out buffer resize in its own function 2009-09-04 14:06:09 +0200 Benjamin Otte <otte@gnome.org> * ext/theora/theoraenc.c: theora: Add assertions that functions don't fail Some functions in libtheora can return an error, but that error cannot ever happen inside theoraenc. In those cases assert that it doesn't. 2009-09-09 16:21:57 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: make stop state configurable Make it easy to experiment with different stop states (NULL and READY) 2009-09-09 16:19:32 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: correct for clock reset When going to NULL, we reset the ringbuffer so that it starts beck from 0. We also make sure that the clock is updated with the elapsed time so that it alsways increments even when the ringbuffer goes back to 0. When this happened we need to adjust the sample position for the reset ringbuffer. Fixes #594136 2009-09-09 16:17:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.h: baseaudiosink: whitespace fixes 2009-09-09 16:16:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: add more debug 2009-09-09 10:25:33 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/mixer.h: whitespace fixes 2009-09-08 17:59:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: videosink: add "show-preroll-frame" property Add a property to disable rendering of video frames during preroll. This will only work for videosinks that use the new ::show_frame() vfunc instead of overriding basesink's preroll and render vfuncs directly. API: GstVideoSink:show-preroll-frame 2009-09-08 17:43:26 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: ximagesink, xvimagesink: use new GstVideoSink::show_frame() vfunc 2009-09-08 18:19:19 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/video/gstvideosink.c: * gst-libs/gst/video/gstvideosink.h: video: add GstVideoSinkClass::show_frame() Add ::show_frame() vfunc which maps to basesink's ::preroll and ::render vfuncs and add some gtk-doc chunks. API: GstVideoSinkClass::show_frame() 2009-09-08 16:00:47 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/interfaces/navigation.c: navigation: don't do stuff inside g_return_val_if_fail() statements Or it will all fall apart if someone compiles with -DG_DISABLE_ASSERT. 2009-08-31 20:24:22 +0200 Havard Graff <havard.graff@tandberg.com> * gst-libs/gst/interfaces/navigation.c: navigation: Fix compiler warning with MSVC Fixes bug #594275. 2009-08-31 20:31:56 +0200 Havard Graff <havard.graff@tandberg.com> * gst-libs/gst/rtp/gstbasertpdepayload.c: basertpdepayload: fix event forwarding 2009-08-31 20:36:37 +0200 Havard Graff <havard.graff@tandberg.com> * gst-libs/gst/rtp/gstrtcpbuffer.c: rtcpbuffer: add missing break in handling of GST_RTCP_TYPE_PSFB Fixes #594258 2009-09-08 13:02:46 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: fix whitespace 2009-09-08 12:59:20 +0200 Håvard Graff <havard.graff@tandberg.com> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: improve slave skew resync The old one did the mistake of not actually advancing the ringbuffer, it just adjusted the segbase, introducing the whole lenght of the ringbuffer as an extra delay in the pipeline. Also make sure that the resync can never go back in time, producing the same timestamps that has already been produced, as this can cause severe problems for sinks and other synching mechanisms. Fixes #594256 2009-09-07 17:13:12 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: disable typefinder for headerless flac Disable headerless flac typefinder as long as it happily typefinds anything including /dev/urandom as flac and as long as it's not particularly useful given that such streams don't really exist in the wild. Also fix up some comments so that gtk-doc doesn't complain about them. 2009-09-06 15:21:43 +0300 René Stadler <mail@renestadler.de> * sys/ximage/ximagesink.c: ximagesink: fix small memory leak when setting window title 2009-09-06 01:42:42 +0300 René Stadler <mail@renestadler.de> * sys/xvimage/xvimagesink.c: xvimagesink: fix small memory leak when setting window title 2009-09-05 13:55:27 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * .gitignore: introspection: Add *.gir and *.typelib to .gitignore 2009-09-05 13:46:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/video/Makefile.am: introduction: Fix out-of-tree build 2009-09-05 13:13:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/rtsp/Makefile.am: rtsp: Fix introspection build by ordering sources/headers in dependency order 2009-09-05 13:09:17 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/Makefile.am: audio: Remove debug echo 2009-09-05 13:08:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/Makefile.am: audio: Fix build of introspection data by using dependency order for the headers/sources 2009-09-05 12:31:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: introspection: Strip Gst prefix from all types/functions 2009-09-05 11:49:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/netbuffer/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/video/Makefile.am: introspection: Fix build if gir-repository is not installed 2009-09-05 11:37:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/Makefile.am: video: Add gobject-introspection support 2009-09-05 11:35:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/tag/Makefile.am: tag: Add gobject-introspection support 2009-09-05 11:34:11 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/sdp/Makefile.am: sdp: Add gobject-introspection support 2009-09-05 11:31:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/pbutils/Makefile.am: libs: Add nodist headers and sources to the introspection files 2009-09-05 11:28:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/rtsp/Makefile.am: rtsp: Add gobject-introspection support 2009-09-05 11:25:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/rtp/Makefile.am: rtp: Add gobject-introspection support 2009-09-05 11:23:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/riff/Makefile.am: riff: Add gobject-introspection support 2009-09-05 11:20:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/pbutils/Makefile.am: pbutils: Add gobject-introspection support 2009-09-05 11:17:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/netbuffer/Makefile.am: netbuffer: Add gobject-introspection support 2009-09-05 11:15:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/Makefile.am: interfaces: Add gobject-introspection support 2009-09-05 11:04:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/fft/Makefile.am: fft: Add gobject-introspection support 2009-09-05 11:01:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/cdda/Makefile.am: cdda: Add gobject-introspection support This is disabled for now until gobject-introspection is fixed 2009-09-05 10:50:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/audio/Makefile.am: audio: Add gobject-introspection support 2009-09-05 10:40:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * gst-libs/gst/app/Makefile.am: app: Add gobject-introspection support 2009-09-05 10:20:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 00a859e to 19fa4f3 2009-09-04 15:48:06 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefind: fix midi typefinding We already have a audio/midi typefinder so don't override it with the midi in RIFF typefinder or else we fail to detect plain midi files. 2009-09-04 11:29:55 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: do buffering for more uris Add ssh://, ftp://, sftp://, myth:// to the list of uris that require buffering. Fixes #594020 2009-09-04 07:36:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add typefinder for Midi inside RIFF This is a standard Midi file format that should be supported by all Midi decoders and also has the mimetype audio/mid according to the Midi specification homepage. Fixes bug #594094. 2009-09-03 18:53:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: add some debugging 2009-09-03 17:53:47 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: handle gaps Add various conversion functions between time<->bytes<->rtptime that will be used later on. Refactor the min/max packet length code so that it can be used for both sample/frame based payloaders. Cache the returned values. code cleanups. When we discover a DISCONT buffer, make the outgoing RTP timestamps have the same gap as the GStreamer timestamps gap. 2009-09-03 14:13:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: fix frame duration calculations Fix the calculation of the frame duration and rtp timestamps. Add some debugging 2009-09-03 14:13:12 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: rtppay: add some debugging 2009-09-02 19:49:57 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: use offsets for RTP timestamps Have a custom sample/frame function to generate an offset that the base class will use for generating RTP timestamps. This results in perfect RTP timestamps on the output buffers. Refactor setting metadata on output buffers. Add some more functionality to _flush(). Handle DISCONT on the input buffers and set the marker bit and DISCONT flag on the next outgoing buffer. Flush the pending data on EOS. 2009-09-02 13:13:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: move function around 2009-09-02 13:12:28 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: fix sample duration calculation 2009-09-02 12:24:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppay: more refactoring Unify the sample/frame buffer handling code by making the functions plugable. 2009-09-02 12:03:27 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: audiortppayload: refactor some more Refactor getting the packet min/max size and alignment code. Refactor converting bytes to time. change some variable to something shorter. 2009-09-02 10:46:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: * win32/common/libgstrtp.def: audiortppayload: refactor and cleanup Always use the adapter when we need to fragment the incomming buffer. Use more modern adapter functions to avoid malloc and memcpy. The overall result is that the code looks cleaner while it should be equally fast and in some case avoid a memcpy and malloc. Use the adapter timestamping functions for more precise timestamps in case of weird disconts. Cache some values instead of recalculating them. Add gst_base_rtp_audio_payload_flush() to flush a certain amount of bytes from the internal adapter. API: GstBaseRTPAudioPayload::gst_base_rtp_audio_payload_flush() 2009-09-03 16:56:55 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: Update common 2009-09-03 11:29:23 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppay: add property to disable perfect RTP time Add a property to disable the generation of perfect RTP timestamps. By default it is active. API: GstBaseRTPPayload::perfect-rtptime 2009-09-02 19:47:26 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: basertppay: allow subclasses to influence RTP time Allow subclasses to use the OFFSET field on RTP buffers to influence the way in which RTP timestamps are generated. Usually timestamps are created from the GStreamer timestamps on the buffer, which could result in imperfect RTP timestamps. 2009-09-02 19:44:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.h: basertppay: add macro to cast 2009-09-01 18:26:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiopayload: code cleanups 2009-09-01 18:08:14 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: audiortppayload: don't check adapter the adapter is never NULL so we don't need to check it. Use _scale functions to avoid overflows. 2009-09-03 00:14:02 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * gst/typefind/Makefile.am: * gst/typefind/gsttypefindfunctions.c: typefinding: move gio-based xdg mime typefinder from -bad to -base Its purposes is mainly to avoid false positives (e.g. mp3 typefinder reporting a 20% probability and somesuch). Won't be registered if the gio plugin has been disabled via ./configure --disable-gio. 2009-09-01 15:06:51 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: GstAdapter is not a GstObject and should be freed with g_object_unref 2009-09-01 15:02:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * sys/v4l/v4lsrc_calls.c: v4lsrc: fix timestamping for when we do not have a clock yet Should fix #559049. 2009-09-01 14:30:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * sys/v4l/v4lsrc_calls.c: v4lsrc: don't log not-yet-initialised integer value 2009-09-01 14:28:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * sys/v4l/v4lsrc_calls.c: v4lsrc: avoid unnecessary run-time type checks in custom buffer finalize And reflow code to be more indent friendly. 2009-09-01 10:39:52 +0200 Jonas Holmberg <jonas.holmberg@axis.com> * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: basertppayload: Make instance init faster by not reading /dev/urandom 3 times ... which is the default seed when creating a new GRand. Because GLib in older versions used buffered IO this would take a lot of time. Instead use the global GRand for getting random numbers and keep the three instance GRand for backward compatibility with a simple seed. Fixes bug #593284. 2009-08-31 22:48:01 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: improve caps filter functionality. Fixes #590146. Also use the capsfilter if there is no src-peer as the caps constrain what we can do. Don't create any_caps as a default, as we check for NULL to skip the filtering. This is a (small) performance regression as we always intersect otherwise. 2009-08-31 11:10:55 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Post missing plugin messages before any error messages 2009-08-28 19:06:57 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/cdda/gstcddabasesrc.c: cddabasesrc: safely handle the indexes 2009-08-28 19:06:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstrtsp.def: def: add new rtsp symbols 2009-08-28 14:08:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.h: basertppayload: whitespace fixes. 2009-08-27 18:59:49 +0200 Marc-André Lureau <mlureau@flumotion.com> * gst/gdp/gstgdppay.c: Bug 593035 - set IN_CAPS for streamheader buffer 2009-08-26 16:56:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: * gst/playback/gststreamselector.c: playbin: The internally linked pad of the selector might be NULL in some cases 2009-08-26 16:45:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: * gst/playback/gststreamselector.c: playbin: Fix iterate internal linked pads functions for the stream selectors This now used the new gst_iterator_new_single() function and as a side effect fixes bug #592864. 2009-08-26 09:08:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-read.c: riff: Add support for AVF files AVF is valid RIFF but has AVF0 has first fourcc instead of RIFF. Fixes bug #593117. 2009-08-26 09:08:12 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Detect AVF files as RIFF files too AVF is valid RIFF but has AVF0 as first fourcc instead of RIFF. Partially fixes bug #593117. 2009-08-21 11:51:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/audioresample.c: audioresample: Add unit test for checking for timestamp drifts This also checks for perfect timestamping and offsetting. 2009-08-21 10:11:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/audioresample/gstaudioresample.c: audioresample: Fix drain processing In case we have to convert internally don't process output length input samples but history length input samples. 2009-08-21 10:02:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/audioresample.c: audioresample: Improve debugging a bit in the unit test 2009-08-21 10:00:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/audioresample/gstaudioresample.c: audioresample: On the first buffer we need discont handling Otherwise we won't get upstream timestamps and everything and all output buffers would have -1 timestamps. 2009-08-21 08:23:39 +0400 Руслан Ижбулатов <lrn1986@gmail.com> * configure.ac: * gst/subparse/gstsubparse.c: subparse: Remove dependency on regex.h as it's not used anyway Fixes bug #592544. 2009-08-21 06:58:31 +0200 Kipp Cannon <kcannon@ligo.caltech.edu> * gst/audioresample/gstaudioresample.c: audioresample: Fix buffer overflow when pushing the drain 2009-08-21 06:57:58 +0200 Kipp Cannon <kcannon@ligo.caltech.edu> * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: audioresample: Fix timestamp drift Fixes bug #591934. 2009-08-25 23:44:50 +0400 Руслан Ижбулатов <lrn1986@gmail.com> * gst/rawparse/Makefile.am: resindvd, rawparse: fix LDFLAGS for gst-plugins-base libs Fixes #593063. 2009-08-24 11:34:35 -0700 David Schleef <ds@schleef.org> * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstogmparse.c: * ext/pango/gsttextrender.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/playback/gstinputselector.c: * gst/playback/gststreamselector.c: * gst/subparse/gstsubparse.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsrc.c: * sys/v4l/gstv4lsrc.c: Remove Ronald Bultje from Authors field Replaced with "GStreamer maintainers <gstreamer-devel@lists.sourceforge.net>" or just removed, depending on the number of other authors. 2009-08-24 15:06:28 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: fix refcounting of _get_sink() g_value_set_object() increases the refcount of the sink, which is not needed because the object should already be refcounted. Make sure this is always the case and use g_value_take_object(). Fixes: #592884 2009-08-24 14:39:16 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspdefs.c: rtsp: Mark Transport as supporting multiple values. 2009-08-24 13:58:17 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspmessage.h: rtsp: Added missing Since tags. 2009-08-24 13:27:55 +0200 Eero Nurkkala <ext-eero.nurkkala at nokia.com> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: Improve audiosink startup performance When we start the ringbuffer, immediatly continue processing samples if the writer prepared some for us. Fixes #545807 2009-08-17 11:53:43 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Added new API for sending using GstRTSPWatch. The new API to send messages using GstRTSPWatch will first try to send the message immediately. Then, if that failed (or the message was not sent fully), it will queue the remaining message for later delivery. This avoids unnecessary context switches, and makes it possible to keep track of whether the connection is blocked (the unblocking of the connection is indicated by the reception of the message_sent signal). This also deprecates the old API (gst_rtsp_watch_queue_data() and gst_rtsp_watch_queue_message().) API: gst_rtsp_watch_write_data() API: gst_rtsp_watch_send_message() 2009-08-17 11:46:32 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Made gst_rtsp_watch_queue_data() thread safe. 2009-06-17 15:37:53 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Added gst_rtsp_connection_set_http_mode(). With gst_rtsp_connection_set_http_mode() it is possible to tell the connection whether to allow HTTP messages to be supported. By enabling HTTP support the automatic HTTP tunnel support will also be disabled. API: gst_rtsp_connection_set_http_mode() 2009-06-16 19:35:23 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Allow gst_rtsp_connection_do_tunnel() to just setup decoding context. If the second connection passed to gst_rtsp_connection_do_tunnel() is NULL then just setup the base64 decoding context for the first connection. 2009-06-16 19:04:54 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Write as much as possible in gst_rtsp_source_dispatch(). Try to write as much as possible if there are multiple messages queued. 2009-06-16 18:38:02 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Add error_full callback to GstRTSPWatchFuncs. The error_full callback is similar to the error callback, but allows for better error handling. For read errors a partial message is provided to help an RTSP server generate a more correct error response, and for write errors the write queue id of the failed message is returned. 2009-08-17 18:29:17 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Made read_line() support LWS. Rewrote read_line() to support LWS (Line White Space), the method used by RTSP (and HTTP) to break long lines. Also added support for \r and \n as line endings (in addition to the official \r\n). 2009-08-20 14:12:50 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: Do not split headers which should not be split. From RFC 2068 section 4.2: "Multiple message-header fields with the same field-name may be present in a message if and only if the entire field-value for that header field is defined as a comma-separated list [i.e., #(values)]." This means that we should not split other headers which may contain a comma, e.g., Range and Date. 2009-08-20 14:12:09 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Parse WWW-Authenticate headers correctly. Due to the odd syntax for WWW-Authenticate (and Proxy-Authenticate) which allows commas both to separate between multiple challenges, and within the challenges themself, we need to take some extra care to split these headers correctly. 2009-06-17 21:46:27 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Improve parse_line(). Make parse_line() handle keys with multiple values on one line correctly. 2009-06-17 23:15:23 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Rewrote setup_tunneling(). Rewrote setup_tunneling() to use normal GstRTSPMessages instead of hard coded strings and duplicates of the message parsing code. 2009-08-24 10:20:16 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: Rewrote gen_tunnel_reply(). Rewrote gen_tunnel_reply() to generate a normal GstRTSPMessage rather than a hard coded string. 2009-08-24 10:19:35 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Ignore the Content-Length for POST requests. The Content-Length for POST requests with an x-sessioncookie header should be ignored as the length is bogus and only there to fool proxies. 2009-06-17 20:52:48 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Normalize lines (remove extra whitespace) before parsing. 2009-06-10 13:11:31 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Made parse_string() return a result. This will catch parsing errors when a too long string is received. 2009-06-10 11:43:31 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Improved parsing of messages. Do not abort message parsing as soon as there is an error. Instead parse as much as possible to allow a server to return as meaningful an error as possible. 2009-06-09 17:54:20 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: rtsp: Added support for HTTP messages 2009-06-09 16:22:17 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Added gst_rtsp_connection_create_from_fd(). API: gst_rtsp_connection_create_from_fd() 2009-06-09 15:27:17 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Add initial buffer support. The initial buffer contains data for a connection which should be used before starting to actually read anything from the socket. 2009-08-24 13:15:06 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsink.c: appsink: don't block in paused When we are asked to unlock we should either leave the render function or call the wait_preroll method to release the stream lock. Fixes #592657 2009-08-24 13:06:36 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: docs: fix includes for appsrc/appsink 2009-08-24 11:24:27 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: Add support for the Authentication-Info header. The Authentication-Info header is defined in RFC 2617 (Digest Access Authentication). 2009-08-20 13:11:07 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggmux.c: * tests/check/pipelines/oggmux.c: oggmux: don't drop the streamheader field from the output caps Revert previous 'fix' for bug #588717 and fix it properly, whilst maintaining the streamheader field on the output caps. Also make sure we don't leak header buffers we couldn't push when downstream is unlinked. Add unit test for the presence of the streamheader field on the output caps and for the issue from bug #588717. 2009-08-18 21:45:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstinputselector.c: * gst/playback/gststreamselector.c: streamselector/inputselector: Use iterate internal links instead of deprecated get internal links 2009-08-19 09:31:51 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Avoid duplicated headers. Remove any existing Session and Date headers before adding new ones when sending a request. This may happen if the user of this code reuses a request (rtspsrc does this when resending after authorization fails). 2009-08-18 16:49:58 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Corrected the HTTP digest authorization computation. Do not use sizeof() on an array passed as an argument to a function and expect to get anything but the size of a pointer. As a result only the first 4 (or 8) bytes of the response buffer were initialized to 0 in auth_digest_compute_response() which caused it to return a string which was not NUL-terminated... 2009-08-18 11:15:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: Also send SEEK events directly to a subpicture sink 2009-08-18 08:39:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: If a custom text sink is used, send events to it too Before, SEEK events would be sent to the video sink, which wouldn't be linked in any way to the subtitle part of the pipeline and subparse would never see the SEEK event. This would then seek the audio/video but the subtitles would continue from the old position instead. Fixes bug #591664. 2009-08-18 08:20:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Make missing plugins emit a warning message, not an error message The problem with an error message is, that it will stop playback completely while it could be that only a audio decoder plugin is missing and the video could be played with the available plugins. See bug #591677. 2009-08-13 17:42:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Post a correct error message for unknown types Before we had STREAM/WRONG_TYPE but it's really CORE/MISSING_PLUGIN because a plugin is missing and nothing else is wrong. Also make it an error instead of a warning. Really fixes bug #591677. 2009-08-13 15:48:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Post a missing plugin message additional to the error message on unknown types Fixes bug #591677. 2009-08-13 10:59:35 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaysink.c: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: playbin2: fix error message string Fixes #591577. 2009-08-05 15:38:32 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst-libs/gst/riff/riff-read.c: riff: align API doc of gst_riff_parse_chunk with reality 2009-08-05 15:36:30 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: avoid assertion failure on empty/NULL caps 2009-08-12 12:09:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Also detect SVG by the <svg> starting tag Not all SVG images have the DOCTYPE specified. 2009-08-10 20:18:24 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: don't use GLib-2.18 function g_checksum_reset() was added only in GLib 2.18, but we still require only 2.16, so work around that if we only have 2.16. Fixes #591357. 2009-08-10 15:40:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/pipelines/streamheader.c: streamheader: Fix caps leak in the vorbisenc unit test 2009-08-10 14:14:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/pipelines/streamheader.c: checks: fix stream header unit test hanging in gst_task_cleanup_all() Set pipelines to NULL state and unref when done. 2009-08-10 10:17:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/md5.c: * gst-libs/gst/rtsp/md5.h: rtsp: Use GLib's GChecksum instead of our own MD5 implementation 2009-08-10 03:46:39 +0300 Mart Raudsepp <leio@gentoo.org> * gst-libs/gst/interfaces/navigation.c: navigation: Fix doc blurb typo for gst_navigation_send_key_event 2009-08-09 12:13:16 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: Allow . instead of , as millisecond delimiter in srt subtitles Fixes bug #591207. 2009-08-08 17:51:10 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstaudiosrc.c: * gst/playback/gstinputselector.c: * gst/playback/gststreamselector.c: Revert inlines that cause compiler warnings and are not needed anyway 2009-08-08 15:54:57 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/interfaces/propertyprobe.c: * gst-libs/gst/riff/riff-media.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/video/gstvideofilter.c: * gst-libs/gst/video/gstvideosink.c: gst-libs: Remove dead assignments and resulting unused variables. 2009-08-08 15:54:41 +0200 Edward Hervey <bilboed@bilboed.com> * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gsttextrender.c: * ext/vorbis/vorbisenc.c: ext: Remove dead assignments and resulting unused variables. 2009-08-08 15:54:02 +0200 Edward Hervey <bilboed@bilboed.com> * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstfactorylists.c: * gst/playback/gstinputselector.c: * gst/playback/gstplaysink.c: * gst/playback/gststreamselector.c: * gst/tcp/gsttcpclientsink.c: * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_image.c: * gst/videotestsrc/gstvideotestsrc.c: gst: Remove dead assignments and resulting unused variables 2009-08-08 07:59:16 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/rawparse/Makefile.am: videoparse: Use libgstvideo for everything instead of our own calculations Also make RGB usage easier by providing xRGB, RGBx, etc. formats instead of requiring to set red_mask and friends. 2009-08-07 13:05:42 +0200 Josep Torra <n770galaxy@gmail.com> * docs/design/draft-va.txt: docs: add draft for generic introduction of video acceleration APIs idea 2009-08-07 08:53:44 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: Revert "theora: Convert theoradec to libtheora 1.0 API" This reverts commit f1e142ac9dcfb754d85357b9077d5aee48559dd9. Temporarily revert until we have a workaround for debian/ubuntu packaging failure (see http://bugs.debian.org/528710). 2009-08-07 09:32:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add typefinders for many game sound console formats supported by gme These are AY, GBS, GYM, KSS, SAP and VGM. SPC and NSF already had typefinders. 2009-07-16 11:29:20 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggmux.c: oggmux: fix warning when we're not linked downstream and error out properly Fix caps warning when there's no element linked downstream, and pass not-linked flow return value correctly up the chain, so we error out correctly. Fixes #588717. 2009-07-31 14:59:03 -0700 David Schleef <ds@schleef.org> * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: theora: Convert theoradec to libtheora 1.0 API 2009-08-06 20:47:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: textrender: Fix blitting of text over the output buffer and cairo painting 2009-08-06 09:13:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: textrender: Fix endianness problems (i.e. make it work again on big endian architectures) 2009-07-31 14:27:28 +0300 Stefan Kost <ensonic@users.sf.net> * tests/icles/test-colorkey.c: colorkey-test: fix xsync error 2009-07-06 23:06:50 +0300 Siarhei Siamashka <siarhei.siamashka@nokia.com> * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: support for direct conversion from uyvy422 to rgb formats 2009-07-14 12:33:29 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaysink.c: playbin2: smarter sink selection. Fixes #588523 Don't do fallbacks if application specified a sink element. When doing the fallback use configured default elements instead of hardcoded linux only elements. Improve error messages accordingly. 2009-08-06 12:18:36 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstqueue2.c: queue2: post error message when pausing task if so appropriate If a downstream element returns an error while upstream has already put all data into queue2 (including EOS), upstream will no longer chain into queue2, so it is up to queue2 to perform some EOS handling / message posting in such cases. See #589991. 2009-08-06 12:58:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: change default slave method Set the default slave method to the much better skew slaving algortihm. 2009-08-06 12:01:10 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: make buffer writable Make the input buffer writable before changing its contents. 2009-08-06 09:55:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: fix postscript typefinder probability Two bytes for a rare format hardly warrants MAXIMUM typefinding probability, POSSIBLE seems more appropriate. 2009-08-04 14:55:06 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: pango: Send queries from the srcpad directly to the video sinkpad 2009-08-04 14:32:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/subparse/gstsubparse.c: subparse: Implement POSITION query 2009-08-04 14:29:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: subparse: Implement SEEKING query 2009-08-04 14:14:53 +0200 John Millikin <jmillikin@gmail.com> * configure.ac: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: tag: Add support for ALBUM_ARTIST tag in vorbiscomments and ID3v2 tags Require latest core for this. Fixes bug #590430. 2009-08-04 12:46:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: pango: Add support for xRGB and BGRx formats 2009-08-04 12:22:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: pango: Fix endianness issues from the pangocairo switch cairo's ARGB is in native endianness, i.e. ARGB on big endian architectures and BGRA on little endian architectures. 2009-08-04 12:11:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: pango: Re-add shading support which was dropped by a previous patch 2009-08-04 11:58:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * ext/pango/gsttextoverlay.c: pango: Check if pangocairo supports vertical rendering and fix properties 2009-08-04 11:45:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: textrender: Use PROP_X instead of ARG_X consistently 2009-08-04 11:42:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: pango: Some minor cleanup 2009-08-04 11:36:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: pango: Check for pangocairo instead of pangoft2 2009-08-04 11:35:10 +0200 Young-Ho Cha <ganadist@chollian.net> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: * ext/pango/gsttextrender.c: * ext/pango/gsttextrender.h: pango: Use pango-cairo instead of pango-ft2 pango-cairo will always use the native font rendering backend of the platform and provides better results. Fixes bug #340887. 2009-08-04 10:35:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add SVG typefinder 2009-08-04 10:29:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Add postscript typefinder 2009-07-30 15:08:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Use static caps again for MPEG4 typefinding 2009-07-30 15:05:28 +0200 Arnout Vandecappelle <arnout@mind.be> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Implement better & more flexible MPEG4 typefinding This detects more MPEG4 streams as MPEG4. Fixes bug #556537. 2009-07-30 14:04:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/cdda/gstcddabasesrc.c: cddabasesrc: Allow to specify the device name in the URI The allowed URI scheme is now: cdda://(device#)?track Also allow every combination of uppercase and lowercase characters for the protocol part. Fixes bug #321532. 2009-07-30 12:37:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Restrict width/height to 2^15 - 1 Otherwise integer overflows will happen, resulting in segmentation faults. Fixes bug #590243. 2009-07-29 14:55:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Fix indention of template header 2009-07-29 14:10:35 +0200 Philip Jägenstedt <philipj@opera.com> * gst-libs/gst/app/gstappsrc.c: appsrc: Clarify documentation about caps and linkage Fixes bug #589095. 2009-07-29 07:42:05 +0200 Benjamin Gaignard <benjamin@gaignard.net> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Fix typefinding of SDP files Fixes bug #589574. 2009-07-28 20:50:06 +0200 Kipp Cannon <kcannon@ligo.caltech.edu> * gst/audioresample/gstaudioresample.c: audioresample: Take the output offsets from the input if possible Fixes bug #588915. 2009-07-28 15:54:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Make sure to allocate enough memory for the temporary buffer and fix scaling of odd-height interlaced video. 2009-07-28 15:18:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Fix interlaced scaling for I420 ...and some other minor mistakes in the previous change. 2009-07-28 14:12:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/gstffmpegcodecmap.h: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Include interlacing information in the AVPicture This later allows to handle interlaced AVPicture different than progressive ones which is needed for horizontally subsampled YUV formats, see bug #589242. 2009-07-28 13:55:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: videoscale: Add support for interlaced content videoscale is not mixing content of two seperate fields anymore and does scaling on every field separately. Fixes bug #588761. 2009-08-06 01:44:24 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: back to development -> 0.10.24.1 2009-08-05 02:03:44 +0100 Jan Schmidt <thaytan@noraisin.net> * gst-plugins-base.doap: Add 0.10.24 release to the doap file === release 0.10.24 === 2009-08-05 00:56:58 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Release 0.10.24 2009-08-05 00:38:40 +0100 Jan Schmidt <thaytan@noraisin.net> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-08-01 17:26:23 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: * tests/check/gst/typefindfunctions.c: typefinding: fix detection of fLaC id packet in broken flac-in-ogg There are flac-in-ogg files without the usual flac packet framing and these files just have a 4-byte fLaC ID packet as first packet. We need to recognise the type just from these four bytes if we want oggdemux to recognise these streams correctly. 2009-07-30 14:40:50 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * configure.ac: * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/lv.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.24.5 pre-release 2009-07-29 14:15:53 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: Don't assert on slightly different caps Plugins should not assert on incompatible caps, caps negotiation will fail anyway. 2009-07-30 13:42:21 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: reset pending flush-stop flag in state_changed. (mostly) Fixes #590146. 2009-07-30 09:28:20 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: bump Gtk+ requirement of GUI examples from 2.12 to 2.14 The gio mount example needs GtkMountOperation, which is new in 2.14. 2009-07-27 10:29:27 +0100 Balachandran C <balachandran_c@rediffmail.com> * ext/alsa/gstalsasrc.c: alsasrc: set alsasrc->handle back to NULL when closing device Fixes crashes in gst_alsa_find_device_name() when probing or reading the device-name property (e.g. when doing a dot-file dump). Fixes #589797. 2009-07-24 19:26:40 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gststreamselector.c: playbin: rename GType of stream selector pad to avoid clash with input-selector from -bad Rename the GType of the pads of playbin's internal stream selector element so they don't use the same type name as input-selector's pads. Fixes #589622. 2009-07-24 13:39:55 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.23.4 pre-release 2009-07-24 13:46:15 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/examples/v4l/.gitignore: ignores: Ignore v4l probing example binary 2009-07-24 09:35:38 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefind: recognise Kate spu subtitles as well Recognise spu-subtitles, SUB and K-SPU as valid categories for Kate subtitles as well. 2009-07-24 00:42:16 +0300 Stefan Kost <ensonic@users.sf.net> * common: Automatic update of common submodule From fedaaee to 94f95e3 2009-07-22 14:21:43 +0100 Christian Schaller <christian.schaller@collabora.co.uk> * gst-plugins-base.spec.in: Update spec file with latest changes 2009-07-20 17:28:20 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/interfaces-enumtypes.c: * win32/common/video-enumtypes.c: 0.10.23.3 pre-release 2009-07-20 12:51:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: call send_event directly We can't call gst_element_send_event() from a streaming thread as it gets the state lock. Instead call the send_event method directly until we have a nice API for this in basesrc. Fixes #588746 2009-07-03 04:42:24 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/audio/gstaudiosink.c: audiosink: Add stream-status messages Fixes #587695 2009-07-03 04:41:05 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * gst-libs/gst/audio/gstaudiosrc.c: audiosrc: Add stream-status messages See #587695 2009-07-20 10:53:11 +0200 Edward Hervey <bilboed@bilboed.com> * gst/adder/gstadder.c: gstadder: Don't forget to free pending events on flush/dispose. Fixes #588747 2009-07-12 10:08:12 +0200 Edward Hervey <bilboed@bilboed.com> * tests/check/elements/adder.c: tests/adder: Add stream consistency checking. Fixes #588748 2009-07-12 10:07:34 +0200 Edward Hervey <bilboed@bilboed.com> * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Make sure tags are properly serialized. Fixes #588746 We do this by letting the basesrc base class handle the tags. 2009-07-13 09:28:54 +0200 Edward Hervey <bilboed@bilboed.com> * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: Collect incoming tag events and send them after newsegment. Fixes #588747 2009-07-16 09:32:46 +0200 Edward Hervey <bilboed@bilboed.com> * ext/vorbis/vorbisdec.c: vorbisdec: Check for empty tag strings. Fixes #588724 2009-07-14 17:03:35 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstqueue2.c: queue2: fix leak and improve buffering Keep track of the max requested position and compare this to the write position in the temp file to get the current amount of buffered data. Fix memleak of all incomming buffers. Fixes #588551 2009-07-15 17:40:14 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/Makefile.am: * gst/playback/gstinputselector.c: * gst/playback/gstinputselector.h: * gst/playback/gstplay-marshal.list: * gst/playback/gstplaybin2.c: playbin2: use private copy of input-selector We shouldn't really depend on elements from -bad for stream selection in playbin2, so use a private copy of input-selector until the selector plugin is ready to be moved to -base or -good. Fixes #586356. 2009-07-15 17:26:32 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstinputselector.c: * gst/playback/gstinputselector.h: playback: add private copy of the input-selector from gst-plugins-bad Not hooked up yet though. See #586356. 2009-07-14 19:00:36 +0200 Filippo Argiolas <filippo.argiolas@gmail.com> * tests/examples/v4l/Makefile.am: examples: fix v4l probe example build Fixes bug #588550. 2009-07-14 19:00:10 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.23.2 pre-release 2009-07-14 16:24:10 +0100 Jan Schmidt <thaytan@noraisin.net> * po/LINGUAS: * po/tr.po: Add Turkish translations 2009-07-14 15:31:13 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/elements/adder.c: adder: One more attempt to fix the adder test Give up and discard and recreate the alsasrc after checking it can be opened, due to some strange crash inside alsa when we don't. 2009-07-14 15:06:41 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/elements/adder.c: adder: Perform get_state() in the unit test Wait for the alsasrc to return to NULL after setting it to PAUSED for testing, otherwise it leads to segfaults later on. 2009-07-14 14:39:32 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/elements/adder.c: adder: Don't fail when alsasrc is unavailable Make the liveadder test succeed silently when it can't be completed either because alsasrc is unavailable, or because the device is inaccessible. 2009-07-13 22:51:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/descriptions.c: * gst/typefind/gsttypefindfunctions.c: typefinding: use subtitle/x-kate for Kate subtitle streams and application/x-kate for the rest Differentiate subtitle streams and lyrics/cracktastic/complex streams via the category string in the headers. This seems like a useful distinction to make, and also seems more future-proof. See #525743. 2009-02-21 13:18:10 +0000 Vincent Penquerc'h <ogg.k.ogg.k@googlemail.com> * ext/ogg/gstoggmux.c: oggmux: add Kate caps to the list of accepted types See #525743. 2009-07-13 21:56:46 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gsturidecodebin.c: uridecodebin: treat uri-schemas incasesensitive Treat uri-schemas incasesensitive. This is mandated in rfc2396 section 3.1. Fixes not showing buffering messages e.g. for HTTP://... 2009-07-13 21:54:47 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/interfaces/navigation.c: navigation: simplify docs Make short-desc short - its used in the toc. Strip uneeded markup. 2009-07-13 18:31:15 +0100 Jan Schmidt <thaytan@noraisin.net> * win32/common/libgstnetbuffer.def: * win32/common/libgstvideo.def: win32: Fix exports Remove methods from video base classes that have moved to -bad. Add gst_netaddress_to_string 2009-07-13 17:56:58 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/examples/gio/.gitignore: ignores: ignore the giosrc-mounting example binary 2009-07-13 17:54:40 +0100 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/interfaces/navigation.c: navigation: Add some partial documentation Add a general documentation blurb for the GstNavigation functionality. Still lacks some example code and detail on how to implement it. 2009-07-13 17:52:39 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for Siren codec and make two descriptions non-translatable 2009-07-13 12:23:20 -0400 Olivier Crête <olivier.crete@collabora.co.uk> * common: Automatic update of common submodule From 5845b63 to fedaaee 2009-07-13 18:21:49 +0200 Elliott Sales de Andrade <quantum.analyst at gmail.com> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: riff: add siren to the RIFF parser Add siren7 caps to the RIFF parser. 2009-07-13 14:55:59 +0200 Filippo Argiolas <filippo.argiolas@gmail.com> * configure.ac: * tests/examples/Makefile.am: * tests/examples/v4l/Makefile.am: * tests/examples/v4l/probe.c: v4lsrc: add a simple test case for device probing 2009-07-03 11:38:01 +0200 Filippo Argiolas <filippo.argiolas@gmail.com> * configure.ac: * sys/v4l/Makefile.am: * sys/v4l/gstv4lelement.c: v4lsrc: optional support for device probing with gudev Enumerate v4l devices using gudev if available. Fixes bug #583640. 2009-07-10 23:24:36 +0100 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: add since tags to docs 2009-07-10 21:29:51 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: don't automatically start pipeline in DB Keep the pipeline paused when we detect download buffering. The user has to manually start the pipeline for now because we can't estimate when the buffering will finish or when we have underrun. 2009-07-10 21:01:39 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstqueue2.c: queue2: flush differently, avoiding deadlocks Don't flush the file by closing and opening it but instead use g_freopen. This avoids a deadlock in shutdown because we emit the temp-location property change with the wrong lock held. 2009-07-10 20:25:43 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: add a checkbox for progressive download 2009-07-10 20:24:14 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: Fix template construction Fix the construction of the temporary filename construction as the application name can be NULL and we don't want a separator between the prgname and the template. 2009-07-10 20:04:33 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplay-enum.c: * gst/playback/gstplay-enum.h: * gst/playback/gstplaybin2.c: playbin2: add support for progressive download Add a new playbin2 flag (initially disabled) to enable progressive download buffering in uridecodebin. 2009-07-10 19:59:30 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: add download property Add a download property that will attempt to configure queue2 into progressive download buffering. Make sure we only enable download buffering for quicktime and flv formats. 2009-07-10 19:49:46 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstqueue2.c: queue2: add temp-template property Add a new temp-template property so that queue2 can securely allocate a temporary filename. Deprecate the temp-location property for setting the location but still use it to notify the allocated temp file. 2009-07-10 20:06:28 +0100 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: add a caps-property to avoid to need to plug a capsfilter afterwards Adder can only handle one common format accross the pads. Thus one needed to add a capsfilter afterwards and manage the caps. Now one can simply set the caps on the property. 2009-07-10 18:59:05 +0100 Stefan Kost <ensonic@users.sf.net> * tests/check/elements/adder.c: adder: skip live-seek text if we have no audiosrc, add new test The seek-test needs a real audiosrc. Also add a test that checks that adder is reusable. Finaly handle warnings as warnings to fix a assertion. 2009-07-10 19:16:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiosink.c: gio: Also post a "not-mounted" message from giosink 2009-07-10 17:15:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/gio/giosrc-mounting.c: gio: Remove workaround for playbin2 bug in the sample application The playbin2 bug was #588078. 2009-07-10 17:08:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: Make it possible for READY->PAUSED to succeed after it failed the first time If READY->PAUSED failed in the source element we would've swapped the current and next group already. To allow READY->PAUSED to succeed after the first failure we have to swap the current and next group back again. This also ensure that we're again in the same state as before the failed state change and not at the next group. This was especially a problem for playbin2 pipelines that use the new mounting support in giosrc as the source would fail for READY->PAUSED the first time, the application mounts the location and then tries to go READY->PAUSED again (and this time it would succeed). Fixes bug #588078. 2009-07-10 11:42:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * tests/examples/Makefile.am: * tests/examples/gio/Makefile.am: * tests/examples/gio/giosrc-mounting.c: gio: Add example application that shows how to handle the "not-mounted" message 2009-07-10 11:24:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: gio: Remove the experimental status from the GIO plugin Fixes bug #510417. 2009-07-10 11:24:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: gio: Add documentation for the new "not-mounted" and "file-exists" messages 2009-07-09 13:45:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesrc.c: gio: Make sure that we have the correct stream position when starting 2009-07-08 17:24:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesink.c: gio: Make sure to flush the output stream if it shouldn't be closed Otherwise there might still be unwritten data after the element has stopped. 2009-07-08 17:19:29 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: gio: Don't close the GIO streams for the giostream{src,sink} elements This makes it possible to do something useful with the streams after the element has stopped. Fixes bug #587896. 2009-07-08 17:19:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/pipelines/gio.c: gio: Try to reuse the pipeline with the same stream objects 2009-07-08 17:02:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: gio: Improve the error message if a stream is already closed before usage 2009-07-08 16:55:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiosink.c: gio: Post a custom file-exists message on the bus if the file already exists An application can handle this message, remove the file in question and restart the pipeline again without showing an error. This fixes bug #529300. 2009-07-08 16:54:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiosrc.c: gio: Use OPEN_READ instead of NOT_FOUND if a location is not mounted 2009-07-08 16:50:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiosink.c: gio: Use OPEN_WRITE instead of OPEN_READ as error category in giosink 2009-07-08 15:52:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiosrc.c: gio: Post a custom "not-mounted" message on the bus This allows applications to mount the GFile if possible and restart the pipeline instead of simply giving an error. 2009-07-08 15:08:32 +0200 Philip Jägenstedt <philipj@opera.com> * gst/audioconvert/gstchannelmix.c: audioconvert: Fix compilation when debugging is disabled Fixes bug #587980. 2009-07-07 20:23:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosink.c: * ext/gio/gstgiosink.h: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsink.h: gio: Add vfunc for requesting the stream for the sinks too 2009-07-07 20:21:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: gio: Some more random cleanup 2009-07-07 20:20:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgio.c: * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiosrc.h: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: * ext/gio/gstgiostreamsrc.h: gio: Update my mail address and copyright 2009-07-07 20:18:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsrc.c: * ext/gio/gstgiostreamsrc.h: gio: General clean up and simplification The GInputStreams are now requested by a vfunc from the subclasses instead of relying that the subclass sets it until it's needed. This might also fix bug #587896. 2009-07-06 22:31:12 +0100 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: keep sending newsegments after seeking Adder sends with timestamps from 0 upwards. After seeking we need to send new-segments to get correct positions-queries. 2009-07-06 20:44:00 +0100 Stefan Kost <ensonic@users.sf.net> * tests/check/elements/adder.c: adder: make test more robust Add audioconverts to the live-seeking test to make it negotiate. 2009-06-30 17:19:50 +0300 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: use core performance log category 2009-07-05 21:29:40 +0200 Edward Hervey <bilboed@bilboed.com> * gst/adder/gstadder.c: adder: Call set_flushing(TRUE) for flushing seeks *when* the streaming is stopped. This ensures that collectpads' cookie is properly updated so that when the streaming threads will restart and be checking for the flushing status of all pads there will be no inconsistent state. 2009-07-05 18:01:38 +0200 Hans-Peter Nilsson <hp@gcc.gnu.org> * ext/pango/gstclockoverlay.c: pango: Call tzset() before localtime_r() POSIX and your local friendly ctime(3) manual entry says that localtime_r isn't required to set the state variables that define the current timezone. Indeed, glibc (at least 2.9) doesn't do this for subsequent calls. The effect is that if the system timezone is changed for a running program between two calls to gst_clock_overlay_render_time, it won't be noticed. For glibc, changing the timezone equals /etc/localtime being modified. Fixes bug #587676. 2009-07-01 17:33:14 -0700 David Schleef <ds@schleef.org> * ext/Makefile.am: build: remove spurious schroedinger reference 2009-07-01 10:25:43 -0700 David Schleef <ds@schleef.org> * configure.ac: * ext/Makefile.am: * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoparse.h: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: send basevideo back to remedial school Move basevideo classes and schroedinger plugin to -bad. 2009-07-01 12:54:21 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/netbuffer/gstnetbuffer.h: netaddress: add constant for max len 2009-07-01 12:48:38 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: netbuffer: add gst_netaddress_to_string Add function to serialize a net address to a string. API: GstNetAddress::gst_netaddress_to_string() 2009-06-30 18:44:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: make fd:// uri use buffering too fd:// usually operate in push mode only and are thus suitable for buffering. 2009-06-30 14:46:38 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaybin2.c: * gst/volume/gstvolume.c: volume: include "1.0=100%" in property description 2009-06-30 14:45:51 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaysink.c: playsink: remove unused property defs 2009-06-29 17:11:50 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/multichannel.c: multichannel: rewrite the new doc comment a bit Its part of the audio lib. 2009-06-29 14:34:02 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstplaysink.c: playsink: Avoid a segfault when the video sink fails to start Don't attempt to display the subpictures and segfault when the video sink failed to start (and hence the videochain is NULL). 2009-06-29 15:14:07 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/gstringbuffer.h: ringbuffer: add vmethod to clear the ringbuffer Add a vmethod so that subclasses can be notified when they should clear the data in the ringbuffer. 2009-06-29 14:00:14 +0100 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/riff/riff-media.c: riff-media: Fix the fourcc caps property for VC-1/WMVA The caps property for carrying fourccs is 'format', not 'fourcc' 2009-06-29 12:20:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: include in.h for FreeBSD compat Fixes #586920 2009-06-29 12:20:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstapp.def: defs: add defs for new appsink buffer-list method 2009-06-29 12:14:43 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: appsink: add docs and signals Add docs for the new callback. Add signals for the new buffer-list support. 2009-06-29 10:24:36 +0200 Branko Subasic <branko@lnxbranko2.se.axis.com> * tests/check/elements/appsink.c: Added unit tests for buffer list support in appsink. 2009-06-17 11:12:08 +0200 Branko Subasic <branko@lnxbranko2.se.axis.com> * gst-libs/gst/app/gstappsink.c: Added buffer list support. 2009-06-17 09:23:11 +0200 Branko Subasic <branko@lnxbranko2.se.axis.com> * gst-libs/gst/app/gstappsink.h: Added buffer list support. 2009-06-29 09:36:27 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Include winsock2.h after defining WINVER. Similar to bug #587080. 2009-06-29 09:31:40 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Moved a comment. 2009-06-27 23:23:02 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/multichannel.c: docs: add basic section docs for multichannel and relocate the ones for audio Add section docs for multichannel, so that it has a short desc in the toc too. Move the section docs in adio up, so that the follow the copyright like elsewhere. 2009-06-26 21:11:45 +0300 Stefan Kost <ensonic@users.sf.net> * sys/v4l/gstv4lelement.c: * sys/v4l/gstv4lsrc.c: v4l: open/close device in ready. Simillar change like in v4l2src. This allows probing feature in paused, where streaming is noit yet started. 2009-06-10 17:05:22 +0300 René Stadler <rene.stadler@nokia.com> * gst/playback/gstplaysink.c: playbin2: fix initial volume handling also when reusing the element This is a follow-up to commit 452988, making it work correctly when the audio chain is reused. 2009-06-26 21:48:58 +0400 Руслан Ижбулатов <lrn1986@gmail.com> * gst-libs/gst/rtsp/gstrtspconnection.c: Define WINVER before including any win headers Fixes bug #587080. 2009-06-27 00:50:54 +0300 René Stadler <mail@renestadler.de> * gst-libs/gst/riff/riff-read.c: riff: prevent crash if rounded up tag size exceeds data size When rounding up `tsize' exceeds the remaining buffer size, `size' underflows and an invalid read past the buffer data follows. 2009-06-26 15:17:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/gstbasevideocodec.c: basevideocodec: By default don't allow caps changes on the srcpad This fixed playback of Dirac files with schrodec when upstream wants a different width/height, basevideocodec accepts this and then pushes buffers with new caps but content of the old caps. In the best case this will just result in wrong unit size and a failure in basestransform elements. 2009-06-26 14:11:21 +0100 Jan Schmidt <thaytan@noraisin.net> * autogen.sh: autogen.sh: Use printf instead of 'echo -n'. Check for automake-1.1[01] Check for more automake command variants. Use printf instead of 'echo -n' for portability 2009-06-26 13:41:38 +0100 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From f810030 to 5845b63 2009-06-26 13:14:02 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstscreenshot.c: screenshot: don't leak message 2009-06-25 12:04:59 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: lower the h264 typefinder's probability A NEARLY_CERTAIN is absolutely not warranted given the kind of things it checks for. Even a LIKELY is probably not entirely appropriate. 2009-06-24 15:13:56 +0100 Jan Schmidt <jan.schmidt@sun.com> * common: Automatic update of common submodule From f3bb51b to f810030 2009-06-24 09:48:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for multipart So we get slightly nicer error messages when multipartdemux is missing. 2009-06-23 18:07:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/gstadder.c: adder: only unflush when we flushed before Ass suggested by Stefan Kost: Keep track of when the sinkpad was set to flushing and unflush the pad when an upstream flushing seek failed. 2009-06-23 15:10:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: fix leak when the source fails to change state 2009-06-23 12:40:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/subparse/gstssaparse.c: ssaparse: avoid leaking all buffers 2009-06-22 22:18:03 +0300 Stefan Kost <ensonic@users.sf.net> * tests/check/elements/adder.c: adder: test seek handling in adder This tests seeking on an adder that has a normal and a live source connected. Wheter the current behavior is the desired one needs to be discussed still (see #586033) 2009-06-22 16:17:10 +0300 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: pass the xwindow along to not look at the yet unset var. When we call this from xwindow_new, x(v)imagesink->xwindow is not yet set. 2009-06-22 11:40:33 +0300 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: x(v)imagesink: catch tags and show title in own window Refactor the code that sets the window title. Catch tag-events and use title metadata for the window title. 2009-06-21 19:42:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: Name gaussian noise "gaussian-noise" instead of just "gaussian" Also make all the function arrays constant. 2009-06-21 12:27:37 +0200 Kipp Cannon <kcannon@ligo.caltech.edu> * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: Add support for generating gaussian white noise This patch adds support for stationary white Gaussian noise. The Box-Muller algorithm is used to generate pairs of independent normally-distributed random numbers. Fixes bug #586519. 2009-06-20 23:46:28 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Fix NV12 and NV21 transformations Fix some stride problems, fix the nv12 to nv21 direct transformation, and implement a direct conversion to yuv444 to save CPU. 2009-06-20 22:36:21 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/videotestsrc/videotestsrc.c: videotestsrc: Fix NV12 painting for odd strides/heights 2009-06-19 22:16:43 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/cdparanoia/gstcdparanoiasrc.c: cdparanoia: run-time license is LGPL now that we require cdparanoia 0.10.2 cdparanoia has an LGPL v2.1 license since 0.10.1 and we now require 0.10.2. Finally fixes #531035. 2009-06-19 21:25:54 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/cdparanoia/gstcdparanoiasrc.c: cdparanoia: try to guess a good cache size if it's set to -1 Try to guess from the paranoia-mode setting whether playback or ripping is wanted, and use a smaller cache size if we're likely to be doing playback, to avoid a long startup delay. Since this was the value used in older cdparanoia versions, it should be fine in any case. See #586331. 2009-06-19 11:27:40 +1000 Jonathan Matthew <jonathan@d14n.org> * configure.ac: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/cdparanoia/gstcdparanoiasrc.h: cdparanoia: expose cache size setting This setting was added in cdparanoia 10.2. The default value is good for audio extraction, but lower values (previous versions of cdparanoia used 150) are better for realtime playback. Fixes #586331. 2009-06-19 17:43:03 +0100 Christian Schaller <christian.schaller@collabora.co.uk> * gst-plugins-base.spec.in: Make build of schro plugin conditional 2009-06-19 15:52:34 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: * win32/common/libgstrtp.def: basertppayload: add support for bufferlists Based on patch from Ognyan Tonchev. See #585559 2009-06-19 15:33:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstrtpbuffer.c: rtpbuffer: use new convenience functions New core convenience functions makes the list getters and setters trivial. Maybe even too trivial... 2009-06-18 19:07:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstrtp.def: defs: add new symbol to win32 defs file Based on patches by Ognyan Tonchev. See #585559 2009-06-18 19:04:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: cleanups, add _list_get_seq() too Clean up the docs a little. Add missing _list_get_seq method. Add new symbols to the docs 2009-06-18 18:47:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstrtpbuffer.c: * win32/common/libgstrtp.def: rtp: cleanups Add Since tags to docs Move some code around Add win32 symbols 2009-06-18 17:46:01 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: rtp: add bufferlist support 2009-06-18 18:03:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstrtpbuffer.c: rtp: pass data to macros instead of GstBuffer 2009-06-18 17:42:10 +0100 Jan Schmidt <thaytan@noraisin.net> * win32/common/libgstrtsp.def: win32: Add gst_rtsp_watch_queue_data() to the exports Fix the tests by exporting the new symbol from the win32 dlls 2009-06-18 18:13:22 +0300 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: appname might be NULL Don't set title if appname is unknown. 2009-06-18 17:58:06 +0300 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: set window title from application name 2009-06-09 19:14:00 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: Made the parsing of the RTSP URL scheme more generic. 2009-06-15 13:58:26 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Added gst_rtsp_watch_queue_data(). gst_rtsp_watch_queue_data() is similar to gst_rtsp_watch_queue_message() but allows for queuing any data block for writing (much like gst_rtsp_connection_write() vs. gst_rtsp_connection_send().) API: gst_rtsp_watch_queue_data() 2009-06-09 16:37:09 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Only extract the session ID from RTSP responses. 2009-06-09 19:06:57 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspurl.c: rtsp: Added support for parsing IPv6 addresses in RTSP URLs. 2009-06-09 14:31:18 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Use getaddrinfo() to support both IPv4 and IPv6. 2009-06-17 15:37:53 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Improved base64 decoding in fill_bytes(). The base64 decoding in fill_bytes() expected the size of the read data to be evenly divisible by four (which is true for the base64 encoded data itself). This did not, however, take whitespace (especially line breaks) into account and would fail the decoding if any whitespace was present. 2009-06-17 14:00:23 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: audiosrc: fix get_offset When we need to jump to the most recently captured sample, jump to where the next sample will be written instead of to some old data. Fixes #581460 2009-06-17 13:18:18 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: audiosink: free the ringbuffer when going to NULL Unparent and free the ringbuffer when going to NULL, like we do with the audiosrc element. We can do this now because we correctly manage the time jumping back to 0. 2009-06-17 13:17:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audio: correctly handle short read/writes 2009-05-05 15:37:54 +0300 René Stadler <rene.stadler@nokia.com> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: add some extra logging for buffer timestamps 2009-06-17 11:22:51 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/gstadder.c: adder: more seeking fixes. When a seek failed upstream, make sure the adder sinkpad is set unflushing again so that streaming can continue. We only have a pending segment when we flushed. Set the flush_stop_pending flag inside the appropriate locks and before we attempt to perform the upstream seek. Add some more comments. Use the right lock to protect the flags in flush_stop. See #585708 2009-06-17 07:24:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: Free iterator after removing all groups 2009-06-16 19:38:17 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/gstvideofilter.c: videofilter: Add a default get_unit_size function This returns the correct values for all formats that are handled by GstVideoFormat and makes all the custom get_unit_size functions in many elements unnecessary. 2009-06-16 18:57:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: add Timestamp header field fixes #585994 2009-06-16 18:15:06 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: set smarter target state on uridecodebin Set the target state of the newly added uridecodebins to somthing else that PAUSED so that we keep their state in sync with the playsink state. Fixes #585268 2009-06-16 18:13:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: set the sink flag on the element 2009-06-16 18:09:43 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: add debug message 2009-06-16 14:05:04 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audiosink, audiosrc: do the class_ref()s in the right class_init functions Spotted by Philip Jägenstedt. Hopefully fixes #585970 for real. 2009-06-15 15:39:09 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: audiosink,audiosrc: ref the audio ring buffer class and type in class_init Hack around thread-safety issues in GObject and our racy _get_type() functions (we could easily fix the _get_type() functions, but we still need to hack around the GObject class races until we require a newer GLib version, I think). 2009-06-15 12:57:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: audiosrc: return FALSE when receiving a SEEK event When receiving a seek event, return FALSE as we don't implement seeking. 2009-06-15 11:06:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/seek/seek.c: Don't use deprecated GTK API Fixes bug #585758. 2009-06-15 11:40:00 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: send flush_stop when seeking failed At least do the fix to sent the flush_stop when seeking failed to ensure we keep no pads flushing. before it was send when the seeking worked which is just plain wrong and was not the intention. 2009-06-12 15:17:14 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Use a more consistent naming of GstRTSPRec variables. 2009-06-12 15:11:05 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Call message_sent() callback for all sent messages. Previously the messages_sent() callback was only called for messages which had a CSeq, which excluded all data messages. Instead of using the CSeq as ID, use a simple index counter. 2009-06-14 22:13:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/theora/theoradec.c: * ext/vorbis/vorbisdec.c: oggdemux: post/send tags with the container-format tag For this to work properly, theoradec and vorbisdec need to put tag events received from upstream into the pending_events list so they get pushed out after any newsegment event, not before. 2009-06-14 20:30:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: * tests/old/examples/seek/cdplayer.c: Don't use deprecated GTK API Fixes bug #585758. 2009-06-12 16:31:00 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/adder/gstadder.c: adder: send flush-stop earlier When no flush-stop has been sent by upstream, we have to send one ourselves to continue playback. Do this as soon as the collect function is called instead of after we possibly pushed segment events (that got then flushed out) 2009-06-12 13:55:33 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: add shuttle controls 2009-06-12 13:55:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/stepping2.c: example: fix compile 2009-06-12 13:52:25 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/Makefile.am: examples: build the stepping2 example 2009-06-12 13:52:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: update for new step API 2009-06-12 13:22:47 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: do reverse seeks more accurate For reverse seeking with the accurate flag set, try to be more precise by seeking a little bit after the requested position. 2009-06-11 22:32:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/ogg/gstogmparse.c: * gst/subparse/gstssaparse.c: * gst/subparse/gstssaparse.h: * gst/subparse/gstsubparse.c: * gst/subparse/gstsubparse.h: subparse, ogmparse: post tags with GST_TAG_SUBTITLE_CODEC Make subtitle parsers post a taglist with codec tags, so the application knows what kind of subtitle a subtitle stream is. Fixes #576552. 2009-06-11 19:12:51 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: ringbuffer: handle border cases in resampler 2009-06-11 13:28:20 +0100 Jan Schmidt <thaytan@noraisin.net> * common: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: docs: Update common. Use upload-doc.mak instead of upload.mak 2009-06-11 12:39:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: docs: fix typo 2009-06-11 12:17:16 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: reset accum when dropping samples When we are resampling and we drop samples because we paused, reset the accum counter because it's now invalid. 2009-06-11 11:16:15 +0100 Jan Schmidt <thaytan@noraisin.net> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/video/gstbasevideodecoder.h: docs: Fix a couple of warnings from the docs build. 2009-06-10 21:36:19 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/testchannels.c: Don't include config.h multiple times when build audio testchannel app. Fixes build problem on win32 (#585075). 2009-06-10 16:56:51 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: playbin2/uridecodebin: Fix connection-speed propagation uridecodebin expects the passed connection-speed value in kbps, so we need to divide the value stored in bps by 1000. Also, lower the upper limit on the properties to the value that we can actually store in our internal guint (which is plenty high enough) 2009-06-10 14:37:36 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/subparse/gstsubparse.c: * tests/check/elements/subparse.c: subparse: recognise more subrip timestamp variants Be even less restrictive in what we accept for .srt timestamps when typefinding and parsing subrip subtitles and add a unit test for the 'new' format. Fixes #585197. 2009-06-09 22:00:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtsptransport.h: rtsp: add some more docs 2009-06-09 18:24:55 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: Avoid a compiler warning. 2009-06-09 18:23:28 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: Updated documentation for GstRTSPResult. Moved GST_RTSP_ELAST to be last in the documentation to match the actual enum values. 2009-05-20 17:30:23 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * autogen.sh: autogen: remove -Wno-portability from here as it is in configure.ac now. 2009-06-09 16:28:20 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Plug a memory leak. Free memory related to any partially read and/or written RTSP messages. 2009-06-09 12:09:15 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: no need to cause discont when clipping Remove the discont-when-clipping hack now that basesink provides us with correctly clipped samples when stepping. 2009-06-08 17:26:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: audiosink: don't align when we clip Don't align samples when they were clipped. Not entirely correct but better than nothing for now. 2009-06-08 16:41:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/.gitignore: * tests/examples/seek/stepping2.c: examples: add stepping example in PLAYING Add stepping example in PLAYING, audio is a bit distorted because basesink does not provide good clipping info yet. 2009-06-08 10:25:00 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/pbutils/descriptions.c: pbutils: Add description for hdv/aux-* formats. 2009-06-07 22:20:33 +0400 LRN <lrn1986@gmail.com> * ext/schroedinger/Makefile.am: Added libgstbase to schro's LIBADD Fixes #585079 2009-06-06 02:15:05 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/gstid3tag.c: libgsttag: don't extract genres from empty ID3v1 tags If we don't have any other info, don't try to interpret the genre field. In particular we don't want to interpret a genre of 0 as 'Blues' if no other fields are set and the entire tag is just empty. 2009-06-05 18:13:25 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: make sure varargs are of right type Explicitly cast the variables to g_object_set to their right types. 2009-06-05 16:49:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: increase stream probing queues When we are probing for streams, we want to set the queue size in such a way that we can scan a maximum amount of data without consuming too much memory. Therefore, remove the time limit on the queue and only stop scanning after 2MB of data. See #584104. 2009-06-05 14:06:17 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Fixed a typo. 2009-06-05 14:05:54 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Remove an unused variable. 2009-06-05 13:59:14 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Removed duplicate initialization of conn->writefd. 2009-06-05 13:55:08 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Use #defined status codes. 2009-06-05 13:53:29 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Correct gen_tunnel_reply(). Prevent gen_tunnel_reply() from generating an incomplete response in case an error response code is given. 2009-06-05 10:57:44 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: * win32/common/video-enumtypes.c: configure: remove AC_C_INLINE which is not needed and causes problems with MSVC See #584835. Also update win32 files while we're at it. 2009-06-04 08:57:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: API: Add {audio,video,text}-tags-changed signals Fixes bug #584686. 2009-06-03 20:42:39 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/vorbis/vorbisdec.c: vorbisdec: don't put invalid bitrate values into the taglist Bitrates are stored as 32-bit signed integers in the vorbis identification headers, but seem to be read incorrectly, namely as unsigned 32-bit integers, into the vorbis structure members which are of type long, which makes our check for values <= 0 fail with files that put -1 in there for unset values. 2009-06-03 15:52:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/.gitignore: ignore: add new stepping app to ignore 2009-06-03 15:31:27 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/Makefile.am: * tests/examples/seek/stepping.c: examples: add stepping example. Add an example of using playbin2 and frame stepping to simulate variable rate playback based on a sine wave. 2009-06-03 12:45:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.h: playbin2: also set custom text and subp sinks Set the custom subpicture and text sinks along with the custom audio and video sinks when needed. Fix a little docs blurb too. 2009-06-02 12:10:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: add G_LIKELY because we can 2009-06-02 09:53:05 +0200 Edward Hervey <bilboed@bilboed.com> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: Fix caps for ogg typefinder. 2009-05-29 11:10:07 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: docs: remove some cruft from -sections.txt file 2009-06-01 11:31:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: * tests/examples/seek/seek.c: add framestepping to playbin2 and seek 2009-06-01 09:59:22 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Avoid compiler warnings with -Wextra. 2009-06-01 09:58:27 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: Include gst/gstconfig.h to make sure GST_PADDING is defined. 2009-06-01 09:43:04 +0200 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/sdp/gstsdpmessage.c: sdp: Remove an unused variable. 2009-05-30 14:17:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Add a lot more conversions from/to 16 bit grayscale 2009-05-29 00:09:15 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstplaybin2.c: playbin2: Have playbin recognise PGS subpicture streams Recognise PGS subpicture streams and connect them to the SPU pad in playsink. Unfortunately this fails badly with negotiation errors if the SPU is not recent enough to support the stream. I'm not sure how to add format negotiation in yet. 2009-05-21 23:11:29 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: decodebin/uridecodebin: Recognise subpicture/x-pgs pads and output them. 2009-05-28 20:37:59 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: fix volume handling for audio sinks without "volume" property When using an audio sink without a "volume" property, volume control would only work for the first song. For the next song, we'd try to re-use the existing audio chain, but inadvertently set chain->volume to NULL instead of to the existing volume element. 2009-05-28 17:05:55 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: cosmetic change to avoid unnecessary line breaks Looks nicer and works around gst-indent silliness. 2009-05-28 17:21:35 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: don't lose the ref to the volume element Only release the ref to the volume element when it is controled by a sink. For software volume we never have to fear that it will change. 2009-05-28 15:21:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2: actually use configured audio/video sinks playbin2 inadvertently used autoaudiosink and autovideosink up to now, since it would overwrite the sinks configured via the "audio-sink" and "video-sink" properties with the stream-specific group sinks when configuring the outputs. Those are usually NULL however, so that would overwrite the configured sinks with NULL which makes playbin2 then default to the auto sinks. Fix this by keeping a reference to each configured sink in playbin2 and setting up the right sinks depending on whether there is a stream-specific sink or not. Fixes #584020. 2009-05-27 17:37:38 +0300 Stefan Kost <ensonic@users.sf.net> * tests/examples/seek/seek.c: seek: add volume label and sync with sink volume Look at the volume and have the pulsemixer open at same time. Unfortunately playbin2 does not emit notify on volume right, so this polls for now. 2009-05-27 18:12:10 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: remove leftover elements Remove all of the elements inside decodebin2 when goint to READY and NULL. Makes decodebin2 reusable. Fixes #583750 2009-05-27 15:36:51 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2; release refs to volume/mute properties Release the refs to the volume and mute property elemens before setting the child elements to READY or NULL. Fixes #583318 2009-05-27 12:10:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/gdp/gstgdppay.c: gdppay: set caps on outgoing buffers Set caps on outgoing buffers because NULL caps confuse basetransform. Fixes #583867 2009-05-27 11:08:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/netbuffer/gstnetbuffer.c: netbuffer: also note the order of IP4 addresses IP4 addresses are also stored in network byte order. Make a note of this in the docs. 2009-05-26 22:43:34 +0200 Alessandro Decina <alessandro.d@gmail.com> * ext/theora/theoraparse.c: theoraparse: fix assertions in make_granulepos when using the new theora granulepos mapping. Fixes #583903. 2009-05-26 11:13:35 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: Revert "rtspconnection: don't use GLib-2.16 API, we require only 2.14" This reverts commit 418760cf740332c12c3fd9cf3244af134fa9534b. We now require GLib 2.16. 2009-05-26 15:18:09 +0100 Jan Schmidt <thaytan@noraisin.net> * common: Update common 2009-05-26 15:37:18 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/netbuffer/gstnetbuffer.c: netbuffer: document that the port is network order Document the fact that we store the port number in network order in GstNetAddress and that the caller should byteswap appropriately. 2009-05-26 15:23:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * gst/videoscale/vs_image.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: videoscale: Add support for 16 bit grayscale in native endianness 2009-05-26 14:58:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Add support for 16 bit grayscale in little/big endian 2009-05-26 14:38:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: videotestsrc: Add support for 16 bit grayscale in native endianness 2009-01-21 12:33:59 +0100 Andy Wingo <wingo@oblong.net> add can-activate-pull property to baseaudiosink * gst-libs/gst/audio/gstbaseaudiosink.c: Add can-activate-pull property to baseaudiosink. 2009-05-26 13:14:07 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: fix boundary case for seeking. When we have exactly 0 bytes left to search, make sure we stop instead of going into an infinite loop. 2009-05-26 11:11:03 +0200 Bastien Nocera <hadess at hadess.net> * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/cdda/sha1.c: * gst-libs/gst/cdda/sha1.h: cddabasesrc: Remove copy of sha1 digest Remove our copy of sha1 digest now that we depend on glib 2.16. Fixes #536313 2009-05-25 17:54:01 +0100 Christian Schaller <christian.schaller@collabora.co.uk> * gst-plugins-base.spec.in: Update spec file 2009-05-23 00:33:04 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: * win32/common/libgstvideo.def: video: don't expose internal gst_adapter_get_buffer() helper function If it's really needed it should go into GstAdapter in core. 2009-05-22 21:29:51 -0700 David Schleef <ds@schleef.org> * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Fix memleak 2009-05-22 21:27:58 -0700 David Schleef <ds@schleef.org> * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroparse.c: schro: Fix usage of adapter_masked_scan_uint32 Because *somebody* changed the API without telling me. 2009-05-22 21:25:06 -0700 David Schleef <ds@schleef.org> * ext/schroedinger/gstschro.c: schro: Change package name to GST_PACKAGE_NAME 2009-05-22 17:34:10 -0700 David Schleef <ds@schleef.org> * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Add preset interface to encoder 2009-05-22 17:31:14 -0700 David Schleef <ds@schleef.org> * gst/audioresample/gstaudioresample.c: Run liboil benchmark multiple times The statistics function requires multiple runs, otherwise it causes a divide by zero error. 2009-05-22 19:36:06 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * m4/gst-fionread.m4: m4: fix 'suspicious cache value' warning for gst-fionread.m4 .. here as well (should really be moved to common, but I'm too lazy). 2009-05-22 17:41:50 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/vorbis/vorbisdec.c: vorbisdec: detect and report errors better Check the return values of a couple more libvorbis functions and post an error when something is wrong instead of continuing and crashing. 2009-05-22 15:49:14 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaysink.c: playbin2: fix initial volume and mute handling Use two flags to remember volume/mute changes at times when we don't have the audiochain yet (e.g. construction). Only set values when they were actualy changed. This makes pulseaudio's stream restore functional. 2009-05-22 10:19:51 +0100 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From d3a8fab to 888e0a2 2009-05-22 09:03:22 +0100 Jan Schmidt <thaytan@noraisin.net> * win32/common/libgstvideo.def: win32: Remove gst_adapter_masked_scan_uint32 from the exports 2009-05-21 10:48:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: audiosink: improve debug message 2009-05-19 18:10:55 -0700 Michael Smith <msmith@songbirdnest.com> * gst-libs/gst/tag/gstid3tag.c: gstid3tag: Don't extract a track number unless present. In ID3v1, a track number is present only if byte 125 is null AND byte 126 is non-null. If the track number is not present, don't add a track number tag with value 0. 2009-05-20 00:48:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: videoutils: remove adapter methods Remove adapter methods now that they are in core. 2009-05-20 00:42:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstvideo.def: defs: add new symbols 2009-05-19 17:47:34 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: autogen: pass -Wno-portability to automake to suppress warnings GNU make is needed. 2009-05-19 02:28:20 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/libs/.gitignore: gitignore: remove bogus *.sgml wildcard - these files are tracked in git 2009-05-19 18:41:58 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/tcp/gsttcpclientsrc.c: tcpclientsrc: this is not a live source Don't mark us as a live source because we are not. 2009-05-19 18:41:02 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: only send flush_stop when seek failed This is still not the ultimate fix. Added some comment to explain the troubles. 2009-05-19 17:17:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: audiosink: return the return value of wait_preroll Return the value that _wait_preroll() returned instead of always WRONG_STATE. 2009-05-19 16:45:56 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: * gst/adder/gstadder.h: adder: send flush_stop to match flush_start Adder was relying that something else sends a flush stop. When using adder with a livesource it was not getting a flush_stop and thus all pads downstream where keept flushing. Mark a pending flush_stop and send it when we are working on the new segment back in the streaming thread. 2009-05-19 16:02:44 +0300 Stefan Kost <ensonic@users.sf.net> * tests/examples/seek/seek.c: seek: ui improvements Repaint the window black on expose, as this looks nicer when resizing or using the expander. Also show time after slider, as this saves a whole line (nice on small displays). 2009-04-29 18:36:17 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstdecodebin.c: decodebin: use iterators instead of list The list api is deprecated. Use threadsafe iterators instead. 2009-05-19 15:35:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: configure caps on decodebin2 Implement the caps property by setting the configured caps on new decodebin2 objects. Fixes #582749 2009-05-19 15:34:38 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: avoid some _caps_ref in some cases Only mess with the caps refcount when we configure different caps. 2009-05-19 15:27:12 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: fix potential caps leak Free the user-configured caps in finalize. 2009-05-19 15:20:27 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: add queue after cdda:// Add a queue2 after the raw output pads of certain sources such as those for uris like cdda:// No tuning of the queue is done yet as the defaults seem to work fine for me. Fixes #582528 2009-05-19 12:45:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: don't loop when at EOS When we try to read the last page, don't try to read past the upper boundary, as this might cause endless loops. See #582942 2009-05-19 11:20:19 +0200 Edward Hervey <bilboed@bilboed.com> * gst/audioresample/gstaudioresample.c: audioresample: Don't drain remaining buffers after a flush. If we were resetted (due to a flush), we can not drain the remaining buffers since they would be pushed before a valid new newsegment event. 2009-05-18 22:29:07 -0700 Michael Smith <msmith@syncword.(none)> * ext/theora/theoradec.c: theoradec: for 4:2:2, use Y42B (planar) rather than a packed format. 2009-05-19 01:13:34 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: add more logging and return value checking 2009-05-19 01:11:45 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: handle the return value from iterator_fold 2009-05-19 01:03:44 +0300 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: use the pad in logging as objects Helps to differenciate between source and sinks pads. 2009-04-21 22:54:19 +0300 Stefan Kost <ensonic@users.sf.net> * tests/examples/seek/seek.c: seek: use parser for mp3 and rename variable 2009-05-18 11:08:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: add playbin2 options in expander Add the playbin2 stream selection options inside an expander to preserve some space on screen. 2009-02-10 15:29:10 -0800 David Schleef <ds@schleef.org> * gst/videotestsrc/videotestsrc.c: videotestsrc: Add support for v210 and v216 formats 2009-05-15 16:21:15 -0700 David Schleef <ds@schleef.org> * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoparse.c: video: remove // comments 2009-05-15 16:18:18 -0700 David Schleef <ds@schleef.org> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add Y444, v210, v216 formats 2009-05-15 16:12:37 -0700 David Schleef <ds@schleef.org> * configure.ac: * ext/Makefile.am: * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schro: Move schro plugin from Schroedinger Previous history is in Schroedinger. Depends on, and is an example of using, GstBaseVideo* base classes. Code was reindented, and an #ifdef HAVE_ENCODER removed. 2009-05-15 10:23:08 -0700 David Schleef <ds@schleef.org> * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoparse.h: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: video: Copy BaseVideo classes from Schroedinger 2009-05-15 23:05:45 +0200 Arnout Vandecappelle <arnout@mind.be> * gst/tcp/gstmultifdsink.c: multifdsink: add num-fds property multifdsink::num-fds 2009-05-15 20:36:29 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/descriptions.c: pbutils: add descriptions for 3GP, JPEG 2000 and Motion JPEG 2000 2009-05-14 11:44:27 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/vorbis/vorbisenc.c: vorbisenc: Implement Preset interface 2009-05-14 11:43:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/theora/theoraenc.c: theoraenc: Implement Preset interface 2009-05-14 11:41:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/ogg/gstoggmux.c: oggmux: Implement Preset interface 2009-05-14 21:37:22 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstplaysink.c: playbin2: Fix cdda:// playback Don't send async-start when the playsink has already been configured before changing state. 2009-05-14 01:31:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: require core CVS for gst_adapter_prev_timestamp() which is used in the libvisual plugin. 2009-04-22 18:34:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * AUTHORS: AUTHORS: fix my email 2009-04-22 18:35:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstaudioclock.c: audioclock: make our internal time monotonic Make the internal time increase monotonically. 2009-05-13 19:27:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/libvisual/visual.c: visual: remove next_ts variable We can remove the next_ts variable as we don't use it anymore. 2009-05-13 19:24:15 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/libvisual/visual.c: visual: use new adapter timestamp code Use the new adapter timestamp tracking code to make things easier and produce vastly better output timestamps. 2009-05-13 01:35:07 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * po/Makevars: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: avoid conflicts of local *.po files with files in git Make it so that filenames and line numbers are only stored in the *.pot file (which is not in git), but not in the individual *.po files. This information is hardly useful for translators in our case, and it should avoid the constant conflicts of local *.po files with the ones in git which are caused by the source files changing and the line numbers being updated. This commit might cause one last merge conflict for you, which you can work around with "git checkout po/*.po" before merging or pulling. After that there should (hopefully) not be any more local modifications of these files (unless someone committed additions or changes to translated strings and the *.po files haven't been updated yet, that is). 2009-05-12 23:51:08 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * tests/check/elements/.gitignore: * tests/check/elements/audioresample.c: tests: fix audioresample unit test on big endian architectures Don't hardcode endianness=1234 in the filtercaps, it will cause pad link failures which will result in the test timing out. 2009-05-12 17:18:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: fix broken enum nick - it should have a hyphen The enum nick should be 'sine-table', not 'sine table'. Technically this is an API/ABI change I guess, but anyone who was using this and didn't report it deserves this. 2009-05-01 01:04:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/audiotestsrc/gstaudiotestsrc.c: audiotestsrc: seek to the requested byte offset, not the expected byte offset 2009-05-01 01:03:06 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: audiotestsrc: support more than just one channel 2009-05-12 15:52:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/propertyprobe.h: propertyprobe: Fix typo in the docs 2009-05-12 12:17:55 +0100 Christian Schaller <christian.schaller@collabora.co.uk> * ext/ogg/gstoggmux.c: * ext/theora/theora.c: * ext/vorbis/vorbis.c: Add ranks to the Oggmuxer, Vorbis encoder and Theora encoder 2009-04-30 16:37:38 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: handle invalid timestamps better Handle buffers with -1 timestamps better by keeping track of the en time of the previous buffer and assuming the -1 timestamp buffer goes right after the previous one. when we have two buffers that are equally good, output the oldest buffer once to minimize latency. don't try to calculate latency when the input framerate is unknown. 2009-04-28 11:37:14 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggmux.c: oggmux: small debug statement in DISCONT 2009-04-28 11:24:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: oggdemux: fix abuse of ogg API, handle broken oggs When we feed the ogg sync layer, we need to feed it contiguous data even if the sync layer did not consume all of it yet. This makes sure that it always finds the next page even for more corrupted files. Use a different read_offset for this purpose. since we now keep track of the sync layer, we don't have to reset after finding a start of a page. Add some more debug info for the error paths. Only reset the sync layer when we perform a seek operation. Avoid failure when the next chain has no bos pages but instead simply ignore it. when we receive unknown page serial numbers mid stream, don't fail but post a warning and hope that we get back on track later. Fixes #579642 2009-04-30 16:41:51 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: make subpictures a raw output format Subpictures are a raw format, we want those pads exposed so that playbin2 can do the subpicture mixing. 2009-04-27 10:15:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: rtpdepay: add some more comments 2009-04-17 10:54:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstaudioclock.c: audioclock: make sure values are ever increasing 2009-05-05 17:17:00 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: make fallback identity silent Set the signal-handoffs to FALSE and silent to TRUE for the fallback identity element so that it consumes less CPU. 2009-04-17 10:57:16 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: playbin2: handle custom audiosinks differently Keep track of the autoplugged custom sinks and configure them in the playsink element when we have collected all streams. Also make sure that we only select one custom sink. When unreffing the internal sink, we don't need to change the state to NULL. 2009-05-12 10:36:25 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: unify custom sink get/set functions Use one function to set/get all of the different sink types. cleanup up the subpicture chain too. Allow setting a custom subpicture sink. 2009-05-11 18:29:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/tunernorm.h: interfaces: Seperate some more struct definitions from typedefs 2009-05-11 15:48:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/navigation.h: * gst-libs/gst/interfaces/videoorientation.h: * gst-libs/gst/interfaces/xoverlay.h: interfaces: Seperate some more struct definitions from typedefs 2009-05-10 17:28:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * win32/common/libgstinterfaces.def: Add new functions to win32 exports 2009-05-10 17:28:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: Add new functions to the docs 2009-05-10 17:25:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: interfaces: API: Add gst_mixer_get_mixer_type() This is a convenience function that returns the mixer_type of the interface struct. 2009-05-10 17:25:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/colorbalance.c: interfaces: Add docs for gst_color_balance_get_balance_type() 2009-05-10 11:17:19 +0200 Marc-Andre Lureau <marcandre.lureau@gmail.com> * autogen.sh: Run libtoolize before aclocal This unbreaks the build in some cases. Fixes bug #582021 2009-05-07 17:38:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: textrender: Correctly initialize the background for ARGB too 2009-05-07 16:59:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: * ext/pango/gsttextrender.h: textrender: Use libgstvideo functions to create caps Also check if downstream wants ARGB always when we get new caps. 2009-05-07 16:52:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: textrender: Don't always use ARGB if downstream supports it but take it's preference 2009-05-07 16:48:08 +0200 Kapil Agrawal <kapil@mediamagictechnologies.com> * ext/pango/gsttextrender.c: * ext/pango/gsttextrender.h: textrender: Add support for ARGB and alignment properties Fixes bug #581571. 2009-05-07 16:42:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextrender.c: textrender: Add ; after GST_BOILERPLATE to fix indention 2009-05-07 15:10:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Use text/uri-list as mimetype instead of ---> for URI lists 2009-05-07 14:59:36 +0200 Arnout Vandecappelle <arnout@mind.be> * gst/typefind/gsttypefindfunctions.c: typefindfunctions: made mp3_type_find less aggressive mp3_type_find could suggest already when only a single valid header was found, if it ran out of data before the end of the next frame. Therefore, ignore the last found frame if it was incomplete. Fixes bug #579692. 2009-05-07 14:48:29 +0200 John Millikin <jmillikin@gmail.com> * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Store cover art in vorbiscomments Fixes bug #513373. 2009-05-07 06:14:18 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/colorbalance.h: interfaces: API: Add gst_color_balance_get_balance_type() This is a convenience function that returns the balance_type of the interface struct. 2009-05-06 17:59:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/colorbalancechannel.h: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/tunerchannel.h: interfaces: Separate struct definitions from typedefs 2009-05-06 14:03:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * pkgconfig/gstreamer-app-uninstalled.pc.in: Fix libdir for uninstalled gstreamer-app library 2009-05-12 01:59:01 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/descriptions.c: pbutils: add description for APE tag caps 2009-05-12 01:35:27 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: bump core requirement to last release as that's more likely to be true than that we need only 0.21.1. 2009-05-12 01:21:57 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * common: * configure.ac: configure: rename CVS -> git in a couple of places 2009-05-12 01:17:53 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: configure: bump GLib requirement to GLib >= 2.16 as per the New Regime (see wiki). 2009-05-01 00:09:15 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/gsttagdemux.c: tagdemux: cache events from upstream and re-send them once we have a source pad Makes sure tags don't get dropped when we have multiple tag demuxers in a row. Fixes #580318. 2009-05-07 14:07:44 -0700 Michael Smith <msmith@songbirdnest.com> * gst-libs/gst/riff/riff-media.c: riff: support UYVY raw 4:2:2 in riff. 2009-05-11 21:20:07 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: Back to development -> 0.10.23.1 2009-04-27 22:42:55 -0700 Michael Smith <msmith@syncword.(none)> * ext/theora/theoradec.c: theoradec: fix buffer overrun on 422 decode. 2009-04-27 21:39:01 -0700 Michael Smith <msmith@syncword.(none)> * ext/theora/theoradec.c: theoradec: 444 support. 2009-04-27 21:30:04 -0700 Michael Smith <msmith@syncword.(none)> * ext/theora/theoradec.c: theoradec: handle 422 images (as YUY2). 2009-04-27 21:01:51 -0700 Michael Smith <msmith@syncword.(none)> * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: theoradec: rearrange code in preparation for 422 and 444 support. === release 0.10.23 === 2009-05-10 23:57:01 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/_stdint.h: * win32/common/config.h: Release 0.10.23 2009-05-10 23:56:05 +0100 Jan Schmidt <thaytan@noraisin.net> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-05-08 20:32:20 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/config.h: 0.10.22.6 pre-release 2009-05-08 13:09:32 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: fix resume after pause Don't ignore the state change of the children, they might be doing an ASYNC state change. 2009-05-08 11:05:41 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: 0.10.22.5 pre-release 2009-05-07 22:01:01 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcp-marshal.list: multifdsink: fix signature of the add-full signal The second parameter is a GstSyncMethod enum, not a boolean. 2009-05-07 15:19:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: initialize variable too 2009-05-07 14:28:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: make playsink go ASYNC to PAUSED Make playsink go async to the PAUSED state instead of relying on uridecodebin for async behaviour in playbin. This solves some problems (mainly with DVD) where the pipeline would go to PLAYING before preroll completed, failing to select the audiosink clock. Fixes #581727 2009-05-06 16:09:52 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/config.h: 0.10.22.4 pre-release 2009-05-06 13:19:34 +0100 Zaheer Merali <zaheerabbas@merali.org> * ext/theora/theoraenc.c: * ext/vorbis/vorbisenc.c: vorbisenc, theoraenc: Ensure gp is computed consistently + clip to segment With vorbisenc, compute the granulepos with running time and clip incoming buffers to segment. With theoraenc, drop out of segment buffers. 2009-05-01 16:47:53 +0100 Jan Schmidt <thaytan@noraisin.net> * gst/audioresample/gstaudioresample.c: audioresample: Fix buffer size transformations When calculating the input/output buffer sizes in the transform_size function, take the number of channels into account, so we don't end up calculating a buffer size that only contains a partial number of audio frames. Also, when going from output size to input size, round down rather than up, so as to calculate the minimum number of samples that *might* yield a buffer of the intended destination size. Fixes: #580470 and #580952 2009-04-29 16:45:27 +0100 Jan Schmidt <thaytan@noraisin.net> * ext/vorbis/gstvorbisenc.h: * ext/vorbis/vorbisenc.c: vorbisenc: Ensure output buffers fall within the segment Add the start position of the first segment to the running time used to generate buffer timestamps in vorbisenc. This avoids generating buffers which fall outside the initial segment. The element segment handling requires more extensive fixing, but this at least prevents regressions. Fixes: #580020 2009-04-29 11:18:42 +0200 Andy Wingo <wingo@oblong.net> * gst-libs/gst/audio/gstbaseaudiosink.c: Revert "add can-activate-pull property to baseaudiosink" This reverts commit c4074a2ee4f1e6cac734a145bf675bbb16fac985. 2009-04-29 11:18:33 +0200 Andy Wingo <wingo@oblong.net> * gst-libs/gst/audio/gstbaseaudiosink.c: Revert "[baseaudiosink] add docs for can-activate-pull" This reverts commit 416ce16f26b39c76ab35e1ef6a75dc41ec69f75b. 2009-04-28 18:48:33 +0200 Andy Wingo <wingo@oblong.net> [baseaudiosink] add docs for can-activate-pull * gst-libs/gst/audio/gstbaseaudiosink.c: Add documentation for can-activate-pull. 2009-01-21 12:33:59 +0100 Andy Wingo <wingo@oblong.net> add can-activate-pull property to baseaudiosink * gst-libs/gst/audio/gstbaseaudiosink.c: Add can-activate-pull property to baseaudiosink. 2009-04-28 11:32:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/videorate/gstvideorate.c: * gst/videorate/gstvideorate.h: videorate: clear discont on duplicated buffers When videorate duplicates a buffer with a DISCONT flag, it copies the discont on the first pushed buffer but fails to clear it for subsequent buffers. This causes theoraenc!oggmux and possibly other elements to consider this a discont stream. Fix videorate to produce discont as the first buffer and after a flushing seek. Fixes #580271. 2009-04-24 18:13:00 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/Makefile.am: check: Disable the playbin2 for this release, as it is a bit racy. Disable the test, as per the discussion in #580120. Needs re-enabling after the release, when playbin2 is fixed. 2009-04-23 08:41:19 +0200 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstdecodebin2.c: decodebin2: Don't reduce max-size-time of exposed groups. Fixes #579912 The 2s limit is way too small for a lot of files (which have an interleave in time of between 3 and 5s). Instead, leave it to the initial 5s value and reduce the other limits (allowing us to stay memory-efficient). 2009-04-21 21:06:59 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/_stdint.h: * win32/common/config.h: 0.10.22.3 pre-release 2009-04-21 20:41:23 +0100 René Stadler <mail@renestadler.de> * gst/audioresample/gstaudioresample.c: audioresample: Fix unused variable in compilation with --disable-gst-debug Fixes: #579668 2009-04-21 22:12:28 +0100 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From b3941ea to 6ab11d1 2009-04-21 20:57:34 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybasebin.c: playbin: only use raw_decoding_mode when it's true First check the pad caps if they are raw before setting the raw_decoding_mode to TRUE. Fixes playback of transport streams and other streams that require large queues. Fixes #579734 2009-04-19 18:15:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/cdda/gstcddabasesrc.c: * tests/check/libs/cddabasesrc.c: cddabasesrc: fix posting of discid tags after MERGE_MODE_REPLACE_ALL changes in core Don't use REPLACE_ALL merge mode when that's not really what we want, as now that REPLACE_ALL actually does what it's supposed to do in core, we drop tags we wanted to keep, such as the various disc id tags. Add unit test for this as well. Fixes #579463. 2009-04-17 10:34:54 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: don't use GLib-2.16 API, we require only 2.14 Fixes #579267. 2009-04-17 10:55:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: don't unparent the ringbuffer when going to NULL, don't unparent the ringbuffer because we don't support going back to 0 very well yet. Fixes #579203 2009-04-17 10:53:10 +0200 Olivier Crete <tester at tester.ca> * gst-libs/gst/rtp/gstrtcpbuffer.c: RTCP: don't fail when retrieving invalid PT We can't meaningfully assert on valid packet types so just return the type as it is. Update the comments to reflect this. Fixes #579192. 2009-04-16 12:12:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.h: app: add trivial cast macros Add trivial cast macros for appsrc and appsink. Mark them as being since 0.10.23 and add the macros to the standard macros in the docs. Fixes #579130 2009-04-16 12:09:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: pkgconfig: add the app/ directory to Libs Add the appsrc/appsink directory to the Libs in the uninstalled pkgconfig file so that one can build against it. Fixes #579129 2009-04-15 22:59:31 +0100 Jan Schmidt <thaytan@noraisin.net> * configure.ac: 0.10.22.2 pre-release 2009-04-15 22:56:15 +0100 Jan Schmidt <thaytan@noraisin.net> * ChangeLog: ChangeLog: regenerate changelog with the gen-changelog script 2009-04-16 00:41:13 +0100 Jan Schmidt <thaytan@noraisin.net> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update po files from TP 2009-04-16 00:40:59 +0100 Jan Schmidt <thaytan@noraisin.net> * win32/common/_stdint.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/interfaces-enumtypes.c: * win32/common/interfaces-enumtypes.h: * win32/common/video-enumtypes.c: win32: Update win32 build files 2009-04-16 00:31:55 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/libs/video.c: check: Add GST_VIDEO_FORMAT_YVYU to the test so it passes. 2009-04-16 00:31:00 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/elements/playbin2.c: check: Fix the input uri in playbin2 test. Don't try and use a random file in wim's home directory as a test input 2009-04-15 15:35:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.h: video: Fix typo in the docs 2009-04-15 14:53:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add support for YVYU YUV colorspace 2009-04-15 00:17:51 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * docs/libs/gst-plugins-base-libs-docs.sgml: * gst-libs/gst/fft/gstfft.c: docs: fix hyperlink and move fft attribution to the right place 2009-04-15 00:02:39 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/gstbaseaudiosink.c: log: use G_GUINT64_FORMAT instead of llu 2009-04-14 18:31:52 +0200 Josep Torra <n770galaxy at gmail.com> * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: RTSP: add missing headers for WMS RTSP Add missing headers related to Windows Media RTSP extension. Fixes #578942 2009-04-14 18:16:37 +0200 Olivier Crete <tester at tester.ca> * docs/design/draft-keyframe-force.txt: * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theoraenc: implement upstream keyframe force Implement handling of upstream keyframe forcing. Update the design documents too. Fixes #578656 2009-04-14 17:31:31 +0200 Olivier Crete <tester at tester.ca> * ext/theora/theoraenc.c: theoraenc: factor out keyframe forcing See #578656 2009-04-14 17:01:51 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * AUTHORS: * gst-libs/gst/fft/gstfft.c: Give credit to Mark Borgerding (kissfft author) and add myself to AUTHORS as well. Fixes #575638. 2009-04-14 17:04:06 +0200 Jan Urbanski <j.urbanski at students.mimuw.edu.pl> * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: multifdsink: add property to resend streamheaders Adds a new property in multifdsink, resend-streamheader. If this property is false, the multifdsink will not send the streamheader if there's already one set for a particular client. There are some formats in which every stream needs to start with a certain blob, but you can't inject this blob at leisure. If the producer wants to change the blob in question and sets in as the streamheader on the outgoing buffers' caps, new clients of multifdsink will get the new streamheader, but old clients will break, because they'll see the blob in the middle of the stream. The property is true by default, so existing code will not see any difference. Fixes #578118. 2009-04-14 16:53:33 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: multifdsink: add property to handle client write Add a property to disable listening to client writes. This property is usefull when other code will deal with reading from the client socket. API: GstMultiFdSink::handle-read property 2009-04-14 16:45:20 +0200 Johann Prieur <johann.prieur at gmail.com> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.h: * win32/common/libgstrtp.def: RTCP: add beginnings of Feedback messages Add the beginnings of parsing and constructing Feedback messages. Fixes #577610. 2009-04-14 13:51:41 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: clear the target Clear the target of our ghostpads before we remove the pad from the element. This to make sure that the internal pad is not left linked to whatever pad we were ghosted to. This should only be a problem when we leak the ghostpads. Also release our subpicture pads. Fixes #577288. 2009-04-14 12:10:30 +0100 Hannes Bistry <hannesb@gmx.net> * sys/ximage/ximagesink.c: ximagesink: fix mouse pointer offsets in navigation event if window is smaller than the image Fixes #570768. 2009-04-14 13:16:14 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: baseaudiosrc: adjust the internal timestamp Adjust the internal timestamp before comparing it against the adjusted clock time. Fixes #578506 2009-04-14 13:12:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: use new clock time methods Use the unadjusted internal clock times to calculate the internal/external offset when calibrating the clock. When going to NULL, unparent and free the ringbuffer, like we do in the source element. See #578506 2009-04-14 13:08:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: * win32/common/libgstaudio.def: audioclock: add methods for the internal offset Add two methods for getting the unadjusted time of the clock and one for adjusting an internal time. We will need these methods for correctly handling the time after a gst_audio_clock_reset(). Add a debug category and some debug lines to the audio clock. API: gst_audio_clock_get_time() API: gst_audio_clock_adjust() API: GST_AUDIO_CLOCK_CAST() 2009-04-14 11:34:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: fix up the debugs and warnings Use _OBJECT variants because we can. Go over some log statements and put them in the right category. Fixes #567740. 2009-04-12 22:26:33 +0200 Luca Ognibene <luca.ognibene at gmail.com> * gst/tcp/gstmultifdsink.c: multifdsink: fix error in sync-method Multifdsink did not handle sync-method=latest-keyframe correctly when the soft-limit is set to -1 (unlimited). Fixes #578583. 2009-04-10 21:49:45 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: use the internal clock time We can't assume that the internal clock time is the same as the function we installed on our provided clock because somebody might have changed it. 2009-04-10 14:12:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: handle clock-lost messages When we receive a clock-lost message we need to pause and play to select a new clock. 2009-04-10 13:44:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/check/Makefile.am: * tests/check/elements/playbin2.c: check: add a unit test for playbin2 Add unit test for playbin2 and include the refcount test in #577794. 2009-04-10 13:42:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: fix refcounting of visualisations See #577794. 2009-04-10 13:27:41 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playsink: fix refcounting of custom elements Sink the custom sinks, let other elements we create be sunken by the bin we add them to. Fixes #577794. 2009-04-10 12:27:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * tests/check/elements/appsink.c: check: fix appsink test Fix the appsink test now that the method signature changed. 2009-04-10 12:26:16 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: handle missing input-selector Gracefully degrade and disable stream selection when input-selector is missing. 2009-04-09 23:46:17 +0200 Martin Samuelsson <martin.samuelsson at axis.com> * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: appsink: make callbacks return GstFlowReturn Make the new_buffer and new_preroll callbacks return a GstFlowReturn so that errors can be reported properly. Fixes #577827. 2009-04-09 18:04:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/audio/gstringbuffer.h: ringbuffer: allow for custom commit functions Allow subclasses to override the commit method. 2009-04-08 18:04:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix a small glitch after pause After we pause the stream and interrupt the writeout to the ringbuffer, also adjust the amount of output samples we consumed. We can't do this reliably with the current API when we are doing trick modes but we can do the right thing for normal playback. 2009-04-08 16:43:27 +0300 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaysink.c: playbin2: better error message on sink failure If we could create the sinks, but the don't work, don't send the missing plugin message and report that the state-changed failed. 2009-04-07 22:38:29 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/gstaudiofilter.c: audiofilter: don't leak pad-template gst_element_class_add_pad_template() does not take ownership. 2009-04-04 21:18:38 +0300 Felipe Contreras <felipe.contreras@gmail.com> * common: Automatic update of common submodule From d0ea89e to b3941ea 2009-04-04 16:28:14 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/interfaces/navigation.c: * sys/v4l/v4lsrc_calls.c: navigation/v4l: Don't use g_return_val_if_fail for computed/used values. 2009-03-22 09:46:37 +0100 Edward Hervey <bilboed@bilboed.com> * ext/theora/theoradec.c: theoradec: return GST_CLOCK_TIME_NONE for negative framecounts. This fixes most seeking issues when used with gnonlin. Fixes #543591 2009-04-04 14:53:42 +0200 Edward Hervey <bilboed@bilboed.com> * common: Automatic update of common submodule From f8b3d91 to d0ea89e 2009-04-03 10:51:42 -0700 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: playbin2: don't leak selector when getting current stream numbers. 2009-04-02 22:28:55 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: use fully qualified urls when using a proxy Use a fully qualified url when specifying the url for tunneled requests through a proxy. See #573173 2009-03-31 00:54:30 +0100 Jan Schmidt <thaytan@noraisin.net> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/interfaces/navigation.c: * gst-libs/gst/interfaces/navigation.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/navigation.c: * win32/common/libgstinterfaces.def: navigation: Extend the navigation interface Add support for a set of standard commands that can be queried and executed to support applications like DVD. Add query construction and parsing functions. Add new messages that can be sent on the bus to provide notifications related to commands, multiangle changes, and button highlight activity. Add some helper functions to parse the existing GstNavigation events that elements might receive. Document it all and add unit tests. 2009-02-04 17:03:07 +0000 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybasebin.h: playbin: Add simple 'raw decoding mode'. Raw decoding mode removes almost all buffering in video and audio queues when a source providing already decoded video/audio is detected, on the possibly bogus assumption that such a source should provide sufficient internal queueing. Fixes playback on some DVDs, and improves it on all. 2009-04-02 09:27:07 +0100 Jan Schmidt <thaytan@noraisin.net> * tests/check/elements/.gitignore: ignores: Ignore the videoscale check binary 2009-04-02 12:13:57 +0100 Jan Schmidt <thaytan@noraisin.net> * win32/common/libgstrtsp.def: win32: Add gst_rtsp_connection_set_proxy to the win32 exports 2009-04-02 10:42:19 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * ext/alsa/gstalsamixer.c: alsamixer: don't forget to release locks in a few places Might fix #576585. 2009-04-02 11:10:12 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: videoscale: Don't read over line ends when taking the last Cr or Cb 2009-04-02 10:52:06 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: videoscale: Don't write to few pixels and don't mix Cr and Cb Fixes bug #577054. 2009-04-01 15:15:57 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/audioresample/gstaudioresample.c: * tests/check/elements/audioresample.c: audioresample: fix negotiation so that upstream can actually fixate to downstream's rate If one side has a preference for a particular sample rate or set of sample rates, we should honour this in the caps we advertise and transform to and from, so that elements actually know about the other side's sample rate preference and can negotiate to it if supported. Also add unit test for this. 2009-03-26 19:34:23 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/playback/gstplaybin2.c: docs: add a blurb about redirect messages to playbin2 docs 2009-04-01 09:03:35 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix little typo in the comments 2009-03-31 17:52:44 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: make gst_rtsp_watch_queue_message() thread-safe People might queue messages from a thread other than the thread in which the main context which this watch is attached is iterated from, so use a GAsyncQueue instead of a GList, so g_list_append() doesn't trample over list nodes just freed in the other thread. This just fixes issues I've had with gst-rtsp-server. We might need more locking in various places here. 2009-03-31 18:13:19 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: clear the entire builder structure And use structure instead of variable with sizeof when clearing the rtsp message structure, for clarity. 2009-03-31 17:56:24 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: docs: fix typo in gst_rtsp_message_unset() API docs 2009-03-31 19:00:00 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: add support for proxies Add suport for proxy servers. Currently only used for tunneled HTTP connections without authentication. 2009-03-31 18:57:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: Revert "rtsp: reset whole message (was sizeof pointer instead of sizeof type)" This reverts commit 79de0b8d67df6fbbe79455adc2e06858295f5c03. 2009-03-26 18:54:56 +0200 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: use xcontext->depth instead of bits in attr.max_value for colorkey According to the drivers in http://cgit.freedesktop.org/xorg/driver/ we should format the colorkey depending on xcontext->depth. This is what they will use to interprete the value. The max_value in turn is usualy a constant regardless of the depth. 2009-03-31 12:22:14 +0300 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: reset whole message (was sizeof pointer instead of sizeof type) 2009-03-31 00:56:18 +0100 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/interfaces/mixer.c: doc: Fix a typo in the GstMixer docs 2009-03-29 12:01:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_scanline.c: videoscale: Fix linear scaling for one byte components Fixes bug #577054. 2009-03-29 11:53:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: videoscale: Fix 4tap scaling of YUYV and friends 2009-03-28 16:08:44 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_image.c: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: videoscale: Rewrite YUYV (and friends) scaling and don't read/write over line ends Partially fixes bug #577054, there's just one issue left now. 2009-03-28 12:48:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/elements/videoscale.c: videoscale: Add some more unit tests 2009-03-28 11:51:01 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Use bilinear instead of 4tap scaling for heights < 4 Partially fixes bug #577054. 2009-03-28 11:45:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_scanline.c: videoscale: Don't read after the end of a line when lineary scaling YUYV/UYVY/RGB/RGBA This case is for upscaling a frame with width=1 Partially fixes bug #577054. 2009-03-28 11:27:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_scanline.c: videoscale: Don't read after the end of a line when lineary scaling YUYV/UYVY Partially fixes bug #577054. 2009-03-28 10:40:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/gstvideotestsrc.c: videotestsrc: Initialize buffer memory with zeroes This prevents valgrind warnings when accessing the "x" parts of xRGB and friends in other elements that handle (and can handle) xRGB like ARGB (for example videoscale). 2009-03-28 10:25:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/Makefile.am: * tests/check/elements/videoscale.c: videoscale: Add a lot of unit tests 2009-03-28 10:06:24 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videocale: Add support for video/x-raw-gray with bpp=depth=8 2009-03-28 10:01:00 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: videotestsrc: Add support for generating video/x-raw-gray with bpp=depth=8 2009-03-28 09:43:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/gstffmpegcodecmap.c: ffmpegcolorspace: video/x-raw-gray is the same as the YUV Y800 format 2009-03-27 19:12:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: videoscale: Take the next luma value instead of every second next when scaling UYVY and friends 2009-03-27 19:09:47 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Add support for v308 YUV colorspace 2009-03-27 13:15:11 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: videoscale: Add my copyright to the 4tap scalers 2009-03-27 13:14:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/gstvideoscale.c: videoscale: Enable 4-tap scaling for all supported formats 2009-03-27 13:14:00 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: Implement 4-tap scaling for RGB565 and RGB555 2009-03-27 10:47:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: Implement 4-tap scaling for UYVY 2009-03-27 09:33:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: Implement 4-tap scaling for YUY2 and YVYU 2009-03-26 22:14:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: Implement 4-tap scaling for RGB and BGR 2009-03-26 22:08:26 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: videoscale: Implement 4-tap scaling for RGBA and other 4 byte formats 2009-03-26 11:02:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/pango/gsttextoverlay.c: textoverlay: Fix drawing of UYVY text borders 2009-03-26 10:36:27 +0100 Zeeshan Ali <zeeshan.ali@nokia.com> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: textoverlay: Add support for UYVY colorspace Fixes bug #378094. 2009-03-25 19:01:45 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: do some more cleanup Free the groups when we go to READY. Allow for NO_PREROLL elements. 2009-03-25 16:37:28 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: start CSeq counting from 1 instead of 0 Start counting from 1 instead of 0 as this is what most other clients seem to do. 2009-03-25 16:35:22 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: add ETag and If-Match headers Add new headers, we need them for RealMedia support. 2009-03-25 14:16:25 +0200 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: scale the colorkey components in case of 16bit visuals Use a default that won't be scales to 0,0,0 2009-03-25 11:27:44 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/audio/gstbaseaudiosrc.c: audiosrc: improve 'Dropped n samples' warning message 2009-03-24 19:41:06 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: examples: use new method to set flags Use the new core method for setting object enum properties by name. 2009-03-24 18:29:28 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: add more support for subpictures 2009-03-24 17:12:53 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: first support for subpictures Add beginnings of subpicture support. 2009-03-24 15:26:57 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: print tags from the different tracks 2009-03-24 12:22:37 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: blacklist subpictures for now Blacklist the subpictures until we add support for them. Add some small debug info. See #576408. 2009-03-24 12:19:30 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: expose more media types Expose more media types from a raw source, such as the subpicture and various text pads. Small cleanups and add some more debugging. See #576408. 2009-03-24 10:42:04 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: rescan audio sinks for volume/mute Rescan the audio sinks for the mute and volume properties. fixes #576180. 2009-03-23 19:40:18 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: fix reuse of the video chains When reusing playbin with visualisations, reset the async property on the video sink because some sinks might dynamically recreate their sinks. Fixes #576188 2009-03-23 17:37:48 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: allow dynamic swtiching of subtitles When we have the textpad configured, enable and disable the subtitles by setting the silent flag on the overlay element instead of trying to remove elements. See #576187 2009-03-23 16:59:36 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/icles/playbin-text.c: tests: print some more info in the text example Print both the position and the running_time when the subtitle becomes available in the application. 2009-03-23 16:04:27 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: fix dynamic switching of visualisations Fix the switching of visualisations by requesting and releasing the tee request pads on demand. See #576187. 2009-03-23 16:19:11 +0200 Stefan Kost <ensonic@users.sf.net> * gst/tcp/README: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: docs: add examples for tcp elements, also use correct section name. Fixes #564139 Updated the examples in the README to actually work. Add them to api docs. Tests the api-docs and fix the section names to make the docs actualy show up. The example for "tcpserversrc" needs review (might be an element bug). 2009-03-17 09:14:02 +0200 Stefan Kost <ensonic@users.sf.net> * gst/videoscale/gstvideoscale.c: indent: fix damange that gst-indent did some time ago 2009-03-23 15:27:27 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: fix linking order Link after doing the state change and unlink before shutting down. Makes the window for causing races in toggling the visualisations smaller. See #576187. 2009-03-23 12:26:05 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: uridecodebin: reset counter reset the number of pending dynamic operations back to 0 when we reuse uridecodebin. Fixes #576190 2009-03-23 11:38:53 +0100 Edward Hervey <bilboed@bilboed.com> * ext/theora/theoradec.c: theoradec: Use GST_CLOCK_TIME_NONE for invalid positions. Fixes #543591 The problem was that previously we didn't check whether _theora_granule_frame returned a negative framecount or not, resulting in bogus timestamps. 2009-03-21 09:46:28 +0100 René Stadler <mail@renestadler.de> * ext/vorbis/vorbisenc.c: vorbisenc: Set caps on non-header ouput buffers. Fixes #576142. 2009-03-20 16:13:06 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/seek/seek.c: seek: Add some more debug Add some more info about the selected streams. 2009-03-20 15:47:47 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: a pad starts out being not drained. Mark a new pad as not drained until we get EOS on it. 2009-03-20 14:17:19 +0100 LRN <lrn1986 at gmail dot com> * gst/playback/gstqueue2.c: win32: fix seeking in large files Fix Seeking in large files by using the 64-bit seek functions. Fixes #576019 2009-03-19 20:31:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: recover from failing to add a pad When we cannot add a pad to the decodebin2 for some reason, print a warning but continue adding the remaining pads. 2009-03-19 19:35:15 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: more cleanups and docs. Add some more comments and use g_list_prepend(). 2009-03-19 19:19:38 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: refactoring and race fixes Refactor some code so that we can take the right locks and in the right order. Fixes quite a bit of races already. 2009-03-19 19:03:25 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: remove the group cond + cleanups Remove the group GCond that we used for waiting for groups to finish because we use pad blocking on the selectors and counters instead for waiting for the groups to complete. remove the obsolete about_to_finish variable set while emiting the about-to-finish signal and fix some old comments. We don't need to take the playbin lock when querying the uridecodebin. 2009-03-18 10:45:50 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/icles/playbin-text.c: icles: print better error and warning messages -- 2009-03-17 22:53:44 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspbase64.c: * gst-libs/gst/rtsp/gstrtspbase64.h: rtsp: Use GLib base64 functions and deprecate gst_rtsp_base64_encode This also fixes another instance of CVE-2008-4316. 2009-03-17 19:53:44 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: report -1 for duration in push mode In push mode we must return TRUE from the duration query with a value of -1 meaning that we know that we don't know the duration. 2009-03-17 19:09:02 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: add extra dynamic ref for demuxers When we make a group connected to a demuxer, keep an extra dynamic refcount for the group which is only decremented when no_more_pads or a multiqueue overrun is detected. This way we avoid a race between exposing the group while more dynamic refs are added from new pads. Fixes #575588. 2009-03-17 15:39:23 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2: sync state of the sink correctly Sync the state of the newly added chains to the state of the parent sink element to avoid lost async-start messages. Fixes cdda:// async-done message storm. 2009-03-17 11:54:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: return NOT_LINKED for unselected streams When streams are not selected in the selector, return NOT_LINKED so that upstream elements can skip decoding. Only do this for audio and video pads because for text streams the overhead is smaller and they could come from external files. 2009-03-17 11:51:58 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: playbin: set custom text sink properties Set the custom sink async=FALSE to not make it participate in preroll because we are dealing with sparse streams. Try to set sync=TRUE on the custom text sink. 2009-03-17 11:30:58 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/icles/playbin-text.c: example: use appsink instead of fakesink Use appsink instead of fakesink to get the subtitles. Make things more pretty. 2009-03-17 11:24:00 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/playbin-text.c: examples: add example of intercepting subtitles Add an example of how to install a custom sink for receiving subtitles in playbin2. 2009-03-17 11:03:57 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/check/elements/appsink.c: tests: fix include in the appsink test Fix dist by doing the right include. 2009-03-16 16:42:18 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: don't try to set invalid stream numbers Fix a problem with setting the stream numbers because we check for the wrong range. See #575239. 2009-03-16 16:16:30 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: release the shutdown lock Release the shutdown lock when we wait for other groups to complete or else we have a deadlock when the other group completes and tries to grab the shutdown lock. Fixes #575550. 2009-03-16 15:31:44 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: examples: fix g_object_set() value type. Make sure we cast the length value as a gint64 to the vararg g_object_set() just incase sizeof(gsize) != sizeof(gint64). 2009-03-15 19:57:36 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: make flac typefinder return lower probability for frame headers The flac frame header typefinder overstates the likelihood of a match, leading to false positives with e.g. aac streams and PDF files. Reduce probabilty returned from LIKELY to POSSIBLE for the frame header matchin code. Fixes #574939. 2009-03-11 12:59:05 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: improve image/bmp typefinder Detect more variations and also bail out in more cases where the values don't make sense. Furthermore, add width/height and bpp to the caps, because we can. 2009-03-13 15:22:42 +0000 Jan Schmidt <thaytan@noraisin.net> * tests/check/Makefile.am: check: Ignore alsamixer in the states test too 2009-03-13 15:22:11 +0000 Jan Schmidt <thaytan@noraisin.net> * sys/v4l/v4l_calls.c: v4lsrc: Fix some valgrind warnings about leaked memory and uninitialised data. 2009-03-13 16:19:41 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix resolving of hostnames We were returning a pointer to a stack variable with the resolved hostname, which doesn't work. return a copy of the resolved ip address instead. Fixes #575256. 2009-03-13 15:29:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/vorbis/vorbisparse.c: vorbisparse: be smarter when queueing headers Look at the first buffer byte to see if a buffer is a header instead of counting packets. 2009-03-13 15:27:51 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/gsttheoraparse.h: * ext/theora/theoraparse.c: theoraparse: be smarter when queuing headers Look at the first byte of the buffer data (if we can) to decide if the packet is a header packet or not instead of counting packets. 2009-03-13 15:26:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/ogg/gstoggdemux.c: oggdemux: add some debug info Add some debug info to log when the seek worked. 2009-03-13 15:14:37 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: appsrc: release lock in _eos flushing case Release the mutex when we are flushing in gst_app_src_end_of_stream() Fixes #574964. 2009-03-13 11:49:10 +0000 Jan Schmidt <thaytan@noraisin.net> * ext/vorbis/vorbisdec.c: vorbisdec: Avoid an unnecessary memory allocation in vorbiscomment handling. 2009-03-13 11:48:28 +0000 Jan Schmidt <thaytan@noraisin.net> * ext/theora/theoradec.c: theoradec: Avoid an unnecessary memory allocation in vorbiscomment handling. 2009-03-12 18:27:25 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: playbin2: fix raw elements like cdda:// Fix a fixme with a one liner and make cd playback work again. 2009-03-12 17:47:41 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playbin2: improve subtitle handling Add property to playbin2 to configure a custom sink that receives the raw subtitle buffers instead of using a textoverlay. Improve the property finding code to make it more usable. Use property find code to find async properties in custom sinks that are bins. Improve text overlay code to gracefully handle missing elements. 2009-02-24 15:58:42 +0000 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/tag/gstvorbistag.c: vorbistag: Protect memory allocation calculation from overflow. Patch by: Tomas Hoger <thoger@redhat.com> Fixes CVE-2009-0586 2009-03-12 11:34:20 +0000 Jan Urbanski <jurbanski@flumotion.com> * gst-plugins-base.spec.in: Spec: fix up deps 2009-03-11 18:45:59 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix parsing of the timeout parameter -- 2009-03-11 16:20:20 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: fix g_return condition when parsing a data message, we require a data message. 2009-03-11 13:33:33 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: typefinding: flac typefinder fixes Use scan context for initial peek as well. Peek 6 bytes in the initial peek rather than 5 bytes, to match the length of the memcmp we're doing on that data later. Return immediately when we found caps from looking at the beginning of the data - no point in continuing to scan the next 64kB for something matching a frame header. 2009-03-11 14:08:10 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: free the right string. Free the key value before we remove the header item from the array. The item we retrieved from the array is only valid until we remove it from the array. 2009-03-11 14:07:05 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: keep track of amount of decoded bytes Keep track of the actual amount of decoded bytes, which can be less than 3 when we decode the last bits of a base64 message. 2009-03-10 21:00:26 +0200 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: log details in getcaps like in setcaps 2009-03-10 13:11:09 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * win32/MANIFEST: win32: update MANIFEST, fixing 'make dist' 2009-03-09 23:12:00 +0000 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From 7032163 to f8b3d91 2009-03-09 16:19:40 +0100 Jonathan Matthew <notverysmart at gmail dot com> * gst/typefind/gsttypefindfunctions.c: typefind: add photoshop typefind functions Add photoshop typefind functions. Fixes #574516. 2009-03-09 15:46:21 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: decodebin2: only remove pads that were added Flag pads that were added so that we can see if we need to remove them later or not. 2009-03-09 13:53:41 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtsptransport.c: rtsp: only add ports when not using TCP Only add the port numbers in the transport string when we are using udp or multicast. 2009-03-09 13:53:15 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: rtsp: use gstreamer dump mem -- 2009-03-09 13:51:48 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: use glib base64 encoder -- 2009-03-06 19:28:37 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstdecodebin2.c: Unblock blocked ghostpads when shutting down. Fixes #574293. 2009-03-09 10:03:13 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: Riff: Add mapping for Fraps video codec. Found through insanity testrun. Confirmed mapping in libavformat. 2009-03-09 09:07:13 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: riff: Add the 'DVR ' mapping for mpeg2video. Found this in 3 files from the insanity suite and mapping is also present in libavformat. 2009-03-09 09:06:40 +0100 Edward Hervey <bilboed@bilboed.com> * gst/typefind/gsttypefindfunctions.c: typefind: Use the proper data pointer instead of poking random memory. 2009-03-08 18:17:48 +0100 LRN <lrn1986@gmail.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: fix compilation on windows. Remove unused variable when building for windows. Fixes #574443. 2009-03-08 12:03:22 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From ffa738d to 7032163 2009-03-08 11:19:00 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 3f13e4e to ffa738d 2009-03-07 11:44:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 3c7456b to 3f13e4e 2009-03-07 10:44:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * common: Automatic update of common submodule From 57c83f2 to 3c7456b 2009-03-06 19:02:58 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/theoradec.c: theoradec: parse and use codec_data in the caps Parse the codec_data in the caps and use this as the headers. Fixes #574169. 2009-03-06 18:53:17 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/riff/riff-media.c: riff: add theora mapping Add theora mappings. See #574169. 2009-03-06 16:31:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: rtsp: Add methods for getting the read/write fds API:gst_rtsp_connection_get_readfd() API:gst_rtsp_connection_get_writefd() 2009-03-06 10:35:01 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * Makefile.am: * win32/common/audio-enumtypes.c: win32: indent copied *-enumtypes.c files in make win32-update 2009-03-06 10:35:56 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * win32/MANIFEST: win32: update MANIFEST 2009-03-06 10:30:28 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * configure.ac: * win32/common/config.h: win32: fix configure logic for GST_INSTALL_PLUGINS_HELPER define 2009-03-06 10:05:11 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * win32/common/_stdint.h: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: * win32/common/interfaces-enumtypes.c: * win32/common/multichannel-enumtypes.c: * win32/common/pbutils-enumtypes.c: * win32/common/video-enumtypes.c: * win32/common/video-enumtypes.h: win32: update windows files via make win32-update Updates win32 files using the new system/hook, and defines HAVE_PROCESS_H, which fixes the build of pbutils on windows (#574319). 2009-03-06 10:03:31 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * .gitignore: gitignore: ignore more 2009-03-06 10:37:38 +0100 Julien Moutte <julien@fluendo.com> * gst-libs/gst/rtsp/gstrtspconnection.c: Fix build on Mac OS X 2009-03-05 15:42:23 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstdecodebin2.c: decodebin2: don't stay connected to notify::caps after negotiation Disconnect the notify::caps signal in our callback (it'll be re-added if we're not, in fact, finished getting complete caps). Ensures that caps changes mid-stream (e.g. from an mp3 that changes from stereo->mono mid-file) don't cause us to try to add a new pad. 2009-03-05 13:48:37 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtsprange.c: rtsp: fix parsing of 'now-' ranges. -- 2009-03-05 12:43:02 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/dynamic/.gitignore: * tests/examples/dynamic/Makefile.am: * tests/examples/dynamic/sprinkle.c: * tests/examples/dynamic/sprinkle2.c: * tests/examples/dynamic/sprinkle3.c: examples: add some more sprinkle examples Add some more sprinle examples and add some more comments. See #574160. 2009-03-05 11:57:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/plugins/gst-plugins-base-plugins-sections.txt: docs: add appsrc symbols to standard section -- 2009-03-05 12:27:16 +0200 Stefan Kost <ensonic@users.sf.net> * gst/adder/gstadder.c: adder: add variants for unsigned to fix warnings for unneeded check For unsigned int out+in can't be < 0. 2009-03-05 10:58:12 +0200 Stefan Kost <ensonic@users.sf.net> * gst/subparse/gstsubparse.c: subparse: use the right variable in debug log, encoding is not yet initialized 2009-03-05 10:51:25 +0200 Stefan Kost <ensonic@users.sf.net> * sys/v4l/v4l_calls.c: v4l: add a fixme for broken code, that someone who has a v4l tuner device should fix 2009-03-05 10:39:33 +0200 Stefan Kost <ensonic@users.sf.net> * gst/audioresample/gstaudioresample.c: audioresample: add missing break in event handling, remove dead code 2009-03-04 16:24:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: do some more cleanup in _close Do som more cleanup in gst_rtsp_connection_close() so that it's back into the unconnected state as it was allocated. 2009-03-04 16:11:20 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: fix the memory management of the url Constify the url parameter in _create. Make a copy of the url stored in the connection. Free the url when the connection is freed. 2009-03-04 12:21:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: RTSP: Add support for server tunneling Save the tunnelid in the connection. Add a method to retrieve the tunnelid so that a server can store and match the id against other tunnel requests. Fix the URI in the tunnel requests so that they contain the absolute uri and the query string if any instead of just the hostname. Transparently base64 decode the input stream when tunneling. Add method to set the connection ip address so that it can be included in the tunnel response. Add method to connect the two tunnel requests. Add two callbacks for the async mode to notify a tunnel start and tunnel complete event. Add method to reset the watch after the connection has been tunneled. Various little refactoring to make more stuff reusable. API: RTSP::gst_rtsp_connection_set_ip() API: RTSP::gst_rtsp_connection_get_tunnelid() API: RTSP::gst_rtsp_connection_do_tunnel() API: RTSP::gst_rtsp_watch_reset() 2009-03-04 12:18:00 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: rtsp: add new defines for tunneling Add two more result codes for tunneling support. 2009-03-04 12:12:06 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.h: rtsp: remove , from last enum member Remove , from last enum member to improve compatibility with other compilers. 2009-02-28 15:23:20 -0800 LRN <lrn1986@gmail.com> * gst/subparse/gstsubparse.c: subparse: Convert regex code to GRegex code Fixes: #572993. Patch author prefers to use an alias, contact ds if you actually need a real name. Signed-off-by: David Schleef <ds@schleef.org> 2009-03-02 16:13:33 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: remove debugging g_message -- 2009-03-02 16:03:49 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: * win32/common/libgstrtsp.def: RTSP: add support for Quicktime tunneled RTSP Add support for tunneling RTSP over HTTP. Fix documentation some more. See also #573173. API: RTSP:gst_rtsp_connection_is_tunneled() API: RTSP:gst_rtsp_connection_set_tunneled() 2009-03-02 15:48:56 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.c: RTSP: parse rtsph uris as RTSP tunneled over HTTP Add transport define for RTSP tunneled over HTTP. Parse rtsph:// uris as tunneled HTTP over TCP. API: GstRTSPLowerTrans::GST_RTSP_LOWER_TRANS_HTTP See also #573173. 2009-03-02 12:48:18 +0100 Edward Hervey <bilboed@bilboed.com> * win32/common/libgstrtsp.def: win32: Add gst_rtsp_connection_get_url definition No, I'm not wim's buildslave, seriously. 2009-03-02 10:58:49 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: rtsp: add _get_url method and separate sockets Add gst_rtsp_connection_get_url() method. Reserve space for 2 sockets, one for reading and one for writing. Use socket pointers to select the read and write sockets. This should allow us to implement tunneling over HTTP soon. API: RTSP::gst_rtsp_connection_get_url() 2009-03-01 18:31:17 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/app/gstapp-marshal.list: app: force automatic rebuild of gstapp-marshal.[ch] after previous change The previous change to appsrc/appsink requires people to 'make clean' to get the marshallers rebuilt (causing a build failure otherwise). Change some lines in the .list file around to force a rebuild of these files automatically. 2009-02-28 11:07:04 -0800 David Schleef <ds@schleef.org> * configure.ac: Bump glib requirement to 2.14 2009-02-28 19:37:53 +0100 LRN <lrn1986@gmail.com> * ext/gio/gstgiobasesink.c: gio: Use correct format modifier for size_t Fixes bug #573528. 2009-02-28 19:35:33 +0100 LRN <lrn1986@gmail.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Use correct types for some functions on Win32 Fixes bug #573529. 2009-02-28 13:11:59 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/rtsp/gstrtspconnection.c: rtspconnection: Fix warning about using unitialized value. 2009-02-28 12:41:28 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: riff: Add more codec mappings. This comes mostly from a review of ffmpeg/libavformat/riff.c 2009-02-27 11:14:25 +0200 Stefan Kost <ensonic@users.sf.net> * ext/alsa/gstalsa.c: alsa: release pcminfo after the strdup 2009-02-26 17:38:47 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/rtsp/gstrtsprange.c: rtsprange: don't leak the range in case of parsing error. Free the gstRTSPTimeRange if we don't return it. Also simplify gst_rtsp_range_free() as it is valid to pass NULL to g_free(). 2009-02-26 16:47:39 +0200 Stefan Kost <ensonic@users.sf.net> * ext/alsa/gstalsa.c: alsa: cleanup name lookup. We can break, once we have a name to make sure, we won't read it ever twice. 2009-02-26 16:09:03 +0200 Stefan Kost <ensonic@users.sf.net> * gst/subparse/gstsubparse.c: subparse: don't leak line, if flushing 2009-02-26 16:03:39 +0200 Stefan Kost <ensonic@users.sf.net> * ext/gio/gstgiosink.c: giosink: reflow error handling to not leak uri 2009-02-26 15:53:10 +0200 Stefan Kost <ensonic@users.sf.net> * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: remove unused code/variables 2009-02-26 12:10:47 +0200 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: ximagesink: use GST_FLOW_NOT_NEGOTIATED for partial caps 2009-02-26 16:44:53 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * win32/common/libgstapp.def: app: add callbacks to appsrc, cleanups Add a uri handler to appsink. don't emit signals when we have installed callbacks on appsink. Add callbacks to appsrc to replace the signals. Add property to disable callbacks in appsrc, default to TRUE for backwards compatibility but disable when callbacks are installed. API: GstAppSrc::emit-signals API: GstAppSrc::gst_app_src_set_emit_signals() API: GstAppSrc::gst_app_src_get_emit_signals() API: GstAppSrc::gst_app_src_set_callbacks() 2009-02-26 11:42:44 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.h: * tests/check/elements/appsink.c: Appsink: add padding for callbacks + docs Add some padding to the callbacks structure just to be safe. Remove the now invisible marshaller methods from the docs. Fix a comment in the unit test. 2009-02-26 09:52:59 +0100 Edward Hervey <bilboed@bilboed.com> * win32/common/libgstapp.def: win32: Add new libgstapp symbol 2009-02-26 10:07:21 +0200 Stefan Kost <ensonic@users.sf.net> * docs/plugins/gst-plugins-base-plugins-sections.txt: docs: clean section.txt file. Add appsrc/sink symbols to private, as they are covered in the libs docs. 2009-02-26 10:06:23 +0200 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaybasebin.c: docs: fix random text after since: tag. Also fix class name to make the docs actual appear. 2009-02-26 09:56:16 +0200 Stefan Kost <ensonic@users.sf.net> * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst/playback/gstplaybin2.c: docs: playbin2 has no stream-info 2009-02-26 09:53:03 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/video/video.h: docs: fix newly added interlace constants and plug holes in video format docs 2009-02-26 09:35:43 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: docs: don't put random stuff in tags. Tags like Since: or Returns: can only be followed by more tags. gtk-doc has no tag to append text again to the documentation body. 2009-02-06 11:10:15 +0200 Stefan Kost <ensonic@users.sf.net> * sys/ximage/ximagesink.c: ximagsink: do not access uninitialized height variable. Exit like in xvimagesink, if we have partial caps. 2009-02-25 20:26:05 -0800 David Schleef <ds@schleef.org> * Makefile.am: * configure.ac: * win32/common/config.h.in: Change how win32/common/config.h is updated Generate win32/common/config.h-new directly from config.h.in, using shell variables in configure and some hard-coded information. Change top-level makefile so that 'make win32-update' copies the generated file to win32/common/config.h, which we keep in source control. It's kept in source control so that the git tree is buildable from VS. This change is similar to the one recently applied to GStreamer, except that it adds a few -base specific defines. 2009-02-25 19:40:43 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * win32/common/libgstapp.def: app: add win32 .def file and only export functions we want exported Add a .def file for win32 builds (and make check-exports). Fix LDFLAGS in Makefile.am, so the usual export regexps are used (fixes #573165). Make sure private marshaller functions aren't exported by prefixing them with __gst; also rename gst_app_marshal_OBJECT__VOID to _BUFFER__VOID, make it static and add a comment why we're not using glib-genmarshal for this one. 2009-02-25 17:08:24 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/examples/dynamic/.gitignore: * tests/examples/dynamic/Makefile.am: * tests/examples/dynamic/sprinkle.c: sprinkle: Add another example app Add an example app that dynamically adds and removes audiotestsrc elements from adder. 2009-02-25 16:25:33 +0100 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: Fixed a typo. 2009-02-25 11:31:02 +0100 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspconnection.c: * gst/tcp/gstmultifdsink.c: rtsp, multifdsink: Unify the use of union gst_sockaddr. 2009-02-25 14:22:35 +0000 Jan Schmidt <thaytan@noraisin.net> * common: * configure.ac: build: Update shave init statement for changes in common. Bump common. 2009-02-25 13:16:32 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: xvimageink: protect buffer_alloc from shutdown Use the pool_lock in the buffer_alloc function to detect shutdown. Avoids crashes when the sink is shutdown. 2009-02-25 12:43:53 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin: use flushing pads instead of fakesink Use the flushing pads on playsink to terminate on shutdown instead of plugging fakesinks. this should be a little cheaper. 2009-02-25 12:42:20 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaysink.c: * gst/playback/gstplaysink.h: playsink: Add FLUSHING pad type Make it possible to request a flushing pad from the playsink. We can eventually use these flushing pads to quickly terminate the dataflow when we are shutting down. 2009-02-25 11:31:52 +0000 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From 9cf8c9b to a6ce5c6 2009-02-25 09:52:38 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/riff/riff-media.c: riff: add fourcc for mpeg2-in-avi (as produced by mencoder) Fixes: #565777 2009-02-25 12:07:43 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/icles/stress-playbin.c: stress-playbin: print the current uri Print the current uri so that we can more easily see what uri caused a crash or error. 2009-02-25 11:07:20 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * tests/icles/stress-playbin.c: Print the errors more clearly Print some more verbose messages when dealing with errors. 2009-02-25 10:08:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: Release the group lock when setting states Release the group lock while we perform the state changes on the uridecodebins because that might trigger callbacks that we need to handle with the group lock taken. Avoids a possible deadly embrace in some id3/flac files. Fixes #567396. 2009-02-25 10:05:38 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: Combine finding and creating groups Combine the search for the current group and optionally creating one into one function so that we can avoid taking the lock multiple times. 2009-02-25 08:22:00 +0100 Edward Hervey <bilboed@bilboed.com> * gst/playback/gstplaybin2.c: Playbin2: Don't leave unused parameters in debug statements. Fixes build on macosx 2009-02-24 10:33:05 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: Riff: Add fourcc for mpeg1-in-avi (as produced by mencoder) 2009-02-24 18:43:45 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstplaybin2.c: Add some G_UNLIKELY because we can Add a G_UNLIKELY when checking the shutdown variable. 2009-02-24 17:23:58 +0000 Garret D'Amore <garrett.damore@sun.com> * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/mixertrack.h: mixer interface: Add flags to enhance mixer interfaces This patch adds a few flags to the mixer and mixerctrl interface to better support OSSv4 (and potentially other backends). Patch By: Garret D'Amore <garrett.damore@sun.com> Signed-Off-By: Jan Schmidt <jan.schmidt@sun.com> API: GST_MIXER_FLAG_HAS_WHITELIST, GST_MIXER_FLAG_GROUPING, API: GST_MIXER_TRACK_NO_RECORD, GST_MIXER_TRACK_NO_MUTE, API: GST_MIXER_TRACK_WHITELIST 2009-02-24 17:03:08 +0000 Jan Schmidt <thaytan@noraisin.net> * gst/tcp/gstmultifdsink.c: multifdsink: Fix strict aliasing error using a union 2009-02-24 16:49:40 +0000 Jan Schmidt <thaytan@noraisin.net> * gst-libs/gst/rtsp/gstrtspconnection.c: rtsp: Fix a strict aliasing warning Fix strict aliasing warnings from casting a sockaddr_storage and using it as a sockaddr_in6. Use a union instead. 2009-02-24 16:08:49 +0000 Jan Schmidt <thaytan@noraisin.net> * docs/libs/.gitignore: * docs/libs/tmpl/.gitignore: * docs/plugins/.gitignore: * docs/plugins/tmpl/.gitignore: Remove .gitignore files from the docs tmpl dirs, that are killed by make clean. 2009-02-24 14:36:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * docs/plugins/Makefile.am: * ext/vorbis/Makefile.am: * ext/vorbis/gstvorbisdec.h: * ext/vorbis/gstvorbisenc.h: * ext/vorbis/gstvorbisparse.h: * ext/vorbis/gstvorbistag.h: * ext/vorbis/vorbis.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * ext/vorbis/vorbisparse.c: * ext/vorbis/vorbistag.c: vorbis: Rename vorbis*.h to gstvorbis*.h to prevent name conflicts 2009-02-24 14:06:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Add conversion from/to YVYU colorspace Fixes bug #572872. 2009-02-24 13:42:01 +0100 Jonas Danielsson <jonas.danielsson@axis.com> * gst/ffmpegcolorspace/imgconvert.c: ffmpegcolorspace: Add direct UYVY->GRAY8 conversion The conversion from UYVY to RGB24 and then to GRAY8 is quite slow. Fixes bug #569655. 2009-02-19 17:16:51 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaybin2.c: playbin2: fix deadlock when shutting down. Fixes #572577. 2009-02-19 17:15:18 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * tests/icles/stress-playbin.c: stress-playbin: make more flexible, e.g. also useful for playbin2 2009-02-24 12:11:00 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: Match WSAStartup and WSACleanup correctly Don't randomly call WSAStartup and WSACleanup but instead call the startup when we create a connection and cleanup when we free it again. Because the internal datastructure is refcounted, this should not cause any refcounting leaks when the connection is managed correctly. Fixes #562794. 2009-02-18 11:59:58 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/playback/gstplaysink.c: playbin2/playsink: Set audiotee to PAUSED state in all cases. Fixes #565105. 2009-02-23 10:57:42 -0800 David Flynn <davidf@rd.bbc.co.uk> * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-cdda-uninstalled.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-floatcast-uninstalled.pc.in: * pkgconfig/gstreamer-interfaces-uninstalled.pc.in: * pkgconfig/gstreamer-netbuffer-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: Add srcdir to includes for out-of-source builds When you use gstreamer uninstalled and build outside the source tree, the includes need to be specified for both the source tree and the build tree. Signed-off-by: David Schleef <ds@schleef.org> 2009-02-22 17:23:52 +0000 Jan Schmidt <thaytan@noraisin.net> * configure.ac: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: Use shave for the build output 2009-02-23 12:17:07 +0100 Edward Hervey <bilboed@bilboed.com> * win32/common/libgstrtsp.def: win32: Add new symbol to libgstrtsp.def 2009-02-23 10:57:08 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspextension.c: * gst-libs/gst/rtsp/gstrtspextension.h: Add method for handling server requests Add a receive_request so that extensions can react to server requests. 2009-02-22 19:20:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * tests/check/libs/netbuffer.c: Correctly cast to GstBuffer * before passing to gst_buffer_(copy|unref) 2009-02-22 19:19:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * ext/theora/theoraparse.c: theoraparse: Use the correct unref functions 2009-02-22 19:18:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: x(v)imagesink: Correctly cast to GstBuffer * before passing to gst_buffer_unref() 2009-02-22 19:12:00 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst-libs/gst/tag/gsttagdemux.c: tagdemux: Unref the actual buffer instead of the memory address of the buffer 2009-02-22 15:47:53 +0000 Jan Schmidt <thaytan@noraisin.net> * common: Automatic update of common submodule From 5d7c9cc to 9cf8c9b 2009-02-22 14:49:29 +0100 Edward Hervey <bilboed@bilboed.com> * win32/common/libgstrtsp.def: * win32/common/libgstvideo.def: win32/common: Update .def files for recent API addition 2009-02-22 13:43:35 +0100 Edward Hervey <bilboed@bilboed.com> * tests/check/libs/rtp.c: tests: Fix indentation 2009-02-22 13:42:33 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/video/video.c: libs/video: Fix gst_video_format_new_caps* functions. Only add a 'interlaced=True' property to caps *IF* it is interlaced, else don't add anything. 2009-02-21 11:13:36 -0800 David Schleef <ds@schleef.org> * common: Automatic update of common submodule From 80c627d to 5d7c9cc 2009-02-20 17:26:40 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: Improve key/value parsing Improve header field parsing by keeping a ref to the key/value instead of copying it into a local variable. 2009-02-20 12:35:53 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: Add trailing \0 to message length We always put a trailing 0 at the end of the message body. Reflect this fact in the length of the message. 2009-02-20 09:50:15 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: Don't parse headers for data messages Don't try to parse the headers on a data message because they don't have headers. 2009-02-19 12:18:29 -0800 Benjamin M. Schwartz <bens@alum.mit.edu> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: theoraenc: Add property for speed level control Add property "speed-level" to control the amount of motion searching the encoder does. This is only available in libtheora >= 1.0 and will silently fail with earlier libraries. Fixes: #572275. Signed-off-by: David Schleef <ds@schleef.org> 2009-02-19 17:40:45 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Fix 'Since' tags 2009-01-26 10:30:53 +0100 Edward Hervey <bilboed@bilboed.com> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: video: Add flags for interlaced video along with convenience methods for interlaced caps. These three flags allow all know combinations of interlaced formats. They should only be used when the caps contain 'interlaced=True'. Fixes #163577 (yes, it's a 4 year old bug). 2009-02-19 15:51:52 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: Make RTSPConnection opaque and rename RTSPChannel Make the RTSPConnection object opaque so that we can extend it in the future. Rename GstRTSPChannel to GstRTSPWatch to avoid confusing with the RTSP channels. 2009-01-26 10:31:14 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/riff/riff-media.c: Add some more mappings for h264 in riff 2009-02-19 10:49:56 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstrtsp.def: Add new RTSP symbols to def files Add the new RTSP symbols to the windows def file. 2009-02-19 10:44:31 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/appsink.c: Add method to install callbacks on appsink Based on pacth by Martin Samuelsson <martin dot samuelsson at axis dot com> Fixes #571299. Add gst_app_sink_set_callbacks() to install a set of callbacks. This is a more performant alternative to connecting to the signals. Add a unit test for appsink. Clean up some of the appsink docs. API: GstAppSink::gst_app_sink_set_callbacks() 2009-02-18 18:46:35 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: Add RTSP accept method Add a method to accept a connection on a socket and create a GstRTSPConnection for it. API: gst_rtsp_connection_accept() 2009-02-18 17:42:59 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspconnection.h: Add RTSP channel object for async io Add a GstRTSPChannel object that wraps a GSource around the RTSP connection so that the connection can be monitored from a maincontext. This allows us to operate in ASYNC mode, which is handy when building a server. Rework the old code to use the async code under the hood. API: gst_rtsp_channel_new() API: gst_rtsp_channel_unref() API: gst_rtsp_channel_attach() API: gst_rtsp_channel_queue_message() 2009-02-15 07:30:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/audioresample/gstaudioresample.c: audioresample: Add locking to protect the resampling context When setting the quality/filter-length while PLAYING the resampling context will be destroyed and created again in some cases, which will cause crashes in the transform function if it's called at that time. 2009-02-13 10:10:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/videotestsrc/videotestsrc.c: ffmpegcolorspace/videotestsrc: Use v308 instead of V308 2009-02-12 19:02:59 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: ffmpegcolorspace: Add support for packed 4:4:4 YUV (format=V308) Only conversions from/to are implemented, which gives (indirect) support for all possible conversions. Partially fixes bug #571147. 2009-02-12 18:17:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: videotestsrc: Add support for packed 4:4:4 YUV (format=V308) Partially fixes bug #571147. 2009-02-12 09:18:20 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/tag/gsttagdemux.c: tagdemux: don't abort when downstream pulls a buffer of size 0 Pulling a 0-sized buffer is allowed, and we should handle this correctly instead of aborting. Fixes #571009 (wma file with ID3v2 tag). 2009-02-11 16:39:55 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/riff/riff-read.c: riff: error out on nonsensical chunk sizes instead of aborting When encountering a nonsensical chunk size such as (guint)-1, error out cleanly instead of continuing and trying to g_memdup() 4GB of data that doesn't exist, which will either abort in g_malloc() or crash. Fixes #553295, crash with fuzzed AVI file. 2009-02-11 16:39:06 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * .gitignore: Make git ignore backup files. 2009-02-10 20:38:58 -0800 Michael Smith <msmith@syncword.(none)> * gst/playback/gstplaybin2.c: Revert "Remove pad-removed handlers after setting the decodebins to NULL." This reverts commit b36d8f3e119f9edc5993c08025614ee32642972e. This brought back some deadlocks. A small leak is better, for now. Need to figure out a way to fix the leak properly. 2009-02-10 17:16:07 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: playbin2: Fix segfault on notify after group change. If our group has been switched, then we get a selector active-pad notification, we don't need to notify. 2009-02-10 17:10:33 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaysink.c: playbin2: Look for volume/mute properties recursively in audio element. Rather than only checking for volume property on the audio sink directly, recursively look for it on sinks within it (if it's a bin). Allows use of sink-as-volume-control where the application has supplied an audio-sink bin that includes a real audio sink internally. 2009-02-10 18:29:22 +0000 Christian Schaller <cschalle@crazyhorse.localdomain> * gst-plugins-base.spec.in: Update spec file with latest additions and changes, most noteably the move of appsrc appsink into -base 2009-02-10 17:39:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * gst/videotestsrc/videotestsrc.c: videotestsrc: Add support for Y444 (planar 4:4:4 YUV) Partially fixes bug #571147. 2009-02-10 17:37:06 +0100 Peter Kjellerstedt <pkj@axis.com> * gst-libs/gst/rtsp/gstrtspmessage.c: gstrtspmessage: Minor documentation correction. Corrected documentation about what needs to be freed after calling gst_rtsp_message_new(), gst_rtsp_message_new_request(), gst_rtsp_message_new_response() and gst_rtsp_message_new_data(). 2009-02-10 11:00:12 +0100 Antoine Tremblay <hexa00@gmail.com> * ext/alsa/gstalsamixer.c: alsamixer: Fix race condition that made alsamixer not working properly This is due to race conditions between functions that modified the mixer like set_volume and snd_mixer_handle_events since the handle_events can now be called at any time. Fixed by adding locking around any snd_mixer call since even read functions can modify the mixer stucture, since alsa likes to clear it's values before reading new ones. The favorite race condition seemed to be that set_volume called read_elem (in alsalib) that reset the volumes to 0 and then read them with read_x_volume. This read looped on each channel and as the race condition occured the channels value could be anything , most of the time it was 0. Thus no value was read or only the value of one channel was and the volume was reset to 0. Fixes bug #478512. 2009-02-09 12:02:21 +0100 Edward Hervey <bilboed@bilboed.com> * common: Bump revision to use for common submodule. 2009-02-05 15:47:00 +0200 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: xvimagesink: do not call _xwindow_clear on ready->paused. Calling clear at that transition does things like stopping xvideo (which is not running at that time) and also clearing anything what the application might have drawn. This breaks handle-expose and autopaint-colorkey features. 2009-02-04 17:03:52 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtsprange.c: * gst-libs/gst/rtsp/gstrtsprange.h: RTSPRange: Add method to serialize ranges Add gst_rtsp_range_to_string() to serialize a GstRTSPRange to a string that can be used by a server. API: GstRTSPRange::gst_rtsp_range_to_string() 2009-02-04 13:16:48 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspurl.c: * gst-libs/gst/rtsp/gstrtspurl.h: GstRTSPUrl: Add some const to methods Add const to the methods that do not modify the object. 2009-02-04 13:53:30 +0200 Stefan Kost <ensonic@users.sf.net> * gst/playback/gstplaysink.c: playbin2: implement GST_PLAY_FLAG_NATIVE_{AUDIO,VIDEO} The flags where present but actually not been taken into account. 2009-02-04 12:06:38 +0200 Stefan Kost <ensonic@users.sf.net> * gst/audioresample/gstaudioresample.c: audioresample: Add a proper deprecation comment and also drop G_PARAM_CONSTRUCT. The comment will ensure that is is marked properly in the docs and the GParamSpecflag was causing a duplicated initialisation of the same value. 2009-02-04 11:18:31 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspconnection.c: Add more g_return_if_fail() calls Check that we have a valid file descriptor before entering certain functions in order to avoid undesirable situations. Add some more debugging in the connect method. 2009-02-04 10:31:21 +0200 Stefan Kost <ensonic@users.sf.net> * configure.ac: * gst/audioresample/Makefile.am: * gst/audioresample/gstaudioresample.c: audioresample: Only pull in liboil if its actualy used. Liboil still has quite significant startup overhead especialy on embedded platforms. In audioresample it was only used for the profiling timer. 2009-02-03 15:26:08 +0200 Stefan Kost <ensonic@users.sf.net> * gst/typefind/gsttypefindfunctions.c: typefind: Make the flac check more tight to not mistace some aac files for flac. Fixes #570356. Add comments about the flac format. Tighten the check to not allow values that refer to headers. 2009-02-03 10:52:15 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * win32/common/libgstrtsp.def: Add new methods Add new methods to the windows def file. 2009-02-02 17:25:21 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> * gst-libs/gst/pbutils/install-plugins.c: * tests/check/libs/pbutils.c: pbutils: remove duplicate detail strings when calling the external codec installer It doesn't make sense to ask installers for the same codec or element twice, so filter out duplicate requests before calling the external helper script and make the unit test check this works right. Fixes #567636. 2009-02-02 18:05:42 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: Add a FIXME 0.11. Make the log message a bit more detailed and add comments. 2009-02-02 15:43:03 +0200 Stefan Kost <ensonic@users.sf.net> * configure.ac: * gst/audioresample/gstaudioresample.c: Allow to configure the resampler function for integer to skip the benchmarking. Fix releasing the intger resampler in benchmark. 2009-02-02 13:30:42 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * sys/ximage/ximagesink.c: Fix buffer_alloc in ximagesink Remove some useless debug info that reported wrong image sizes. When upstream does not accept out suggested size, fall back to allocating an image of the requested width/height instead of the currently configured size. The problem is that an image is reused from the pool because the width/height match but the caps on the new buffer are the requested caps with possibly different height/width resulting in errors. 2009-02-02 12:54:31 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gstdecodebin2.c: * gst/playback/gsturidecodebin.c: Fix documentation for autoplug-select fix the documentation strings for the autoplug-select signal. Fixes #570142. 2009-02-02 10:09:07 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspmessage.c: Fix string leak in rtspmessage when we remove a header field from a message we must free the value associated with the key to avoid a memory leak. 2009-01-31 18:45:47 +0200 Stefan Kost <ensonic@users.sf.net> * docs/libs/gst-plugins-base-libs-docs.sgml: Its "Base Library" and not just "Library". 2009-01-31 18:44:32 +0200 Stefan Kost <ensonic@users.sf.net> * gst-libs/gst/audio/gstaudiofilter.c: Link to the class, as we can't link to the members yet. 2009-01-30 17:48:23 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Remove pad-removed handlers after setting the decodebins to NULL. They do needed cleanup; without this we leak selector requestpads. 2009-01-30 17:47:07 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Unref selector request pad even if we no longer have a selector. During destruction, we won't have a selector any more, but we still need to unref the pad to avoid leaking it. 2009-01-30 15:23:23 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Unref source in playbin2's finalize method 2009-01-30 12:04:01 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaysink.c: Fix more leaks of pads and elements in gstplaysink. Don't keep extra references to volume and mute elements; we don't need to do so. Ensure we unref pads that we have references to, and release request pads. 2009-01-30 11:04:37 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaysink.c: Avoid leaking all playsinks. Fix some internal leaks. Playsink was holding references to itself. Don't do that, it's not cool. Also, free all chains in dispose. 2009-01-30 10:54:12 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Unref peer request pad after releasing it, since we hold a reference. 2009-01-30 10:52:52 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Fix caps leak in playbin2. 2009-01-30 10:51:11 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Unref active pad from selector when finding active stream. 2009-01-30 10:49:55 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gstplaybin2.c: Free uris when finalizing playbin2 instance. 2009-01-30 10:38:17 -0800 Michael Smith <msmith@songbirdnest.com> * gst/playback/gsturidecodebin.c: Unref pads when iterating over them in analyse_source. Fixes leak of source's srcpad when using uridecodebin. 2009-01-30 22:22:07 +0200 Stefan Kost <ensonic@users.sf.net> * docs/plugins/gst-plugins-base-plugins-docs.sgml: Add releaseinfo with online url. 2009-01-30 17:58:15 +0000 Jan Schmidt <jan.schmidt@sun.com> * gst/playback/gstplaybasebin.c: Fix compilation warning on Forte 2009-01-30 17:16:39 +0000 Jan Schmidt <jan.schmidt@sun.com> * gst/adder/gstadder.c: Don't do void pointer arithmetic. 2009-01-30 17:25:51 +0000 Jan Schmidt <thaytan@noraisin.net> * common: Bump common 2009-01-30 08:50:53 +0100 Edward Hervey <bilboed@bilboed.com> * autogen.sh: * common: Use a symbolic link for the pre-commit client-side hook 2009-01-30 08:12:42 +0100 Edward Hervey <bilboed@bilboed.com> * .gitignore: Add more files/directories to ignore 2009-01-29 14:00:30 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspdefs.c: fix some typos Fix some typos in the doc string of the new gst_rtsp_options_as_string() method. 2009-01-29 11:55:10 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspconnection.c: * gst-libs/gst/rtsp/gstrtspmessage.c: * gst-libs/gst/rtsp/gstrtspmessage.h: Add new RTSP message method to set header Add gst_rtsp_message_take_header() that takes ownership of the passed header value. This allows us to avoid an allocations and memory copy in some situations. API: GstRTSPMessage::gst_rtsp_message_take_header() 2009-01-29 11:51:23 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * docs/libs/gst-plugins-base-libs-sections.txt: Add new method to docs Add the new gst_rtsp_options_as_text() method to the docs. 2009-01-28 11:48:01 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtsp/gstrtspdefs.c: * gst-libs/gst/rtsp/gstrtspdefs.h: Add method to serialize RTSP options Add gst_rtsp_options_as_text() method to serialize a set of RTSP options to a string. API: GstRTSP::gst_rtsp_options_as_text() 2009-01-26 17:59:37 -0800 Michael Smith <msmith@songbirdnest.com> * gst/typefind/gsttypefindfunctions.c: Ensure we have sufficient data when using data scan contexts. Fixes crashes typefinding things that look like they might contain AAC data (but probably aren't actually AAC). 2009-01-26 23:32:09 +0000 Jan Schmidt <thaytan@noraisin.net> * ext/gio/Makefile.am: Fix include order for gio plugin 2009-01-23 23:59:48 +0000 Jan Schmidt <thaytan@noraisin.net> * win32/common/config.h: Update win32 config.h for 0.10.22.1 dev cycle 2009-01-23 23:16:11 +0000 Jan Schmidt <thaytan@noraisin.net> * .gitignore: * docs/libs/.gitignore: * gst-libs/gst/audio/.gitignore: * gst-libs/gst/video/.gitignore: * po/.gitignore: * tests/examples/dynamic/.gitignore: Extend and clean up git ignores 2009-01-23 12:31:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk> * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst/audioresample/Makefile.am: * gst/audioresample/README: * gst/audioresample/arch.h: * gst/audioresample/buffer.c: * gst/audioresample/buffer.h: * gst/audioresample/debug.c: * gst/audioresample/debug.h: * gst/audioresample/fixed_arm4.h: * gst/audioresample/fixed_arm5e.h: * gst/audioresample/fixed_bfin.h: * gst/audioresample/fixed_debug.h: * gst/audioresample/fixed_generic.h: * gst/audioresample/functable.c: * gst/audioresample/functable.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/resample.h: * gst/audioresample/resample_chunk.c: * gst/audioresample/resample_functable.c: * gst/audioresample/resample_ref.c: * gst/audioresample/resample_sse.h: * gst/audioresample/speex_resampler.h: * gst/audioresample/speex_resampler_double.c: * gst/audioresample/speex_resampler_float.c: * gst/audioresample/speex_resampler_int.c: * gst/audioresample/speex_resampler_wrapper.h: * gst/speexresample/Makefile.am: * gst/speexresample/gstspeexresample.c: * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/typefind/gsttypefindfunctions.c: * tests/check/Makefile.am: * tests/check/elements/audioresample.c: * tests/check/elements/speexresample.c: Rename files and types from speexresample to audioresample Rename files and types from speexresample to audioresample to finish the move and to prevent any confusion. 2009-01-23 11:44:53 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * sys/xvimage/xvimagesink.c: Add some more debugging to the Xv strides Add some more debugging to the strides as they are received from the server and the expected strides. 2009-01-23 11:40:26 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/typefind/gsttypefindfunctions.c: Add typefind function for gsm Because core now supports typefindfactories without a typefind function we can register a factory fo GSM that will --if all else fails-- assume the file is a GSM file based on the registered extension. Fixes #566661. 2009-01-23 11:37:45 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst/playback/gsturidecodebin.c: Use more performant link function We can use gst_element_link_pads() instead of the more generic gst_element_link() function because we know the pads. This saves some cycles because the more generic function needs to search for possible compatible caps etc. 2009-01-23 11:33:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: Add more codec ids for RIFF formats Handle codec ID for various other AAC formats. Sync the list of possible codec ids with that of ffmpeg. Fixes #567255 2009-01-23 11:27:16 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/theora/theoradec.c: Use rounded values for image strides and sizes Round up the height before calculating the expected size and strides of the output image. 2009-01-23 11:23:09 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * ext/alsa/gstalsasink.c: Improve debug message Improve the debug message when alsa returns an error. 2009-01-23 11:07:05 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/app/gstappsrc.c: Reset queued_bytes counter when flushing Set the amount of queued bytes in the internal queue back to 0 when we clear the queue. Fixes #567982 2009-01-23 10:19:27 +0100 Benjamin Gaignard <benjamin@gaignard.net> * gst/typefind/gsttypefindfunctions.c: Add typefinder for Mobile XMF. Fixes bug #568707. 2009-01-23 10:00:11 +0100 Brian Cameron <brian.cameron@sun.com> * configure.ac: Fix linking on Solaris. Fixes bug #568482. Check for nsl and socket libraries and add them to LIBS if they're found. They're needed for socket() and gethostbyname() on Solaris. 2009-01-22 22:09:47 +0000 Jan Schmidt <thaytan@noraisin.net> * gst/playback/gstplaybasebin.c: Fix use-after-unref problem noticed by Josep Torra Valles, and run gst-indent 2009-01-22 17:46:59 +0200 Stefan Kost <ensonic@users.sf.net> * common: Update common snapshot. 2009-01-22 13:47:24 +0100 Sebastian Dröge <slomo@circular-chaos.org> * common: Fix pre-commit hook 2009-01-22 13:12:02 +0100 Wim Taymans <wim.taymans@collabora.co.uk> Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base 2009-01-22 10:14:28 +0100 Sebastian Dröge <slomo@circular-chaos.org> * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts32.c: Reduce the number of allocations for creating FFT contexts Reduce the number of allocations from 2 to 1 for every FFT context by allocating enough memory for the FFT context and passing parts of it to the kissfft allocation functions. 2009-01-22 11:32:56 +0000 Jan Schmidt <thaytan@noraisin.net> * configure.ac: Back to devel -> 0.10.22.1 2009-01-22 05:57:53 +0100 Edward Hervey <bilboed@bilboed.com> * autogen.sh: * common: Install and use pre-commit indentation hook from common 2009-01-21 13:09:29 +0100 Wim Taymans <wim.taymans@collabora.co.uk> * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: Avoid overflows in the padding checks by doing the check slightly differently. Add a unit test to check for correct behaviour. 2009-01-21 04:31:32 +0100 Edward Hervey <bilboed@bilboed.com> * autogen.sh: autogen.sh : Use git submodule === release 0.10.22 === 2009-01-19 23:10:50 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: Release 0.10.22 Original commit message from CVS: Release 0.10.22 2009-01-19 22:01:01 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2009-01-16 11:44:04 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/fft/: Use correct struct alignment everywhere to prevent unaligned memory accesses, resulting in SIGBUS ... Original commit message from CVS: * gst-libs/gst/fft/_kiss_fft_guts_f32.h: * gst-libs/gst/fft/_kiss_fft_guts_f64.h: * gst-libs/gst/fft/_kiss_fft_guts_s16.h: * gst-libs/gst/fft/_kiss_fft_guts_s32.h: * gst-libs/gst/fft/kiss_fftr_f32.c: (kiss_fftr_f32_alloc): * gst-libs/gst/fft/kiss_fftr_f64.c: (kiss_fftr_f64_alloc): * gst-libs/gst/fft/kiss_fftr_s16.c: (kiss_fftr_s16_alloc): * gst-libs/gst/fft/kiss_fftr_s32.c: (kiss_fftr_s32_alloc): Use correct struct alignment everywhere to prevent unaligned memory accesses, resulting in SIGBUS on sparc and probably others. Fixes bug #500833. 2009-01-16 11:40:02 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/tag/gsttagdemux.c: Forward unknown events upstream to allow latency configuration. Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: (gst_tag_demux_srcpad_event): Forward unknown events upstream to allow latency configuration. Fixes bug #567960. 2009-01-13 14:47:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Provide the right arguments to a debug line. Original commit message from CVS: * gst/playback/gstplaybin2.c: (groups_set_locked_state): Provide the right arguments to a debug line. 2009-01-13 06:51:54 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: Don't reset the colorkey when element is reused. Fixes #567511. Original commit message from CVS: * sys/xvimage/xvimagesink.c: Don't reset the colorkey when element is reused. Fixes #567511. 2009-01-09 23:42:22 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: 0.10.21.3 pre-release Original commit message from CVS: * configure.ac: 0.10.21.3 pre-release 2009-01-09 23:13:17 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/app/gstappsink.c: Store the returned signal id in the right slot when registering the pull-buffer signal. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: Store the returned signal id in the right slot when registering the pull-buffer signal. Fixes #567168 Spotted by: Thomas Vander Stichele <thomas at apestaart dot org> 2009-01-09 17:17:50 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixer.c: Small docs addition to clarify that one really mustn't free the constant GList retur... Original commit message from CVS: * gst-libs/gst/interfaces/mixer.c: Small docs addition to clarify that one really mustn't free the constant GList returned (#566812). 2009-01-08 17:18:24 +0000 Wim Taymans <wim.taymans@gmail.com> Add GType for GstRTSPUrl and expose a copy function because we can. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspurl.c: (register_rtsp_url_type), (gst_rtsp_url_get_type), (gst_rtsp_url_copy): * gst-libs/gst/rtsp/gstrtspurl.h: * win32/common/libgstrtsp.def: Add GType for GstRTSPUrl and expose a copy function because we can. API: gst_rtsp_url_copy() Fixes #567027. 2009-01-07 18:36:04 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add plugin dependency for the GIO and GVfs modules. Original commit message from CVS: * configure.ac: * ext/gio/gstgio.c: (plugin_init): Add plugin dependency for the GIO and GVfs modules. Fixes bug #566876. 2009-01-07 18:32:33 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add plugin dependency for the gnomevfs modules. Original commit message from CVS: * configure.ac: * ext/gnomevfs/gstgnomevfs.c: (plugin_init): Add plugin dependency for the gnomevfs modules. Fixes bug #566875. 2009-01-07 18:30:52 +0000 Sebastian Dröge <slomo@circular-chaos.org> win32/common/libgstcdda.def: Add new symbol to the list of exported symbols. Original commit message from CVS: * win32/common/libgstcdda.def: Add new symbol to the list of exported symbols. 2009-01-07 13:52:14 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Fix some comments and docs. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (gst_play_bin_set_uri), (gst_play_bin_set_suburi), (no_more_pads_cb), (drained_cb), (group_set_locked_state_unlocked), (activate_group), (deactivate_group), (groups_set_locked_state), (gst_play_bin_change_state): Fix some comments and docs. Post an error message when we fail to link the selector to the sink. Remove pushing of EOS, this seems unneeded. Lock the state of deactivated groups so that they don't accidentally reactivate when the playbin2 state changes. Reuse uridecodebins. Unlock and relock state of groups when playbin goes to NULL. Fixes #566654. Fixes #566341. * gst/playback/gsturidecodebin.c: (pad_removed_cb), (type_found): Only do something in the pad removed callback when we are dealing with our sourcepads because the sinkpads don't have a ghostpad. 2009-01-07 10:50:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/cdda/gstcddabasesrc.*: Make the GType of GstCDDABaseSrcMode public for bindings. Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: * gst-libs/gst/cdda/gstcddabasesrc.h: Make the GType of GstCDDABaseSrcMode public for bindings. Fixes bug #566837. 2009-01-06 18:03:51 +0000 Tim-Philipp Müller <tim@centricular.net> Use new core API to make registry re-scan the plugin whenever visualisations are added or removed (see #350477). Original commit message from CVS: * configure.ac: * ext/libvisual/visual.c: (plugin_init): Use new core API to make registry re-scan the plugin whenever visualisations are added or removed (see #350477). 2009-01-06 17:30:31 +0000 José Alburquerque <jaalburqu@svn.gnome.org> gst-libs/gst/audio/gstaudioclock.*: Make gst_audio_clock_new use const gchar* to ease the wrapping of Original commit message from CVS: Patch by: José Alburquerque <jaalburqu svn gnome org> * gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_new): * gst-libs/gst/audio/gstaudioclock.h: Make gst_audio_clock_new use const gchar* to ease the wrapping of C++ bindings. Fixes #566723. 2009-01-06 12:16:18 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add pkg-config files for libgstapp. Fixes bug #566761. Original commit message from CVS: * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-app-uninstalled.pc.in: * pkgconfig/gstreamer-app.pc.in: Add pkg-config files for libgstapp. Fixes bug #566761. 2009-01-06 11:10:29 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/app/: Make debug categories static. Use _element_class_set_details_simple(). Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: Make debug categories static. Use _element_class_set_details_simple(). 2009-01-06 10:56:45 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/app/: Move private data into a private instance struct. Add padding to instance and class structures exp... Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (_GstAppSinkPrivate), (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_dispose), (gst_app_sink_finalize), (gst_app_sink_unlock_start), (gst_app_sink_unlock_stop), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_getcaps), (gst_app_sink_set_caps), (gst_app_sink_get_caps), (gst_app_sink_is_eos), (gst_app_sink_set_emit_signals), (gst_app_sink_get_emit_signals), (gst_app_sink_set_max_buffers), (gst_app_sink_get_max_buffers), (gst_app_sink_set_drop), (gst_app_sink_get_drop), (gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer):: * gst-libs/gst/app/gstappsink.h: (GstAppSinkPrivate), (_GstAppSink):: * gst-libs/gst/app/gstappsrc.c: (_GstAppSrcPrivate), (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_flush_queued), (gst_app_src_dispose), (gst_app_src_finalize), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop), (gst_app_src_is_seekable), (gst_app_src_check_get_range), (gst_app_src_query), (gst_app_src_do_seek), (gst_app_src_create), (gst_app_src_set_caps), (gst_app_src_get_caps), (gst_app_src_set_size), (gst_app_src_get_size), (gst_app_src_set_stream_type), (gst_app_src_get_stream_type), (gst_app_src_set_max_bytes), (gst_app_src_get_max_bytes), (gst_app_src_set_latencies), (gst_app_src_set_latency), (gst_app_src_get_latency), (gst_app_src_push_buffer_full), (gst_app_src_push_buffer_action), (gst_app_src_end_of_stream):: * gst-libs/gst/app/gstappsrc.h: (GstAppSrcPrivate):: Move private data into a private instance struct. Add padding to instance and class structures exposed in public headers. Add Since markers to the gtk-doc blurbs (#566750). 2009-01-06 10:50:37 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/app/appsrc_ex.c: Some comments. Original commit message from CVS: * tests/examples/app/appsrc_ex.c: (main): Some comments. When pulling a buffer we can get NULL when the element is EOS, don't try to unref this NULL buffer. 2009-01-06 10:16:16 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/video/: Fix up build flags and include statement for the new generated enumtypes files, to fix dist. Original commit message from CVS: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video.h: Fix up build flags and include statement for the new generated enumtypes files, to fix dist. 2009-01-05 23:04:57 +0000 Jan Schmidt <thaytan@mad.scientist.com> Move AppSrc/AppSink from gst-plugins-bad. Fixes #564421 Original commit message from CVS: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-app.xml: * gst-libs/gst/Makefile.am: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * tests/examples/Makefile.am: * tests/examples/app/Makefile.am: Move AppSrc/AppSink from gst-plugins-bad. Fixes #564421 2009-01-05 17:13:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Avoid holding the OBJECT_LOCK when calling ringbuffer functions that take the ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_change_state): Avoid holding the OBJECT_LOCK when calling ringbuffer functions that take the ringbuffer lock because rinbuffer lock > OBJECT_LOCK. We can do this because the async_play method is deprecated and usually not called anymore. 2009-01-05 12:18:52 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Disconnect signal handlers before destroying a previous decodebin so that we don't end up... Original commit message from CVS: * gst/playback/gstplaybin2.c: (notify_source_cb), (activate_group): Disconnect signal handlers before destroying a previous decodebin so that we don't end up causing deadlocks. Fixes #566586. 2009-01-05 10:59:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiotestsrc/gstaudiotestsrc.*: Add property to control pull/push based scheduling. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init), (gst_audio_test_src_init), (gst_audio_test_src_check_get_range), (gst_audio_test_src_set_property), (gst_audio_test_src_get_property): * gst/audiotestsrc/gstaudiotestsrc.h: Add property to control pull/push based scheduling. 2009-01-02 15:04:13 +0000 Alessandro Decina <alessandro.d@gmail.com> Make the seek and colorkey examples depend on gtk+-x11 as they use Original commit message from CVS: * configure.ac: * tests/examples/seek/Makefile.am: * tests/icles/Makefile.am: Make the seek and colorkey examples depend on gtk+-x11 as they use GDK_WINDOW_XID. Fixes the build with gtk+-quartz. 2008-12-31 16:04:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> win32/common/: Add new exports to win32 files. Original commit message from CVS: * win32/common/libgstaudio.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: Add new exports to win32 files. 2008-12-31 13:31:55 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/tag/gsttagdemux.*: Add GType for GstTagDemuxResult enum. Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: (gst_tag_demux_result_get_type): * gst-libs/gst/tag/gsttagdemux.h: Add GType for GstTagDemuxResult enum. 2008-12-31 13:01:30 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/video/: Add glib-mkenum for GstVideoFormat enum GTYPE auto-generation. Original commit message from CVS: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/video.h: Add glib-mkenum for GstVideoFormat enum GTYPE auto-generation. This will help bindings to use it. 2008-12-31 11:20:26 +0000 Edward Hervey <bilboed@bilboed.com> Switch glib-mkenum for gst-libs/gst/audio from multichannel- to audio- in order to wrap all enums declarations of tha... Original commit message from CVS: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/audio/testchannels.c: * win32/MANIFEST: * win32/common/audio-enumtypes.c: (gst_audio_channel_position_get_type), (gst_ring_buffer_state_get_type), (gst_ring_buffer_seg_state_get_type), (gst_buffer_format_type_get_type), (gst_buffer_format_get_type): * win32/common/audio-enumtypes.h: * win32/common/multichannel-enumtypes.c: * win32/common/multichannel-enumtypes.h: * win32/vs6/grammar.dsp: * win32/vs6/libgstaudio.dsp: * win32/vs7/libgstaudio.vcproj: * win32/vs8/libgstaudio.vcproj: Switch glib-mkenum for gst-libs/gst/audio from multichannel- to audio- in order to wrap all enums declarations of that library. This modification should not matter since that header file is not a public header (it will be included by public headers). Modify win32 crap^Wfiles accordingly. 2008-12-30 17:55:07 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/audio/: Complete Sebastien's commit from the 13th by exporting the _slave_method_get_type() methods. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.h: * gst-libs/gst/audio/gstbaseaudiosink.h: Complete Sebastien's commit from the 13th by exporting the _slave_method_get_type() methods. 2008-12-29 16:45:20 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsrc.*: Add properties and methods to configure and retrieve the min and max latencies. Original commit message from CVS: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_query), (gst_app_src_set_latencies), (gst_app_src_set_latency), (gst_app_src_get_latency), (gst_app_src_push_buffer_full): * gst-libs/gst/app/gstappsrc.h: Add properties and methods to configure and retrieve the min and max latencies. 2008-12-20 17:38:41 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/: Implement URI query. Fixes bug #562949. Original commit message from CVS: * ext/gio/gstgiobasesink.c: (gst_gio_base_sink_query): * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_class_init), (gst_gio_base_src_query): * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_query): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init), (gst_gnome_vfs_src_query): Implement URI query. Fixes bug #562949. 2008-12-20 12:48:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Add some debug info. Original commit message from CVS: * gst/playback/gstplaybin2.c: (no_more_pads_cb): Add some debug info. * gst/playback/gstplaysink.c: (gen_video_chain), (gen_audio_chain), (gst_play_sink_reconfigure), (gst_play_sink_request_pad), (gst_play_sink_release_pad): Add some more debug info. Reconfigure the audio chain when we switch between raw and encoded audio in gapless playback. 2008-12-20 12:45:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Pause the write thread before deactivating and releasing the ringbuffer to avo... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_setcaps): Pause the write thread before deactivating and releasing the ringbuffer to avoid a deadlock when we do gapless playback with different sample rates in playbin2. Fixes #564929. 2008-12-19 13:03:00 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/gstbaseaudiosrc.c: Make GstAudioSrcSlaveMethod get_type() function non-static as it's public now. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: Make GstAudioSrcSlaveMethod get_type() function non-static as it's public now. * win32/common/libgstaudio.def: * win32/common/libgstnetbuffer.def: Add some missing functions to the list of exported symbols. 2008-12-18 12:37:33 +0000 Andrew Feren <acferen@yahoo.com> gst-libs/gst/netbuffer/gstnetbuffer.*: Make gst_netaddress_get_ip4_address fail for v6 addresses. Original commit message from CVS: Patch by: Andrew Feren <acferen at yahoo dot com> * gst-libs/gst/netbuffer/gstnetbuffer.c: (gst_netaddress_get_ip4_address), (gst_netaddress_get_ip6_address), (gst_netaddress_get_address_bytes), (gst_netaddress_set_address_bytes): * gst-libs/gst/netbuffer/gstnetbuffer.h: Make gst_netaddress_get_ip4_address fail for v6 addresses. Make gst_netaddress_get_ip6_address either fail or return the v4 address as a transitional v6 address. Add two convenience functions: API: gst_netaddress_get_address_bytes() API: gst_netaddress_set_address_bytes() Fixes #564896. 2008-12-17 13:51:46 +0000 Wim Taymans <wim.taymans@gmail.com> Add appsrc and appsink documentation. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init): Add appsrc and appsink documentation. 2008-12-17 08:51:34 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/adder/: Cleanup variable names to make the adder-loop easier to understand. Original commit message from CVS: * gst/adder/Makefile.am: * gst/adder/gstadder.c: Cleanup variable names to make the adder-loop easier to understand. Also try to use liboil to spee it up, but ifdef it out as it does not make any change for me (Intel pentim M (sse,sse2) please try on other systems). 2008-12-16 20:16:17 +0000 Wim Taymans <wim.taymans@gmail.com> Add minimal docs to make the remaining tcp elements show up. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversrc.c: Add minimal docs to make the remaining tcp elements show up. Fixes #564139. 2008-12-15 12:02:26 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/: Fix example to unref after emiting the push-buffer action. Original commit message from CVS: * examples/app/appsrc-ra.c: (feed_data): * examples/app/appsrc-seekable.c: (feed_data): * examples/app/appsrc-stream.c: (read_data): * examples/app/appsrc-stream2.c: (feed_data): Fix example to unref after emiting the push-buffer action. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_push_buffer_full), (gst_app_src_push_buffer), (gst_app_src_push_buffer_action): Don't take the ref on the buffer in push-buffer action because it's too awkward for bindings. Fixes #564482. 2008-12-13 19:32:13 +0000 Tim-Philipp Müller <tim@centricular.net> win32/common/config.h: Update to CVS version. Original commit message from CVS: * win32/common/config.h: Update to CVS version. * win32/common/config.h.in: Hardcode path to plugin install helper exe, just like we hardcode the paths in core. Removes another source of VCS conflicts for people hacking gst-plugins-base on systems with autotools. 2008-12-13 16:21:12 +0000 Edward Hervey <bilboed@bilboed.com> m4/Makefile.am: And a couple more .m4 that don't exist anymore with gettext 0.17 Original commit message from CVS: * m4/Makefile.am: And a couple more .m4 that don't exist anymore with gettext 0.17 2008-12-13 12:41:56 +0000 Edward Hervey <bilboed@bilboed.com> m4/Makefile.am: inttypes.m4 hasn't been available since gettext-0.15, and since we now require gettext >= 0.17 ... we... Original commit message from CVS: * m4/Makefile.am: inttypes.m4 hasn't been available since gettext-0.15, and since we now require gettext >= 0.17 ... we can remove it from the list of files to dist. 2008-12-13 06:57:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/: API: Add GST_TYPE_BASE_AUDIO_(SRC|SINK)_SLAVE_METHOD to the public API. This is needed for the C... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_slave_method_get_type), (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_slave_method_get_type), (gst_base_audio_src_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.h: API: Add GST_TYPE_BASE_AUDIO_(SRC|SINK)_SLAVE_METHOD to the public API. This is needed for the C++ bindings to be able to use this base classes. Fixes bug #564200, #564206. 2008-12-12 19:41:28 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/cdda/gstcddabasesrc.c: Remove erroneous gst_buffer_ref(). Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_handle_event): Remove erroneous gst_buffer_ref(). * tests/check/libs/rtp.c: (GST_START_TEST): Don't forget to unref the buffer once you're done with it. 2008-12-12 13:06:48 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/: XRef to GstXOverlay. Original commit message from CVS: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: XRef to GstXOverlay. 2008-12-12 10:54:45 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gsturidecodebin.c: Free the factory array when finalizing. Original commit message from CVS: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_finalize): Free the factory array when finalizing. * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_base_init): Use a GstStaticPadTemplate since the src pad caps are fixed. 2008-12-12 07:17:21 +0000 Edward Hervey <bilboed@bilboed.com> ext/vorbis/vorbisenc.c: Make vorbisenc's pad template behave like vorbisdec's. Fixes a leak with pad templates. Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_base_init), (gst_vorbis_enc_init): Make vorbisenc's pad template behave like vorbisdec's. Fixes a leak with pad templates. 2008-12-12 07:15:22 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Add mapping for VP6 in avi/riff. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add mapping for VP6 in avi/riff. 2008-12-11 15:49:12 +0000 Edward Hervey <bilboed@bilboed.com> gst/subparse/samiparse.c: Some versions of libxml seem to be very picky as to strict formatting of the input and neve... Original commit message from CVS: * gst/subparse/samiparse.c: (sami_context_push_state), (sami_context_pop_state), (start_sami_element), (end_sami_element): Some versions of libxml seem to be very picky as to strict formatting of the input and never 'close' the final </body> tag. In order to fix that bad behaviour, we trigger the flushing of remaining data on both </body> and </sami>. Fixes #557365 2008-12-11 12:32:03 +0000 Guillaume Emont <guillaume@fluendo.com> gst/typefind/gsttypefindfunctions.c: Add typefinders for MS Word files and OS X .DS_Store files to prevent them to be... Original commit message from CVS: Patch by: Guillaume Emont <guillaume at fluendo dot com> * gst/typefind/gsttypefindfunctions.c: (plugin_init): Add typefinders for MS Word files and OS X .DS_Store files to prevent them to be recognized as MPEG files. Fixes bug #564098. 2008-12-11 11:04:14 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Add some more debug info. Original commit message from CVS: * gst/playback/gstplaysink.c: (gen_audio_chain), (gst_play_sink_reconfigure): Add some more debug info. Fix linking of just an encoded sink. Handle failure to create a sink chain more gracefully than crashing. 2008-12-11 10:33:48 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/pipelines/theoraenc.c: Pushing 10 buffers is enough to run the test. Original commit message from CVS: * tests/check/pipelines/theoraenc.c: (GST_START_TEST): Pushing 10 buffers is enough to run the test. 2008-12-11 10:28:43 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Hook up the SKIP seek flag. Original commit message from CVS: * tests/examples/seek/seek.c: (do_seek), (stop_cb), (skip_toggle_cb), (rate_spinbutton_changed_cb), (msg_segment_done), (main): Hook up the SKIP seek flag. 2008-12-10 18:43:32 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Error out with a missing-plugin error when the input-selector was not found. Original commit message from CVS: * gst/playback/gstplaybin2.c: (pad_added_cb): Error out with a missing-plugin error when the input-selector was not found. * gst/playback/gstplaysink.c: (gst_play_sink_reconfigure): Indentation. 2008-12-10 17:39:32 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Use G_DEFINE_TYPE. Original commit message from CVS: * gst/playback/gstplaysink.c: (gst_play_sink_class_init), (gst_play_sink_dispose), (gst_play_sink_finalize), (try_element), (gen_video_chain), (gen_audio_chain), (gst_play_sink_reconfigure), (gst_play_sink_send_event), (gst_play_sink_change_state): Use G_DEFINE_TYPE. Try to set the selected sink to READY before using it. This will allow for detection of incompatible formats sooner. Don't cause a fatal error when conversion elements are missing but post a missing-element message and a warning instead because things might still link and run fine. Simplyfy the construction of audio and video sink chains. 2008-12-10 14:55:10 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Use G_DEFINE_TYPE for the OggPad to get some threadsafe type init from glib. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_class_init), (gst_ogg_pad_dispose), (gst_ogg_pad_finalize): Use G_DEFINE_TYPE for the OggPad to get some threadsafe type init from glib. 2008-12-10 08:19:13 +0000 Luis Menina <liberforce@freeside.fr> gst/: Include glib.h instead of a specific GLib header. Including single Original commit message from CVS: Patch by: Luis Menina <liberforce at freeside dot fr> * gst-libs/gst/floatcast/floatcast.h: * gst/typefind/gsttypefindfunctions.c: Include glib.h instead of a specific GLib header. Including single GLib headers is deprecated. Fixes bug #563904. 2008-12-09 18:30:10 +0000 Julien Moutte <julien@moutte.net> gst-libs/gst/riff/riff-media.c: Support higher max audio rates for some formats (WAV, Vorbis, LPCM). Original commit message from CVS: 2008-12-09 Julien Moutte <julien@fluendo.com> * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Support higher max audio rates for some formats (WAV, Vorbis, LPCM). 2008-12-09 17:21:37 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/riff-read.c: Fix handling of odd chunks in riff metadata. Original commit message from CVS: * gst-libs/gst/riff/riff-read.c: Fix handling of odd chunks in riff metadata. 2008-12-08 18:44:22 +0000 Wim Taymans <wim.taymans@gmail.com> gst/volume/gstvolume.c: Use new basetransform vmethod to reconfigure the dynamic properties and any pending volume/mu... Original commit message from CVS: * gst/volume/gstvolume.c: (gst_volume_class_init), (volume_before_transform), (volume_transform_ip): Use new basetransform vmethod to reconfigure the dynamic properties and any pending volume/mute changes. Fixes #563508. 2008-12-08 18:12:18 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: First check for "theoraenc theoradec" and if that failed check for "theora >= 1.0alpha5". The former ap... Original commit message from CVS: * configure.ac: First check for "theoraenc theoradec" and if that failed check for "theora >= 1.0alpha5". The former appeared in 1.0beta3 and deprecate the latter. Also linking on Windows fails with just "theora" and the version check would fail for the release candidates. Fixes bug #563718. 2008-12-08 15:25:13 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/: Add basic docs to decodebin and link to decodebin from decodebin2. Original commit message from CVS: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: Add basic docs to decodebin and link to decodebin from decodebin2. 2008-12-08 12:08:32 +0000 Olivier Crete <tester@tester.ca> gst-libs/gst/rtp/gstrtcpbuffer.*: Implement gst_rtcp_packet_remove(). Fixes #563174. Original commit message from CVS: Patch by: Olivier Crete <tester at tester ca> * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_remove): * gst-libs/gst/rtp/gstrtcpbuffer.h: Implement gst_rtcp_packet_remove(). Fixes #563174. * tests/check/libs/rtp.c: (GST_START_TEST), (rtp_suite): Add unit test for some RTCP functions. 2008-12-04 20:09:19 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one macro directory, reverting last change. Original commit message from CVS: * configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one macro directory, reverting last change. 2008-12-04 19:47:12 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our M4 macros. Original commit message from CVS: * configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our M4 macros. 2008-12-03 17:47:44 +0000 Edward Hervey <bilboed@bilboed.com> sys/: Clear all flags on buffers returned from the image pool. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_buffer_alloc): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_buffer_alloc): Clear all flags on buffers returned from the image pool. Fixes #563143 2008-12-01 19:36:35 +0000 이문형 <iwings@gmail.com> gst-libs/gst/app/gstappsrc.c: Don't forget to release the lock again if we bail out because some pad is flushing or w... Original commit message from CVS: Patch by: 이문형 <iwings at gmail dot com> * gst-libs/gst/app/gstappsrc.c: (gst_app_src_push_buffer): Don't forget to release the lock again if we bail out because some pad is flushing or we've reached EOS, otherwise things will lock up next time _push_buffer() is called (#562802). 2008-11-29 13:31:47 +0000 Sebastian Dröge <slomo@circular-chaos.org> Require gettext 0.17 because older versions don't mix with libtool 2.2. At build time an older gettext version will s... Original commit message from CVS: Patch by: Cygwin Ports maintainer <yselkowitz at users dot sourceforge dot net> * autogen.sh: * configure.ac: Require gettext 0.17 because older versions don't mix with libtool 2.2. At build time an older gettext version will still work. Fixes bug #556091. 2008-11-28 13:30:36 +0000 Christian Schaller <uraeus@gnome.org> * ChangeLog: * gst/speexresample/Makefile.am: fix build Original commit message from CVS: fix build 2008-11-28 09:44:12 +0000 Sebastian Dröge <slomo@circular-chaos.org> Update documentation of speexresample for the new element name. Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-videorate.xml: * gst/speexresample/gstspeexresample.c: Update documentation of speexresample for the new element name. 2008-11-28 09:04:46 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/README: Update README with the latest diff between the Speex resampler and our copy. Original commit message from CVS: * gst/speexresample/README: Update README with the latest diff between the Speex resampler and our copy. 2008-11-28 08:37:50 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Update the debug category from speex_resample to audioresample. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (plugin_init): Update the debug category from speex_resample to audioresample. 2008-11-27 19:13:59 +0000 Sebastian Dröge <slomo@circular-chaos.org> Remove audioresample files. Original commit message from CVS: * gst/audioresample/Makefile.am: * gst/audioresample/buffer.c: * gst/audioresample/buffer.h: * gst/audioresample/debug.c: * gst/audioresample/debug.h: * gst/audioresample/functable.c: * gst/audioresample/functable.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: * gst/audioresample/resample.h: * gst/audioresample/resample_chunk.c: * gst/audioresample/resample_functable.c: * gst/audioresample/resample_ref.c: * tests/check/elements/audioresample.c: Remove audioresample files. 2008-11-27 17:04:07 +0000 Sebastian Dröge <slomo@circular-chaos.org> docs/plugins/inspect/plugin-audioresample.xml: Regenerated for library filename change. Original commit message from CVS: * docs/plugins/inspect/plugin-audioresample.xml: Regenerated for library filename change. 2008-11-27 16:57:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> Rename the moved speexresample to audioresample, integrate into the build system and remove the old audioresample fro... Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst/speexresample/gstspeexresample.c: (plugin_init): * gst/speexresample/Makefile.am: * tests/check/Makefile.am: * tests/check/elements/speexresample.c: (setup_speexresample), (GST_START_TEST), (test_pipeline): Rename the moved speexresample to audioresample, integrate into the build system and remove the old audioresample from the build system. Fixes bug #558124, #385061, #346218, #116051. 2008-11-27 16:47:41 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Avoid nasty int overflows after about 12 hours and 25 minutes when these code p... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_get_offset), (gst_base_audio_src_create): Avoid nasty int overflows after about 12 hours and 25 minutes when these code paths are triggered. A free beer to Håvard Graff for finding this! 2008-11-27 11:16:44 +0000 이문형 <iwings@gmail.com> gst-libs/gst/rtsp/gstrtspconnection.c: A successful gst_poll_wait() doesn't always mean successful connect() on Original commit message from CVS: Patch by: 이문형 <iwings at gmail dot com> * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_connect): A successful gst_poll_wait() doesn't always mean successful connect() on Windows. We should check errors by calling gst_poll_fd_has_error(). See #561924. 2008-11-25 16:37:50 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/elements/speexresample.c: Make unit test again faster to prevent timeouts with valgrind. Original commit message from CVS: * tests/check/elements/speexresample.c: (test_pipeline): Make unit test again faster to prevent timeouts with valgrind. 2008-11-25 15:33:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtcpbuffer.c: Fix typo in the docs. Original commit message from CVS: * gst-libs/gst/rtp/gstrtcpbuffer.c: Fix typo in the docs. 2008-11-25 15:28:36 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: If no stream was found before receiving EOS, post an error message. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_sink_event): If no stream was found before receiving EOS, post an error message. Fixes #561924. 2008-11-25 15:14:30 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/: Parse segment events. Original commit message from CVS: * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: (gst_theora_enc_init), (theora_buffer_from_packet), (theora_push_packet), (theora_enc_sink_event), (theora_enc_is_discontinuous), (theora_enc_chain): Parse segment events. Pass incomming buffer timestamps to outgoing buffers. Use the running_time to construct the granulepos. Fixes #562163. 2008-11-25 11:00:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Fix buffer-duration property. Original commit message from CVS: * gst/playback/gstplaybin2.c: (activate_group): Fix buffer-duration property. 2008-11-25 10:32:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Really fix audiosink drain handling by keeping track of the running_time of th... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_drain), (gst_base_audio_sink_event), (gst_base_audio_sink_sync_latency), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Really fix audiosink drain handling by keeping track of the running_time of the last sample. 2008-11-24 20:25:24 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstplaybin2.c: Add notification of current stream. Add ability to configure buffer sizes. Original commit message from CVS: * gst/playback/gstplaybin2.c: Add notification of current stream. Add ability to configure buffer sizes. * gst/playback/gsturidecodebin.c: Add ability to configure buffer sizes for streaming mode. Bug #561734. 2008-11-24 20:11:52 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/gstbaseaudiosink.c: Time is already in running_time. Remove base_time handling. Fixes audiosinks n... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: Time is already in running_time. Remove base_time handling. Fixes audiosinks not draining and thus chopping some audio in the end. 2008-11-24 19:18:59 +0000 David Schleef <ds@schleef.org> ext/ogg/gstoggmux.*: If we're muxing a dirac stream, flush the page after every picture. Original commit message from CVS: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: If we're muxing a dirac stream, flush the page after every picture. 2008-11-24 12:56:54 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/gstbaseaudiosink.c: Add one log message to check for audio_drained. Sync one log message with the ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: Add one log message to check for audio_drained. Sync one log message with the condition. Send EOS after draining audio in pull mode. 2008-11-24 12:07:10 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/: Use gst_buffer_try_new_and_alloc() and fail properly if the allocation failed. This prevents abort() if downstr... Original commit message from CVS: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_create): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_create): Use gst_buffer_try_new_and_alloc() and fail properly if the allocation failed. This prevents abort() if downstream elements request an insane amount of memory. 2008-11-24 12:03:11 +0000 Jon Trowbridge <trow@ximian.com> gst/volume/gstvolume.*: Cleanup volume, define and use default values. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_choose_func), (volume_update_volume), (gst_volume_set_volume), (gst_volume_get_volume), (gst_volume_set_mute), (gst_volume_class_init), (gst_volume_init), (volume_process_double), (volume_process_float), (volume_process_int32), (volume_process_int32_clamp), (volume_process_int24), (volume_process_int24_clamp), (volume_process_int16), (volume_process_int16_clamp), (volume_process_int8), (volume_process_int8_clamp), (volume_setup), (volume_transform_ip), (volume_set_property), (volume_get_property): * gst/volume/gstvolume.h: Cleanup volume, define and use default values. Recalculate new volume and mute setup before processing. Fixes #561789. * tests/check/elements/volume.c: (GST_START_TEST), (volume_suite): Add controller unit test. Patch by: Jonathan Matthew Fix bogus test that messed with basetransform's internal state. 2008-11-22 15:02:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/elements/speexresample.c: Make the unit test a bit faster to prevent timeouts, especially with valgrind. Original commit message from CVS: * tests/check/elements/speexresample.c: (GST_START_TEST): Make the unit test a bit faster to prevent timeouts, especially with valgrind. 2008-11-22 14:44:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videorate/gstvideorate.c: Add jpeg and png image media types to the caps. Fixes #561436. Original commit message from CVS: * gst/videorate/gstvideorate.c: Add jpeg and png image media types to the caps. Fixes #561436. 2008-11-22 14:31:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Don't post an error when we can't configure the volume but post a warning instead. Fixes ... Original commit message from CVS: * gst/playback/gstplaysink.c: (gen_audio_chain): Don't post an error when we can't configure the volume but post a warning instead. Fixes #561780. 2008-11-21 20:32:56 +0000 Jonathan Rosser <jonathan.rosser@rd.bbc.co.uk> gst/videotestsrc/: Add a zone plate pattern generator based on BBC R&D Report 1978/23 (yeah *that* 1978). Try 'video... Original commit message from CVS: Patch by: Jonathan Rosser <jonathan.rosser@rd.bbc.co.uk> * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: Add a zone plate pattern generator based on BBC R&D Report 1978/23 (yeah *that* 1978). Try 'videotestsrc pattern=zone-plate kx2=20 ky2=20 kt=1'. 2008-11-21 15:45:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Add a "filter-length" property that maps to the quality values for compatibilty... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_class_init), (gst_speex_resample_set_property), (gst_speex_resample_get_property): Add a "filter-length" property that maps to the quality values for compatibilty with audioresample. 2008-11-21 00:04:48 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstdecodebin2.c: Fix random fat-fingering making this not compile. Original commit message from CVS: * gst/playback/gstdecodebin2.c: Fix random fat-fingering making this not compile. 2008-11-20 22:11:38 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstdecodebin2.c: If the top-level type of the stream is plain text, don't try to decode it, matching beh... Original commit message from CVS: * gst/playback/gstdecodebin2.c: If the top-level type of the stream is plain text, don't try to decode it, matching behaviour of decodebin. * gst/playback/gstplaysink.c: If we fail to generate a text chain (e.g. due to missing optional plugins), don't crash. 2008-11-20 22:06:05 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/rtsp/gstrtspdefs.c: Fix win32 build. Oops. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspdefs.c: Fix win32 build. Oops. 2008-11-20 21:40:49 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/rtsp/gstrtspdefs.c: Use WSAGetLastError() rather than errno/h_errno on win32. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspdefs.c: Use WSAGetLastError() rather than errno/h_errno on win32. 2008-11-20 21:20:27 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/riff/riff-media.c: Support WMA Lossless properly. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: Support WMA Lossless properly. 2008-11-19 00:24:44 +0000 David Schleef <ds@schleef.org> gst/videotestsrc/: Add "colorspec" property, specifying whether to generate BT.601 or BT.709 video. This only affect... Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: Add "colorspec" property, specifying whether to generate BT.601 or BT.709 video. This only affects YCbCr values, not RGB, since if you're generating a 709 test pattern, presumably you want 709 RGB primaries, not 601. Also add "smpte75" pattern, which uses 75% colors instead of 100%, since this is often more useful for testing (and also follows the SMPTE EG-1 guideline). 2008-11-18 18:08:42 +0000 Alessandro Decina <alessandro.d@gmail.com> gst/playback/gstdecodebin.c: Add a "sink-caps" property to decodebin like it's done for decodebin2. Original commit message from CVS: * gst/playback/gstdecodebin.c: Add a "sink-caps" property to decodebin like it's done for decodebin2. Fixes #560380. 2008-11-14 21:44:33 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/audioresample/gstaudioresample.c: Guard against a NULL dereference I somehow encountered - with a FLUSH_STOP arri... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Guard against a NULL dereference I somehow encountered - with a FLUSH_STOP arriving either before basetransform _start(), or after _stop(). * gst/typefind/gsttypefindfunctions.c: Make sure we never jump backwards when typefinding corrupt mov files. 2008-11-14 21:39:09 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/interfaces/propertyprobe.c: Fix random type causing a docs warning. Original commit message from CVS: * gst-libs/gst/interfaces/propertyprobe.c: Fix random type causing a docs warning. 2008-11-14 15:40:28 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/v4l/gstv4l.c: Give it a minimal rank for autovideosrc. Original commit message from CVS: * sys/v4l/gstv4l.c: Give it a minimal rank for autovideosrc. 2008-11-13 21:11:13 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> gst/typefind/gsttypefindfunctions.c: Improve typefinding of ISO JPEG2000 mime types. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (jp2_type_find), (plugin_init): Improve typefinding of ISO JPEG2000 mime types. 2008-11-13 18:18:32 +0000 Wim Taymans <wim.taymans@gmail.com> sys/xvimage/xvimagesink.*: Avoid typechecking when we do trivial casts. Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_finalize), (gst_xvimagesink_xvimage_put), (gst_xvimagesink_setcaps), (gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc): * sys/xvimage/xvimagesink.h: Avoid typechecking when we do trivial casts. Move error handling out of the main program flow. Sneak in the display-region caps property, not completely correct yet. Cache the width/height in buffer_alloc instead of parsing it from the caps all the time. 2008-11-13 17:27:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: don't try to unlink the selector sinkpad when we don't have it yet. This can happen if an... Original commit message from CVS: * gst/playback/gstplaybin2.c: (deactivate_group): don't try to unlink the selector sinkpad when we don't have it yet. This can happen if an error occured before the group was complete. 2008-11-13 15:37:40 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtpbuffer.c: Avoid expensive type checks we already did as part of the _validate() function that ... Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_validate_data), (gst_rtp_buffer_set_packet_len), (gst_rtp_buffer_get_packet_len), (gst_rtp_buffer_get_header_len), (gst_rtp_buffer_get_version), (gst_rtp_buffer_set_version), (gst_rtp_buffer_get_padding), (gst_rtp_buffer_set_padding), (gst_rtp_buffer_pad_to), (gst_rtp_buffer_get_extension), (gst_rtp_buffer_set_extension), (gst_rtp_buffer_get_extension_data), (gst_rtp_buffer_set_extension_data), (gst_rtp_buffer_get_ssrc), (gst_rtp_buffer_set_ssrc), (gst_rtp_buffer_get_csrc_count), (gst_rtp_buffer_get_csrc), (gst_rtp_buffer_set_csrc), (gst_rtp_buffer_get_marker), (gst_rtp_buffer_set_marker), (gst_rtp_buffer_get_payload_type), (gst_rtp_buffer_set_payload_type), (gst_rtp_buffer_get_seq), (gst_rtp_buffer_set_seq), (gst_rtp_buffer_get_timestamp), (gst_rtp_buffer_set_timestamp), (gst_rtp_buffer_get_payload_subbuffer), (gst_rtp_buffer_get_payload_len), (gst_rtp_buffer_get_payload): Avoid expensive type checks we already did as part of the _validate() function that should be called first. 2008-11-11 16:40:50 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Fix some cases where a newsegment event was not sent. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (create_segment_event), (gst_base_rtp_depayload_push_full), (gst_base_rtp_depayload_set_gst_timestamp): Fix some cases where a newsegment event was not sent. 2008-11-11 15:52:14 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Catch state change errors and stop from the uridecodebin elements instead of trying to co... Original commit message from CVS: * gst/playback/gstplaybin2.c: (activate_group): Catch state change errors and stop from the uridecodebin elements instead of trying to continue in vain. 2008-11-10 14:53:45 +0000 Edward Hervey <bilboed@bilboed.com> gst/: Wim, you're a bad boy. You don't want people to contact you or what? Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst/h264parse/gsth264parse.c: Wim, you're a bad boy. You don't want people to contact you or what? 2008-11-10 14:22:09 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Use gst_base_sink_do_preroll() to wait for PLAYING and before waiting for the ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_sync_latency), (gst_base_audio_sink_render), (gst_base_audio_sink_callback): Use gst_base_sink_do_preroll() to wait for PLAYING and before waiting for the latency to expire, fixes #559567. 2008-11-10 13:55:08 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/adder/gstadder.c: Change author string after seeing output of gst-inspector. Original commit message from CVS: * gst/adder/gstadder.c: Change author string after seeing output of gst-inspector. 2008-11-10 10:33:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Don't try to do crazy things when we only have a text pad without a video pad. Fixes #559... Original commit message from CVS: * gst/playback/gstplaysink.c: (gst_play_sink_reconfigure): Don't try to do crazy things when we only have a text pad without a video pad. Fixes #559478. 2008-11-07 17:35:46 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsrc.*: Add is-live property. Original commit message from CVS: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_push_buffer): * gst-libs/gst/app/gstappsrc.h: Add is-live property. Add some more docs. 2008-11-06 12:14:51 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-media.c: Fix case where we don't have a range for the rates or channels as is the case with tr... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Fix case where we don't have a range for the rates or channels as is the case with truespeech. 2008-11-05 19:18:25 +0000 Wim Taymans <wim.taymans@gmail.com> gst/volume/gstvolume.*: Keep negotiated state in a separate variable. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_update_real_volume), (gst_volume_set_volume), (gst_volume_get_volume), (gst_volume_set_mute), (gst_volume_init), (volume_setup), (volume_transform_ip), (volume_update_mute), (volume_update_volume), (volume_get_property): * gst/volume/gstvolume.h: Keep negotiated state in a separate variable. Protect the volume and mute properties with the object lock. Protect modifying the transform with the transform lock. 2008-11-05 12:20:21 +0000 Wim Taymans <wim.taymans@gmail.com> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Only convert caps to string when debug is enabled. Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps): Only convert caps to string when debug is enabled. 2008-11-04 18:17:24 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/: Copy seqnum. Original commit message from CVS: * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_init), (gst_theora_dec_reset), (theora_dec_src_event), (theora_dec_sink_event), (theora_handle_type_packet): Copy seqnum. Keep events in a pending list, like vorbisdec, instead of trying to construct a segment event ourselves. * ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset), (vorbis_dec_src_event), (vorbis_dec_sink_event): * ext/vorbis/vorbisdec.h: Copy seqnum. 2008-11-04 17:24:35 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.*: Copy seqnums around to track playback segments and messages. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet), (gst_ogg_demux_deactivate_current_chain), (gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page), (gst_ogg_demux_loop): * ext/ogg/gstoggdemux.h: Copy seqnums around to track playback segments and messages. 2008-11-04 12:42:30 +0000 Stefan Kost <ensonic@users.sourceforge.net> Don't install static libs for plugins. Fixes #550851 for -bad. Original commit message from CVS: * ext/alsaspdif/Makefile.am: * ext/amrwb/Makefile.am: * ext/apexsink/Makefile.am: * ext/arts/Makefile.am: * ext/artsd/Makefile.am: * ext/audiofile/Makefile.am: * ext/audioresample/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/divx/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/gsm/Makefile.am: * ext/hermes/Makefile.am: * ext/ivorbis/Makefile.am: * ext/jack/Makefile.am: * ext/jp2k/Makefile.am: * ext/ladspa/Makefile.am: * ext/lcs/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/metadata/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/polyp/Makefile.am: * ext/resindvd/Makefile.am: * ext/sdl/Makefile.am: * ext/shout/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spc/Makefile.am: * ext/swfdec/Makefile.am: * ext/tarkin/Makefile.am: * ext/theora/Makefile.am: * ext/timidity/Makefile.am: * ext/twolame/Makefile.am: * ext/x264/Makefile.am: * ext/xine/Makefile.am: * ext/xvid/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst/aiffparse/Makefile.am: * gst/app/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/bayer/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/chart/Makefile.am: * gst/colorspace/Makefile.am: * gst/dccp/Makefile.am: * gst/deinterlace/Makefile.am: * gst/deinterlace2/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/filter/Makefile.am: * gst/flacparse/Makefile.am: * gst/flv/Makefile.am: * gst/games/Makefile.am: * gst/h264parse/Makefile.am: * gst/librfb/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/modplug/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/passthrough/Makefile.am: * gst/pcapparse/Makefile.am: * gst/playondemand/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/rtpmanager/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/selector/Makefile.am: * gst/smooth/Makefile.am: * gst/smoothwave/Makefile.am: * gst/speed/Makefile.am: * gst/speexresample/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videodrop/Makefile.am: * gst/videosignal/Makefile.am: * gst/virtualdub/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/acmenc/Makefile.am: * sys/cdrom/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/oss4/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/vcd/Makefile.am: * sys/wininet/Makefile.am: * win32/common/config.h: Don't install static libs for plugins. Fixes #550851 for -bad. 2008-11-04 12:42:18 +0000 Stefan Kost <ensonic@users.sourceforge.net> Don't install static libs for plugins. Fixes #550851 for -bad. Original commit message from CVS: * ext/alsaspdif/Makefile.am: * ext/amrwb/Makefile.am: * ext/apexsink/Makefile.am: * ext/arts/Makefile.am: * ext/artsd/Makefile.am: * ext/audiofile/Makefile.am: * ext/audioresample/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/divx/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/gsm/Makefile.am: * ext/hermes/Makefile.am: * ext/ivorbis/Makefile.am: * ext/jack/Makefile.am: * ext/jp2k/Makefile.am: * ext/ladspa/Makefile.am: * ext/lcs/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/metadata/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/polyp/Makefile.am: * ext/resindvd/Makefile.am: * ext/sdl/Makefile.am: * ext/shout/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spc/Makefile.am: * ext/swfdec/Makefile.am: * ext/tarkin/Makefile.am: * ext/theora/Makefile.am: * ext/timidity/Makefile.am: * ext/twolame/Makefile.am: * ext/x264/Makefile.am: * ext/xine/Makefile.am: * ext/xvid/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst/aiffparse/Makefile.am: * gst/app/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/bayer/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/chart/Makefile.am: * gst/colorspace/Makefile.am: * gst/dccp/Makefile.am: * gst/deinterlace/Makefile.am: * gst/deinterlace2/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/filter/Makefile.am: * gst/flacparse/Makefile.am: * gst/flv/Makefile.am: * gst/games/Makefile.am: * gst/h264parse/Makefile.am: * gst/librfb/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/modplug/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/passthrough/Makefile.am: * gst/pcapparse/Makefile.am: * gst/playondemand/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/rtpmanager/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/selector/Makefile.am: * gst/smooth/Makefile.am: * gst/smoothwave/Makefile.am: * gst/speed/Makefile.am: * gst/speexresample/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videodrop/Makefile.am: * gst/videosignal/Makefile.am: * gst/virtualdub/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/acmenc/Makefile.am: * sys/cdrom/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/oss4/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/vcd/Makefile.am: * sys/wininet/Makefile.am: * win32/common/config.h: Don't install static libs for plugins. Fixes #550851 for -bad. 2008-11-03 15:30:14 +0000 Matthias Kretz <kretz@kde.org> ext/alsa/gstalsasink.c: Make all access non-blocking so that we can better handle unplugging of usb devices. Fixes #5... Original commit message from CVS: Based on patch by: Matthias Kretz <kretz at kde dot org> * ext/alsa/gstalsasink.c: (gst_alsasink_open), (gst_alsasink_prepare), (gst_alsasink_unprepare), (gst_alsasink_write): Make all access non-blocking so that we can better handle unplugging of usb devices. Fixes #559111 2008-11-03 10:49:24 +0000 Damien Lespiau <damien.lespiau@gmail.com> gst-libs/gst/rtsp/gstrtspconnection.c: Make the next call to poll not depend on previous calls to poll with or withou... Original commit message from CVS: Patch by: Damien Lespiau <damien.lespiau gmail com> * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_write): Make the next call to poll not depend on previous calls to poll with or without reading from the active descriptor. Fixes #544293. 2008-11-03 08:55:49 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Add TODO at the top of the file for enabling SSE/ARM specific optimizations and... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_convert_buffer): Add TODO at the top of the file for enabling SSE/ARM specific optimizations and choosing the fastest implementation at runtime. Add g_assert_not_reached() at two places that should really never be reached. 2008-11-02 09:19:24 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Fix format string and arguments. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_check_discont): Fix format string and arguments. * gst/speexresample/resample_sse.h: Add missing file. 2008-11-01 19:38:36 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/: Add missing headers to Makefile.am. Original commit message from CVS: * gst/speexresample/Makefile.am: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_base_init), (gst_speex_resample_get_funcs), (gst_speex_resample_convert_buffer), (_benchmark_int_float), (_benchmark_int_int), (_benchmark_integer_resampling), (plugin_init): * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/speexresample/speex_resampler_double.c: * gst/speexresample/speex_resampler_float.c: * gst/speexresample/speex_resampler_int.c: * gst/speexresample/speex_resampler_wrapper.h: Add missing headers to Makefile.am. Update copyright, years and my mail address. Benchmark the integer resampling implementation against the float implementation and use the faster one for 8/16 bit integer input. On most recent systems the floating point version is faster. 2008-10-31 09:49:57 +0000 Nick Haddad <nick@haddads.net> gst-libs/gst/riff/: Add support for other fourcc codes that are commonly used for 'uncompressed RGB', including 'RGB ... Original commit message from CVS: Patch by: Nick Haddad <nick at haddads dot net> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Add support for other fourcc codes that are commonly used for 'uncompressed RGB', including 'RGB ', 'RAW ', and 0. Fixes #558553. 2008-10-30 14:55:43 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: The length for the buffer conversion function is the number of audio frames, i.... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_convert_buffer): The length for the buffer conversion function is the number of audio frames, i.e. we need to multiply it by the number of channels to get the number of values. Also spotted by the unit test after running in valgrind. 2008-10-30 14:46:31 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/elements/speexresample.c: Add pipeline unit tests for testing all supported formats with up/downsampling ... Original commit message from CVS: * tests/check/elements/speexresample.c: (element_message_cb), (eos_message_cb), (test_pipeline), (GST_START_TEST), (speexresample_suite): Add pipeline unit tests for testing all supported formats with up/downsampling and different in/outrates. * gst/speexresample/gstspeexresample.c: (gst_speex_resample_push_drain), (gst_speex_resample_process): * gst/speexresample/speex_resampler_wrapper.h: Fix bugs identified by the testsuite. 2008-10-30 13:44:41 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/: Add support for int8, int24 and int32 input by converting internally to/from int16 or double. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_stop), (gst_speex_resample_get_funcs), (gst_speex_resample_transform_size), (gst_speex_resample_convert_buffer), (gst_speex_resample_push_drain), (gst_speex_resample_process): * gst/speexresample/gstspeexresample.h: * gst/speexresample/speex_resampler_wrapper.h: Add support for int8, int24 and int32 input by converting internally to/from int16 or double. 2008-10-30 12:43:44 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add support for double samples as input and refactor the usage of the different compilation flavors of the speex resa... Original commit message from CVS: * gst/speexresample/Makefile.am: * gst/speexresample/arch.h: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_stop), (gst_speex_resample_get_unit_size), (gst_speex_resample_get_funcs), (gst_speex_resample_init_state), (gst_speex_resample_update_state), (gst_speex_resample_reset_state), (gst_speex_resample_parse_caps), (_gcd), (gst_speex_resample_transform_size), (gst_speex_resample_set_caps), (gst_speex_resample_push_drain), (gst_speex_resample_process), (gst_speex_resample_transform), (gst_speex_resample_query), (gst_speex_resample_set_property): * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_double.c: * gst/speexresample/speex_resampler_wrapper.h: * tests/check/elements/speexresample.c: (setup_speexresample), (test_perfect_stream_instance), (GST_START_TEST), (test_discont_stream_instance): Add support for double samples as input and refactor the usage of the different compilation flavors of the speex resampler. 2008-10-30 11:43:12 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioresample/gstaudioresample.c: Return the result of parent_class->event(). Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Return the result of parent_class->event(). 2008-10-29 17:02:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.c: Fix the docs. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init): Fix the docs. 2008-10-29 12:11:20 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.*: Rewrite timestamp tracking to make it more robust and guarantee a continous str... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_start), (gst_speex_resample_get_unit_size), (gst_speex_resample_push_drain), (gst_speex_resample_event), (gst_speex_resample_check_discont), (gst_speex_resample_process), (gst_speex_resample_transform): * gst/speexresample/gstspeexresample.h: Rewrite timestamp tracking to make it more robust and guarantee a continous stream. * tests/check/Makefile.am: * tests/check/elements/speexresample.c: (setup_speexresample), (cleanup_speexresample), (fail_unless_perfect_stream), (test_perfect_stream_instance), (GST_START_TEST), (test_discont_stream_instance), (live_switch_alloc_only_48000), (live_switch_get_sink_caps), (live_switch_push), (speexresample_suite): Add unit tests for speexresample based on the audioresample unit tests. 2008-10-28 19:30:33 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.*: Some random cleanup, add G_LIKELY and friends, use GST_DEBUG_OBJECT instead of ... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_get_unit_size), (gst_speex_resample_fixate_caps), (gst_speex_resample_init_state), (gst_speex_resample_update_state), (gst_speex_resample_parse_caps), (gst_speex_resample_transform_size), (gst_speex_resample_set_caps), (gst_speex_resample_push_drain), (gst_speex_resample_event), (gst_speex_resample_check_discont), (gst_speex_fix_output_buffer), (gst_speex_resample_process), (gst_speex_resample_transform), (gst_speex_resample_query), (gst_speex_resample_set_property): * gst/speexresample/gstspeexresample.h: Some random cleanup, add G_LIKELY and friends, use GST_DEBUG_OBJECT instead of GST_DEBUG, ... 2008-10-28 16:28:45 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Fixate to the nearest supported rate instead of the first one. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_class_init), (gst_speex_resample_fixate_caps), (gst_speex_resample_process): Fixate to the nearest supported rate instead of the first one. 2008-10-28 16:25:00 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioresample/gstaudioresample.c: Fixate the rate to the nearest supported rate instead of the first one. Fixes b... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init), (audioresample_fixate_caps): Fixate the rate to the nearest supported rate instead of the first one. Fixes bug #549510. 2008-10-28 11:46:28 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/: Update Speex resampler with latest version from Speex GIT. Original commit message from CVS: * gst/speexresample/README: * gst/speexresample/arch.h: * gst/speexresample/fixed_arm4.h: * gst/speexresample/fixed_arm5e.h: * gst/speexresample/fixed_bfin.h: * gst/speexresample/fixed_debug.h: * gst/speexresample/fixed_generic.h: * gst/speexresample/resample.c: (compute_func), (main), (sinc), (cubic_coef), (resampler_basic_direct_single), (resampler_basic_direct_double), (resampler_basic_interpolate_single), (resampler_basic_interpolate_double), (update_filter), (speex_resampler_init_frac), (speex_resampler_process_native), (speex_resampler_magic), (speex_resampler_process_float), (speex_resampler_process_int), (speex_resampler_process_interleaved_float), (speex_resampler_process_interleaved_int), (speex_resampler_set_rate_frac), (speex_resampler_skip_zeros), (speex_resampler_reset_mem): * gst/speexresample/speex_resampler.h: Update Speex resampler with latest version from Speex GIT. 2008-10-27 14:57:34 +0000 Wim Taymans <wim.taymans@gmail.com> win32/common/libgstaudio.def: Add new symbols. Original commit message from CVS: * win32/common/libgstaudio.def: Add new symbols. 2008-10-23 09:57:06 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Attempt to make obfuscated code clearer. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet): Attempt to make obfuscated code clearer. 2008-10-23 07:11:23 +0000 Sebastian Dröge <slomo@circular-chaos.org> Move float endianness conversion macros to core. Second part of bug ##555196. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/floatcast/floatcast.h: Move float endianness conversion macros to core. Second part of bug ##555196. 2008-10-22 12:29:30 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/: Don't mark as gtk-doc docs as they aren't public. Original commit message from CVS: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.h: Don't mark as gtk-doc docs as they aren't public. 2008-10-22 12:25:02 +0000 Stefan Kost <ensonic@users.sourceforge.net> Allow setting colorkey if possible. Implement property probe interface for optional X features (autopaint-colorkey, d... Original commit message from CVS: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: * tests/icles/Makefile.am: * tests/icles/test-colorkey.c: Allow setting colorkey if possible. Implement property probe interface for optional X features (autopaint-colorkey, double-buffer and colorkey). Fixes #554533 2008-10-22 12:01:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/tag/tags.c: Remove useless buffer size assignment. It already has this value. Original commit message from CVS: * gst-libs/gst/tag/tags.c: (gst_tag_image_data_to_image_buffer): Remove useless buffer size assignment. It already has this value. 2008-10-20 15:35:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Implement a separate activate functions to start monitoring the segments or, in pu... Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_class_init), (gst_audioringbuffer_acquire), (gst_audioringbuffer_activate), (gst_audioringbuffer_release), (gst_audioringbuffer_stop): Implement a separate activate functions to start monitoring the segments or, in pull mode, pulling in data. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_init), (gst_base_audio_sink_dispose), (gst_base_audio_sink_query_pad), (gst_base_audio_sink_query), (gst_base_audio_sink_setcaps), (gst_base_audio_sink_callback), (gst_base_audio_sink_activate_pull), (gst_base_audio_sink_async_play), (gst_base_audio_sink_change_state): Implement pad and element convert query function. Activate the ringbuffer. Use the segment last_stop value as the offset to pull. Use new basesink _do_preroll() method to preroll in the pulling thread. Take appropriate locking in the pulling thread. * gst-libs/gst/audio/gstringbuffer.h: Update some docs. 2008-10-20 14:08:52 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Improve MXF typefinding a bit by searching for a header partition pack instead o... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mxf_type_find): Improve MXF typefinding a bit by searching for a header partition pack instead of just a general partition pack and checking more bytes for valid values. 2008-10-20 13:45:55 +0000 Wim Taymans <wim.taymans@gmail.com> tests/icles/.cvsignore: update ignore file. Original commit message from CVS: * tests/icles/.cvsignore: update ignore file. * tests/icles/Makefile.am: * tests/icles/test-box.c: (make_pipeline), (main): Add another interactive command line experimentation suite for dynamically boxing/cropping/saling an input video. 2008-10-17 13:19:05 +0000 Wim Taymans <wim.taymans@gmail.com> Add methods to more accuratly control the pulling thread of a ringbuffer. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_convert), (gst_ring_buffer_activate), (gst_ring_buffer_is_active): * gst-libs/gst/audio/gstringbuffer.h: Add methods to more accuratly control the pulling thread of a ringbuffer. Add format conversion helper code to the ringbuffer. API: GstRingBuffer:gst_ring_buffer_activate() API: GstRingBuffer:gst_ring_buffer_is_active() API: GstRingBuffer:gst_ring_buffer_convert() 2008-10-16 15:44:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Signal thread startup earlier so that we can immediatly go into pull mode when we ... Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func), (gst_audioringbuffer_acquire), (gst_audioringbuffer_release), (gst_audioringbuffer_stop): Signal thread startup earlier so that we can immediatly go into pull mode when we have to and block on preroll. 2008-10-16 15:38:50 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: In pull mode we want the callback to prepull a buffer we can preroll on even when... Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_prepare_read): In pull mode we want the callback to prepull a buffer we can preroll on even when we are not yet playing. 2008-10-16 15:07:00 +0000 Stefan Kost <ensonic@users.sourceforge.net> Don't install static libs for plugins. Fixes #550851 for base. Original commit message from CVS: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gio/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst/adder/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/ffmpegcolorspace/Makefile.am: * gst/gdp/Makefile.am: * gst/playback/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/v4l/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Don't install static libs for plugins. Fixes #550851 for base. 2008-10-16 13:50:00 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiotestsrc/gstaudiotestsrc.c: Set the default blocksize to -1 because we will then use the configured samplespe... Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_init): Set the default blocksize to -1 because we will then use the configured samplesperbuffer to create our output buffer. 2008-10-15 15:28:41 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Add mappping for the KMVC (Karl Morton's Video) Codec. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add mappping for the KMVC (Karl Morton's Video) Codec. 2008-10-15 14:25:50 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Don't forget to advance the offset of what we're matching against, else we end u... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (flac_type_find): Don't forget to advance the offset of what we're matching against, else we end up in a forever loop. 2008-10-15 11:25:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/subparse/gstsubparse.c: Improve typefinding a bit. If we don't have a Unicode charset try GST_SUBTITLE_ENCODING a... Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_subparse_type_find): Improve typefinding a bit. If we don't have a Unicode charset try GST_SUBTITLE_ENCODING and otherwise try ISO-8859-15. 2008-10-14 11:13:59 +0000 Edward Hervey <bilboed@bilboed.com> ext/theora/theoradec.c: Fix build on macosx. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_decode_buffer): Fix build on macosx. 2008-10-13 11:36:13 +0000 Robin Stocker <robin@nibor.org> ext/theora/: Parse input caps and make the PAR override the encoded PAR when specified by a container. Fixes #555699. Original commit message from CVS: Based on patch by: Robin Stocker <robin at nibor dot org> * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_init), (theora_dec_setcaps), (theora_handle_type_packet), (theora_dec_decode_buffer), (theora_dec_change_state): Parse input caps and make the PAR override the encoded PAR when specified by a container. Fixes #555699. 2008-10-13 09:16:59 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.*: Add some more G_LIKELY Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_set_gst_timestamp), (gst_base_rtp_depayload_change_state): * gst-libs/gst/rtp/gstbasertpdepayload.h: Add some more G_LIKELY Fail when the setcaps function was not called. * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_set_outcaps): Propagate return value of setcaps. 2008-10-13 08:58:29 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/subparse/: Add support for UTF16/UTF32 subtitles as long as the first bytes of the first buffer contain the BOM. ... Original commit message from CVS: * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: (gst_sub_parse_dispose), (gst_sub_parse_class_init), (gst_sub_parse_init), (gst_convert_to_utf8), (detect_encoding), (convert_encoding), (get_next_line), (gst_sub_parse_data_format_autodetect), (feed_textbuf), (handle_buffer), (gst_sub_parse_change_state), (gst_subparse_type_find): * gst/subparse/gstsubparse.h: Add support for UTF16/UTF32 subtitles as long as the first bytes of the first buffer contain the BOM. This also adds support for other encodings that allow NUL bytes via the encoding property. Fixes bugs #552237 and #456788. 2008-10-13 08:15:13 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/tag/tags.c: Don't drop the last byte of image tags if they're not an URI list. Original commit message from CVS: * gst-libs/gst/tag/tags.c: (gst_tag_image_data_to_image_buffer): Don't drop the last byte of image tags if they're not an URI list. Fixes bug #556066. 2008-10-13 08:00:55 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: For looking at the 4th byte we have to get 4 bytes of course and not 3. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (flac_type_find): For looking at the 4th byte we have to get 4 bytes of course and not 3. 2008-10-13 07:52:41 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Improve FLAC-without-headers typefinding by looking at most of the frame header ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (flac_type_find): Improve FLAC-without-headers typefinding by looking at most of the frame header and checking if invalid values are used. Should prevent quite some false positives compared to the old version which only check if the first 14 bits are set. 2008-10-11 16:27:28 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: Don't assert on caps==NULL. Original commit message from CVS: * sys/xvimage/xvimagesink.c: Don't assert on caps==NULL. 2008-10-10 17:13:40 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add support for subtitle files with UTF-8 BOM at the beginning by simple stripping it from the first line before pass... Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect), (handle_buffer), (gst_sub_parse_change_state): * gst/subparse/gstsubparse.h: * tests/check/elements/subparse.c: (GST_START_TEST): Add support for subtitle files with UTF-8 BOM at the beginning by simple stripping it from the first line before passing it to any parsing code. Fixes bug #555257 and playback of files created by Gnome Subtitles. 2008-10-10 15:45:15 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiotestsrc/gstaudiotestsrc.*: Define the default property values in the usual place. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init), (gst_audio_test_src_init), (gst_audio_test_src_src_fixate), (gst_audio_test_src_setcaps), (gst_audio_test_src_start), (gst_audio_test_src_stop), (gst_audio_test_src_do_seek), (gst_audio_test_src_check_get_range), (gst_audio_test_src_create): * gst/audiotestsrc/gstaudiotestsrc.h: Define the default property values in the usual place. Implement start/stop to reset values correctly. Calculate the sample size only once when we negotiate. Rename some values to make more sense. Keep track of our byte range. Add support for pull based scheduling. Disabled for now until we have the whole stack working. Set the BUFFER_OFFSET correctly. 2008-10-10 15:32:10 +0000 Sebastian Dröge <slomo@circular-chaos.org> Make the detection of the used subtitle a bit less strict for srt subtitles. Fixes bug #555607. Original commit message from CVS: Based on a patch by: xavierb at gmail dot com * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect): * tests/check/elements/subparse.c: (GST_START_TEST): Make the detection of the used subtitle a bit less strict for srt subtitles. Fixes bug #555607. 2008-10-10 15:21:38 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/vorbis/vorbisenc.c: Fix discontinuity detection which was broken by last commit. Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_buffer_check_discontinuous): Fix discontinuity detection which was broken by last commit. 2008-10-09 11:18:09 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Require core CVS for ghostpad API additions used by decodebin2. Original commit message from CVS: * configure.ac:: Require core CVS for ghostpad API additions used by decodebin2. 2008-10-08 15:30:33 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Fix debug statements (space between '%' and actual format). Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Fix debug statements (space between '%' and actual format). 2008-10-08 14:44:04 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Remove bogus assert, the decodepad could have been created inside an already existing g... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_pad_activate): Remove bogus assert, the decodepad could have been created inside an already existing group. 2008-10-08 14:01:42 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: changelog Original commit message from CVS: changelog 2008-10-08 14:00:07 +0000 Andy Wingo <wingo@pobox.com> gst/playback/gstdecodebin2.c (expose_pad): Fix typo: unset target instead of setting it. Original commit message from CVS: 2008-10-08 Andy Wingo <wingo@pobox.com> * gst/playback/gstdecodebin2.c (expose_pad): Fix typo: unset target instead of setting it. (gst_decode_pad_activate, gst_decode_pad_unblock): This is now the API for a decode pad. The bugfix is that we set the group in activate(), not when the pad was created because it might be NULL then. (gst_decode_group_control_source_pad, gst_decode_group_expose): Update to use the API. 2008-10-08 12:49:40 +0000 Andy Wingo <wingo@pobox.com> gst/playback/gstdecodebin2.c (struct _GstDecodePad): Change to be a subclass of GstGhostPad. Original commit message from CVS: 2008-10-08 Andy Wingo <wingo@pobox.com> * gst/playback/gstdecodebin2.c (struct _GstDecodePad): Change to be a subclass of GstGhostPad. (analyze_new_pad): So, when emitting the signals that determine how we do autoplugging, already create the ghost pad and use it as the pad in the signal arguments. This allows applications to make a connection between the pad passed in e.g. autoplug-continue, and the pad passed in new-decoded-pad. (connect_pad, expose_pad): Update to receive the ghosted decode pad in the args, retargetting it as necessary if we have to plug the target pad through a multiqueue. (gst_decode_group_control_source_pad): Adapt to receive an already-ghosted pad that just needs activation, blocking, and drain notification. (sort_end_pads): Adapt for decode pads actually being pads. (gst_decode_group_expose): Adapt for decode pads actually being pads. Rewrite the decode pad names so they appear in order. Adds a new error case if we couldn't set the name. (gst_decode_group_free, gst_decode_group_hide): Adapt cleanup logic. (gst_decode_pad_set_blocked, gst_decode_pad_add_drained_check): New API for the decode pad, needed because we shouldn't do these things inside gst_decode_pad_new(), but after. (gst_decode_pad_new): Change to actually make the real pad, and delay the blocking/drainage bits. 2008-10-08 12:12:01 +0000 Daniel Drake <dsd@laptop.org> ext/ogg/gstoggmux.c: Unref all buffers when clearing collectpads. Fixes bug #546955. Original commit message from CVS: Patch by: Daniel Drake <dsd at laptop dot org> * ext/ogg/gstoggmux.c: (gst_ogg_mux_clear_collectpads): Unref all buffers when clearing collectpads. Fixes bug #546955. 2008-10-08 12:08:01 +0000 Klaas <klaas@rivercrew.net> ext/vorbis/vorbisenc.*: Keep track of the upstream segments and use the running time on that segment instead of the b... Original commit message from CVS: Based on a patch by: Klaas <klaas at rivercrew dot net> * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_sink_event), (gst_vorbis_enc_buffer_check_discontinuous), (gst_vorbis_enc_chain), (gst_vorbis_enc_change_state): * ext/vorbis/vorbisenc.h: Keep track of the upstream segments and use the running time on that segment instead of the buffer timestamp everywhere. Fixes bug #525807. 2008-10-08 11:50:50 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/audioconvert.c: Prevent overflows with big buffer when calculating the size of the intermediate buff... Original commit message from CVS: * gst/audioconvert/audioconvert.c: (audio_convert_convert): Prevent overflows with big buffer when calculating the size of the intermediate buffer by using gst_util_uint64_scale() instead of plain arithmetics. Fixes bug #552801. 2008-10-08 10:49:15 +0000 Pavel Zeldin <pzeldin@gmail.com> ext/pango/gstclockoverlay.*: API: Add ability to specify format for date/time display by adding a "time-format" prope... Original commit message from CVS: Patch by: Pavel Zeldin <pzeldin at gmail dot com> * ext/pango/gstclockoverlay.c: (gst_clock_overlay_render_time), (gst_clock_overlay_class_init), (gst_clock_overlay_finalize), (gst_clock_overlay_init), (gst_clock_overlay_set_property), (gst_clock_overlay_get_property): * ext/pango/gstclockoverlay.h: API: Add ability to specify format for date/time display by adding a "time-format" property. Fixes bug #554879. 2008-10-08 09:22:26 +0000 Jan Gerber <j@oil21.org> gst-libs/gst/riff/riff-media.c: Add FFV1 fourcc to support playback of FFMPEG lossless video in AVI. Fixes bug #555319. Original commit message from CVS: Patch by: Jan Gerber <j at oil21 dot org> * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add FFV1 fourcc to support playback of FFMPEG lossless video in AVI. Fixes bug #555319. 2008-10-08 09:12:36 +0000 Håvard Graff <havard.graff@tandberg.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Implement skew clock slaving. Fixes #552559. Original commit message from CVS: Patch by: Håvard Graff <havard dot graff at tandberg dot com> * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Implement skew clock slaving. Fixes #552559. 2008-10-08 09:10:23 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/: Fix include of config.h Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: * gst-libs/gst/audio/testchannels.c: Fix include of config.h 2008-10-06 16:36:20 +0000 Tero Saarni <tero.saarni@gmail.com> gst-libs/gst/sdp/gstsdpmessage.c: Fix parsing of the c= field containing multicast addresses. Original commit message from CVS: Based on Patch by: Tero Saarni <tero dot saarni at gmail dot com> * gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_parse_line), (print_media), (gst_sdp_message_dump): Fix parsing of the c= field containing multicast addresses. Fixes #552199. Add the connection info to the session or streams. Fix parsing of the bandwidth. Add debugging for the connections and bandwidths for a media. Add debugging for the bandwidth of the session. 2008-10-06 16:31:27 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Configure the next seqnum and timestamp in the state change so that they can be... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_change_state): Configure the next seqnum and timestamp in the state change so that they can be queried soon after. 2008-10-06 16:29:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Improve debugging of the rtptime. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain): Improve debugging of the rtptime. 2008-10-05 11:33:47 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to development -> 0.10.21.1 Original commit message from CVS: * configure.ac: Back to development -> 0.10.21.1 2008-10-05 08:18:31 +0000 Sebastian Dröge <slomo@circular-chaos.org> * ChangeLog: ChangeLog surgery Original commit message from CVS: ChangeLog surgery 2008-10-05 08:11:53 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add typefinder for MXF. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mxf_type_find), (plugin_init): Add typefinder for MXF. 2008-10-05 08:10:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add typefinder for MXF. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mxf_type_find), (plugin_init): Add typefinder for MXF. 2008-10-03 15:19:40 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/icles/Makefile.am: Only build test-colorkey if GTK+ is available. Original commit message from CVS: * tests/icles/Makefile.am: Only build test-colorkey if GTK+ is available. === release 0.10.21 === 2008-10-03 00:03:05 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/config.h: Release 0.10.21 Original commit message from CVS: Release 0.10.21 2008-10-02 23:44:45 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-09-28 22:58:18 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: 0.10.20.4 pre-release Original commit message from CVS: * configure.ac: 0.10.20.4 pre-release 2008-09-25 10:46:00 +0000 ogg.k.ogg.k <ogg.k.ogg.k@googlemail.com> ext/theora/theoraparse.c: Set the BOS flag on the BOS packet. Fixes #553244. Original commit message from CVS: Patch by: ogg.k.ogg.k <ogg dot k dot ogg dot k at googlemail dot com> * ext/theora/theoraparse.c: (theora_parse_set_streamheader): Set the BOS flag on the BOS packet. Fixes #553244. 2008-09-23 17:48:14 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspmessage.c: Fix the g_return_val_if_fail() statements. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspmessage.c: (gst_rtsp_message_parse_request), (gst_rtsp_message_parse_response): Fix the g_return_val_if_fail() statements. 2008-09-22 17:44:14 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/tag/gsttagdemux.c: Fail to activate if there's insufficient data in the file to be usable, preventing an... Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: Fail to activate if there's insufficient data in the file to be usable, preventing an assertion fail later. Fixes #552960 2008-09-16 15:36:56 +0000 Jan Schmidt <thaytan@mad.scientist.com> Commit stuff that should have gone in last week when I made the pre-releases: Original commit message from CVS: Commit stuff that should have gone in last week when I made the pre-releases: 2008-09-10 Jan Schmidt <jan.schmidt@sun.com> * configure.ac: 0.10.20.2 pre-release * po/LINGUAS: * po/id.po: * po/pt_BR.po: New translations. 2008-09-15 15:11:18 +0000 Tim-Philipp Müller <tim@centricular.net> gst/: Recognise Kate subtitle streams (#550582). Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: * gst/typefind/gsttypefindfunctions.c: Recognise Kate subtitle streams (#550582). 2008-09-13 11:04:02 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/audio.h: Remove trailing comma from enum list, which causes problems with -pendantic (#550729). Original commit message from CVS: * gst-libs/gst/audio/audio.h: (GST_AUDIO_FIELD_SIGNED): Remove trailing comma from enum list, which causes problems with -pendantic (#550729). 2008-09-05 19:04:47 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/propertyprobe.c: More sanity checks for our second-favourite interface. Original commit message from CVS: * gst-libs/gst/interfaces/propertyprobe.c: (gst_property_probe_get_properties), (gst_property_probe_get_property), (gst_property_probe_probe_property), (gst_property_probe_probe_property_name), (gst_property_probe_needs_probe), (gst_property_probe_needs_probe_name), (gst_property_probe_get_values), (gst_property_probe_get_values_name), (gst_property_probe_probe_and_get_values), (gst_property_probe_probe_and_get_values_name): More sanity checks for our second-favourite interface. 2008-09-05 14:12:01 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/interfaces/propertyprobe.c: Check for NULL pointer, in the hope that this fixes #532864. Original commit message from CVS: * gst-libs/gst/interfaces/propertyprobe.c: Check for NULL pointer, in the hope that this fixes #532864. 2008-09-05 10:24:05 +0000 Tim-Philipp Müller <tim@centricular.net> sys/xvimage/xvimagesink.c: No really, the next release is 0.10.21 (fix Since: tags in docs). Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init): No really, the next release is 0.10.21 (fix Since: tags in docs). 2008-09-04 16:25:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosrc.c: Disable a code path that is now called but causes a deadlock for some reason and is... Original commit message from CVS: * gst-libs/gst/audio/gstaudiosrc.c: (gst_audioringbuffer_stop): Disable a code path that is now called but causes a deadlock for some reason and is unneeded. 2008-09-04 13:46:52 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.*: Add a "draw-border" property that can be set to false to disable drawing borders. Original commit message from CVS: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: Add a "draw-border" property that can be set to false to disable drawing borders. * tests/icles/test-colorkey.c: * tests/icles/Makefile.am: Add new test application for the colorkey handling. 2008-09-03 14:00:06 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Use a decent caps for TrueSpeech instead of a ffmpeg-specific one. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Use a decent caps for TrueSpeech instead of a ffmpeg-specific one. This will also be fixed for upcoming gst-ffmpeg release so that once this release of -base is out, it will work with the latest gst-ffmpeg release. 2008-09-03 13:27:20 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Add Truespeech mapping for RIFF formats (AVI/WAV). Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Add Truespeech mapping for RIFF formats (AVI/WAV). Fixes #550656 2008-09-03 12:23:44 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> gst/typefind/gsttypefindfunctions.c: Typefind video/mj2 and image/jp2 ISO JPEG2000 mime types. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Typefind video/mj2 and image/jp2 ISO JPEG2000 mime types. Fixes #550638. 2008-09-03 10:12:04 +0000 Stefan Kost <ensonic@users.sourceforge.net> Rework last change, so that we build subparse, but just disable the sami parse functionality, if we're configured to ... Original commit message from CVS: * configure.ac: * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: * tests/check/elements/subparse.c: Rework last change, so that we build subparse, but just disable the sami parse functionality, if we're configured to not use xml. In the tests only the sami test is disabled now. 2008-09-02 15:07:09 +0000 Stefan Kost <ensonic@users.sourceforge.net> configure.ac: Disable subparse when xml is disabled. It woundn't work anyway. Fixes test runs. Original commit message from CVS: * configure.ac: Disable subparse when xml is disabled. It woundn't work anyway. Fixes test runs. 2008-09-02 09:33:17 +0000 Tim-Philipp Müller <tim@centricular.net> po/POTFILES.in: Add some more files with strings for translation. Original commit message from CVS: * po/POTFILES.in: Add some more files with strings for translation. 2008-09-02 06:37:04 +0000 Stefan Kost <ensonic@users.sourceforge.net> Use new geo location tags from core. Fixes #481169 Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: * tests/check/libs/tag.c: Use new geo location tags from core. Fixes #481169 2008-09-01 16:05:45 +0000 Edward Hervey <bilboed@bilboed.com> tests/check/elements/audioresample.c: Now that GstBaseTransform is 'fixed' ... remove cruft from tests. Original commit message from CVS: * tests/check/elements/audioresample.c: (setup_audioresample), (fail_unless_perfect_stream), (test_perfect_stream_instance), (test_discont_stream_instance): Now that GstBaseTransform is 'fixed' ... remove cruft from tests. Add debugging for coherence. 2008-08-30 15:55:06 +0000 Jonathan Matthew <notverysmart@gmail.com> gst/typefind/gsttypefindfunctions.c: Add typefinder for PDF documents (which is nice to have, since it's a common for... Original commit message from CVS: Patch by: Jonathan Matthew <notverysmart gmail com> * gst/typefind/gsttypefindfunctions.c: (plugin_init): Add typefinder for PDF documents (which is nice to have, since it's a common format, but also helps prevent false positives). Fixes #549814. 2008-08-27 15:30:16 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Fix nasty race where multiple decodebins could start pushing data before we manage to con... Original commit message from CVS: * gst/playback/gstplaybin2.c: (selector_blocked), (pad_added_cb), (no_more_pads_cb): Fix nasty race where multiple decodebins could start pushing data before we manage to configure the sinks, resulting in not-linked errors in typical RTSP streaming cases. 2008-08-26 17:24:31 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Since we now call stop, we trigger this code path that causes a deadlock is appare... Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_stop): Since we now call stop, we trigger this code path that causes a deadlock is apparently not needed. 2008-08-26 15:45:36 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: Also allow the case where the ringbuffer was paused when we try to stop it so tha... Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_start), (gst_ring_buffer_stop): Also allow the case where the ringbuffer was paused when we try to stop it so that the basesrc stop function is still called. 2008-08-23 15:25:44 +0000 Mike Ruprecht <cmaiku@gmail.com> sys/v4l/gstv4lelement.c: Reprobe devices again instead of taking a cached list as new devices could've been plugged i... Original commit message from CVS: Patch by: Mike Ruprecht <cmaiku at gmail dot com> * sys/v4l/gstv4lelement.c: (gst_v4l_class_probe_devices): Reprobe devices again instead of taking a cached list as new devices could've been plugged in. Fixes bug #549062. 2008-08-23 15:19:59 +0000 Alessandro Dessina <alessandro@nnva.org> ext/ogg/gstoggdemux.c: Don't add pads and activate them for skeleton streams. These are already handled inside oggdem... Original commit message from CVS: Patch by: Alessandro Dessina <alessandro nnva org> * ext/ogg/gstoggdemux.c: (gst_ogg_demux_deactivate_current_chain), (gst_ogg_demux_activate_chain): Don't add pads and activate them for skeleton streams. These are already handled inside oggdemux. Fixes bug #537599. 2008-08-22 15:54:15 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Reset variable so that query and convert fail after going back to Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_change_state): Reset variable so that query and convert fail after going back to READY. Fixes #548898. 2008-08-22 07:24:13 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/vorbis/vorbisenc.c: If a buffer arrives with a timestamp before the timestamp+duration of the previous buffer cli... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_chain): If a buffer arrives with a timestamp before the timestamp+duration of the previous buffer clip it instead of dropping it completely. Slight improvement for the unfixable bug #548913. 2008-08-21 14:19:21 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/vorbis/vorbisdec.c: Take the current timestamp instead of timestamp+duration for the offset. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): Take the current timestamp instead of timestamp+duration for the offset. This offset will later be used for calculating the timestamp and otherwise vorbisdec will interpolate timestamps wrong if upstream only sends timestamps and no granulepos. 2008-08-21 11:20:36 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/seek.c: Don't crash when having no visualisations. Original commit message from CVS: * tests/examples/seek/seek.c: Don't crash when having no visualisations. 2008-08-16 20:57:27 +0000 David Schleef <ds@schleef.org> gst/typefind/gsttypefindfunctions.c: DV typefinding. Remove check for a bit that is 0 in IEC 61384, but not SMPTE 314M. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: DV typefinding. Remove check for a bit that is 0 in IEC 61384, but not SMPTE 314M. Fixes #548065. 2008-08-15 07:24:38 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/pbutils/missing-plugins.c: When cleaning up the caps fields also remove "depth" for the same reason we r... Original commit message from CVS: * gst-libs/gst/pbutils/missing-plugins.c: (copy_and_clean_caps): When cleaning up the caps fields also remove "depth" for the same reason we remove "width". 2008-08-14 17:14:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/descriptions.c: Add Lead H.264 here as well. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (format_info_get_desc): Add Lead H.264 here as well. 2008-08-14 15:17:31 +0000 Julien Moutte <julien@moutte.net> gst-libs/gst/riff/riff-media.c: Add Lead H.264 variant. Original commit message from CVS: 2008-08-14 Julien Moutte <julien@fluendo.com> * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add Lead H.264 variant. 2008-08-13 09:17:38 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: When not slaved to another clock also subtract the base_time from our internal ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): When not slaved to another clock also subtract the base_time from our internal clock time to get the running time. 2008-08-13 00:59:07 +0000 David Schleef <ds@schleef.org> ext/theora/theoraenc.c: Remove the 2000 kbit limit to bitrate, since it has no basis in libtheora. Original commit message from CVS: * ext/theora/theoraenc.c: Remove the 2000 kbit limit to bitrate, since it has no basis in libtheora. 2008-08-12 06:31:49 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/interfaces/propertyprobe.h: Remove double "interface" from doc-string. Original commit message from CVS: * gst-libs/gst/interfaces/propertyprobe.h: Remove double "interface" from doc-string. * gst-libs/gst/interfaces/xoverlay.h: Document interface. * gst-libs/gst/riff/riff.c: Add basic doc blobs. 2008-08-11 15:05:35 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/Makefile.am: Don't try to build that example anymore. Original commit message from CVS: * gst-libs/gst/audio/Makefile.am: Don't try to build that example anymore. 2008-08-11 14:51:58 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/: Move audiofiltertemplate to gst-template. Original commit message from CVS: * gst-libs/gst/audio/.cvsignore: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiofiltertemplate.c: * gst-libs/gst/audio/make_filter: Move audiofiltertemplate to gst-template. 2008-08-11 09:20:33 +0000 Stefan Kost <ensonic@users.sourceforge.net> More docs and shuffling. What can we do with the hundreds of #defines. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiosrc.h: More docs and shuffling. What can we do with the hundreds of #defines. 2008-08-11 08:34:56 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/: Reducing number of dundocumented symbols. Original commit message from CVS: * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/interfaces/propertyprobe.h: * gst-libs/gst/tag/gsttagdemux.h: Reducing number of dundocumented symbols. 2008-08-11 07:16:30 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/audio.c: Fix doc comment syntax. Original commit message from CVS: * gst-libs/gst/audio/audio.c: Fix doc comment syntax. * gst-libs/gst/interfaces/propertyprobe.c: Add more doc-comments and a FIXME: for the signal. 2008-08-07 16:11:14 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/ogg/gstoggmux.*: Don't pretend to support NEWSEGMENT events, instead override the Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_sink_event), (gst_ogg_mux_request_new_pad): * ext/ogg/gstoggmux.h: Don't pretend to support NEWSEGMENT events, instead override the GstCollectPads event function to return FALSE on NEWSEGMENT events and do the normal work for other events. This prevents elements like flacenc to seek to the start and rewrite some data which then results in a broken Ogg packet. 2008-08-07 15:58:58 +0000 Frederic Crozat <fcrozat@mandriva.org> Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822). Original commit message from CVS: Patch by: Frederic Crozat <fcrozat@mandriva.org> * ext/alsa/gstalsaplugin.c: (plugin_init): * ext/cdparanoia/gstcdparanoiasrc.c: (plugin_init): * ext/gnomevfs/gstgnomevfs.c: (plugin_init): * ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (_do_init): * gst-libs/gst/pbutils/pbutils.c: (gst_pb_utils_init): * gst-libs/gst/tag/tags.c: (gst_tag_register_tags_internal): * gst/playback/gstdecodebin.c: (plugin_init): * gst/playback/gstdecodebin2.c: (gst_decode_bin_plugin_init): * gst/playback/gstplayback.c: (plugin_init): * gst/playback/gstqueue2.c: (plugin_init): * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_plugin_init): * sys/v4l/gstv4l.c: (plugin_init): Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822). 2008-08-06 13:12:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/pbutils/descriptions.c: Add audio/x-qdm for qtdemux. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: Add audio/x-qdm for qtdemux. 2008-08-05 15:38:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/vorbis/vorbisdec.c: Do not leak old taglist. Original commit message from CVS: * ext/vorbis/vorbisdec.c: Do not leak old taglist. 2008-08-04 12:35:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/icles/test-scale.c: Include <stdlib.h> for atoi(). Original commit message from CVS: * tests/icles/test-scale.c: Include <stdlib.h> for atoi(). 2008-08-04 09:11:08 +0000 Andy Wingo <wingo@pobox.com> gst/audiotestsrc/gstaudiotestsrc.c: Very crucial and important documentation fix. Original commit message from CVS: 2008-08-04 Andy Wingo <wingo@pobox.com> * gst/audiotestsrc/gstaudiotestsrc.c: Very crucial and important documentation fix. 2008-08-01 13:06:59 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/adder/gstadder.c: Cleanup lots of empty lines that came from gst-indent going havoc before I added the INDENT_ON/... Original commit message from CVS: * gst/adder/gstadder.c: Cleanup lots of empty lines that came from gst-indent going havoc before I added the INDENT_ON/OFF marker some time agao. 2008-08-01 11:55:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> Bump requirement to latest core and use new tag for riff formats. Original commit message from CVS: * configure.ac: * gst-libs/gst/riff/riff-read.c: Bump requirement to latest core and use new tag for riff formats. Needed for #520694. 2008-08-01 11:14:49 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/dynamic/: Add example app that dynamically switches between 3 'encoders'. Original commit message from CVS: * tests/examples/dynamic/Makefile.am: * tests/examples/dynamic/codec-select.c: (make_encoder), (make_pipeline), (do_switch), (my_bus_callback), (main): Add example app that dynamically switches between 3 'encoders'. 2008-07-31 13:06:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Add some more comments. Original commit message from CVS: * gst/playback/gstplaysink.c: (gst_play_sink_set_vis_plugin): Add some more comments. 2008-07-31 12:58:44 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videotestsrc/gstvideotestsrc.c: Discard buffers of the wrong size after renegotiation, this is perfectly possible... Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_getcaps), (gst_video_test_src_create): Discard buffers of the wrong size after renegotiation, this is perfectly possible with things like capsfilter that could suggest caps changes upstream without knowing the size of the buffer. 2008-07-31 11:39:44 +0000 Wim Taymans <wim.taymans@gmail.com> tests/icles/: Add dynamic rescaling tests for the new basetransform. Original commit message from CVS: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/test-scale.c: (make_pipeline), (main): Add dynamic rescaling tests for the new basetransform. 2008-07-30 19:51:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/Makefile.am: Dist recently-added gstfastrandom.h. Original commit message from CVS: * gst/audioconvert/Makefile.am: Dist recently-added gstfastrandom.h. 2008-07-30 15:29:44 +0000 Edward Hervey <bilboed@bilboed.com> sys/xvimage/xvimagesink.c: Fix a "may be used uninitialized in this function" which weirdly only appears on macosx (?). Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): Fix a "may be used uninitialized in this function" which weirdly only appears on macosx (?). 2008-07-30 09:02:31 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/riff-ids.h: Adding acid chunk for tempo and loop information. Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: Adding acid chunk for tempo and loop information. 2008-07-29 13:01:13 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/Makefile.am: floor() needs linking to $(LIBM). Original commit message from CVS: * sys/xvimage/Makefile.am: floor() needs linking to $(LIBM). 2008-07-29 12:35:54 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/gnomevfs/gstgnomevfssrc.c: Aggregate short reads and add some comments and debug logging. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: Aggregate short reads and add some comments and debug logging. Fixes #537380 2008-07-29 10:26:28 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gstplaybasebin.c: Fix property doc markup (its not a signal). Original commit message from CVS: * gst/playback/gstplaybasebin.c: Fix property doc markup (its not a signal). * sys/xvimage/xvimagesink.c: Add since tag for new proeprties (also add sice tags fro the last two other additions). 2008-07-29 08:59:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.*: Add autofill/colorkey properties. Fixes #538656. Original commit message from CVS: * sys/xvimage/xvimagesink.c: * sys/xvimage/xvimagesink.h: Add autofill/colorkey properties. Fixes #538656. 2008-07-29 01:58:05 +0000 David Schleef <ds@schleef.org> sys/xvimage/xvimagesink.c: Fix rounding errors when converting colorbalance values between hardware and object proper... Original commit message from CVS: * sys/xvimage/xvimagesink.c: Fix rounding errors when converting colorbalance values between hardware and object property ranges. Partial fix for #537889, however, there still seems to be a small drift problem that could be totem's fault. 2008-07-28 15:34:13 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/ogg/gstoggdemux.c: Don't use GST_CLOCK_TIME_NONE as start of NEWSEGMENT events. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer), (gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page): Don't use GST_CLOCK_TIME_NONE as start of NEWSEGMENT events. This fixes a critical warning. 2008-07-28 13:12:51 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/ogg/gstoggmux.c: Allow muxing of CELT into Ogg streams. Original commit message from CVS: * ext/ogg/gstoggmux.c: Allow muxing of CELT into Ogg streams. 2008-07-28 12:47:06 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add simple typefinder for the CELT codec (www.celt-codec.org). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (celt_type_find), (plugin_init): Add simple typefinder for the CELT codec (www.celt-codec.org). 2008-07-27 11:12:41 +0000 Jan Gerber <j@oil21.org> ext/ogg/gstoggdemux.c: Fix calculation of the start time from skeleton streams. Original commit message from CVS: Patch by: Jan Gerber <j at oil21 dot org> * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fisbone): Fix calculation of the start time from skeleton streams. Fixes bug #530068. 2008-07-24 13:19:26 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/seek.c: Use 64 bit constant GST_CLOCK_TIME_NONE instead of plain -1. Original commit message from CVS: * tests/examples/seek/seek.c: Use 64 bit constant GST_CLOCK_TIME_NONE instead of plain -1. 2008-07-23 18:34:19 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/: Implement a linear congruential generator as pseudo random number generator for the dither noise. ... Original commit message from CVS: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioquantize.c: (gst_audio_quantize_setup_dither), (gst_audio_quantize_free_dither): * gst/audioconvert/gstfastrandom.h: Implement a linear congruential generator as pseudo random number generator for the dither noise. This is about 2 times faster than using GLib's mersenne twister. Also this uses only integer math for generating integers while GLib internally uses floating point math. 2008-07-23 18:27:15 +0000 Michael Smith <msmith@xiph.org> configure.ac: Remove AC_ISC_POSIX; it breaks on some systems and is not needed. Original commit message from CVS: * configure.ac: Remove AC_ISC_POSIX; it breaks on some systems and is not needed. 2008-07-23 13:17:31 +0000 Damien Lespiau <damien.lespiau@gmail.com> gst-libs/gst/sdp/gstsdpmessage.c: Use GST_STR_NULL to avoid crashes with libcs that don't like NULL strings in printf... Original commit message from CVS: Patch by: Damien Lespiau <damien.lespiau gmail com> * gst-libs/gst/sdp/gstsdpmessage.c: (print_media): Use GST_STR_NULL to avoid crashes with libcs that don't like NULL strings in printf args (such as the win32 one). Fixes #544306. 2008-07-17 14:21:30 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/xvimage/xvimagesink.c: Oops - set the size of the image used for probing back to 1x1, for consistency with ximage... Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls): Oops - set the size of the image used for probing back to 1x1, for consistency with ximagesink 2008-07-17 13:57:33 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/: it's not legal to ask the Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): Apparently on Solaris and OS/X (at least), it's not legal to ask the X server to attach to a shared memory segment after we've deleted it, with the result that MIT-SHM is disabled. Instead, remove it only after X succeeds in attaching too. 2008-07-17 02:30:24 +0000 David Schleef <ds@schleef.org> gst/audiotestsrc/gstaudiotestsrc.*: Add 'ticks', a 1/30 second sine wave pulse every second. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/audiotestsrc/gstaudiotestsrc.h: Add 'ticks', a 1/30 second sine wave pulse every second. 2008-07-15 22:43:16 +0000 David Schleef <ds@schleef.org> gst-libs/gst/video/video.c: Revert ABI change. Original commit message from CVS: * gst-libs/gst/video/video.c: Revert ABI change. 2008-07-15 13:05:04 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: Make it impossible to have NULL caps at the point where we set framerate and other th... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Make it impossible to have NULL caps at the point where we set framerate and other things. Also don't return immediately for "3ivd" video and let framerate, etc be set. Might fix bug #542508. 2008-07-14 17:06:26 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> gst-libs/gst/video/video.c: Video format can also be conveniently determined from (many) non-fixed caps. Original commit message from CVS: * gst-libs/gst/video/video.c: (gst_video_format_parse_caps): Video format can also be conveniently determined from (many) non-fixed caps. 2008-07-14 08:18:58 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/: First stab at integrating DVD subpicture overlay into playbin. Successfully plugs and plays, but the q... Original commit message from CVS: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: * gst/playback/gststreamselector.c: First stab at integrating DVD subpicture overlay into playbin. Successfully plugs and plays, but the queues need shrinking - 3 seconds of video is too much buffering. 2008-07-11 18:06:33 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioconvert/gstaudioconvert.c: Remove now obsolete note in the docs. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: Remove now obsolete note in the docs. 2008-07-11 06:10:24 +0000 Stefan Kost <ensonic@users.sourceforge.net> Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe... Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/theora/theoraparse.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * ext/vorbis/vorbisparse.c: * ext/vorbis/vorbistag.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstqueue2.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpserversink.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipelines are "simple" pipelines. 2008-07-10 21:06:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe... Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/theora/theoraparse.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * ext/vorbis/vorbisparse.c: * ext/vorbis/vorbistag.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstqueue2.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpserversink.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipelines are "simple" pipelines. 2008-07-07 17:25:41 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/examples/seek/Makefile.am: Fix out of tree build by adding all required CFLAGS. Original commit message from CVS: * tests/examples/seek/Makefile.am: Fix out of tree build by adding all required CFLAGS. 2008-07-07 09:55:41 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/playback/gstdecodebin.c: And ref the pad before returning it again when linking to the queue failed. Otherwise we... Original commit message from CVS: * gst/playback/gstdecodebin.c: (add_raw_queue): And ref the pad before returning it again when linking to the queue failed. Otherwise we will unref the pad twice later and things break. 2008-07-07 09:48:45 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/playback/gstdecodebin.c: If linking the raw pad with a queue fails, try it without a queue instead of failing com... Original commit message from CVS: * gst/playback/gstdecodebin.c: (add_raw_queue): If linking the raw pad with a queue fails, try it without a queue instead of failing completely. This should never happen. 2008-07-06 23:22:12 +0000 Evgeniy Stepanov <eugeni.stepanov@gmail.com> gst/playback/gstdecodebin.c: Add a queue after a demuxer if the demuxer outputs raw data. This was done before only f... Original commit message from CVS: Patch by: Evgeniy Stepanov <eugeni dot stepanov at gmail dot com> * gst/playback/gstdecodebin.c: (add_raw_queue), (close_pad_link): Add a queue after a demuxer if the demuxer outputs raw data. This was done before only for non-raw data but is required in this case too. Fixes bug #540215. decodebin2 doesn't have this issue because all streams of a group go through multiqueue. 2008-07-03 09:12:49 +0000 Damien Lespiau <damien.lespiau@gmail.com> gst-libs/gst/sdp/gstsdpmessage.c: Makes libgstsdp compile with mingw32 by defining the right WINVER so that getaddrin... Original commit message from CVS: Patch by: Damien Lespiau <damien dot lespiau at gmail dot com> * gst-libs/gst/sdp/gstsdpmessage.c: Makes libgstsdp compile with mingw32 by defining the right WINVER so that getaddrinfo() can be used. Fixes #541358. 2008-07-01 13:22:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videotestsrc/gstvideotestsrc.*: Cleanups, use default property values as defines. Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init), (gst_video_test_src_init), (gst_video_test_src_set_property), (gst_video_test_src_get_property), (gst_video_test_src_create): * gst/videotestsrc/gstvideotestsrc.h: Cleanups, use default property values as defines. Add property to enable/disable peer buffer allocation. 2008-06-30 09:46:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/: Enable unit tests on PPC again as the bugs are now fixed. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): * tests/check/pipelines/streamheader.c: (streamheader_suite): Enable unit tests on PPC again as the bugs are now fixed. 2008-06-30 09:20:59 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/: Add support for ADPCM IMA DK3 and DK4 variant in RIFF containers. Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Add support for ADPCM IMA DK3 and DK4 variant in RIFF containers. Fixes bug #540351. 2008-06-30 08:29:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/ffmpegcolorspace/: Only set/get on the PAL8 format, ffmpegcolorspace doesn't support it on other formats. Also ad... Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps): * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_unit_size): Only set/get on the PAL8 format, ffmpegcolorspace doesn't support it on other formats. Also adjust the unit size only for that format to not include the palette. Fixes bug #540497. 2008-06-29 13:45:27 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/adder/gstadder.c: Use GST_DEBUG_FUNCPTR and remove some extra vlnak lines. Original commit message from CVS: * gst/adder/gstadder.c: Use GST_DEBUG_FUNCPTR and remove some extra vlnak lines. 2008-06-27 07:55:40 +0000 Stefan Kost <ensonic@users.sourceforge.net> ChangeLog: ChangeLog surgery. Original commit message from CVS: * ChangeLog: ChangeLog surgery. * tests/examples/seek/seek.c: Move variable into ifdef too. 2008-06-27 07:42:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/seek.c: Include config.h and check if we have X. Fixes: #540334. Original commit message from CVS: * tests/examples/seek/seek.c: Include config.h and check if we have X. Fixes: #540334. 2008-06-26 06:03:38 +0000 Sam Morris <sam@robots.org.to.uk> gst-libs/gst/interfaces/mixertrack.c: API: Add "index" property to GstMixerTrack to differantiate between multiple mi... Original commit message from CVS: Patch by: Sam Morris <sam at robots dot org to uk> * gst-libs/gst/interfaces/mixertrack.c: (gst_mixer_track_class_init), (gst_mixer_track_get_property), (gst_mixer_track_set_property): API: Add "index" property to GstMixerTrack to differantiate between multiple mixer tracks with the same label. * ext/alsa/gstalsamixeroptions.c: (gst_alsa_mixer_options_new): * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new): Set the "index" property of GstMixerTrack to the index given by ALSA. Fixes bug #528299. 2008-06-25 13:15:50 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/: Remove libgstvideo usage. Use gtk_get_option_group instead of gtk_init(). Original commit message from CVS: * tests/examples/seek/Makefile.am: * tests/examples/seek/seek.c: Remove libgstvideo usage. Use gtk_get_option_group instead of gtk_init(). 2008-06-24 16:27:35 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/Makefile.am: Name the test registry format neutral. Original commit message from CVS: * tests/check/Makefile.am: Name the test registry format neutral. 2008-06-24 16:22:45 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gstqueue2.c: Do not double notify. Remove the unsued return value. Original commit message from CVS: * gst/playback/gstqueue2.c: Do not double notify. Remove the unsued return value. 2008-06-24 16:15:26 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/alsa/gstalsamixer.c: Also consider "speaker" as a name for master volume. If that doesn't help look for the first... Original commit message from CVS: * ext/alsa/gstalsamixer.c: Also consider "speaker" as a name for master volume. If that doesn't help look for the first non-mono volume control that also has a playback switch. 2008-06-24 16:10:50 +0000 Stefan Kost <ensonic@users.sourceforge.net> ChangeLog: Forgot to save the ChangeLog :/ Original commit message from CVS: * ChangeLog: Forgot to save the ChangeLog :/ 2008-06-24 16:05:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/: Embedd the xwindow. Original commit message from CVS: * tests/examples/seek/Makefile.am: * tests/examples/seek/seek.c: Embedd the xwindow. 2008-06-24 01:14:40 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/ximage/ximagesink.h: When the caps change, make sure to re-draw borders in force-aspect-ratio=true mode. Original commit message from CVS: * sys/ximage/ximagesink.c (gst_ximagesink_ximage_put), (gst_ximagesink_setcaps): * sys/ximage/ximagesink.h: When the caps change, make sure to re-draw borders in force-aspect-ratio=true mode. * sys/xvimage/xvimagesink.c (gst_xvimagesink_xvimage_put): Don't clear the border_draw flag until we actually draw the border. * tests/check/Makefile.am: Ignore alsasink/src during the states test too, so it doesn't fail when running without access to the sound device. 2008-06-22 18:35:27 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/seek.c: Fix crasher when playing a parse-launch line the 2nd time. Original commit message from CVS: * tests/examples/seek/seek.c: Fix crasher when playing a parse-launch line the 2nd time. 2008-06-21 18:56:08 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/pipelines/oggmux.c: Properly ifdef tests to fix compilation. Original commit message from CVS: * tests/check/pipelines/oggmux.c: Properly ifdef tests to fix compilation. 2008-06-21 10:25:59 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: break long lines Original commit message from CVS: break long lines 2008-06-20 18:24:24 +0000 Michael Smith <msmith@xiph.org> gst/playback/: Add get-video-pad, get-audio-pad, get-text-pad action signals to playbin2. This allows the user to get... Original commit message from CVS: * gst/playback/gstplay-marshal.list: * gst/playback/gstplaybin2.c: Add get-video-pad, get-audio-pad, get-text-pad action signals to playbin2. This allows the user to get to the selector's sinkpads, and thus inspect a range of things - caps, tags, etc. 2008-06-20 17:27:03 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstplaybin2.c: Use a different constant for the convert-frame signal id. Original commit message from CVS: * gst/playback/gstplaybin2.c: Use a different constant for the convert-frame signal id. Fixes #537009. 2008-06-20 17:18:55 +0000 Michael Smith <msmith@xiph.org> gst/playback/: Fix a whole bunch of typos in comments and log statements. Original commit message from CVS: * gst/playback/gstplaybin2.c: * gst/playback/gstplaysink.c: Fix a whole bunch of typos in comments and log statements. 2008-06-20 17:02:48 +0000 Michael Smith <msmith@xiph.org> sys/xvimage/xvimagesink.c: Don't set colour balance values on the Xv port if the user hasn't changed them (via proper... Original commit message from CVS: * sys/xvimage/xvimagesink.c: Don't set colour balance values on the Xv port if the user hasn't changed them (via properties or the interface). Avoids accumulating rounding errors for the common case. Partial fix for bug #537889. 2008-06-20 16:56:18 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstdecodebin2.c: Ensure decodebin2 emits 'drained' signal once, and only once, when all pads are drained. Original commit message from CVS: * gst/playback/gstdecodebin2.c: Ensure decodebin2 emits 'drained' signal once, and only once, when all pads are drained. 2008-06-20 16:12:50 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/README: apparently it's an error to specify nc -l -p 3000 - though the short usage does not make it very clear that you can d... Original commit message from CVS: apparently it's an error to specify nc -l -p 3000 - though the short usage does not make it very clear that you can drop the host arg with -l 2008-06-20 09:25:44 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisenc.c: Report the encoder latency. Fixes #538232. Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_get_latency), (gst_vorbis_enc_src_query), (gst_vorbis_enc_chain): Report the encoder latency. Fixes #538232. 2008-06-20 09:19:59 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Implement the source property, emit notify when it changes in the underlying uridecodebin. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_get_property), (notify_source), (activate_group): Implement the source property, emit notify when it changes in the underlying uridecodebin. 2008-06-20 09:14:26 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Free and clear the seek element list so that we don't use invalid references when seeking... Original commit message from CVS: * tests/examples/seek/seek.c: (stop_cb): Free and clear the seek element list so that we don't use invalid references when seeking after recreating a gst-launch line. 2008-06-20 09:09:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Report latency even if we are not live instead of hiding it. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_query), (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_render): Report latency even if we are not live instead of hiding it. Take ts-offset and render-delay of the basesink into account when scheduling samples. Rework the clipping code so that we can take the various offsets into account and still do correct clipping. 2008-06-20 08:52:21 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Bump verion back to devel -> 0.10.20.1 Original commit message from CVS: * configure.ac: Bump verion back to devel -> 0.10.20.1 2008-06-20 08:47:14 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/tag/tags.c: Don't increase the size of non-string image buffers by one as this might in theory confuse d... Original commit message from CVS: * gst-libs/gst/tag/tags.c: (gst_tag_image_data_to_image_buffer): Don't increase the size of non-string image buffers by one as this might in theory confuse decoders. Still increase it by one for string image buffers to append '\0'. 2008-06-20 08:45:13 +0000 Antoine Tremblay <hexa00@gmail.com> gst/gdp/gstgdppay.c: Fix a buffer memleak and remove a confusing and wrong debug output. Original commit message from CVS: Patch by: Antoine Tremblay <hexa00 at gmail dot com> * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset): Fix a buffer memleak and remove a confusing and wrong debug output. Fixes bug #538663. 2008-06-19 11:25:37 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/appsink-src.c: Don't use a buffer after unreffing it. Original commit message from CVS: * examples/app/appsink-src.c: (on_new_buffer_from_source): Don't use a buffer after unreffing it. === release 0.10.20 === 2008-06-18 14:36:28 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * po/LINGUAS: * win32/common/config.h: Release 0.10.20 Original commit message from CVS: Release 0.10.20 2008-06-18 14:32:12 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/it.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-06-18 06:31:11 +0000 Stefan Kost <ensonic@users.sourceforge.net> Fix gtk-doc warnings. Also don't misuse api-doc comments for normal comments. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * examples/app/appsrc-ra.c: * examples/app/appsrc-seekable.c: * examples/app/appsrc-stream.c: * examples/app/appsrc-stream2.c: * ext/directfb/dfbvideosink.h: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/metadata.c: * ext/metadata/metadataexif.c: * ext/theora/theoradec.h: * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/speedy.c: * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/vfir.c: Fix gtk-doc warnings. Also don't misuse api-doc comments for normal comments. 2008-06-16 14:11:36 +0000 Andy Wingo <wingo@pobox.com> * gst-libs/gst/app/gstappsrc.c: gst-libs/gst/app/gstappsrc.c (gst_app_src_set_max_bytes) Original commit message from CVS: 2008-06-16 Andy Wingo <wingo@pobox.com> * gst-libs/gst/app/gstappsrc.c (gst_app_src_set_max_bytes) (gst_app_src_get_max_bytes, gst_app_src_push_buffer): Use G_GUINT64_FORMAT. Avoid overflow in get_max_bytes(). 2008-06-16 07:30:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> Final round of doc updates. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/speed/gstspeed.c: * gst/speexresample/gstspeexresample.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * sys/dvb/gstdvbsrc.c: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-source.c: * sys/wininet/gstwininetsrc.c: Final round of doc updates. 2008-06-13 11:59:21 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/plugins/: docs/plugins/inspect/plugin-mythtv.xml Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/dc1394/gstdc1394.c: * ext/directfb/dfbvideosink.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/app/gstappsink.c: * gst/deinterlace/gstdeinterlace.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/freeze/gstfreeze.c: * gst/interleave/deinterleave.c: * gst/interleave/interleave.c: * gst/modplug/gstmodplug.cc: * gst/nuvdemux/gstnuvdemux.c: Add missing elements to docs. Fix doc-markup: use convinience syntax for examples (produces valid docbook), add several refsec2 when we have several titles. Fix some types. 2008-06-12 15:47:03 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/: Add beefed up example app from bug #413418. It now also uses appsink instead of fakesink for more ulti... Original commit message from CVS: * examples/app/.cvsignore: * examples/app/Makefile.am: * examples/app/appsink-src.c: (on_new_buffer_from_source), (on_source_message), (on_sink_message), (main): Add beefed up example app from bug #413418. It now also uses appsink instead of fakesink for more ultimate coolness. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_create), (gst_app_src_set_max_bytes), (gst_app_src_push_buffer), (gst_app_src_end_of_stream): * gst-libs/gst/app/gstappsrc.h: Add block property to allow push based implementation to block when we fill up the appsrc queues. Emit the enough-data signal while releasing our lock. 2008-06-12 14:50:27 +0000 Stefan Kost <ensonic@users.sourceforge.net> examples/app/.cvsignore: Ignore more. Original commit message from CVS: * examples/app/.cvsignore: Ignore more. 2008-06-12 14:49:15 +0000 Stefan Kost <ensonic@users.sourceforge.net> Do not use short_description in section docs for elements. We extract them from element details and there will be war... Original commit message from CVS: * ext/dc1394/gstdc1394.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/metadata/gstmetadatademux.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * gst-libs/gst/app/gstappsink.c: * gst/bayer/gstbayer2rgb.c: * gst/deinterlace/gstdeinterlace.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/selector/gstinputselector.c: * gst/selector/gstoutputselector.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-source.c: Do not use short_description in section docs for elements. We extract them from element details and there will be warnings if they differ. Also fixing up the ChangeLog order. 2008-06-11 21:17:01 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: 0.10.19.3 pre-release Original commit message from CVS: * configure.ac: 0.10.19.3 pre-release 2008-06-11 20:13:00 +0000 David Schleef <ds@schleef.org> gst-libs/gst/rtsp/gstrtspconnection.c: Fix build on win32. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: Fix build on win32. Patch By: David Schleef <ds@schleef.org> Fixes: #536874 2008-06-11 09:35:51 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgiobasesrc.*: Try to read the requested number of bytes, even if the first read returns less than requeste... Original commit message from CVS: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_finalize), (gst_gio_base_src_create): * ext/gio/gstgiobasesrc.h: Try to read the requested number of bytes, even if the first read returns less than requested, until nothing is read anymore or we have the requested amount of bytes. This fixes playback of files via Samba as Samba only allows to read 64k at once. Implement a caching algorithm that makes sure that we read at least 4k of data every time. Some elements will try to read a few bytes, then seek, read again a few bytes and so on and this is painfully slow as every operation has to go over DBus if GVfs is used as backend. Fixes bug #536849 and #536848. * ext/gio/gstgiosrc.c: (gst_gio_src_class_init), (gst_gio_src_check_get_range): Override check_get_range() to blacklist http/https URIs and whitelist file URIs. More to be added on demand. 2008-06-06 16:50:51 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/: Added 3 more example application for using appsrc in random-access mode, pull-mode streaming and pull ... Original commit message from CVS: * examples/app/Makefile.am: * examples/app/appsrc-ra.c: (feed_data), (seek_data), (found_source), (bus_message), (main): * examples/app/appsrc-seekable.c: (feed_data), (seek_data), (found_source), (bus_message), (main): * examples/app/appsrc-stream2.c: (feed_data), (found_source), (bus_message), (main): Added 3 more example application for using appsrc in random-access mode, pull-mode streaming and pull mode seekable. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_start), (gst_app_src_do_get_size), (gst_app_src_create): * gst-libs/gst/app/gstappsrc.h: Make stream-type property writable. Unset flushing when starting so that we reuse appsrc. Inform basesrc about the configured size. Emit seek-data signal when we are going to a different offset in random-access mode. 2008-06-06 14:19:54 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/appsrc-stream.c: Use deep-notify until we can depend on a playbin2 with support for the source property. Original commit message from CVS: * examples/app/appsrc-stream.c: (found_source), (main): Use deep-notify until we can depend on a playbin2 with support for the source property. 2008-06-05 16:38:50 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/: Added an example on how to use appsrc in playbin in streaming mode from an mmapped file. Original commit message from CVS: * examples/app/.cvsignore: * examples/app/Makefile.am: * examples/app/appsrc-stream.c: (read_data), (start_feed), (stop_feed), (found_source), (bus_message), (main): Added an example on how to use appsrc in playbin in streaming mode from an mmapped file. * examples/app/appsrc_ex.c: (main): Set pipeline to NULL to free queued buffers. * gst-libs/gst/app/gstapp-marshal.list: * gst-libs/gst/app/gstappsrc.c: (stream_type_get_type), (_do_init), (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_flush_queued), (gst_app_src_dispose), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop), (gst_app_src_is_seekable), (gst_app_src_check_get_range), (gst_app_src_do_seek), (gst_app_src_create), (gst_app_src_set_stream_type), (gst_app_src_get_stream_type), (gst_app_src_set_max_bytes), (gst_app_src_get_max_bytes), (gst_app_src_push_buffer), (gst_app_src_end_of_stream), (gst_app_src_uri_get_type), (gst_app_src_uri_get_protocols), (gst_app_src_uri_get_uri), (gst_app_src_uri_set_uri), (gst_app_src_uri_handler_init): * gst-libs/gst/app/gstappsrc.h: Measure max queue size in bytes instead. Add support for 3 modes of operation, streaming, seekable and random-access, making basesrc handle the scheduling modes for each. Add appsrc:// uri handler so that automatic plugging can be done from playbin2 or uridecodebin, for example. Added support for custom segment formats. Add support for push and pull based operations from the application. Expand the methods so that errors can be detected. Flush the queued buffers on seeks and when shutting down. Add signals to inform the app that a seek must happen. 2008-06-05 09:47:23 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: 0.10.19.2 pre-release Original commit message from CVS: * configure.ac: 0.10.19.2 pre-release 2008-06-04 21:48:27 +0000 Jan Schmidt <thaytan@mad.scientist.com> win32/common/: Add new API functions to the dll exports Original commit message from CVS: * win32/common/libgstrtsp.def: * win32/common/libgsttag.def: Add new API functions to the dll exports 2008-06-04 17:42:38 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstplaybasebin.c: Disconnect signals from decodebins we created before we remove it from playbin, to avo... Original commit message from CVS: * gst/playback/gstplaybasebin.c: Disconnect signals from decodebins we created before we remove it from playbin, to avoid crashes if the decodebin is eventually disposed after the playbin itself (possible if the app takes a reference on the decodebin). Fixes #536521. 2008-06-04 17:12:40 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Bunch of small clean-ups: use gst_type_find_suggest_simple(); don't copy caps fo... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (aac_type_find), (mp3_type_find), (musepack_type_find), (MULTIPART_MAX_HEADER_SIZE), (mpeg_sys_type_find), (mpeg_ts_type_find), (mpeg4_video_type_find), (h264_video_type_find), (mpeg_video_stream_type_find), (dv_type_find), (mmsh_type_find): Bunch of small clean-ups: use gst_type_find_suggest_simple(); don't copy caps for no good reason (this may be desirable to make it easier to detect leaks, but then it should probably be done for all caps in the typefinder somewhere). 2008-06-04 16:06:49 +0000 Peter Kjellerstedt <pkj@axis.com> tests/check/Makefile.am: Do not try to run the check tests for subparse unless it has been built. Original commit message from CVS: * tests/check/Makefile.am: Do not try to run the check tests for subparse unless it has been built. 2008-06-04 16:00:26 +0000 Peter Kjellerstedt <pkj@axis.com> tests/check/pipelines/streamheader.c: Do not try to run a test which requires vorbisenc unless we have actually built... Original commit message from CVS: * tests/check/pipelines/streamheader.c: (buffer_probe_cb), (test_multifdsink_gdp_vorbisenc), (streamheader_suite): Do not try to run a test which requires vorbisenc unless we have actually built it. 2008-06-04 11:53:53 +0000 Peter Kjellerstedt <pkj@axis.com> gst-libs/gst/rtsp/gstrtspconnection.*: Add a couple of missing argument guards. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_set_auth), (gst_rtsp_connection_set_auth_param), (gst_rtsp_connection_clear_auth_params), (gst_rtsp_connection_set_qos_dscp), (gst_rtsp_connection_get_ip): * gst-libs/gst/rtsp/gstrtspconnection.h: Add a couple of missing argument guards. Add a way of setting the DSCP for an RTSP connection. Add an accessor method for the ip member of GstRTSPConnection as all members are supposed to be private. 2008-06-04 11:33:23 +0000 Peter Kjellerstedt <pkj@axis.com> gst/tcp/gstmultifdsink.c: Fixed accidental use of IPv4 options for all IPv6 addresses. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (setup_dscp_client): Fixed accidental use of IPv4 options for all IPv6 addresses. 2008-06-04 10:18:42 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixertrack.h: Document mixer track flags. Original commit message from CVS: * gst-libs/gst/interfaces/mixertrack.h: Document mixer track flags. 2008-06-04 05:58:38 +0000 Antoine Tremblay <hexa00@gmail.com> gst/gdp/gstgdppay.c: Don't set caps on the buffers that contain a copy of the buffer including the caps of them resul... Original commit message from CVS: Patch by: Antoine Tremblay <hexa00 at gmail dot com> * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader): Don't set caps on the buffers that contain a copy of the buffer including the caps of them resulting in an always increasing refcount of the caps and insanely large caps. Instead include a buffer without caps in the new caps. Fixes bug #536475. 2008-06-04 05:44:06 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/videoscale/gstvideoscale.c: Transform a given PAR to a range on the struct with the generic height/width instead ... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (gst_video_scale_transform_caps): Transform a given PAR to a range on the struct with the generic height/width instead of the struct with the possibly restricted height/width. 2008-06-04 04:24:27 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/videoscale/gstvideoscale.c: Prefer the given format if it contains something stricter than [1,MAX] for height or ... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (gst_video_scale_transform_caps): Prefer the given format if it contains something stricter than [1,MAX] for height or width and only put a structure that requires rescaling as second. This makes it possible to use videoscale in pipelines where the source can actually produce the wanted height/width but usually selects a different one from the requested. 2008-06-03 20:01:58 +0000 John Millikin <jmillikin@gmail.com> gst-libs/gst/tag/gstvorbistag.c: Retrieve COVERART tags from vorbis comments (#512333) Original commit message from CVS: Based on patch by: John Millikin <jmillikin gmail com> * gst-libs/gst/tag/gstvorbistag.c: (tag_matches), (gst_vorbis_tag_add), (gst_vorbis_tag_add_coverart): Retrieve COVERART tags from vorbis comments (#512333) 2008-06-03 19:44:48 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/: Don't forget to add new enum value here too (should probably use glib-mkenums here...). Original commit message from CVS: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: (register_tag_image_type_enum): Don't forget to add new enum value here too (should probably use glib-mkenums here...). 2008-06-03 19:29:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/: API: add gst_tag_image_data_to_image_buffer() Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: (gst_tag_list_add_id3_image): * gst-libs/gst/tag/tag.h: (GST_TAG_IMAGE_TYPE_NONE), * gst-libs/gst/tag/tags.c: (register_tag_image_type_enum), (gst_tag_image_type_get_type), (gst_tag_image_type_is_valid), (gst_tag_image_data_to_image_buffer): Add two utility functions to avoid code duplication (#512333): API: add gst_tag_image_data_to_image_buffer() API: add gst_tag_list_add_id3_image() 2008-06-03 08:54:29 +0000 Sebastian Dröge <slomo@circular-chaos.org> win32/common/libgstaudio.def: Add gst_audio_check_channel_positions() to the exported symbols. Original commit message from CVS: * win32/common/libgstaudio.def: Add gst_audio_check_channel_positions() to the exported symbols. 2008-06-03 08:48:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> API: Make gst_audio_check_channel_positions() public. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions): * gst-libs/gst/audio/multichannel.h: API: Make gst_audio_check_channel_positions() public. * tests/check/libs/audio.c: (GST_START_TEST): Add some simple checks for gst_audio_check_channel_positions(). 2008-06-02 20:09:14 +0000 Tim-Philipp Müller <tim@centricular.net> sys/v4l/v4l_calls.c: minrange and maxrange are scaled according to the frequency multiplier. Original commit message from CVS: * sys/v4l/v4l_calls.c: (gst_v4l_get_chan_names): minrange and maxrange are scaled according to the frequency multiplier. 2008-06-02 18:37:02 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/: Use gstvideo functions to calculate strides and plane offsets. Fixes rendering issue ('ghost' images of t... Original commit message from CVS: * ext/pango/Makefile.am: * ext/pango/gsttextoverlay.c: (gst_text_overlay_shade_y), (gst_text_overlay_blit_yuv420), (gst_text_overlay_push_frame): Use gstvideo functions to calculate strides and plane offsets. Fixes rendering issue ('ghost' images of the text on the chroma planes) with widths or heights that are not multiples of 8 (#506659 and probably also #485729). * tests/icles/test-textoverlay.c: (show_text), (test_textoverlay), (main): Test with odd height/width too. 2008-06-02 12:20:35 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/adder/gstadder.c: When using gst_element_iterate_pads() one has to unref every pad after usage. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_query_duration), (gst_adder_query_latency): When using gst_element_iterate_pads() one has to unref every pad after usage. 2008-05-31 19:57:57 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> gst-libs/gst/audio/gstbaseaudiosrc.c: Add a gtk-doc chunk for the new properties to have a Since: indication. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): Add a gtk-doc chunk for the new properties to have a Since: indication. 2008-05-31 19:50:59 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * ChangeLog: ChangeLog surgery, mark API change Original commit message from CVS: ChangeLog surgery, mark API change 2008-05-31 18:10:47 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> gst-libs/gst/audio/gstbaseaudiosrc.c: Provide readable actual-buffer-time and actual-latency-time properties that ref... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init), (gst_base_audio_src_dispose), (gst_base_audio_src_get_property), (gst_base_audio_src_setcaps), (gst_base_audio_src_change_state): Provide readable actual-buffer-time and actual-latency-time properties that reflect the configured ringbuffer values. Fixes #524724. 2008-05-30 15:29:20 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Simply converting the running time into an RTP timestamp by scaling it based on... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push), (gst_basertppayload_change_state): Simply converting the running time into an RTP timestamp by scaling it based on the clock-rate is good enough for making an RTP timestamp. This has the added benefit that we can later on expose a property with the RTP timestamp of running time 0, as is needed for RTSP servers to generate the response of the PLAY request. 2008-05-30 08:42:17 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstaudioconvert.c: Allow up to 11 positioned channels now that audioconvert can handle this but add ... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (structure_has_fixed_channel_positions), (gst_audio_convert_transform_caps): Allow up to 11 positioned channels now that audioconvert can handle this but add no default positions for > 8 channels. * tests/check/elements/audioconvert.c: (GST_START_TEST): Add some unit tests for the above change: Test conversion of 11 positioned channels to stereo and the other way around, test conversion of 15 unpositioned channels in different ways. 2008-05-29 19:45:40 +0000 Sebastian Dröge <slomo@circular-chaos.org> win32/common/libgstaudio.def: Add gst_audio_clock_reset to the list of exported symbols. Original commit message from CVS: * win32/common/libgstaudio.def: Add gst_audio_clock_reset to the list of exported symbols. 2008-05-29 19:37:47 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/elements/vorbisdec.c: Remove wrong_channels_identification_header unit test as we now support 7 (and more... Original commit message from CVS: * tests/check/elements/vorbisdec.c: (vorbisdec_suite): Remove wrong_channels_identification_header unit test as we now support 7 (and more channels). 2008-05-29 12:17:16 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstchannelmix.c: If mixing left or right to center (or the other way around) only take the complete ... Original commit message from CVS: * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_one_other): If mixing left or right to center (or the other way around) only take the complete value if we don't already have the original position in the source. 2008-05-29 11:34:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/multichannel.c: Allow rear center together with rear left/right and other previously conflicting c... Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions), (gst_audio_set_structure_channel_positions_list), (gst_audio_fixate_channel_positions): Allow rear center together with rear left/right and other previously conflicting channel positions. The reason why they weren't allowed was the channel mixing implementation in audioconvert. Also take this into account when fixing channel layouts. Allow setting channel positions for 1/2 channels when using gst_audio_set_structure_channel_position(). * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_compatible), (gst_channel_mix_detect_pos), (gst_channel_mix_fill_one_other), (gst_channel_mix_fill_others), (gst_channel_mix_fill_special), (gst_channel_mix_fill_matrix): Major rewrite of the channel mixing. We now allow previously conflicting channel positions to appear together (rear center and rear left/right for example). Fixes bug #533817. Rework the way channels are mixed together to take more possible channel positions into account, properly mix from/to side channels and don't assume that either center, left&right or nothing of a specific position is available anymore. * tests/check/elements/audioconvert.c: (GST_START_TEST): Adjust unit tests with non-standard 1/2 channel layouts to the more correct new behaviour. Add a unit test for 5.1->Stereo downmixing. 2008-05-29 07:02:50 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/vorbis/: Add sane defaults for the 7 and 8 channel layouts as those are undefined in the Vorbis spec. Use NONE ch... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet): * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_generate_sink_caps): Add sane defaults for the 7 and 8 channel layouts as those are undefined in the Vorbis spec. Use NONE channel layouts when decoding more than 8 channels instead of erroring out. Fixes bug #535356. 2008-05-28 16:10:20 +0000 Wim Taymans <wim.taymans@gmail.com> Add theoraparse to the docs and fix some docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/theora/theoraparse.c: Add theoraparse to the docs and fix some docs. 2008-05-28 15:48:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/cdda/gstcddabasesrc.c: Fix EOS condition and track addition check, the track.end sector is included in t... Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_add_track), (gst_cdda_base_src_create): Fix EOS condition and track addition check, the track.end sector is included in the track. Fixes #533265. 2008-05-28 14:49:24 +0000 Mark Nauwelaerts <manauw@skynet.be> gst/videorate/gstvideorate.*: React (more) to NEWSEGMENT Original commit message from CVS: Patch by: Mark Nauwelaerts <manauw at skynet be> * gst/videorate/gstvideorate.c: (gst_video_rate_reset), (gst_video_rate_flush_prev), (gst_video_rate_event), (gst_video_rate_chain): * gst/videorate/gstvideorate.h: React (more) to NEWSEGMENT Small adjustment in timestamp calculation to prevent mismatches Fixes #435633. 2008-05-28 11:31:44 +0000 Tim-Philipp Müller <tim@centricular.net> tests/examples/seek/seek.c: Initialise error to NULL as we should. Original commit message from CVS: * tests/examples/seek/seek.c: (make_parselaunch_pipeline): Initialise error to NULL as we should. 2008-05-28 08:14:47 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/adder/gstadder.c: Implement latency query. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_query_duration), (gst_adder_query_latency), (gst_adder_query): Implement latency query. 2008-05-27 18:10:00 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/adder/gstadder.c: Correctly resync the iterator if gst_iterator_next() returns Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_query_duration): Correctly resync the iterator if gst_iterator_next() returns GST_ITERATOR_RESYNC. 2008-05-27 17:14:07 +0000 Tim-Philipp Müller <tim@centricular.net> win32/vs6/libgstpbutils.dsp: Add pbutils-enumtypes.c to sources (#518037). Original commit message from CVS: * win32/vs6/libgstpbutils.dsp: Add pbutils-enumtypes.c to sources (#518037). 2008-05-27 16:20:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudioclock.*: Add method to inform the clock that the time starts from 0 again. We use this inf... Original commit message from CVS: * gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_init), (gst_audio_clock_reset), (gst_audio_clock_get_internal_time): * gst-libs/gst/audio/gstaudioclock.h: Add method to inform the clock that the time starts from 0 again. We use this info to calculate a clock offset so that the time we report in internal_time is monotonically increasing, as required by the clock base class. Fixes #521761. API: GstAudioClock::gst_audio_clock_reset() * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_change_state): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create), (gst_base_audio_src_change_state): Reset reported time when we (re)create the ringbuffer. 2008-05-27 16:11:32 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsamixertrack.c: Make sure playback volumes aren't accidentally overwritten by capture volumes if an als... Original commit message from CVS: * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_update_alsa_capabilities): Make sure playback volumes aren't accidentally overwritten by capture volumes if an alsa mixer track has both playback and capture capabilities: we create two GstMixerTracks in that case, so make sure we query only the alsa capabilities that refer to the type of GstMixerTrack we created from the dual capability alsa element. Should fix issues with Audigy2 sound cards (#518082). 2008-05-27 10:57:56 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/oggmux.c: Don't use deprecated function. Original commit message from CVS: * tests/check/pipelines/oggmux.c: (test_pipeline): Don't use deprecated function. 2008-05-27 10:35:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Check for NULL cases and log them, creating ghostpads can, for example, fail when the p... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_group_control_source_pad), (gst_decode_group_expose): Check for NULL cases and log them, creating ghostpads can, for example, fail when the pad returns wrong caps. * gst/playback/gstplaybin2.c: (perform_eos): When pushing out the EOS event, collect the return value and warn when something failed. 2008-05-26 17:18:52 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-media.c: Add support for DVCPRO. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add support for DVCPRO. 2008-05-26 10:29:20 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videoscale/gstvideoscale.c: Change default scaling method from nearest-neighbour to bilinear. Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (DEFAULT_PROP_METHOD): Change default scaling method from nearest-neighbour to bilinear. 2008-05-26 10:26:00 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/video.c: More checks. Original commit message from CVS: * tests/check/libs/video.c: More checks. 2008-05-25 20:51:35 +0000 Tim-Philipp Müller <tim@centricular.net> Limit duration to a maximum of five seconds for tmplayer format where we can guess the duration only from the timesta... Original commit message from CVS: * gst/subparse/gstsubparse.c: (parser_state_init), (gst_sub_parse_format_autodetect), (handle_buffer): * gst/subparse/gstsubparse.h: * tests/check/elements/subparse.c: (test_tmplayer_style3b): Limit duration to a maximum of five seconds for tmplayer format where we can guess the duration only from the timestamp of the next line of text. We don't want to show a text for eternities just because nothing else is being said for a while. 2008-05-23 14:14:28 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Check sequence numbers, mark input buffers with a discont flag for the subcla... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_handle_sink_event), (gst_base_rtp_depayload_push_full), (gst_base_rtp_depayload_change_state): Check sequence numbers, mark input buffers with a discont flag for the subclass when we detected a gap, drop duplicate buffers. We do this because one can use the element without a jitterbuffer in front and we don't want to feed the subclasses invalid or reordered data. Do an error when the subclass did not provide a process function instead of crashing. Some other small cleanups. 2008-05-22 22:35:40 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/videotestsrc.c: May just as well use the precalculated uvstride here. Original commit message from CVS: * gst/videotestsrc/videotestsrc.c: (paint_hline_NV12_NV21): May just as well use the precalculated uvstride here. 2008-05-22 22:09:16 +0000 Jan Schmidt <thaytan@mad.scientist.com> Add some documentation comments, and some new headers to be scanned. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcp.h: Add some documentation comments, and some new headers to be scanned. Rename some internal enum declarations (audioconvert's DitherType and NoiseShapingType, GstUnitType from the TCP elements) to match the documented GObject type names so that the docs pick them up. Name the playbin2 docs markups properly so they get picked up. They'll need renaming back when/if playbin2 becomes playbin. 100% symbol coverage for the plugin docs, booya. 2008-05-22 18:30:15 +0000 Thijs Vermeir <thijsvermeir@gmail.com> gst/videotestsrc/videotestsrc.c: Fix generation of NV12/NV21 frames. Fixes bug #532454. Original commit message from CVS: Patch by: Thijs Vermeir <thijsvermeir@gmail.com> * gst/videotestsrc/videotestsrc.c: (paint_hline_NV12_NV21): Fix generation of NV12/NV21 frames. Fixes bug #532454. 2008-05-22 11:59:33 +0000 Sjoerd Simons <sjoerd@luon.net> gst/playback/gstdecodebin.c: Lock the fakesink before setting the state to NULL and removing it from the bin so that ... Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon dot net> * gst/playback/gstdecodebin.c: (remove_fakesink): Lock the fakesink before setting the state to NULL and removing it from the bin so that a concurrent state change cannot interfere. Fixes #534331. 2008-05-21 17:09:42 +0000 Felipe Contreras <felipe.contreras@nokia.com> docs/Makefile.am: Fix installing plugin documentation when gtk-doc is disabled. Original commit message from CVS: * docs/Makefile.am: Fix installing plugin documentation when gtk-doc is disabled. 2008-05-21 17:01:16 +0000 Felipe Contreras <felipe.contreras@nokia.com> gst-libs/gst/rtsp/Makefile.am: Distribute, don't install md5.h Original commit message from CVS: * gst-libs/gst/rtsp/Makefile.am: Distribute, don't install md5.h 2008-05-21 16:47:58 +0000 Julien Moutte <julien@moutte.net> gst/tcp/gstmultifdsink.c: Use IPPROTO_IP instead of SOL_IP, works on more platforms. Original commit message from CVS: 2008-05-21 Julien Moutte <julien@fluendo.com> * gst/tcp/gstmultifdsink.c: (setup_dscp_client): Use IPPROTO_IP instead of SOL_IP, works on more platforms. * gst/typefind/gsttypefindfunctions.c: (aac_type_find): Fix printf arguments. 2008-05-21 16:44:15 +0000 Wim Taymans <wim.taymans@gmail.com> Some debug and comment fixes. Original commit message from CVS: * ext/vorbis/vorbisdec.c: * gst/videoscale/gstvideoscale.c: (gst_video_scale_transform): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_show_frame): Some debug and comment fixes. * tests/examples/dynamic/addstream.c: (main): Fix , to ; 2008-05-21 16:36:50 +0000 Wim Taymans <wim.taymans@gmail.com> Don't use bad gst_element_get_pad(). Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind): * gst/playback/decodetest.c: (new_decoded_pad_cb): * gst/playback/gstdecodebin.c: (gst_decode_bin_init), (try_to_link_1), (elem_is_dynamic), (close_link), (type_found), (cleanup_decodebin): * gst/playback/gstdecodebin2.c: (gst_decode_bin_init), (connect_element), (gst_decode_group_control_demuxer_pad): * gst/playback/gstplaybasebin.c: (queue_remove_probe), (queue_out_of_data), (gen_preroll_element), (preroll_unlinked), (mute_group_type): * gst/playback/gstplaybin.c: (gst_play_bin_vis_blocked), (gst_play_bin_set_property), (handoff), (gen_video_element), (gen_text_element), (gen_audio_element), (gen_vis_element), (remove_sinks), (add_sink), (setup_sinks): * gst/playback/gstplaybin2.c: (pad_added_cb), (no_more_pads_cb): * gst/playback/gstplaysink.c: (gst_play_sink_get_video_sink), (gst_play_sink_get_audio_sink), (gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin), (gst_play_sink_get_vis_plugin), (gst_play_sink_set_mute), (gen_video_chain), (gen_text_chain), (gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure), (gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc), (gst_play_sink_request_pad): * gst/playback/gsturidecodebin.c: (type_found), (setup_source): * gst/playback/test.c: (gen_video_element), (gen_audio_element), (cb_newpad): * gst/playback/test6.c: (new_decoded_pad_cb): * tests/check/elements/audioconvert.c: (GST_START_TEST): * tests/check/elements/audiorate.c: (test_injector_chain), (do_perfect_stream_test): * tests/check/elements/ffmpegcolorspace.c: (GST_START_TEST): * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/gnomevfssink.c: * tests/check/elements/textoverlay.c: (notgst_check_setup_src_pad2), (notgst_check_teardown_src_pad2): * tests/check/elements/videotestsrc.c: (GST_START_TEST): * tests/check/libs/cddabasesrc.c: (GST_START_TEST): * tests/check/pipelines/oggmux.c: (test_pipeline): * tests/check/pipelines/streamheader.c: (GST_START_TEST): * tests/check/pipelines/theoraenc.c: (GST_START_TEST): * tests/check/pipelines/vorbisenc.c: (GST_START_TEST): * tests/examples/seek/scrubby.c: (make_wav_pipeline): * tests/examples/seek/seek.c: (make_mod_pipeline), (make_dv_pipeline), (make_wav_pipeline), (make_flac_pipeline), (make_sid_pipeline), (make_parse_pipeline), (make_vorbis_pipeline), (make_theora_pipeline), (make_vorbis_theora_pipeline), (make_avi_msmpeg4v3_mp3_pipeline), (make_mp3_pipeline), (make_avi_pipeline), (make_mpeg_pipeline), (make_mpegnt_pipeline), (update_fill), (msg_buffering): Don't use bad gst_element_get_pad(). 2008-05-21 14:35:41 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/riff-media.c: Fix wrong method name in docs. Fix calculation of strf fields for broken mulaw/alaw. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: Fix wrong method name in docs. Fix calculation of strf fields for broken mulaw/alaw. * gst-libs/gst/riff/riff-read.c: Whitespace fix and removing double ';'. 2008-05-21 11:52:30 +0000 Wim Taymans <wim.taymans@gmail.com> docs/design/part-playbin2.txt: Add some leftover doc. Original commit message from CVS: * docs/design/part-playbin2.txt: Add some leftover doc. 2008-05-21 11:36:37 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstchannelmix.c: Fix copy & paste error in last commit. Original commit message from CVS: * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_others): Fix copy & paste error in last commit. 2008-05-21 11:30:58 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstchannelmix.c: Add support for mixing GST_AUDIO_CHANNEL_POSITION_SIDE_* from/to other channel posi... Original commit message from CVS: * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_others): Add support for mixing GST_AUDIO_CHANNEL_POSITION_SIDE_* from/to other channel positions when source has SIDE channels and dest doesn't or the other way around. 2008-05-21 11:29:25 +0000 Henrik Eriksson <henriken@axis.com> gst/tcp/gstmultifdsink.*: Add support for DSCP QOS. Fixes #469933. Original commit message from CVS: Patch by: Henrik Eriksson <henriken at axis dot com> * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_init), (setup_dscp_client), (setup_dscp), (gst_multi_fd_sink_add_full), (gst_multi_fd_sink_set_property), (gst_multi_fd_sink_get_property): * gst/tcp/gstmultifdsink.h: Add support for DSCP QOS. Fixes #469933. 2008-05-21 07:46:02 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/elements/audioconvert.c: Add another test that checks if conversion between standard 1 and 2 channel layo... Original commit message from CVS: * tests/check/elements/audioconvert.c: (GST_START_TEST): Add another test that checks if conversion between standard 1 and 2 channel layouts with and without positions set is working. 2008-05-21 07:39:56 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/multichannel.c: Allow non-standard 2 channel layouts. Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions): Allow non-standard 2 channel layouts. * tests/check/elements/audioconvert.c: (GST_START_TEST): Add some tests for converting and remapping non-standard 1 and 2 channel layouts. 2008-05-21 07:28:04 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstchannelmix.c: Prevent division by zero if the channel mix matrix contains only zeroes. Original commit message from CVS: * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_normalize): Prevent division by zero if the channel mix matrix contains only zeroes. 2008-05-21 06:45:22 +0000 Antoine Tremblay <hexa00@gmail.com> gst/gdp/gstgdppay.c: Close a buffer memory leak. Fixes bug #534071. Original commit message from CVS: Patch by: Antoine Tremblay <hexa00 at gmail dot com> * gst/gdp/gstgdppay.c: (gst_gdp_pay_chain): Close a buffer memory leak. Fixes bug #534071. 2008-05-21 06:39:20 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/rtsp/gstrtsptransport.h: Make the GstRTSPTransport struct members public as there are no setters/getters... Original commit message from CVS: * gst-libs/gst/rtsp/gstrtsptransport.h: Make the GstRTSPTransport struct members public as there are no setters/getters and it's supposed to be changed directly. Fixes bug #533087. 2008-05-21 05:48:05 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/adder/gstadder.c: Adder also doesn't support audio/x-raw-int with width!=depth so don't claim this on the pad tem... Original commit message from CVS: * gst/adder/gstadder.c: Adder also doesn't support audio/x-raw-int with width!=depth so don't claim this on the pad template caps. 2008-05-20 16:26:53 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: We can only use our optimal calibration if we prerolled before the latency exp... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_sync_latency): We can only use our optimal calibration if we prerolled before the latency expired. 2008-05-20 14:35:42 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Require core CVS for GstBaseSrc buffer caps setting magic. Original commit message from CVS: * configure.ac: Require core CVS for GstBaseSrc buffer caps setting magic. 2008-05-20 12:26:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstaudioconvert.c: Fix logic in last commit. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_fixate_channels): Fix logic in last commit. 2008-05-20 12:15:34 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstaudioconvert.c: Passthrough the channel positions if the number of output channels is the same as... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_fixate_channels): Passthrough the channel positions if the number of output channels is the same as the number of input channels, the input had a channel layout and downstream requests no special one. We did this already for > 2 channels but now it's also done for 1 channel. Fixes bug #533617. 2008-05-20 11:13:27 +0000 Wim Taymans <wim.taymans@gmail.com> ext/gnomevfs/gstgnomevfssrc.*: Set the ICY caps on the srcpad from where they get picked up by the base class now and... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_init), (gst_gnome_vfs_src_finalize), (gst_gnome_vfs_src_received_headers_callback), (gst_gnome_vfs_src_create), (gst_gnome_vfs_src_stop): * ext/gnomevfs/gstgnomevfssrc.h: Set the ICY caps on the srcpad from where they get picked up by the base class now and set on the outgoing buffers. * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_buffer_new): BaseSrc now sets the caps on outgoing buffers automatically. 2008-05-20 11:09:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Change the way in which the ringbuffer is started when dealing with a slaved c... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_resample_slaving), (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_sync_latency), (gst_base_audio_sink_render), (gst_base_audio_sink_async_play), (gst_base_audio_sink_change_state): Change the way in which the ringbuffer is started when dealing with a slaved clock and latency. We now sync to the clock until we reach upstream latency before starting the ringbuffer. This has the effect that we can accurately align the master and slave clocks and let the rate correction code take care of the initial drift or rounding errors instead of leaving them uncorrected with the old approach. 2008-05-20 08:12:19 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstaudioconvert.c: Correctly set the default channel positions when converting to 8 channels. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_fixate_channels): Correctly set the default channel positions when converting to 8 channels. 2008-05-19 16:13:25 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Error out if we don't have the required version of core. Original commit message from CVS: * configure.ac: Error out if we don't have the required version of core. 2008-05-19 15:59:40 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Use data scan helper in aac typefinder and stop scanning for headers when we've ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (aac_type_find): Use data scan helper in aac typefinder and stop scanning for headers when we've found a type. Also fix potential invalid memory access when calculating the frame length. 2008-05-19 14:09:08 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Don't modify scan context when we return FALSE in ensure_data, so it's possible ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (data_scan_ctx_ensure_data), (mpeg_sys_is_valid_pack): Don't modify scan context when we return FALSE in ensure_data, so it's possible to continue scanning, and we don't end up with a NULL data pointer and a positive size, which might bite us the next time we're called. Small constification. 2008-05-16 21:12:02 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/adder/gstadder.c: Adder doesn't support 24 bit samples so don't claim it supports them in the pad template caps. Original commit message from CVS: * gst/adder/gstadder.c: Adder doesn't support 24 bit samples so don't claim it supports them in the pad template caps. 2008-05-14 20:28:02 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Validate the RTP packet before further processing it. It's just too dangerous... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain): Validate the RTP packet before further processing it. It's just too dangerous to accept random packets and people are not forced to use a jitterbuffer or session manager to filter out the bad packets. * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_set_extension_data), (gst_rtp_buffer_get_payload_subbuffer): Small cleanups. When setting extension data in a buffer that is too small, we fail and we should not set the extension bit. Change GST_WARNINGS into g_warning because they really are programming errors. * tests/check/libs/rtp.c: (GST_START_TEST): Catch the g_warnings now in the unit tests and that fact that failing to set extension data left the extension bit untouched. 2008-05-14 13:57:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioresample/gstaudioresample.c: Revert previous change which made basetransform handle buffer_alloc and which b... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init): Revert previous change which made basetransform handle buffer_alloc and which breaks things badly in the non-passthrough case since it returned buffers with a different (ie. sometimes smaller) size than the size requested. 2008-05-14 13:43:12 +0000 Bernard B <b-gnome@largestprime.net> gst-libs/gst/rtp/gstrtpbuffer.c: Fix seqnum compare function for bordercase values and fix the docs again. Fixes #533... Original commit message from CVS: Patch by: Bernard B <b-gnome at largestprime dot net> * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_compare_seqnum): Fix seqnum compare function for bordercase values and fix the docs again. Fixes #533075. * tests/check/libs/rtp.c: (GST_START_TEST), (rtp_suite): Add a testcase for seqnum compare function. 2008-05-14 10:58:52 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/adder/gstadder.c: Correctly declare the supported endianness on the pad templates and check for correct endiannes... Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_setcaps), (gst_adder_class_init): Correctly declare the supported endianness on the pad templates and check for correct endianness in the set caps function. Adder only supports native endianness. Also use gst_element_class_set_details_simple(). 2008-05-14 09:12:10 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: Better debug logging in port value handling. Merging separate port value loops into one. Original commit message from CVS: * sys/xvimage/xvimagesink.c: Better debug logging in port value handling. Merging separate port value loops into one. 2008-05-13 16:02:19 +0000 Hannes Bistry <hannesb@gmx.de> gst/tcp/: Fix regression in clientsrc because we did not add the fd to the poll set anymore. Fixes #532364. Original commit message from CVS: Patch by: Hannes Bistry <hannesb at gmx dot de> * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_start): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_handle_server_read), (gst_tcp_server_sink_handle_wait), (gst_tcp_server_sink_init_send): Fix regression in clientsrc because we did not add the fd to the poll set anymore. Fixes #532364. Do some cleanups here and there. 2008-05-13 13:04:24 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/playback/: Use correct marshallers. GstCaps are a boxed type and no GObject subclass. Original commit message from CVS: * gst/playback/gstdecodebin.c: (gst_decode_bin_class_init): * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init): * gst/playback/gstplay-marshal.list: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init): Use correct marshallers. GstCaps are a boxed type and no GObject subclass. 2008-05-13 11:37:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> win32/common/libgstrtsp.def: Add gst_rtsp_connection_(set|clear)_auth_param() to the exported symbols. Original commit message from CVS: * win32/common/libgstrtsp.def: Add gst_rtsp_connection_(set|clear)_auth_param() to the exported symbols. 2008-05-13 10:59:49 +0000 Sjoerd Simons <sjoerd@luon.net> tests/check/elements/audioresample.c: Add unit test for the latest basetransform negotiation changes. Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon dot net> * tests/check/elements/audioresample.c: (live_switch_alloc_only_48000), (live_switch_get_sink_caps), (live_switch_push), (GST_START_TEST): Add unit test for the latest basetransform negotiation changes. See bug #526768. 2008-05-13 09:14:44 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/ffmpegcolorspace/imgconvert.c: Fix nv12<->nv21 conversion if stride is larger than width. Original commit message from CVS: * gst/ffmpegcolorspace/imgconvert.c: (nv12_to_nv21): Fix nv12<->nv21 conversion if stride is larger than width. 2008-05-13 07:28:21 +0000 j^ <j@oil21.org> ext/ogg/gstoggdemux.*: Parse presentation time from skeleton streams and use it as offset for the timestamps. Fixes b... Original commit message from CVS: Patch by: j^ <j at oil21 dot org> * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fishead), (gst_ogg_pad_parse_skeleton_fisbone): * ext/ogg/gstoggdemux.h: Parse presentation time from skeleton streams and use it as offset for the timestamps. Fixes bug #530068. 2008-05-12 08:45:11 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Revert previous patch that attempted to more accurately calculate the initial ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render), (gst_base_audio_sink_async_play): Revert previous patch that attempted to more accurately calculate the initial offset between master and slave clock. The best thing we can do in general is take the time of both clocks as the diff since we don't know when the actual preroll happened. 2008-05-11 19:52:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/install-plugins.c: Fix docs: type and missing word. Original commit message from CVS: * gst-libs/gst/pbutils/install-plugins.c: Fix docs: type and missing word. 2008-05-10 20:16:21 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Don't do lots of 4-byte peeks, but use the 'new' data scan helper for this inste... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (h264_video_type_find): Don't do lots of 4-byte peeks, but use the 'new' data scan helper for this instead; don't check if we've found enough markers after each and every step, it's enough to do that only if we've actually found a new marker. Embed a G_UNLIKELY into the IS_MPEG_HEADER macro. 2008-05-10 18:19:17 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Move scan helper thingy to the beginning of the file so we can use it in other t... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (DATA_SCAN_CTX_CHUNK_SIZE), (DataScanCtx), (data_scan_ctx_advance), (data_scan_ctx_ensure_data), (GST_MPEGVID_TYPEFIND_TRY_SYNC), (mpeg_video_stream_type_find): Move scan helper thingy to the beginning of the file so we can use it in other typefind functions. Rename it to something more generic. Also improve handling of things towards the end of the typefind data: peek as much as we can if we know the size of the data, rather than just min_size. 2008-05-09 21:42:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> Document the GstTuner and GstColorBalance interfaces, and some other random API functions that needed it. 70% symbol ... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/colorbalancechannel.c: * gst-libs/gst/interfaces/colorbalancechannel.h: * gst-libs/gst/interfaces/tuner.c: * gst-libs/gst/interfaces/tunerchannel.c: * gst-libs/gst/interfaces/tunerchannel.h: * gst-libs/gst/interfaces/tunernorm.c: * gst-libs/gst/interfaces/tunernorm.h: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: Document the GstTuner and GstColorBalance interfaces, and some other random API functions that needed it. 70% symbol coverage, woo. 2008-05-09 16:38:10 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Choose to allocate one less segment but require one additional segment as latency. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_acquire): Choose to allocate one less segment but require one additional segment as latency. * gst-libs/gst/audio/gstaudiosrc.c: (gst_audioringbuffer_acquire): No need to increment the number of segments in the source. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_time), (clock_convert_external), (gst_base_audio_sink_resample_slaving), (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_none_slaving), (gst_base_audio_sink_render), (gst_base_audio_sink_async_play): Remove adding latency when returning the internal time while subtracting it again when we use the value a little later. When calculating the end timestamp, we are making a rounding error with the current algorithm. Ensure that we don't accumulate these rounding errors when aligning samples by not resampling at all if we don't need to. Fixes #419351. Make the initial calibration of the clock slaving a little more predictable and accurate. Also handle the case where we don't do clock slaving. 2008-05-09 08:34:52 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/ffmpegcolorspace/: Add conversions from/to NV12 and NV21 and conversions between those two formats. Fixes bug #53... Original commit message from CVS: Based on a patch by: Björn Benderius <bjoern dot benderius at axis dot com> * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpegcsp_avpicture_fill): * gst/ffmpegcolorspace/imgconvert.c: (nv12_to_nv21): * gst/ffmpegcolorspace/imgconvert_template.h: Add conversions from/to NV12 and NV21 and conversions between those two formats. Fixes bug #532166. 2008-05-08 17:35:44 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Abort the h264 typefinding as soon as _peek() doesn't return anything, which hap... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (h264_video_type_find): Abort the h264 typefinding as soon as _peek() doesn't return anything, which happens for example with files smaller than 128kb. 2008-05-08 14:46:27 +0000 Wouter Cloetens <zombie@e2big.org> gst-libs/gst/rtsp/: Add Digest authorization support for RTSP connections. See #532065. Original commit message from CVS: Patch by: Wouter Cloetens <zombie at e2big dot org> * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_create), (md5_digest_to_hex_string), (auth_digest_compute_hex_urp), (auth_digest_compute_response), (add_auth_header), (gst_rtsp_connection_free), (gst_rtsp_connection_set_auth), (str_case_hash), (str_case_equal), (gst_rtsp_connection_set_auth_param), (gst_rtsp_connection_clear_auth_params): * gst-libs/gst/rtsp/gstrtspconnection.h: Add Digest authorization support for RTSP connections. See #532065. * gst-libs/gst/rtsp/md5.c: * gst-libs/gst/rtsp/md5.h: Yeap, another md5 implementation until we can depend on a glib that has support for it. 2008-05-08 06:20:42 +0000 Sjoerd Simons <sjoerd@luon.net> gst/audioresample/gstaudioresample.c: Let audioresample use the buffer allocation of basetransform instead of it's ow... Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon dot net> * gst/audioresample/gstaudioresample.c: (gst_audioresample_init): Let audioresample use the buffer allocation of basetransform instead of it's own stuff. * tests/check/elements/audioresample.c: (alloc_only_48000), (GST_START_TEST), (audioresample_suite): Add unit test for the recent basetransform bugfix, where upstream changes caps to something that can't be passed through anymore. 2008-05-07 19:50:27 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> win32/common/config.h.in: Don't define GST_FUNCTION, if GLib supports MSVC we'd much rather use the real thing than h... Original commit message from CVS: * win32/common/config.h.in: Don't define GST_FUNCTION, if GLib supports MSVC we'd much rather use the real thing than having "???" unconditionally. 2008-05-07 15:47:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Report the latency with the new seglatency parameter. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_query): Report the latency with the new seglatency parameter. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_debug_spec_buff), (gst_ring_buffer_parse_caps), (gst_ring_buffer_acquire): * gst-libs/gst/audio/gstringbuffer.h: Add new field to the ringbufferspec to specify the expected latency between the underlying device read/write pointer, this is needed when writing sinks that sit a little closer to the hardware. Add some more docs for other fields. 2008-05-07 10:38:23 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/: Add marshal.list, make it compile and add to cvsignore. Original commit message from CVS: * gst-libs/gst/app/.cvsignore: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp-marshal.list: Add marshal.list, make it compile and add to cvsignore. * gst-libs/gst/app/gstappsink.c: (gst_app_sink_dispose), (gst_app_sink_stop): Small cleanups. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop), (gst_app_src_create), (gst_app_src_set_caps), (gst_app_src_get_caps), (gst_app_src_set_size), (gst_app_src_get_size), (gst_app_src_set_seekable), (gst_app_src_get_seekable), (gst_app_src_set_max_buffers), (gst_app_src_get_max_buffers), (gst_app_src_push_buffer), (gst_app_src_end_of_stream): * gst-libs/gst/app/gstappsrc.h: Beat appsrc in shape, add signals and actions. Add some docs. Add properties for caps, size, seekability and max-buffers. Fix unlock/stop code. 2008-05-06 12:35:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/volume/gstvolume.c: Return NOT_NEGOTIATED if we didn't set a process function yet for some reason instead of cras... Original commit message from CVS: * gst/volume/gstvolume.c: (volume_transform_ip): Return NOT_NEGOTIATED if we didn't set a process function yet for some reason instead of crashing later. Might fix bug #509125. 2008-05-06 12:12:16 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk> gst/audioconvert/: Add support for more than 8 channels and NONE channel layouts. For more than 8 channels no channel... Original commit message from CVS: Based on a patch by: Tim-Philipp Müller <tim.muller at collabora co uk> * gst/audioconvert/audioconvert.c: (audio_convert_prepare_context): * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_parse_caps), (structure_has_fixed_channel_positions), (gst_audio_convert_transform_caps): * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_matrix): Add support for more than 8 channels and NONE channel layouts. For more than 8 channels no channel conversion is supported yet, only format conversions are supported. Fixes bug #398033. * tests/check/elements/audioconvert.c: (verify_convert), (GST_START_TEST), (audioconvert_suite): Add some unit tests by Tim for checking the NONE channel layouts and more than 8 channels and add some more unit tests for channel conversions. 2008-05-06 10:16:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: When autoplugging fails, set the element back to NULL before unreffing it. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (connect_pad): When autoplugging fails, set the element back to NULL before unreffing it. 2008-05-06 09:59:43 +0000 Sebastian Dröge <slomo@circular-chaos.org> win32/common/libgstaudio.def: Add gst_base_audio_src_[sg]et_slave_method() to the exported symbols. Original commit message from CVS: * win32/common/libgstaudio.def: Add gst_base_audio_src_[sg]et_slave_method() to the exported symbols. 2008-05-05 12:33:05 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/subparse/samiparse.c: Remove trailing, leading and double whitespaces. Original commit message from CVS: * gst/subparse/samiparse.c: (handle_start_sync), (end_sami_element), (characters_sami): Remove trailing, leading and double whitespaces. Correctly timestamp buffers and output the last buffer too. * tests/check/elements/subparse.c: (GST_START_TEST), (subparse_suite): Add a simple unit test for SAMI parsing. 2008-05-05 11:14:48 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/samiparse.c: Only output characters inside the "sync" elements. There could be other elements like "styl... Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian dot net> * gst/subparse/samiparse.c: (handle_start_sync), (start_sami_element), (end_sami_element), (characters_sami), (sami_context_reset): Only output characters inside the "sync" elements. There could be other elements like "style" that have some content but should not be printed. Fixes bug #467911. 2008-05-05 10:27:45 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.*: Start some docs. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_set_property), (gst_app_sink_get_property), (gst_app_sink_unlock_start), (gst_app_sink_unlock_stop), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_set_caps), (gst_app_sink_set_drop), (gst_app_sink_get_drop): * gst-libs/gst/app/gstappsink.h: Start some docs. Add property to drop buffers when the queue is filled Fix unlocking and flushing when the queues are filled. 2008-05-05 10:03:51 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/playback/: Allow setting -1 as current-audio to mute the current audio stream, similar to what is done for subtit... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (set_audio_mute), (set_active_source): * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: (gst_play_bin_class_init), (playbin_set_audio_mute): Allow setting -1 as current-audio to mute the current audio stream, similar to what is done for subtitles. Fixes bug #342294. 2008-05-05 07:41:03 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/pbutils/descriptions.c: It's SorensOn and not SorensEn. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (formats): It's SorensOn and not SorensEn. 2008-05-04 15:23:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/descriptions.c: Fix description of video/x-flash-video. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (formats): Fix description of video/x-flash-video. 2008-05-04 15:02:20 +0000 Sebastian Dröge <slomo@circular-chaos.org> Remove some unused code. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func): * gst-libs/gst/audio/gstaudiosrc.c: (audioringbuffer_thread_func): * gst/tcp/gsttcp.c: (gst_tcp_socket_write): * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_get_fps_list): Remove some unused code. * gst/audioconvert/gstaudioquantize.c: (gst_audio_quantize_free_noise_shaping): Don't return before freeing the noise shaping history. 2008-05-03 16:00:04 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/subparse.c: Add unit test for the tmplayer variant from bug #530962. Original commit message from CVS: * tests/check/elements/subparse.c: (do_test), (test_tmplayer_style3b), (subparse_suite): Add unit test for the tmplayer variant from bug #530962. 2008-05-03 15:45:23 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/: Fix parsing of tmplayer subtitle variant where every single line contains text and there isn't an empt... Original commit message from CVS: * gst/subparse/gstsubparse.c: (handle_buffer), (gst_sub_parse_sink_event): * gst/subparse/tmplayerparse.c: (tmplayer_process_buffer), (tmplayer_parse_line): Fix parsing of tmplayer subtitle variant where every single line contains text and there isn't an empty line after each line to determine the duration (#530962). Improve EOS handling for tmplayer subtitles a bit by making sure that we push out the last line of text without a duration if there's still text left in the buffer at the end. 2008-05-03 15:39:04 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Fix detection of discontinuities based on the buffer offset (doesn't work so well if no b... Original commit message from CVS: * gst/subparse/gstsubparse.c: (feed_textbuf): Fix detection of discontinuities based on the buffer offset (doesn't work so well if no buffer offset is set) and also check for the DISCONT buffer flag. This keeps the parser state from being reset after each buffer in the unit test. 2008-05-03 12:09:16 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Further fine-tuning: don't absolutely require sequence or GOP headers but adjust... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg_video_stream_type_find): Further fine-tuning: don't absolutely require sequence or GOP headers (as introduced in the previous commit), but adjust the typefind probabilities returned accordingly if we don't see them. Also make sure picture header and first slice are somewhat close to each other (which is not perfect but still better than requiring a fixed offset or having no limit at all). 2008-05-02 12:13:08 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Rename the setcaps/getcaps function internally to make it clear that they are c... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_init), (gst_basertppayload_sink_setcaps), (gst_basertppayload_sink_getcaps): Rename the setcaps/getcaps function internally to make it clear that they are called for the sink pad. 2008-05-02 12:11:07 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.*: Catch packet-lost events from the jitterbuffer and convert them into a vmetho... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_class_init), (gst_base_rtp_depayload_handle_sink_event), (create_segment_event), (gst_base_rtp_depayload_packet_lost), (gst_base_rtp_depayload_set_gst_timestamp): * gst-libs/gst/rtp/gstbasertpdepayload.h: Catch packet-lost events from the jitterbuffer and convert them into a vmethod call (lost-packet) so that depayloaders can do something smart. Also add a default packet-lost function that sends out a segment update to the decoders. 2008-05-02 11:13:05 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/: Also include config.h when relying on defines from it. Fixes the build. Its been a please to serve :) Original commit message from CVS: * gst/playback/test4.c: * gst/playback/test5.c: * gst/playback/test6.c: * gst/playback/test7.c: Also include config.h when relying on defines from it. Fixes the build. Its been a please to serve :) 2008-05-02 10:54:51 +0000 Thijs Vermeir <thijsvermeir@gmail.com> * ChangeLog: * gst/videotestsrc/videotestsrc.c: Add support for NV12 and NV21 in videotestsrc Original commit message from CVS: * gst/videotestsrc/videotestsrc.c (paint_setup_NV12), (paint_setup_NV21), (paint_hline_NV12_NV21): Add support for NV12 and NV21 in videotestsrc 2008-05-02 10:02:05 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/videoscale/: Support 1x1 images as input and output as for example the BBC HQ new streams have 1x1 GIFs in the pl... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: * gst/videoscale/vs_4tap.c: (vs_image_scale_4tap_Y): * gst/videoscale/vs_image.c: (vs_image_scale_nearest_RGBA), (vs_image_scale_linear_RGBA), (vs_image_scale_nearest_RGB), (vs_image_scale_linear_RGB), (vs_image_scale_nearest_YUYV), (vs_image_scale_linear_YUYV), (vs_image_scale_nearest_UYVY), (vs_image_scale_linear_UYVY), (vs_image_scale_nearest_Y), (vs_image_scale_linear_Y), (vs_image_scale_nearest_RGB565), (vs_image_scale_linear_RGB565), (vs_image_scale_nearest_RGB555), (vs_image_scale_linear_RGB555): Support 1x1 images as input and output as for example the BBC HQ new streams have 1x1 GIFs in the playlists for some reason. 2008-05-01 19:11:42 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: If we can't activate one of the decoders we plugged in (such as, say, musepackdec) for s... Original commit message from CVS: * gst/playback/gstdecodebin.c: (free_pad_probe_for_element), (try_to_link_1): If we can't activate one of the decoders we plugged in (such as, say, musepackdec) for some reason (it might not support push mode, for example), remove any pad probes that close_pad_link() might have set up. This makes sure we later don't try to remove a probe for a pad that doesn't exist any longer, and avoids nast warnings and probably other things too. 2008-04-30 20:54:56 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Rework mpeg video stream typefinding a bit more: make sure sequence, Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg_video_stream_ctx_ensure_data), (mpeg_video_stream_type_find), (plugin_init): Rework mpeg video stream typefinding a bit more: make sure sequence, GOP, picture and slice headers appear in the order they should and that we've in fact at least had one of each; fix picture header detection; decouple picture and slice header check - don't assume they're at a fixed offset, there may be extra data in between. Also, announce varying degrees of probability depending on what we found exactly (multiple pictures, at least one picture, just sequence and GOP headers). Finally, in _ensure_data(), take into account that we might be typefinding smaller amounts of data, such as the first buffer of a stream, so fall back to the minimum size needed as long as that's available, instead of erroring out if there's less than 2kB of data. Fixes #526173. Conveniently also doesn't recognise the fuzzed file from #399342 as valid. 2008-04-30 17:06:45 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: Cool kids don't divide by zero. Original commit message from CVS: * ext/theora/theoradec.c: Cool kids don't divide by zero. Treat PAR of x:0 as 1:1. Fixes #530719. 2008-04-30 14:37:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Refactor a bit: use context structure to track parsing offset and size of availa... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (MpegVideoStreamCtx), (mpeg_video_stream_ctx_advance), (mpeg_video_stream_ctx_ensure_data), (mpeg_video_stream_type_find): Refactor a bit: use context structure to track parsing offset and size of available data and make the code a bit clearer. Fixes bad memory access in #356937. 2008-04-28 22:18:49 +0000 Michael Smith <msmith@xiph.org> gst/: Include stdlib.h and unistd.h only if the appropriate HAVE_*_H macro is defined. Original commit message from CVS: * gst/playback/test4.c: * gst/playback/test5.c: * gst/playback/test6.c: * gst/tcp/gstmultifdsink.c: Include stdlib.h and unistd.h only if the appropriate HAVE_*_H macro is defined. 2008-04-28 08:51:38 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.h: Clarify some docs. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.h: Clarify some docs. * gst-libs/gst/audio/gstbaseaudiosrc.c: (slave_method_get_type), (gst_base_audio_src_class_init), (gst_base_audio_src_init), (gst_base_audio_src_set_slave_method), (gst_base_audio_src_get_slave_method), (gst_base_audio_src_set_property), (gst_base_audio_src_get_property), (gst_base_audio_src_create): * gst-libs/gst/audio/gstbaseaudiosrc.h: Add property and methods for selecting the clock slave method in the source, like in the sink. We only implement "none" and "re-timestamp" for now. API: gst_base_audio_src_set_slave_method() API: gst_base_audio_src_get_slave_method() 2008-04-25 18:18:47 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.*: Add more docs. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_set_property), (gst_app_sink_get_property), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_set_emit_signals), (gst_app_sink_get_emit_signals), (gst_app_sink_set_max_buffers), (gst_app_sink_get_max_buffers), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Add more docs. Add signals for when preroll and render buffers are available. Add property to control signal emission. Add property to control the max queue size. 2008-04-25 07:37:09 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtpbuffer.c: Fix the docs about the seqnum compare function, it returns a difference. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: Fix the docs about the seqnum compare function, it returns a difference. 2008-04-24 09:27:35 +0000 Edward Hervey <bilboed@bilboed.com> ext/alsa/gstalsadeviceprobe.c: Don't return before freeing up the allocated structures. Original commit message from CVS: * ext/alsa/gstalsadeviceprobe.c: (gst_alsa_get_device_list): Don't return before freeing up the allocated structures. 2008-04-24 08:19:35 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gstplaybin.c: Remove obsolete streaminfo code and fix a leak. Fixes #529546 Original commit message from CVS: * gst/playback/gstplaybin.c: Remove obsolete streaminfo code and fix a leak. Fixes #529546 2008-04-23 13:50:34 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/ogg/gstoggdemux.c: Revert the event part, that should not go in. Original commit message from CVS: * ext/ogg/gstoggdemux.c: Revert the event part, that should not go in. 2008-04-23 13:45:29 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/ogg/gstoggdemux.c: Don't leak GstPluginFeatures when filtering. Original commit message from CVS: * ext/ogg/gstoggdemux.c: Don't leak GstPluginFeatures when filtering. 2008-04-23 08:58:42 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: Add some logging for cases when grabbing the xv failed. Original commit message from CVS: * sys/xvimage/xvimagesink.c: Add some logging for cases when grabbing the xv failed. 2008-04-22 06:18:04 +0000 David Schleef <ds@schleef.org> ext/ogg/gstoggmux.c: Update Ogg/Dirac muxing. Removes the weird "KW-DIRAC" bos packet. Should conform to what we cu... Original commit message from CVS: * ext/ogg/gstoggmux.c: Update Ogg/Dirac muxing. Removes the weird "KW-DIRAC" bos packet. Should conform to what we currently think is the final Ogg/Dirac muxing spec. 2008-04-22 06:13:43 +0000 David Schleef <ds@schleef.org> sys/xvimage/xvimagesink.c: Fix typo that causes the overlay keying color to bright green on a 16-bit display. Dark g... Original commit message from CVS: * sys/xvimage/xvimagesink.c: Fix typo that causes the overlay keying color to bright green on a 16-bit display. Dark grey good. Bright green bad. 2008-04-21 13:47:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/gnomevfs/gstgnomevfsuri.c: Add FIXME comment about using uri-list for source and sink. Original commit message from CVS: * ext/gnomevfs/gstgnomevfsuri.c: Add FIXME comment about using uri-list for source and sink. 2008-04-20 11:42:37 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/ogg/gstogmparse.c: GST_TYPE_FRACTION contains gints so correctly cast gint64 arguments to vaargs functions to gin... Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header): GST_TYPE_FRACTION contains gints so correctly cast gint64 arguments to vaargs functions to gint. Otherwise the fractions will get 0 set instead of the correct value on big endian systems. Fixes bug #529018. 2008-04-20 10:17:23 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gnomevfs/: Get the list of supported URI schemes in a threadsafe way and use the same list for the source and sink. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_uri_get_protocols): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_uri_get_protocols): * ext/gnomevfs/gstgnomevfsuri.c: (_internal_get_supported_uris), (gst_gnomevfs_get_supported_uris): Get the list of supported URI schemes in a threadsafe way and use the same list for the source and sink. 2008-04-20 10:11:54 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Don't generate a new supported protocols list on each call but cache it. It's supposed to be static... Original commit message from CVS: * ext/gio/gstgio.c: (_internal_get_supported_protocols), (gst_gio_get_supported_protocols): Don't generate a new supported protocols list on each call but cache it. It's supposed to be static anyway, this way we only leak it once per process. * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_class_init), (gst_gio_sink_finalize), (gst_gio_sink_set_property), (gst_gio_sink_get_property), (gst_gio_sink_start): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_class_init), (gst_gio_src_finalize), (gst_gio_src_set_property), (gst_gio_src_get_property), (gst_gio_src_start): * ext/gio/gstgiosrc.h: API: Add "file" properties where one can set a GFile as source/destination. Add locking to the properties and use gst_element_class_set_details_simple() instead of a static GstElementDetails struct. 2008-04-19 20:06:59 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add "mpp" and "mp+" as possible extensions for MusePack files. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (musepack_type_find), (plugin_init): Add "mpp" and "mp+" as possible extensions for MusePack files. Add typefinding for MusePack StreamVersion 8 files and include the stream version in the caps. 2008-04-19 16:33:24 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/rtp/gstrtppayloads.c: Use g_ascii_strcasecmp() instead of the deprecated g_strcasecmp(). Original commit message from CVS: * gst-libs/gst/rtp/gstrtppayloads.c: (gst_rtp_payload_info_for_name): Use g_ascii_strcasecmp() instead of the deprecated g_strcasecmp(). 2008-04-18 17:10:43 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Bump Gtk+ requirement to 2.12.0 for gtk_range_set_fill_level (NB: this only affects compilation of some... Original commit message from CVS: * configure.ac: Bump Gtk+ requirement to 2.12.0 for gtk_range_set_fill_level (NB: this only affects compilation of some of the examples). Remove some configure.ac cruft that's not needed any longer. 2008-04-18 14:54:01 +0000 Edward Hervey <bilboed@bilboed.com> gst/gdp/gstgdpdepay.c: Don't validate the payload if there isn't any. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Don't validate the payload if there isn't any. Fixes #525915 2008-04-17 07:33:46 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/gstringbuffer.c: Use g_atomic_int_set() instead of gst_atomic_int_set(). Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_may_start): Use g_atomic_int_set() instead of gst_atomic_int_set(). 2008-04-17 07:29:28 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Return NULL instead of a gchar * array with one NULL element if we don't get any supported URI sche... Original commit message from CVS: * ext/gio/gstgio.c: (gst_gio_get_supported_protocols): Return NULL instead of a gchar * array with one NULL element if we don't get any supported URI schemes from GIO. 2008-04-15 19:06:00 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audiotestsrc/gstaudiotestsrc.c: Remove cpp style commented old code. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: Remove cpp style commented old code. 2008-04-15 19:02:10 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gstdecodebin2.c: Fix signal docs. Original commit message from CVS: * gst/playback/gstdecodebin2.c: Fix signal docs. 2008-04-14 17:58:19 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Fix textoverlay unit test again by making the supposed default value for the wait-text pr... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init), (gst_text_overlay_init): Fix textoverlay unit test again by making the supposed default value for the wait-text property the actual default value. Also fix Since: tag for new property. 2008-04-11 17:13:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/video/video.c: Add guards to these functions to ensure sane input values. Original commit message from CVS: * gst-libs/gst/video/video.c: (gst_video_format_new_caps), (gst_video_format_to_fourcc), (gst_video_format_get_row_stride), (gst_video_format_get_pixel_stride), (gst_video_format_get_component_width), (gst_video_format_get_component_height), (gst_video_format_get_component_offset), (gst_video_format_get_size), (gst_video_format_convert): Add guards to these functions to ensure sane input values. * tests/check/libs/video.c: Fix unit test not to create caps with width=0 and height=0. 2008-04-11 01:25:01 +0000 Wim Taymans <wim.taymans@gmail.com> docs/design/draft-keyframe-force.txt: Fix typo. Original commit message from CVS: * docs/design/draft-keyframe-force.txt: Fix typo. * gst/playback/gstqueue2.c: (update_buffering), (gst_queue_handle_src_query): Set buffering mode in the messages. Set buffering percent in the query. * tests/examples/seek/seek.c: (update_fill), (msg_state_changed), (do_stream_buffering), (do_download_buffering), (msg_buffering): Do some more fancy things based on the buffering method in use. 2008-04-09 21:42:24 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add basic download reports to seek using the new buffering API. Original commit message from CVS: * tests/examples/seek/seek.c: (update_fill), (set_update_fill), (play_cb), (pause_cb), (stop_cb), (msg_state_changed), (msg_buffering), (main): Add basic download reports to seek using the new buffering API. 2008-04-09 21:40:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Include extra buffering stats in the buffering message. Original commit message from CVS: * gst/playback/gstqueue2.c: (update_buffering), (gst_queue_close_temp_location_file), (gst_queue_handle_src_query), (gst_queue_src_checkgetrange_function): Include extra buffering stats in the buffering message. Implement BUFFERING query. * gst/playback/gsturidecodebin.c: (do_async_start), (do_async_done), (type_found), (setup_streaming), (setup_source), (gst_uri_decode_bin_change_state): Only add decodebin2 when the type is found in streaming mode. Make uridecodebin async to PAUSED even when we don't have decodebin2 added yet. 2008-04-09 08:38:19 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Filter cdda from the supported URI schemes. We can't support musicbrainz tags and everything else o... Original commit message from CVS: * ext/gio/gstgio.c: (gst_gio_get_supported_protocols): Filter cdda from the supported URI schemes. We can't support musicbrainz tags and everything else one expects from a cdda source with GIO. Fixes bug #526794. 2008-04-07 22:37:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> * sys/xvimage/xvimagesink.c: Fix calculation of 'expected size' for YV12 buffers. Original commit message from CVS: 2008-04-07 Jan Schmidt <jan.schmidt@sun.com> * sys/xvimage/xvimagesink.c (gst_xvimagesink_xvimage_new), (gst_xvimagesink_buffer_alloc): Fix calculation of 'expected size' for YV12 buffers. Be a little more verbose in the debug output for buffer-alloc'ed buffers which turn out to have the wrong size. 2008-04-07 22:26:50 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: Fix calculation of 'expected size' for YV12 buffers. Original commit message from CVS: * sys/xvimage/xvimagesink.c (gst_xvimagesink_xvimage_new), (gst_xvimagesink_buffer_alloc): Fix calculation of 'expected size' for YV12 buffers. Be a little more verbose in the debug output for buffer-alloc'ed buffers which turn out to have the wrong size. 2008-04-07 10:50:11 +0000 Tim-Philipp Müller <tim@centricular.net> Merge other changes from 0.10.19 release branch. Original commit message from CVS: * NEWS: * RELEASE: * gst-plugins-base.doap: Merge other changes from 0.10.19 release branch. 2008-04-06 20:16:27 +0000 Tim-Philipp Müller <tim@centricular.net> gst/: Work around missing bits of thread-safety on older GLibs some more to avoid assertions when starting up multipl... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): * gst/playback/gstplayback.c: (plugin_init): * gst/volume/gstvolume.c: (plugin_init): Work around missing bits of thread-safety on older GLibs some more to avoid assertions when starting up multiple playbin objects concurrently (see #512382). 2008-04-06 17:19:39 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/missing-plugins.c: Remove some more fields. Original commit message from CVS: * gst-libs/gst/pbutils/missing-plugins.c: (copy_and_clean_caps): Remove some more fields. 2008-04-06 08:56:07 +0000 Damien Lespiau <damien.lespiau@gmail.com> configure.ac: Actually build dlls when cross-compiling with mingw32. Original commit message from CVS: Patch by: Damien Lespiau <damien dot lespiau at gmail dot com> * configure.ac: Actually build dlls when cross-compiling with mingw32. Fixes bug #526247. 2008-04-03 23:01:11 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Bump version to 0.10.19.1 after the unplanned 0.10.19 release. Original commit message from CVS: * configure.ac: Bump version to 0.10.19.1 after the unplanned 0.10.19 release. 2008-04-03 16:10:53 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add statusbar. Original commit message from CVS: * tests/examples/seek/seek.c: (play_cb), (pause_cb), (stop_cb), (msg_buffering), (connect_bus_signals), (main): Add statusbar. Add buffering support with feedback in the statusbar. 2008-04-03 15:58:37 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstoggmux.c: Fix sample pipeline description. Original commit message from CVS: * ext/ogg/gstoggmux.c: Fix sample pipeline description. 2008-04-03 14:58:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/plugins/: Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update introspection data. * ext/ogg/gstoggmux.c: Document oggmux. * gst/playback/gstdecodebin2.c: Don't use gtk-doc style comment start for private stuff, but make it formatted like this for consistency. 2008-04-03 12:16:04 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Remove fakesink hack, we can now implement this more elegantly. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init), (gst_decode_bin_init), (gst_decode_bin_dispose), (gst_decode_bin_set_sink_caps), (gst_decode_bin_get_sink_caps), (gst_decode_bin_set_property), (gst_decode_bin_get_property), (analyze_new_pad), (connect_pad), (expose_pad), (gst_decode_group_new), (gst_decode_group_control_demuxer_pad), (gst_decode_group_expose), (gst_decode_group_free), (do_async_start), (do_async_done), (gst_decode_bin_change_state): Remove fakesink hack, we can now implement this more elegantly. Added property to bypass typefinding. Removed underrun callback and demuxer pad probe, we now use the srcpad probe to expose groups. API::sink-caps property * gst/playback/gstplaybin2.c: (no_more_pads_cb): Guard against multiple emissions of the no_more_pads signal, which happens when we are dealing with chained oggs. * gst/playback/gsturidecodebin.c: (remove_decoders), (make_decoder), (type_found), (setup_streaming), (source_new_pad), (setup_source): For streams, use our own typefind element and plug our queue after it. We will need this to determine the type of buffering to use for the queue soon. 2008-04-03 10:37:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Guard against over and underflows because of clock slaving. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_render): Guard against over and underflows because of clock slaving. When we are using our own clock, still compensate for any calibrations that we might have done to our clock. 2008-04-03 10:22:33 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Don't try to do anything fancy with the return code from pushing an event, it does not have e... Original commit message from CVS: * ext/theora/theoradec.c: (theora_handle_type_packet), (theora_dec_chain): Don't try to do anything fancy with the return code from pushing an event, it does not have enough information to turn it into a GST_FLOW_ERROR. 2008-04-03 10:19:43 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Add small debug line. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_reset), (gst_ogg_demux_chain_elem_pad): Add small debug line. Pass return code from the internal decoder instead of the too generic GST_FLOW_ERROR. 2008-04-03 06:39:27 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/cdda/: Use GLib's base64 implementation instead of our own. Original commit message from CVS: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/cdda/base64.c: * gst-libs/gst/cdda/base64.h: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cddabasesrc_calculate_musicbrainz_discid): Use GLib's base64 implementation instead of our own. 2008-04-02 15:41:50 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Refix oggdemux, we only have a problem if we failed to find a chain and we are not EOF. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain), (gst_ogg_demux_read_chain): Refix oggdemux, we only have a problem if we failed to find a chain and we are not EOF. 2008-04-02 15:07:01 +0000 Victor STINNER <victor.stinner@haypocalc.com> ext/ogg/gstoggdemux.c: When we fail to find a BOS page and we and up with no chain, error out properly instead of seg... Original commit message from CVS: Patch by: Victor STINNER <victor dot stinner at haypocalc dot com> * ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain), (gst_ogg_demux_read_chain): When we fail to find a BOS page and we and up with no chain, error out properly instead of segfaulting. Fixes #525665. 2008-04-02 14:58:05 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: The new-pad-group sequence is add-pads, no-more-pads, add-pads, no-more-pads... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain), (gst_ogg_demux_read_chain), (gst_ogg_demux_handle_page): The new-pad-group sequence is add-pads, no-more-pads, add-pads, no-more-pads... 2008-04-02 11:08:05 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Update the estimated input data when we push out a buffer. Original commit message from CVS: * gst/playback/gstqueue2.c: (update_out_rates), (gst_queue_open_temp_location_file), (gst_queue_close_temp_location_file), (gst_queue_handle_src_event), (gst_queue_handle_src_query), (gst_queue_set_property): Update the estimated input data when we push out a buffer. Add some debug info about the temp file. Only forward src events when we are not using a temp file. Don't block the duration query, we need to find something better. Don't leak the temp filename. 2008-04-01 14:01:14 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: Require GLib 2.12 and liboil 0.3.14. Original commit message from CVS: * configure.ac: Require GLib 2.12 and liboil 0.3.14. * gst/volume/gstvolume.c: (volume_process_double): Unconditionally use liboil 0.3.14 function. 2008-03-31 16:08:45 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-media.c: ms-gsm can have arbitrarty sample rates. See #481354. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): ms-gsm can have arbitrarty sample rates. See #481354. 2008-03-28 16:22:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-media.c: MP4S is generic MPEG-4, not a microsoft variant. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): MP4S is generic MPEG-4, not a microsoft variant. 2008-03-27 15:26:38 +0000 Michael Smith <msmith@xiph.org> gst/gdp/gstgdpdepay.c: Check the body CRC (if set) when depayloading. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Check the body CRC (if set) when depayloading. Fixes #522401. 2008-03-24 17:45:36 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Fix Since: version for new property. Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init): Fix Since: version for new property. 2008-03-24 16:40:08 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspconnection.c: Don't error when poll_wait returns EAGAIN. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_connect), (gst_rtsp_connection_write), (gst_rtsp_connection_read_internal), (gst_rtsp_connection_poll): Don't error when poll_wait returns EAGAIN. 2008-03-24 14:08:22 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: The queue is never filled when there are no buffers in the queue at all. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_is_filled): The queue is never filled when there are no buffers in the queue at all. Fixes #523993. 2008-03-24 12:26:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Update some docs. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (init_group), (free_group), (gst_play_bin_init), (gst_play_bin_finalize), (gst_play_bin_set_uri), (gst_play_bin_set_suburi), (gst_play_bin_get_video_tags), (gst_play_bin_get_audio_tags), (gst_play_bin_get_text_tags), (gst_play_bin_set_current_video_stream), (gst_play_bin_set_current_audio_stream), (gst_play_bin_set_current_text_stream), (gst_play_bin_set_encoding), (gst_play_bin_set_property), (gst_play_bin_get_property), (pad_added_cb), (pad_removed_cb), (no_more_pads_cb), (perform_eos), (autoplug_select_cb), (activate_group), (deactivate_group), (setup_next_source), (save_current_group), (gst_play_bin_change_state): Update some docs. Add new locks and conds to protect pipeline creation and group switching. Implement the sub-uri property. Keep track of pending uridecodebin creation and configure the output pipeline after all streams are configured. Propagate subtitle encoding to the uridecodebins. Implement getting the video/audio/visualisation elements. Use input-selector for stream switching. If we are asked to do visualisation, prefer to autoplug raw sinks instead of sinks that accept encoded data. 2008-03-24 12:15:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.*: Add methods to get audio/video/vis elements. Original commit message from CVS: * gst/playback/gstplaysink.c: (gst_play_sink_class_init), (gst_play_sink_init), (gst_play_sink_dispose), (gst_play_sink_set_video_sink), (gst_play_sink_get_video_sink), (gst_play_sink_set_audio_sink), (gst_play_sink_get_audio_sink), (gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin), (gst_play_sink_get_vis_plugin), (gst_play_sink_set_volume), (gst_play_sink_get_volume), (gst_play_sink_set_mute), (gen_video_chain), (gen_text_chain), (gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure), (gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc), (gst_play_sink_send_event_to_sink), (gst_play_sink_change_state): * gst/playback/gstplaysink.h: Add methods to get audio/video/vis elements. Add methods to set the font description for the overlay. Remove properties, we're using this element with its methods only. Add support for subtitles. Rearrange the locking a bit to not use the object lock for protecting the pipeline construction. Try to use the volume and mute property on the sink when its available. Implement the mute option with volume when the sink does not have a mute property. Only add volume element when the sink has no volume property. Only do visualisations with raw audio pads. 2008-03-24 12:03:02 +0000 Wim Taymans <wim.taymans@gmail.com> ext/pango/gsttextoverlay.*: Add property to configure waiting for text on the textpad or not, with the default behavi... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init), (gst_text_overlay_init), (gst_text_overlay_set_property), (gst_text_overlay_get_property), (gst_text_overlay_src_event), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): * ext/pango/gsttextoverlay.h: Add property to configure waiting for text on the textpad or not, with the default behaviour being the old one (always wait for text before rendering the video). This default behaviour is usually not the best one because the text stream can very sparse and could require queueing a lot of video. Fix the flushing and EOS handing so that we don't mix up their meaning. 2008-03-24 11:54:02 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gsturidecodebin.c: Add a readonly source property and notify. Original commit message from CVS: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_autoplug_factories), (gst_uri_decode_bin_class_init), (gst_uri_decode_bin_init), (gst_uri_decode_bin_finalize), (gst_uri_decode_bin_set_encoding), (gst_uri_decode_bin_set_property), (gst_uri_decode_bin_get_property), (no_more_pads_full), (new_decoded_pad_cb), (gen_source_element), (remove_decoders), (proxy_autoplug_factories_signal), (make_decoder), (source_new_pad), (setup_source): Add a readonly source property and notify. Add new lock for protecting the construction of the pipeline. Keep track of the decodebins we plugged. Correctly proxy the autoplug signal so that it actually continues. Proxy subtitle-encoding to the decodebins. 2008-03-24 11:46:15 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Rearrange some buttons in playbin2 and make some other boxes insensitive when needed. Original commit message from CVS: * tests/examples/seek/seek.c: (audio_toggle_cb), (video_toggle_cb), (text_toggle_cb), (update_streams), (main): Rearrange some buttons in playbin2 and make some other boxes insensitive when needed. Add language codes to subtitle selection boxes when we gind the right tags for the streams. 2008-03-24 11:36:08 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Protect caps property with the object lock. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_dispose), (gst_decode_bin_set_caps), (gst_decode_bin_get_caps), (gst_decode_bin_set_subs_encoding), (gst_decode_bin_get_subs_encoding), (gst_decode_bin_autoplug_factories), (connect_pad), (are_raw_caps), (deactivate_free_recursive): Protect caps property with the object lock. Protect encoding property with the object lock. Keep list of elements we added that have the subtitle-encoding property. Distribute the subtitle-encoding to all of the elements when it changes. 2008-03-24 11:24:22 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Small debug improvement. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_release): Small debug improvement. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): Fix bug in determining the sample start/stop position, we want to base this decision on the fact that we are going forwards or backwards, not slower or faster. This fixes some ugly resync warnings when playing at very slow speeds. 2008-03-23 13:41:28 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Correctly set the supported URI schemes and don't leave some schemes in the middle or at the start ... Original commit message from CVS: * ext/gio/gstgio.c: (gst_gio_get_supported_protocols): Correctly set the supported URI schemes and don't leave some schemes in the middle or at the start at NULL. 2008-03-23 13:12:41 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/gdpdepay.c: Make test compile without unused function/variable warnings on PPC. Original commit message from CVS: * tests/check/elements/gdpdepay.c: Make test compile without unused function/variable warnings on PPC. 2008-03-22 15:00:53 +0000 Sebastian Dröge <slomo@circular-chaos.org> Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u... Original commit message from CVS: * configure.ac: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_class_init): * ext/alsa/gstalsasink.c: (gst_alsasink_class_init): * ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init): * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_class_init): * ext/gio/gstgiosink.c: (gst_gio_sink_class_init): * ext/gio/gstgiosrc.c: (gst_gio_src_class_init): * ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init): * ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init): * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init): * ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init): * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init): * ext/pango/gsttextrender.c: (gst_text_render_class_init): * ext/theora/theoradec.c: (gst_theora_dec_class_init): * ext/theora/theoraenc.c: (gst_theora_enc_class_init): * ext/theora/theoraparse.c: (gst_theora_parse_class_init): * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init): * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_class_init): * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_class_init): * gst-libs/gst/interfaces/mixertrack.c: (gst_mixer_track_class_init): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_class_init): * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init): * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_class_init): * gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init): * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init): * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init): * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init): * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (preroll_unlinked): * gst/playback/gstplaybin.c: (gst_play_bin_class_init): * gst/playback/gstplaybin2.c: (gst_play_bin_class_init): * gst/playback/gstplaysink.c: (gst_play_sink_class_init): * gst/playback/gstqueue2.c: (gst_queue_class_init): * gst/playback/gststreaminfo.c: (gst_stream_info_class_init): * gst/playback/gststreamselector.c: (gst_selector_pad_class_init), (gst_stream_selector_class_init): * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init): * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init): * gst/videorate/gstvideorate.c: (gst_video_rate_class_init): * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init): * gst/volume/gstvolume.c: (gst_volume_class_init): * sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init): * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init): * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init): * sys/ximage/ximagesink.c: (gst_ximagesink_class_init): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init): Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory usage, fewer allocations and thus less memory defragmentation. Depend on core CVS for this. Fixes bug #523806. 2008-03-22 14:13:55 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Filter http and https protocols. GIO/GVfs handles them but it's impossible to implement iradio/icec... Original commit message from CVS: * ext/gio/gstgio.c: (gst_gio_get_supported_protocols): Filter http and https protocols. GIO/GVfs handles them but it's impossible to implement iradio/icecast with it. Better use souphttpsrc or something else for this. * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_get_size): If getting the file informations by a query fails try it with the seek-to-end trick too. 2008-03-21 16:46:33 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/volume/gstvolume.c: memset buffers to zero if we get a GAP buffer. We usually see a buffer as one unit so let's h... Original commit message from CVS: * gst/volume/gstvolume.c: (gst_volume_interface_supported), (gst_volume_base_init), (gst_volume_class_init), (volume_process_double), (volume_process_float), (volume_transform_ip), (plugin_init): memset buffers to zero if we get a GAP buffer. We usually see a buffer as one unit so let's handle it as one and don't care about volume changes while processing one buffer. Also clean up some stuff a bit. 2008-03-21 15:58:44 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstaudioconvert.c: Make audioconvert GAP-aware by outputting silence buffers when the input has the ... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_init), (gst_audio_convert_create_silence_buffer), (gst_audio_convert_transform): Make audioconvert GAP-aware by outputting silence buffers when the input has the GAP flag set. This is up to 8x faster. Based on a patch by Stefan Kost. Fixes bug #517813. 2008-03-21 15:54:54 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/volume/gstvolume.c: Use oil_scalarmultiply_f64_ns() for double processing when it's available at compile time. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_process_double): Use oil_scalarmultiply_f64_ns() for double processing when it's available at compile time. 2008-03-21 13:27:47 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: Fix lrint/lrintf checks to actually work. These functions are in libm on Linux at least so try to link ... Original commit message from CVS: * configure.ac: Fix lrint/lrintf checks to actually work. These functions are in libm on Linux at least so try to link to it. 2008-03-21 00:36:20 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to development - 0.10.18.1 Original commit message from CVS: * configure.ac: Back to development - 0.10.18.1 === release 0.10.18 === 2008-03-21 00:26:03 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * po/LINGUAS: * win32/common/config.h: Release 0.10.18 Original commit message from CVS: Release 0.10.18 2008-03-21 00:16:37 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/hu.po: * po/it.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-03-18 12:19:43 +0000 Jan Schmidt <thaytan@mad.scientist.com> 0.10.17.4 pre-release Original commit message from CVS: * configure.ac: * win32/common/config.h: 0.10.17.4 pre-release 2008-03-18 11:20:05 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/sdp/gstsdpmessage.c: Use GST_STR_NULL when trying to print strings that could be NULL because this might... Original commit message from CVS: * gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_message_dump): Use GST_STR_NULL when trying to print strings that could be NULL because this might crash on some platforms. See #520808. 2008-03-18 11:10:12 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> gst-libs/gst/rtsp/gstrtspconnection.c: Generic Windows fixes that makes libgstrtsp work on Windows when coupled with ... Original commit message from CVS: Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_connect), (gst_rtsp_connection_write), (read_line), (gst_rtsp_connection_read_internal): Generic Windows fixes that makes libgstrtsp work on Windows when coupled with the new GstPoll API. See #520808. 2008-03-17 22:06:56 +0000 Milosz Derezynski <internalerror@gmail.com> ext/gio/gstgiobasesrc.c: If seeking to a new position succeeds don't simply return from create() without creating a b... Original commit message from CVS: Patch by: Milosz Derezynski <internalerror at gmail dot com> * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_create): If seeking to a new position succeeds don't simply return from create() without creating a buffer. Do this only in the case seeking to the new position fails. Fixes bug #523054. 2008-03-17 10:32:28 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/video/video.c: Fix gst_video_format_parse_caps() for RGB caps with alpha channel (#522635). Original commit message from CVS: * gst-libs/gst/video/video.c: (gst_video_format_parse_caps), (gst_video_format_from_rgba32_masks): Fix gst_video_format_parse_caps() for RGB caps with alpha channel (#522635). * tests/check/libs/video.c: (test_parse_caps_rgb), (video_suite): Add unit test for the RGB caps parsing and creation, checking for internal consistency of the new API and consistency of the API with the old GST_VIDEO_CAPS_* defines. 2008-03-14 18:42:35 +0000 David Schleef <ds@schleef.org> gst/videotestsrc/videotestsrc.c: Oops, revert last change because -base is in freeze. Original commit message from CVS: * gst/videotestsrc/videotestsrc.c: Oops, revert last change because -base is in freeze. 2008-03-14 17:33:09 +0000 William M. Brack <wbrack@mmm.hk> gst/videotestsrc/videotestsrc.c: Fix Bayer pattern generation. Original commit message from CVS: Patch by: William M. Brack * gst/videotestsrc/videotestsrc.c: Fix Bayer pattern generation. 2008-03-14 09:54:44 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gststreamselector.*: Revert change that caused regression until a real fix is found. Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_selector_pad_event), (gst_selector_pad_chain): * gst/playback/gststreamselector.h: Revert change that caused regression until a real fix is found. Fixes #522203. 2008-03-12 12:39:13 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/audio/gstringbuffer.*: Rename recently added buffer types to make more sense. Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_parse_caps): * gst-libs/gst/audio/gstringbuffer.h: Rename recently added buffer types to make more sense. * ext/alsa/gstalsasink.c: (alsasink_parse_spec), (gst_alsasink_write): Adapt for above API changes. Fixes bug #520523. 2008-03-11 13:23:55 +0000 Sebastian Dröge <slomo@circular-chaos.org> win32/common/libgstnetbuffer.def: Add new symbol gst_netaddress_equal. Fixes bug #521743. Original commit message from CVS: * win32/common/libgstnetbuffer.def: Add new symbol gst_netaddress_equal. Fixes bug #521743. 2008-03-11 00:25:13 +0000 Jan Schmidt <thaytan@mad.scientist.com> 0.10.17.3 pre-release Original commit message from CVS: * configure.ac: * win32/common/config.h: 0.10.17.3 pre-release 2008-03-10 17:19:56 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Fix duration when no clock was provided. Fixes #520300. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Fix duration when no clock was provided. Fixes #520300. 2008-03-07 18:17:44 +0000 Olivier Crete <tester@tester.ca> Add trivial function to compare GstNetAddress. See #520626. Original commit message from CVS: Patch by: Olivier Crete <tester at tester ca> * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/netbuffer/gstnetbuffer.c: (gst_netaddress_equal): * gst-libs/gst/netbuffer/gstnetbuffer.h: Add trivial function to compare GstNetAddress. See #520626. API: GstNetBuffer::gst_netaddress_equal 2008-03-07 16:10:51 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstmultifdsink.c: Update mode property docs, it's deprecated now. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): Update mode property docs, it's deprecated now. 2008-03-07 15:48:51 +0000 Wim Taymans <wim.taymans@gmail.com> gst/: Remove GstPollMode from gstpoll constructor. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_create): * gst/tcp/gstmultifdsink.c: (gst_fdset_mode_get_type), (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_start): * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_start): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_start): Remove GstPollMode from gstpoll constructor. 2008-03-04 00:26:46 +0000 Jan Schmidt <thaytan@mad.scientist.com> 0.10.17.2 pre-release Original commit message from CVS: * configure.ac: * win32/common/config.h: 0.10.17.2 pre-release 2008-03-03 23:59:45 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/Makefile.am: GST_PLUGINS_ALL correctly lists subparse and tcp now, don't distclean them twice Original commit message from CVS: * gst/Makefile.am: GST_PLUGINS_ALL correctly lists subparse and tcp now, don't distclean them twice * win32/common/libgstinterfaces.def: * win32/common/libgstrtp.def: Add new API to the defs 2008-03-03 16:11:50 +0000 Mersad Jelacic <mersad@axis.com> gst-libs/gst/rtp/gstbasertpaudiopayload.*: API: add gst_base_rtp_audio_payload_set_samplebits_options() to make it po... Original commit message from CVS: Patch by: Mersad Jelacic <mersad at axis dot com> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: API: add gst_base_rtp_audio_payload_set_samplebits_options() to make it possible to specify the sample size in bits. (#509637) 2008-03-03 13:59:19 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/mixer.c: Add a few simple checks for the new message types. Original commit message from CVS: * tests/check/libs/mixer.c: Add a few simple checks for the new message types. 2008-03-03 13:56:38 +0000 Tim-Philipp Müller <tim@centricular.net> API: add gst_mixer_options_list_changed(), gst_mixer_mixer_changed() and gst_mixer_message_parse_options_list_changed... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/interfaces/mixer.c: (gst_mixer_option_changed), (gst_mixer_options_list_changed), (gst_mixer_mixer_changed), (gst_mixer_message_get_type), (gst_mixer_message_parse_option_changed), (gst_mixer_message_parse_options_list_changed): * gst-libs/gst/interfaces/mixer.h: (GstMixerType), (GST_MIXER_MESSAGE_OPTION_CHANGED), (GST_MIXER_MESSAGE_OPTIONS_LIST_CHANGED), (GST_MIXER_MESSAGE_MIXER_CHANGED): API: add gst_mixer_options_list_changed(), gst_mixer_mixer_changed() and gst_mixer_message_parse_options_list_changed(). Fixes #519916. 2008-03-03 13:50:18 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixeroptions.*: API: add GstMixerOptions::get_values vfunc (#519906) Original commit message from CVS: * gst-libs/gst/interfaces/mixeroptions.c: (gst_mixer_options_init), (gst_mixer_options_get_values): * gst-libs/gst/interfaces/mixeroptions.h: (GST_MIXER_OPTIONS_GET_CLASS), (GstMixerOptionsClass), (_GstMixerOptions), (_GstMixerOptionsClass): API: add GstMixerOptions::get_values vfunc (#519906) 2008-03-03 12:01:15 +0000 Peter Kjellerstedt <pkj@axis.com> configure.ac: Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which plug-ins are included/excluded. (#4... Original commit message from CVS: * configure.ac: Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which plug-ins are included/excluded. (#498222) 2008-03-03 06:22:39 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add typefinder for IMelody files, using audio/x-imelody. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Add typefinder for IMelody files, using audio/x-imelody. See bug #519516. 2008-03-03 06:04:31 +0000 Sebastian Dröge <slomo@circular-chaos.org> Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static... Original commit message from CVS: * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_get_type): * ext/alsa/gstalsasink.c: (set_hwparams): * ext/alsa/gstalsasrc.c: (set_hwparams): * ext/gio/gstgio.c: (gst_gio_uri_handler_get_uri): * ext/ogg/gstoggmux.h: * ext/ogg/gstogmparse.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/fft/kiss_fft_f64.c: (kiss_fft_f64_alloc): * gst-libs/gst/pbutils/missing-plugins.c: (gst_missing_uri_sink_message_new), (gst_missing_element_message_new), (gst_missing_decoder_message_new), (gst_missing_encoder_message_new): * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_bye_get_reason): * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/playback/test.c: (gen_video_element), (gen_audio_element): * gst/typefind/gsttypefindfunctions.c: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * sys/v4l/gstv4lelement.c: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get_any_caps): * sys/v4l/v4l_calls.c: * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_capture_init), (gst_v4lsrc_try_capture): * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): * tests/check/elements/audioconvert.c: * tests/check/elements/audioresample.c: (fail_unless_perfect_stream): * tests/check/elements/audiotestsrc.c: (setup_audiotestsrc): * tests/check/elements/decodebin.c: * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (setup_gdpdepay_streamheader): * tests/check/elements/gdppay.c: (setup_gdppay), (GST_START_TEST), (setup_gdppay_streamheader): * tests/check/elements/gnomevfssink.c: (setup_gnomevfssink): * tests/check/elements/multifdsink.c: (setup_multifdsink): * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: (setup_videorate): * tests/check/elements/videotestsrc.c: (setup_videotestsrc): * tests/check/elements/volume.c: (setup_volume): * tests/check/elements/vorbisdec.c: (setup_vorbisdec): * tests/check/elements/vorbistag.c: * tests/check/generic/clock-selection.c: * tests/check/generic/states.c: (setup), (teardown): * tests/check/libs/cddabasesrc.c: * tests/check/libs/video.c: * tests/check/pipelines/gio.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/simple-launch-lines.c: (simple_launch_lines_suite): * tests/check/pipelines/streamheader.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: (query_positions_elems), (query_positions_pads): * tests/icles/stress-xoverlay.c: (myclock): Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static, using NULL instead of 0 for pointers and using "foo (void)" instead of "foo ()" for declarations. * win32/common/libgstrtp.def: Add gst_rtp_buffer_set_extension_data to the symbol definition file. 2008-03-02 18:43:15 +0000 José Alburquerque <jaalburqu@svn.gnome.org> gst/playback/gstplaybin2.c: Make the function signature of the _get_*_tags() functions match the signature of the vfu... Original commit message from CVS: Patch by: José Alburquerque <jaalburqu svn gnome org> * gst/playback/gstplaybin2.c: Make the function signature of the _get_*_tags() functions match the signature of the vfuncs they implement, ie. return a GstTagList rather than a GstStructure, which is more correct, even if one is typedef'ed to the other (#518940). 2008-03-02 18:32:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/rtsp/gstrtspconnection.c: Don't include unix headers unconditionally (fixes #518037). Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: Don't include unix headers unconditionally (fixes #518037). 2008-03-02 18:24:37 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/video.c: Add unit test that makes sure that the strides, offsets and sizes returned for the various ... Original commit message from CVS: * tests/check/libs/video.c: (paintinfo), (paintinfo_struct), (fourcc_list_struct), (fourcc_list), (fourcc_get_size), (paint_setup_I420), (paint_setup_YV12), (paint_setup_AYUV), (paint_setup_YUY2), (paint_setup_UYVY), (paint_setup_YVYU), (paint_setup_IYU2), (paint_setup_Y41B), (paint_setup_Y42B), (paint_setup_Y800), (paint_setup_YVU9), (paint_setup_YUV9), (gst_video_format_is_packed), (video_format_is_packed): Add unit test that makes sure that the strides, offsets and sizes returned for the various YUV formats by the new video API match the old reference implementation in videotestsrc. 2008-03-02 18:20:44 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/video/video.*: API: add GST_VIDEO_FORMAT_Y41B and GST_VIDEO_FORMAT_Y42B. Original commit message from CVS: * gst-libs/gst/video/video.c: (gst_video_calculate_display_ratio), (gst_video_format_from_fourcc), (gst_video_format_to_fourcc), (gst_video_format_is_rgb), (gst_video_format_is_yuv), (gst_video_format_has_alpha), (gst_video_format_get_row_stride), (gst_video_format_get_pixel_stride), (gst_video_format_get_component_width), (gst_video_format_get_component_height), (gst_video_format_get_component_offset), (gst_video_format_get_size): * gst-libs/gst/video/video.h: (GST_VIDEO_FORMAT_Y41B), (GST_VIDEO_FORMAT_Y42B): API: add GST_VIDEO_FORMAT_Y41B and GST_VIDEO_FORMAT_Y42B. 2008-03-02 18:07:10 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/video/video.c: YV12 is I420 with swapped components 1 and 2, so the offset of component 1 for I420 shoul... Original commit message from CVS: * gst-libs/gst/video/video.c: (gst_video_format_get_component_offset): YV12 is I420 with swapped components 1 and 2, so the offset of component 1 for I420 should be the offset for component 2 for YV12 and vice versa. 2008-02-29 21:48:00 +0000 Rene Stadler <mail@renestadler.de> sys/v4l/gstv4lelement.c: Add missing semicolon to fix indentation. Original commit message from CVS: * sys/v4l/gstv4lelement.c: Add missing semicolon to fix indentation. 2008-02-29 18:44:36 +0000 Julien Moutte <julien@moutte.net> ext/alsa/gstalsa.c: Probe for IEC958 pcm to detect if we can do SPDIF output. Original commit message from CVS: 2008-02-29 Julien Moutte <julien@fluendo.com> * ext/alsa/gstalsa.c: (gst_alsa_open_iec958_pcm), (gst_alsa_probe_supported_formats): Probe for IEC958 pcm to detect if we can do SPDIF output. * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: (set_hwparams), (alsasink_parse_spec), (gst_alsasink_prepare), (gst_alsasink_close), (gst_alsasink_write): * ext/alsa/gstalsasink.h: Initial support for SPDIF. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_parse_caps): * gst-libs/gst/audio/gstringbuffer.h: Add non linear buffer types to support AC3, EC3 and IEC958 buffers. 2008-02-29 17:59:16 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixer.c: De-cruft and fix message type assertions (NULL is not a really valid mixer message t... Original commit message from CVS: * gst-libs/gst/interfaces/mixer.c: (GST_MIXER_MESSAGE_HAS_TYPE), (gst_mixer_message_parse_mute_toggled), (gst_mixer_message_parse_record_toggled), (gst_mixer_message_parse_volume_changed), (gst_mixer_message_parse_option_changed): De-cruft and fix message type assertions (NULL is not a really valid mixer message type string). 2008-02-29 14:52:02 +0000 Wim Taymans <wim.taymans@gmail.com> ext/libvisual/visual.c: When negotiating, actually start from a format that we can support instead of from the too ge... Original commit message from CVS: * ext/libvisual/visual.c: (gst_vis_src_negotiate): When negotiating, actually start from a format that we can support instead of from the too generic template. 2008-02-29 12:26:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Enable vis setting. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_set_property): Enable vis setting. * gst/playback/gstplaysink.c: (gst_play_sink_init), (gst_play_sink_dispose), (gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin), (gen_vis_chain): Implement vis switching while playing. 2008-02-29 00:04:57 +0000 David Schleef <ds@schleef.org> gst-libs/gst/riff/riff-media.c: Add Dirac mapping Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: Add Dirac mapping 2008-02-28 10:54:14 +0000 Peter Kjellerstedt <pkj@axis.com> gst/tcp/: Removed fdset and stress test, they are now known as GstPoll in core. Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst/tcp/Makefile.am: * gst/tcp/fdsetstress.c: * gst/tcp/gstfdset.c: * gst/tcp/gstfdset.h: Removed fdset and stress test, they are now known as GstPoll in core. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_add_full), (gst_multi_fd_sink_remove), (gst_multi_fd_sink_clear), (gst_multi_fd_sink_remove_client_link), (gst_multi_fd_sink_handle_client_write), (gst_multi_fd_sink_queue_buffer), (gst_multi_fd_sink_handle_clients), (gst_multi_fd_sink_start), (gst_multi_fd_sink_stop): * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcp.c: (gst_tcp_socket_read), (gst_tcp_socket_close), (gst_tcp_read_buffer), (gst_tcp_gdp_read_buffer), (gst_tcp_gdp_read_caps): * gst/tcp/gsttcp.h: * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_init), (gst_tcp_client_sink_setcaps), (gst_tcp_client_sink_render), (gst_tcp_client_sink_start), (gst_tcp_client_sink_stop): * gst/tcp/gsttcpclientsink.h: * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_init), (gst_tcp_client_src_create), (gst_tcp_client_src_start), (gst_tcp_client_src_stop), (gst_tcp_client_src_unlock): * gst/tcp/gsttcpclientsrc.h: * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_handle_wait), (gst_tcp_server_sink_init_send), (gst_tcp_server_sink_close): * gst/tcp/gsttcpserversink.h: * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_init), (gst_tcp_server_src_create), (gst_tcp_server_src_start), (gst_tcp_server_src_stop), (gst_tcp_server_src_unlock): * gst/tcp/gsttcpserversrc.h: Port to GstPoll. See #505417. 2008-02-28 09:54:14 +0000 Wim Taymans <wim.taymans@gmail.com> * ChangeLog: Patch Changelog a bit to give credit and refer to the relevant bug. Original commit message from CVS: Patch Changelog a bit to give credit and refer to the relevant bug. 2008-02-28 09:50:52 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspconnection.*: Use GstPoll for the rtsp connection. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_create), (gst_rtsp_connection_connect), (gst_rtsp_connection_write), (gst_rtsp_connection_read_internal), (gst_rtsp_connection_receive), (gst_rtsp_connection_close), (gst_rtsp_connection_free), (gst_rtsp_connection_poll), (gst_rtsp_connection_flush): * gst-libs/gst/rtsp/gstrtspconnection.h: Use GstPoll for the rtsp connection. 2008-02-27 12:19:31 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add combo box for visualisations, populate it with a factory list of all visualisation pl... Original commit message from CVS: * tests/examples/seek/seek.c: (vis_toggle_cb), (filter_features), (init_visualization_features), (vis_combo_cb), (shot_cb), (main): Add combo box for visualisations, populate it with a factory list of all visualisation plugins, configure vis plugin instance in playbin2. 2008-02-27 10:55:03 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/libs/rtp.c: Add check for RTP buffer defaults, padding and marker bit API. Original commit message from CVS: * tests/check/libs/rtp.c: (GST_START_TEST): Add check for RTP buffer defaults, padding and marker bit API. 2008-02-27 10:42:08 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/cdda/sha1.c: Use memcpy() instead of upcasting a byte array to long *. This fixes an unaligned memory ac... Original commit message from CVS: * gst-libs/gst/cdda/sha1.c: (sha_transform): Use memcpy() instead of upcasting a byte array to long *. This fixes an unaligned memory access, resulting in SIGBUS on IA64. This should be ported to GCheckSum once we can use GLib 2.16. Partially fixes bug #500833. 2008-02-27 10:23:27 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gsttagdemux.c: Push tag event after the newsegment event. Log the pointer of the buffer we're actual... Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: (gst_tag_demux_chain): Push tag event after the newsegment event. Log the pointer of the buffer we're actually going to push rather than the buffer we're feeding to _make_metadata_writable(). 2008-02-25 07:21:33 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Comment smoke typefinder for now. The smokedec plugin needs one frame per buffer... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Comment smoke typefinder for now. The smokedec plugin needs one frame per buffer but we have no parser yet, thus it simply crashes in most situations. 2008-02-25 06:48:14 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add typefinder for the smoke video codec. Copied from the jpeg plugin. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Add typefinder for the smoke video codec. Copied from the jpeg plugin. 2008-02-25 06:29:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/typefind/gsttypefindfunctions.c: Add midi typefinder, copied from the timidity plugin. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mid_type_find), (plugin_init): Add midi typefinder, copied from the timidity plugin. 2008-02-23 09:51:26 +0000 Tomasz Sałaciński <tsalacinski@gmail.com> Forward slashes at the beginning and end of a line also signify italics (Fixes: #518162). Original commit message from CVS: Based on patch by: Tomasz Sałaciński <tsalacinski gmail com> * gst/subparse/gstsubparse.c: (parse_mdvdsub): * tests/check/elements/subparse.c: (test_microdvd_with_italics), (subparse_suite): Forward slashes at the beginning and end of a line also signify italics (Fixes: #518162). 2008-02-22 06:38:08 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/gst-plugins-base.supp: Add a suppression for a cached value in GIO that wasn't moved while moving gio fro... Original commit message from CVS: * tests/check/gst-plugins-base.supp: Add a suppression for a cached value in GIO that wasn't moved while moving gio from -bad to -base. 2008-02-22 05:27:24 +0000 Brian Cameron <brian.cameron@sun.com> configure.ac: Don't hardcode -Wall and -Werror for configure checks, this fails with non-GCC compilers. Fixes bug #51... Original commit message from CVS: Patch by: Brian Cameron <brian dot cameron at sun dot com> * configure.ac: Don't hardcode -Wall and -Werror for configure checks, this fails with non-GCC compilers. Fixes bug #517991. 2008-02-21 08:05:10 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audiotestsrc/gstaudiotestsrc.c: Mark buffers as GAP,if volume is 0.0 and fix the previous logic. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: Mark buffers as GAP,if volume is 0.0 and fix the previous logic. 2008-02-20 15:37:36 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gnomevfs/gstgnomevfssink.c: Return FALSE when seeking for a new segment fails instead of silently ignoring the fa... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_handle_event): Return FALSE when seeking for a new segment fails instead of silently ignoring the failure and appending every buffer that comes for the new segment. 2008-02-20 11:52:28 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Recursively search the sink element for a last-frame property so that we can also find th... Original commit message from CVS: * gst/playback/gstplaysink.c: (find_property), (gst_play_sink_find_property), (gen_video_chain), (gst_play_sink_reconfigure), (gst_play_sink_get_last_frame): Recursively search the sink element for a last-frame property so that we can also find the property in autovideosink and friends that don't always proxy the internal sink properties. 2008-02-19 20:42:09 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: Fix confusing terminology in docs and code: structure fields are 'fields' and not ... Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (GST_AUDIO_CHANNEL_POSITIONS_FIELD_NAME), (gst_audio_get_channel_positions), (gst_audio_set_channel_positions), (gst_audio_set_structure_channel_positions_list), (add_list_to_struct), (gst_audio_set_caps_channel_positions_list), (gst_audio_fixate_channel_positions): Fix confusing terminology in docs and code: structure fields are 'fields' and not 'properties'. 2008-02-19 20:36:58 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: Give more useful warning messages if one of the channel layout enums passed to us ... Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions), (add_list_to_struct): Give more useful warning messages if one of the channel layout enums passed to us is invalid and if the "channels" field in the caps has a GType we don't expect. 2008-02-19 20:22:09 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: Fix typo in docs blurb. Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: Fix typo in docs blurb. 2008-02-19 16:16:55 +0000 Josep Torra Valles <josep@fluendo.com> gst/typefind/gsttypefindfunctions.c: Increase the MPEG PS typefind lookup to fix typefinding on HD clips. Original commit message from CVS: 2008-02-19 Julien Moutte <julien@fluendo.com> Patch by: Josep Torra Valles <josep@fluendo.com> * gst/typefind/gsttypefindfunctions.c: Increase the MPEG PS typefind lookup to fix typefinding on HD clips. 2008-02-19 15:50:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstscreenshot.*: Fix up copyright (I rewrote the GStreamer-0.10 code for this from scratch back in the d... Original commit message from CVS: * gst/playback/gstscreenshot.c: * gst/playback/gstscreenshot.h: Fix up copyright (I rewrote the GStreamer-0.10 code for this from scratch back in the days). 2008-02-19 15:02:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Add screenshot conversion code from totem. Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstscreenshot.c: (feed_fakesrc), (save_result), (create_element), (gst_play_frame_conv_convert): * gst/playback/gstscreenshot.h: Add screenshot conversion code from totem. * gst/playback/gstplay-marshal.list: * gst/playback/gstplaybin2.c: (gst_play_marshal_BUFFER__BOXED), (gst_play_bin_class_init), (gst_play_bin_convert_frame), (gst_play_bin_get_property), (no_more_pads_cb), (activate_group): Implement frame property to get a color-unconverted snapshot. Implement convert-frame action signal to get a converted snapshot image. Configure connection speed in uridecodebin. Document some more properties. * gst/playback/gstplaysink.c: (gst_play_sink_class_init), (gen_video_chain), (gen_audio_chain), (gst_play_sink_reconfigure), (gst_play_sink_get_last_frame): * gst/playback/gstplaysink.h: Use last-buffer property of the video sink to get a video snapshot. * tests/examples/seek/seek.c: (shot_cb), (main): Add snapshot button for playbin2 and use the frame property to save the frame as a png in the current directory. 2008-02-19 11:45:56 +0000 Josep Torra Valles <josep@fluendo.com> gst/typefind/gsttypefindfunctions.c: Add typefinding support for h264 elementary streams. Original commit message from CVS: Patch by: Josep Torra Valles <josep at fluendo dot com> * gst/typefind/gsttypefindfunctions.c: (h264_video_type_find), (plugin_init): Add typefinding support for h264 elementary streams. Fixes bug #517420. 2008-02-18 13:51:34 +0000 Stefan Kost <ensonic@users.sourceforge.net> configure.ac: Require CVS of core for new API in collectpads. Original commit message from CVS: * configure.ac: Require CVS of core for new API in collectpads. * gst/adder/gstadder.c: Use new API to make adder sparse stream aware. 2008-02-18 11:54:15 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Get the object data correct so that we can remove our channels correctly. Original commit message from CVS: * gst/playback/gstplaybin2.c: (pad_added_cb), (pad_removed_cb), (no_more_pads_cb): Get the object data correct so that we can remove our channels correctly. * gst/playback/gstplaysink.c: (gen_video_chain), (gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure), (gst_play_sink_request_pad): Add option to disable async behaviour in the sinks when possible. This makes it possible to avoid an audio queue when dealing with visualisations. Add option to add a queue for the audio path. * tests/examples/seek/seek.c: (clear_streams), (update_streams), (main): Disable the vis checkbox to match the defaults of playbin2. Only get the stream info when we need to. 2008-02-17 05:15:45 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/: Don't use async operations as they require a running main loop. Original commit message from CVS: * ext/gio/gstgiobasesink.c: (gst_gio_base_sink_stop), (gst_gio_base_sink_set_stream): * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_stop), (gst_gio_base_src_set_stream): * ext/gio/gstgiosink.c: (gst_gio_sink_start): * ext/gio/gstgiosrc.c: (gst_gio_src_start): Don't use async operations as they require a running main loop. This makes us block again when closing streams and unable to mount the enclosing volume of an URI if it isn't yet. 2008-02-15 18:38:52 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaysink.c: Move tee in front of the audio and vis pipelines. Original commit message from CVS: * gst/playback/gstplaysink.c: (gst_play_sink_set_mute), (gst_play_sink_get_mute), (gen_video_chain), (gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure), (gst_play_sink_request_pad): Move tee in front of the audio and vis pipelines. Add queue for audio for now. Add visualisation support. * tests/examples/seek/seek.c: (main): Visualisation is by default disabled. 2008-02-15 11:58:06 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/: Improve debugging a bit. Original commit message from CVS: * ext/gio/gstgiobasesink.c: (close_stream_cb): * ext/gio/gstgiobasesrc.c: (close_stream_cb): Improve debugging a bit. * ext/gio/gstgiosink.c: (mount_cb), (gst_gio_sink_start): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (mount_cb), (gst_gio_src_start): * ext/gio/gstgiosrc.h: Try to mount the enclosing volume of a GFile if it isn't mounted yet. This requires us to wait for an async operation to finish, done with an nested GMainLoop. Authentication is not supported yet, will come later. 2008-02-14 18:24:42 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Add mute property. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (gst_play_bin_set_property), (gst_play_bin_get_property), (pad_added_cb), (pad_removed_cb), (no_more_pads_cb): * gst/playback/gstplaysink.c: (gst_play_sink_set_mute), (gst_play_sink_get_mute), (gen_audio_chain): * gst/playback/gstplaysink.h: Add mute property. * gst/playback/gststreamselector.c: (gst_selector_pad_event), (gst_selector_pad_chain): * gst/playback/gststreamselector.h: Make sure we forward the event only once. * tests/examples/seek/seek.c: (stop_cb), (mute_toggle_cb), (main): Add and implement the mute button for playbin2. 2008-02-13 14:34:55 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> ext/alsa/gstalsasink.c: Add some more debug info. Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * ext/alsa/gstalsasink.c: (set_hwparams), (gst_alsasink_delay): Add some more debug info. Make sure we never return a negative delay. Fixes #516246. 2008-02-12 20:09:07 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsasink.c: Revert patch that makes the sink hold the object lock when calling snd_pcm_delay(), since it ... Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_delay): Revert patch that makes the sink hold the object lock when calling snd_pcm_delay(), since it breaks playback for me. 2008-02-12 19:50:36 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Add some seek flags when changing rate. Original commit message from CVS: 2008-02-12 Julien Moutte <julien@fluendo.com> * tests/examples/seek/seek.c: (rate_spinbutton_changed_cb): Add some seek flags when changing rate. 2008-02-12 14:51:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Fix potential leaks. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_handle_frame_based_buffer), (gst_base_rtp_audio_payload_handle_sample_based_buffer): Fix potential leaks. * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_chain): Fix leak when there is no function configured. 2008-02-12 11:36:27 +0000 Sebastian Dröge <slomo@circular-chaos.org> sys/v4l/v4lsrc_calls.c: Correctly chain up the finalize method. Original commit message from CVS: * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_buffer_class_init), (gst_v4lsrc_buffer_finalize): Correctly chain up the finalize method. 2008-02-12 09:24:11 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/: Add documentation and example code for giostreamsink/giostreamsrc. Original commit message from CVS: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: Add documentation and example code for giostreamsink/giostreamsrc. * tests/check/pipelines/gio.c: (GST_START_TEST): Ask the GMemoryOutputStream for the data instead of assuming that the pointer to the data stayed the same. It could've been realloc'ed. 2008-02-12 08:55:57 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/: Make the documentation of giosink/giosrc complete, large parts are based on the gnomevfssink/gnomevfssrc docs. Original commit message from CVS: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: Make the documentation of giosink/giosrc complete, large parts are based on the gnomevfssink/gnomevfssrc docs. 2008-02-12 08:13:59 +0000 Sebastian Dröge <slomo@circular-chaos.org> docs/plugins/: Add the GIO documentation again and while at that run make update. Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: Add the GIO documentation again and while at that run make update. 2008-02-11 20:23:44 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/: Don't use snd_pcm_sw_params_set_xfer_align() if we're compiling against libasound >= 1.0.16, since it's be... Original commit message from CVS: * ext/alsa/gstalsa.h: (GST_CHECK_ALSA_VERSION): * ext/alsa/gstalsasink.c: (set_swparams): * ext/alsa/gstalsasrc.c: (set_swparams), (gst_alsasrc_open): Don't use snd_pcm_sw_params_set_xfer_align() if we're compiling against libasound >= 1.0.16, since it's been deprecated in 0.10.16, and alignment is always 1 then, apparently. (#512899) 2008-02-11 18:31:43 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Handle case where we can't create the volume element a bit better (#514307). Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_audio_element): * gst/playback/gstplaysink.c: (gen_audio_chain): Handle case where we can't create the volume element a bit better (#514307). 2008-02-11 18:02:13 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/: Add support for https protocol. Fixes #510229. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_check_get_range): * ext/gnomevfs/gstgnomevfsuri.c: (gst_gnomevfs_get_supported_uris): Add support for https protocol. Fixes #510229. 2008-02-11 17:03:18 +0000 Alan Peevers <peeves@pacbell.net> ext/alsa/gstalsasink.c: Take appropriate lock when calling alsa methods. Original commit message from CVS: 2008-02-11 Julien Moutte <julien@fluendo.com> Patch by: Alan Peevers <peeves@pacbell.net> * ext/alsa/gstalsasink.c: (gst_alsasink_delay): Take appropriate lock when calling alsa methods. 2008-02-11 13:03:13 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Bump rank of jpeg and png typefinders, which will return maximum probability in ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: Bump rank of jpeg and png typefinders, which will return maximum probability in the most common cases (thus short-circuiting more expensive typefinders like the mp3 one for these two quite common image types). 2008-02-11 09:48:03 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/theora/theoraparse.c: Fix long description of the theora parser to be more verbose than just the type name. Original commit message from CVS: * ext/theora/theoraparse.c: Fix long description of the theora parser to be more verbose than just the type name. 2008-02-11 06:47:50 +0000 Branko Čibej <brane@xbc.nu> sys/xvimage/xvimagesink.c: Fix build of xvimagesink if we don't have XShm, e.g. on Mac OS X. Original commit message from CVS: Patch by: Branko Čibej <brane at xbc dot nu> * sys/xvimage/xvimagesink.c: Fix build of xvimagesink if we don't have XShm, e.g. on Mac OS X. Fixes bug #515654. 2008-02-09 10:41:36 +0000 Zaheer Abbas Merali <zaheerabbas@merali.org> gst/playback/gstplaybasebin.c: Set is_dynamic as True if there are elements with both request and sometimes src pad t... Original commit message from CVS: * gst/playback/gstplaybasebin.c: Set is_dynamic as True if there are elements with both request and sometimes src pad templates instead of breaking out when it finds the first pad template that is a src. 2008-02-08 18:17:51 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add some stream switching and volume gui for playbin2. Original commit message from CVS: * tests/examples/seek/seek.c: (stop_cb), (clear_streams), (update_streams), (video_combo_cb), (audio_combo_cb), (text_combo_cb), (volume_spinbutton_changed_cb), (main): Add some stream switching and volume gui for playbin2. 2008-02-08 17:47:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplay-marshal.list: Added marshal for streamselector Tags. Original commit message from CVS: * gst/playback/gstplay-marshal.list: Added marshal for streamselector Tags. * gst/playback/gstplaybasebin.c: (set_active_source): Streamselector now selects pads based on the pad object instead of its name. * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (init_group), (gst_play_bin_init), (get_group), (get_tags), (gst_play_bin_get_video_tags), (gst_play_bin_get_audio_tags), (gst_play_bin_get_text_tags), (gst_play_bin_set_current_video_stream), (gst_play_bin_set_current_audio_stream), (gst_play_bin_set_current_text_stream), (gst_play_bin_set_property), (gst_play_bin_get_property), (pad_added_cb), (pad_removed_cb), (autoplug_select_cb): Remove option to mute streams with the current-a/v/t property, we have this functionality in the flags. Add signals to notify when the number of A/V/T channels changed. Add action signals to get tags for the A/V/T streams. Implement setting the current A/V/T stream. Rearrange some things to simplify stream selection. Implement volume. * gst/playback/gstplaysink.c: (gst_play_sink_set_volume), (gst_play_sink_get_volume), (gst_play_sink_set_property), (gst_play_sink_get_property), (gen_video_chain), (gen_audio_chain), (activate_vis), (gst_play_sink_reconfigure): * gst/playback/gstplaysink.h: Add and implement volume setting methods. * gst/playback/gststreamselector.c: (gst_selector_pad_class_init), (gst_selector_pad_finalize), (gst_selector_pad_get_property), (gst_selector_pad_event), (gst_stream_selector_class_init), (gst_stream_selector_init), (gst_stream_selector_finalize), (gst_stream_selector_set_property), (gst_stream_selector_get_property), (gst_stream_selector_get_linked_pad), (gst_stream_selector_request_new_pad): * gst/playback/gststreamselector.h: Add pad properties for tags and status of pads. Keep tags on pads. Make active pad selection based on pad object instead of name. 2008-02-08 16:10:25 +0000 Stefan Kost <ensonic@users.sourceforge.net> configure.ac: Revert last change as we now check in gtk-doc.m4 for sed. Original commit message from CVS: * configure.ac: Revert last change as we now check in gtk-doc.m4 for sed. 2008-02-08 14:54:30 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Find and subst SED when building the docs. Original commit message from CVS: * configure.ac: Find and subst SED when building the docs. 2008-02-08 14:34:41 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Make sure bus signals are reconnected when pressing STOP and then PLAY again for a parse ... Original commit message from CVS: 2008-02-08 Julien Moutte <julien@fluendo.com> * tests/examples/seek/seek.c: (stop_cb), (connect_bus_signals), (main): Make sure bus signals are reconnected when pressing STOP and then PLAY again for a parse launch pipeline. Fix a ref leak on the bus. * win32/common/config.h: Updated. 2008-02-08 00:57:21 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Make DISABLE_DEPRECATED defined *only* during CVS, not during pre-releases or releases. Original commit message from CVS: * configure.ac: Make DISABLE_DEPRECATED defined *only* during CVS, not during pre-releases or releases. 2008-02-08 00:45:56 +0000 Jan Schmidt <thaytan@mad.scientist.com> Subst GIO_LDFLAGS to avoid undefined Makefile var error Zaheer is reporting Original commit message from CVS: * configure.ac: * ext/gio/Makefile.am: Subst GIO_LDFLAGS to avoid undefined Makefile var error Zaheer is reporting 2008-02-07 23:40:30 +0000 Jan Schmidt <thaytan@mad.scientist.com> docs/plugins/Makefile.am: Add the headers which need scanning for the GIO plugin. The rest of the docs still need mig... Original commit message from CVS: * docs/plugins/Makefile.am: Add the headers which need scanning for the GIO plugin. The rest of the docs still need migrating. 2008-02-07 23:22:23 +0000 Jan Schmidt <thaytan@mad.scientist.com> Add gio in a few more places. Original commit message from CVS: * ext/Makefile.am: * tests/check/Makefile.am: * tests/check/pipelines/.cvsignore: Add gio in a few more places. 2008-02-07 23:18:43 +0000 Jan Schmidt <thaytan@mad.scientist.com> Move gio plugin from -bad and mark as experimental. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * tests/check/Makefile.am: Move gio plugin from -bad and mark as experimental. 2008-02-07 22:39:00 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/interfaces/: Comment out a couple of other things which break the build when Original commit message from CVS: * gst-libs/gst/interfaces/mixeroptions.c: * gst-libs/gst/interfaces/mixertrack.c: Comment out a couple of other things which break the build when GST_DISABLE_DEPRECATED isn't on but -Werror is. 2008-02-07 18:28:29 +0000 Tim-Philipp Müller <tim@centricular.net> docs/libs/gst-plugins-base-libs-sections.txt: Fix pbutils header. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: Fix pbutils header. 2008-02-07 18:07:41 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: commit spec file update which includes all the split .pc files Original commit message from CVS: commit spec file update which includes all the split .pc files 2008-02-07 12:17:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspmessage.c: Fix compiler warning. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspmessage.c: (gst_rtsp_message_unset): Fix compiler warning. 2008-02-07 11:00:45 +0000 Peter Kjellerstedt <pkj@axis.com> gst-libs/gst/sdp/gstsdpmessage.c: Clear the addrinfo struct using memset. Fixes #514937. Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst-libs/gst/sdp/gstsdpmessage.c: (is_multicast_address): Clear the addrinfo struct using memset. Fixes #514937. 2008-02-06 15:07:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstfdset.h: Remove unused field to same some memory. Original commit message from CVS: * gst/tcp/gstfdset.h: Remove unused field to same some memory. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): Mark action signals as such. 2008-02-06 13:35:58 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: Increment granulepos for new-bitstream versions appropriately. Original commit message from CVS: * ext/theora/theoradec.c: (_theora_granule_frame), (_inc_granulepos): Increment granulepos for new-bitstream versions appropriately. Fixes #514623. 2008-02-04 11:51:31 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Remove obsolete stream_time reset after flushing seek, core does that automatically now. Original commit message from CVS: * tests/examples/seek/seek.c: (do_seek), (rate_spinbutton_changed_cb), (update_streams), (main): Remove obsolete stream_time reset after flushing seek, core does that automatically now. Improve accuracy of speed spinbutton. Only do playbin2 stuff when we actually use it. 2008-02-02 17:29:32 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Revert previous change of the test environment's GST_PLUGIN_PATH. Original commit message from CVS: * tests/check/Makefile.am: Revert previous change of the test environment's GST_PLUGIN_PATH. The problem is not with the plugins, but with element factories and only occurs if elements are split out from existing plugins or if plugins change name (see #512740). 2008-02-02 15:32:23 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Fix the tests environment's GST_PLUGIN_PATH: we want the directory with the core's plugins f... Original commit message from CVS: * tests/check/Makefile.am: Fix the tests environment's GST_PLUGIN_PATH: we want the directory with the core's plugins first and our local build directories last, since we might be building against an installed core, and that core's plugin directory may contain older or other versions of our own -base plugins, but we really do want to test our local ones (if there are multiple plugins or element factories with the same name, those inspected last will trump those read in earlier). Fixes #512740 for the most part. 2008-02-02 07:13:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> Use gmtime_r if available as gmtime is not MT-safe. Original commit message from CVS: * configure.ac: * gst-libs/gst/rtsp/gstrtspconnection.c: (add_date_header): Use gmtime_r if available as gmtime is not MT-safe. Fixes bug #511810. 2008-02-02 06:52:41 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/rtsp/gstrtspconnection.c: Cast glong to time_t as time_t might have a different type on other platforms,... Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (add_date_header): Cast glong to time_t as time_t might have a different type on other platforms, like FreeBSD, and we get a compiler warning otherwise. Fixes bug #511825. 2008-02-01 16:44:21 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Remove stream-info, we going for something easier. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (get_group), (get_n_pads), (gst_play_bin_get_property), (pad_added_cb), (no_more_pads_cb), (perform_eos), (autoplug_select_cb), (deactivate_group): Remove stream-info, we going for something easier. Refactor getting the current group. Implement getting the number of audio/video/text streams. * gst/playback/gststreamselector.c: (gst_stream_selector_class_init), (gst_stream_selector_init), (gst_stream_selector_get_property), (gst_stream_selector_request_new_pad), (gst_stream_selector_release_pad): * gst/playback/gststreamselector.h: Add property for number of pads. * tests/examples/seek/seek.c: (set_scale), (update_flag), (vis_toggle_cb), (audio_toggle_cb), (video_toggle_cb), (text_toggle_cb), (update_streams), (msg_async_done), (msg_state_changed), (main): Block slider callback when updating the slider position. Add gui elements for controlling playbin2. Add callback for async_done that updates position/duration. 2008-02-01 12:56:59 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/plugins/: First round of plugin docs cleansups. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: First round of plugin docs cleansups. * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Regenerate. * ext/ogg/Makefile.am: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: Add header for oggmux. the c-file needs a doc blob still. 2008-02-01 11:09:16 +0000 Thijs Vermeir <thijsvermeir@gmail.com> Add gst_rtp_buffer_set_extension_data() Original commit message from CVS: Patch by: Thijs Vermeir <thijsvermeir at gmail dot com> * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_set_extension_data): * gst-libs/gst/rtp/gstrtpbuffer.h: * tests/check/libs/rtp.c: (GST_START_TEST), (rtp_suite): Add gst_rtp_buffer_set_extension_data() Add a unit test for this addition. Fixes #511478. API: GstRTPBuffer:gst_rtp_buffer_set_extension_data() 2008-01-31 17:18:46 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.c: Really clean up the queue instead of just unreffing all buffers in it. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_dispose): Really clean up the queue instead of just unreffing all buffers in it. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_base_init), (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_dispose), (gst_app_src_finalize): Fix dispose/finalize. 2008-01-30 15:34:25 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/: Use async variants of the close stream functions to prevent blocking for a long time there and add some mor... Original commit message from CVS: * ext/gio/gstgiobasesink.c: (close_stream_cb), (gst_gio_base_sink_stop), (gst_gio_base_sink_event), (gst_gio_base_sink_render), (gst_gio_base_sink_set_stream): * ext/gio/gstgiobasesrc.c: (close_stream_cb), (gst_gio_base_src_stop), (gst_gio_base_src_create), (gst_gio_base_src_set_stream): Use async variants of the close stream functions to prevent blocking for a long time there and add some more sanity checks for a correct stream. 2008-01-30 14:42:14 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.17 === 2008-01-30 14:19:05 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/config.h: Release 0.10.17 Original commit message from CVS: Release 0.10.17 2008-01-30 13:45:27 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/interfaces/: Also remove the conditional registration of the signals that disappeared with the ABI chang... Original commit message from CVS: * gst-libs/gst/interfaces/mixeroptions.c: * gst-libs/gst/interfaces/mixertrack.c: Also remove the conditional registration of the signals that disappeared with the ABI change in 0.10.14 2008-01-30 12:28:59 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/rtsp/gstrtspconnection.c: Revert patch to gstrtspconnection.c for brown paper bag release of -base. Re-o... Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: Revert patch to gstrtspconnection.c for brown paper bag release of -base. Re-opens: #511825 2008-01-30 12:20:42 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/interfaces/: Change the way these deprecated function pointers are removed so that the compiled ABI is u... Original commit message from CVS: * gst-libs/gst/interfaces/mixeroptions.h: * gst-libs/gst/interfaces/mixertrack.h: Change the way these deprecated function pointers are removed so that the compiled ABI is unconditionally smaller. This sets in stone an ABI break that actually occurred when the things were deprecated in 0.10.14, which seems to be the best fix as the only known users are oss-mixer and sunaudio-mixer in gst-plugins-good. Fixes: #513018 2008-01-30 12:19:02 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/interfaces/: Change the way these deprecated function pointers are removed so that the compiled ABI is u... Original commit message from CVS: * gst-libs/gst/interfaces/mixeroptions.h: * gst-libs/gst/interfaces/mixertrack.h: Change the way these deprecated function pointers are removed so that the compiled ABI is unconditionally smaller. This sets in stone an ABI break that actually occurred when the things were deprecated in 0.10.14, which seems to be the best fix as the only known users are oss-mixer and sunaudio-mixer in gst-plugins-good. 2008-01-30 11:43:53 +0000 Tim-Philipp Müller <tim@centricular.net> win32/common/libgstpbutils.def: Export the two new _get_type() functions which are needed by the python bindings. Original commit message from CVS: * win32/common/libgstpbutils.def: Export the two new _get_type() functions which are needed by the python bindings. 2008-01-29 09:59:03 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/rtsp/gstrtspconnection.c: Cast glong to time_t as time_t might have a different type on other platforms,... Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (add_date_header): Cast glong to time_t as time_t might have a different type on other platforms, like FreeBSD, and we get a compiler warning otherwise. Fixes bug #511825. 2008-01-29 09:47:12 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/gstaudiofilter.c: Initialize the GstRingerBuffer class to get it's debug category initialized. gst... Original commit message from CVS: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_class_init): Initialize the GstRingerBuffer class to get it's debug category initialized. gst_ring_buffer_parse_caps() uses the ringbuffer debug category and otherwise we get some g_critical(). Fixes bug #512334. 2008-01-28 23:35:21 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.16 === 2008-01-28 23:31:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/config.h: Release 0.10.16 Original commit message from CVS: Release 0.10.16 2008-01-28 22:15:47 +0000 Jan Schmidt <thaytan@mad.scientist.com> * common: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-01-23 13:18:24 +0000 Christian Schaller <uraeus@gnome.org> * gst/rawparse/Makefile.am: Add missing no_inst header files to Makefile.am so disting still works Original commit message from CVS: Add missing no_inst header files to Makefile.am so disting still works Update spec file with latest changes 2008-01-22 15:37:49 +0000 Thijs Vermeir <thijsvermeir@gmail.com> gst-libs/gst/rtp/gstrtpbuffer.c: Fix typos and wrong extension check. Fixes #511274. Original commit message from CVS: Patch by: Thijs Vermeir <thijsvermeir at gmail dot com> * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_get_extension_data): Fix typos and wrong extension check. Fixes #511274. 2008-01-18 00:03:18 +0000 Jan Schmidt <thaytan@mad.scientist.com> po/sk.po: Oops - add new sk.po mentioned in the LINGUAS I just committed Original commit message from CVS: * po/sk.po: Oops - add new sk.po mentioned in the LINGUAS I just committed 2008-01-17 22:31:25 +0000 Jan Schmidt <thaytan@mad.scientist.com> po/LINGUAS: Add ca translation to the disted list. Original commit message from CVS: * po/LINGUAS: Add ca translation to the disted list. * win32/vs6/libgstsdp.dsp: Convert line endings to CRLF 2008-01-17 21:58:53 +0000 Sébastien Moutte <sebastien@moutte.net> win32/MANIFEST: Add win32/vs6/libgstrtsp.dsp to MANIFEST Original commit message from CVS: * win32/MANIFEST: Add win32/vs6/libgstrtsp.dsp to MANIFEST 2008-01-16 05:40:48 +0000 Sebastian Dröge <slomo@circular-chaos.org> Update for API changes in GIO and require GIO 2.15.2 for this. Original commit message from CVS: * configure.ac: * tests/check/pipelines/gio.c: (GST_START_TEST): Update for API changes in GIO and require GIO 2.15.2 for this. 2008-01-14 22:20:12 +0000 Jan Schmidt <thaytan@mad.scientist.com> win32/common/: Add new API declarations Original commit message from CVS: * win32/common/libgstsdp.def: * win32/common/libgstvideo.def: Add new API declarations 2008-01-14 17:00:03 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/theora/: Take a 2nd stab at handling libtheora granulepos changes in the decoder and parser by inspecting the bit... Original commit message from CVS: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraparse.h: * ext/theora/theoradec.c: * ext/theora/theoraparse.c: Take a 2nd stab at handling libtheora granulepos changes in the decoder and parser by inspecting the bitstream version of the incoming data. 2008-01-14 13:11:05 +0000 Sebastian Dröge <slomo@circular-chaos.org> Provide one pkg-config file for every gst-plugins-base library. Original commit message from CVS: * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-audio-uninstalled.pc.in: * pkgconfig/gstreamer-audio.pc.in: * pkgconfig/gstreamer-cdda-uninstalled.pc.in: * pkgconfig/gstreamer-cdda.pc.in: * pkgconfig/gstreamer-fft-uninstalled.pc.in: * pkgconfig/gstreamer-fft.pc.in: * pkgconfig/gstreamer-floatcast-uninstalled.pc.in: * pkgconfig/gstreamer-floatcast.pc.in: * pkgconfig/gstreamer-interfaces-uninstalled.pc.in: * pkgconfig/gstreamer-interfaces.pc.in: * pkgconfig/gstreamer-netbuffer-uninstalled.pc.in: * pkgconfig/gstreamer-netbuffer.pc.in: * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: * pkgconfig/gstreamer-pbutils.pc.in: * pkgconfig/gstreamer-riff-uninstalled.pc.in: * pkgconfig/gstreamer-riff.pc.in: * pkgconfig/gstreamer-rtp-uninstalled.pc.in: * pkgconfig/gstreamer-rtp.pc.in: * pkgconfig/gstreamer-rtsp-uninstalled.pc.in: * pkgconfig/gstreamer-rtsp.pc.in: * pkgconfig/gstreamer-sdp-uninstalled.pc.in: * pkgconfig/gstreamer-sdp.pc.in: * pkgconfig/gstreamer-tag-uninstalled.pc.in: * pkgconfig/gstreamer-tag.pc.in: * pkgconfig/gstreamer-video-uninstalled.pc.in: * pkgconfig/gstreamer-video.pc.in: Provide one pkg-config file for every gst-plugins-base library. This makes linking to those libraries much more intuitive and provides standard pkg-config behaviour for them. Fixes bug #499697. 2008-01-14 01:19:34 +0000 David Schleef <ds@schleef.org> gst/videoscale/vs_4tap.c: Fix valgrind error on 4tap scaling method. Original commit message from CVS: * gst/videoscale/vs_4tap.c: Fix valgrind error on 4tap scaling method. 2008-01-13 21:40:45 +0000 Sébastien Moutte <sebastien@moutte.net> gst-libs/gst/sdp/gstsdpmessage.c: Include Winsock2.h for VS6 and use a different way initialize hints structure so it... Original commit message from CVS: * gst-libs/gst/sdp/gstsdpmessage.c: (is_multicast_address): Include Winsock2.h for VS6 and use a different way initialize hints structure so it can build with VS6. * win32/MANIFEST: * win32/vs6/libgstsdp.dsp: * win32/common/libgstsdp.def: Add new files for libgstsdp. * win32/vs6/grammar.dsp: Copy pbutils-enumtypes* from win32/common to pbutils sources folder. * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstdecodebin.dsp: * win32/vs6/libgstdecodebin2.dsp: * win32/vs6/libgstplaybin.dsp: * win32/vs6/libgstvolume.dsp: Add new dependencies to the link list. 2008-01-13 17:24:49 +0000 Julien Moutte <julien@moutte.net> win32/common/: Update/Add generated files in the win32 build directory. Original commit message from CVS: 2008-01-13 Julien Moutte <julien@fluendo.com> * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: (gst_rtsp_result_get_type), (gst_rtsp_event_get_type), (gst_rtsp_family_get_type), (gst_rtsp_state_get_type), (gst_rtsp_version_get_type), (gst_rtsp_method_get_type), (gst_rtsp_auth_method_get_type), (gst_rtsp_header_field_get_type), (gst_rtsp_status_code_get_type): * win32/common/interfaces-enumtypes.c: (gst_color_balance_type_get_type), (gst_mixer_type_get_type), (gst_mixer_message_type_get_type), (gst_mixer_flags_get_type), (gst_mixer_track_flags_get_type), (gst_tuner_channel_flags_get_type): * win32/common/multichannel-enumtypes.c: (gst_audio_channel_position_get_type): * win32/common/pbutils-enumtypes.c: (gst_install_plugins_return_get_type): * win32/common/pbutils-enumtypes.h: Update/Add generated files in the win32 build directory. 2008-01-12 23:24:02 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/Makefile.am: Fix CFLAGS to also pull in the gstcheck cflags from AM_CFLAGS. Original commit message from CVS: * tests/check/Makefile.am: Fix CFLAGS to also pull in the gstcheck cflags from AM_CFLAGS. * tests/check/elements/audiorate.c: (do_perfect_stream_test): * tests/check/elements/playbin.c: * tests/check/libs/mixer.c: (test_element_interface_supported), (gst_implements_interface_init): * tests/check/libs/rtp.c: (GST_START_TEST): Fix various assignment type mismatches. 2008-01-12 23:08:28 +0000 Jan Schmidt <thaytan@mad.scientist.com> Add test to see if hstrerror is available or if we need libresolv (Solaris) for it, then use it in libgstrtsp. Original commit message from CVS: * configure.ac: * gst-libs/gst/rtsp/Makefile.am: Add test to see if hstrerror is available or if we need libresolv (Solaris) for it, then use it in libgstrtsp. 2008-01-12 14:54:51 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/tag/Makefile.am: Fix include path order Original commit message from CVS: * gst-libs/gst/tag/Makefile.am: Fix include path order 2008-01-11 17:15:23 +0000 Tim-Philipp Müller <tim@centricular.net> * gst-libs/gst/pbutils/.gitignore: Ignore more and make buildbot happy Original commit message from CVS: Ignore more and make buildbot happy 2008-01-11 16:18:10 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/pbutils/install-plugins.*: Add GBoxed GType for GstInstallPluginsContext, this eases the wrapping for bi... Original commit message from CVS: * gst-libs/gst/pbutils/install-plugins.c: (gst_install_plugins_context_copy), (gst_install_plugins_context_get_type): * gst-libs/gst/pbutils/install-plugins.h: Add GBoxed GType for GstInstallPluginsContext, this eases the wrapping for bindings. 2008-01-11 15:48:11 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: Adapt for post-alpha meaning of granulepos, when we have a newer version of libtheora. Original commit message from CVS: * ext/theora/theoradec.c: (gst_theora_dec_class_init), (_theora_granule_frame), (_theora_granule_start_time), (theora_dec_sink_convert), (theora_dec_decode_buffer): Adapt for post-alpha meaning of granulepos, when we have a newer version of libtheora. * ext/theora/theoraenc.c: (gst_theora_enc_class_init), (theora_enc_get_ogg_packet_end_time), (theora_enc_sink_event), (theora_enc_is_discontinuous), (theora_enc_chain): Likewise. * tests/check/Makefile.am: Link libtheora into theoraenc test so we can check which version of libtheora we're testing against. * tests/check/pipelines/theoraenc.c: (check_libtheora), (check_buffer_granulepos), (check_buffer_granulepos_from_starttime), (GST_START_TEST), (theoraenc_suite): Adapt tests to check the values that are now defined for theora; make the tests backwards-adapt the passed values if we're running against an old libtheora. Fixes #497964 2008-01-10 17:55:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/: Ref audio clock class from a thread-safe context to make sure however unlikely that may be in pr... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): Ref audio clock class from a thread-safe context to make sure we're not bit by GObjects lack of thread-safety here (#349410), however unlikely that may be in practice. 2008-01-10 12:22:46 +0000 Sebastian Dröge <slomo@circular-chaos.org> autogen.sh: Add -Wno-portability to the automake parameters to stop warnings about GNU make extensions being used. We... Original commit message from CVS: * autogen.sh: Add -Wno-portability to the automake parameters to stop warnings about GNU make extensions being used. We require GNU make in almost every Makefile anyway. * configure.ac: Use AM_PROG_CC_C_O as a compiler that accepts both -c and -o at the same time is required for per target flags. 2008-01-08 21:10:02 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gsttagdemux.c: Post an error message if we can't pull as many bytes as we need for the tag. This mak... Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: (gst_tag_demux_pull_start_tag): Post an error message if we can't pull as many bytes as we need for the tag. This makes sure the user gets to see a proper error message if a file with a partial ID3 tag is fed to decodebin, and not a 'no ID3 tag demuxer' error, which would be confusing (see #508138). 2008-01-08 20:59:20 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/descriptions.c: Add description strings for ID3, APE, and ICY tags. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (formats): Add description strings for ID3, APE, and ICY tags. 2008-01-08 20:48:00 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: Make sure we error out correctly if we can't activate one of the elements we've added. ... Original commit message from CVS: * gst/playback/gstdecodebin.c: (try_to_link_1): Make sure we error out correctly if we can't activate one of the elements we've added. Fixes #508138. 2008-01-07 13:59:43 +0000 Bastien Nocera <hadess@hadess.net> ext/alsa/gstalsamixer.c: Use snd_mixer_selem_set_{playback|capture}_volume_all() if the volume is the same for all ch... Original commit message from CVS: Patch by: Bastien Nocera <hadess at hadess net> * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_get_volume), (check_if_volumes_are_the_same), (gst_alsa_mixer_set_volume): Use snd_mixer_selem_set_{playback|capture}_volume_all() if the volume is the same for all channels. This works around some problem in alsa that leaves us with inconsistent state for some reason (#486840). 2008-01-07 13:19:50 +0000 Jerone Young <jerone@gmail.com> ext/alsa/gstalsamixer.c: If there's no mixer track by the name of 'Master' or 'Front', check if there's one called 'P... Original commit message from CVS: Patch by: Jerone Young <jerone at gmail com> * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_find_master_mixer): If there's no mixer track by the name of 'Master' or 'Front', check if there's one called 'PCM' before trying the generic fallback logic (fixes #506928, where we pick 'Mic' as master track for the AD1984 card in a Thinkpad T61/X61 laptop). 2008-01-07 11:40:04 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplay-enum.*: Add enums for configuration flags. Original commit message from CVS: * gst/playback/gstplay-enum.c: (register_gst_autoplug_select_result), (gst_autoplug_select_result_get_type), (register_gst_play_flags), (gst_play_flags_get_type): * gst/playback/gstplay-enum.h: Add enums for configuration flags. * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (init_group), (gst_play_bin_init), (gst_play_bin_set_property), (gst_play_bin_get_property), (no_more_pads_cb), (autoplug_select_cb), (gst_play_bin_change_state): Merge mode with flags. Add more property getters/setters, defaults and docs. Add properties to get number of audio/video/text streams. Create sink object in _init so that we can always rely on it being there. * gst/playback/gstplaysink.c: (gst_play_sink_init), (gen_video_chain), (gen_audio_chain), (gen_vis_chain), (activate_vis), (gst_play_sink_reconfigure), (gst_play_sink_set_flags), (gst_play_sink_get_flags), (gst_play_sink_change_state): * gst/playback/gstplaysink.h: Use flags to configure the sink pipelines. Add tee before audio pipeline so that we can use it for visualisations. Start working on integrating visualisations. Remove mode, we can do everything with the flags now. Add method to configue the sink pipeline. 2008-01-06 16:36:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> Update to GMemoryInputStream API changes in GLib SVN and require gio-2.0 >= 2.15.1 for this. Fixes bug #507584. Original commit message from CVS: * configure.ac: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_get_size): * tests/check/pipelines/gio.c: (free_input), (GST_START_TEST): Update to GMemoryInputStream API changes in GLib SVN and require gio-2.0 >= 2.15.1 for this. Fixes bug #507584. We can also report the duration for every GSeekable, not only GFileInputStream and GMemoryInputStream. 2008-01-06 14:39:19 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/theoraenc.c: Turn these functions into macros so we can see right away where the failure occured. Original commit message from CVS: * tests/check/pipelines/theoraenc.c: (check_buffer_is_header), (check_buffer_timestamp), (check_buffer_duration): Turn these functions into macros so we can see right away where the failure occured. 2008-01-05 22:25:05 +0000 Julien Moutte <julien@moutte.net> sys/xvimage/xvimagesink.c: Add debugging information to understand how X calculates the stride for XvImages. Original commit message from CVS: 2008-01-05 Julien Moutte <julien@fluendo.com> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new): Add debugging information to understand how X calculates the stride for XvImages. 2008-01-03 20:33:58 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/volume/: Use GstAudioFilter as base class for the volume element instead of plain GstBaseTransform. Original commit message from CVS: * gst/volume/Makefile.am: * gst/volume/gstvolume.c: (volume_choose_func), (gst_volume_base_init), (gst_volume_class_init), (gst_volume_init), (volume_setup): * gst/volume/gstvolume.h: Use GstAudioFilter as base class for the volume element instead of plain GstBaseTransform. 2008-01-03 07:17:05 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/gstaudiofilter.c: Don't set element details for the abstract GstAudioFilter class. Original commit message from CVS: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_get_type): Don't set element details for the abstract GstAudioFilter class. 2008-01-02 12:09:48 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/gstaudiofilter.c: Implement get_unit_size() vmethod of GstBaseTransform. Original commit message from CVS: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_class_init), (gst_audio_filter_get_unit_size): Implement get_unit_size() vmethod of GstBaseTransform. 2008-01-01 12:53:48 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/pbutils/: Use glib-enum generator to have a proper enum GType for Original commit message from CVS: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/pbutils.h: Use glib-enum generator to have a proper enum GType for GST_TYPE_INSTALL_PLUGINS_RETURN so we can easily wrap it in bindings. 2008-01-01 01:21:47 +0000 David Schleef <ds@schleef.org> tests/check/: Reenable theoraenc test, which fails on the buildbot but not locally. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/pipelines/theoraenc.c: Reenable theoraenc test, which fails on the buildbot but not locally. 2007-12-31 21:31:01 +0000 David Schleef <ds@schleef.org> docs/: Add *-undeclared.txt to fix buildbot. Original commit message from CVS: * docs/libs/.cvsignore: * docs/plugins/.cvsignore: Add *-undeclared.txt to fix buildbot. 2007-12-31 20:45:28 +0000 David Schleef <ds@schleef.org> tests/check/Makefile.am: Second attempt at disabling theoraenc test long enough to get buildbot to compile -base. Original commit message from CVS: * tests/check/Makefile.am: Second attempt at disabling theoraenc test long enough to get buildbot to compile -base. 2007-12-31 20:21:20 +0000 David Schleef <ds@schleef.org> tests/check/pipelines/theoraenc.c: Disable theoraenc test long enough to get the buildbot to compile a recent -base. Original commit message from CVS: * tests/check/pipelines/theoraenc.c: Disable theoraenc test long enough to get the buildbot to compile a recent -base. 2007-12-31 13:17:29 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Make sure we reset the slider value to 0.0 without racing against a possible g_idle that ... Original commit message from CVS: * tests/examples/seek/seek.c: (stop_cb): Make sure we reset the slider value to 0.0 without racing against a possible g_idle that sets it to something else. 2007-12-31 00:32:53 +0000 Thijs Vermeir <thijsvermeir@gmail.com> sys/ximage/ximagesink.c: fix typo Original commit message from CVS: * sys/ximage/ximagesink.c: fix typo 2007-12-30 19:21:16 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspdefs.*: Add Location header so that we can start implementing redirects. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspdefs.c: (rtsp_init_status): * gst-libs/gst/rtsp/gstrtspdefs.h: Add Location header so that we can start implementing redirects. See #506025. 2007-12-29 20:55:39 +0000 Thijs Vermeir <thijsvermeir@gmail.com> gst/subparse/gstssaparse.c: combine if's Original commit message from CVS: * gst/subparse/gstssaparse.c: combine if's 2007-12-29 19:23:59 +0000 Thijs Vermeir <thijsvermeir@gmail.com> gst/subparse/gstssaparse.c: remove duplicate log message Original commit message from CVS: * gst/subparse/gstssaparse.c: remove duplicate log message 2007-12-29 17:29:17 +0000 Sebastian Dröge <slomo@circular-chaos.org> Update to latest API changes in GLib/GIO and require at least gio-2.0 2.15.0 for this. Original commit message from CVS: * configure.ac: * ext/gio/gstgio.c: * ext/gio/gstgio.h: * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_get_size): * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosink.c: (gst_gio_sink_start): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.h: * ext/gio/gstgiostreamsink.h: * ext/gio/gstgiostreamsrc.h: * tests/check/pipelines/gio.c: Update to latest API changes in GLib/GIO and require at least gio-2.0 2.15.0 for this. * ext/gio/Makefile.am: Add GST_PLUGIN_LDFLAGS to LDFLAGS. 2007-12-29 16:23:23 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/libvisual/visual.c: Fix 'xyz may be used uninitialized' compiler warnings caused by broken g_assert_not_reached()... Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_chain): Fix 'xyz may be used uninitialized' compiler warnings caused by broken g_assert_not_reached() macro in GLib-2.15.x and don't abort() in any case but properly report the error. 2007-12-28 09:00:27 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin2.c: Code cleanups. Original commit message from CVS: * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (gst_play_bin_finalize), (gst_play_bin_set_uri), (gst_play_bin_set_suburi), (gst_play_bin_set_property), (gst_play_bin_get_property), (pad_removed_cb), (drained_cb), (autoplug_select_cb), (activate_group), (deactivate_group), (setup_next_source), (save_current_group), (gst_play_bin_change_state): Code cleanups. Remove next-uri, we can use the uri property just fine. Fix some crasher. Unref uridecodebin when switching. Fix going to READY. * gst/playback/gstplaysink.c: (gst_play_sink_class_init), (gst_play_sink_init), (gst_play_sink_dispose), (gst_play_sink_finalize), (gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked), (gst_play_sink_set_video_sink), (gst_play_sink_set_audio_sink), (gst_play_sink_set_vis_plugin), (gst_play_sink_set_property), (gst_play_sink_get_property), (gen_video_chain), (gen_text_element), (gen_audio_chain), (gen_vis_element), (gst_play_sink_get_mode), (gst_play_sink_set_mode), (gst_play_sink_set_flags), (gst_play_sink_get_flags), (gst_play_sink_request_pad), (gst_play_sink_release_pad), (gst_play_sink_send_event_to_sink), (gst_play_sink_change_state): * gst/playback/gstplaysink.h: Add some locking to make things threadsafe. * gst/playback/test7.c: (about_to_finish_cb): Fix test. 2007-12-23 06:22:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add new plugin rawparse that contains a base class for raw data parsers and the two elements audioparse and videopars... Original commit message from CVS: * configure.ac: * gst/rawparse/Makefile.am: * gst/rawparse/README: * gst/rawparse/gstaudioparse.c: (gst_audio_parse_format_get_type), (gst_audio_parse_endianness_get_type), (gst_audio_parse_base_init), (gst_audio_parse_class_init), (gst_audio_parse_init), (gst_audio_parse_set_property), (gst_audio_parse_get_property), (gst_audio_parse_update_frame_size), (gst_audio_parse_get_caps): * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawparse.c: (gst_raw_parse_base_init), (gst_raw_parse_class_init), (gst_raw_parse_init), (gst_raw_parse_dispose), (gst_raw_parse_class_set_src_pad_template), (gst_raw_parse_class_set_multiple_frames_per_buffer), (gst_raw_parse_reset), (gst_raw_parse_chain), (gst_raw_parse_convert), (gst_raw_parse_sink_event), (gst_raw_parse_src_event), (gst_raw_parse_src_query_type), (gst_raw_parse_src_query), (gst_raw_parse_set_framesize), (gst_raw_parse_set_fps), (gst_raw_parse_get_fps), (gst_raw_parse_is_negotiated): * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: (gst_video_parse_format_get_type), (gst_video_parse_endianness_get_type), (gst_video_parse_base_init), (gst_video_parse_class_init), (gst_video_parse_init), (gst_video_parse_set_property), (gst_video_parse_get_property), (gst_video_parse_format_to_fourcc), (gst_video_parse_update_frame_size), (gst_video_parse_get_caps): * gst/rawparse/gstvideoparse.h: * gst/rawparse/plugin.c: (plugin_init): Add new plugin rawparse that contains a base class for raw data parsers and the two elements audioparse and videoparse that can be used to parse raw audio and video. These are inspired by the old videoparse element which the new rawparse plugin deprecates. 2007-12-22 12:06:47 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videoscale/gstvideoscale.c: Don't claim to be able to handle/transform caps that can't really be handled by the c... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (gst_video_scale_set_property), (gst_video_scale_get_property), (gst_video_scale_transform_caps), (gst_video_scale_transform): Don't claim to be able to handle/transform caps that can't really be handled by the currently selected scaling method (here: RGB or packed YUV with 4-tap method). Also add locking to method property. * tests/check/pipelines/simple-launch-lines.c: (setup_pipeline), (test_basetransform_based): Some test pipelines for the above (not entirely valgrind clean yet apparently). 2007-12-22 05:19:00 +0000 David Schleef <ds@schleef.org> gst-libs/gst/video/video.*: Add additional RGBA and RGB-24 video formats. Original commit message from CVS: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: Add additional RGBA and RGB-24 video formats. 2007-12-21 22:46:56 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Don't use GST_PLUGIN_DEFINE_STATIC, it's not portable and will be deprecated in the future (see #498924). Original commit message from CVS: * tests/check/elements/playbin.c: (test_sink_usage_video_only_stream), (test_suburi_error_unknowntype), (test_suburi_error_invalidfile), (test_suburi_error_wrongproto), (test_missing_primary_decoder): * tests/check/libs/cddabasesrc.c: (GST_START_TEST), (GST_START_TEST), (cddabasesrc_suite): Don't use GST_PLUGIN_DEFINE_STATIC, it's not portable and will be deprecated in the future (see #498924). 2007-12-21 22:26:47 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gststreamselector.c: Don't leak event. Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_selector_pad_event): Don't leak event. 2007-12-20 19:43:25 +0000 Thijs Vermeir <thijsvermeir@gmail.com> gst-libs/gst/riff/riff-read.c: Use GST_ROUND_UP_2 macro Original commit message from CVS: * gst-libs/gst/riff/riff-read.c: Use GST_ROUND_UP_2 macro 2007-12-20 17:13:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/.cvsignore: Ignore more. Original commit message from CVS: * gst/playback/.cvsignore: Ignore more. 2007-12-20 10:41:29 +0000 Tim-Philipp Müller <tim@centricular.net> Make switching off of subtitles work. To avoid all kind of problems with unlinking of the subtitle input, we just kee... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init): * gst/playback/gstplaybasebin.c: (set_subtitles_visible), (set_active_source): * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: (gst_play_bin_class_init), (setup_sinks), (playbin_set_subtitles_visible): Make switching off of subtitles work. To avoid all kind of problems with unlinking of the subtitle input, we just keep the subtitle inputs linked as they are and tell textoverlay not to render them. Fixes #373011. Other subtitle switching issues (esp. when there are both external and in-stream subtitles) remain. They'll be solved in playbin2. 2007-12-18 16:21:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gststreamselector.c: Init the pad segment too. Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_selector_pad_init): Init the pad segment too. 2007-12-18 15:56:51 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Improve debug output. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func), (gst_audioringbuffer_open_device), (gst_audioringbuffer_close_device), (gst_audioringbuffer_acquire), (gst_audioringbuffer_release), (gst_audioringbuffer_start), (gst_audioringbuffer_pause), (gst_audioringbuffer_stop), (gst_audio_sink_create_ringbuffer): Improve debug output. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_start), (gst_ring_buffer_pause), (gst_ring_buffer_delay): Prevent some functions from doing things and failing when the ringbuffer is not yet acquired. 2007-12-18 15:32:49 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/interfaces/interfaces.h: Also remove interfaces.h from CVS as it is not needed anymore. Original commit message from CVS: * gst-libs/gst/interfaces/interfaces.h: Also remove interfaces.h from CVS as it is not needed anymore. 2007-12-18 15:20:12 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/interfaces/Makefile.am: interfaces.h is not used anymore so remove it from the build process. Original commit message from CVS: * gst-libs/gst/interfaces/Makefile.am: interfaces.h is not used anymore so remove it from the build process. 2007-12-18 01:01:23 +0000 David Schleef <ds@schleef.org> gst/videotestsrc/gstvideotestsrc.*: Add a "blink" pattern. Turn on the pain. Apologies. It's useful for testing ve... Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: Add a "blink" pattern. Turn on the pain. Apologies. It's useful for testing vertical refresh synchronization. 2007-12-18 00:13:26 +0000 David Schleef <ds@schleef.org> Add new GstVideFormat enum and write a bunch of helper functions based around it. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: * gst-libs/gst/video/video.h: Add new GstVideFormat enum and write a bunch of helper functions based around it. 2007-12-17 23:41:14 +0000 Tim-Philipp Müller <tim@centricular.net> Makefile.am: Use new common/win32.mak. Original commit message from CVS: * Makefile.am: Use new common/win32.mak. 2007-12-17 16:44:51 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Add debug info. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create), (gst_base_audio_src_change_state): Add debug info. When going from PLAYING to PAUSED, pause the ringbuffer before calling the parent state change function, just like the audiosink, because the parent waits for the element to finish its processing before completing the state change. This makes going to PAUSED a lot snappier. When going from READY to PAUSED, don't allow the ringbuffer to start yet. 2007-12-17 00:01:00 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Yet another fix for broken software that produce files with an empty blockalign field... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Yet another fix for broken software that produce files with an empty blockalign field. Instead of completely failing, make a second attempt at guessing the width/depth by looking at strf->size. 2007-12-16 23:52:58 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/: Turn a few g_assert_not_reached() into g_return_val_if_reached() to avoid compiler warnings (#503930). Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_do_seek), (gst_cdda_base_src_handle_track_seek), (gst_cdda_base_src_create): * gst-libs/gst/pbutils/install-plugins.c: (gst_install_plugins_spawn_child), (gst_install_plugins_supported): * gst-libs/gst/pbutils/missing-plugins.c: (gst_missing_plugin_message_get_installer_detail), (gst_missing_encoder_installer_detail_new): * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_send): * gst-libs/gst/rtsp/gstrtspmessage.c: (gst_rtsp_message_unset): Turn a few g_assert_not_reached() into g_return_val_if_reached() to avoid compiler warnings (#503930). 2007-12-16 23:46:16 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Be apologetic of software that use the 'jpeg' instead of 'JPEG' FOURCC for jpeg video... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Be apologetic of software that use the 'jpeg' instead of 'JPEG' FOURCC for jpeg video streams. Add the 'avc1'/'AVC1' fourcc mapping for h264, same software-comment as for the above modification. 2007-12-15 17:27:48 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/xoverlay.c: More guards (we don't want klass to end up being NULL). Original commit message from CVS: * gst-libs/gst/interfaces/xoverlay.c: (gst_x_overlay_expose), (gst_x_overlay_handle_events): More guards (we don't want klass to end up being NULL). 2007-12-15 03:40:34 +0000 Sebastian Dröge <slomo@circular-chaos.org> Use new gst_base_transform_set_gap_aware() function as volume correctly handles GST_BUFFER_FLAG_GAP. Require core 0.1... Original commit message from CVS: * configure.ac: * gst/volume/gstvolume.c: (gst_volume_init): Use new gst_base_transform_set_gap_aware() function as volume correctly handles GST_BUFFER_FLAG_GAP. Require core 0.10.15.1 for this. 2007-12-14 19:06:24 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Don't go to READY on EOS as this avoids testing of seeking and restarting after EOS, use ... Original commit message from CVS: * tests/examples/seek/seek.c: (msg_segment_done), (main): Don't go to READY on EOS as this avoids testing of seeking and restarting after EOS, use the stop button when you want to READY. Don't try to do a flushing seek in segment-done, it does not make sense to use this for gapless playback and is not needed. 2007-12-14 18:46:12 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Use separate timers for input and output rates. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_init), (gst_queue_finalize), (reset_rate_timer), (update_in_rates), (update_out_rates), (gst_queue_locked_enqueue), (gst_queue_locked_dequeue), (gst_queue_chain), (gst_queue_loop): Use separate timers for input and output rates. Pause measuring the output rate when we block for more data. See #503262. 2007-12-14 16:23:06 +0000 Christian Schaller <uraeus@gnome.org> * gst/speexresample/Makefile.am: update spec file and add two missing files for disting Original commit message from CVS: update spec file and add two missing files for disting 2007-12-14 09:24:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Pause the timer to measure the input rate when we block because the queue is filled. See #5... Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_chain): Pause the timer to measure the input rate when we block because the queue is filled. See #503262. 2007-12-13 15:54:00 +0000 Peter Kjellerstedt <pkj@axis.com> gst-libs/gst/rtsp/gstrtspconnection.c: Close control sockets. Fixes #503440. Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_free): Close control sockets. Fixes #503440. 2007-12-13 12:31:38 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Expose the right pad in the right place with the right element. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (analyze_new_pad), (connect_pad): Expose the right pad in the right place with the right element. 2007-12-13 11:40:10 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/descriptions.c: Add description for 'private' dts caps (who come up with that name?). Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (formats): Add description for 'private' dts caps (who come up with that name?). 2007-12-13 10:10:35 +0000 Tim-Philipp Müller <tim@centricular.net> Makefile.am: Add check-exports target and run it with 'make check'. Original commit message from CVS: * Makefile.am: Add check-exports target and run it with 'make check'. * configure.ac: Be stricter about what we export in our libraries: change regexp so that we only export _gst_foo(), but not __gst_foo(). * gst-libs/gst/cdda/base64.h: (rfc822_binary): * gst-libs/gst/cdda/sha1.h: (sha_init), (sha_update), (sha_final): Change internal functions to __gst_foo so they dont' get exported. * win32/common/libgstaudio.def: Add missing symbols. 2007-12-11 21:18:57 +0000 David Schleef <ds@schleef.org> * ChangeLog: ChangeLog: remove conflict markers Original commit message from CVS: ChangeLog: remove conflict markers 2007-12-11 17:14:13 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/: Use gst_tag_freeform_string_to_utf8() here, which also takes into account any character sets specified... Original commit message from CVS: * ext/gnomevfs/Makefile.am: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_unicodify): Use gst_tag_freeform_string_to_utf8() here, which also takes into account any character sets specified by the user via environment variables. 2007-12-10 15:21:41 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audioconvert/Makefile.am: Also link to libm. Original commit message from CVS: * gst/audioconvert/Makefile.am: Also link to libm. 2007-12-10 15:13:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-media.c: No need for floating point operations here. avoids having to link against the math li... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): No need for floating point operations here. avoids having to link against the math library too. 2007-12-10 11:16:25 +0000 Tim-Philipp Müller <tim@centricular.net> Add one or two missing formats. Generate ADPCM description dynamically depending on layout/format. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (formats), (format_info_get_desc): * tests/check/libs/pbutils.c: (GST_START_TEST), (caps_strings), (GST_START_TEST): Add one or two missing formats. Generate ADPCM description dynamically depending on layout/format. 2007-12-09 04:28:38 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: Don't define GST_DISABLE_DEPRECATED for releases. Fixes #498181. Original commit message from CVS: * configure.ac: Don't define GST_DISABLE_DEPRECATED for releases. Fixes #498181. 2007-12-08 18:38:39 +0000 Robin Stocker <robin.stocker@gmx.ch> gst/subparse/gstsubparse.c: Some .srt files start with chunk number 0 and not chunk number 1, recognise and accept th... Original commit message from CVS: Patch by: Robin Stocker <robin dot stocker at gmx dot ch> * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect): Some .srt files start with chunk number 0 and not chunk number 1, recognise and accept those as well (fixes #502497). * tests/check/elements/subparse.c: (srt_input), (srt_input0), (test_src): Add unit test for the above. 2007-12-06 12:08:21 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplay-enum.*: Add missing files. Original commit message from CVS: * gst/playback/gstplay-enum.c: (register_gst_autoplug_select_result), (gst_autoplug_select_result_get_type): * gst/playback/gstplay-enum.h: Add missing files. 2007-12-05 17:11:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/Makefile.am: Group decodebin2 and uridecodebin into the same plugin so that they can share the GEnumType. Original commit message from CVS: * gst/playback/Makefile.am: Group decodebin2 and uridecodebin into the same plugin so that they can share the GEnumType. * gst/playback/gstdecodebin2.c: (_gst_array_accumulator), (_gst_select_accumulator), (gst_decode_bin_class_init), (gst_decode_bin_init), (gst_decode_bin_autoplug_sort), (gst_decode_bin_autoplug_select), (gst_decode_bin_autoplug_add), (analyze_new_pad), (connect_pad), (gst_decode_bin_plugin_init): Add signal to sort factories instead of the more awkward autoplug-select signal. Modify autoplug_select so that we can try, skip or expose the autopluggin of an element on a pad. * gst/playback/gstfactorylists.c: (compare_ranks), (decoders_filter), (sinks_filter), (gst_factory_list_is_type), (element_filter), (gst_factory_list_get_elements), (gst_factory_list_debug), (gst_factory_list_filter): * gst/playback/gstfactorylists.h: Simplify the API, allow getting elements based on mask. * gst/playback/gstplay-marshal.list: Add some more marshallers. * gst/playback/gstplaybin2.c: (init_group), (gst_play_bin_init), (gst_play_bin_finalize), (pad_removed_cb), (autoplug_factories_cb), (autoplug_select_cb), (activate_group): Add support for managing non-raw sinks by providing a custom element and sink list to decodebin2. Try to plug non-raw sinks when decodebin2 using autoplug-select of decodebin2. * gst/playback/gstplaysink.c: (gen_video_chain), (gen_audio_chain), (gst_play_sink_set_mode), (gst_play_sink_request_pad): * gst/playback/gstplaysink.h: Add support for raw and non-raw sinks. Add support to force sinks selected by playbin2. Don't plug raw converters for non-raw sinks. * gst/playback/gsturidecodebin.c: (_gst_array_accumulator), (_gst_select_accumulator), (gst_uri_decode_bin_class_init), (proxy_autoplug_select_signal), (gst_uri_decode_bin_plugin_init), (plugin_init): Use right accumulators. Proxy new signal. 2007-12-03 13:47:00 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Use runnning time as the base time instead of the timestamp. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push): Use runnning time as the base time instead of the timestamp. Spotted by Saur on IRC. 2007-12-03 11:32:30 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Add 'WVC1' codec mapping for Windows Media VC-1 video codec. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Add 'WVC1' codec mapping for Windows Media VC-1 video codec. 2007-12-03 10:58:14 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: If we find a new serial number but it does not contain a BOS page, make sure we initialize the... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_bisect_forward_serialno), (gst_ogg_demux_read_chain): If we find a new serial number but it does not contain a BOS page, make sure we initialize the chain to NULL because else we will try to scan it and crash. Fixes #500763 2007-11-30 17:47:15 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Refactor some common code to filter factories and check caps compat. Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstfactorylists.c: (compare_ranks), (print_feature), (get_feature_array), (decoders_filter), (sinks_filter), (gst_factory_list_get_decoders), (gst_factory_list_get_sinks), (gst_factory_list_filter): * gst/playback/gstfactorylists.h: Refactor some common code to filter factories and check caps compat. * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init), (gst_decode_bin_init), (gst_decode_bin_dispose), (gst_decode_bin_autoplug_continue), (gst_decode_bin_autoplug_factories), (gst_decode_bin_autoplug_select), (analyze_new_pad), (find_compatibles): * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: (gst_play_bin_class_init), (gst_play_bin_init), (gst_play_bin_finalize), (autoplug_factories_cb), (activate_group): * gst/playback/gstqueue2.c: * gst/playback/gsturidecodebin.c: (proxy_unknown_type_signal), (proxy_autoplug_continue_signal), (proxy_autoplug_factories_signal), (proxy_autoplug_select_signal), (proxy_drained_signal): Add some more debug info and use factor filtering code. 2007-11-26 13:19:46 +0000 Julien Moutte <julien@moutte.net> configure.ac: Add QuickTime Wrapper plug-in. Original commit message from CVS: 2007-11-26 Julien Moutte <julien@fluendo.com> * configure.ac: Add QuickTime Wrapper plug-in. * gst/speexresample/gstspeexresample.c: (gst_speex_resample_push_drain), (gst_speex_resample_process): Fix build on Mac OS X Leopard. Incorrect printf format arguments. * sys/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/qtwrapper/audiodecoders.c: (qtwrapper_audio_decoder_base_init), (qtwrapper_audio_decoder_class_init), (qtwrapper_audio_decoder_init), (clear_AudioStreamBasicDescription), (fill_indesc_mp3), (fill_indesc_aac), (fill_indesc_samr), (fill_indesc_generic), (make_samr_magic_cookie), (open_decoder), (qtwrapper_audio_decoder_sink_setcaps), (process_buffer_cb), (qtwrapper_audio_decoder_chain), (qtwrapper_audio_decoder_sink_event), (qtwrapper_audio_decoders_register): * sys/qtwrapper/codecmapping.c: (audio_caps_from_string), (fourcc_to_caps): * sys/qtwrapper/codecmapping.h: * sys/qtwrapper/imagedescription.c: (image_description_for_avc1), (image_description_for_mp4v), (image_description_from_stsd_buffer), (image_description_from_codec_data): * sys/qtwrapper/imagedescription.h: * sys/qtwrapper/qtutils.c: (get_name_info_from_component), (get_output_info_from_component), (dump_avcc_atom), (dump_image_description), (dump_codec_decompress_params), (addSInt32ToDictionary), (dump_cvpixel_buffer), (DestroyAudioBufferList), (AllocateAudioBufferList): * sys/qtwrapper/qtutils.h: * sys/qtwrapper/qtwrapper.c: (plugin_init): * sys/qtwrapper/qtwrapper.h: * sys/qtwrapper/videodecoders.c: (qtwrapper_video_decoder_base_init), (qtwrapper_video_decoder_class_init), (qtwrapper_video_decoder_init), (qtwrapper_video_decoder_finalize), (fill_image_description), (new_image_description), (close_decoder), (open_decoder), (qtwrapper_video_decoder_sink_setcaps), (decompressCb), (qtwrapper_video_decoder_chain), (qtwrapper_video_decoder_sink_event), (qtwrapper_video_decoders_register): Initial import of QuickTime wrapper jointly developped by Songbird authors (Pioneers of the Inevitable) and Fluendo. 2007-11-26 12:25:55 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/: Add GAP-flag support. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: Add GAP-flag support. 2007-11-26 08:43:25 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/: Update speex resampler to latest SVN. We're now down to only the changes noted in README again. Original commit message from CVS: * gst/speexresample/README: * gst/speexresample/arch.h: * gst/speexresample/resample.c: (resampler_basic_direct_single), (resampler_basic_direct_double), (resampler_basic_interpolate_single), (resampler_basic_interpolate_double), (speex_resampler_process_native), (speex_resampler_process_float), (speex_resampler_process_int), (speex_resampler_process_interleaved_float), (speex_resampler_process_interleaved_int), (speex_resampler_get_input_latency), (speex_resampler_get_output_latency): * gst/speexresample/speex_resampler.h: Update speex resampler to latest SVN. We're now down to only the changes noted in README again. * gst/speexresample/speex_resampler_wrapper.h: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_push_drain), (gst_speex_resample_query): Adjust to API changes. 2007-11-24 15:02:01 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Increase the range of the rate selector as I would like to test QOS behavior at higher fo... Original commit message from CVS: 2007-11-24 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (main): Increase the range of the rate selector as I would like to test QOS behavior at higher forward and reverse playback speed like say 64x. 2007-11-23 10:21:31 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Only post the latency message if we have a resampler state already. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_update_state): Only post the latency message if we have a resampler state already. 2007-11-23 10:21:11 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioresample/gstaudioresample.c: Implement latency query. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (audioresample_query), (audioresample_query_type), (gst_audioresample_set_property): Implement latency query. 2007-11-23 10:01:33 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Also post GST_MESSAGE_LATENCY if the latency changes. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_update_state): Also post GST_MESSAGE_LATENCY if the latency changes. 2007-11-23 08:48:50 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/: Add functions to push the remaining samples and to get the latency of the resampler. These will g... Original commit message from CVS: * gst/speexresample/resample.c: (speex_resampler_get_latency), (speex_resampler_drain_float), (speex_resampler_drain_int), (speex_resampler_drain_interleaved_float), (speex_resampler_drain_interleaved_int): * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_wrapper.h: Add functions to push the remaining samples and to get the latency of the resampler. These will get added to Speex SVN in this or a slightly changed form at some point too and should get merged then again. * gst/speexresample/gstspeexresample.c: (gst_speex_resample_init), (gst_speex_resample_init_state), (gst_speex_resample_transform_size), (gst_speex_resample_push_drain), (gst_speex_resample_event), (gst_speex_fix_output_buffer), (gst_speex_resample_process), (gst_speex_resample_query), (gst_speex_resample_query_type): Drop the prepending zeroes and output the remaining samples on EOS. Also properly implement the latency query for this. speexresample should be completely ready for production use now. 2007-11-21 18:02:21 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Our EOS time contains the base_time, _wait_eos() expects a running_time so we ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_drain): Our EOS time contains the base_time, _wait_eos() expects a running_time so we have to subtract the base_time again before calling the function. This fixes an EOS regression where the base_time was added twice and EOS took longer and longer in certain situations. Fixes #498767. 2007-11-21 13:04:17 +0000 Wim Taymans <wim.taymans@gmail.com> Expose methods for some object properties so that subclasses can more easily configure them. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstbaseaudiosink.c: (slave_method_get_type), (gst_base_audio_sink_set_provide_clock), (gst_base_audio_sink_get_provide_clock), (gst_base_audio_sink_set_slave_method), (gst_base_audio_sink_get_slave_method), (gst_base_audio_sink_set_property), (gst_base_audio_sink_get_property), (gst_base_audio_sink_drain), (gst_base_audio_sink_none_slaving), (gst_base_audio_sink_handle_slaving): * gst-libs/gst/audio/gstbaseaudiosink.h: Expose methods for some object properties so that subclasses can more easily configure them. Added slave method none, that completely disables slaving to the internal clock. API: gst_base_audio_sink_set_provide_clock() API: gst_base_audio_sink_get_provide_clock() API: gst_base_audio_sink_set_slave_method() API: gst_base_audio_sink_get_slave_method() * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_set_provide_clock), (gst_base_audio_src_get_provide_clock), (gst_base_audio_src_set_property), (gst_base_audio_src_get_property), (gst_base_audio_src_create): * gst-libs/gst/audio/gstbaseaudiosrc.h: Expose methods for some object properties so that subclasses can more easily configure them. API: gst_base_audio_src_set_provide_clock() API: gst_base_audio_src_get_provide_clock() 2007-11-21 10:18:56 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/README: Add README explaining where the resampling code was taken from and which changes were done. Original commit message from CVS: * gst/speexresample/README: Add README explaining where the resampling code was taken from and which changes were done. * gst/speexresample/resample.c: (speex_alloc), (speex_realloc), (speex_free): Use g_malloc() and friends instead of malloc() to achieve higher portability and define the functions inline. * gst/speexresample/speex_resampler.h: Add back some useless preprocessor stuff to keep the diff between our version and the one from the Speex SVN repository lower. 2007-11-20 20:23:25 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: Some small cleanup and addition of a TODO item. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_fix_output_buffer), (gst_speex_resample_transform): Some small cleanup and addition of a TODO item. 2007-11-20 12:56:00 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/Makefile.am: Add missing file. Original commit message from CVS: * gst/speexresample/Makefile.am: Add missing file. 2007-11-20 07:53:56 +0000 Joe Peterson <lavajoe@gentoo.org> gst-libs/gst/sdp/gstsdpmessage.c: Fix compilation on FreeBSD (Gentoo). Fixes #498228. Original commit message from CVS: Patch by: Joe Peterson <lavajoe at gentoo dot org> * gst-libs/gst/sdp/gstsdpmessage.c: Fix compilation on FreeBSD (Gentoo). Fixes #498228. 2007-11-20 07:47:27 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add speexresample to the docs and while at that do a make update. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/speexresample/gstspeexresample.h: Add speexresample to the docs and while at that do a make update. 2007-11-20 07:30:30 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/speexresample/gstspeexresample.c: If the resampler gives less output samples than expected adjust the output buff... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_fix_output_buffer), (gst_speex_resample_process): If the resampler gives less output samples than expected adjust the output buffer and print a warning. 2007-11-20 07:02:45 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add resample element based on the Speex resampling algorithm. Original commit message from CVS: * configure.ac: * gst/speexresample/arch.h: * gst/speexresample/fixed_generic.h: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_base_init), (gst_speex_resample_class_init), (gst_speex_resample_init), (gst_speex_resample_start), (gst_speex_resample_stop), (gst_speex_resample_get_unit_size), (gst_speex_resample_transform_caps), (gst_speex_resample_init_state), (gst_speex_resample_update_state), (gst_speex_resample_reset_state), (gst_speex_resample_parse_caps), (gst_speex_resample_transform_size), (gst_speex_resample_set_caps), (gst_speex_resample_event), (gst_speex_resample_check_discont), (gst_speex_resample_process), (gst_speex_resample_transform), (gst_speex_resample_set_property), (gst_speex_resample_get_property), (plugin_init): * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: (speex_alloc), (speex_realloc), (speex_free), (compute_func), (main), (sinc), (cubic_coef), (resampler_basic_direct_single), (resampler_basic_direct_double), (resampler_basic_interpolate_single), (resampler_basic_interpolate_double), (update_filter), (speex_resampler_init), (speex_resampler_init_frac), (speex_resampler_destroy), (speex_resampler_process_native), (speex_resampler_process_float), (speex_resampler_process_int), (speex_resampler_process_interleaved_float), (speex_resampler_process_interleaved_int), (speex_resampler_set_rate), (speex_resampler_get_rate), (speex_resampler_set_rate_frac), (speex_resampler_get_ratio), (speex_resampler_set_quality), (speex_resampler_get_quality), (speex_resampler_set_input_stride), (speex_resampler_get_input_stride), (speex_resampler_set_output_stride), (speex_resampler_get_output_stride), (speex_resampler_skip_zeros), (speex_resampler_reset_mem), (speex_resampler_strerror): * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_float.c: * gst/speexresample/speex_resampler_int.c: * gst/speexresample/speex_resampler_wrapper.h: Add resample element based on the Speex resampling algorithm. 2007-11-19 12:30:22 +0000 Sebastian Dröge <slomo@circular-chaos.org> tests/check/libs/fft.c: Fix scaling to really have dB instead of something else. Original commit message from CVS: * tests/check/libs/fft.c: (GST_START_TEST): Fix scaling to really have dB instead of something else. 2007-11-19 12:08:16 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: There's a nice macro to check Original commit message from CVS: 2007-11-19 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (main): There's a nice macro to check GTK version, use it. 2007-11-19 11:59:20 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Try to support stable version of GTK. Original commit message from CVS: 2007-11-19 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (main): Try to support stable version of GTK. 2007-11-17 15:25:15 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/: Fix the build + little README update. Original commit message from CVS: * gst/playback/README: * gst/playback/test7.c: Fix the build + little README update. 2007-11-16 16:02:45 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add playbin2 seek pipeline. Original commit message from CVS: * tests/examples/seek/seek.c: (make_playerbin2_pipeline), (main): Add playbin2 seek pipeline. 2007-11-16 15:44:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Add playbin2. Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstplayback.c: (plugin_init): * gst/playback/test7.c: (update_scale), (warning_cb), (error_cb), (eos_cb), (about_to_finish_cb), (main): Add playbin2. Added gapless playback example. * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: (gst_play_bin_plugin_init): * gst/playback/gstqueue2.c: * gst/playback/test.c: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init), (pad_removed_cb): * gst/playback/gststreaminfo.h: Change email. * gst/playback/gstplaybin2.c: (gst_play_bin_get_type), (gst_play_bin_class_init), (init_group), (gst_play_bin_init), (gst_play_bin_dispose), (gst_play_bin_set_uri), (gst_play_bin_set_suburi), (gst_play_bin_set_property), (gst_play_bin_get_property), (gst_play_bin_handle_message), (pad_added_cb), (pad_removed_cb), (no_more_pads_cb), (perform_eos), (drained_cb), (unlink_group), (activate_group), (setup_next_source), (gst_play_bin_change_state), (gst_play_bin2_plugin_init): Added raw first version of playbin2. Does chained oggs and gapless playback fine. No support for raw sinks yet. No visualisations or subtitles yet. * gst/playback/gstplaysink.c: (gst_play_sink_get_type), (gst_play_sink_class_init), (gst_play_sink_init), (gst_play_sink_dispose), (gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked), (gst_play_sink_set_video_sink), (gst_play_sink_set_audio_sink), (gst_play_sink_set_vis_plugin), (gst_play_sink_set_property), (gst_play_sink_get_property), (post_missing_element_message), (free_chain), (add_chain), (activate_chain), (gen_video_chain), (gen_text_element), (gen_audio_chain), (gen_vis_element), (gst_play_sink_get_mode), (gst_play_sink_set_mode), (gst_play_sink_request_pad), (gst_play_sink_release_pad), (gst_play_sink_send_event_to_sink), (gst_play_sink_send_event), (gst_play_sink_change_state): * gst/playback/gstplaysink.h: Added Element that abstracts the sinks and their pipelines for playbin2. 2007-11-16 15:05:07 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gststreamselector.*: Improve streamselector, make it select and unselect the current pad more intelligen... Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_selector_pad_get_type), (gst_selector_pad_class_init), (gst_selector_pad_init), (gst_selector_pad_finalize), (gst_selector_pad_reset), (gst_selector_pad_get_linked_pads), (gst_selector_pad_event), (gst_selector_pad_getcaps), (gst_selector_pad_bufferalloc), (gst_selector_pad_chain), (gst_stream_selector_get_type), (gst_stream_selector_base_init), (gst_stream_selector_class_init), (gst_stream_selector_init), (gst_stream_selector_set_property), (gst_stream_selector_get_linked_pad), (gst_stream_selector_getcaps), (gst_stream_selector_is_active_sinkpad), (gst_stream_selector_activate_sinkpad), (gst_stream_selector_get_linked_pads), (gst_stream_selector_request_new_pad), (gst_stream_selector_release_pad): * gst/playback/gststreamselector.h: Improve streamselector, make it select and unselect the current pad more intelligently. Subclass GstPad for the sinkpads of the selector. Handle segments more correctly. Fix caps negotiation. Implement release_pad. 2007-11-16 12:51:44 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Add drained signal fired when decodebin finishes decoding the data. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init), (gst_decode_group_check_if_drained), (source_pad_event_probe), (remove_fakesink): Add drained signal fired when decodebin finishes decoding the data. Remove deprecated STATE_DIRTY message. * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init), (unknown_type_cb), (new_decoded_pad_cb), (pad_removed_cb), (analyse_source), (proxy_drained_signal), (make_decoder), (source_new_pad), (value_list_append_structure_list), (handle_redirect_message), (handle_message): Proxy the new drained signal. Handle pad removed from decodebin. Handle redirect messages by sorting multiple redirections based on the connection speed. 2007-11-16 11:22:09 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> gst-libs/gst/rtsp/gstrtspmessage.c: Fix leaking headers. Fixes #496761. Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst-libs/gst/rtsp/gstrtspmessage.c: (gst_rtsp_message_unset): Fix leaking headers. Fixes #496761. 2007-11-16 11:16:58 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> sys/: Don't leak the PAR on errors. Fixes #496731. Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get), (gst_ximagesink_change_state): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get): Don't leak the PAR on errors. Fixes #496731. 2007-11-16 10:14:34 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstid3tag.c: Add mapping for audio cd discid tags, so we can extract them from tags as well (see #34... Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: (user_tag_matches), (gst_tag_from_id3_user_tag): Add mapping for audio cd discid tags, so we can extract them from tags as well (see #347848). Also compare identifiers in ID3v2 TXXX frames in a case-insensitive way to increase compatibility when reading tags (discid vs. DiscID vs. DiscId). 2007-11-16 01:21:40 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-plugins-base.doap: Oops, fix the release name. Original commit message from CVS: * gst-plugins-base.doap: Oops, fix the release name. 2007-11-16 00:44:58 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-plugins-base.doap: Add 0.10.15 release Original commit message from CVS: * gst-plugins-base.doap: Add 0.10.15 release 2007-11-16 00:24:55 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.15 === 2007-11-16 00:14:33 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: releasing 0.10.15, "No need to argue" Original commit message from CVS: === release 0.10.15 === 2007-11-15 Jan Schmidt <jan.schmidt@sun.com> * configure.ac: releasing 0.10.15, "No need to argue" 2007-11-16 00:04:24 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2007-11-15 21:40:53 +0000 Jan Schmidt <thaytan@mad.scientist.com> win32/vs6/libgstfft.dsp: Convert line endings to DOS. Original commit message from CVS: * win32/vs6/libgstfft.dsp: Convert line endings to DOS. 2007-11-15 21:14:04 +0000 Sébastien Moutte <sebastien@moutte.net> win32/: Add a project file for fft plugin and remove socket based plugin which don't build from the workspace.* win32... Original commit message from CVS: * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstfft.dsp: * win32/MANIFEST: Add a project file for fft plugin and remove socket based plugin which don't build from the workspace.* win32/vs6/libgstaudio.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgsttag.dsp: Convert line endings back to DOS. Fixes #496724 2007-11-14 12:27:13 +0000 Jan Schmidt <thaytan@mad.scientist.com> win32/vs6/: Convert line endings back to DOS Original commit message from CVS: * win32/vs6/libgstinterfaces.dsp: * win32/vs6/libgstrtsp.dsp: Convert line endings back to DOS 2007-11-14 11:08:48 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/fft/: Don't include malloc.h which doesn't exist on Mac OSX. Original commit message from CVS: * gst-libs/gst/fft/kiss_fft_f32.h: * gst-libs/gst/fft/kiss_fft_f64.h: * gst-libs/gst/fft/kiss_fft_s16.h: * gst-libs/gst/fft/kiss_fft_s32.h: Don't include malloc.h which doesn't exist on Mac OSX. Instead, pull in glib.h and use g_malloc/g_free for consistency. Fixes: #496548 2007-11-09 15:54:45 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gstdecodebin2.c: Dont leak ghostpad. Fixes #475451. Original commit message from CVS: * gst/playback/gstdecodebin2.c: Dont leak ghostpad. Fixes #475451. 2007-11-09 12:21:52 +0000 Wim Taymans <wim.taymans@gmail.com> Update some more docs and comments. Original commit message from CVS: * docs/design/design-decodebin.txt: * gst/playback/gstdecodebin2.c: (analyze_new_pad): Update some more docs and comments. 2007-11-07 16:47:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> Require GIO >= 0.1.2 and adjust unit test for an API change. Original commit message from CVS: * configure.ac: * tests/check/pipelines/gio.c: (GST_START_TEST): Require GIO >= 0.1.2 and adjust unit test for an API change. 2007-11-07 15:18:54 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.h: Add macro to check if a stream supports seeking. Original commit message from CVS: * ext/gio/gstgio.h: Add macro to check if a stream supports seeking. * ext/gio/Makefile.am: * ext/gio/gstgiobasesink.c: (gst_gio_base_sink_base_init), (gst_gio_base_sink_class_init), (gst_gio_base_sink_init), (gst_gio_base_sink_finalize), (gst_gio_base_sink_start), (gst_gio_base_sink_stop), (gst_gio_base_sink_unlock), (gst_gio_base_sink_unlock_stop), (gst_gio_base_sink_event), (gst_gio_base_sink_render), (gst_gio_base_sink_query), (gst_gio_base_sink_set_stream): * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_base_init), (gst_gio_base_src_class_init), (gst_gio_base_src_init), (gst_gio_base_src_finalize), (gst_gio_base_src_start), (gst_gio_base_src_stop), (gst_gio_base_src_get_size), (gst_gio_base_src_is_seekable), (gst_gio_base_src_unlock), (gst_gio_base_src_unlock_stop), (gst_gio_base_src_check_get_range), (gst_gio_base_src_create), (gst_gio_base_src_set_stream): * ext/gio/gstgiobasesrc.h: Refactor common GIO functions to GstGioBaseSink and GstGioBaseSrc base classes that only require a GInputStream or GOutputStream to work. * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_class_init), (gst_gio_sink_init), (gst_gio_sink_finalize), (gst_gio_sink_start): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_class_init), (gst_gio_src_init), (gst_gio_src_finalize), (gst_gio_src_start): * ext/gio/gstgiosrc.h: Use the newly created base classes here. * ext/gio/gstgio.c: (plugin_init): * ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_base_init), (gst_gio_stream_sink_class_init), (gst_gio_stream_sink_init), (gst_gio_stream_sink_finalize), (gst_gio_stream_sink_set_property), (gst_gio_stream_sink_get_property): * ext/gio/gstgiostreamsink.h: * ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_base_init), (gst_gio_stream_src_class_init), (gst_gio_stream_src_init), (gst_gio_stream_src_finalize), (gst_gio_stream_src_set_property), (gst_gio_stream_src_get_property): * ext/gio/gstgiostreamsrc.h: Implement GstGioStreamSink and GstGioStreamSrc that have a property to set the GInputStream/GOutputStream that should be used. * tests/check/Makefile.am: * tests/check/pipelines/.cvsignore: * tests/check/pipelines/gio.c: (message_handler), (GST_START_TEST), (gio_testsuite), (main): Add unit test for giostreamsrc and giostreamsink. 2007-11-07 11:48:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Remove nowadays unnecessary workaround for a crash. Original commit message from CVS: * ext/gio/gstgio.c: (plugin_init): Remove nowadays unnecessary workaround for a crash. * ext/gio/gstgiosink.c: (gst_gio_sink_finalize), (gst_gio_sink_start), (gst_gio_sink_stop), (gst_gio_sink_unlock_stop): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_finalize), (gst_gio_src_start), (gst_gio_src_stop), (gst_gio_src_unlock_stop): * ext/gio/gstgiosrc.h: Make the finalize function safer, clean up everything that could stay around. Reset the cancellable instead of creating a new one after cancelling some operation. Don't store the GFile in the element, it's only necessary for creating the streams. 2007-11-06 23:35:39 +0000 Sebastien Moutte <sebastien@moutte.net> gst-libs/gst/rtp/: Fix some C99-isms and and a missing function that some versions of Original commit message from CVS: Patch by: Sebastien Moutte <sebastien moutte net> * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_ntp_to_unix), (gst_rtcp_unix_to_ntp): * gst-libs/gst/rtp/gstrtppayloads.c: (gst_rtp_payload_info_for_name): Fix some C99-isms and and a missing function that some versions of MSVC don't like too much (#494346). * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstaudio.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgsttag.dsp: Update vs6 projects files (#494346). 2007-11-06 16:38:49 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> win32/common/: More missing symbols to export (fixes #493986). Original commit message from CVS: Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> * win32/common/libgstaudio.def: * win32/common/libgstcdda.def: * win32/common/libgstinterfaces.def: * win32/common/libgstnetbuffer.def: * win32/common/libgstpbutils.def: * win32/common/libgstrtp.def: * win32/common/libgstrtsp.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: More missing symbols to export (fixes #493986). 2007-11-06 11:58:59 +0000 Sebastian Dröge <slomo@circular-chaos.org> Remove the magnitude and phase calculation functions as these have very special use cases and can't even be used for ... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/fft/gstfftf32.c: * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.c: * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.c: * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.c: * gst-libs/gst/fft/gstffts32.h: * tests/check/libs/fft.c: (GST_START_TEST): Remove the magnitude and phase calculation functions as these have very special use cases and can't even be used for the spectrum element. Also adjust the docs to mention some properties of the used FFT implemention, i.e. how the values are scaled. Fixes #492098. 2007-11-06 11:09:30 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Avoid crash when there are external subtitles (fixes #491722). Original commit message from CVS: * gst/playback/gstplaybasebin.c: (queue_threshold_reached), (finish_source): Avoid crash when there are external subtitles (fixes #491722). 2007-11-03 10:39:21 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/: 'Could not open resource for writing' is not an acceptable even less so when we're trying to open it to re... Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_open): * ext/alsa/gstalsasrc.c: (gst_alsasrc_open): 'Could not open resource for writing' is not an acceptable error message when we can't open the audio device (see #492334), even less so when we're trying to open it to record something. 2007-11-02 21:03:01 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> win32/common/libgstrtp.def: Add some more missing symbols (#492813). Original commit message from CVS: Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> * win32/common/libgstrtp.def: Add some more missing symbols (#492813). 2007-11-02 14:59:06 +0000 Thijs Vermeir <thijsvermeir@gmail.com> tests/check/elements/audioconvert.c: Add check to make sure that the out caps have a channel layout set on them where... Original commit message from CVS: Patch by: Thijs Vermeir <thijsvermeir@gmail.com> * tests/check/elements/audioconvert.c: (verify_convert): Add check to make sure that the out caps have a channel layout set on them where they should have one. 2007-11-01 13:28:59 +0000 Vincent Torri <vtorri@univ-evry.fr> gst-libs/gst/fft/: Include our own _stdint.h instead of sys/types.h, makes MingW happy (#492306). Original commit message from CVS: Patch by: Vincent Torri <vtorri at univ-evry dot fr> * gst-libs/gst/fft/kiss_fft_s16.h: (KISS_FFT_S16_MALLOC): * gst-libs/gst/fft/kiss_fft_s32.h: (KISS_FFT_S32_MALLOC): Include our own _stdint.h instead of sys/types.h, makes MingW happy (#492306). * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_create): Use _pipe directly, GLib doesn't have a pipe() macro any longer (it disappeared in GLib 2.14.0) (#492306). * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstsdpmessage.c: Fix includes and LIBS for win32/Mingw (#492306). * tests/examples/dynamic/addstream.c (pause_play_stream): Use more portable g_usleep() instead of sleep() (#492306). 2007-11-01 12:51:57 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> gst-libs/gst/audio/gstringbuffer.c: Return NULL instead of an enum that happens to be 0, fixes warning on MSVC (#4921... Original commit message from CVS: Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> * gst-libs/gst/audio/gstringbuffer.c: (build_linear_format), (gst_ring_buffer_parse_caps): Return NULL instead of an enum that happens to be 0, fixes warning on MSVC (#492114). * gst-libs/gst/audio/gstringbuffer.h: No trailing commas in enum list (for gcc-2.9x). * gst/videotestsrc/videotestsrc.c: (random_char): Make information loss explicit instead of implicitly truncating to eight bits via the return value. Fixes runtime error on MSVC when using the debug CRT (#492114). * win32/common/config.h.in: Fix a bunch of '#undef FOO bar', which MSVC doesn't like (#492114). * win32/common/libgstinterfaces.def: * win32/common/libgstrtp.def: Export a few more symbols (#492114). 2007-11-01 08:06:13 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/audio.*: Readd the deprecation guards, but preserve compilability. Original commit message from CVS: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: Readd the deprecation guards, but preserve compilability. 2007-10-31 17:54:48 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/gstaudioconvert.c: Preserve channel layout when fixating the number of channels in the output caps, ... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (find_suitable_channel_layout), (gst_audio_convert_fixate_channels), (gst_audio_convert_fixate_caps): Preserve channel layout when fixating the number of channels in the output caps, or make sure there's a suitable channel position layout set on the caps if required. Fixes #430677. 2007-10-31 17:32:22 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/decodebin.c: Make sure the pipeline really operates in push mode as it should in this case. Original commit message from CVS: * tests/check/elements/decodebin.c: (test_text_plain_streams): Make sure the pipeline really operates in push mode as it should in this case. 2007-10-31 15:30:15 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/audio.h: Don't guard deprecated enum with #ifndef DISABLE_DEPRECATED, or compilation with DISABLE_... Original commit message from CVS: * gst-libs/gst/audio/audio.h: Don't guard deprecated enum with #ifndef DISABLE_DEPRECATED, or compilation with DISABLE_DEPRECATED and without REMOVE_DEPRECATED (ie. normal cvs builds) will fail. 2007-10-31 12:47:41 +0000 Stefan Kost <ensonic@users.sourceforge.net> tell gtk-doc about the deprecation guard. Apply more doc fixes. Original commit message from CVS: * docs/libs/Makefile.am: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/audio.h: * gst-libs/gst/interfaces/mixer.c: tell gtk-doc about the deprecation guard. Apply more doc fixes. 2007-10-31 12:30:28 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/audio.c: Add simple unit test to make sure GstValue intersection of channel layouts works the way I ... Original commit message from CVS: * tests/check/libs/audio.c: (init_value_to_channel_layout), (test_channel_layout_value_intersect), (audio_suite): Add simple unit test to make sure GstValue intersection of channel layouts works the way I think it does. 2007-10-30 20:32:14 +0000 Stefan Kost <ensonic@users.sourceforge.net> Fix the docs according to what gtk-doc complained about. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/sdp/gstsdpmessage.c: Fix the docs according to what gtk-doc complained about. 2007-10-30 19:46:02 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/icles/stress-playbin.c: Fix the build. Original commit message from CVS: * tests/icles/stress-playbin.c: Fix the build. 2007-10-30 15:54:46 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Post nice/more useful error message if we don't have a decoder for the primary type. Original commit message from CVS: * gst/playback/gstdecodebin.c: (close_pad_link), (type_found): * gst/playback/gstdecodebin2.c: (analyze_new_pad): Post nice/more useful error message if we don't have a decoder for the primary type. 2007-10-30 15:07:58 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Be a bit more useful, unblock the pads after we fired the no-more-pads signal so that w... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_group_expose): Be a bit more useful, unblock the pads after we fired the no-more-pads signal so that we can use the signal to inspect and connect all pads without having to keep extra state outside of decodebin. 2007-10-30 15:00:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gsturidecodebin.c: Implement default signal handler so that we return TRUE when nothing is connected. Original commit message from CVS: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_autoplug_continue), (gst_uri_decode_bin_class_init), (no_more_pads_full): Implement default signal handler so that we return TRUE when nothing is connected. 2007-10-28 11:53:36 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: Use the ALSA channel layout as default for wav files without channel layout informati... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_wavext_add_channel_layout), (gst_riff_wave_add_default_channel_layout), (gst_riff_wavext_get_default_channel_mask), (gst_riff_create_audio_caps): Use the ALSA channel layout as default for wav files without channel layout information. This fixes playback of chan-id.wav on 5.1 systems for example. Also refactor the channel layout setting a bit and add more default channel orders. Fixes #489010. 2007-10-28 11:46:48 +0000 Sebastian Dröge <slomo@circular-chaos.org> * ChangeLog: Use the ALSA channel layout as default for wav files without channel layout information. This fixes playback of chan-... Original commit message from CVS: (gst_riff_wavext_add_channel_layout), (gst_riff_wave_add_default_channel_layout), (gst_riff_wavext_get_default_channel_mask), (gst_riff_create_audio_caps): Use the ALSA channel layout as default for wav files without channel layout information. This fixes playback of chan-id.wav on 5.1 systems for example. Also refactor the channel layout setting a bit and add more default channel orders. Fixes #489010. 2007-10-26 18:57:33 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/tag.c: GST_TAG_MUSICBRAINZ_SORTNAME is deprecated and we compile with Original commit message from CVS: * tests/check/libs/tag.c: (test_musicbrainz_tag_registration): GST_TAG_MUSICBRAINZ_SORTNAME is deprecated and we compile with -DGST_DISABLE_DEPRECATED, so use new GST_TAG_ARTIST_SORTNAME instead. 2007-10-26 12:07:14 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update spec file Original commit message from CVS: update spec file 2007-10-25 17:36:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Move subtitle encoding property to decodebin2 so that it can set the property value on ... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init), (gst_decode_bin_dispose), (gst_decode_bin_set_caps), (gst_decode_bin_set_subs_encoding), (gst_decode_bin_get_subs_encoding), (gst_decode_bin_set_property), (gst_decode_bin_get_property), (analyze_new_pad): Move subtitle encoding property to decodebin2 so that it can set the property value on all elements that it autoplugs and that require it. Make caps refcounting more consistent in get/set. * gst/playback/gsturidecodebin.c: (_gst_boolean_accumulator), (gst_uri_decode_bin_class_init), (gst_uri_decode_bin_init), (gst_uri_decode_bin_finalize), (gst_uri_decode_bin_set_property), (gst_uri_decode_bin_get_property), (proxy_unknown_type_signal), (proxy_autoplug_continue_signal), (proxy_autoplug_factories_signal), (proxy_autoplug_select_signal), (make_decoder): Proxy properties and relevant signals from the internal decodebin. Make properties MT safe. 2007-10-25 15:10:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/: Deprecate GST_TAG_MUSICBRAINZ_SORTNAME, replaced by the newly-added Original commit message from CVS: * gst-libs/gst/tag/tag.h: (GST_TAG_MUSICBRAINZ_SORTNAME): * gst-libs/gst/tag/tags.c: Deprecate GST_TAG_MUSICBRAINZ_SORTNAME, replaced by the newly-added GST_TAG_ARTIST_SORTNAME (in an API and ABI compatible way). * gst-libs/gst/tag/gstid3tag.c: (tag_matches): Map ID3v2 TSOP, TSOA and TSOT frames to new SORTNAME tags (#414539). * gst-libs/gst/tag/gstvorbistag.c: (tag_matches), (gst_tag_to_vorbis_comments): Map new SORTNAME tags (these tags aren't even semi-official, so I'm just mapping everything I found in the wild) (#414539). 2007-10-24 11:07:57 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Remove the autoplug-sort signal and replace it with a binding friendly autoplug-select signal. Original commit message from CVS: Inspired by patch of: René Stadler <mail at renestadler dot de> * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init), (gst_decode_bin_autoplug_continue), (gst_decode_bin_autoplug_factories), (gst_decode_bin_autoplug_select), (analyze_new_pad), (connect_pad), (find_compatibles): * gst/playback/gstplay-marshal.list: Remove the autoplug-sort signal and replace it with a binding friendly autoplug-select signal. Add an autoplug-factories signal that can be used to generate a list of factories to try to autoplug. Add the GstPad to the autoplugging signal args as it might be needed to make a good factory selection. Fix up the marshallers for this. Fixes #407282. 2007-10-23 14:23:14 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gsttagdemux.c: Don't abort with an assertion if we receive a seek event with a start type of NONE (s... Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: Don't abort with an assertion if we receive a seek event with a start type of NONE (see launchpad bug #155878). 2007-10-22 10:21:46 +0000 Wim Taymans <wim.taymans@gmail.com> sys/: Make sure that before we clean up the X resources, we shutdown and join the event thread. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_event_thread), (gst_ximagesink_xcontext_get), (gst_ximagesink_xcontext_clear), (gst_ximagesink_change_state), (gst_ximagesink_reset): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_event_thread), (gst_xvimagesink_xcontext_get), (gst_xvimagesink_xcontext_clear), (gst_xvimagesink_change_state), (gst_xvimagesink_reset): Make sure that before we clean up the X resources, we shutdown and join the event thread. Also make sure the event thread does not shut down immediatly after startup because the running variable is not yet correctly set. Fixes #378770. 2007-10-16 16:48:38 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Make the window for a race in typefind and shutting down smaller until we figure out the... Original commit message from CVS: * gst/playback/gstdecodebin.c: (new_pad), (type_found): Make the window for a race in typefind and shutting down smaller until we figure out the right locking here. Avoids #485753 usually. * gst/playback/gstdecodebin2.c: (type_found), (pad_added_group_cb): Remove unneeded lock causing a race in typefind and shutting down. Fixes #485753. * gst/playback/gstplaybin.c: (gst_play_bin_change_state): Also remove sinks when going to NULL because we might not complete the state change to PAUSED, causing the PAUSED->READY state change not to happen. 2007-10-16 15:33:31 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Also explicitly release the ringbuffer when going to NULL because it is requir... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_drain), (gst_base_audio_sink_change_state): Also explicitly release the ringbuffer when going to NULL because it is required in the setcaps function, before the state change to PAUSED completes. 2007-10-16 14:58:53 +0000 Tim-Philipp Müller <tim@centricular.net> tests/icles/: Does what it says on the tin. Original commit message from CVS: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/stress-playbin.c: Does what it says on the tin. 2007-10-15 11:38:39 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Fix queue negotiation. See #486758. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_init), (gst_queue_push_one): Fix queue negotiation. See #486758. 2007-10-12 10:52:18 +0000 Jan Schmidt <thaytan@mad.scientist.com> Actual code change to go along with: Original commit message from CVS: Actual code change to go along with: 2007-10-12 Jan Schmidt <Jan.Schmidt@sun.com> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_decorate), (gst_xvimagesink_xwindow_new), (gst_xvimagesink_update_colorbalance), (gst_xvimagesink_handle_xevents), (gst_xvimagesink_xcontext_get): Fix handling of some of the X atoms. If the last parameter is True, XInternAtom won't create the atom if it doesn't exist, and therefore might return None. This causes X errors on Xv implementations that don't provide the colour balance attributes. 2007-10-12 10:37:09 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: Remove stray character from the changelog. Original commit message from CVS: Remove stray character from the changelog. 2007-10-12 10:33:27 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: I'm too lazy to comment this Original commit message from CVS: *** empty log message *** 2007-10-11 18:24:09 +0000 Tim-Philipp Müller <tim@centricular.net> Extract vorbis comment LICENSE tags correctly. Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: * tests/check/libs/tag.c: Extract vorbis comment LICENSE tags correctly. 2007-10-11 16:12:21 +0000 Jason Kivlighn <jkivlighn@gmail.com> Map ID3v2 WCOP frame to GST_TAG_COPYRIGHT_URI (#447000). Original commit message from CVS: Patch by: Jason Kivlighn <jkivlighn gmail com> * gst-libs/gst/tag/gstid3tag.c: * tests/check/libs/tag.c: Map ID3v2 WCOP frame to GST_TAG_COPYRIGHT_URI (#447000). 2007-10-10 17:01:51 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gsttagdemux.c: Don't error out when a buggy downstream element doesn't handle the newsegment event w... Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: Don't error out when a buggy downstream element doesn't handle the newsegment event we send properly (especially not without posting a meaningful error message on the bus). See bug #471370 and launchpad bug #136264. 2007-10-10 15:36:56 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Use new basesink method to make our EOS drain interruptable. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_drain): Use new basesink method to make our EOS drain interruptable. 2007-10-10 09:37:09 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/rtp/gstrtppayloads.c: Fix silly search-replace oversight. Original commit message from CVS: * gst-libs/gst/rtp/gstrtppayloads.c: Fix silly search-replace oversight. 2007-10-09 09:57:17 +0000 Laurent Glayal <spglegle@yahoo.fr> gst-libs/gst/rtp/gstbasertppayload.c: Fix caps memleak. Fixes #484989. Original commit message from CVS: Patch by: Laurent Glayal <spglegle at yahoo dot fr> * gst-libs/gst/rtp/gstbasertppayload.c: (copy_fixed), (gst_basertppayload_set_outcaps): Fix caps memleak. Fixes #484989. 2007-10-08 18:04:34 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Fix debug output. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain): Fix debug output. 2007-10-08 18:02:53 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Also handle the case where there is no clock set on the audio source, like in t... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Also handle the case where there is no clock set on the audio source, like in the unit tests. 2007-10-08 17:40:17 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/rtp/gstrtppayloads.c: Use unsigned G_MAXUINT8 instead of -1 to initialise a guint8 to avoid compiler war... Original commit message from CVS: * gst-libs/gst/rtp/gstrtppayloads.c: Use unsigned G_MAXUINT8 instead of -1 to initialise a guint8 to avoid compiler warnings 2007-10-08 17:12:32 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Don't disconnect the have_type signal because we never reconnect it later on. Instead keep a variable ... Original commit message from CVS: * gst/playback/gstdecodebin.c: (type_found), (gst_decode_bin_change_state): * gst/playback/gstdecodebin2.c: (type_found), (gst_decode_bin_change_state): Don't disconnect the have_type signal because we never reconnect it later on. Instead keep a variable to see if we already detected a type. 2007-10-08 10:47:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Unlink the signal handler when we found the type, we're not going to do anything sensible with more ty... Original commit message from CVS: * gst/playback/gstdecodebin.c: (add_fakesink), (type_found): * gst/playback/gstdecodebin2.c: (gst_decode_bin_init), (type_found): Unlink the signal handler when we found the type, we're not going to do anything sensible with more type_found signals anyway. 2007-10-08 06:07:22 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgio.c: Use GIO function to get a list of supported URI schemes instead of hard coding something. Original commit message from CVS: * ext/gio/gstgio.c: (gst_gio_get_supported_protocols): Use GIO function to get a list of supported URI schemes instead of hard coding something. 2007-10-06 16:49:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gsttagdemux.c: Don't leak caps. Original commit message from CVS: * gst-libs/gst/tag/gsttagdemux.c: Don't leak caps. 2007-10-06 15:04:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/: API: add GstTagDemux base class for simple tag demuxers. Original commit message from CVS: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gsttagdemux.c: * gst-libs/gst/tag/gsttagdemux.h: API: add GstTagDemux base class for simple tag demuxers. * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: Add GstTagDemux to docs. 2007-10-05 07:49:25 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/rtp/gstrtpbuffer.c: Fix bug introduced with last commit which inverted the logic and caused all buffers ... Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_get_payload_subbuffer): Fix bug introduced with last commit which inverted the logic and caused all buffers to be dropped. Fixes #483620. Thanks to Laurent Glayal <spglegle at yahoo dot fr> for noticing. 2007-10-04 06:50:53 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/rtp/gstrtpbuffer.c: with regular return and warning. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: Replace g_return_if_val (as it could be disabled), with regular return and warning. 2007-10-03 14:51:59 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/pipelines/simple-launch-lines.c: Print message name and not just number. Original commit message from CVS: * tests/check/pipelines/simple-launch-lines.c: Print message name and not just number. 2007-10-02 11:11:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: When slaved to the clock, don't try to align a sample with the previous one wh... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_async_play): When slaved to the clock, don't try to align a sample with the previous one when going to PLAYING again. 2007-10-02 09:04:03 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/snapshot/snapshot.c: Fix the build. Original commit message from CVS: * tests/examples/snapshot/snapshot.c: Fix the build. 2007-10-02 07:43:57 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/gstgiosink.c: Update to API changes in GIO. Original commit message from CVS: * ext/gio/gstgiosink.c: (gst_gio_sink_start): Update to API changes in GIO. 2007-10-01 16:33:00 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/sdp/gstsdpmessage.h: Add RFC 3556 bandwidth modifiers. Original commit message from CVS: * gst-libs/gst/sdp/gstsdpmessage.h: Add RFC 3556 bandwidth modifiers. 2007-10-01 13:37:31 +0000 Wim Taymans <wim.taymans@gmail.com> Update documentation. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtppayloads.c: Update documentation. 2007-10-01 13:22:14 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/: Added new file and header to deal with payload info. Original commit message from CVS: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtppayloads.c: (gst_rtp_payload_info_for_pt), (gst_rtp_payload_info_for_name): * gst-libs/gst/rtp/gstrtppayloads.h: Added new file and header to deal with payload info. * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_validate_data), (gst_rtp_buffer_default_clock_rate): * gst-libs/gst/rtp/gstrtpbuffer.h: Payload specific stuff is move to new headers. Implement _default_clock rate using the new payload function. * gst-libs/gst/sdp/gstsdpmessage.c: (is_multicast_address), (gst_sdp_parse_line): * gst-libs/gst/sdp/gstsdpmessage.h: Add some more comments. 2007-10-01 10:22:46 +0000 Wim Taymans <wim.taymans@gmail.com> gst/typefind/gsttypefindfunctions.c: Add typefind function for application/sdp. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (utf8_type_find), (sdp_check_header), (sdp_type_find), (plugin_init): Add typefind function for application/sdp. Remove some old dirac typefind code that was ifdeffed out. 2007-09-29 12:04:02 +0000 Sébastien Moutte <sebastien@moutte.net> win32/common/libgstaudio.def: Add new exported functions. Original commit message from CVS: * win32/common/libgstaudio.def: Add new exported functions. * win32/vs6/grammar.dsp: Add autogeneration and copy of some autegenerated files from win32/common for rtsp library. * win32/vs6/libgstaudioconvert.dsp: Add gstaudioquantize.c to the build. * win32/vs6/libgstinterfaces.dsp: Add videoorientation.c to the build. * win32/vs6/libgstriff.dsp: Add libgsttag to the link libraries list. * win32/vs6/libgstvolume.dsp: Add liboil to the link. * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstrtsp.dsp: * win32/common/libgstrtsp.def: Add files to build libgstrtsp library. 2007-09-29 07:01:55 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/gio/: Some minor cleanup and allow setting the location only when the element is not playing or paused. Original commit message from CVS: * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_set_property), (gst_gio_sink_render): * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_set_property): Some minor cleanup and allow setting the location only when the element is not playing or paused. 2007-09-26 15:14:37 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/snapshot/snapshot.c: Print error when pipeline failed to construct. Original commit message from CVS: * tests/examples/snapshot/snapshot.c: (main): Print error when pipeline failed to construct. 2007-09-25 19:06:47 +0000 Tim-Philipp Müller <tim@centricular.net> Add mappings for the new GST_TAG_COMPOSER for vorbis comments and ID3v2 tags. Original commit message from CVS: * configure.ac: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: Add mappings for the new GST_TAG_COMPOSER for vorbis comments and ID3v2 tags. 2007-09-25 11:54:09 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/floatcast/floatcast.h: Don't include config.h in an installed public header, this might break compilatio... Original commit message from CVS: * gst-libs/gst/floatcast/floatcast.h: Don't include config.h in an installed public header, this might break compilation of applications that don't have such a header and doesn't necessarily do what it's supposed to do anyway (ie. check for the lrint/lrintf defines) (#442065). Add docs for the various macros and document how this header has to be used (link against libm, etc.); add a few FIXMEs; include math.h for non-c99 code path. Based on patch by Jan Schmidt. 2007-09-25 07:50:59 +0000 Sebastian Dröge <slomo@circular-chaos.org> configure.ac: Use AG_GST_ARG_WITH_PLUGINS and AG_GST_ARG_ENABLE_EXTERNAL instead of duplicating these macros in confi... Original commit message from CVS: * configure.ac: Use AG_GST_ARG_WITH_PLUGINS and AG_GST_ARG_ENABLE_EXTERNAL instead of duplicating these macros in configure.ac. 2007-09-22 17:58:22 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/: Updated translations to 0.10.14 Original commit message from CVS: * po/hu.po: * po/sv.po: * po/uk.po: Updated translations to 0.10.14 2007-09-22 17:57:08 +0000 Thomas Vander Stichele <thomas@apestaart.org> * po/LINGUAS: add languages Original commit message from CVS: add languages 2007-09-22 17:56:28 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/pl.po: Added Polish translation. Original commit message from CVS: translated by: Jakub Bogusz <qboosh@pld-linux.org> * po/pl.po: Added Polish translation. 2007-09-22 17:55:37 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/fi.po: Added Finnish translation. Original commit message from CVS: translated by: Ilkka Tuohela <hile@iki.fi> * po/fi.po: Added Finnish translation. 2007-09-22 17:54:50 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/es.po: Added Spanish translation. Original commit message from CVS: translated by: Jorge González González <aloriel@gmail.com> * po/es.po: Added Spanish translation. 2007-09-22 17:53:59 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/da.po: Added Danish translation. Original commit message from CVS: translated by: Mogens Jaeger <mogens@jaeger.tf> * po/da.po: Added Danish translation. 2007-09-22 17:52:56 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/zh_CN.po: Added Chinese (simplified) translation. Original commit message from CVS: translated by: Funda Wang <fundawang@linux.net.cn> * po/zh_CN.po: Added Chinese (simplified) translation. 2007-09-22 17:51:45 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/bg.po: Added Bulgarian translation. Original commit message from CVS: translated by: Alexander Shopov <ash@contact.bg> * po/bg.po: Added Bulgarian translation. 2007-09-21 18:00:24 +0000 Sebastian Dröge <slomo@circular-chaos.org> docs/plugins/gst-plugins-bad-plugins.hierarchy: Update hierarchy. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.hierarchy: Update hierarchy. * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.h: Mark private fields of the instance structs private. 2007-09-21 17:31:05 +0000 Sebastian Dröge <slomo@circular-chaos.org> docs/plugins/: Add the GIO plugin to the docs and do a make update while doing that. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Add the GIO plugin to the docs and do a make update while doing that. * ext/gio/gstgiosrc.c: (gst_gio_src_start): Fix a small memleak. 2007-09-21 17:07:56 +0000 René Stadler <mail@renestadler.de> Add a GIO/GVFS plugin with source and sink elements. This will only be enabled when --enable-experimental is given to... Original commit message from CVS: Patch by: René Stadler <mail at renestadler dot de> * configure.ac: * ext/Makefile.am: * ext/gio/Makefile.am: * ext/gio/gstgio.c: (gst_gio_error), (gst_gio_seek), (gst_gio_get_supported_protocols), (gst_gio_uri_handler_get_type_sink), (gst_gio_uri_handler_get_type_src), (gst_gio_uri_handler_get_protocols), (gst_gio_uri_handler_get_uri), (gst_gio_uri_handler_set_uri), (gst_gio_uri_handler_init), (gst_gio_uri_handler_do_init), (plugin_init): * ext/gio/gstgio.h: * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_class_init), (gst_gio_sink_init), (gst_gio_sink_finalize), (gst_gio_sink_set_property), (gst_gio_sink_get_property), (gst_gio_sink_start), (gst_gio_sink_stop), (gst_gio_sink_unlock), (gst_gio_sink_unlock_stop), (gst_gio_sink_event), (gst_gio_sink_render), (gst_gio_sink_query): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_class_init), (gst_gio_src_init), (gst_gio_src_finalize), (gst_gio_src_set_property), (gst_gio_src_get_property), (gst_gio_src_start), (gst_gio_src_stop), (gst_gio_src_get_size), (gst_gio_src_is_seekable), (gst_gio_src_unlock), (gst_gio_src_unlock_stop), (gst_gio_src_check_get_range), (gst_gio_src_create): * ext/gio/gstgiosrc.h: Add a GIO/GVFS plugin with source and sink elements. This will only be enabled when --enable-experimental is given to configure for now as the GIO API is not stable yet. Fixes #476916. 2007-09-21 14:37:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Fix compilation wrt printf arguments. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_push_one): Fix compilation wrt printf arguments. 2007-09-20 17:38:10 +0000 Wim Taymans <wim.taymans@gmail.com> examples/app/appsrc_ex.c: Fix compilation after changing the name of a method. Original commit message from CVS: * examples/app/appsrc_ex.c: (main): Fix compilation after changing the name of a method. 2007-09-20 14:09:24 +0000 Wim Taymans <wim.taymans@gmail.com> Add simple snapshot example program using appsink. Original commit message from CVS: * configure.ac: * tests/examples/Makefile.am: * tests/examples/snapshot/.cvsignore: * tests/examples/snapshot/Makefile.am: * tests/examples/snapshot/snapshot.c: (main): Add simple snapshot example program using appsink. 2007-09-20 13:59:50 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.*: Add properties, signals and actions to access the element even without linking to the ... Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_marshal_OBJECT__VOID), (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_dispose), (gst_app_sink_finalize), (gst_app_sink_set_property), (gst_app_sink_get_property), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_event), (gst_app_sink_getcaps), (gst_app_sink_set_caps), (gst_app_sink_get_caps), (gst_app_sink_is_eos), (gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Add properties, signals and actions to access the element even without linking to the library. Fix some method names and signatures. 2007-09-20 10:37:02 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/generic/states.c: Improved state change unit test. Original commit message from CVS: * tests/check/generic/states.c: Improved state change unit test. 2007-09-19 18:16:58 +0000 Stefan Kost <ensonic@users.sourceforge.net> Ignore registries in any format. Original commit message from CVS: * docs/plugins/.cvsignore: * tests/check/.cvsignore: Ignore registries in any format. 2007-09-19 16:09:57 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Only copy timestamp on outgoing packets if the depayloader did not set one. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_set_gst_timestamp): Only copy timestamp on outgoing packets if the depayloader did not set one. Also copy duration on outgoing packets. 2007-09-19 15:55:08 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Fix compilation because of missing %d in printf. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (copy_fixed), (gst_basertppayload_set_outcaps): Fix compilation because of missing %d in printf. When fixating caps, fixate what we can and throw away all remaining unfixed caps, subclasses should do something smart if they need to. 2007-09-19 12:04:21 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/gnomevfs/gstgnomevfssrc.c: Improve debug logs a bit and be more verbose if things go wrong. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: Improve debug logs a bit and be more verbose if things go wrong. 2007-09-17 17:24:55 +0000 Jan Schmidt <thaytan@mad.scientist.com> Fix a bunch of compile warnings shown with Forte. Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_set_property): * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_ntp_to_unix), (gst_rtcp_unix_to_ntp): * gst-libs/gst/rtsp/gstrtspmessage.c: (gst_rtsp_message_get_type): * gst/playback/gstqueue2.c: * tests/examples/seek/seek.c: (set_scale): Fix a bunch of compile warnings shown with Forte. * gst/audiorate/gstaudiorate.c: Always pull in config.h before including any system headers. 2007-09-17 16:22:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Also fix #476514 for queue2. Original commit message from CVS: * gst/playback/gstqueue2.c: (update_buffering), (gst_queue_locked_flush), (gst_queue_locked_enqueue), (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_push_one), (gst_queue_sink_activate_push), (gst_queue_src_activate_push), (gst_queue_src_activate_pull): Also fix #476514 for queue2. 2007-09-16 19:31:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Remove code to deal with RTP to GST time conversion, we now just copy the GST... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_init), (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_handle_sink_event), (gst_base_rtp_depayload_push_full), (gst_base_rtp_depayload_set_gst_timestamp), (gst_base_rtp_depayload_change_state): Remove code to deal with RTP to GST time conversion, we now just copy the GST timestamp we receive to the outgoing buffers. Handle segment and flushes correctly. * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push): When we have no valid input timestamp, use the previous rtp timestamp on the outgoing RTP packet instead of the RTP base time. 2007-09-16 01:56:21 +0000 David Schleef <ds@schleef.org> ext/alsa/: Change alsa alloca's to malloc to fix warnings on gcc-4.2. Original commit message from CVS: * ext/alsa/gstalsa.c: * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: Change alsa alloca's to malloc to fix warnings on gcc-4.2. 2007-09-15 18:41:27 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Add some debug info when negotiating caps. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_set_outcaps), (gst_basertppayload_push): Add some debug info when negotiating caps. 2007-09-15 00:29:11 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtpbuffer.c: A buffer with an empty payload is also a valid buffer. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_validate_data): A buffer with an empty payload is also a valid buffer. 2007-09-14 20:52:00 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Make sure we start our RTP timestamp from the random base RTP timestamp even if... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_event), (gst_basertppayload_set_outcaps), (gst_basertppayload_push), (gst_basertppayload_change_state): Make sure we start our RTP timestamp from the random base RTP timestamp even if the buffer timestamp starts from some random value. 2007-09-14 16:56:16 +0000 Wim Taymans <wim.taymans@gmail.com> Add simple exmple app to demonstrate starting and pausing live and non-live bins in a PLAYING pipeline. Original commit message from CVS: * configure.ac: * tests/examples/Makefile.am: * tests/examples/dynamic/.cvsignore: * tests/examples/dynamic/Makefile.am: * tests/examples/dynamic/addstream.c: (create_stream), (pause_play_stream), (message_received), (eos_message_received), (perform_step), (main): Add simple exmple app to demonstrate starting and pausing live and non-live bins in a PLAYING pipeline. 2007-09-14 10:42:00 +0000 Julien Moutte <julien@moutte.net> gst/typefind/gsttypefindfunctions.c: Add some typefind for QCP files (RFC #3625) Original commit message from CVS: 2007-09-14 Julien MOUTTE <julien@moutte.net> * gst/typefind/gsttypefindfunctions.c: (plugin_init): Add some typefind for QCP files (RFC #3625) 2007-09-13 22:52:09 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Disable pull mode scheduling, we're not ready for it yet and it subtly breaks ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_init): Disable pull mode scheduling, we're not ready for it yet and it subtly breaks a lot of things. 2007-09-12 17:35:52 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/libvisual.c: Test all libvisual plugins, not just the first one; this reproduces bug #450336 qui... Original commit message from CVS: * tests/check/elements/libvisual.c: Test all libvisual plugins, not just the first one; this reproduces bug #450336 quite easily. Looks like a problem with the 'jess' visualisation. 2007-09-12 17:15:12 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add basic libvisual test case in an attempt to reproduce bug #450336. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/libvisual.c: Add basic libvisual test case in an attempt to reproduce bug #450336. Doesn't reproduce that bug, but some other crasher instead (invalid free), at least with make elements/libvisual.forever and the bumscope plugin on x86-64/gutsy. Leaving test disabled for now. 2007-09-12 08:38:21 +0000 Peter Kjellerstedt <pkj@axis.com> gst/: Printf format fixes (#476128). Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst-libs/gst/app/gstappsink.c: * gst/flv/gstflvdemux.c: * gst/flv/gstflvparse.c: * gst/interleave/deinterleave.c: * gst/switch/gstswitch.c: Printf format fixes (#476128). 2007-09-11 19:07:57 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> gst-libs/gst/rtsp/gstrtspconnection.c: Make sure we can not cancel in the middle of receiving a message. Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_read_internal), (gst_rtsp_connection_read), (read_body), (gst_rtsp_connection_receive): Make sure we can not cancel in the middle of receiving a message. Fixes #475731. 2007-09-11 11:29:12 +0000 Josep Torra Valles <josep@fluendo.com> gst/playback/gstplaybasebin.c: Increase upper limit for audio queue a bit; fixes preroll problem with playbin and dec... Original commit message from CVS: Patch by: Josep Torra Valles <josep@fluendo.com> * gst/playback/gstplaybasebin.c: Increase upper limit for audio queue a bit; fixes preroll problem with playbin and decodebin2 when playing a quicktime trailer with multichannel audio via http (#464666). 2007-09-10 22:10:54 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.*: Allow othe clocks than the internal clock to be used for the pipeline. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init), (gst_base_audio_src_init), (gst_base_audio_src_provide_clock), (gst_base_audio_src_set_property), (gst_base_audio_src_get_property), (gst_base_audio_src_create): * gst-libs/gst/audio/gstbaseaudiosrc.h: Allow othe clocks than the internal clock to be used for the pipeline. Add property to disable clock provide. API: GstBaseAudioSrc::provide-clock 2007-09-10 12:05:34 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gstdecodebin2.c: Don't leak request pads. Fixes #475395. Original commit message from CVS: * gst/playback/gstdecodebin2.c: Don't leak request pads. Fixes #475395. 2007-09-09 10:25:43 +0000 René Stadler <mail@renestadler.de> sys/: Correctly chain up finalize with the parent class to prevent memory leaks. Fixes #474880. Original commit message from CVS: Patch by: René Stadler <mail at renestadler dot de> * sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize), (gst_ximage_buffer_class_init): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimage_buffer_class_init): Correctly chain up finalize with the parent class to prevent memory leaks. Fixes #474880. 2007-09-09 04:08:48 +0000 Sebastian Dröge <slomo@circular-chaos.org> Revert the latest change: floating point samples are allowed to have any value, not only values in the range [-1,1]. ... Original commit message from CVS: * gst/volume/gstvolume.c: (volume_choose_func): * tests/check/elements/volume.c: (GST_START_TEST): Revert the latest change: floating point samples are allowed to have any value, not only values in the range [-1,1]. Thanks to Andy Wingo for noticing. Also fix processing of int32 samples with volumes > 4 by making the unity value smaller which prevents overflows. 2007-09-07 17:37:03 +0000 Tim-Philipp Müller <tim@centricular.net> Fix gst_rtp_buffer_set_csrc() and enable csrc-related unit test checks. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: * tests/check/libs/rtp.c: Fix gst_rtp_buffer_set_csrc() and enable csrc-related unit test checks. 2007-09-07 16:46:05 +0000 Haakon Sporsheim <haakon.sporsheim@tandberg.com> gst-libs/gst/rtp/gstrtpbuffer.c: Fix up GstRTPHeader helper struct so that compilers will not under any circumstances... Original commit message from CVS: Based on patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com> * gst-libs/gst/rtp/gstrtpbuffer.c: Fix up GstRTPHeader helper struct so that compilers will not under any circumstances add padding in between our fields, as currently happens with MSVC on win32, because that would lead to us sending out RTP payloads with broken RTP headers (#471194). Fix assertion guards for gst_rtp_buffer_get_csrc() and _set_csrc(). * tests/check/Makefile.am: * tests/check/libs/.cvsignore: * tests/check/libs/rtp.c: Add some simple unit tests for GstRTPBuffer. Some are disabled because the code tested still needs fixing (set_csrc() does not work). 2007-09-07 15:05:24 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update spec file to include latest RTSP libraries and headers and more Original commit message from CVS: update spec file to include latest RTSP libraries and headers and more 2007-09-07 12:41:01 +0000 Tim-Philipp Müller <tim@centricular.net> win32/: Add rtsp enumtypes (#474384) and update others. Original commit message from CVS: * win32/MANIFEST: * win32/common/gstrtsp-enumtypes.c: * win32/common/gstrtsp-enumtypes.h: * win32/common/interfaces-enumtypes.c: * win32/common/interfaces-enumtypes.h: * win32/common/multichannel-enumtypes.c: Add rtsp enumtypes (#474384) and update others. 2007-09-06 20:31:50 +0000 Stefan Kost <ensonic@users.sourceforge.net> configure.ac: Fix configure check for HAVE_LIBXML_HTML. Original commit message from CVS: * configure.ac: Fix configure check for HAVE_LIBXML_HTML. 2007-09-06 12:14:25 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/.cvsignore: Ignore more, in case the build bots work again one day. Original commit message from CVS: * tests/check/libs/.cvsignore: Ignore more, in case the build bots work again one day. 2007-09-06 07:00:36 +0000 Sebastian Dröge <slomo@circular-chaos.org> Add libgstfft, a FFT library based on Kiss FFT which is Original commit message from CVS: Reviewed by: Stefan Kost <ensonic@users.sf.net> * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/_kiss_fft_guts_f32.h: * gst-libs/gst/fft/_kiss_fft_guts_f64.h: * gst-libs/gst/fft/_kiss_fft_guts_s16.h: * gst-libs/gst/fft/_kiss_fft_guts_s32.h: * gst-libs/gst/fft/gstfft.c: (gst_fft_next_fast_length): * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.c: (gst_fft_f32_new), (gst_fft_f32_fft), (gst_fft_f32_inverse_fft), (gst_fft_f32_free), (gst_fft_f32_window), (gst_fft_f32_magnitude), (gst_fft_f32_phase): * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.c: (gst_fft_f64_new), (gst_fft_f64_fft), (gst_fft_f64_inverse_fft), (gst_fft_f64_free), (gst_fft_f64_window), (gst_fft_f64_magnitude), (gst_fft_f64_phase): * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.c: (gst_fft_s16_new), (gst_fft_s16_fft), (gst_fft_s16_inverse_fft), (gst_fft_s16_free), (gst_fft_s16_window), (gst_fft_s16_magnitude), (gst_fft_s16_phase): * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.c: (gst_fft_s32_new), (gst_fft_s32_fft), (gst_fft_s32_inverse_fft), (gst_fft_s32_free), (gst_fft_s32_window), (gst_fft_s32_magnitude), (gst_fft_s32_phase): * gst-libs/gst/fft/gstffts32.h: * gst-libs/gst/fft/kiss_fft_f32.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_f32_alloc), (kiss_fft_f32_stride), (kiss_fft_f32), (kiss_fft_f32_cleanup), (kiss_fft_f32_next_fast_size): * gst-libs/gst/fft/kiss_fft_f32.h: * gst-libs/gst/fft/kiss_fft_f64.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_f64_alloc), (kiss_fft_f64_stride), (kiss_fft_f64), (kiss_fft_f64_cleanup), (kiss_fft_f64_next_fast_size): * gst-libs/gst/fft/kiss_fft_f64.h: * gst-libs/gst/fft/kiss_fft_s16.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_s16_alloc), (kiss_fft_s16_stride), (kiss_fft_s16), (kiss_fft_s16_cleanup), (kiss_fft_s16_next_fast_size): * gst-libs/gst/fft/kiss_fft_s16.h: * gst-libs/gst/fft/kiss_fft_s32.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_s32_alloc), (kiss_fft_s32_stride), (kiss_fft_s32), (kiss_fft_s32_cleanup), (kiss_fft_s32_next_fast_size): * gst-libs/gst/fft/kiss_fft_s32.h: * gst-libs/gst/fft/kiss_fftr_f32.c: (kiss_fftr_f32_alloc), (kiss_fftr_f32), (kiss_fftri_f32): * gst-libs/gst/fft/kiss_fftr_f32.h: * gst-libs/gst/fft/kiss_fftr_f64.c: (kiss_fftr_f64_alloc), (kiss_fftr_f64), (kiss_fftri_f64): * gst-libs/gst/fft/kiss_fftr_f64.h: * gst-libs/gst/fft/kiss_fftr_s16.c: (kiss_fftr_s16_alloc), (kiss_fftr_s16), (kiss_fftri_s16): * gst-libs/gst/fft/kiss_fftr_s16.h: * gst-libs/gst/fft/kiss_fftr_s32.c: (kiss_fftr_s32_alloc), (kiss_fftr_s32), (kiss_fftri_s32): * gst-libs/gst/fft/kiss_fftr_s32.h: * gst-libs/gst/fft/kiss_version: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: Add libgstfft, a FFT library based on Kiss FFT which is BSD licensed. Supported sample formats are int16, int32, float and double. For those formats a real FFT and IFFT can be done, different windowing functions can be applied and functions for extracting the magnitude and phase exist. Fixes #468619. * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: Integrate libgstfft into the docs. * tests/check/Makefile.am: * tests/check/libs/fft.c: (GST_START_TEST), (fft_suite), (main): Add unit tests for libgstfft, currently only testing the FFT. Unit tests for IFFT will follow soon. 2007-09-05 23:07:40 +0000 Peter Kjellerstedt <pkj@axis.com> gst-libs/gst/sdp/gstsdpmessage.*: Separate INIT_ARRAY() and related macros into two versions, one for structures and ... Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_time_init), (gst_sdp_message_init), (gst_sdp_message_uninit), (is_multicast_address), (gst_sdp_message_as_text), (gst_sdp_message_get_origin), (gst_sdp_message_set_connection), (gst_sdp_message_get_connection), (gst_sdp_message_add_bandwidth), (gst_sdp_message_add_time), (gst_sdp_message_add_zone), (gst_sdp_message_get_key), (gst_sdp_message_get_attribute_val_n), (gst_sdp_message_get_attribute_val), (gst_sdp_message_add_media), (gst_sdp_media_init), (gst_sdp_media_uninit), (gst_sdp_media_as_text), (gst_sdp_media_set_port_info), (gst_sdp_media_connections_len), (gst_sdp_media_add_connection), (gst_sdp_media_bandwidths_len), (gst_sdp_media_get_bandwidth), (gst_sdp_media_add_bandwidth), (gst_sdp_media_attributes_len), (gst_sdp_parse_line), (print_media), (gst_sdp_message_dump): * gst-libs/gst/sdp/gstsdpmessage.h: Separate INIT_ARRAY() and related macros into two versions, one for structures and one for pointers (e.g., INIT_ARRAY() and INIT_PTR_ARRAY()). This fixes a segmentation error on freeing the lists of emails and phone numbers. Add missing const as appropriate. Change all gint to guint since they all actually represent unsigned values. Do not use time as a variable name as it shadows the global time(). Add gst_sdp_message_as_text() and gst_sdp_media_as_text(). Actually implement gst_sdp_message_add_time(). Make gst_sdp_message_add_time() take repeat times as an argument. Store repeat times in GstSDPTime as a GArray rather than as gchar**. Corrected the definition of gst_sdp_media_get_bandwidth() (was misspelled as badwidth). gst-indented and a little clean up. Fixes #471067. 2007-09-05 21:20:12 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/volume/gstvolume.c: Correctly clamp float/double samples in the [-1.0,1.0] range to prevent weird effects. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_choose_func), (volume_process_double), (volume_process_double_clamp), (volume_process_float_clamp): Correctly clamp float/double samples in the [-1.0,1.0] range to prevent weird effects. * tests/check/elements/volume.c: (GST_START_TEST), (volume_suite): Add unit tests for all samples types that had none before. 2007-09-05 14:09:15 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/rtp/gstrtpbuffer.c: Need to include stdlib.h for abs() here too. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: Need to include stdlib.h for abs() here too. 2007-09-05 14:01:25 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gststreaminfo.c: Fix build. Original commit message from CVS: * gst/playback/gststreaminfo.c: Fix build. 2007-09-05 10:32:09 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/gststreaminfo.c: Clean up some half-disabled code and comment. Original commit message from CVS: * gst/playback/gststreaminfo.c: Clean up some half-disabled code and comment. 2007-09-04 16:18:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Return FALSE from the event handler to let the parent class handle the event. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_payload_audio_handle_event): Return FALSE from the event handler to let the parent class handle the event. * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_push_full): Mark outgoing buffers as DISCONT if the incomming buffer was DISCONT. * gst-libs/gst/rtp/gstbasertppayload.c: Bump the MTU to 1400. 2007-09-04 01:50:55 +0000 Johan Dahlin <johan@gnome.org> gst/typefind/gsttypefindfunctions.c (plugin_init): Add an audio/x-nsf typefind function for the nsfdec element. Original commit message from CVS: 2007-09-03 Johan Dahlin <jdahlin@async.com.br> * gst/typefind/gsttypefindfunctions.c (plugin_init): Add an audio/x-nsf typefind function for the nsfdec element. 2007-09-03 20:46:38 +0000 Renato Filho <renato.filho@indt.org.br> gst/playback/gstplaybasebin.c: Included "myth://" on stream_uris list for enable buffering to mythtv files Original commit message from CVS: * gst/playback/gstplaybasebin.c: Included "myth://" on stream_uris list for enable buffering to mythtv files 2007-09-03 19:31:11 +0000 Wim Taymans <wim.taymans@gmail.com> Fix parsing of RB blocks. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_get_rb), (gst_rtcp_packet_sdes_copy_entry), (gst_rtcp_ntp_to_unix), (gst_rtcp_unix_to_ntp): * gst-libs/gst/rtp/gstrtcpbuffer.h: Fix parsing of RB blocks. Fix docs. Added helper functions to convert to/from UNIX and NTP time. API: gst_rtcp_ntp_to_unix() API: gst_rtcp_unix_to_ntp() * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_validate_data), (gst_rtp_buffer_get_header_len), (gst_rtp_buffer_get_extension_data), (gst_rtp_buffer_get_payload_subbuffer), (gst_rtp_buffer_get_payload_len), (gst_rtp_buffer_get_payload), (gst_rtp_buffer_ext_timestamp): * gst-libs/gst/rtp/gstrtpbuffer.h: Fix some more docs. Implement handling of packets with extensions. Fix padding check in _validate(). Added function to get extension data. API: gst_rtp_buffer_get_header_len() API: gst_rtp_buffer_get_extension_data() 2007-09-03 19:19:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Add some more docs for the queue-delay property and fix a typo in a comment. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_class_init), (gst_base_rtp_depayload_set_gst_timestamp): Add some more docs for the queue-delay property and fix a typo in a comment. * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push): Fix typo. 2007-09-03 19:17:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: When skew slaving, try to hover around the middle of a segment so that we at m... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): When skew slaving, try to hover around the middle of a segment so that we at most drift by half a segment. If we are aligning in the oposite direction of the clock skew, we don't have to resync. 2007-08-31 21:07:20 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Be less silly with the segment start, just apply the clock-base to the timest... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_set_gst_timestamp): Be less silly with the segment start, just apply the clock-base to the timestamp. 2007-08-31 15:58:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.*: Deprecate the queue handling thread thing and remove the code. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_class_init), (gst_base_rtp_depayload_finalize), (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_handle_sink_event), (gst_base_rtp_depayload_set_gst_timestamp), (gst_base_rtp_depayload_change_state): * gst-libs/gst/rtp/gstbasertpdepayload.h: Deprecate the queue handling thread thing and remove the code. Use new method to calculate the extended timestamp. 2007-08-31 15:21:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtcpbuffer.c: Use g_strndup which does exactly what we want. Original commit message from CVS: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_sdes_copy_entry): Use g_strndup which does exactly what we want. * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_compare_seqnum), (gst_rtp_buffer_ext_timestamp): * gst-libs/gst/rtp/gstrtpbuffer.h: Add helper function to compare seqnums. Add helper function to calculate extended timestamps. API: gst_rtp_buffer_compare_seqnum() API: gst_rtp_buffer_ext_timestamp() 2007-08-30 21:59:23 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtcpbuffer.*: Fix and document SDES item data function. Original commit message from CVS: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_sdes_get_entry), (gst_rtcp_packet_sdes_copy_entry): * gst-libs/gst/rtp/gstrtcpbuffer.h: Fix and document SDES item data function. Add new function that makes a proper copy of SDES item data. API: gst_rtcp_packet_sdes_copy_entry() 2007-08-30 07:29:55 +0000 Stefan Kost <ensonic@users.sourceforge.net> The tcp and subparse plugins are under gst, but not totaly free of dependencies. Handle selection inconfigure.ac, so ... Original commit message from CVS: * configure.ac: * gst/Makefile.am: The tcp and subparse plugins are under gst, but not totaly free of dependencies. Handle selection inconfigure.ac, so that they show up on the final list of what is build and what is not. Maybe they should better be moved to ext. 2007-08-30 06:58:46 +0000 Daniel Díaz <yosoy@danieldiaz.org> Check if libxml provides HTML parser which subparse needs. Original commit message from CVS: Patch by: Daniel Díaz <yosoy@danieldiaz.org> * configure.ac: * gst/Makefile.am: Check if libxml provides HTML parser which subparse needs. Fixes #451970. 2007-08-29 14:22:04 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsa.c: Fix typo and compilation on big endian systems. Original commit message from CVS: * ext/alsa/gstalsa.c: Fix typo and compilation on big endian systems. 2007-08-29 12:16:46 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstssaparse.c: Convert SSA newline codes into actual newline characters (#470766). Original commit message from CVS: * gst/subparse/gstssaparse.c: Convert SSA newline codes into actual newline characters (#470766). 2007-08-28 14:58:17 +0000 Tim-Philipp Müller <tim@centricular.net> API: also add gst_install_plugins_supported() while we're at it (see #470456). Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * tests/check/libs/pbutils.c: API: also add gst_install_plugins_supported() while we're at it (see #470456). 2007-08-28 14:23:55 +0000 Tim-Philipp Müller <tim@centricular.net> API: add gst_missing_*_installer_detail_new() convenience API so that applications that know exactly what they're mis... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/pbutils/missing-plugins.c: * gst-libs/gst/pbutils/missing-plugins.h: * tests/check/libs/pbutils.c: API: add gst_missing_*_installer_detail_new() convenience API so that applications that know exactly what they're missing can request installer detail strings for those items directly instead of having to first create a dummy missing-plugin message and then get the installer detail string from that. Fixes #470456. 2007-08-27 11:59:56 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: We need to set up delayed-linking whenever the caps are non-fixed, not just when there a... Original commit message from CVS: * gst/playback/gstdecodebin.c: (close_pad_link): We need to set up delayed-linking whenever the caps are non-fixed, not just when there are multiple types - use gst_pad_is_fixed() to test. 2007-08-26 14:14:33 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/missing-plugins.c: Add missing separator in PID fallback case. Original commit message from CVS: * gst-libs/gst/pbutils/missing-plugins.c: (gst_missing_plugin_message_get_installer_detail): Add missing separator in PID fallback case. 2007-08-24 15:28:33 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/alsa/Makefile.am: There is no GST_PLUGINS_BASE_LIBS defined. Original commit message from CVS: * ext/alsa/Makefile.am: There is no GST_PLUGINS_BASE_LIBS defined. * ext/alsa/gstalsa.c: * ext/alsa/gstalsasink.c: (gst_alsasink_delay): * ext/alsa/gstalsasrc.c: (gst_alsasrc_delay): Add support for ALSA 24-bit formats. snd_pcm_delay can return an error code, especially during XRUNS. In that case, the best we can do is assume delay = 0. * gst/audioconvert/Makefile.am: Add flags from -base before any more-remote dependencies. 2007-08-23 20:45:45 +0000 Davyd <davyd@madeley.id.au> gst/volume/gstvolume.*: Add support for int32, int24 and int8 to the volume element. Original commit message from CVS: Based on a patch by: Davyd <davyd at madeley dot id dot au> * gst/volume/gstvolume.c: (volume_choose_func), (volume_update_real_volume), (gst_volume_set_volume), (gst_volume_init), (volume_process_int32), (volume_process_int32_clamp), (volume_process_int24), (volume_process_int24_clamp), (volume_process_int16), (volume_process_int16_clamp), (volume_process_int8), (volume_process_int8_clamp), (volume_update_volume), (plugin_init): * gst/volume/gstvolume.h: Add support for int32, int24 and int8 to the volume element. Fixes #445529. 2007-08-23 12:37:42 +0000 Tim-Philipp Müller <tim@centricular.net> tests/examples/Makefile.am: Fix even more. Original commit message from CVS: * tests/examples/Makefile.am: Fix even more. 2007-08-23 10:58:42 +0000 Stefan Kost <ensonic@users.sourceforge.net> Revert unwanted commit. many thanks to moap. I want a fix for https://thomas.apestaart.org/moap/trac/ticket/239 Original commit message from CVS: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * ext/gnomevfs/gstgnomevfssrc.c: * ext/gnomevfs/gstgnomevfssrc.h: * gst-libs/gst/Makefile.am: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * sys/v4l/v4lsrc_calls.c: * tests/examples/Makefile.am: * win32/common/config.h: Revert unwanted commit. many thanks to moap. I want a fix for https://thomas.apestaart.org/moap/trac/ticket/239 2007-08-23 08:33:43 +0000 Stefan Kost <ensonic@users.sourceforge.net> * ChangeLog: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * ext/gnomevfs/gstgnomevfssrc.c: * ext/gnomevfs/gstgnomevfssrc.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/gstaudiofilter.h: * gst/typefind/gsttypefindfunctions.c: * gst/volume/gstvolume.c: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * sys/v4l/v4lsrc_calls.c: * tests/examples/Makefile.am: * win32/common/config.h: Original commit message from CVS: reviewed by: <delete if not using a buddy> patch by: <delete if not someone else's patch> * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * ext/gnomevfs/gstgnomevfssrc.c: * ext/gnomevfs/gstgnomevfssrc.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/gstaudiofilter.h: * gst/typefind/gsttypefindfunctions.c: * gst/volume/gstvolume.c: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: * sys/v4l/v4lsrc_calls.c: * tests/examples/Makefile.am: * win32/common/config.h: 2007-08-22 15:29:04 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/audio.c: Clarify the docs a little. Original commit message from CVS: * gst-libs/gst/audio/audio.c: Clarify the docs a little. 2007-08-22 11:20:28 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/volume/gstvolume.c: Enable liboil for float and add more details about problems with int16. Original commit message from CVS: * gst/volume/gstvolume.c: Enable liboil for float and add more details about problems with int16. 2007-08-21 15:43:24 +0000 Wim Taymans <wim.taymans@gmail.com> sys/v4l/gstv4lsrc.c: Fix RGB24 masks as spotted by _ke (Daniel G. Siegel) on IRC. Original commit message from CVS: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps): Fix RGB24 masks as spotted by _ke (Daniel G. Siegel) on IRC. 2007-08-21 12:08:43 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: When calculating the first timestamp of the buffers, don't go below 0 and clip the samples be... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_push_forward): When calculating the first timestamp of the buffers, don't go below 0 and clip the samples because the offset was on the eos page. Fixes #466717. 2007-08-21 11:42:39 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Also submit the eos page when trying to find the first timestamp. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain), (gst_ogg_demux_collect_chain_info): Also submit the eos page when trying to find the first timestamp. See #466717. 2007-08-17 15:24:43 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/audio/audio.h: Use gst_util_uint64_scale() instead of doing the math with double for GST_FRAMES_TO_CLOCK... Original commit message from CVS: * gst-libs/gst/audio/audio.h: Use gst_util_uint64_scale() instead of doing the math with double for GST_FRAMES_TO_CLOCK_TIME() and GST_CLOCK_TIME_TO_FRAMES(). For large timestamps this prevents rounding errors. Fixes #467667. 2007-08-17 13:42:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspconnection.*: Small cleanups. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_connect), (gst_rtsp_connection_write), (gst_rtsp_connection_read), (gst_rtsp_connection_poll): * gst-libs/gst/rtsp/gstrtspconnection.h: Small cleanups. On shutdown, don't read the control socket yet. Set timeout value correctly in all cases. Add function to check if the server accepts reads or writes. API: gst_rtsp_connection_poll() * gst-libs/gst/rtsp/gstrtspdefs.h: Fix compilation with -pedantic. Add enum for _poll. 2007-08-16 17:11:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.c: Override the preroll vmethod instead of overriding the render method twice. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init): Override the preroll vmethod instead of overriding the render method twice. 2007-08-16 16:06:21 +0000 Olivier Crete <tester@tester.ca> gst-libs/gst/rtp/gstbasertppayload.*: Add getcaps vfunc to basertppayload. See #465146. Original commit message from CVS: Patch by: Olivier Crete <tester at tester ca> * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_init), (gst_basertppayload_getcaps): * gst-libs/gst/rtp/gstbasertppayload.h: Add getcaps vfunc to basertppayload. See #465146. 2007-08-16 11:20:56 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Only post buffering messages when we are a stream. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (queue_threshold_reached): Only post buffering messages when we are a stream. 2007-08-15 17:05:45 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/: Small docs fix and addition. Original commit message from CVS: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/missing-plugins.c: Small docs fix and addition. 2007-08-14 17:47:34 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.c: Don't use new API. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_flush_unlocked): Don't use new API. 2007-08-14 17:38:05 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/app/gstappsink.*: Make love to appsink. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_base_init), (gst_app_sink_class_init), (gst_app_sink_dispose), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_get_caps), (gst_app_sink_set_caps), (gst_app_sink_end_of_stream), (gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Make love to appsink. Make it support pulling of the preroll buffer. Add docs and debug statements. Fix some races wrt to EOS handling and stopping. Implement getcaps. Implement FLUSHING. API: gst_app_sink_pull_preroll() 2007-08-13 15:37:29 +0000 Tim-Philipp Müller <tim@centricular.net> tests/icles/: Add a dumb little test for textoverlay alignments. Original commit message from CVS: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/test-textoverlay.c: Add a dumb little test for textoverlay alignments. 2007-08-13 15:26:54 +0000 Dan Williams <dcbw@redhat.com> ext/pango/gsttextoverlay.*: API: add "line-alignment" property (#459334). Add gtk-doc blurb for "silent" property so ... Original commit message from CVS: Patch by: Dan Williams <dcbw redhat com> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: API: add "line-alignment" property (#459334). Add gtk-doc blurb for "silent" property so there's a Since tag in the API reference. 2007-08-13 11:21:00 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: fix ... by: lines Original commit message from CVS: fix ... by: lines 2007-08-12 16:30:36 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.*: Improve caps negotiation so that downstream elements can confiure certain RTP p... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_set_outcaps): * gst-libs/gst/rtp/gstbasertppayload.h: Improve caps negotiation so that downstream elements can confiure certain RTP properties by fixing them on the caps. See #465146. Add docs. 2007-08-11 12:39:51 +0000 Tim-Philipp Müller <tim@centricular.net> Mark as deprecated some macros which were presumably meant to be private API and accidentally exposed in the public h... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.h: Mark as deprecated some macros which were presumably meant to be private API and accidentally exposed in the public header file. Also actually _init() lock (only works at the moment because the struct is zeroed out when created and the initial values in the mutex struct are zeroes too). (#459585) 2007-08-10 17:35:52 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/Makefile.am: Remove cruft and do some cleanups. Original commit message from CVS: * docs/libs/Makefile.am: Remove cruft and do some cleanups. * docs/libs/gst-plugins-base-libs-docs.sgml: Prepare for comming gtkdoc features (rebase against online docs). 2007-08-10 13:55:44 +0000 Michael Smith <msmith@xiph.org> gst/audiorate/gstaudiorate.c: Debug output fixes. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain): Debug output fixes. * tests/check/elements/audiorate.c: (do_perfect_stream_test), (GST_START_TEST): Change the number of buffers used; 500 is too many and leads to timeouts. 2007-08-10 10:08:05 +0000 Tim-Philipp Müller <tim@centricular.net> gst/: Printf format fixes (#465028). Original commit message from CVS: * gst/playback/gstqueue2.c: * gst/videorate/gstvideorate.c: Printf format fixes (#465028). 2007-08-09 15:44:02 +0000 Michael Smith <msmith@xiph.org> gst/audiorate/gstaudiorate.c: If we have a large (> 1 second) discontinuity, push a series of smaller buffers rather ... Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain): If we have a large (> 1 second) discontinuity, push a series of smaller buffers rather than a single very large buffer. Avoids unreasonably large single buffer allocations when encountering a large gap. * tests/check/elements/audiorate.c: (GST_START_TEST), (audiorate_suite): Add a test for this. 2007-08-09 12:06:43 +0000 Josep Torra Valles <josep@fluendo.com> gst/playback/gstplaybasebin.c: Fixes: #465015 Original commit message from CVS: * gst/playback/gstplaybasebin.c: (group_commit), (queue_remove_probe), (queue_threshold_reached): Patch by: Josep Torra Valles <josep@fluendo.com> Fixes: #465015 Make sure we remove the check_queues buffer probe from the correct queue to avoid racily going back to "buffering 99%" when buffering is actually complete. Also, fix the spelling of Josep's surname in the ChangeLog. 2007-08-09 11:37:28 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/ogg/gstoggmux.c: Do not leak oggmux instance. Original commit message from CVS: * ext/ogg/gstoggmux.c: Do not leak oggmux instance. * ext/vorbis/vorbisenc.c: Also log values. 2007-08-09 10:51:55 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/: Updated translations. Original commit message from CVS: * po/hu.po: * po/it.po: * po/nl.po: * po/uk.po: * po/vi.po: Updated translations. 2007-08-08 16:07:21 +0000 Yang Hong <hongyang@redflag-linux.com> ext/pango/gsttextoverlay.*: Add 'silent' property to GstTimeOverlay. Fixes #462979 Original commit message from CVS: patch by: Yang Hong <hongyang@redflag-linux.com> * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: Add 'silent' property to GstTimeOverlay. Fixes #462979 2007-08-08 15:05:22 +0000 Josep Torre Valles <josep@fluendo.com> Add connection-speed property. Fixes #464690. Original commit message from CVS: Patch by: Josep Torre Valles <josep@fluendo.com> * docs/plugins/gst-plugins-base-plugins.args: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init), (gst_uri_decode_bin_init), (gst_uri_decode_bin_set_property), (gst_uri_decode_bin_get_property), (gen_source_element): Add connection-speed property. Fixes #464690. 2007-08-07 15:13:46 +0000 Damien Lespiau <damien.lespiau@gmail.com> Fix compilation on windows. Fixes #464320. Original commit message from CVS: Patch by: Damien Lespiau <damien dot lespiau at gmail dot com> * configure.ac: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_connect): Fix compilation on windows. Fixes #464320. 2007-08-07 14:14:54 +0000 Josep Torre Valles <josep@fluendo.com> gst/playback/: Move connection-speed property from playbin to playbasebin so that we can also configure it in source ... Original commit message from CVS: Patch by: Josep Torre Valles <josep@fluendo.com> * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (gst_play_base_bin_init), (queue_threshold_reached), (gen_source_element), (setup_substreams), (gst_play_base_bin_set_property), (gst_play_base_bin_get_property), (gst_play_base_bin_get_streaminfo_value_array): * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: (gst_play_bin_class_init), (gst_play_bin_set_property), (gst_play_bin_get_property), (gst_play_bin_handle_redirect_message): Move connection-speed property from playbin to playbasebin so that we can also configure it in source elements that have the connection-speed property. Fixes #464028. Add some debug info here and there. 2007-08-06 16:42:22 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audiotestsrc/gstaudiotestsrc.c: Properly respond to conversion queries. Fixes #464079. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_query): Properly respond to conversion queries. Fixes #464079. 2007-08-03 19:53:11 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audiotestsrc/gstaudiotestsrc.*: Add float/double and int32 support to audiotestsrc. Fixes #460422. Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_init), (gst_audio_test_src_src_fixate), (gst_audio_test_src_setcaps), (gst_audio_test_src_init_sine_table), (gst_audio_test_src_change_wave), (gst_audio_test_src_create): * gst/audiotestsrc/gstaudiotestsrc.h: Add float/double and int32 support to audiotestsrc. Fixes #460422. Also set the default volume to the default value specified in the GParamSpec. 2007-08-03 19:40:14 +0000 Jens Granseuer <jensgr@gmx.net> gst/audioconvert/gstaudioquantize.c: Fix C89 incompatibilities and spelling of explanations. Fixes #463215. Original commit message from CVS: Patch by: Jens Granseuer <jensgr at gmx dot net> * gst/audioconvert/gstaudioquantize.c: Fix C89 incompatibilities and spelling of explanations. Fixes #463215. 2007-08-03 15:44:01 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtsptransport.c: Add rdt manager for rdt transport. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtsptransport.c: (gst_rtsp_transport_parse): Add rdt manager for rdt transport. Fix parsing of RDT transport. 2007-08-03 14:43:15 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.14 === 2007-08-03 14:41:46 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-decodebin2.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/config.h: Release 0.10.14 Original commit message from CVS: Release 0.10.14 2007-08-03 14:24:08 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/cs.po: * po/de.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2007-07-27 17:37:19 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/libs/audio.c: Fix the test to reflect the behaviour of gst_audio_clip_buffer. Original commit message from CVS: * tests/check/libs/audio.c: (GST_START_TEST): Fix the test to reflect the behaviour of gst_audio_clip_buffer. 2007-07-27 17:10:47 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/audio/audio.c: When clipping a buffer with no timestamp, assume it is within the segment without warnings. Original commit message from CVS: * gst-libs/gst/audio/audio.c: When clipping a buffer with no timestamp, assume it is within the segment without warnings. Fixes: #460978 2007-07-27 11:16:23 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtsp/gstrtspextension.c: Fire the signal on the object, not the interface. Original commit message from CVS: * gst-libs/gst/rtsp/gstrtspextension.c: (gst_rtsp_extension_send): Fire the signal on the object, not the interface. 2007-07-27 09:17:19 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/rtsp/.cvsignore: Ber. Don't include the full path, idiot. Original commit message from CVS: * gst-libs/gst/rtsp/.cvsignore: Ber. Don't include the full path, idiot. 2007-07-27 08:29:29 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/rtsp/.cvsignore: Ignore generated files. Original commit message from CVS: * gst-libs/gst/rtsp/.cvsignore: Ignore generated files. 2007-07-26 19:57:15 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/: Move the rtspextension.h interface into gstrtspextension.h as part of libgstrtsp instead of libgstinte... Original commit message from CVS: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/interfaces-marshal.list: * gst-libs/gst/interfaces/rtspextension.c: * gst-libs/gst/interfaces/rtspextension.h: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtsp.h: * gst-libs/gst/rtsp/gstrtspextension.c: (gst_rtsp_extension_get_type), (gst_rtsp_extension_iface_init), (gst_rtsp_extension_detect_server), (gst_rtsp_extension_before_send), (gst_rtsp_extension_after_send), (gst_rtsp_extension_parse_sdp), (gst_rtsp_extension_setup_media), (gst_rtsp_extension_configure_stream), (gst_rtsp_extension_get_transports), (gst_rtsp_extension_stream_select), (gst_rtsp_extension_send): * gst-libs/gst/rtsp/gstrtspextension.h: * gst-libs/gst/rtsp/rtsp-marshal.list: Move the rtspextension.h interface into gstrtspextension.h as part of libgstrtsp instead of libgstinterfaces, because it's only for use within plugins, not applications. Add stuff to do the enum & marshal generation needed in libgstrtsp now. Use the GST_TYPE_RTSP_RESULT enum type for the return value of the signal that the GstRTSPExtension interface emits, since G_TYPE_ENUM is abstract. 2007-07-26 15:48:01 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/interfaces/: Fix marshaller for the send signal. Original commit message from CVS: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/interfaces-marshal.list: * gst-libs/gst/interfaces/rtspextension.c: (gst_rtsp_extension_iface_init), (gst_rtsp_extension_stream_select), (gst_rtsp_extension_send): * gst-libs/gst/interfaces/rtspextension.h: Fix marshaller for the send signal. Add URL to stream selection interface method. 2007-07-26 15:35:43 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/riff/Makefile.am: Pull in our dependencies from -base before those from outside. Original commit message from CVS: * gst-libs/gst/riff/Makefile.am: Pull in our dependencies from -base before those from outside. 2007-07-26 14:33:01 +0000 Wim Taymans <wim.taymans@gmail.com> API: gst_rtsp_base64_decode_ip() Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspbase64.c: (gst_rtsp_base64_decode_ip): * gst-libs/gst/rtsp/gstrtspbase64.h: API: gst_rtsp_base64_decode_ip() Added function to decode Base64 in-place. 2007-07-26 14:08:01 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/libs/.cvsignore: Ignore the mixer test binary. Original commit message from CVS: * tests/check/libs/.cvsignore: Ignore the mixer test binary. 2007-07-26 10:00:37 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/vorbis/vorbisdec.c: Gratuitous comment change to trigger a rebuild on the buildbots. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_push_forward): Gratuitous comment change to trigger a rebuild on the buildbots. 2007-07-25 18:20:36 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/sdp/gstsdpmessage.*: Constify args where we can. Original commit message from CVS: * gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_media_get_media), (gst_sdp_media_get_port), (gst_sdp_media_get_num_ports), (gst_sdp_media_get_proto), (gst_sdp_media_formats_len), (gst_sdp_media_get_format), (gst_sdp_media_get_information), (gst_sdp_media_connections_len), (gst_sdp_media_get_connection), (gst_sdp_media_bandwidths_len), (gst_sdp_media_get_badwidth), (gst_sdp_media_get_key), (gst_sdp_media_attributes_len), (gst_sdp_media_get_attribute), (gst_sdp_media_get_attribute_val_n), (gst_sdp_media_get_attribute_val): * gst-libs/gst/sdp/gstsdpmessage.h: Constify args where we can. 2007-07-25 18:18:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/interfaces/: Move interface for RTSP extensions from -good to here. Original commit message from CVS: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/rtspextension.c: (gst_rtsp_extension_get_type), (gst_rtsp_extension_iface_init), (gst_rtsp_extension_detect_server), (gst_rtsp_extension_before_send), (gst_rtsp_extension_after_send), (gst_rtsp_extension_parse_sdp), (gst_rtsp_extension_setup_media), (gst_rtsp_extension_configure_stream), (gst_rtsp_extension_get_transports), (gst_rtsp_extension_stream_select), (gst_rtsp_extension_send): * gst-libs/gst/interfaces/rtspextension.h: Move interface for RTSP extensions from -good to here. Added helper methods to invoke interface methods. 2007-07-25 11:22:30 +0000 Wim Taymans <wim.taymans@gmail.com> Fix some more RTSP docs. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspmessage.c: (key_value_foreach), (gst_rtsp_message_get_type), (gst_rtsp_message_parse_request), (gst_rtsp_message_init_response), (gst_rtsp_message_parse_response), (gst_rtsp_message_new_data), (gst_rtsp_message_parse_data), (gst_rtsp_message_add_header), (gst_rtsp_message_remove_header), (gst_rtsp_message_get_header), (gst_rtsp_message_append_headers), (gst_rtsp_message_set_body), (gst_rtsp_message_get_body), (dump_key_value): * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.c: (parse_npt_time), (parse_npt_range), (parse_clock_range), (parse_smpte_range), (gst_rtsp_range_parse): * gst-libs/gst/rtsp/gstrtsprange.h: * gst-libs/gst/rtsp/gstrtsptransport.c: * gst-libs/gst/rtsp/gstrtspurl.c: Fix some more RTSP docs. Add some missing methods for dealing with messages. 2007-07-24 19:19:33 +0000 Wim Taymans <wim.taymans@gmail.com> Added beginnings of RTSP documentation. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtsp/gstrtspbase64.c: (gst_rtsp_base64_encode): * gst-libs/gst/rtsp/gstrtspbase64.h: * gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_connect), (add_auth_header), (gst_rtsp_connection_write), (gst_rtsp_connection_send), (read_body), (gst_rtsp_connection_receive), (gst_rtsp_connection_next_timeout), (gst_rtsp_connection_reset_timeout), (gst_rtsp_connection_set_auth): * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.c: (rtsp_init_status): * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.c: (parse_npt_time), (parse_npt_range), (parse_clock_range), (parse_smpte_range), (gst_rtsp_range_parse): * gst-libs/gst/rtsp/gstrtspurl.h: Added beginnings of RTSP documentation. 2007-07-24 17:37:03 +0000 Wim Taymans <wim.taymans@gmail.com> Document the SDP library. Original commit message from CVS: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/sdp/gstsdp.h: * gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_message_set_origin), (gst_sdp_message_set_connection), (gst_sdp_message_add_bandwidth), (gst_sdp_message_add_time), (gst_sdp_message_add_zone), (gst_sdp_message_set_key), (gst_sdp_message_get_attribute_val_n), (gst_sdp_message_get_attribute_val), (gst_sdp_message_add_attribute), (gst_sdp_media_new), (gst_sdp_media_init), (gst_sdp_media_uninit), (gst_sdp_media_free), (gst_sdp_media_get_media), (gst_sdp_media_set_media), (gst_sdp_media_get_port), (gst_sdp_media_get_num_ports), (gst_sdp_media_set_port_info), (gst_sdp_media_get_proto), (gst_sdp_media_set_proto), (gst_sdp_media_formats_len), (gst_sdp_media_get_format), (gst_sdp_media_add_format), (gst_sdp_media_get_information), (gst_sdp_media_set_information), (gst_sdp_media_connections_len), (gst_sdp_media_get_connection), (gst_sdp_media_add_connection), (gst_sdp_media_bandwidths_len), (gst_sdp_media_get_badwidth), (gst_sdp_media_add_bandwidth), (gst_sdp_media_set_key), (gst_sdp_media_get_key), (gst_sdp_media_attributes_len), (gst_sdp_media_add_attribute), (gst_sdp_media_get_attribute_val_n), (gst_sdp_media_get_attribute_val), (gst_sdp_message_parse_buffer), (print_media), (gst_sdp_message_dump): * gst-libs/gst/sdp/gstsdpmessage.h: Document the SDP library. Add some of the missing SDPMedia methods. 2007-07-24 11:52:56 +0000 Wim Taymans <wim.taymans@gmail.com> Move SDP and RTSP from helper objects in -good to a reusable library. Original commit message from CVS: * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/rtsp/Makefile.am: * gst-libs/gst/rtsp/gstrtspbase64.c: (gst_rtsp_base64_encode): * gst-libs/gst/rtsp/gstrtspbase64.h: * gst-libs/gst/rtsp/gstrtspconnection.c: (inet_aton), (gst_rtsp_connection_create), (gst_rtsp_connection_connect), (add_auth_header), (add_date_header), (gst_rtsp_connection_write), (gst_rtsp_connection_send), (read_line), (read_string), (read_key), (parse_response_status), (parse_request_line), (parse_line), (gst_rtsp_connection_read), (read_body), (gst_rtsp_connection_receive), (gst_rtsp_connection_close), (gst_rtsp_connection_free), (gst_rtsp_connection_next_timeout), (gst_rtsp_connection_reset_timeout), (gst_rtsp_connection_flush), (gst_rtsp_connection_set_auth): * gst-libs/gst/rtsp/gstrtspconnection.h: * gst-libs/gst/rtsp/gstrtspdefs.c: (rtsp_init_status), (gst_rtsp_strresult), (gst_rtsp_method_as_text), (gst_rtsp_version_as_text), (gst_rtsp_header_as_text), (gst_rtsp_status_as_text), (gst_rtsp_find_header_field), (gst_rtsp_find_method): * gst-libs/gst/rtsp/gstrtspdefs.h: * gst-libs/gst/rtsp/gstrtspmessage.c: (key_value_foreach), (gst_rtsp_message_new), (gst_rtsp_message_init), (gst_rtsp_message_new_request), (gst_rtsp_message_init_request), (gst_rtsp_message_new_response), (gst_rtsp_message_init_response), (gst_rtsp_message_init_data), (gst_rtsp_message_unset), (gst_rtsp_message_free), (gst_rtsp_message_add_header), (gst_rtsp_message_remove_header), (gst_rtsp_message_get_header), (gst_rtsp_message_append_headers), (gst_rtsp_message_set_body), (gst_rtsp_message_take_body), (gst_rtsp_message_get_body), (gst_rtsp_message_steal_body), (dump_mem), (dump_key_value), (gst_rtsp_message_dump): * gst-libs/gst/rtsp/gstrtspmessage.h: * gst-libs/gst/rtsp/gstrtsprange.c: (parse_npt_time), (parse_npt_range), (parse_clock_range), (parse_smpte_range), (gst_rtsp_range_parse), (gst_rtsp_range_free): * gst-libs/gst/rtsp/gstrtsprange.h: * gst-libs/gst/rtsp/gstrtsptransport.c: (gst_rtsp_transport_new), (gst_rtsp_transport_init), (gst_rtsp_transport_get_mime), (gst_rtsp_transport_get_manager), (parse_mode), (parse_range), (range_as_text), (rtsp_transport_mode_as_text), (rtsp_transport_profile_as_text), (rtsp_transport_ltrans_as_text), (gst_rtsp_transport_parse), (gst_rtsp_transport_as_text), (gst_rtsp_transport_free): * gst-libs/gst/rtsp/gstrtsptransport.h: * gst-libs/gst/rtsp/gstrtspurl.c: (gst_rtsp_url_parse), (gst_rtsp_url_free), (gst_rtsp_url_set_port), (gst_rtsp_url_get_port), (gst_rtsp_url_get_request_uri): * gst-libs/gst/rtsp/gstrtspurl.h: * gst-libs/gst/sdp/Makefile.am: * gst-libs/gst/sdp/gstsdp.h: * gst-libs/gst/sdp/gstsdpmessage.c: (gst_sdp_origin_init), (gst_sdp_connection_init), (gst_sdp_bandwidth_init), (gst_sdp_time_init), (gst_sdp_zone_init), (gst_sdp_key_init), (gst_sdp_attribute_init), (gst_sdp_message_new), (gst_sdp_message_init), (gst_sdp_message_uninit), (gst_sdp_message_free), (gst_sdp_media_new), (gst_sdp_media_init), (gst_sdp_media_uninit), (gst_sdp_media_free), (gst_sdp_message_set_origin), (gst_sdp_message_get_origin), (gst_sdp_message_set_connection), (gst_sdp_message_get_connection), (gst_sdp_message_add_bandwidth), (gst_sdp_message_add_time), (gst_sdp_message_add_zone), (gst_sdp_message_set_key), (gst_sdp_message_get_key), (gst_sdp_message_get_attribute_val_n), (gst_sdp_message_get_attribute_val), (gst_sdp_message_add_attribute), (gst_sdp_message_add_media), (gst_sdp_media_add_attribute), (gst_sdp_media_add_bandwidth), (gst_sdp_media_add_format), (gst_sdp_media_get_attribute), (gst_sdp_media_get_attribute_val_n), (gst_sdp_media_get_attribute_val), (gst_sdp_media_get_format), (read_string), (read_string_del), (gst_sdp_parse_line), (gst_sdp_message_parse_buffer), (print_media), (gst_sdp_message_dump): * gst-libs/gst/sdp/gstsdpmessage.h: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: Move SDP and RTSP from helper objects in -good to a reusable library. Use a proper gst_ namespace. 2007-07-23 18:42:22 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/vorbis/vorbisdec.c: Use the new buffer clipping function from gstaudio here. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_push_forward), (vorbis_dec_flush_decode): Use the new buffer clipping function from gstaudio here. 2007-07-23 18:26:09 +0000 Sebastian Dröge <slomo@circular-chaos.org> API: Add buffer clipping function for raw audio buffers. Fixes #456656. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/audio.c: (gst_audio_buffer_clip): * gst-libs/gst/audio/audio.h: * tests/check/libs/audio.c: (GST_START_TEST), (audio_suite): API: Add buffer clipping function for raw audio buffers. Fixes #456656. Also add deprecation guards for gst_audio_structure_set_int() to the header. 2007-07-23 14:45:16 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/gst-plugins-base-libs-sections.txt: Cleanup the docs. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: Cleanup the docs. 2007-07-23 11:18:35 +0000 Dan Williams <dcbw@redhat.com> gst/playback/gstplaybasebin.c: Don't return NULL when querying the stream info value array but instead return an empt... Original commit message from CVS: Patch by: Dan Williams <dcbw at redhat dot com> * gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_streaminfo_value_array): Don't return NULL when querying the stream info value array but instead return an empty array. Fixes #459204. 2007-07-23 10:41:18 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gsturidecodebin.c: Init debug category before using it. Original commit message from CVS: * gst/playback/gsturidecodebin.c: Init debug category before using it. 2007-07-21 09:56:09 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/interfaces/mixer.h: Add padding vars in place of the signal pointers when building with DISABLE_DEPRECAT... Original commit message from CVS: * gst-libs/gst/interfaces/mixer.h: Add padding vars in place of the signal pointers when building with DISABLE_DEPRECATED so that the interface structure doesn't change size. 2007-07-21 09:21:12 +0000 Marc-Andre Lureau <marcandre.lureau@gmail.com> Fixes: #152864 Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsamixertrack.c: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/mixeroptions.c: * gst-libs/gst/interfaces/mixeroptions.h: * gst-libs/gst/interfaces/mixertrack.c: * gst-libs/gst/interfaces/mixertrack.h: * tests/check/Makefile.am: * tests/check/libs/mixer.c: Patch By: Marc-Andre Lureau <marcandre.lureau@gmail.com> Fixes: #152864 Add support for notifying mixer changes on the message bus, and implement it in alsamixer. API: gst_mixer_get_mixer_flags API: gst_mixer_message_parse_mute_toggled API: gst_mixer_message_parse_record_toggled API: gst_mixer_message_parse_volume_changed API: gst_mixer_message_parse_option_changed API: GstMixerMessageType API: GstMixerFlags 2007-07-20 16:09:03 +0000 Michael Smith <msmith@xiph.org> sys/xvimage/xvimagesink.c: xcontext->im_format is only for testing XShm support (as the header file comments document... Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_setcaps): xcontext->im_format is only for testing XShm support (as the header file comments document). Use xvimage->im_format for everything else. Avoids spurious warnings on buffer allocation before setcaps. 2007-07-20 07:22:15 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/: We should use $(LIBM). Original commit message from CVS: * tests/examples/volume/Makefile.am: * tests/icles/Makefile.am: We should use $(LIBM). 2007-07-20 06:13:21 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/icles/Makefile.am: This needs -lm. Original commit message from CVS: * tests/icles/Makefile.am: This needs -lm. 2007-07-18 07:35:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> Add stdlib include (free, atoi, exit). Original commit message from CVS: * examples/app/appsrc_ex.c: * examples/switch/switcher.c: * ext/neon/gstneonhttpsrc.c: * ext/timidity/gstwildmidi.c: * ext/x264/gstx264enc.c: * gst/mve/mveaudioenc.c: (mve_compress_audio): * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/spectrum/demo-audiotest.c: * gst/spectrum/demo-osssrc.c: * sys/dvb/gstdvbsrc.c: Add stdlib include (free, atoi, exit). 2007-07-16 10:10:28 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.c: Don't break ABI, restore previous ranges. Keep the default random selection of ... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init), (gst_basertppayload_init), (gst_basertppayload_set_property), (gst_basertppayload_get_property): Don't break ABI, restore previous ranges. Keep the default random selection of timestamp and seqnum offset but as soon as the app sets a specific value, use that one. 2007-07-14 18:33:15 +0000 Bastien Nocera <hadess@hadess.net> sys/xvimage/xvimagesink.*: Add option to turn off double-buffering for debugging purposes. Original commit message from CVS: Patch by: Bastien Nocera <hadess at hadess dot net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_init), (gst_xvimagesink_class_init): * sys/xvimage/xvimagesink.h: Add option to turn off double-buffering for debugging purposes. Fixes #437169. 2007-07-14 18:20:41 +0000 Jorn Baayen <jorn@openedhand.com> sys/: add 'handle-expose' property. Useful for video widgets which may want to be in control of Expose behaviour. Fix... Original commit message from CVS: Patch by: Jorn Baayen <jorn at openedhand dot com> * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents), (gst_ximagesink_set_property), (gst_ximagesink_get_property), (gst_ximagesink_init), (gst_ximagesink_class_init): * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_init), (gst_xvimagesink_class_init): * sys/xvimage/xvimagesink.h: add 'handle-expose' property. Useful for video widgets which may want to be in control of Expose behaviour. Fixes #380625 2007-07-14 17:23:42 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertppayload.*: Fix ranges of rtp payloader properties so that the full range can be used in ad... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init), (gst_basertppayload_init), (gst_basertppayload_event), (gst_basertppayload_push), (gst_basertppayload_set_property), (gst_basertppayload_get_property), (gst_basertppayload_change_state): * gst-libs/gst/rtp/gstbasertppayload.h: Fix ranges of rtp payloader properties so that the full range can be used in addition to -1 (random). Fix wrong seqnum reporting in caps. Fixes #420326. 2007-07-13 18:12:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videorate/gstvideorate.c: Use boilerplate. Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_init), (gst_video_rate_query): Use boilerplate. Add latency query, might not be perfect yet but already works a lot better. Fixes #442557. 2007-07-13 16:05:17 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/xvimage/xvimagesink.*: After a caps change, redraw our borders to avoid garbage left there when the image format ... Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put), (gst_xvimagesink_setcaps): * sys/xvimage/xvimagesink.h: After a caps change, redraw our borders to avoid garbage left there when the image format changes to a smaller size, like 16:9 -> 4:3 Also, hold the flow_lock a bit longer in the set_caps while we're fiddling with the xcontext. 2007-07-13 16:02:23 +0000 Jan Schmidt <thaytan@mad.scientist.com> Remove bogus check for libcheck, since we check for gstreamer-check and it pulls in the required info from there, and... Original commit message from CVS: * Makefile.am: * configure.ac: * tests/Makefile.am: Remove bogus check for libcheck, since we check for gstreamer-check and it pulls in the required info from there, and we weren't actually _using_ the information for libcheck ourselves anyway. 2007-07-13 15:52:02 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Fix the r_mask test for RGBA32 on little-endian. Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_pixfmt): Fix the r_mask test for RGBA32 on little-endian. Fix a stupid typo that would have obviously broken compilation on big-endian, if anyone was testing. 2007-07-12 15:02:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videotestsrc/videotestsrc.*: Add alpha to the color struct. Original commit message from CVS: * gst/videotestsrc/videotestsrc.c: (paint_hline_AYUV), (paint_hline_str4): * gst/videotestsrc/videotestsrc.h: Add alpha to the color struct. Use a default alpha value of 255 instead of 128. 2007-07-12 12:01:20 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Clear the dynamic pads counter when starting a new uri. This makes reusing playbin wor... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (no_more_pads_full), (setup_source): Clear the dynamic pads counter when starting a new uri. This makes reusing playbin work again. Fixes #454264. 2007-07-12 11:13:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> configure.ac: Use pkg-config to locate check. Original commit message from CVS: * configure.ac: Use pkg-config to locate check. 2007-07-11 23:12:12 +0000 Tim-Philipp Müller <tim@centricular.net> Fix 'make check' build against core CVS. Original commit message from CVS: * configure.ac: * tests/check/elements/volume.c: (GST_START_TEST): Fix 'make check' build against core CVS. 2007-07-10 20:46:41 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/: Make gtk-doc happy. Original commit message from CVS: * gst-libs/gst/interfaces/propertyprobe.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/tag/gstvorbistag.c: Make gtk-doc happy. 2007-07-08 13:07:38 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstbaseaudiosink.c: Quick hack to make audiosinks stop at EOS when operating in pull-mode; needs t... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_callback): Quick hack to make audiosinks stop at EOS when operating in pull-mode; needs to be fixed properly some day. 2007-07-06 18:19:39 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/gst-plugins-base-libs-sections.txt: Fix location of includes in the docs. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: Fix location of includes in the docs. 2007-07-06 11:40:45 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/ffmpegcolorspace/: Add 2 new pixel formats - ABGR32 and ARGB32, which are reflections of the existing BGRA32 and ... Original commit message from CVS: * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpegcsp_avpicture_fill): * gst/ffmpegcolorspace/imgconvert.c: (img_convert), (img_get_alpha_info): Add 2 new pixel formats - ABGR32 and ARGB32, which are reflections of the existing BGRA32 and RGBA32 formats with the alpha at the other end of the word. Partially fixes #451908 2007-07-05 08:43:30 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/: Simplify --extra-dir as gtkdoc scans recursively. Original commit message from CVS: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: Simplify --extra-dir as gtkdoc scans recursively. 2007-07-03 11:52:47 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.c: Make getcaps more robust by not using the proxycaps function. This makes sure that we don't end... Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_sink_getcaps), (gst_adder_request_new_pad): Make getcaps more robust by not using the proxycaps function. This makes sure that we don't end up recursively calling getcaps upstream. See #316248. 2007-06-29 17:21:18 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audioconvert/audioconvert.c: Include math.h to fix compilation. Original commit message from CVS: * gst/audioconvert/audioconvert.c: Include math.h to fix compilation. 2007-06-29 14:47:42 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Add a mapping for YUV format "IYU1", which is a 4:1:1 packed pixel format, ... Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt): Add a mapping for YUV format "IYU1", which is a 4:1:1 packed pixel format, as produced by some dc1394 cameras like the iSight. See http://www.fourcc.org/yuv.php#IYU1 2007-06-28 20:37:58 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/: Implement dithering and noise shaping in audioconvert. By default now Original commit message from CVS: * gst/audioconvert/Makefile.am: * gst/audioconvert/audioconvert.c: (audio_convert_get_func_index), (check_default), (audio_convert_prepare_context), (audio_convert_clean_context), (audio_convert_convert): * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_dithering_get_type), (gst_audio_convert_ns_get_type), (gst_audio_convert_class_init), (gst_audio_convert_init), (gst_audio_convert_set_caps), (gst_audio_convert_set_property), (gst_audio_convert_get_property): * gst/audioconvert/gstaudioconvert.h: * gst/audioconvert/gstaudioquantize.c: (gst_audio_quantize_setup_noise_shaping), (gst_audio_quantize_free_noise_shaping), (gst_audio_quantize_setup_dither), (gst_audio_quantize_free_dither), (gst_audio_quantize_setup_quantize_func), (gst_audio_quantize_setup), (gst_audio_quantize_free): * gst/audioconvert/gstaudioquantize.h: Implement dithering and noise shaping in audioconvert. By default now TPDF dithering (and no noise shaping) will be used when converting from a higher bit depth to 20 bit depth or smaller, otherwise everything will be as it is now. For the last audioconvert in a pipeline it would make sense to use some kind of noise shaping, enabling it by default for all conversions would give undesired results though. Fixes #360246. * tests/check/elements/audioconvert.c: (setup_audioconvert), (GST_START_TEST): Adjust unit test for the new audioconvert. 2007-06-28 11:06:56 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Use other metrics as well when estimating the buffer level. Original commit message from CVS: * gst/playback/gstqueue2.c: (apply_segment), (update_buffering): Use other metrics as well when estimating the buffer level. 2007-06-28 10:21:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Small debug improvement. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (make_decoder), (setup_source): Small debug improvement. * gst/playback/gstqueue2.c: (apply_segment), (update_buffering), (plugin_init): Tweak the rate estimation period. When calculating the buffer filledness in rate estimation mode, don't mix it with other metrics. 2007-06-28 09:46:11 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: When creating the groups, allow for a 5 second, unlimited buffers preroll phase after w... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_group_new), (gst_decode_group_expose), (gst_decode_group_free), (add_fakesink): When creating the groups, allow for a 5 second, unlimited buffers preroll phase after which we expose the group. When the group is exposed, use a small number of buffers up to a 2 second limit. Also disconnect the overrun signal from multiqueue when we exposed the group because it is not needed anymore. 2007-06-27 22:30:19 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/tags.c: Don't pass trailing zeroes in fixed-size string arrays in ID3v1 tags to utf8-validate; fixes... Original commit message from CVS: * gst-libs/gst/tag/tags.c: (gst_tag_freeform_string_to_utf8): Don't pass trailing zeroes in fixed-size string arrays in ID3v1 tags to utf8-validate; fixes recognition of ID3v1 tags in UTF-8 encoding (#451707); also, output some debugging info when dealing with freeform strings. * tests/check/libs/tag.c: (GST_START_TEST), (tag_suite): Add unit test for the above. 2007-06-27 12:55:20 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/descriptions.c: Add description for Windows Media RTP caps. Original commit message from CVS: * gst-libs/gst/pbutils/descriptions.c: (caps_are_rtp_caps): Add description for Windows Media RTP caps. * gst-libs/gst/pbutils/missing-plugins.c: (copy_and_clean_caps): Remove RTP fields that don't define the format from caps. 2007-06-27 10:14:03 +0000 Tim-Philipp Müller <tim@centricular.net> ext/vorbis/vorbisdec.c: Skip empty buffers, but not empty header buffers. That way the original vorbisdec unit test s... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_decode_buffer): Skip empty buffers, but not empty header buffers. That way the original vorbisdec unit test still passes (#451145); also, take into account that those empty packets might carry a granulepos. * tests/check/Makefile.am: * tests/check/elements/vorbisdec.c: (_create_codebook_header_buffer), (_create_audio_buffer), (GST_START_TEST), (vorbisdec_suite): Add unit test that sends an empty packet. 2007-06-27 09:49:51 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Don't error out on 0-sized packets, just emit a warning because this is not a fatal error. Fi... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_decode_buffer): Don't error out on 0-sized packets, just emit a warning because this is not a fatal error. Fixes #451145. 2007-06-25 12:43:01 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/plugins/: Update docs with caps info. Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-decodebin2.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs with caps info. 2007-06-25 12:04:15 +0000 Tim-Philipp Müller <tim@centricular.net> po/POTFILES.in: Add more files with translatable strings (#450875). Original commit message from CVS: * po/POTFILES.in: Add more files with translatable strings (#450875). 2007-06-23 14:44:07 +0000 Edward Hervey <bilboed@bilboed.com> ext/ogg/gstoggdemux.c: The chain should be freed if we error out here, else it will leak. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_find_chains): The chain should be freed if we error out here, else it will leak. * gst/playback/gstdecodebin.c: (disconnect_unlinked_signals), (cleanup_decodebin): Don't forget to *properly* remove the signals, else it will leak. 2007-06-22 14:25:27 +0000 Jan Schmidt <thaytan@mad.scientist.com> MAINTAINERS: Updating all the maintainers files Original commit message from CVS: * MAINTAINERS: Updating all the maintainers files 2007-06-21 08:34:46 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/seek.c: Destroy and recreate parse-launch based pipeline after stop to be able to play again. Reo... Original commit message from CVS: * tests/examples/seek/seek.c: (update_scale), (play_cb), (stop_cb), (main): Destroy and recreate parse-launch based pipeline after stop to be able to play again. Reorder some code and add more comments. 2007-06-20 11:09:03 +0000 Wim Taymans <wim@fluendo.com> gst/playback/gstdecodebin2.c: When handling a delayed-caps notification case, mark the group as dynamic so that the n... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (analyze_new_pad): When handling a delayed-caps notification case, mark the group as dynamic so that the nbdynamic count is incremented and decremented correctly. Fixes: #449156 Patch by: Wim Taymans <wim@fluendo.com> 2007-06-19 19:13:04 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * gst-libs/gst/audio/gstbaseaudiosink.c: * win32/common/config.h: gst-libs/gst/audio/gstbaseaudiosink.c Original commit message from CVS: 2007-06-19 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_init): Enable pull-mode operation. 2007-06-19 09:34:35 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/riff/riff-media.c: Change minimum rate back to 1000 to allow low-sample-rate wav files to play back. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Change minimum rate back to 1000 to allow low-sample-rate wav files to play back. 2007-06-17 17:27:09 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/vi.po: Update translations. Original commit message from CVS: * po/vi.po: Update translations. 2007-06-16 03:42:14 +0000 David Schleef <ds@schleef.org> gst/playback/gstqueue2.c: Fix compile error from ignored return value. Original commit message from CVS: * gst/playback/gstqueue2.c: Fix compile error from ignored return value. 2007-06-15 15:23:36 +0000 Michael Smith <msmith@xiph.org> gst/videoscale/vs_4tap.c: Update tmpbuf for all neccesary rows, not just one, as is required when downscaling. Original commit message from CVS: * gst/videoscale/vs_4tap.c: (vs_image_scale_4tap_Y): Update tmpbuf for all neccesary rows, not just one, as is required when downscaling. Fixes #402076. 2007-06-15 11:15:28 +0000 Michael Smith <msmith@xiph.org> tests/check/pipelines/oggmux.c: Add a test that ensures we set DELTA_UNIT on all non-header, non-video buffers, if we... Original commit message from CVS: * tests/check/pipelines/oggmux.c: (validate_ogg_page), (is_video), (eos_buffer_probe): Add a test that ensures we set DELTA_UNIT on all non-header, non-video buffers, if we have a video stream. * ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads), (gst_ogg_mux_process_best_pad): Move setting delta_pad to earlier, where we inspect all pads, so that leading audio pages don't get DELTA_UNIT unset if they come before the first DELTA_UNIT from video pages. Fixes the newly-added test. Fixes #385527. 2007-06-14 19:53:27 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/streamheader.c: Disable test_multifdsink_gdp_vorbisenc() on ppc64 since it fails on the p5-ppc6... Original commit message from CVS: * tests/check/pipelines/streamheader.c: (streamheader_suite): Disable test_multifdsink_gdp_vorbisenc() on ppc64 since it fails on the p5-ppc64 build bot and the failure looks like it is due to the same issue as #348114, ie. a compiler bug. 2007-06-13 18:20:57 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstqueue2.c: Fix build on MacOSX. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_create_read): Fix build on MacOSX. 2007-06-13 09:01:32 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Fix compilation on mingw. Fixes #446972. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek), (gst_ogg_demux_read_chain): Fix compilation on mingw. Fixes #446972. 2007-06-12 08:38:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Fix a division by zero when the max percent is <= 0. Fixes #446572. also update the bufferi... Original commit message from CVS: Patches by: Thiago Sousa Santos <thiagossantos at gmail dot com> * gst/playback/gstqueue2.c: (update_buffering), (gst_queue_locked_enqueue): Fix a division by zero when the max percent is <= 0. Fixes #446572. also update the buffering status when receiving events. Fixes #446551. 2007-06-11 11:32:26 +0000 Thiago Sousa Santos <thiagossantos@gmail.com> gst/playback/gstqueue2.c: Wait for preroll before attempting to forward a duration query upstream. Original commit message from CVS: Based on patch by: Thiago Sousa Santos <thiagossantos at gmail dot com> * gst/playback/gstqueue2.c: (gst_queue_peer_query), (gst_queue_handle_src_query): Wait for preroll before attempting to forward a duration query upstream. Fixes #445505. 2007-06-07 21:08:38 +0000 Sébastien Moutte <sebastien@moutte.net> gst-libs/gst/rtp/gstbasertpdepayload.c: Use G_GINT64_CONSTANT macro for int64 constant. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_set_gst_timestamp): Use G_GINT64_CONSTANT macro for int64 constant. * win32/common/libgstinterfaces.def: * win32/common/libgsttag.def: Add new exported functions. 2007-06-07 14:25:32 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstoggmux.c: The BOS page of the first Dirac video stream needs to come before the BOS page of any Vorbis str... Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_send_headers): The BOS page of the first Dirac video stream needs to come before the BOS page of any Vorbis streams or other audio streams, just like it is with Theora. 2007-06-07 09:11:27 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Fix compilation. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_get_range): Fix compilation. 2007-06-06 13:36:26 +0000 Thiago Sousa Santos <thiagossantos@gmail.com> gst/playback/gstqueue2.c: Add pull based scheduling and fix some deadlocks. Fixes #444523. Original commit message from CVS: Patch by: Thiago Sousa Santos <thiagossantos at gmail dot com> * gst/playback/gstqueue2.c: (gst_queue_init), (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_get_range), (gst_queue_src_checkgetrange_function), (gst_queue_sink_activate_push), (gst_queue_src_activate_push), (gst_queue_src_activate_pull): Add pull based scheduling and fix some deadlocks. Fixes #444523. Does not yet completely work because duration queries upstream won't block yet. 2007-06-06 09:08:50 +0000 Wim Taymans <wim.taymans@gmail.com> Some more fseeko checks. Original commit message from CVS: * configure.ac: * gst/playback/gstqueue2.c: (gst_queue_create_read): Some more fseeko checks. 2007-06-06 08:01:42 +0000 Wim Taymans <wim.taymans@gmail.com> configure.ac: check for large file support. Original commit message from CVS: * configure.ac: check for large file support. 2007-06-05 21:36:11 +0000 Sven Arvidsson <sa@whiz.se> gst/subparse/gstsubparse.*: Add support for SubViewer version 1 and 2 subtitles. Fixes #394061. Original commit message from CVS: Based on a patch by Sven Arvidsson <sa at whiz dot se>: * gst/subparse/gstsubparse.c: (parse_subrip), (subviewer_unescape_newlines), (parse_subviewer), (gst_sub_parse_data_format_autodetect), (gst_sub_parse_format_autodetect), (gst_subparse_type_find): * gst/subparse/gstsubparse.h: Add support for SubViewer version 1 and 2 subtitles. Fixes #394061. * tests/check/elements/subparse.c: (GST_START_TEST), (subparse_suite): Add a unit test for both SubViewer formats. 2007-06-05 17:08:04 +0000 Michael Smith <msmith@xiph.org> gst/audiotestsrc/gstaudiotestsrc.c: Don't overflow intermediate values when seeking to large time values in audiotest... Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_do_seek): Don't overflow intermediate values when seeking to large time values in audiotestsrc. 2007-06-05 17:02:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Include stdio to define fseeko. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_have_data), (gst_queue_create_read), (gst_queue_read_item_from_file), (gst_queue_open_temp_location_file), (gst_queue_locked_enqueue): Include stdio to define fseeko. 2007-06-05 16:37:09 +0000 Edward Hervey <edward@fluendo.com> sys/v4l/gstv4lsrc.c: Make v4lsrc output segments in GST_FORMAT_TIME. Fixes #442553. Original commit message from CVS: Patch by: Edward Hervey <edward@fluendo.com> * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_fixate), (gst_v4lsrc_query): Make v4lsrc output segments in GST_FORMAT_TIME. Fixes #442553. 2007-06-05 16:20:44 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/: Use gst_tag_utf8_from_freeform_string() from libgsttag instead of our own implementation. Original commit message from CVS: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/riff-read.c: (gst_riff_parse_info): Use gst_tag_utf8_from_freeform_string() from libgsttag instead of our own implementation. 2007-06-05 16:19:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Handle timestamp wraparound. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_set_gst_timestamp), (gst_base_rtp_depayload_change_state): Handle timestamp wraparound. 2007-06-05 16:17:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gsturidecodebin.c: Make sure we name srcpads uniquely even when using different internal decodebins. Original commit message from CVS: * gst/playback/gsturidecodebin.c: (no_more_pads_full), (new_decoded_pad), (remove_pads), (make_decoder), (setup_source), (gst_uri_decode_bin_change_state): Make sure we name srcpads uniquely even when using different internal decodebins. Signal no-more-pads when no more dynamic elements exist. Remove pads on cleanup. 2007-06-05 16:14:23 +0000 Thiago Sousa Santos <thiagossantos@gmail.com> gst/playback/gstqueue2.c: Add support for filebased buffering. Fixes #441264. Original commit message from CVS: Based on patch by: Thiago Sousa Santos <thiagossantos at gmail dot com> * gst/playback/gstqueue2.c: (gst_queue_class_init), (gst_queue_init), (gst_queue_finalize), (gst_queue_write_buffer_to_file), (gst_queue_have_data), (gst_queue_create_read), (gst_queue_read_item_from_file), (gst_queue_open_temp_location_file), (gst_queue_close_temp_location_file), (gst_queue_locked_flush), (gst_queue_locked_enqueue), (gst_queue_locked_dequeue), (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_change_state), (gst_queue_set_temp_location), (gst_queue_set_property): Add support for filebased buffering. Fixes #441264. 2007-06-05 16:05:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Add support for delayed caps fixation when autoplugging. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_factory_filter), (analyze_new_pad), (connect_pad), (expose_pad), (caps_notify_cb), (caps_notify_group_cb), (gst_decode_group_new), (gst_decode_group_free): Add support for delayed caps fixation when autoplugging. Optimize cases where a multiqueue is not needed/wanted, like right after anything that is not a demuxer. 2007-06-05 16:02:57 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: consideratly speedup ogg chain detection by not trying to find a base timestamp for skeleton s... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fisbone), (gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek), (gst_ogg_demux_read_chain), (gst_ogg_demux_collect_chain_info): consideratly speedup ogg chain detection by not trying to find a base timestamp for skeleton streams. 2007-06-05 16:00:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstmultifdsink.*: Add support for remuve_flush. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_client_status_get_type), (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_add_full), (gst_multi_fd_sink_remove_flush), (gst_multi_fd_sink_remove_client_link), (gst_multi_fd_sink_handle_client_write), (gst_multi_fd_sink_handle_clients): * gst/tcp/gstmultifdsink.h: Add support for remuve_flush. 2007-06-05 15:59:00 +0000 Wim Taymans <wim.taymans@gmail.com> Add draft design for forcing keyframes in encoders and implement in theoraenc. Original commit message from CVS: * docs/design/draft-keyframe-force.txt: * ext/theora/theoraenc.c: (theora_enc_sink_event), (theora_enc_chain): Add draft design for forcing keyframes in encoders and implement in theoraenc. 2007-06-05 13:22:18 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.13 === 2007-06-05 12:50:24 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-decodebin2.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * gst-plugins-base.doap: * win32/common/config.h: * win32/vs6/grammar.dsp: * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstadder.dsp: * win32/vs6/libgstaudio.dsp: * win32/vs6/libgstaudioconvert.dsp: * win32/vs6/libgstaudiorate.dsp: * win32/vs6/libgstaudioresample.dsp: * win32/vs6/libgstaudioscale.dsp: * win32/vs6/libgstaudiotestsrc.dsp: * win32/vs6/libgstcdda.dsp: * win32/vs6/libgstdecodebin.dsp: * win32/vs6/libgstdecodebin2.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgstffmpegcolorspace.dsp: * win32/vs6/libgstgdp.dsp: * win32/vs6/libgstinterfaces.dsp: * win32/vs6/libgstnetbuffer.dsp: * win32/vs6/libgstogg.dsp: * win32/vs6/libgstpbutils.dsp: * win32/vs6/libgstplaybin.dsp: * win32/vs6/libgstriff.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstsinesrc.dsp: * win32/vs6/libgstsubparse.dsp: * win32/vs6/libgsttag.dsp: * win32/vs6/libgsttheora.dsp: * win32/vs6/libgsttypefindfunctions.dsp: * win32/vs6/libgstutils.dsp: * win32/vs6/libgstvideo.dsp: * win32/vs6/libgstvideorate.dsp: * win32/vs6/libgstvideoscale.dsp: * win32/vs6/libgstvideotestsrc.dsp: * win32/vs6/libgstvolume.dsp: * win32/vs6/libgstvorbis.dsp: Release 0.10.13 "What's going on?" Original commit message from CVS: Release 0.10.13 "What's going on?" 2007-06-05 12:32:03 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/cs.po: * po/de.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2007-05-31 17:08:58 +0000 Wim Taymans <wim@fluendo.com> gst-libs/gst/riff/riff-media.c: In riff, the depth is stored in the size field but it just means that the least signi... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): In riff, the depth is stored in the size field but it just means that the least significant bits are cleared. We can therefore just play the sample as if it had a depth == width. Fixes: #440997 Patch by: Wim Taymans <wim@fluendo.com> Patch by: Sebastian Dröge <slomo@circular-chaos.org> 2007-05-31 16:36:22 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/floatcast/floatcast.h: Define inline when needed on win32 builds. Fixes: #441295 Original commit message from CVS: * gst-libs/gst/floatcast/floatcast.h: Define inline when needed on win32 builds. Fixes: #441295 2007-05-29 13:38:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Stop buffering when the group is commited because the queues filled up. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (queue_overrun), (no_more_pads_full): Stop buffering when the group is commited because the queues filled up. Fixes #442024. 2007-05-25 10:07:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> Revert commits towards #152864 made so far. We'll pick it up again after the 0.10.13 release. Original commit message from CVS: * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_ensure_track_list), (gst_alsa_mixer_free), (gst_alsa_mixer_update), (gst_alsa_mixer_get_volume), (gst_alsa_mixer_set_volume), (gst_alsa_mixer_set_mute), (gst_alsa_mixer_set_record), (gst_alsa_mixer_set_option), (gst_alsa_mixer_get_option): * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_interface_supported), (gst_alsa_mixer_element_finalize), (gst_alsa_mixer_element_init), (gst_alsa_mixer_element_set_property), (gst_alsa_mixer_element_get_property), (gst_alsa_mixer_element_change_state): * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_update): * gst-libs/gst/interfaces/mixer.c: (gst_mixer_volume_changed), (gst_mixer_option_changed): * gst-libs/gst/interfaces/mixer.h: Revert commits towards #152864 made so far. We'll pick it up again after the 0.10.13 release. 2007-05-24 16:22:23 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: After an interrupt (PAUSED/flush) assume that the next sample should not be al... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): After an interrupt (PAUSED/flush) assume that the next sample should not be aligned to the previous sample. Fixes #417992. 2007-05-24 15:16:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Don't add channels and rate fields to the template caps for audio/x-dts, as wavparse ... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Don't add channels and rate fields to the template caps for audio/x-dts, as wavparse might not always be able to set them, which would then lead to 'caps are not a real subset of the template caps' warnings. 2007-05-24 11:15:32 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybasebin.c: Handle unknown or invalid pads without crashing, as might occur if a media file like a... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (new_decoded_pad_full): Handle unknown or invalid pads without crashing, as might occur if a media file like an mp3 is specified as a subtitle file. Fixes: #410039 2007-05-24 10:19:54 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybin.c: Block the subtitle bin output queue before ghosting it and linking, then unblock after. Th... Original commit message from CVS: * gst/playback/gstplaybin.c: (add_sink), (dummy_blocked_cb), (setup_sinks): Block the subtitle bin output queue before ghosting it and linking, then unblock after. This avoids spurious not-linked errors caused by the queue starting up (because it gets linked when it is ghosted). Fixes: #350299 2007-05-23 15:54:28 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/elements/playbin.c: Use /dev/zero instead of /dev/urandom to produce an invalid subtitle file. Avoids flu... Original commit message from CVS: * tests/check/elements/playbin.c: (test_suburi_error_unknowntype): Use /dev/zero instead of /dev/urandom to produce an invalid subtitle file. Avoids flukes where the input gets typefound to some valid but useless type. 2007-05-22 15:45:19 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add unit test for gnomevfssink seeking and position reporting for file:// URIs. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/gnomevfssink.c: (setup_gnomevfssink), (cleanup_gnomevfssink), (GST_START_TEST), (gnomevfssink_suite): Add unit test for gnomevfssink seeking and position reporting for file:// URIs. 2007-05-22 15:30:26 +0000 Mark Nauwelaerts <manauw@skynet.be> ext/gnomevfs/gstgnomevfssink.*: see #412648. Original commit message from CVS: Patch by: Mark Nauwelaerts <manauw at skynet be> * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_init), (gst_gnome_vfs_sink_open_file), (gst_gnome_vfs_sink_handle_event), (gst_gnome_vfs_sink_query), (gst_gnome_vfs_sink_render): * ext/gnomevfs/gstgnomevfssink.h: Fix position reporting, especially after a seek (from upstream), see #412648. 2007-05-22 15:04:41 +0000 Tim-Philipp Müller <tim@centricular.net> ext/cdparanoia/gstcdparanoiasrc.c: Repair umlaut. Original commit message from CVS: * ext/cdparanoia/gstcdparanoiasrc.c: Repair umlaut. 2007-05-22 11:40:31 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/riff/riff-media.c: Specify the full valid range for MP3 samplerates. Fixes a regression caused by extra ... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Specify the full valid range for MP3 samplerates. Fixes a regression caused by extra header checks since the last release. 2007-05-21 15:32:42 +0000 Mike Smith <msmith@xiph.org> sys/: Fix a locking-order bug I introduced with my changes the other day. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): Fix a locking-order bug I introduced with my changes the other day. Patch by Mike Smith. 2007-05-21 15:24:21 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: Don't look inside 0-length packets (which indicate duplicated frames) Original commit message from CVS: * ext/theora/theoradec.c: (theora_handle_data_packet): Don't look inside 0-length packets (which indicate duplicated frames) 2007-05-21 10:25:44 +0000 Wim Taymans <wim.taymans@gmail.com> Small cleanups. Original commit message from CVS: * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_read_sector): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Small cleanups. * ext/theora/theoradec.c: (theora_dec_sink_event): Fix typo. * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_set_gst_timestamp): Add some FIXME * gst/playback/gstdecodebin.c: (queue_underrun_cb): And some debug info when a FIXME path is hit. 2007-05-21 09:45:28 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Some cleanups, remove minptime property as it is now in the parent class. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_class_init), (gst_base_rtp_audio_payload_init), (gst_base_rtp_audio_payload_finalize), (gst_base_rtp_audio_payload_handle_frame_based_buffer), (gst_base_rtp_audio_payload_handle_sample_based_buffer), (gst_base_rtp_payload_audio_handle_event): Some cleanups, remove minptime property as it is now in the parent class. Override parent class event function. * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init), (gst_basertppayload_init), (gst_basertppayload_event), (gst_basertppayload_set_property), (gst_basertppayload_get_property): * gst-libs/gst/rtp/gstbasertppayload.h: Add min-ptime property. Add handle-event vmethod. Fixes #415001. 2007-05-18 17:10:03 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update spec Original commit message from CVS: update spec 2007-05-18 15:23:43 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/audio/gstbaseaudiosink.c Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_change_state): Fix typo in comment. * gst/playback/gstdecodebin.c (gst_decode_bin_class_init, free_dynamics, pad_probe, close_pad_link, try_to_link_1, get_our_ghost_pad, remove_element_chain, queue_underrun_cb, close_link): * gst/playback/gstplaybin.c (gst_play_bin_set_property, gen_audio_element, remove_sinks, gst_play_bin_send_event_to_sink): Remove trailing whitespaces in comments. * gst/volume/Makefile.am: Fix tabs. 2007-05-18 15:10:08 +0000 Marc-Andre Lureau <marcandre.lureau@gmail.com> * ChangeLog: * gst-libs/gst/interfaces/mixer.h: gst-libs/gst/interfaces/mixer.h (mixer_type, option_changed, set_option, get_option, _gst_reserved): Original commit message from CVS: patch by: Marc-Andre Lureau <marcandre.lureau@gmail.com> * gst-libs/gst/interfaces/mixer.h (mixer_type, option_changed, set_option, get_option, _gst_reserved): Revert reordering functions (keep ABI). 2007-05-17 17:35:46 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/: When we create our own window, indicate that we handle the Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put), (gst_ximagesink_xwindow_new), (gst_ximagesink_handle_xevents), (gst_ximagesink_show_frame): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put), (gst_xvimagesink_xwindow_new), (gst_xvimagesink_handle_xevents), (gst_xvimagesink_show_frame): When we create our own window, indicate that we handle the WM_DELETE client message from the window manager, so that it won't kill our window (and our app) along with it. Handle ClientMessage, post an error on the bus, and close the window. Further buffers arriving will result in a FlowError because the window has been destroyed. Fixes: #393975 Clean up the X event handling loop and make them the same for both xvimagesink and ximagesink while I'm at it. 2007-05-17 16:27:32 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin2.c: Make decodebin2 autoplug depayloaders too. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_factory_filter): Make decodebin2 autoplug depayloaders too. * gst/playback/gsturidecodebin.c: (source_new_pad): Set the newly created decoder in a usable state when autoplugging a dynamic source such as RTSP. 2007-05-17 16:11:03 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gststreaminfo.c: Ignore video-codec tag for audio streams and ignore audio-codec tags for video streams.... Original commit message from CVS: * gst/playback/gststreaminfo.c: (cb_probe): Ignore video-codec tag for audio streams and ignore audio-codec tags for video streams. Should make codec name collection a bit more robust against sloppy demuxers that send tag events containing both tags down each pad. 2007-05-17 15:22:44 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: Tweak the buffering thresholds a little. Original commit message from CVS: * gst/playback/gstqueue2.c: (update_rates): Tweak the buffering thresholds a little. Update the buffer size with the previously calculate rate instead of only when we calculate a new rate so that we get smoother buffering updates. * gst/playback/Makefile.am: * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_base_init), (gst_uri_decode_bin_class_init), (gst_uri_decode_bin_init), (gst_uri_decode_bin_finalize), (gst_uri_decode_bin_set_property), (gst_uri_decode_bin_get_property), (unknown_type), (add_element_stream), (no_more_pads_full), (no_more_pads), (source_no_more_pads), (new_decoded_pad), (array_has_value), (gen_source_element), (has_all_raw_caps), (analyse_source), (remove_decoders), (make_decoder), (remove_source), (source_new_pad), (setup_source), (decoder_query_init), (decoder_query_duration_fold), (decoder_query_duration_done), (decoder_query_position_fold), (decoder_query_position_done), (decoder_query_latency_fold), (decoder_query_latency_done), (decoder_query_seeking_fold), (decoder_query_seeking_done), (decoder_query_generic_fold), (gst_uri_decode_bin_query), (gst_uri_decode_bin_change_state), (plugin_init): New element that intergrates a source, optional buffering element and decodebin. 2007-05-17 14:17:17 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Bump libtheora requirement to 1.0alpha5 for the pixformat check (also has a .pc file, so we don't need ... Original commit message from CVS: * configure.ac: Bump libtheora requirement to 1.0alpha5 for the pixformat check (also has a .pc file, so we don't need the fallback check any longer). Fixes #438840. 2007-05-17 13:36:11 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstqueue2.c: fix build. Original commit message from CVS: * gst/playback/gstqueue2.c: (gst_queue_get_type), (gst_queue_class_init), (gst_queue_finalize), (update_time_level), (apply_segment), (apply_buffer), (update_buffering), (reset_rate_timer), (update_rates), (gst_queue_locked_flush), (gst_queue_locked_enqueue), (gst_queue_locked_dequeue), (gst_queue_handle_sink_event), (gst_queue_is_filled), (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop), (plugin_init): fix build. 2007-05-17 11:57:44 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: On our way to playbin2 this is the new network queue that does buffering all by itself using high and ... Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstqueue2.c: (gst_queue_get_type), (gst_queue_class_init), (gst_queue_init), (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_bufferalloc), (gst_queue_acceptcaps), (update_time_level), (apply_segment), (apply_buffer), (update_buffering), (reset_rate_timer), (update_rates), (gst_queue_locked_flush), (gst_queue_locked_enqueue), (gst_queue_locked_dequeue), (gst_queue_handle_sink_event), (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop), (gst_queue_handle_src_event), (gst_queue_handle_src_query), (gst_queue_sink_activate_push), (gst_queue_src_activate_push), (gst_queue_change_state), (gst_queue_set_property), (gst_queue_get_property), (plugin_init): On our way to playbin2 this is the new network queue that does buffering all by itself using high and low watermarks. It can also measure up and downstream bandwidth to optimally size the queue. 2007-05-17 11:16:14 +0000 Michael Smith <msmith@xiph.org> gst/: Use the segment->last_stop value to calculate the next timestamp to generate after a seek; not the segment->sta... Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_do_seek): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_do_seek): Use the segment->last_stop value to calculate the next timestamp to generate after a seek; not the segment->start value. 2007-05-15 20:14:06 +0000 David Schleef <ds@schleef.org> docs/Makefile.am: Install docs even when --disable-gtk-doc is disabled. This matches the behavior of gtk+. Fixes #3... Original commit message from CVS: * docs/Makefile.am: Install docs even when --disable-gtk-doc is disabled. This matches the behavior of gtk+. Fixes #349099. 2007-05-15 17:11:09 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Some more chained streaming ogg timestamp fixes. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page): Some more chained streaming ogg timestamp fixes. 2007-05-15 16:46:10 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Add some FIXMEs. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet), (gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page): Add some FIXMEs. Fix chain start/stop segment handling based on patch by <ahalda at cs dot mcgill dot ca> see #320984. 2007-05-15 15:33:54 +0000 Michael Smith <msmith@xiph.org> configure.ac: We don't require a C++ compiler. So don't require one. Original commit message from CVS: * configure.ac: We don't require a C++ compiler. So don't require one. 2007-05-15 15:29:17 +0000 Stefan Kost <ensonic@users.sourceforge.net> * ChangeLog: * ext/alsa/gstalsamixer.c: ext/alsa/gstalsamixer.c (source, n_poll_fds, poll_fds, gst_alsa_mixer_check, gst_alsa_mixer_dispatch, gst_alsa_mixer_... Original commit message from CVS: * ext/alsa/gstalsamixer.c (source, n_poll_fds, poll_fds, gst_alsa_mixer_check, gst_alsa_mixer_dispatch, gst_alsa_mixer_finalize, gst_alsa_mixer_handle_source_callback, gst_alsa_mixer_handle_callback, gst_alsa_mixer_elem_handle_callback, gst_alsa_mixer_ensure_track_list, gst_alsa_mixer_update_option, gst_alsa_mixer_update_track): Apply some of the cleanup Tim suggested in #152864 afterwards. 2007-05-15 14:01:26 +0000 Marc-Andre Lureau <marcandre.lureau@gmail.com> ext/alsa/gstalsamixer.c (main_context, GstAlsaMixerWatch, _GstAlsaMixerWatch, source, n_poll_fds, poll_fds, gst_alsa_... Original commit message from CVS: patch by: Marc-Andre Lureau <marcandre.lureau@gmail.com> * ext/alsa/gstalsamixer.c (main_context, GstAlsaMixerWatch, _GstAlsaMixerWatch, source, n_poll_fds, poll_fds, gst_alsa_mixer_watch_funcs, gst_alsa_mixer_prepare, gst_alsa_mixer_check, gst_alsa_mixer_dispatch, gst_alsa_mixer_finalize, gst_alsa_mixer_find_master_mixer, gst_alsa_mixer_handle_source_callback, gst_alsa_mixer_handle_callback, gst_alsa_mixer_elem_handle_callback, gst_alsa_mixer_ensure_track_list, gst_alsa_mixer_free, gst_alsa_mixer_get_volume, gst_alsa_mixer_set_volume, gst_alsa_mixer_set_mute, gst_alsa_mixer_set_record, gst_alsa_mixer_get_option, gst_alsa_mixer_update_option, gst_alsa_mixer_update_track, _gst_alsa_mixer_set_interface): * ext/alsa/gstalsamixer.h (handle_source, interface, dir): * ext/alsa/gstalsamixerelement.c (gst_alsa_mixer_element_details, gst_alsa_mixer_element_interface_supported, gst_alsa_mixer_element_finalize, gst_alsa_mixer_element_init, gst_alsa_mixer_element_set_property, gst_alsa_mixer_element_get_property, gst_alsa_mixer_element_change_state): * ext/alsa/gstalsamixertrack.c (gst_alsa_mixer_track_update): * gst-libs/gst/interfaces/mixer.c (gst_mixer_volume_changed, gst_mixer_option_changed): * gst-libs/gst/interfaces/mixer.h (set_option, get_option, volume_changed, option_changed, _gst_reserved): Implement notification for alsamixer. Fixes #152864 2007-05-15 03:53:11 +0000 David Schleef <ds@schleef.org> gst/videotestsrc/videotestsrc.*: Add support for video/x-raw-bayer. Original commit message from CVS: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: Add support for video/x-raw-bayer. 2007-05-13 01:06:19 +0000 David Schleef <ds@schleef.org> sys/xvimage/xvimagesink.c: Add some sanity checking for the XVImage size returned by X. Original commit message from CVS: * sys/xvimage/xvimagesink.c: Add some sanity checking for the XVImage size returned by X. Related to #377400. 2007-05-12 16:18:39 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Parse and use additional caps fields as described in updated application/x-rt... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_set_gst_timestamp): Parse and use additional caps fields as described in updated application/x-rtp caps spec. 2007-05-12 16:16:22 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: If there is a stream in a chain without any data packets, ignore the stream in the total lengt... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet), (gst_ogg_demux_collect_chain_info): If there is a stream in a chain without any data packets, ignore the stream in the total length calculations. Might be related to #436820. 2007-05-11 17:33:43 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/typefind/gsttypefindfunctions.c: Consolidate and re-work our mpeg system stream detection to probe more packets a... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg_sys_is_valid_pack), (mpeg_sys_is_valid_pes), (mpeg_sys_is_valid_sys), (mpeg_sys_type_find), (mpeg_ts_type_find), (mpeg4_video_type_find), (mpeg_video_type_find), (mpeg_video_stream_type_find), (plugin_init): Consolidate and re-work our mpeg system stream detection to probe more packets and produce a higher confidence result. Fixes a regression caused by lowering the typefind probability last year - related to bug #397810. Remove the redundant MPEG-1 specific typefind function, as the new one detects both MPEG-1 & MPEG-2 happily. Also cleanup the MPEG elementary and MPEG-TS detection functions a little. Tested against my media test directory, with some improvements and no regressions. 2007-05-10 15:28:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Connect to the new queue "pushing" signal instead of the broken "running" one. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (fill_buffer), (check_queue), (queue_out_of_data): Connect to the new queue "pushing" signal instead of the broken "running" one. 2007-05-09 21:17:40 +0000 Sébastien Moutte <sebastien@moutte.net> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Move variable declaration before the first instruction. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_handle_frame_based_buffer): Move variable declaration before the first instruction. * gst/videotestsrc/videotestsrc.c: Define M_PI if it's not defined yet. * win32/common/libgstrtp.def: Add new exported functions. 2007-05-09 11:54:32 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: gst_pad_push_event() does not return a GstFlowReturn! Original commit message from CVS: * ext/theora/theoradec.c: (theora_handle_type_packet): gst_pad_push_event() does not return a GstFlowReturn! 2007-05-09 11:25:34 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/: Some small cosmetic changes. Original commit message from CVS: * tests/examples/seek/scrubby.c: (stop_cb), (main): * tests/examples/seek/seek.c: (do_seek): Some small cosmetic changes. 2007-05-08 19:24:01 +0000 Stefan Kost <ensonic@users.sourceforge.net> * ChangeLog: * gst/adder/gstadder.c: * gst/adder/gstadder.h: gst/adder/gstadder.c (gst_adder_src_event, gst_adder_collected, gst_adder_change_state): gst/adder/gstadder.h (bps, o... Original commit message from CVS: * gst/adder/gstadder.c (gst_adder_src_event, gst_adder_collected, gst_adder_change_state): * gst/adder/gstadder.h (bps, offset, collect_event, segment, segment_pending, segment_position, segment_rate): Handle playback-rate on adder. 2007-05-07 11:43:31 +0000 Michael Smith <msmith@xiph.org> ext/theora/: Don't push events (newsegment, tags) before initialising the decoder. Original commit message from CVS: * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_reset), (theora_dec_sink_event), (theora_handle_comment_packet), (theora_handle_type_packet), (theora_dec_change_state): Don't push events (newsegment, tags) before initialising the decoder. This is neccesary for seeking to work correctly in gnonlin. 2007-05-04 13:10:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/: gst/audiotestsrc/gstaudiotestsrc.c Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst/adder/gstadder.c: * gst/audiotestsrc/gstaudiotestsrc.c (gst_audio_test_src_create_white_noise): * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c (VOLUME_UNITY_INT16, VOLUME_UNITY_INT16_BIT_SHIFT, VOLUME_MAX_DOUBLE, volume_sink_template, volume_src_template, gst_volume_init, volume_process_double, volume_process_int16, volume_process_int16_clamp): Doc fixes and formatting. 2007-05-04 12:41:21 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Minimal check for volume's GstController usability; also another test for #422295. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/volume.c: (GST_START_TEST), (volume_suite): Minimal check for volume's GstController usability; also another test for #422295. 2007-05-04 09:06:38 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/cdda/gstcddabasesrc.c: Fix it so that it (a) makes sense and (b) doesn't break everything cdda-related i... Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_add_track): Fix it so that it (a) makes sense and (b) doesn't break everything cdda-related including the unit test. 2007-05-04 08:46:59 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/cdda/gstcddabasesrc.c: Fix build when disabling asserts. Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_add_track): Fix build when disabling asserts. 2007-05-03 16:29:10 +0000 Tim-Philipp Müller <tim@centricular.net> sys/ximage/ximagesink.c: When XShm is not available, we might get row strides that are not rounded up to multiples of... Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new): When XShm is not available, we might get row strides that are not rounded up to multiples of four; this is bad, because virtually every RGB-processing element in GStreamer assumes rowstrides are rounded up to multiples of four, so let's allocate at least enough memory to avoid crashes in this case. The image will still be displayed distorted though if this happens, so that still needs fixing (maybe by allocating a bigger image with an 'even' width and then clipping it appropriately when rendering - something for Xlib aficionados in any case). 2007-05-03 13:16:21 +0000 Michael Smith <msmith@xiph.org> gst/audiorate/gstaudiorate.c: If a buffer doesn't have a timestamp, assume it's contiguous with the previous buffer, ... Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain): If a buffer doesn't have a timestamp, assume it's contiguous with the previous buffer, and synthesise timestamps appropriately. 2007-05-03 11:24:00 +0000 Edward Hervey <bilboed@bilboed.com> tests/check/elements/videorate.c: Set buffer timestamp to a valid value in order to test the buffer really does stay ... Original commit message from CVS: * tests/check/elements/videorate.c: (GST_START_TEST): Set buffer timestamp to a valid value in order to test the buffer really does stay in videorate. 2007-05-03 10:47:22 +0000 Edward Hervey <bilboed@bilboed.com> gst/videorate/gstvideorate.c: There is no sensible way to handle incoming buffers which don't have a valid timestamp.... Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_chain): There is no sensible way to handle incoming buffers which don't have a valid timestamp. We therefore discard them and wait for the next one. 2007-05-01 18:45:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Better error message for text files. Original commit message from CVS: * gst/playback/gstdecodebin.c: (type_found), (plugin_init): * gst/playback/gstdecodebin2.c: (plugin_init): Better error message for text files. 2007-04-29 14:38:05 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtcpbuffer.c: Fix offset bug in generation RR packets. Original commit message from CVS: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_add_rb): Fix offset bug in generation RR packets. 2007-04-27 15:33:46 +0000 Julien Moutte <julien@moutte.net> ext/theora/theoradec.c: Calculate buffer duration correctly to generate a perfect stream (#433888). Original commit message from CVS: 2007-04-27 Julien MOUTTE <julien@moutte.net> * ext/theora/theoradec.c: (_theora_granule_time), (theora_dec_push_forward), (theora_handle_data_packet), (theora_dec_decode_buffer): Calculate buffer duration correctly to generate a perfect stream (#433888). * gst/audioresample/gstaudioresample.c: (audioresample_check_discont): Glib provides ABS. 2007-04-27 15:01:40 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtcpbuffer.*: Fix RB block parsing and writing. Original commit message from CVS: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_get_rb), (gst_rtcp_packet_add_rb), (gst_rtcp_packet_sdes_add_item), (gst_rtcp_packet_sdes_add_entry), (gst_rtcp_packet_bye_add_ssrc), (gst_rtcp_packet_bye_add_ssrcs), (get_reason_offset), (gst_rtcp_packet_bye_set_reason): * gst-libs/gst/rtp/gstrtcpbuffer.h: Fix RB block parsing and writing. Add support for constructing BYE packets. 2007-04-25 08:54:34 +0000 Tim-Philipp Müller <tim@centricular.net> When posting a warning message because samples were dropped, post something more intelligible than he default error m... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (_do_init), (gst_base_audio_src_create): * po/POTFILES.in: When posting a warning message because samples were dropped, post something more intelligible than he default error message for clock errors which is just confusing in this context (#432984). 2007-04-25 08:10:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtcpbuffer.*: Implement code to write SR, RR and SDES packets. Original commit message from CVS: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_buffer_new), (gst_rtcp_buffer_end), (gst_rtcp_buffer_get_packet_count), (read_packet_header), (gst_rtcp_packet_move_to_next), (gst_rtcp_buffer_add_packet), (gst_rtcp_packet_sr_set_sender_info), (gst_rtcp_packet_rr_set_ssrc), (gst_rtcp_packet_add_rb), (gst_rtcp_packet_sdes_get_item_count), (gst_rtcp_packet_sdes_first_item), (gst_rtcp_packet_sdes_next_item), (gst_rtcp_packet_sdes_get_ssrc), (gst_rtcp_packet_sdes_first_entry), (gst_rtcp_packet_sdes_next_entry), (gst_rtcp_packet_sdes_get_entry), (gst_rtcp_packet_sdes_add_item), (gst_rtcp_packet_sdes_add_entry): * gst-libs/gst/rtp/gstrtcpbuffer.h: Implement code to write SR, RR and SDES packets. 2007-04-24 20:45:24 +0000 Christian Kirbach <Christian.Kirbach@googlemail.com> sys/ximage/ximagesink.c: Fix build if XShm is not available (#432362). Original commit message from CVS: Patch by: Christian Kirbach <Christian dot Kirbach at googlemail com> * sys/ximage/ximagesink.c: Fix build if XShm is not available (#432362). 2007-04-24 18:58:25 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/gstaudioconvert.c: Initalize the AudioConvertCtx with zeroes, otherwise it will contain pointers to ... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_init): Initalize the AudioConvertCtx with zeroes, otherwise it will contain pointers to random memory which are passed to g_free() when audio_convert_prepare_context() is called the first time. 2007-04-24 15:00:07 +0000 Dan Williams <dcbw@redhat.com> gst/videorate/gstvideorate.c: Don't leak incoming buffer if gst_pad_push() returns a non-OK flow. Fixes #432755. Original commit message from CVS: Patch by: Dan Williams <dcbw redhat com> * gst/videorate/gstvideorate.c: (gst_video_rate_chain): Don't leak incoming buffer if gst_pad_push() returns a non-OK flow. Fixes #432755. * tests/check/elements/videorate.c: (GST_START_TEST), (videorate_suite): Unit test for the above by Yours Truly. 2007-04-23 20:04:28 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/adder/gstadder.c: Fix non-flushing segmented seeks, Fixes #340060 for me Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_setcaps), (gst_adder_src_event), (gst_adder_sink_event), (gst_adder_collected): Fix non-flushing segmented seeks, Fixes #340060 for me 2007-04-21 15:29:27 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery: add API keyword Original commit message from CVS: ChangeLog surgery: add API keyword 2007-04-21 15:25:22 +0000 Olivier Crete <tester@tester.ca> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Chain up to parent class in dispose function; get rid of unnecessary 'dipo... Original commit message from CVS: Patch by: Olivier Crete <tester at tester ca> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_class_init), (gst_base_rtp_audio_payload_init), (gst_base_rtp_audio_payload_dispose): Chain up to parent class in dispose function; get rid of unnecessary 'diposed' flag in private structure (#415001). 2007-04-21 15:10:25 +0000 Tim-Philipp Müller <tim@centricular.net> Some minor docs fixes and additions; also add missing 'Since' bits. Original commit message from CVS: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_class_init): * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: Some minor docs fixes and additions; also add missing 'Since' bits. 2007-04-21 14:40:45 +0000 Zeeshan Ali <zeenix@gmail.com> gst-libs/gst/rtp/gstbasertpaudiopayload.*: The recently-added gst_base_rtp_audio_payload_push() should take an object... Original commit message from CVS: Patch by: Zeeshan Ali <zeenix gmail com> * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_handle_frame_based_buffer), (gst_base_rtp_audio_payload_handle_sample_based_buffer), (gst_base_rtp_audio_payload_push): * gst-libs/gst/rtp/gstbasertpaudiopayload.h: The recently-added gst_base_rtp_audio_payload_push() should take an object of type GstBaseRTPAudioPayload as first argument (#431672). 2007-04-21 14:14:24 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioresample/gstaudioresample.c: Make more functions static, just because we can. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Make more functions static, just because we can. 2007-04-21 13:54:39 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/audioresample.c: Add unit test for audioresample shutdown crasher (#420106). Original commit message from CVS: * tests/check/elements/audioresample.c: Add unit test for audioresample shutdown crasher (#420106). 2007-04-20 10:42:24 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/subparse/: Use GST_DISABLE_XML here Original commit message from CVS: * gst/subparse/gstsubparse.c: * gst/subparse/samiparse.c: Use GST_DISABLE_XML here * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put), (gst_xvimagesink_xwindow_new), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_buffer_alloc), (gst_xvimagesink_navigation_send_event): * sys/xvimage/xvimagesink.h: Include stdlib.h when using atoi. * tests/check/elements/playbin.c: (playbin_suite): Use GST_DISABLE_REGISTRY here 2007-04-19 16:58:53 +0000 Michael Smith <msmith@xiph.org> ext/theora/: Track initialisation state; don't try to use encoder state if we're not initialised (it'll segfault). Original commit message from CVS: * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: (theora_enc_sink_setcaps), (theora_enc_sink_event), (theora_enc_change_state): Track initialisation state; don't try to use encoder state if we're not initialised (it'll segfault). 2007-04-18 11:06:42 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/pipelines/.cvsignore: Fix build. Original commit message from CVS: * tests/check/pipelines/.cvsignore: Fix build. 2007-04-17 10:56:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst/app/Makefile.am: Fix CFLAGS and hopefully #430594. Original commit message from CVS: * gst/app/Makefile.am: Fix CFLAGS and hopefully #430594. 2007-04-17 02:53:16 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: Allow random depths between 1 and 32 instead of only multiplies of 8. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Allow random depths between 1 and 32 instead of only multiplies of 8. 2007-04-17 02:04:21 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: Set the maximum number of channels for PCM and float in the correct place to have it ... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Set the maximum number of channels for PCM and float in the correct place to have it also used when creating the template caps. 2007-04-17 01:56:07 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: Correctly support 4, 6 and 8 channels with normal PCM and float wav files. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Correctly support 4, 6 and 8 channels with normal PCM and float wav files. Fix the depth and signedness calculation in extensible wav files and also handle 1, 2, 4, 6, 8 channels here when a file without channel mask is found. Add support for float, alaw and mulaw in extensible wav files. This allows correct playback of all but 5 files from http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Samples.html (gst_riff_create_audio_template_caps): Add voxware and float formats to the template caps. 2007-04-16 22:20:03 +0000 Vincent Torri <vtorri@univ-evry.fr> ext/pango/gstclockoverlay.c: Fix unused variable warning if HAVE_LOCALTIME_R is undefinied Original commit message from CVS: Patch by: Vincent Torri <vtorri at univ-evry dot fr> * ext/pango/gstclockoverlay.c: (gst_clock_overlay_render_time): Fix unused variable warning if HAVE_LOCALTIME_R is undefinied * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): * gst/audioresample/gstaudioresample.c: (audioresample_do_output): Use the correct format strings for integer formats. 2007-04-16 21:44:34 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst-plugins-base.doap: fix release date Original commit message from CVS: fix release date 2007-04-16 21:42:13 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst-plugins-base.doap: fix release date Original commit message from CVS: fix release date 2007-04-15 14:35:53 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/theora/theoraenc.c (theora_buffer_from_packet, theora_enc_chain): Don't use pad_alloc_buffer_and_set_caps to crea... Original commit message from CVS: * ext/theora/theoraenc.c (theora_buffer_from_packet, theora_enc_chain): Don't use pad_alloc_buffer_and_set_caps to create a small header packet, or, worse, to create a big temporary video buffer using the src pad. 2007-04-14 12:34:55 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/gdp/gstgdppay.c (gst_gdp_pay_chain): tests/check/pipelines/streamheader.c (tag_event_probe_cb, Original commit message from CVS: * gst/gdp/gstgdppay.c (gst_gdp_pay_chain): * tests/check/pipelines/streamheader.c (tag_event_probe_cb, GST_START_TEST, buffer_probe_cb, GST_START_TEST): Fix a bug where serialized IN_CAPS buffers needed to be set IN_CAPS. 2007-04-13 22:10:58 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: add debug Original commit message from CVS: add debug 2007-04-13 21:55:31 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * tests/check/pipelines/streamheader.c: tests/check/pipelines/streamheader.c (tag_event_probe_cb, Original commit message from CVS: * tests/check/pipelines/streamheader.c (tag_event_probe_cb, GST_START_TEST, n_in_caps, buffer_probe_cb, GST_START_TEST, streamheader_suite): Add another test set up for failure 2007-04-13 21:09:04 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: * gst/gdp/gstgdpdepay.c: debug changes Original commit message from CVS: debug changes 2007-04-13 21:08:11 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/Makefile.am: tests/check/pipelines/streamheader.c (n_tags, tag_event_probe_cb, Original commit message from CVS: * tests/check/Makefile.am: * tests/check/pipelines/streamheader.c (n_tags, tag_event_probe_cb, GST_START_TEST, streamheader_suite, main): Add a test for the streamheader bug Wim fixed. 2007-04-13 11:42:34 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/theora/theoradec.c: Fix misleading comment. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_sink_event): Fix misleading comment. 2007-04-13 06:17:45 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/riff-media.c: More sanity checks for the header fields. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): More sanity checks for the header fields. 2007-04-12 16:36:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/tags.c: Try encodings from all environment variables, not just those in the first environment variab... Original commit message from CVS: * gst-libs/gst/tag/tags.c: (gst_tag_freeform_string_to_utf8): Try encodings from all environment variables, not just those in the first environment variable that is set. 2007-04-12 15:00:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videorate/gstvideorate.c: Add some debug. Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_setcaps), (gst_video_rate_chain): Add some debug. * tests/check/elements/videorate.c: (GST_START_TEST), (videorate_suite): Added check for videorate changing caps handling. Closes #421834. 2007-04-12 12:57:33 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisdec.c: Use scale functions to avoid overflow when calculating duration of vorbis buffers. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): Use scale functions to avoid overflow when calculating duration of vorbis buffers. 2007-04-12 12:19:20 +0000 Tim-Philipp Müller <tim@centricular.net> API: add gst_tag_freeform_string_to_utf8() (#405072). Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: (gst_tag_freeform_string_to_utf8): API: add gst_tag_freeform_string_to_utf8() (#405072). * gst-libs/gst/tag/gstid3tag.c: (gst_tag_extract_id3v1_string): Use gst_tag_freeform_string_to_utf8() here. 2007-04-12 10:38:03 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: log tweaking Original commit message from CVS: log tweaking 2007-04-12 10:03:22 +0000 Wim Taymans <wim.taymans@gmail.com> gst/gdp/gstgdppay.c: Make sure we set the IN_CAPS flag correctly. Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_chain), (gst_gdp_pay_sink_event): Make sure we set the IN_CAPS flag correctly. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_render): Get the IN_CAPS flag before we call functions that mess with the flags. 2007-04-10 20:37:05 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * gst/gdp/gstgdppay.c: gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader, gst_gdp_pay_chain, gst_gdp_pay_sink_event): Original commit message from CVS: * gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader, gst_gdp_pay_chain, gst_gdp_pay_sink_event): Only stamp buffers with offset/offset_end right before they get pushed. This ensures offset continuity, which was not the case before as shown by gst-launch -v -m audiotestsrc num-buffers=10 ! audioconvert ! vorbisenc ! gdppay ! identity check-imperfect-offset=TRUE ! fakesink silent=TRUE 2007-04-10 20:25:06 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: adding debugging Original commit message from CVS: adding debugging 2007-04-10 11:23:18 +0000 Christian Schaller <uraeus@gnome.org> * common: * gst-plugins-base.spec.in: update spec file for RTP changes Original commit message from CVS: update spec file for RTP changes 2007-04-06 12:58:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin.c: Activate sync in playbin, we are ready to handle it for live streams. Original commit message from CVS: * gst/playback/gstplaybin.c: (add_sink), (gst_play_bin_change_state): Activate sync in playbin, we are ready to handle it for live streams. 2007-04-06 09:56:18 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/playbin.c: Add small test for stream-info-value-array code paths. Original commit message from CVS: * tests/check/elements/playbin.c: (test_sink_usage_video_only_stream), (playbin_suite): Add small test for stream-info-value-array code paths. 2007-04-05 15:44:40 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Don't try to create invalid calibration parameters by making the internal time... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_skew_slaving): Don't try to create invalid calibration parameters by making the internal time go backwards, instead make external time go forward. 2007-04-05 10:27:06 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> gst/playback/gstplaybasebin.c: Fix leak in add_stream(), when g_value_set_object() increases the refcount of streamin... Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/playback/gstplaybasebin.c: (add_stream): Fix leak in add_stream(), when g_value_set_object() increases the refcount of streaminfo object. Fixes #426250. 2007-04-04 02:45:03 +0000 David Schleef <ds@schleef.org> gst/videotestsrc/: Add a test pattern called "circular", which has concentric rings with varying radial frequency. T... Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: Add a test pattern called "circular", which has concentric rings with varying radial frequency. The main purpose of this pattern is to test fidelity loss in a filter or scaler element. Notably, this pattern is scale invariant, and is optimally viewed with a width (and height) of 400. 2007-04-03 11:10:52 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> gst/playback/gstdecodebin2.c: Decodebin2 doesn't unref pads it obtains in some occasions: Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/playback/gstdecodebin2.c: (connect_pad), (expose_pad), (deactivate_free_recursive): Decodebin2 doesn't unref pads it obtains in some occasions: - multiqueue src pads, when either connecting further or exposing - sink pads of new autoplugged elements - peer pads when recursively freeing elements Fixes #425455. 2007-03-30 17:05:23 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: Add audio/x-raw-float support, now that audioconvert support non-native endianness fl... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Add audio/x-raw-float support, now that audioconvert support non-native endianness floats. 2007-03-30 15:00:49 +0000 Tim-Philipp Müller <tim@centricular.net> docs/libs/gst-plugins-base-libs-docs.sgml: gstreamer-plugins-base.pc doesn't exist, it's gstreamer-plugins-base-0.10.pc. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: gstreamer-plugins-base.pc doesn't exist, it's gstreamer-plugins-base-0.10.pc. 2007-03-29 18:42:34 +0000 René Stadler <mail@renestadler.de> with some minor changes Original commit message from CVS: Patch by: René Stadler <mail at renestadler dot de> with some minor changes * gst-libs/gst/floatcast/floatcast.h: Use more efficient float endianness conversion functions that don't involve 2 function calls per value. * gst/audioconvert/audioconvert.c: (audio_convert_get_func_index), (check_default), (audio_convert_prepare_context): * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_parse_caps), (make_lossless_changes): Support non-native endianness floats as input and output. Fixes #339838. * tests/check/elements/audioconvert.c: (verify_convert), (GST_START_TEST): Add unit tests for the non-native endianness float conversions. 2007-03-29 16:23:53 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.*: Add Private structure. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_base_init), (gst_base_rtp_depayload_class_init), (gst_base_rtp_depayload_init), (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_set_gst_timestamp), (gst_base_rtp_depayload_change_state), (gst_base_rtp_depayload_set_property), (gst_base_rtp_depayload_get_property): * gst-libs/gst/rtp/gstbasertpdepayload.h: Add Private structure. Bring element code to 2007. Parse clock-base caps param and use it when generating the newsegment. Reset variables before going to PAUSED. Fix some docs. 2007-03-29 16:20:31 +0000 Wim Taymans <wim.taymans@gmail.com> Add RTCP docs. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_get_adapter): Add RTCP docs. Fix some more docs. * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_buffer_new_take_data), (gst_rtcp_buffer_new_copy_data), (gst_rtcp_buffer_validate_data), (gst_rtcp_buffer_validate), (gst_rtcp_buffer_get_packet_count), (read_packet_header), (gst_rtcp_buffer_get_first_packet), (gst_rtcp_packet_move_to_next), (gst_rtcp_buffer_add_packet), (gst_rtcp_packet_remove), (gst_rtcp_packet_get_padding), (gst_rtcp_packet_get_type), (gst_rtcp_packet_get_count), (gst_rtcp_packet_get_length), (gst_rtcp_packet_sr_get_sender_info), (gst_rtcp_packet_sr_set_sender_info), (gst_rtcp_packet_rr_get_ssrc), (gst_rtcp_packet_rr_set_ssrc), (gst_rtcp_packet_get_rb_count), (gst_rtcp_packet_get_rb), (gst_rtcp_packet_add_rb), (gst_rtcp_packet_set_rb), (gst_rtcp_packet_sdes_get_chunk_count), (gst_rtcp_packet_sdes_first_chunk), (gst_rtcp_packet_sdes_next_chunk), (gst_rtcp_packet_sdes_get_ssrc), (gst_rtcp_packet_sdes_first_item), (gst_rtcp_packet_sdes_next_item), (gst_rtcp_packet_sdes_get_item), (gst_rtcp_packet_bye_get_ssrc_count), (gst_rtcp_packet_bye_get_nth_ssrc), (gst_rtcp_packet_bye_add_ssrc), (gst_rtcp_packet_bye_add_ssrcs), (get_reason_offset), (gst_rtcp_packet_bye_get_reason_len), (gst_rtcp_packet_bye_get_reason), (gst_rtcp_packet_bye_set_reason): * gst-libs/gst/rtp/gstrtcpbuffer.h: Add new helper object for parsing and creating RTCP messages. 2007-03-29 12:07:02 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst-libs/gst/riff/riff-media.c: PCM samples with width=8 must be always unsigned, no matter what depth they have. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): PCM samples with width=8 must be always unsigned, no matter what depth they have. 2007-03-29 11:24:47 +0000 Andy Wingo <wingo@pobox.com> gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Make perfect offsets also, not just timestamps. Original commit message from CVS: 2007-03-29 Andy Wingo <wingo@pobox.com> * gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Make perfect offsets also, not just timestamps. * tests/check/elements/videorate.c (test_more): Test that given any incoming offsets, that videorate produces perfect offsets. 2007-03-29 10:19:45 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-ids.h: Add some more RIFF formats. Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: Add some more RIFF formats. 2007-03-29 10:17:52 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtpbuffer.*: Fix fixed payload names and docs. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_default_clock_rate): * gst-libs/gst/rtp/gstrtpbuffer.h: Fix fixed payload names and docs. Added method to get the default clock rates of fixed payload types. API: GstRTPBuffer::gst_rtp_buffer_default_clock_rate() 2007-03-28 15:24:40 +0000 Zaheer Abbas Merali <zaheerabbas@merali.org> tests/check/pipelines/.cvsignore: Add new vorbisdec test to cvsignore. Original commit message from CVS: * tests/check/pipelines/.cvsignore: Add new vorbisdec test to cvsignore. 2007-03-28 14:50:47 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.*: Store private stuff in GstBaseAudioSinkPrivate. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (slave_method_get_type), (gst_base_audio_sink_class_init), (gst_base_audio_sink_init), (gst_base_audio_sink_query), (gst_base_audio_sink_get_time), (gst_base_audio_sink_set_property), (gst_base_audio_sink_get_property), (gst_base_audio_sink_event), (clock_convert_external), (gst_base_audio_sink_resample_slaving), (gst_base_audio_sink_skew_slaving), (gst_base_audio_sink_handle_slaving), (gst_base_audio_sink_render), (gst_base_audio_sink_async_play): * gst-libs/gst/audio/gstbaseaudiosink.h: Store private stuff in GstBaseAudioSinkPrivate. Add configurable clock slaving modes property. API:: GstBaseAudioSink::slave-method property Some more latency reporting tweaks. Added skew based clock slaving correction and make it the default until the resampling method is more robust. 2007-03-27 12:44:14 +0000 Sebastian Dröge <slomo@circular-chaos.org> gst/audioconvert/audioconvert.c: Add docs to the integer pack functions and implement proper rounding. Before we had ... Original commit message from CVS: * gst/audioconvert/audioconvert.c: Add docs to the integer pack functions and implement proper rounding. Before we had rounding towards negative infinity, i.e. always the smaller number was taken. Now we use natural rounding, i.e. rounding to the nearest integer and to the one with the largest absolute value for X.5. The old rounding introduced some minor distortions. Fixes #420079 * tests/check/elements/audioconvert.c: (GST_START_TEST): Fix one unit test that assumed the old rounding and added unit tests for checking signed/unsigned int16 <-> signed/unsigned int16 with depth 8, one for signed int16 <-> unsigned int16 and one for the new rounding from signed int32 to signed/unsigned int16. 2007-03-27 11:31:17 +0000 Michael Smith <msmith@xiph.org> gst/audioconvert/gstaudioconvert.c: Fix typo in debug line introduced recently, as pointed out on irc. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (strip_width_64), (gst_audio_convert_transform_caps): Fix typo in debug line introduced recently, as pointed out on irc. 2007-03-27 10:17:16 +0000 Tim-Philipp Müller <tim@centricular.net> Make sure we parse floating-point numbers in vorbis comments correctly with either '.' or ',' as separator, no matter... Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add): * tests/check/libs/tag.c: (GST_START_TEST): Make sure we parse floating-point numbers in vorbis comments correctly with either '.' or ',' as separator, no matter what the current locale is. Add unit test for this too. 2007-03-27 09:37:42 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/pipelines/vorbisdec.c: commit new file Original commit message from CVS: commit new file 2007-03-26 22:38:19 +0000 René Stadler <mail@renestadler.de> gst-libs/gst/tag/gstvorbistag.c: When writing out floating-point numbers to vorbis comment tags, always use the same ... Original commit message from CVS: Patch by: René Stadler <mail at renestadler de> * gst-libs/gst/tag/gstvorbistag.c: (gst_tag_to_vorbis_comments): When writing out floating-point numbers to vorbis comment tags, always use the same character as separator no matter what the current locale is (fixes #423051). * tests/check/libs/tag.c: (GST_START_TEST): Add unit tests for replaygain tags in vorbis comments (closes #423055). 2007-03-26 20:56:35 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/vorbis/vorbisdec.c (vorbis_dec_push_forward, vorbis_handle_data_packet): Original commit message from CVS: * ext/vorbis/vorbisdec.c (vorbis_dec_push_forward, vorbis_handle_data_packet): Correctly set DURATION to generate a timestamp-continuous stream. One bug left at the end; see ihttp://bugzilla.gnome.org/show_bug.cgi?id=423086 * tests/check/Makefile.am: * tests/check/pipelines/vorbisenc.c (GST_START_TEST): Add a test to check this. Without the above patch this test fails. 2007-03-26 11:44:07 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/rtp/Makefile.am: The base audio payloader uses GstAdapter - we need GST_BASE_LIBS. Original commit message from CVS: * gst-libs/gst/rtp/Makefile.am: The base audio payloader uses GstAdapter - we need GST_BASE_LIBS. 2007-03-23 15:43:24 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update spec file Original commit message from CVS: update spec file 2007-03-23 12:32:33 +0000 Michael Smith <msmith@xiph.org> gst/videorate/gstvideorate.c: If videorate changes caps, we can no longer use the old buffer (which may have a differ... Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_setcaps), (gst_video_rate_reset), (gst_video_rate_chain): If videorate changes caps, we can no longer use the old buffer (which may have a different size, incompatible with our caps). So don't do that; just duplicate the new frame more times. 2007-03-22 17:43:52 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybin.c: Remove playbin's override of the set_clock vmethod. It's irrelevant after Wim's commit on ... Original commit message from CVS: * gst/playback/gstplaybin.c: (gst_play_bin_class_init): Remove playbin's override of the set_clock vmethod. It's irrelevant after Wim's commit on the 19th. 2007-03-22 14:37:08 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst-libs/gst/app/Makefile.am: Use GST_ALL_LDFLAGS, which actually exists, but maybe David can confirm that was what h... Original commit message from CVS: * gst-libs/gst/app/Makefile.am: Use GST_ALL_LDFLAGS, which actually exists, but maybe David can confirm that was what he wanted. 2007-03-22 09:26:02 +0000 Wim Taymans <wim.taymans@gmail.com> ext/gnomevfs/gstgnomevfssrc.*: Don't cache file sizes. Fixes #341078. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_get_size), (gst_gnome_vfs_src_start), (gst_gnome_vfs_src_stop): * ext/gnomevfs/gstgnomevfssrc.h: Don't cache file sizes. Fixes #341078. 2007-03-21 11:03:23 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Use GST_PTR_FORMAT to log caps. Original commit message from CVS: * gst/playback/gstplaybin.c: (add_sink): Use GST_PTR_FORMAT to log caps. 2007-03-21 10:23:11 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/samiparse.c: Special-case some more colour names that pango doesn't handle by default. Fixes #420578. Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst/subparse/samiparse.c: (handle_start_font): Special-case some more colour names that pango doesn't handle by default. Fixes #420578. 2007-03-20 11:49:55 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisenc.c: If we get a zero-sized input buffer, don't pass it to libvorbis, as that marks EOS internally... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_chain): If we get a zero-sized input buffer, don't pass it to libvorbis, as that marks EOS internally. After that, libvorbis will buffer all input data, and encode none of it, eventually leading to memory exhaustion. 2007-03-19 10:52:50 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Don't post STATE_DIRTY anymore. Original commit message from CVS: * gst/playback/gstdecodebin.c: (remove_fakesink): Don't post STATE_DIRTY anymore. * gst/playback/gstplaybin.c: (add_sink), (gst_play_bin_send_event), (gst_play_bin_change_state): Remove stream_time reset in seek handling, core does that now. Disable clocking for live pipelines by forcing a NULL clock to the complete pipeline, core is too smart now for our previous hack. We can always autoplug in PAUSED now. 2007-03-18 03:14:01 +0000 David Schleef <ds@schleef.org> REQUIREMENTS: Update this file, change the formatting to make it more consistent, plus more machine readable. Original commit message from CVS: * REQUIREMENTS: Update this file, change the formatting to make it more consistent, plus more machine readable. 2007-03-16 17:29:09 +0000 Michael Smith <msmith@xiph.org> gst/audioconvert/gstaudioconvert.c: Previous fix was too simplistic, and broke the tests. Use a better approach; only... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (make_lossless_changes), (strip_width_64), (append_with_other_format): Previous fix was too simplistic, and broke the tests. Use a better approach; only strip 64 from widths for integer audio. 2007-03-16 16:42:23 +0000 Michael Smith <msmith@xiph.org> gst/audioconvert/gstaudioconvert.c: We don't support 64 bit integer audio, so don't try to claim we can. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (make_lossless_changes), (gst_audio_convert_transform_caps): We don't support 64 bit integer audio, so don't try to claim we can. Stops us producing caps don't match our template caps. Update comments. 2007-03-15 10:52:21 +0000 Michael Smith <msmith@xiph.org> gst/audioresample/gstaudioresample.c: Don't trigger discontinuities for very small imperfections; a filter flush will... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (audioresample_check_discont), (audioresample_transform): Don't trigger discontinuities for very small imperfections; a filter flush will sound bad, and many plugins have rounding errors leading to these. 2007-03-14 21:11:18 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpaudiopayload.*: olivier.crete@collabora.co.uk. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: Add min-ptime property to RTP base audio payloader. Patch by olivier.crete@collabora.co.uk. Fixes #415001 Indentation/whitespace/documentation fixes. 2007-03-14 17:16:30 +0000 Julien Moutte <julien@moutte.net> gst/audioresample/gstaudioresample.c: Handle discontinuous streams. Original commit message from CVS: 2007-03-14 Julien MOUTTE <julien@moutte.net> * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (audioresample_transform_size), (audioresample_do_output), (audioresample_transform), (audioresample_pushthrough): Handle discontinuous streams. * gst/audioresample/gstaudioresample.h: * tests/check/elements/audioresample.c: (test_discont_stream_instance), (GST_START_TEST), (audioresample_suite): Add a test for discontinuous streams. * win32/common/config.h: Updated. 2007-03-14 15:16:23 +0000 Thomas Vander Stichele <thomas@apestaart.org> po/: Update translations from translation project. Original commit message from CVS: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update translations from translation project. 2007-03-14 15:05:32 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/gdp/gstgdpdepay.c: add buffer logging Original commit message from CVS: add buffer logging 2007-03-14 14:48:12 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/audioresample/: Since I really am not interested in a debug line for each sample being processed, move the librar... Original commit message from CVS: * gst/audioresample/debug.h: * gst/audioresample/resample.c: (resample_init): Since I really am not interested in a debug line for each sample being processed, move the library's debugging to its own category, libaudioresample 2007-03-14 14:09:21 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/audioresample/gstaudioresample.c: add debugging and reformat docs Original commit message from CVS: add debugging and reformat docs 2007-03-12 23:29:07 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: Since the plugin doesn't support anything other than 4:2:0 right now, post an error and fail ... Original commit message from CVS: * ext/theora/theoradec.c: (theora_handle_type_packet): Since the plugin doesn't support anything other than 4:2:0 right now, post an error and fail if we get something else. Won't matter until libtheora supports the other pixel formats, but hopefully that'll be soon... 2007-03-12 15:50:35 +0000 Alex Lancaster <alexlan@fedoraproject.org> * ChangeLog: I'm too lazy to comment this Original commit message from CVS: Mention Patch by: Alex Lancaster in a recent commit. 2007-03-12 11:47:42 +0000 Jan Schmidt <thaytan@mad.scientist.com> examples/app/.cvsignore: The buildbot demands .cvsignore files, and I comply. Original commit message from CVS: * examples/app/.cvsignore: The buildbot demands .cvsignore files, and I comply. 2007-03-11 00:48:26 +0000 David Schleef <ds@schleef.org> Add appsrc/appsink example. Original commit message from CVS: * configure.ac: * examples/Makefile.am: * examples/app/Makefile.am: * examples/app/appsrc_ex.c: Add appsrc/appsink example. * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst/app/gstapp.c: Add appsink. 2007-03-10 15:59:33 +0000 Sébastien Moutte <sebastien@moutte.net> gst-libs/gst/audio/gstbaseaudiosink.c: Use gst_guint64_to_gdouble for conversion. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c:(gst_base_audio_sink_render): Use gst_guint64_to_gdouble for conversion. * win32/MANIFEST: Add new files to the win32 MANIFEST. * win32/common/libgstaudio.def: * win32/common/libgstpbutils.def: Add new exported functions. * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstdecodebin.dsp: * win32/vs6/libgstplaybin.dsp: Change the link to libgstpbutils.lib. * win32/vs6/libgstdecodebin2.dsp: Add a new project for decodebin2. * win32/vs6/libgstpbutils.dsp: Add a new project for pbutils. 2007-03-10 12:18:58 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstvorbistag.c: Also accept partial dates with only year and month, like 1999-12-00 (fixes #410396 e... Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add): Also accept partial dates with only year and month, like 1999-12-00 (fixes #410396 even more). * tests/check/libs/tag.c: (GST_START_TEST): Add unit test for the above. 2007-03-10 11:21:08 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/subparse.c: Add unit test for MPL2 subtitle format (#413799). Original commit message from CVS: * tests/check/elements/subparse.c: (GST_START_TEST), (subparse_suite): Add unit test for MPL2 subtitle format (#413799). 2007-03-10 11:17:52 +0000 Kamil Pawlowski <kamilpe@gmail.com> gst/subparse/: Add support for MPL2 subtitle format (#413799). Original commit message from CVS: Patch by: Kamil Pawlowski <kamilpe gmail com> * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect), (gst_sub_parse_format_autodetect), (gst_sub_parse_sink_event), (gst_subparse_type_find): * gst/subparse/gstsubparse.h: * gst/subparse/mpl2parse.c: (mpl2_parse_line), (parse_mpl2): * gst/subparse/mpl2parse.h: Add support for MPL2 subtitle format (#413799). 2007-03-09 17:33:17 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: We require core CVS for the new buffer metadata copy functions. Original commit message from CVS: * configure.ac: We require core CVS for the new buffer metadata copy functions. 2007-03-09 16:51:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/tag/gstid3tag.c: Add read support for GST_TAG_MUSICBRAINZ_SORTNAME (TSOP) tag. Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: Add read support for GST_TAG_MUSICBRAINZ_SORTNAME (TSOP) tag. Fixes #414496. 2007-03-09 16:46:35 +0000 Wim Taymans <wim.taymans@gmail.com> ext/libvisual/visual.c: Improve adapter usage and comments. Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_sink_setcaps), (gst_vis_src_negotiate), (get_buffer), (gst_visual_chain): Improve adapter usage and comments. 2007-03-09 16:38:06 +0000 Wim Taymans <wim.taymans@gmail.com> Use new metadata copy function. Original commit message from CVS: * ext/pango/gsttextrender.c: (gst_text_render_chain): * ext/vorbis/vorbistag.c: (gst_vorbis_tag_parse_packet): * gst-libs/gst/netbuffer/gstnetbuffer.c: (gst_netbuffer_copy): Use new metadata copy function. * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform): * gst/videoscale/gstvideoscale.c: (gst_video_scale_transform): Basetransform copied the metadata for us. 2007-03-09 16:28:04 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Some more logging. Only accept newsegment events in TIME format and send a WARNING messag... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_text_event), (gst_text_overlay_video_event): Some more logging. Only accept newsegment events in TIME format and send a WARNING message if they are not in TIME format. * gst/subparse/gstsubparse.c: (gst_sub_parse_dispose), (gst_sub_parse_init), (gst_sub_parse_src_event), (handle_buffer), (gst_sub_parse_chain), (gst_sub_parse_sink_event): * gst/subparse/gstsubparse.h: No need to allocate GstSegment structure dynamically, just put it into the instance structure; ignore newsegment events in BYTE format and in particular don't let it overwrite our saved TIME segment from the last seek. 2007-03-09 13:05:04 +0000 Michael Smith <msmith@xiph.org> gst/typefind/gsttypefindfunctions.c: Replace AC3 typefinder with one that isn't terrible, and actually works usefully. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (ac3_type_find): Replace AC3 typefinder with one that isn't terrible, and actually works usefully. 2007-03-09 12:22:53 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/audioconvert/gstaudioconvert.c: fix error category and translatable string Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_transform): fix error category and translatable string 2007-03-09 11:23:32 +0000 Tim-Philipp Müller <tim@centricular.net> pkgconfig/: Fix up utils => pbutils here too. Original commit message from CVS: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: Fix up utils => pbutils here too. 2007-03-09 10:49:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Break out of loop in chain function as soon as possible if we get a non-OK flow return. Original commit message from CVS: * gst/subparse/gstsubparse.c: (handle_buffer): Break out of loop in chain function as soon as possible if we get a non-OK flow return. 2007-03-08 18:26:07 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/elements/alsa.c: Unref the mixer if the state change fails too (if the alsa devices are inaccessible, for... Original commit message from CVS: * tests/check/elements/alsa.c: (GST_START_TEST): Unref the mixer if the state change fails too (if the alsa devices are inaccessible, for example) 2007-03-08 17:49:46 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/Makefile.am: Don't test libvisual elements in the states check, because libvisual seems to leak internally. Original commit message from CVS: * tests/check/Makefile.am: Don't test libvisual elements in the states check, because libvisual seems to leak internally. Re-enable the alsa and states tests now that there's new suppressions in gst.supp. * tests/check/elements/alsa.c: (GST_START_TEST): Don't leak the alsamixer we instantiated. 2007-03-08 15:22:53 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/: Move some cleanup stuff from the state change handler into a _reset() function that can be called from _finaliz... Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_clear), (gst_ximagesink_change_state), (gst_ximagesink_reset), (gst_ximagesink_finalize): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state), (gst_xvimagesink_reset), (gst_xvimagesink_finalize): Move some cleanup stuff from the state change handler into a _reset() function that can be called from _finalize(). This ensures that things get freed even if (for some reason) the NULL->READY state transition fails in the parent class. Even if a parent state change fails, process our downward state change logic instead of bailing out early. Free the correct xcontext pointer in ximagesink's xcontext_clear. 2007-03-08 12:53:51 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/alsa/gstalsasink.c: Extra log line. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_open): Extra log line. * ext/pango/gstclockoverlay.c: (gst_clock_overlay_init): * ext/pango/gsttimeoverlay.c: (gst_time_overlay_init): Use pango_font_description_set_family_static instead of pango_font_description_set_family to save a string copy (it was leaking due to the strdup anyway) * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_finalize): * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_finalize): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_finalize): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_finalize): Chain up in finalize. 2007-03-07 18:50:10 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixertrack.c: API: add "untranslated-label" property which should be set by implementations a... Original commit message from CVS: * gst-libs/gst/interfaces/mixertrack.c: (gst_mixer_track_class_init), (gst_mixer_track_get_property), (gst_mixer_track_set_property): API: add "untranslated-label" property which should be set by implementations at construct time (#414645). * ext/alsa/gstalsamixeroptions.c: (gst_alsa_mixer_options_new): * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new): Set "untranslated-label" when constructing mixer track objects. * tests/check/elements/alsa.c: (GST_START_TEST), (alsa_suite): Unit test to check the above. 2007-03-07 17:15:57 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Fix confusing debug message. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain): Fix confusing debug message. 2007-03-07 17:12:54 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-plugins-base.doap: update doap file with new version Original commit message from CVS: * gst-plugins-base.doap: update doap file with new version 2007-03-07 17:05:21 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: update docs Original commit message from CVS: update docs 2007-03-07 16:56:01 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.12 === 2007-03-07 16:46:51 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-decodebin2.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/config.h: Release 0.10.12 Original commit message from CVS: Release 0.10.12 2007-03-07 15:35:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> * common: * po/af.po: * po/az.po: * po/cs.po: * po/de.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2007-03-06 12:31:01 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Bump version to 0.10.11.4 pre-release Original commit message from CVS: * configure.ac: Bump version to 0.10.11.4 pre-release 2007-03-06 12:10:08 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Fix regression that made GStreamer skip the first samples of audio. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_async_play): Fix regression that made GStreamer skip the first samples of audio. Fixes #414684. 2007-03-05 11:21:13 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Bump version to 0.10.11.3 pre-release Original commit message from CVS: * configure.ac: Bump version to 0.10.11.3 pre-release 2007-03-05 09:35:29 +0000 Sebastian Dröge <slomo@circular-chaos.org> po/POTFILES.in: Update paths for the rename from utils to pbutils to fix the build. Original commit message from CVS: * po/POTFILES.in: Update paths for the rename from utils to pbutils to fix the build. 2007-03-05 09:27:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/pbutils/Makefile.am: Change directory to install headers in from gst/utils to gst/pbutils as well. Original commit message from CVS: * gst-libs/gst/pbutils/Makefile.am: Change directory to install headers in from gst/utils to gst/pbutils as well. 2007-03-04 23:41:51 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/libs/.gitignore: moap ignore Original commit message from CVS: moap ignore 2007-03-04 23:41:04 +0000 Thomas Vander Stichele <thomas@apestaart.org> * win32/common/config.h: * win32/common/libgstutils.def: update defs Original commit message from CVS: update defs 2007-03-04 23:39:51 +0000 Thomas Vander Stichele <thomas@apestaart.org> rename utils to pbutils Original commit message from CVS: * configure.ac: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/Makefile.am: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/pbutils/Makefile.am: * gst-libs/gst/pbutils/descriptions.c: (gst_pb_utils_get_source_description), (gst_pb_utils_get_sink_description), (gst_pb_utils_get_decoder_description), (gst_pb_utils_get_encoder_description), (gst_pb_utils_get_element_description), (gst_pb_utils_add_codec_description_to_tag_list), (gst_pb_utils_get_codec_description), (gst_pb_utils_list_all): * gst-libs/gst/pbutils/descriptions.h: * gst-libs/gst/pbutils/install-plugins.c: * gst-libs/gst/pbutils/install-plugins.h: * gst-libs/gst/pbutils/missing-plugins.c: (gst_missing_uri_source_message_new), (gst_missing_uri_sink_message_new), (gst_missing_element_message_new), (gst_missing_decoder_message_new), (gst_missing_encoder_message_new), (gst_missing_plugin_message_get_description): * gst-libs/gst/pbutils/missing-plugins.h: * gst-libs/gst/pbutils/pbutils.c: (gst_pb_utils_init): * gst-libs/gst/pbutils/pbutils.h: * gst-libs/gst/utils/Makefile.am: * gst-libs/gst/utils/base-utils.c: * gst-libs/gst/utils/base-utils.h: * gst-libs/gst/utils/descriptions.c: * gst-libs/gst/utils/descriptions.h: * gst-libs/gst/utils/install-plugins.c: * gst-libs/gst/utils/install-plugins.h: * gst-libs/gst/utils/missing-plugins.c: * gst-libs/gst/utils/missing-plugins.h: * gst-plugins-base.spec.in: * gst/playback/Makefile.am: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybasebin.c: (setup_subtitle), (gen_source_element): * gst/playback/gstplaybin.c: (plugin_init): * tests/check/Makefile.am: * tests/check/libs/pbutils.c: (GST_START_TEST), (test_pb_utils_install_plugins_do_callout), (libgstpbutils_suite): * tests/check/libs/utils.c: rename utils to pbutils 2007-03-03 10:23:03 +0000 David Schleef <ds@schleef.org> gst-libs/gst/app/Makefile.am: Install the headers. Original commit message from CVS: * gst-libs/gst/app/Makefile.am: Install the headers. 2007-03-03 10:10:30 +0000 David Schleef <ds@schleef.org> gst-libs/gst/app/: Add GstAppBuffer that includes a callback and closure for proper handling of data chunks. Original commit message from CVS: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstappbuffer.c: * gst-libs/gst/app/gstappbuffer.h: * gst-libs/gst/app/gstappsrc.c: Add GstAppBuffer that includes a callback and closure for proper handling of data chunks. 2007-03-03 09:06:06 +0000 David Schleef <ds@schleef.org> gst-libs/gst/app/gstappsrc.*: Hacking to address issues in 413418. Original commit message from CVS: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: Hacking to address issues in 413418. 2007-03-03 08:16:57 +0000 David Schleef <ds@schleef.org> Move the app library to gst-libs/gst/app (duh!) Original commit message from CVS: * Makefile.am: * configure.ac: * ext/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst/app/Makefile.am: * gst/app/gstapp.c: * gst/app/gstappsrc.c: * gst/app/gstappsrc.h: Move the app library to gst-libs/gst/app (duh!) 2007-03-02 12:59:15 +0000 Jan Schmidt <thaytan@mad.scientist.com> Add documentation for decodebin2 that indicates that the API is still unstable. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/inspect/plugin-decodebin2.xml: * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init): Add documentation for decodebin2 that indicates that the API is still unstable. 2007-03-01 18:50:00 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Update to 0.10.11.2 (0.10.12 pre-release) Original commit message from CVS: * configure.ac: Update to 0.10.11.2 (0.10.12 pre-release) 2007-03-01 17:29:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: base time is irrelevant here. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_async_play): base time is irrelevant here. 2007-03-01 17:01:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/: Improve debugging. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func): * gst-libs/gst/audio/gstaudiosrc.c: (audioringbuffer_thread_func): Improve debugging. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_query), (gst_base_audio_sink_event), (gst_base_audio_sink_render), (gst_base_audio_sink_async_play): Improve latency and clock slaving calculations. Improve slave clock calibration. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit_full): When we are asked to render N sample to 0 bytes, return N. 2007-03-01 16:48:45 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.*: Remove unused dispose function. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_class_init), (gst_alsasink_write), (gst_alsasink_reset): * ext/alsa/gstalsasink.h: Remove unused dispose function. Rename lock to not interfere with alsasrc lock. * ext/alsa/gstalsasrc.c: (gst_alsasrc_finalize), (gst_alsasrc_class_init), (gst_alsasrc_init), (set_swparams), (gst_alsasrc_read), (gst_alsasrc_reset): * ext/alsa/gstalsasrc.h: Implement finalize function. Use lock to protect alsa access. Implement _reset. Fine tune sw params. 2007-03-01 10:20:59 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * configure.ac: typo Original commit message from CVS: typo 2007-02-28 19:27:28 +0000 Thomas Vander Stichele <thomas@apestaart.org> configure.ac: Convert to new AG_GST style. Original commit message from CVS: * configure.ac: Convert to new AG_GST style. 2007-02-28 15:17:20 +0000 Ed Catmur <ed@catmur.co.uk> gst/playback/gstplaybin.c: Fix race condition when rapidly switching visualisations in playbin. Original commit message from CVS: Patch by: Ed Catmur <ed at catmur dot co dot uk> * gst/playback/gstplaybin.c: (gst_play_bin_vis_unblocked), (gst_play_bin_vis_blocked), (gst_play_bin_set_property): Fix race condition when rapidly switching visualisations in playbin. Fixes #401029. 2007-02-28 15:11:59 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/Makefile.am: Include local stuff before system installed things in LDFLAGS and Original commit message from CVS: * tests/check/Makefile.am: Include local stuff before system installed things in LDFLAGS and CFLAGS. 2007-02-28 15:10:06 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Improve debugging. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_sink_activate): Improve debugging. 2007-02-28 15:05:03 +0000 Wim Taymans <wim.taymans@gmail.com> sys/v4l/: Fix duration and timestamping, taking latency into account. Original commit message from CVS: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init), (gst_v4lsrc_init), (gst_v4lsrc_fixate), (gst_v4lsrc_query): * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_buffer_new): Fix duration and timestamping, taking latency into account. Implement latency query. 2007-02-28 15:02:25 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudioclock.c: Fix clock name. Original commit message from CVS: * gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_init), (gst_audio_clock_new): Fix clock name. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_init), (gst_base_audio_sink_query): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_init), (gst_base_audio_src_query), (gst_base_audio_src_get_offset), (gst_base_audio_src_create): Improve latency query code. Use proper clock names. 2007-02-28 12:57:46 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/generic/states.c: plug test leak Original commit message from CVS: plug test leak 2007-02-28 12:44:53 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/generic/states.c: Copy the states.c test from core again Original commit message from CVS: * tests/check/generic/states.c: (GST_START_TEST): Copy the states.c test from core again * tests/check/Makefile.am: ignore cdio and cdparanoiasrc 2007-02-28 12:08:27 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioconvert/audioconvert.c: Also make valgrind happy and avoid copying data in some cases. Original commit message from CVS: * gst/audioconvert/audioconvert.c: (float), (double), (float_hq), (double_hq), (audio_convert_get_func_index), (check_default), (audio_convert_prepare_context), (audio_convert_convert): Also make valgrind happy and avoid copying data in some cases. 2007-02-28 11:58:16 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/generic/states.c: use a macro Original commit message from CVS: use a macro 2007-02-28 11:47:45 +0000 Stefan Kost <ensonic@users.sourceforge.net> Don't run inplace if that overwrites source data as we go. Add more tests. Fixes #339837 even more. Original commit message from CVS: * gst/audioconvert/audioconvert.c: (float), (double), (float_hq), (double_hq), (audio_convert_get_func_index), (audio_convert_prepare_context), (audio_convert_convert): * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_class_init), (gst_audio_convert_get_unit_size), (gst_audio_convert_transform_caps): * tests/check/elements/audioconvert.c: (GST_START_TEST), (audioconvert_suite): Don't run inplace if that overwrites source data as we go. Add more tests. Fixes #339837 even more. 2007-02-27 18:45:37 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Fix various seeking bugs (Slider was not updating when doing a non flushing seek, Reverse... Original commit message from CVS: 2007-02-27 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (do_seek), (set_update_scale), (msg_segment_done): Fix various seeking bugs (Slider was not updating when doing a non flushing seek, Reverse playback on segment seek was wrong). 2007-02-26 21:01:03 +0000 David Schleef <ds@schleef.org> Add a new plugin/library to make it easy for apps to shove data into a pipeline. Original commit message from CVS: * configure.ac: * gst/app/Makefile.am: * gst/app/gstapp.c: * gst/app/gstappsrc.c: * gst/app/gstappsrc.h: Add a new plugin/library to make it easy for apps to shove data into a pipeline. 2007-02-26 11:48:49 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: When we stop scrubbing, don't leave the pipeline PLAYING when we requested a PAUSED state. Original commit message from CVS: * tests/examples/seek/seek.c: (stop_seek): When we stop scrubbing, don't leave the pipeline PLAYING when we requested a PAUSED state. 2007-02-25 23:51:03 +0000 René Stadler <mail@renestadler.de> gst-libs/gst/tag/gstvorbistag.c: Parse date strings in vorbis comments that have an invalid (zero) month or day (#410... Original commit message from CVS: Patch by: René Stadler <mail at renestadler de> * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add): Parse date strings in vorbis comments that have an invalid (zero) month or day (#410396). * tests/check/libs/tag.c: (GST_START_TEST): Test case for the above. 2007-02-24 20:12:49 +0000 Loïc Minier <lool+gnome@via.ecp.fr> Fix compilation with LDFLAGS='-Wl,-z,defs' (#410963). Original commit message from CVS: Patch by: Loïc Minier <lool+gnome at via ecp fr> * configure.ac: * ext/alsa/Makefile.am: * gst/audiotestsrc/Makefile.am: Fix compilation with LDFLAGS='-Wl,-z,defs' (#410963). 2007-02-23 18:49:29 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Improve docs: point out that the application needs to assist playbin with buffering. Original commit message from CVS: * gst/playback/gstplaybin.c: Improve docs: point out that the application needs to assist playbin with buffering. 2007-02-23 13:10:50 +0000 Tim-Philipp Müller <tim@centricular.net> Change GStreamer marker prefix in detail string from 'gstreamer.net' to just 'gstreamer'. Document the caps string co... Original commit message from CVS: * gst-libs/gst/utils/install-plugins.c: * gst-libs/gst/utils/missing-plugins.c: * tests/check/libs/utils.c: (missing_msg_check_getters): Change GStreamer marker prefix in detail string from 'gstreamer.net' to just 'gstreamer'. Document the caps string component of the decoder/encoder detail a bit better, since not everyone will be familiar with the GStreamer media type/caps system (but they better enjoy nested itemized lists). 2007-02-22 12:57:47 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/netbuffer/gstnetbuffer.c: Fix copying of GstNetBuffer (would crash before, or at least lead to invalid m... Original commit message from CVS: * gst-libs/gst/netbuffer/gstnetbuffer.c: (notgst_buffer_copy_fields_in_place), (gst_netbuffer_copy): Fix copying of GstNetBuffer (would crash before, or at least lead to invalid memory access, #410772), for now by copying the GstBuffer copy code from the core over here so we can copy the GstBuffer fields on a provided buffer instance (of type GstNetBuffer in this case). Would be better to fix this with some support by the core though (and in the long run change the broken GstBuffer/GstMiniObject copy semantics, #393099). * tests/check/Makefile.am: Enable unit test for GstNetBuffer. 2007-02-22 11:04:10 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * gst-libs/gst/audio/gstbaseaudiosink.c: gst-libs/gst/audio/gstbaseaudiosink.c Original commit message from CVS: 2007-02-22 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_init): Disable pull-mode activation until we figure out how to make audio sinks go to PLAYING. 2007-02-22 09:04:37 +0000 Stefan Kost <ensonic@users.sourceforge.net> Add float as an intermediate format, as well as float mixing. Enable test that was failing before. Fixes #339837 Original commit message from CVS: * gst/audioconvert/audioconvert.c: (float), (double), (float_hq), (double_hq), (audio_convert_get_func_index), (audio_convert_prepare_context), (audio_convert_convert): * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_setup_matrix), (gst_channel_mix_mix_int), (gst_channel_mix_mix_float): * gst/audioconvert/gstchannelmix.h: * tests/check/elements/audioconvert.c: (GST_START_TEST): Add float as an intermediate format, as well as float mixing. Enable test that was failing before. Fixes #339837 2007-02-21 16:12:15 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/examples/seek/seek.c: Undo the previous commit: -1 as a stop time implies that the stop time is the end of file... Original commit message from CVS: * tests/examples/seek/seek.c: (do_seek): Undo the previous commit: -1 as a stop time implies that the stop time is the end of file, clearing any previously configured segment. 2007-02-21 15:36:26 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/examples/seek/seek.c: Don't SEEK_SET with a stop time of -1, use SEEK_NONE instead. Original commit message from CVS: * tests/examples/seek/seek.c: (do_seek): Don't SEEK_SET with a stop time of -1, use SEEK_NONE instead. 2007-02-21 13:55:54 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/volume/gstvolume.c: Unbreak volume, value remains gint. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_process_int16), (volume_process_int16_clamp), (volume_set_caps): Unbreak volume, value remains gint. 2007-02-21 13:08:51 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/volume/gstvolume.*: Extend float audio support (double) and some int->uint cleanups. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_choose_func), (volume_update_real_volume), (gst_volume_set_volume), (gst_volume_init), (volume_process_double), (volume_process_float), (volume_process_int16), (volume_process_int16_clamp), (volume_set_caps), (volume_transform_ip), (volume_update_volume): * gst/volume/gstvolume.h: Extend float audio support (double) and some int->uint cleanups. 2007-02-20 15:44:32 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin2.c: Don't free groups from the streaming threads. Just put them aside and free them in disp... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_dispose), (multi_queue_underrun_cb), (gst_decode_group_check_if_drained), (sort_end_pads), (gst_decode_group_expose), (gst_decode_group_hide): Don't free groups from the streaming threads. Just put them aside and free them in dispose. 2007-02-20 11:20:52 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin2.c: Handle dynamic pads within groups. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (connect_element), (pad_added_group_cb), (gst_decode_group_check_if_blocked), (sort_end_pads), (gst_decode_group_expose): Handle dynamic pads within groups. Sort pads before exposing them in order to make playbin happy. There still is a race with the multiqueue filling up. This should be solved separately. Fixes #398721 2007-02-18 21:02:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/utils/: Some more docs (and descriptions for two subtitle formats). Original commit message from CVS: * gst-libs/gst/utils/base-utils.c: * gst-libs/gst/utils/descriptions.c: * gst-libs/gst/utils/install-plugins.c: * gst-libs/gst/utils/missing-plugins.c: Some more docs (and descriptions for two subtitle formats). 2007-02-16 10:19:45 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/audio.c: Fix documentation. Original commit message from CVS: * gst-libs/gst/audio/audio.c: Fix documentation. 2007-02-16 10:15:46 +0000 Yves Lefebvre <ivanohe@abacom.com> gst/videorate/gstvideorate.c: Don't leak caps. Fixes #408278. Original commit message from CVS: Patch by: Yves Lefebvre <ivanohe abacom com> * gst/videorate/gstvideorate.c: (gst_video_rate_setcaps): Don't leak caps. Fixes #408278. 2007-02-15 15:17:23 +0000 Stefan Kost <ensonic@users.sourceforge.net> More docs coverage and some ChangeLog surgery (add missing names) Original commit message from CVS: * ext/cdparanoia/gstcdparanoiasrc.h: * ext/ogg/gstoggdemux.h: * gst-libs/gst/audio/audio.c: (gst_audio_frame_byte_size), (gst_audio_frame_length), (gst_audio_duration_from_pad_buffer), (gst_audio_is_buffer_framed), (gst_audio_structure_set_int): * gst-libs/gst/audio/audio.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/interfaces/videoorientation.h: * gst/adder/gstadder.h: More docs coverage and some ChangeLog surgery (add missing names) 2007-02-15 12:07:57 +0000 Wim Taymans <wim.taymans@gmail.com> sys/: Small constifications. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_calculate_pixel_aspect_ratio): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_calculate_pixel_aspect_ratio): Small constifications. 2007-02-15 12:06:25 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Answer latency query. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init), (gst_base_audio_sink_query), (gst_base_audio_sink_render), (gst_base_audio_sink_callback), (gst_base_audio_sink_async_play), (gst_base_audio_sink_change_state): Answer latency query. Use configured latency when syncing. Fix clock slaving. * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init), (gst_base_audio_src_dispose), (gst_base_audio_src_query), (gst_base_audio_src_change_state): Fix possible memleak. Implement latency query. Small cleanups. 2007-02-15 11:59:41 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.c: Ignore errors in reset, these are not fatal. They also grab the element lock which is already... Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_reset): Ignore errors in reset, these are not fatal. They also grab the element lock which is already taking when this function is called. Fixes #405451. 2007-02-13 13:50:56 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: add header file for easy codec install Original commit message from CVS: add header file for easy codec install 2007-02-13 10:24:13 +0000 Stefan Kost <ensonic@users.sourceforge.net> configure.ac: Remove 'tests/examples/xerror/Makefile' from output files again. Original commit message from CVS: * configure.ac: Remove 'tests/examples/xerror/Makefile' from output files again. 2007-02-13 09:12:11 +0000 Stefan Kost <ensonic@users.sourceforge.net> Also crossref against gst-plugins-base-libs. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: Also crossref against gst-plugins-base-libs. 2007-02-12 20:42:23 +0000 Stefan Kost <ensonic@users.sourceforge.net> Add crossreferences to glib/gobject/gstream docs. Original commit message from CVS: * configure.ac: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: Add crossreferences to glib/gobject/gstream docs. * gst-libs/gst/audio/audio.h: Source formatting. * gst/audiotestsrc/gstaudiotestsrc.c: (plugin_init): Add own debug category. 2007-02-12 11:01:04 +0000 René Stadler <mail@renestadler.de> gst-libs/gst/tag/gstvorbistag.c: Add vorbis/FLAC-tag mapping for new GST_TAG_REFERENCE_LEVEL (#403597). Original commit message from CVS: Patch by: René Stadler <mail at renestadler de> * gst-libs/gst/tag/gstvorbistag.c: Add vorbis/FLAC-tag mapping for new GST_TAG_REFERENCE_LEVEL (#403597). 2007-02-12 10:33:40 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: When we have external subtitles and wait for the subtitle decodebin to get up and runn... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_source): When we have external subtitles and wait for the subtitle decodebin to get up and running, we set up a (sync) bus handler for the subtitle decodebin, so we can stop waiting when it posts an error message. However, we should do that before we set the subtitle decodebin's state to playing, otherwise things are racy and we might miss error messages posted before we had a chance to set up the bus. This should finally fix totem hanging on .txt pseudo-subtitle files. 2007-02-10 19:27:48 +0000 Sébastien Moutte <sebastien@moutte.net> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Use gst_gdouble_to_guint64 for conversions. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c:(gst_base_rtp_audio_payload_handle_frame_based_buffer): Use gst_gdouble_to_guint64 for conversions. * win32/common/config.h.in: Add a define for GST_INSTALL_PLUGINS_HELPER * win32/common/libgstaudio.def: * win32/common/libgstcdda.def: * win32/common/libgstnetbuffer.def: * win32/common/libgstrtp.def: * win32/common/libgutils.def: Add new exported functions. * win32/vs6/gst_plugins_base.dsw: * win32/vs6/libgstdecodebin.dsp: * win32/vs6/libgstnetbuffer.dsp: * win32/vs6/libgstplaybin.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstvorbis.dsp: * win32/vs6/libgstcdda.dsp: * win32/vs6/libgstgdp.dsp: * win32/vs6/libgstutils.dsp: Update and add new project files. 2007-02-10 18:19:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: For SubRip (.srt) subtitles, ignore all markup tags we don't handle (like font tags, for ... Original commit message from CVS: * gst/subparse/gstsubparse.c: (subrip_remove_unhandled_tag), (subrip_remove_unhandled_tags), (parse_subrip): For SubRip (.srt) subtitles, ignore all markup tags we don't handle (like font tags, for example). * tests/check/elements/subparse.c: Add test for this. 2007-02-09 13:28:01 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery Original commit message from CVS: ChangeLog surgery 2007-02-09 13:16:27 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Don't error out if there is no fakesink in the READY to NULL state change, since when decodebin is re-... Original commit message from CVS: * gst/playback/gstdecodebin.c: (add_fakesink), (gst_decode_bin_change_state): * gst/playback/gstdecodebin2.c: (add_fakesink), (gst_decode_bin_change_state): Don't error out if there is no fakesink in the READY to NULL state change, since when decodebin is re-used, we're only adding the fakesink element in READY to PAUSED. * tests/check/elements/decodebin.c: (new_decoded_pad_plug_fakesink_cb), (GST_START_TEST), (decodebin_suite): Minimal unit test to make sure we can use the same decodebin instance twice (at least with audiotestsrc input). 2007-02-09 09:58:28 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsa.c: Try to get devic-name from device string first, and from handle only as fallback (seems to yield ... Original commit message from CVS: * ext/alsa/gstalsa.c: (gst_alsa_find_device_name): Try to get devic-name from device string first, and from handle only as fallback (seems to yield better results and is more robust against buggy probing code on the application side). 2007-02-08 15:43:26 +0000 Julien Puydt <julien.puydt@laposte.net> ext/alsa/: Improve device-name detection a bit, especially in the case where the device is not actually open (#405020... Original commit message from CVS: Based on patch by: Julien Puydt <julien.puydt at laposte net> * ext/alsa/gstalsa.c: (gst_alsa_find_device_name_no_handle), (gst_alsa_find_device_name): * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: (gst_alsasink_get_property): * ext/alsa/gstalsasrc.c: (gst_alsasrc_get_property): Improve device-name detection a bit, especially in the case where the device is not actually open (#405020, #405024). Move common code into gstalsa.c instead of duplicating it. 2007-02-07 13:05:01 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/gstaudioconvert.c: Fix up docs chunk so that gtk-doc doesn't complain, and fix typo. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: Fix up docs chunk so that gtk-doc doesn't complain, and fix typo. 2007-02-06 17:47:32 +0000 Julien Moutte <julien@moutte.net> sys/xvimage/xvimagesink.*: Implement PropertyProbe Interface for XVAdaptors so that one can choose the adaptor to use... Original commit message from CVS: 2007-02-06 Julien MOUTTE <julien@moutte.net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_xcontext_clear), (gst_xvimagesink_interface_supported), (gst_xvimagesink_probe_get_properties), (gst_xvimagesink_probe_probe_property), (gst_xvimagesink_probe_needs_probe), (gst_xvimagesink_probe_get_values), (gst_xvimagesink_property_probe_interface_init), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_init), (gst_xvimagesink_class_init), (gst_xvimagesink_get_type): * sys/xvimage/xvimagesink.h: Implement PropertyProbe Interface for XVAdaptors so that one can choose the adaptor to use with gstreamer-properties. 2007-02-06 14:00:31 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioconvert/gstaudioconvert.c: Also mention that a conversion from double to float is suboptimal still. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: Also mention that a conversion from double to float is suboptimal still. 2007-02-06 09:42:05 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstaudiofilter.c: Clear our formats structure and free the caps contained in it when shutting down. Original commit message from CVS: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_class_init), (gst_audio_filter_change_state): Clear our formats structure and free the caps contained in it when shutting down. 2007-02-05 18:39:51 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * gst-libs/gst/audio/gstbaseaudiosink.c: gst-libs/gst/audio/gstbaseaudiosink.c Original commit message from CVS: 2007-02-05 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_callback): Update basesink->offset so that we pull monotonically increasing offsets instead of, um, seeking back to 0 each time. Fixes alsasrc ! alsasink! 2007-02-05 11:44:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videoscale/gstvideoscale.c: A width and height of 1 makes us crash, so increase minimum size to 2x2 pixels until ... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: A width and height of 1 makes us crash, so increase minimum size to 2x2 pixels until someone feels like fixing this (#404512). 2007-02-04 16:23:37 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/oggmux.c: Add small test to make sure request pads are cleaned up properly even if oggmux never... Original commit message from CVS: * tests/check/pipelines/oggmux.c: (GST_START_TEST), (oggmux_suite): Add small test to make sure request pads are cleaned up properly even if oggmux never changes state out of NULL. 2007-02-04 14:11:51 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/utils.c: Fix unit test. Turns out things work much better when you Original commit message from CVS: * tests/check/libs/utils.c: (GST_START_TEST): Fix unit test. Turns out things work much better when you NULL-terminate string arrays. Should make p5 build bot happy again. 2007-02-03 23:28:45 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/: Oops, forgot to commit fixed-up example. Original commit message from CVS: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_base_init), (gst_audio_filter_template_class_init), (gst_audio_filter_template_init), (gst_audio_filter_template_set_property), (gst_audio_filter_template_get_property), (gst_audio_filter_template_setup), (gst_audio_filter_template_filter), (gst_audio_filter_template_filter_inplace), (plugin_init): Oops, forgot to commit fixed-up example. 2007-02-03 20:19:35 +0000 Tim-Philipp Müller <tim@centricular.net> Port GstAudioFilter to 0.10. This change technically breaks but seems justifiable on the grounds that the base class ... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_get_type), (gst_audio_filter_class_init), (gst_audio_filter_init), (gst_audio_filter_set_caps), (gst_audio_filter_class_add_pad_templates): * gst-libs/gst/audio/gstaudiofilter.h: Port GstAudioFilter to 0.10. This change technically breaks API and ABI (and thus also every library developer's heart), but seems justifiable on the grounds that the base class was completely unusable before (ie. would crash immediately when actually used). Fixes #403963 (and eventually also #403572). Also document all of this a bit. 2007-02-03 14:26:54 +0000 Tim-Philipp Müller <tim@centricular.net> Lowering log level to see why things fail on the p5 build bot; fix some typos in unit test messages. Original commit message from CVS: * gst-libs/gst/utils/install-plugins.c: (gst_install_plugins_spawn_child): * tests/check/libs/utils.c: (test_base_utils_install_plugins_do_callout): Lowering log level to see why things fail on the p5 build bot; fix some typos in unit test messages. 2007-02-03 13:59:27 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/utils.c: Don't hard-code temp directory for test helper; use GLib functions to write out file and do... Original commit message from CVS: * tests/check/libs/utils.c: (test_base_utils_install_plugins_do_callout): Don't hard-code temp directory for test helper; use GLib functions to write out file and do error checking etc. 2007-02-02 20:42:08 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/utils/: API: add API for applications to initiate installation of missing plugins, ie. gst_install_plugi... Original commit message from CVS: * gst-libs/gst/utils/Makefile.am: * gst-libs/gst/utils/base-utils.h: * gst-libs/gst/utils/install-plugins.c: (gst_install_plugins_context_set_xid), (gst_install_plugins_context_new), (gst_install_plugins_context_free), (gst_install_plugins_get_helper), (gst_install_plugins_spawn_child), (gst_install_plugins_return_from_status), (gst_install_plugins_installer_exited), (gst_install_plugins_async), (gst_install_plugins_sync), (gst_install_plugins_return_get_name), (gst_install_plugins_installation_in_progress): * gst-libs/gst/utils/install-plugins.h: API: add API for applications to initiate installation of missing plugins, ie. gst_install_plugins_async() primarily. Based on libgimme-codec by Ryan Lortie. * configure.ac: Add --with-install-plugins-helper configure option so distros can specify the path of the helper script or program to call when plugin installation is requested (distros: please do any argument munging in this helper script instead of patching GStreamer to pass arguments differently to another program directly). * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: Build and document new API. * tests/check/libs/utils.c: (result_cb), (test_base_utils_install_plugins_do_callout), (GST_START_TEST), (libgstbaseutils_suite): Some simple checks for the new API. 2007-02-02 14:44:29 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/audioconvert.c: Add small test for 32bit float <=> 64bit float conversion (works only one way so... Original commit message from CVS: * tests/check/elements/audioconvert.c: (test_float_conversion): Add small test for 32bit float <=> 64bit float conversion (works only one way so far, 32=>64 produces structured noise). 2007-02-02 11:21:48 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/gstaudioconvert.c: We don't support floats with a width of 40, 48 or 56 bits. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (set_structure_widths_32_and_64), (make_lossless_changes): We don't support floats with a width of 40, 48 or 56 bits. 2007-02-02 09:48:53 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioconvert/: Support for 64-bit float audio in audioconvert (#339837) Original commit message from CVS: * gst/audioconvert/audioconvert.c: (float), (double), (audio_convert_get_func_index): * gst/audioconvert/gstaudioconvert.c: (set_structure_widths), (make_lossless_changes): Support for 64-bit float audio in audioconvert (#339837) 2007-02-01 18:50:08 +0000 Holger Wansing <linux@wansing-online.de> po/: Add German translation (#352069). Original commit message from CVS: Patch by: Holger Wansing <linux wansing-online de> * po/LINGUAS: * po/de.po: Add German translation (#352069). 2007-02-01 17:52:39 +0000 Sebastian Dröge <slomo@circular-chaos.org> ext/ogg/gstoggmux.c: Use newly added GstCollectPads API to free the allocated resources in the GstOggPad structures (... Original commit message from CVS: reviewed by: Wim Taymans <wim@fluendo.com> * ext/ogg/gstoggmux.c: (gst_ogg_mux_ogg_pad_destroy_notify), (gst_ogg_mux_request_new_pad), (gst_ogg_mux_release_pad): Use newly added GstCollectPads API to free the allocated resources in the GstOggPad structures (#402393). 2007-01-31 15:58:53 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybin.c: Add audioresample+audioconvert in front of the visualisation element, so that elements lik... Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_vis_element): Add audioresample+audioconvert in front of the visualisation element, so that elements like libvisual 0.4 that don't support all samplerates can work. Fixes: #402505 2007-01-30 19:19:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Take some locks and make a copy of the streaminfo value array we maintain while holdin... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_property), (gst_play_base_bin_get_streaminfo_value_array): Take some locks and make a copy of the streaminfo value array we maintain while holding the lock, so that the application can retrieve the stream-info as a value array in a thread-safe way. 2007-01-30 11:29:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audioconvert/gstaudioconvert.c: Don't fail on 0 sized buffers. Fixes #396835. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: Don't fail on 0 sized buffers. Fixes #396835. 2007-01-29 21:13:07 +0000 David Schleef <ds@schleef.org> gst/typefind/gsttypefindfunctions.c: Detect BBCD as video/x-dirac, so we can play raw dirac streams. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: Detect BBCD as video/x-dirac, so we can play raw dirac streams. 2007-01-29 18:14:25 +0000 Tim-Philipp Müller <tim@centricular.net> ext/theora/theoraenc.c: Check return value of theora_encode_header(), or we might try to allocate a random number of ... Original commit message from CVS: * ext/theora/theoraenc.c: (theora_enc_chain): Check return value of theora_encode_header(), or we might try to allocate a random number of bytes. theora_encode_header() can fail if libtheora has been compiled with encoding support disabled. Fixes #398110. 2007-01-29 10:53:06 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/gst/.cvsignore: Do as buildbot says. Original commit message from CVS: * tests/check/gst/.cvsignore: Do as buildbot says. 2007-01-29 10:25:11 +0000 Wim Taymans <wim.taymans@gmail.com> ext/libvisual/visual.c: Fix strides in libvisual. Gst uses X strides. Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_src_setcaps): Fix strides in libvisual. Gst uses X strides. Inspired by: <ed at catmur dot co dot uk> and <tim at centricular dot net> Fixes #401118. 2007-01-27 13:32:24 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.*: Properly propagate streaming errors when we are scanning the file for chains so that we don't ... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_submit_buffer), (gst_ogg_demux_get_data), (gst_ogg_demux_get_next_page), (gst_ogg_demux_get_prev_page), (gst_ogg_demux_do_seek), (gst_ogg_demux_perform_seek), (gst_ogg_demux_bisect_forward_serialno), (gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain), (gst_ogg_demux_find_chains), (gst_ogg_demux_handle_page), (gst_ogg_demux_chain), (gst_ogg_demux_combine_flows), (gst_ogg_demux_loop_reverse), (gst_ogg_demux_loop): * ext/ogg/gstoggdemux.h: Properly propagate streaming errors when we are scanning the file for chains so that we don't crash when shut down. Might fix some crashers when quickly switching oggs in RB such as #332503 and #378436. 2007-01-26 12:44:46 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: Map a gnome-vfs HOST_NOT_FOUND error into a GStreamer NOT_FOUND error code as well. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_start): Map a gnome-vfs HOST_NOT_FOUND error into a GStreamer NOT_FOUND error code as well. 2007-01-25 16:02:41 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Don't try to disconnect a signal from a finalized object. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (remove_source): Don't try to disconnect a signal from a finalized object. 2007-01-25 14:29:21 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin2.c: Cast lock macro parameters to make sure we're actually accessing the lock member at the... Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_dispose): Cast lock macro parameters to make sure we're actually accessing the lock member at the right class level. Free list itself in _dispose() as well and NULL it in case dispose gets called multiple times. 2007-01-25 14:02:37 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin2.c: Free GstDecodeGroups no longer used. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_dispose),(gst_decode_bin_finalize): Free GstDecodeGroups no longer used. (gst_decode_group_expose): Don't unlock too many times ! (deactivate_free_recursive): Free iterator once we're done with it. Fix for recursively deactivating elements (stop at ghostpads). 2007-01-25 12:24:18 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Fix up caps on the frame buffer before we save it and potentially make it accessible to ot... Original commit message from CVS: * gst/playback/gstplaybin.c: (handoff): Fix up caps on the frame buffer before we save it and potentially make it accessible to other threads via g_object_get; also use gst_buffer_replace() instead of gst_mini_object_replace(). 2007-01-25 12:06:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Make getting the current frame thread-safe. Original commit message from CVS: * gst/playback/gstplaybin.c: (gst_play_bin_get_property): Make getting the current frame thread-safe. 2007-01-25 11:48:10 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin2.c: Set queues to bigger sizes to cope with HD contents. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_finalize), (gst_decode_group_new), (gst_decode_group_free): Set queues to bigger sizes to cope with HD contents. Fix some mutex freeing and add comment about MT safe methods. 2007-01-24 12:51:20 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Don't unnecessarily ref (and then leak) upstream events if the text pad is not linked. Fi... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_src_event), (gst_text_overlay_text_event): Don't unnecessarily ref (and then leak) upstream events if the text pad is not linked. Fixes #399948. * tests/check/gst-plugins-base.supp: Add suppression for pango on edgy/x86 for textoverlay test. 2007-01-24 12:10:56 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstrtpbuffer.h: Add some more fixed payloads. Original commit message from CVS: * gst-libs/gst/rtp/gstrtpbuffer.h: Add some more fixed payloads. 2007-01-23 18:39:45 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstoggdemux.c: Error out properly if we get an error from libogg while reading the Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain): Error out properly if we get an error from libogg while reading the BOS page(s). Fixes crash parsing 'fuzzed' ogg file (#399340). 2007-01-23 17:49:29 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin2.c: Don't leak mutex. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_bin_finalize): Don't leak mutex. * tests/check/elements/playbin.c: (test_sink_usage_video_only_stream), (test_suburi_error_unknowntype), (test_suburi_error_invalidfile), (test_suburi_error_wrongproto), (test_missing_urisource_handler), (test_missing_suburisource_handler), (test_missing_primary_decoder), (playbin_suite): Run all tests once with decodebin and once with decodebin2. One test does not pass yet with decodebin2. 2007-01-23 14:30:28 +0000 Edward Hervey <bilboed@bilboed.com> ext/ogg/gstoggmux.c: Fix the cases where oggmux doesn't properly figure out that all sinkpads have gone EOS, and ther... Original commit message from CVS: * ext/ogg/gstoggmux.c: (all_pads_eos), (gst_ogg_mux_collected): Fix the cases where oggmux doesn't properly figure out that all sinkpads have gone EOS, and therefore doesn't push out the remaining buffers and the final EOS event. Fixes #363379 2007-01-23 13:19:19 +0000 Julien Moutte <julien@moutte.net> sys/: Don't lock on navigation event push, just on keysym to string. Original commit message from CVS: 2007-01-23 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): Don't lock on navigation event push, just on keysym to string. Fixes #397673 again. 2007-01-22 17:37:38 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin2.c: Cleanups. Original commit message from CVS: * gst/playback/gstdecodebin2.c: (gst_decode_group_new), (get_current_group), (group_demuxer_event_probe), (gst_decode_group_expose), (deactivate_free_recursive), (gst_decode_group_free): Cleanups. Don't forget to emit 'no-more-pads' once a group is exposed. Cleanup elements from a DecodeGroup once we remove it. Protect call to gst_decode_group_expose() with the decodebin lock. 2007-01-22 13:16:42 +0000 Julien Moutte <julien@moutte.net> sys/: Looking at Xorg code i can't figure out if that XKeysymToString function is thread sensible or not. Lock it jus... Original commit message from CVS: 2007-01-22 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): Looking at Xorg code i can't figure out if that XKeysymToString function is thread sensible or not. Lock it just in case as recommended by Radek Doulik <rodo at ximian dot com>. 2007-01-22 13:10:13 +0000 Julien Moutte <julien@moutte.net> sys/: Lock that X Call as well. Fixes #397673. Original commit message from CVS: 2007-01-22 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): Lock that X Call as well. Fixes #397673. 2007-01-22 12:03:27 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Don't go into an endless loop if the file starts with 00 00 01 2X, like quicktim... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg4_video_type_find): Don't go into an endless loop if the file starts with 00 00 01 2X, like quicktime redirect files might. Fixes #396042. * tests/check/Makefile.am: * tests/check/gst/.cvsignore: * tests/check/gst/typefindfunctions.c: (GST_START_TEST), (typefindfunctions_suite): Add unit test for the above. 2007-01-22 10:27:26 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: On second thought, use "depth" field rather than "bpp" field. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): On second thought, use "depth" field rather than "bpp" field. 2007-01-22 09:23:01 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Camtasia caps apparently need a bpp field (#398875). Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Camtasia caps apparently need a bpp field (#398875). 2007-01-19 19:09:05 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Attempt at a better error message in case we don't have the required Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_subtitle), (gen_source_element), (gst_play_base_bin_change_state): Attempt at a better error message in case we don't have the required URI handler installed; post missing-plugin message also when we're missing an URI handler for the subtitle URI; clean up properly also when an error occurs and we never made it to PAUSED state. * tests/check/elements/playbin.c: (GST_START_TEST), (playbin_suite): Check that we're also getting a missing-plugin messsage for a missing subtitle URI handler (and clean up properly). 2007-01-19 18:47:30 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Plug a few reference leaks. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (analyse_source), (setup_source): Plug a few reference leaks. 2007-01-19 12:23:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Lower probability a bit if the marker isn't right at the start, to decrease the ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg2_sys_type_find): Lower probability a bit if the marker isn't right at the start, to decrease the chance of false positives. 2007-01-19 11:31:50 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Small mpeg2 system stream typefinding improvement: make typefinder probe a bit i... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg2_sys_type_find): Small mpeg2 system stream typefinding improvement: make typefinder probe a bit into the stream instead of just looking for a marker at the beginning. Fixes #397810. 2007-01-18 16:23:35 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/gstchannelmix.c: Remove compatibility cruft for prehistoric GLib versions. Original commit message from CVS: * gst/audioconvert/gstchannelmix.c: Remove compatibility cruft for prehistoric GLib versions. 2007-01-17 16:11:14 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Let decodebin be the element to post missing-plugin messages for missing decoders (rather than playbin... Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstdecodebin.c: (close_pad_link): * gst/playback/gstdecodebin2.c: (analyze_new_pad): * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (gst_play_base_bin_handle_message_func), (unknown_type): Let decodebin be the element to post missing-plugin messages for missing decoders (rather than playbin); make playbin implement GstBin::handle_message so we can suppress missing-plugin messages for types we're not handling on purpose (don't want to bring up an installer in those cases). 2007-01-16 19:37:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst/: Fix potentially unaligned access (#397207). Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): * gst-libs/gst/tag/gstvorbistag.c: (gst_tag_list_to_vorbiscomment_buffer): * gst/typefind/gsttypefindfunctions.c: (vorbis_type_find): Fix potentially unaligned access (#397207). 2007-01-16 12:17:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/examples/seek/seek.c: Allow to toggle looping while it plays. Fix callback prototype. Clean up code a bit more.... Original commit message from CVS: * tests/examples/seek/seek.c: (set_scale), (update_scale), (do_seek), (stop_seek), (pause_cb), (stop_cb), (loop_toggle_cb), (rate_spinbutton_changed_cb), (msg_eos), (msg_segment_done), (main): Allow to toggle looping while it plays. Fix callback prototype. Clean up code a bit more. Add copyright header. 2007-01-16 11:41:58 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: Red and blue mask was swapped (spotted by Dan Williams). Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): Red and blue mask was swapped (spotted by Dan Williams). 2007-01-15 13:58:58 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/tag/: Use new beats-per-minute tag from core. Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: Use new beats-per-minute tag from core. 2007-01-15 11:30:53 +0000 Tim-Philipp Müller <tim@centricular.net> po/POTFILES.in: Add new files with translatable strings, so they actually make it into the template file one day. Original commit message from CVS: * po/POTFILES.in: Add new files with translatable strings, so they actually make it into the template file one day. 2007-01-12 21:19:35 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: gst-libs/gst/audio/gstbaseaudiosink.c Original commit message from CVS: 2007-01-12 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_fixate): Implement, stolen from baseaudiosrc. (gst_base_audio_sink_activate_pull): Remove the handwavey nego stuff, as the base class handles this now. Actually tell the ring buffer to start. (gst_base_audio_sink_callback): Cast the ring buffer correctly. How did this work before? Maybe I'm not as awesome a programmer as I think. * gst-libs/gst/audio/gstbaseaudiosrc.c (gst_base_audio_src_fixate): Rework as a basesrc vmethod instead of a pad function. 2007-01-12 18:08:23 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/utils/missing-plugins.c: Remove more fields so that the application can better blacklist formats that ha... Original commit message from CVS: * gst-libs/gst/utils/missing-plugins.c: (copy_and_clean_caps): Remove more fields so that the application can better blacklist formats that have been tried before. 2007-01-12 17:43:40 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: add latest files Original commit message from CVS: add latest files 2007-01-12 12:47:29 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/mixerutils.h: Add G_BEGIN_DECLS and G_END_DECLS guards so these helpers can be used when compiling... Original commit message from CVS: * gst-libs/gst/audio/mixerutils.h: Add G_BEGIN_DECLS and G_END_DECLS guards so these helpers can be used when compiling with c++ compilers as well. 2007-01-12 09:45:23 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Fix comment. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: Fix comment. 2007-01-11 13:12:17 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Post missing-plugin messages also when we error out because converters, textoverlay or aut... Original commit message from CVS: * gst/playback/gstplaybin.c: (post_missing_element_message), (gen_video_element), (gen_text_element), (gen_audio_element), (gen_vis_element): Post missing-plugin messages also when we error out because converters, textoverlay or auto*sinks are missing (#161922). 2007-01-10 16:08:18 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Fix the case where we try to ref a NULL element when we delay a link because of unfixed caps. Original commit message from CVS: * gst/playback/gstdecodebin.c: (dynamic_add), (close_pad_link), (is_demuxer_element), (new_caps): * gst/playback/gstplaybasebin.c: (source_new_pad): Fix the case where we try to ref a NULL element when we delay a link because of unfixed caps. Set the state of autoplugged decodebins to PAUSED. RTSP now works in playbin, we can remove it from the blacklist. 2007-01-09 14:33:24 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Post missing-plugin messages on the bus for missing sources and missing decoders/demuxers/depayloaders... Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstplaybasebin.c: (string_arr_has_str), (unknown_type), (setup_subtitle), (gen_source_element): * gst/playback/gstplaybin.c: (plugin_init): Post missing-plugin messages on the bus for missing sources and missing decoders/demuxers/depayloaders; fix error code used when we're missing an URI handler source; for media types that we are not handling on purpose at the moment, don't print "don't know how to handle xyz" messages to the terminal or post missing-plugin messages on the bus. * tests/check/elements/playbin.c: (create_playbin), (GST_START_TEST), (gst_codec_src_uri_get_type), (gst_codec_src_uri_get_protocols), (gst_codec_src_uri_get_uri), (gst_codec_src_uri_set_uri), (gst_codec_src_uri_handler_init), (gst_codec_src_init_type), (gst_codec_src_base_init), (gst_codec_src_create), (gst_codec_src_class_init), (gst_codec_src_init), (plugin_init), (playbin_suite): Add some tests for the missing-plugin stuff. 2007-01-09 14:20:08 +0000 Tim-Philipp Müller <tim@centricular.net> API: add new libgstbaseutils library with functions Original commit message from CVS: * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/utils/Makefile.am: * gst-libs/gst/utils/base-utils.c: (gst_base_utils_init): * gst-libs/gst/utils/base-utils.h: * gst-libs/gst/utils/descriptions.c: (format_info_get_desc), (find_format_info), (caps_are_rtp_caps), (gst_base_utils_get_source_description), (gst_base_utils_get_sink_description), (gst_base_utils_get_decoder_description), (gst_base_utils_get_encoder_description), (gst_base_utils_get_element_description), (gst_base_utils_add_codec_description_to_tag_list), (gst_base_utils_get_codec_description), (gst_base_utils_list_all): * gst-libs/gst/utils/descriptions.h: * gst-libs/gst/utils/missing-plugins.c: (missing_structure_get_type), (copy_and_clean_caps), (gst_missing_uri_source_message_new), (gst_missing_uri_sink_message_new), (gst_missing_element_message_new), (gst_missing_decoder_message_new), (gst_missing_encoder_message_new), (missing_structure_get_string_detail), (missing_structure_get_caps_detail), (gst_missing_plugin_message_get_installer_detail), (gst_missing_plugin_message_get_description), (gst_is_missing_plugin_message): * gst-libs/gst/utils/missing-plugins.h: API: add new libgstbaseutils library with functions - to create and parse missing-plugins messages - that provide (translated) descriptions for caps/decoders/sources/etc. Closes #392393. * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: Add new lib. * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: Generate docs for new lib and API. * tests/check/Makefile.am: * tests/check/libs/.cvsignore: * tests/check/libs/utils.c: (missing_msg_check_getters), (GST_START_TEST), (libgstbaseutils_suite): Add some basic unit tests. 2007-01-09 13:35:08 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/Makefile.am: Dist gstoggdemux.h to fix 'make distcheck'. Original commit message from CVS: * ext/ogg/Makefile.am: Dist gstoggdemux.h to fix 'make distcheck'. * sys/v4l/Makefile.am: Fix 'make distcheck' even more. 2007-01-09 12:30:46 +0000 Wim Taymans <wim.taymans@gmail.com> Added docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/ogg/gstoggdemux.c: (gst_ogg_page_copy), (gst_ogg_page_free), (gst_ogg_pad_query_types), (gst_ogg_pad_submit_page), (gst_ogg_chain_reset), (gst_ogg_chain_new_stream), (gst_ogg_demux_perform_seek): * ext/ogg/gstoggdemux.h: Added docs. Add some more comments. Small cleanups. 2007-01-09 11:15:57 +0000 Wim Taymans <wim.taymans@gmail.com> Small documentation updates/fixes Original commit message from CVS: * ext/theora/theoradec.c: * ext/vorbis/vorbisdec.c: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit_full): * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/tag/gstvorbistag.c: Small documentation updates/fixes 2007-01-09 10:37:01 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Require core CVS HEAD for Andy's basesrc/sink API additions. Original commit message from CVS: * configure.ac: Require core CVS HEAD for Andy's basesrc/sink API additions. 2007-01-08 14:01:23 +0000 Günter Thelen <daedalus.inc@gmx.net> gst/typefind/gsttypefindfunctions.c: Add typefinder for flac-in-ogg in conformance with the ogg-mapping on flac.sf.ne... Original commit message from CVS: Patch by: Günter Thelen <daedalus dot inc at gmx net> * gst/typefind/gsttypefindfunctions.c: (flac_type_find), (plugin_init): Add typefinder for flac-in-ogg in conformance with the ogg-mapping on flac.sf.net (there appear to be other versions of the first ogg page in the wild) (#391365). 2007-01-08 13:32:32 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Check if localtime_r() is available. Original commit message from CVS: * configure.ac: Check if localtime_r() is available. * ext/pango/gstclockoverlay.c: (gst_clock_overlay_render_time): If localtime_r() is not available, fall back to localtime(). Should fix build on MingW (#393310). 2007-01-08 12:30:03 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.*: Remove spurious 1000 subtrahend when calculating the timestamp from the frame number and ... Original commit message from CVS: * gst/subparse/gstsubparse.c: (parse_mdvdsub): * gst/subparse/gstsubparse.h: Remove spurious 1000 subtrahend when calculating the timestamp from the frame number and the frame rate . Also, use the frames/second value specified in the first line of the file, if one is specified there. Should fix #357503. * tests/check/elements/subparse.c: (do_test), (test_tmplayer_do_test), (test_microdvd_do_test), (GST_START_TEST), (subparse_suite): Add some basic unit tests for the microdvd subtitle format. 2007-01-07 21:53:38 +0000 Young-Ho Cha <ganadist@chollian.net> sys/xvimage/xvimagesink.c: Fixes : #390076. Original commit message from CVS: 2007-01-07 Julien MOUTTE <julien@moutte.net> * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimage_buffer_finalize), (gst_xvimagesink_xvimage_new), (gst_xvimagesink_xvimage_put), (gst_lookup_xv_port_from_adaptor), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_setcaps), (gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_set_event_handling), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_init), (gst_xvimagesink_class_init): Patch by : Young-Ho Cha <ganadist at chollian dot net> Fixes : #390076. Add an adaptor property to select a specific XV adaptor. * sys/xvimage/xvimagesink.h: 2007-01-07 18:50:13 +0000 Julien Moutte <julien@moutte.net> sys/: Use flow_lock much more to protect every access to xwindow. Original commit message from CVS: 2007-01-07 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize), (gst_ximagesink_handle_xerror), (gst_ximagesink_ximage_new), (gst_ximagesink_ximage_destroy), (gst_ximagesink_ximage_put), (gst_ximagesink_handle_xevents), (gst_ximagesink_setcaps), (gst_ximagesink_change_state), (gst_ximagesink_set_xwindow_id), (gst_ximagesink_expose), (gst_ximagesink_set_event_handling): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimage_buffer_finalize), (gst_xvimagesink_handle_xerror), (gst_xvimagesink_xvimage_new), (gst_xvimagesink_xvimage_put), (gst_xvimagesink_handle_xevents), (gst_xvimagesink_setcaps), (gst_xvimagesink_change_state), (gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_expose), (gst_xvimagesink_set_event_handling): Use flow_lock much more to protect every access to xwindow. Try to catch erros while creating images in case some drivers are just generating an XError when the requested image is too big. Should fix : #354698, #384008, #384060. * tests/icles/stress-xoverlay.c: (cycle_window), (create_window): Implement some stress testing of setting window xid. 2007-01-07 10:33:55 +0000 Sébastien Moutte <sebastien@moutte.net> win32/common/libgsaudio.def: Add new exported function. Original commit message from CVS: * win32/common/libgsaudio.def: Add new exported function. * win32/common/libgstogg.dsp: Add gstoggaviparse.c to the build. * win32/common/libgstvideoscale.dsp: Add vs_4tap.c to the build. * win32/common/libgstvorbis.dsp: Add vorbistag.c to the build. 2007-01-06 17:28:40 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * gst-libs/gst/audio/gstbaseaudiosink.c: gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_class_init) Original commit message from CVS: 2007-01-06 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstbaseaudiosink.c (gst_base_audio_sink_class_init) (gst_base_audio_sink_init): (gst_base_audio_sink_activate_pull): Add an activate_pull function to baseaudiosink, and tell basesink that we can work in pull mode. This way the ring buffer thread drives the pipeline directly, if pull mode is possible. There is some lingering nastiness regarding capsnego, however. (gst_base_audio_sink_callback): Implement the callback to pull data. This interface is a bit light, though -- it should get a GstFlowReturn return value at least. 2007-01-05 19:43:55 +0000 Tim-Philipp Müller <tim@centricular.net> Printf format and missing argument fixes. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_stream_out): * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): * gst/playback/gstdecodebin2.c: (gst_decode_group_check_if_blocked): Printf format and missing argument fixes. 2007-01-05 18:57:53 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/ogg/gstogmparse.c: Activate pads before adding them to the element. Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header), (gst_ogm_parse_change_state): Activate pads before adding them to the element. 2007-01-05 16:02:50 +0000 Tim-Philipp Müller <tim@centricular.net> tests/examples/seek/: Call g_thread_init() first thing in main() (see #391278). Original commit message from CVS: * tests/examples/seek/scrubby.c: (main): * tests/examples/seek/seek.c: (main): Call g_thread_init() first thing in main() (see #391278). 2007-01-05 12:19:34 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add test for GstNetBuffer + gst_buffer_copy(). Disabled for the time being, since it's broken, see #393... Original commit message from CVS: * tests/check/Makefile.am: * tests/check/libs/.cvsignore: * tests/check/libs/netbuffer.c: (GST_START_TEST), (netbuffer_suite): Add test for GstNetBuffer + gst_buffer_copy(). Disabled for the time being, since it's broken, see #393099. 2007-01-05 12:13:24 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Update to use GST_PLUGINS_BASE_CFLAGS as well. Original commit message from CVS: * tests/check/Makefile.am: Update to use GST_PLUGINS_BASE_CFLAGS as well. 2007-01-04 12:49:48 +0000 Thomas Vander Stichele <thomas@apestaart.org> configure.ac: split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS so that GST_BASE_CFLAGS can go inbetwe... Original commit message from CVS: * configure.ac: split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS so that GST_BASE_CFLAGS can go inbetween them, making sure we use uninstalled gst-libs headers * docs/libs/Makefile.am: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst/adder/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/playback/Makefile.am: * gst/tcp/Makefile.am: * gst/videoscale/Makefile.am: * gst/volume/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: * tests/icles/Makefile.am: adapt 2007-01-04 11:30:53 +0000 Julien Moutte <julien@moutte.net> Add a method to the XOverlay interface to allow disabling of event handling in x[v]imagesink elements. This will let ... Original commit message from CVS: 2007-01-04 Julien MOUTTE <julien@moutte.net> * gst-libs/gst/interfaces/xoverlay.c: (gst_x_overlay_handle_events): * gst-libs/gst/interfaces/xoverlay.h: * sys/ximage/ximagesink.c: (gst_ximagesink_xwindow_new), (gst_ximagesink_set_xwindow_id), (gst_ximagesink_set_event_handling), (gst_ximagesink_xoverlay_init), (gst_ximagesink_set_property), (gst_ximagesink_get_property), (gst_ximagesink_init), (gst_ximagesink_class_init): * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_new), (gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_set_event_handling), (gst_xvimagesink_xoverlay_init), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_init), (gst_xvimagesink_class_init): * sys/xvimage/xvimagesink.h: * tests/icles/stress-xoverlay.c: (toggle_events), (create_window): Add a method to the XOverlay interface to allow disabling of event handling in x[v]imagesink elements. This will let X events propagate to parent windows which can be usefull in some cases. Be carefull that the application is then responsible of pushing navigation events and expose events to the video sink. Fixes: #387138. 2007-01-03 15:45:06 +0000 Tim-Philipp Müller <tim@centricular.net> Add vorbistag <=> GStreamer tag mapping for GST_TAG_LOCATION (fixes #392070). Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: * tests/check/libs/tag.c: (GST_START_TEST): Add vorbistag <=> GStreamer tag mapping for GST_TAG_LOCATION (fixes #392070). 2007-01-01 18:59:49 +0000 Tim-Philipp Müller <tim@centricular.net> Dist design docs. Original commit message from CVS: * configure.ac: * docs/Makefile.am: * docs/design/Makefile.am: Dist design docs. 2006-12-27 17:15:35 +0000 Julien Moutte <julien@moutte.net> docs/libs/gst-plugins-base-libs-sections.txt: Fix a documentation typo. Fixes: #390063. Original commit message from CVS: 2006-12-27 Julien MOUTTE <julien@moutte.net> * docs/libs/gst-plugins-base-libs-sections.txt: Fix a documentation typo. Fixes: #390063. 2006-12-27 12:08:13 +0000 Julien Moutte <julien@moutte.net> sys/: Plug a caps leak. Original commit message from CVS: 2006-12-27 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_setcaps): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps): Plug a caps leak. * win32/common/config.h: Updated. 2006-12-22 12:10:18 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/: Fix the dp tests, but activating the pads for the streamheader tests too and cleaning up condi... Original commit message from CVS: * tests/check/elements/gdpdepay.c: (cleanup_gdpdepay), (setup_gdpdepay_streamheader): * tests/check/elements/gdppay.c: (cleanup_gdppay), (setup_gdppay_streamheader): Fix the dp tests, but activating the pads for the streamheader tests too and cleaning up conditionaly 2006-12-22 11:09:34 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/ffmpegcolorspace/: Add 2 new caps arrangements, for 24-bit RGB and BGR in 32-bits, but at the other end of the wo... Original commit message from CVS: * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpegcsp_avpicture_fill): * gst/ffmpegcolorspace/imgconvert.c: (img_convert), (img_get_alpha_info): Add 2 new caps arrangements, for 24-bit RGB and BGR in 32-bits, but at the other end of the word. Fixes: #387073. Add some inconsequential branch hints in a couple of places. 2006-12-21 12:30:11 +0000 Tim-Philipp Müller <tim@centricular.net> gst/ffmpegcolorspace/gstffmpegcodecmap.c: The "signed" field in raw audio caps is of boolean type, trying to extract ... Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_smpfmt): The "signed" field in raw audio caps is of boolean type, trying to extract the value with _get_int() will fail (fix to keep in sync with the copy in gst-ffmpeg) 2006-12-21 08:12:26 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/: consistent pad (de)activation Original commit message from CVS: * tests/check/elements/audioresample.c: (cleanup_audioresample): * tests/check/elements/audiotestsrc.c: (cleanup_audiotestsrc): * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (cleanup_gdpdepay): * tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay): * tests/check/elements/subparse.c: (teardown_subparse): * tests/check/elements/textoverlay.c: (cleanup_textoverlay): * tests/check/elements/videorate.c: (cleanup_videorate): * tests/check/elements/videotestsrc.c: (cleanup_videotestsrc): * tests/check/elements/volume.c: (cleanup_volume): * tests/check/elements/vorbisdec.c: (setup_vorbisdec), (cleanup_vorbisdec): * tests/check/elements/vorbistag.c: (setup_vorbistag), (cleanup_vorbistag): consistent pad (de)activation 2006-12-20 10:29:58 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Forgot to register the extensions. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Forgot to register the extensions. 2006-12-20 09:25:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Add typefinder for VIVO files (my christmas present to the 90s). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (vivo_type_find), (plugin_init): Add typefinder for VIVO files (my christmas present to the 90s). 2006-12-16 13:59:09 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: Special-case the text/plain media type: we only want to recognise it as a 'raw' decoded ... Original commit message from CVS: * gst/playback/gstdecodebin.c: (type_found): Special-case the text/plain media type: we only want to recognise it as a 'raw' decoded media type if it comes from a demuxer or subtitle parser, but not if the entire stream is of text/plain type. If the entire stream is text/plain, we should just error out. This fixes playback of audio files with lyrics in totem. Totem can't distinguish between text files and subtitle files and passes any .txt file with the same basename as the main file to playbin as suburi, and playbin will then throw a 'subtitle found, but no video stream' error, which isn't entirely helpful. See #380342. Also, with this change we'll show a slightly more correct error message in case totem passes a playlist file to us (although a custom error message wording instead of the default text would probably not be a bad idea either). Same problem also needs to be fixed for playbin+decodebin2. * tests/check/Makefile.am: * tests/check/elements/decodebin.c: (src_handoff_cb), (decodebin_new_decoded_pad_cb), (GST_START_TEST), (decodebin_suite): Add simple unit test for decodebin for the above. 2006-12-16 12:22:57 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Refuse to change state to READY when we failed to create any of the required elements in our instance ... Original commit message from CVS: * gst/playback/gstdecodebin.c: (gst_decode_bin_change_state): * gst/playback/gstdecodebin2.c: (gst_decode_bin_change_state): Refuse to change state to READY when we failed to create any of the required elements in our instance init function. 2006-12-15 10:52:23 +0000 Tim-Philipp Müller <tim@centricular.net> docs/libs/gst-plugins-base-libs-sections.txt: Small docs fixes/updates. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: Small docs fixes/updates. * gst-libs/gst/video/gstvideosink.h: Remove nonfunctional GST_VIDEO_SINK_CLOCK macro which is a leftover from the 0.9 days (GST_BASE_SINK_CLOCK, which it points to, was removed from the base sink API between 0.9.6 and 0.9.7). API: add GST_VIDEO_SINK_CAST and use it for the height/width accessor macros, so we don't do a runtime GObject type check every time we use them. 2006-12-15 00:20:37 +0000 Thomas Vander Stichele <thomas@apestaart.org> add doap file Original commit message from CVS: * Makefile.am: * gst-plugins-base.doap: * gst-plugins-base.spec.in: add doap file 2006-12-09 15:12:38 +0000 Jens Granseuer <jensgr@gmx.net> Declare variables at the beginning of a block. Fixes #383195. Original commit message from CVS: Patch by: Jens Granseuer <jensgr at gmx net> * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_handle_frame_based_buffer), (gst_base_rtp_audio_payload_handle_sample_based_buffer): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_fixate): Declare variables at the beginning of a block. Fixes #383195. 2006-12-07 02:38:41 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Bump version nano - back to CVS. Original commit message from CVS: * configure.ac: Bump version nano - back to CVS. === release 0.10.11 === 2006-12-07 02:30:38 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: releasing 0.10.11, "Dumb things" Original commit message from CVS: === release 0.10.11 === 2006-12-06 Jan Schmidt <thaytan@mad.scientist.com> * configure.ac: releasing 0.10.11, "Dumb things" 2006-12-05 12:44:00 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: Handle the case where an element has multiple pads with unfixed caps as well as still po... Original commit message from CVS: * gst/playback/gstdecodebin.c: (find_dynamic), (dynamic_add), (close_pad_link), (elem_is_dynamic), (unlinked), (close_link): Handle the case where an element has multiple pads with unfixed caps as well as still possibly producing more dynamic pads by storing each case as a distinct entry in the dynamic list. Fixes #38223 again. 2006-12-04 13:02:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Fix #382223, add more dynamic caps handling. Original commit message from CVS: * gst/playback/gstdecodebin.c: (close_pad_link): Fix #382223, add more dynamic caps handling. 2006-12-01 11:35:57 +0000 Zaheer Abbas Merali <zaheerabbas@merali.org> * po/.gitignore: Ignore all pot files Original commit message from CVS: Ignore all pot files 2006-12-01 10:36:50 +0000 Michael Smith <msmith@xiph.org> gst/audiorate/gstaudiorate.c: Delete bad debug code. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain): Delete bad debug code. Fixes #381219 2006-12-01 10:27:54 +0000 Sergey Scobich <sergey.scobich@gmail.com> Fix compilation on win32 under VS8 Original commit message from CVS: * gst/videoscale/vs_4tap.c: * win32/MANIFEST: * win32/common/config.h: * win32/vs8/libgstvideoscale.vcproj: Fix compilation on win32 under VS8 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com> Partially fixes #381175 2006-11-30 23:46:27 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-11-30 12:50:42 +0000 Michael Smith <msmith@xiph.org> tests/check/pipelines/theoraenc.c: It would be very bad if, after a discont buffer, we thought every single following... Original commit message from CVS: * tests/check/pipelines/theoraenc.c: (check_buffer_granulepos), (GST_START_TEST): It would be very bad if, after a discont buffer, we thought every single following buffer was also discont. So, add to the test to ensure that this isn't the case. * ext/theora/theoraenc.c: (theora_enc_is_discontinuous): ... it was the case. So fix it. 2006-11-28 16:43:18 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Improve debug. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (check_queue_event): Improve debug. * gst/videoscale/gstvideoscale.c: (gst_video_scale_transform_caps): Fix width and height range from 16 - 4096 to 1 - MAXINT, just like the padtemplate caps. Refixes #357577. 2006-11-28 16:21:27 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Add event probe to see when EOS is in a queue and we can disable the underrun signals.... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (check_queue_event), (queue_threshold_reached), (queue_out_of_data), (gen_preroll_element): Add event probe to see when EOS is in a queue and we can disable the underrun signals. Fixes #357577. 2006-11-28 14:40:39 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/: New decodebin2 element. Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstdecodebin2.c: (gst_decode_bin_get_type), (_gst_boolean_accumulator), (gst_decode_bin_class_init), (gst_decode_bin_factory_filter), (compare_ranks), (print_feature), (gst_decode_bin_init), (gst_decode_bin_dispose), (gst_decode_bin_finalize), (gst_decode_bin_set_property), (gst_decode_bin_get_property), (gst_decode_bin_set_caps), (gst_decode_bin_get_caps), (gst_decode_bin_autoplug_continue), (gst_decode_bin_autoplug_sort), (analyze_new_pad), (connect_pad), (connect_element), (expose_pad), (type_found), (pad_added_group_cb), (pad_removed_group_cb), (no_more_pads_group_cb), (pad_added_cb), (pad_removed_cb), (no_more_pads_cb), (find_compatibles), (is_demuxer_element), (are_raw_caps), (multi_queue_overrun_cb), (multi_queue_underrun_cb), (gst_decode_group_new), (get_current_group), (group_demuxer_event_probe), (gst_decode_group_control_demuxer_pad), (gst_decode_group_control_source_pad), (gst_decode_group_check_if_blocked), (gst_decode_group_check_if_drained), (gst_decode_group_expose), (gst_decode_group_hide), (gst_decode_group_free), (gst_decode_group_set_complete), (source_pad_blocked_cb), (source_pad_event_probe), (gst_decode_pad_new), (add_fakesink), (remove_fakesink), (find_sink_pad), (gst_decode_bin_change_state), (plugin_init): New decodebin2 element. Closes #370092 * gst/playback/gstplay-marshal.list: Added marshallers for new signals in decodebin2 * gst/playback/gstplaybasebin.c: (setup_subtitle), (make_decoder): Use decodebin2 if *and only if* the USE_DECODEBIN2 environment variable is set. 2006-11-28 10:45:40 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Disable rtsp:// uris for the release, it's not good enough yet. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_source), (gst_play_base_bin_change_state): Disable rtsp:// uris for the release, it's not good enough yet. Remove unused var. 2006-11-26 16:39:41 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Implement reverse playback. Original commit message from CVS: * ext/theora/theoradec.c: (gst_theora_dec_reset), (theora_dec_push_forward), (theora_dec_push_reverse), (theora_handle_data_packet), (theora_dec_decode_buffer), (theora_dec_flush_decode), (theora_dec_chain_reverse), (theora_dec_chain_forward), (theora_dec_chain): Implement reverse playback. * ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset), (vorbis_dec_decode_buffer), (vorbis_dec_flush_decode), (vorbis_dec_chain_forward): Clear buffers used for reverse playback in _reset. No need to set the eos flag, we clip samples using the segment. 2006-11-24 15:40:58 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Some cleanups. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_page_copy), (gst_ogg_page_free), (gst_ogg_pad_init), (gst_ogg_pad_dispose), (gst_ogg_pad_reset), (gst_ogg_pad_stream_out), (gst_ogg_pad_submit_page), (gst_ogg_chain_reset), (gst_ogg_demux_perform_seek): Some cleanups. Handle continued pages in reverse mode. 2006-11-24 15:39:03 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Small cleanups. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_push_forward), (vorbis_handle_data_packet), (vorbis_dec_decode_buffer), (vorbis_dec_flush_decode): Small cleanups. Don't try to add invalid timestamps. Clipping will unref the buffer. 2006-11-24 08:56:10 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/: remove obsolete _factory_init protos Original commit message from CVS: * gst/adder/gstadder.h: * gst/audiotestsrc/gstaudiotestsrc.h: remove obsolete _factory_init protos 2006-11-24 08:35:23 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: Fix spacing in debug message. Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_buffer_alloc): Fix spacing in debug message. 2006-11-23 11:07:23 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Don't just ignore return values from _pad_push(). Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_page), (gst_ogg_demux_chain): Don't just ignore return values from _pad_push(). Small debug improvements. 2006-11-23 11:02:11 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggmux.c: If our incoming buffer is marked as DISCONT, then increment the page number (so that the discont... Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_process_best_pad): If our incoming buffer is marked as DISCONT, then increment the page number (so that the discontinuity is marked in the final ogg bitstream) and flush the previous page. 2006-11-22 14:34:03 +0000 Michael Smith <msmith@xiph.org> ext/theora/: Mark discontinuities of > 3/4 of a frame, reinit encoder. Original commit message from CVS: * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: (gst_theora_enc_init), (theora_enc_reset), (theora_enc_clear), (theora_enc_sink_setcaps), (theora_buffer_from_packet), (theora_enc_is_discontinuous), (theora_enc_chain), (theora_enc_change_state): Mark discontinuities of > 3/4 of a frame, reinit encoder. * tests/check/pipelines/theoraenc.c: (check_buffer_granulepos), (GST_START_TEST), (theoraenc_suite): Enable discontinuity test, fix it. 2006-11-21 18:39:34 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.*: Some textoverlay fixes: for one, in the video chain function, actually wait for a text bu... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_text_pad_unlink), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): * ext/pango/gsttextoverlay.h: Some textoverlay fixes: for one, in the video chain function, actually wait for a text buffer to come in if there is none at the moment and there should be one; also, deal more gracefully with incoming buffers that do not have a timestamp or duration; discard text buffer when not needed any longer. Fixes #341681. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/textoverlay.c: (notgst_check_setup_src_pad2), (notgst_check_teardown_src_pad2), (setup_textoverlay), (buffer_is_all_black), (create_black_buffer), (create_text_buffer), (cleanup_textoverlay), (GST_START_TEST), (test_video_waits_for_text_send_text_newsegment_thread), (test_video_waits_for_text_shutdown_element), (test_render_continuity_push_video_buffers_thread), (textoverlay_suite): Add some unit tests for textoverlay. 2006-11-21 09:29:56 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Avoid integer underflow when the found probability for mp3 is smaller than the '... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset): Avoid integer underflow when the found probability for mp3 is smaller than the 'penalty' we subtract if there's not a clean mp3 header sync at offset 0. 2006-11-21 08:17:16 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/gst-plugins-base-libs-sections.txt: Add some new symbols to the docs Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: Add some new symbols to the docs 2006-11-20 16:44:28 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Enable ffmpegcolorspace test now that the RGBA32 issue is fixed (for now not for valgrinding though, si... Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/ffmpegcolorspace.c: (ffmpegcolorspace_suite): Enable ffmpegcolorspace test now that the RGBA32 issue is fixed (for now not for valgrinding though, since it takes too long). 2006-11-20 15:01:09 +0000 Wim Taymans <wim.taymans@gmail.com> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Fix RGBA32 caps. Fixes #357038. Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps): Fix RGBA32 caps. Fixes #357038. 2006-11-20 12:20:39 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixertrack.h: Add FIXME so we can add some padding here in 0.11 Original commit message from CVS: * gst-libs/gst/interfaces/mixertrack.h: Add FIXME so we can add some padding here in 0.11 2006-11-19 17:07:34 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/rtp/gstbasertpaudiopayload.h: Fix GstBaseRTPAudioPayload structure so the whole GObject inheritance busi... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: Fix GstBaseRTPAudioPayload structure so the whole GObject inheritance business actually works (parent class instance structure must always come first in the derived class instance structure). 2006-11-16 14:35:30 +0000 Tim-Philipp Müller <tim@centricular.net> Make sure our checks and the videotestsrc plugin link against the local uninstalled gst libs and not any installed gs... Original commit message from CVS: * gst/videotestsrc/Makefile.am: * tests/check/Makefile.am: Make sure our checks and the videotestsrc plugin link against the local uninstalled gst libs and not any installed gst libs that might happen to exist as well. * tests/check/elements/adder.c: (message_received), (test_event_message_received), (test_play_twice_message_received): * tests/check/elements/ffmpegcolorspace.c: (GST_START_TEST): Fix compiler warnings when compiling against core with disabled debugging system. 2006-11-16 12:55:08 +0000 Michael Smith <msmith@xiph.org> gst/audiorate/gstaudiorate.c: Fix audiorate, so that it accurately sets offsets and timestamps. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_reset), (gst_audio_rate_sink_event), (gst_audio_rate_chain): Fix audiorate, so that it accurately sets offsets and timestamps. Doesn't change the fundamental algorithmic decisions; so should be safe. * tests/check/Makefile.am: Enable audiorate test now that it passes. 2006-11-15 10:05:33 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: clear xv when going to NULL, remove // commented non-existant proto Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state): clear xv when going to NULL, remove // commented non-existant proto * tests/examples/seek/seek.c: (main): add missing tooltip description for scrub and play_scrub 2006-11-14 23:34:19 +0000 David Schleef <ds@schleef.org> configure.ac: Bump liboil requirement to 0.3.8. Original commit message from CVS: * configure.ac: Bump liboil requirement to 0.3.8. * gst-libs/gst/riff/riff-media.c: Add Dirac fourcc. * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.h: Use liboil's stdint.h. * gst/videotestsrc/videotestsrc.c: Remove liboil related ifdef's, since they aren't needed now, and won't work with future versions. 2006-11-14 23:08:38 +0000 David Schleef <ds@schleef.org> gst/videoscale/: Add a 4-tap image scaler. Theoretically looks much prettier. Original commit message from CVS: * gst/videoscale/Makefile.am: * gst/videoscale/gstvideoscale.c: * gst/videoscale/gstvideoscale.h: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * gst/videoscale/vs_image.c: * gst/videoscale/vs_image.h: * gst/videoscale/vs_scanline.c: * gst/videoscale/vs_scanline.h: Add a 4-tap image scaler. Theoretically looks much prettier. The tap calculation could use some improvement. 2006-11-14 11:54:14 +0000 Jan David Mol <j.j.d.mol@tudelft.nl> Various gsize and gssize printf fixes. Fixes #372507. Original commit message from CVS: Patch by: Jan David Mol <j dot j dot d dot mol at tudelft dot nl> * gst-libs/gst/riff/riff-read.c: (gst_riff_parse_strf_auds), (gst_riff_parse_strf_iavs): * gst/subparse/gstsubparse.c: (convert_encoding): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_client_write): * gst/tcp/gsttcp.c: (gst_tcp_socket_write), (gst_tcp_socket_read), (gst_tcp_read_buffer), (gst_tcp_gdp_read_caps), (gst_tcp_gdp_write_buffer), (gst_tcp_gdp_write_caps): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_render): * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new): Various gsize and gssize printf fixes. Fixes #372507. 2006-11-13 18:14:48 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.*: First stab at vorbis reverse playback. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event), (vorbis_dec_push_forward), (vorbis_dec_push_reverse), (vorbis_handle_data_packet), (vorbis_dec_decode_buffer), (vorbis_dec_flush_decode), (vorbis_dec_chain_reverse), (vorbis_dec_chain_forward), (vorbis_dec_chain): * ext/vorbis/vorbisdec.h: First stab at vorbis reverse playback. 2006-11-13 17:30:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.*: Make the clock sync code more accurate wrt resampling and playback at differen... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_event), (gst_base_audio_sink_render): * gst-libs/gst/audio/gstbaseaudiosink.h: Make the clock sync code more accurate wrt resampling and playback at different rates. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit_full), (gst_ring_buffer_commit): * gst-libs/gst/audio/gstringbuffer.h: Use better algorithm to interpolate sample rates. 2006-11-13 15:31:01 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggdemux.c: Improve a debug line slightly. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_page): Improve a debug line slightly. * ext/ogg/gstogmparse.c: (gst_ogm_parse_plugin_init): Call gst_riff_init() in plugin_init, to avoid getting errors from the debug system (unrelated changes to another plugin made this turn up; not sure why). 2006-11-10 19:20:21 +0000 Sergey Scobich <sergery.scobich@gmail.com> win32/common/libgsttag.def: Add missing symbol (#366492). Original commit message from CVS: Patch by: Sergey Scobich <sergery.scobich at gmail com> * win32/common/libgsttag.def: Add missing symbol (#366492). 2006-11-10 00:52:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gststreamselector.c: Don't unref a NULL pad. Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_stream_selector_dispose): Don't unref a NULL pad. 2006-11-09 00:50:00 +0000 Christian Schaller <uraeus@gnome.org> ext/ogg/gstoggdemux.c: Implement first stab at reverse playback. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_page), (gst_ogg_demux_get_prev_page), (gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page), (gst_ogg_demux_chain), (gst_ogg_demux_loop_forward), (gst_ogg_demux_loop_reverse), (gst_ogg_demux_loop): Implement first stab at reverse playback. 2006-11-07 07:22:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/riff-media.c: add h263/h264 variants to the caps, Fixes #363118 Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): add h263/h264 variants to the caps, Fixes #363118 2006-11-06 18:24:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/: Use g_strerror instead of strerror so we get UTF-8. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func): * gst-libs/gst/audio/gstaudiosrc.c: (audioringbuffer_thread_func): Use g_strerror instead of strerror so we get UTF-8. 2006-11-04 07:25:58 +0000 David Schleef <ds@schleef.org> ext/ogg/: Add/remove KW-DIRAC header here, since it is ogg-specific. Original commit message from CVS: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: Add/remove KW-DIRAC header here, since it is ogg-specific. 2006-11-03 15:44:31 +0000 Michael Smith <msmith@xiph.org> gst/typefind/gsttypefindfunctions.c: Recognise more mpeg4 elementary video streams. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg4_video_type_find): Recognise more mpeg4 elementary video streams. 2006-11-02 17:26:03 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Lower the probability of mp3 typefinding functions if we don't find a valid mp3 ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset): Lower the probability of mp3 typefinding functions if we don't find a valid mp3 header at the start of the file. Closes #369482 2006-11-02 15:06:36 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/: Document and partially implement an algorithm for doing reverse playback of theora video. Original commit message from CVS: * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_init), (theora_dec_sink_event), (theora_dec_chain_forward), (theora_dec_flush_decode), (theora_dec_chain_reverse), (theora_dec_chain): Document and partially implement an algorithm for doing reverse playback of theora video. 2006-11-02 14:18:45 +0000 Sergey Scobich <sergey.scobich@gmail.com> win32/: Misc. VS8 build fixes: fix syntax in config.h, add missing entries to libgsttag.def; add missing dependencies... Original commit message from CVS: Patch by: Sergey Scobich <sergey.scobich at gmail com> * win32/common/config.h: * win32/common/interfaces-enumtypes.c: * win32/common/libgsttag.def: * win32/vs8/gst-plugins-base.sln: * win32/vs8/libgstaudioresample.vcproj: * win32/vs8/libgstinterfaces.vcproj: * win32/vs8/libgstogg.vcproj: * win32/vs8/libgstriff.vcproj: * win32/vs8/libgsttag.vcproj: * win32/vs8/libgsttheora.vcproj: * win32/vs8/libgstvideoscale.vcproj: * win32/vs8/libgstvorbis.vcproj: Misc. VS8 build fixes: fix syntax in config.h, add missing entries to libgsttag.def; add missing dependencies for some vs8 projects; re-arrange placement of .def files in vs8 projects (#366334). 2006-11-01 14:08:31 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstogg.c: Remove unused variable. Original commit message from CVS: * ext/ogg/gstogg.c: Remove unused variable. * ext/ogg/gstoggdemux.c: Fix Wim's surname in plugin description. 2006-10-31 15:05:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst-plugins-base.spec.in: spec new .h file. Fixes #368310. Original commit message from CVS: * gst-plugins-base.spec.in: spec new .h file. Fixes #368310. 2006-10-31 14:19:07 +0000 Michael Smith <msmith@xiph.org> gst/tcp/gstmultifdsink.*: Make using the remove or clear signals threadsafe. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_add_full), (gst_multi_fd_sink_remove), (gst_multi_fd_sink_clear), (gst_multi_fd_sink_get_stats), (gst_multi_fd_sink_remove_client_link), (gst_multi_fd_sink_queue_buffer), (gst_multi_fd_sink_handle_clients): * gst/tcp/gstmultifdsink.h: Make using the remove or clear signals threadsafe. Make calling get-stats with an invalid fd not segfault. Fixes 368273. 2006-10-31 10:49:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/: Fix and activate base audio payloader. Original commit message from CVS: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: (gst_base_rtp_audio_payload_init): Fix and activate base audio payloader. 2006-10-28 17:22:57 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Add typefinder for QuickTime Image Files (see #366156). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (qtif_type_find), (plugin_init): Add typefinder for QuickTime Image Files (see #366156). 2006-10-28 16:00:51 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioresample/gstaudioresample.c: Another typo fix (#366212). Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init): Another typo fix (#366212). 2006-10-27 17:13:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst/volume/gstvolume.c: Use stream time to synchronize volume property instead of rather random timestamps. This is n... Original commit message from CVS: * gst/volume/gstvolume.c: (volume_transform_ip): Use stream time to synchronize volume property instead of rather random timestamps. This is needed when gnonlin does its time shifting. 2006-10-27 16:46:15 +0000 Wim Taymans <wim.taymans@gmail.com> * ChangeLog: I'm too lazy to comment this Original commit message from CVS: *** empty log message *** 2006-10-27 16:45:30 +0000 Mark Nauwelaerts <manauw@skynet.be> ext/ogg/gstoggmux.c: Remove the pad from the element in release_pad. Original commit message from CVS: Patch by: Mark Nauwelaerts <manauw at skynet dot be> * ext/ogg/gstoggmux.c: (gst_ogg_mux_release_pad): Remove the pad from the element in release_pad. 2006-10-27 11:57:18 +0000 Tim-Philipp Müller <tim@centricular.net> sys/: Explicitly create our custom buffer classes at a thread-safe location as well, since g_type_class_ref() doesn't... Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_get_type): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_type): Explicitly create our custom buffer classes at a thread-safe location as well, since g_type_class_ref() doesn't seem to be entirely thread-safe either (#365501; also see #349410). 2006-10-26 10:49:00 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-read.c: If strings in INFO chunk are not UTF-8, do something similar to what we do for ID3v1 t... Original commit message from CVS: * gst-libs/gst/riff/riff-read.c: (freeform_string_to_utf8), (gst_riff_parse_info): If strings in INFO chunk are not UTF-8, do something similar to what we do for ID3v1 tags: check a number of environment variables (GST_AVI_TAG_ENCODING, GST_RIFF_TAG_ENCODING, GST_TAG_ENCODING) for character sets to try, otherwise try the current locale and/or fall back on ISO-8859-1. Fixes #360552. 2006-10-23 12:46:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/: Add a bunch of exciting new checkers patterns. Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_pattern_get_type), (gst_video_test_src_set_pattern): * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: (gst_video_test_src_checkers1), (gst_video_test_src_checkers2), (gst_video_test_src_checkers4), (gst_video_test_src_checkers8): * gst/videotestsrc/videotestsrc.h: Add a bunch of exciting new checkers patterns. 2006-10-23 12:06:44 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/: Add support for TMPlayer-type subtitles (#362845). Original commit message from CVS: * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect), (gst_sub_parse_format_autodetect), (handle_buffer), (gst_sub_parse_chain), (gst_subparse_type_find), (plugin_init): * gst/subparse/gstsubparse.h: * gst/subparse/tmplayerparse.c: (tmplayer_parse_line), (parse_tmplayer): * gst/subparse/tmplayerparse.h: Add support for TMPlayer-type subtitles (#362845). * tests/check/elements/subparse.c: (test_tmplayer_do_test), (GST_START_TEST), (subparse_suite): Add some basic unit tests for the above. 2006-10-23 11:47:04 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/audiorate.c: More tests for audiorate: inject buffers to check behaviour when buffers overlap. Original commit message from CVS: * tests/check/elements/audiorate.c: (test_injector_base_init), (test_injector_class_init), (test_injector_chain), (test_injector_init), (probe_cb), (do_perfect_stream_test), (GST_START_TEST), (audiorate_suite): More tests for audiorate: inject buffers to check behaviour when buffers overlap. 2006-10-21 16:39:54 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add some basic unit tests for audiorate. Disabled at the moment since it doesn't pass yet (see bug #363... Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/audiorate.c: (probe_cb), (got_buf), (do_perfect_stream_test), (GST_START_TEST), (audiorate_suite): Add some basic unit tests for audiorate. Disabled at the moment since it doesn't pass yet (see bug #363119). 2006-10-20 17:02:19 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Add missing closing tags for markup and fix broken markup, otherwise pango won't render a... Original commit message from CVS: * gst/subparse/gstsubparse.c: (subrip_fix_up_markup), (parse_subrip), (handle_buffer): Add missing closing tags for markup and fix broken markup, otherwise pango won't render anything (fixes #357531). Also, make sure the text we send out is always NUL-terminated (better safe than sorry etc.). * tests/check/elements/subparse.c: (test_srt_do_test), (test_srt): Some more tests for .srt incl. tests for the above stuff. 2006-10-20 13:56:55 +0000 Stefan Kost <ensonic@users.sf.net> sys/: Try to redraw borders only when needed. Apparently this consumes resources on small devices... :-O (#363607) Original commit message from CVS: 2006-10-20 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put): Patch by: Stefan Kost <ensonic@users.sf.net> Try to redraw borders only when needed. Apparently this consumes resources on small devices... :-O (#363607) 2006-10-20 13:54:19 +0000 Michael Smith <msmith@xiph.org> gst/tcp/gstmultifdsink.c: If caps change, then update the client's idea of the caps so that we don't end up re-sendin... Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_client_queue_buffer): If caps change, then update the client's idea of the caps so that we don't end up re-sending streamheaders for every single buffer after the caps change. 2006-10-20 12:31:02 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggparse.c: Set caps on pushed buffers; fix up refcounting of caps objects. Original commit message from CVS: * ext/ogg/gstoggparse.c: (gst_ogg_parse_dispose), (gst_ogg_parse_append_header), (gst_ogg_parse_chain): Set caps on pushed buffers; fix up refcounting of caps objects. 2006-10-19 14:09:30 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Typefind mmsh header data packet to application/x-mmsh (#362625). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mmsh_type_find), (plugin_init): Typefind mmsh header data packet to application/x-mmsh (#362625). 2006-10-19 09:17:48 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add very simple unit test for subparse. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/subparse.c: (buffer_from_static_string), (setup_subparse), (teardown_subparse), (test_srt_do_test), (GST_START_TEST), (subparse_suite): Add very simple unit test for subparse. 2006-10-19 09:00:21 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Strip trailing newlines from subtitle text output. Original commit message from CVS: * gst/subparse/gstsubparse.c: (strip_trailing_newlines), (parse_subrip): Strip trailing newlines from subtitle text output. 2006-10-18 18:40:12 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Fix memleak; clear subparse->textbuf n state change function. Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_sub_parse_dispose), (gst_sub_parse_change_state): Fix memleak; clear subparse->textbuf n state change function. 2006-10-18 15:13:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Don't require subrip (.srt) files to start with a chunk number of 1. Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect): Don't require subrip (.srt) files to start with a chunk number of 1. 2006-10-18 13:42:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.*: Extract rate from the NEWSEGMENT event. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_event), (gst_base_audio_sink_render): * gst-libs/gst/audio/gstbaseaudiosink.h: Extract rate from the NEWSEGMENT event. Use commit_full to also take rate adjustment into account when writing samples to the ringbuffer. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit_full), (gst_ring_buffer_commit), (gst_ring_buffer_read): * gst-libs/gst/audio/gstringbuffer.h: Added _commit_full() to also take rate into account. Use simple interpolation algorithm to resample audio. API: gst_ring_buffer_commit_full() * tests/examples/seek/scrubby.c: (speed_cb), (do_seek): * tests/examples/seek/seek.c: (segment_done): Don't try to seek with 0.0 rate, just pause instead. Remove bogus debug line. 2006-10-18 12:57:54 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Catch async errors when starting up the subtitle bin, so we can stop waiting and conti... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (subbin_startup_sync_msg), (setup_source): Catch async errors when starting up the subtitle bin, so we can stop waiting and continue with the main film instead of hanging forever. Fixes #339366. * tests/check/elements/playbin.c: (playbin_suite): Enable unit test for the above. 2006-10-18 09:53:03 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Some small and basic unit tests for playbin; not very useful yet, but at least a start. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/playbin.c: (GST_START_TEST), (gst_red_video_src_uri_get_type), (gst_red_video_src_uri_get_protocols), (gst_red_video_src_uri_get_uri), (gst_red_video_src_uri_set_uri), (gst_red_video_src_uri_handler_init), (gst_red_video_src_init_type), (gst_red_video_src_base_init), (gst_red_video_src_create), (gst_red_video_src_class_init), (gst_red_video_src_init), (plugin_init), (playbin_suite): Some small and basic unit tests for playbin; not very useful yet, but at least a start. 2006-10-18 09:46:35 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: The old pad activation spiel. Original commit message from CVS: * gst/playback/gstplaybin.c: (setup_sinks): The old pad activation spiel. 2006-10-18 09:31:49 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Don't hang forever if the subbin already fails to start up in the state change to PAUS... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_source): Don't hang forever if the subbin already fails to start up in the state change to PAUSED (#339366). 2006-10-17 17:17:16 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/tuner.c: Fix some function guards, add some more function guards. Original commit message from CVS: * gst-libs/gst/interfaces/tuner.c: (gst_tuner_list_channels), (gst_tuner_set_channel), (gst_tuner_get_channel), (gst_tuner_list_norms), (gst_tuner_set_norm), (gst_tuner_get_norm), (gst_tuner_set_frequency), (gst_tuner_get_frequency), (gst_tuner_signal_strength), (gst_tuner_find_norm_by_name), (gst_tuner_find_channel_by_name): Fix some function guards, add some more function guards. 2006-10-17 11:34:32 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: Don't return a pad from get_our_ghost_pad unless it is actually the one we want. Original commit message from CVS: * gst/playback/gstdecodebin.c: (get_our_ghost_pad), (remove_element_chain): Don't return a pad from get_our_ghost_pad unless it is actually the one we want. Change a cast in remove_element_chain slightly. 2006-10-13 15:20:29 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Segment seeking needs to use the rate and set stop to -1. Original commit message from CVS: 2006-10-13 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (do_seek), (start_seek), (rate_spinbutton_changed_cb), (segment_done), (msg_state_changed): Segment seeking needs to use the rate and set stop to -1. 2006-10-13 14:15:42 +0000 Ville Syrjala <ville.syrjala@movial.fi> gst-libs/gst/audio/gstbaseaudiosink.c: Don't crash when ringbuffer is not yet created. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_setcaps): Don't crash when ringbuffer is not yet created. Patch by: Ville Syrjala <ville dot syrjala at movial dot fi> Fixes #361634. * gst/playback/gstplaybasebin.c: (new_decoded_pad_full): * gst/playback/gststreamselector.c: (gst_stream_selector_request_new_pad): Activate pads befre adding them to running elements. 2006-10-13 11:25:10 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Stop the scale updater when we start grabing the slider. Don't wait for the pipeline to b... Original commit message from CVS: 2006-10-13 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (do_seek), (start_seek), (rate_spinbutton_changed_cb), (msg_state_changed): Stop the scale updater when we start grabing the slider. Don't wait for the pipeline to be PAUSED. 2006-10-13 08:57:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/mixer.c: Guard mixer interface functions against bogus arguments. Original commit message from CVS: * gst-libs/gst/interfaces/mixer.c: (gst_mixer_list_tracks), (gst_mixer_set_volume), (gst_mixer_get_volume), (gst_mixer_set_mute), (gst_mixer_set_option), (gst_mixer_get_option), (gst_mixer_mute_toggled), (gst_mixer_record_toggled), (gst_mixer_volume_changed), (gst_mixer_option_changed): Guard mixer interface functions against bogus arguments. 2006-10-12 19:39:07 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: Use state-changed messages to trigger start/stop of scale update timer. Indeed the scale ... Original commit message from CVS: 2006-10-12 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (do_seek), (start_seek), (stop_seek), (play_cb), (pause_cb), (stop_cb), (rate_spinbutton_changed_cb), (msg_state_changed), (main): Use state-changed messages to trigger start/stop of scale update timer. Indeed the scale slider was jumping here and there because the update timer was activated before seek completed. This fixes instant applying of rate changes by pressing the spinbutton like a crazy man ! 2006-10-12 19:09:06 +0000 Sebastien Cote <sebas642@yahoo.ca> gst-libs/gst/rtp/gstbasertppayload.c: Fix two small memory leaks (#361456). Original commit message from CVS: Patch by: Sebastien Cote <sebas642 at yahoo.ca> * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_init), (gst_basertppayload_finalize): Fix two small memory leaks (#361456). 2006-10-10 18:56:01 +0000 Julien Moutte <julien@moutte.net> tests/examples/seek/seek.c: When changing spinbutton we try to change the rate on the fly. Original commit message from CVS: 2006-10-10 Julien MOUTTE <julien@moutte.net> * tests/examples/seek/seek.c: (do_seek), (rate_spinbutton_changed_cb): When changing spinbutton we try to change the rate on the fly. 2006-10-10 16:50:06 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/: Add WMS caps. Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Add WMS caps. 2006-10-10 12:49:03 +0000 Josep Torre Valles <josep@fluendo.com> ext/gnomevfs/: Fix URI interface implementation return type. Original commit message from CVS: 2006-10-10 Zaheer Abbas Merali <zaheerabbas at merali dot org> Patch by: Josep Torre Valles <josep@fluendo.com> * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: Fix URI interface implementation return type. * ext/pango/gsttextoverlay.c: (gst_text_overlay_set_property): Fix what looks like a copy/paste issue when assigning values. * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_get_type): Cast to prevent Forte warnings. * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): Fix URI interface implementation return type. gst_pad_query_position requires a signed integer pointer as 3rd parameter, GstClockTime is unsigned. * gst/audioconvert/audioconvert.c: Fix integer overflow when treated as signed. * gst/audioresample/resample.c: (resample_add_input_data): Cast to prevent warnings on Forte. * gst/ffmpegcolorspace/imgconvert.c: (build_rgb_palette): Fix integer overflow when treated as signed. * gst/ffmpegcolorspace/imgconvert_template.h: Fix integer overflow when treated as signed. RGBA_OUT shifts bits. * gst/playback/gstdecodebin.c: (queue_filled_cb), (cleanup_decodebin): Who initialises a guint to -1! Cast function pointers to prevent warnings on Forte. * gst/playback/gstplaybasebin.c: (queue_deadlock_check), (queue_threshold_reached): Cast function pointers correctly to prevent warnings on Forte. * gst/playback/gststreaminfo.c: (gst_stream_info_dispose): Cast function pointers correctly to prevent warnings on Forte. * gst/subparse/gstssaparse.c: (gst_ssa_parse_setcaps): Obvious change to unsigned, 0xEF > max signed char. * gst/tcp/gstmultifdsink.c: (get_buffers_max), (count_burst_unit): GstClockTime is unsigned, initialise correctly. * gst/tcp/gsttcp.c: (gst_tcp_socket_write): Cast so pointer arithemetic doesn't cause warnings on Forte. * gst/videorate/gstvideorate.c: Use correct return value. * tests/examples/seek/scrubby.c: GstClockTime is unsigned, initialise correctly. 2006-10-10 11:20:03 +0000 Ferenc Gerlits <fgerlits@gmail.com> gst/typefind/gsttypefindfunctions.c: Recognise XML files and XML-like files shorter than 256 bytes as well (fixes #35... Original commit message from CVS: Patch by: Ferenc Gerlits <fgerlits at gmail com> * gst/typefind/gsttypefindfunctions.c: Recognise XML files and XML-like files shorter than 256 bytes as well (fixes #359237). 2006-10-09 15:01:30 +0000 Edgard Lima <edgard.lima@indt.org.br> * ChangeLog: * common: * gst/typefind/gsttypefindfunctions.c: Added typefind functions to video/x-nuv media. Original commit message from CVS: Added typefind functions to video/x-nuv media. 2006-10-08 16:59:31 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/xoverlay.c: Some more guards against invalid input. Original commit message from CVS: * gst-libs/gst/interfaces/xoverlay.c: (gst_x_overlay_set_xwindow_id), (gst_x_overlay_expose): Some more guards against invalid input. 2006-10-07 18:35:39 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Useless goto. Original commit message from CVS: 2006-10-07 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_text_event): Useless goto. * tests/examples/seek/seek.c: (do_seek), (rate_spinbutton_changed_cb), (main): Add a rate spinbutton in seek example to experiment with rates != 1.0 (reverse playback !) 2006-10-06 19:20:53 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/interfaces/xoverlay.c: Unref message in doc-example (spotted by Robert McQueen) Original commit message from CVS: * gst-libs/gst/interfaces/xoverlay.c: Unref message in doc-example (spotted by Robert McQueen) 2006-10-06 17:04:05 +0000 Wim Taymans <wim.taymans@gmail.com> gst/typefind/gsttypefindfunctions.c: printf fix. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (mpeg1_parse_header), (mpeg1_sys_type_find): printf fix. 2006-10-06 14:37:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/: Activate dynamic pads before adding them to the element. Original commit message from CVS: * gst/playback/gstdecodebin.c: (gst_decode_bin_init), (close_pad_link): * gst/playback/gstplaybasebin.c: (new_decoded_pad_full): Activate dynamic pads before adding them to the element. 2006-10-06 14:04:53 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/floatcast/floatcast.h: Fix obviously-bogus macros; use the correct types. Original commit message from CVS: * gst-libs/gst/floatcast/floatcast.h: Fix obviously-bogus macros; use the correct types. 2006-10-06 13:34:46 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Also call parent state change function to activate pads. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_change_state): Also call parent state change function to activate pads. * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (mpeg1_parse_header), (mpeg1_sys_type_find): Add some more debug info in mpeg typefinding. 2006-10-06 12:57:10 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoradec.c: Zero byte theora packets are valid and well-defined; don't warn on them. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_chain): Zero byte theora packets are valid and well-defined; don't warn on them. 2006-10-06 10:04:14 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/gstmultifdsink.c: API: add dropped_buffers to the get-stats GValueArray Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_get_stats), (find_limits), (gst_multi_fd_sink_queue_buffer): API: add dropped_buffers to the get-stats GValueArray 2006-10-05 15:55:21 +0000 Tim-Philipp Müller <tim@centricular.net> Printf format fixes. Original commit message from CVS: * ext/alsa/gstalsadeviceprobe.c: (gst_alsa_device_property_probe_get_values): * ext/alsa/gstalsasink.c: (set_hwparams): * ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_elem_pad), (gst_ogg_chain_new_stream), (gst_ogg_demux_read_chain): * ext/ogg/gstoggmux.c: (gst_ogg_mux_send_headers), (gst_ogg_mux_process_best_pad): * ext/ogg/gstoggparse.c: (gst_ogg_parse_new_stream), (gst_ogg_parse_chain): * ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header): * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_setup), (gst_vorbis_enc_buffer_check_discontinuous): * ext/vorbis/vorbisparse.c: (vorbis_parse_src_query): * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_handle_track_seek): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_push_full): * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push): * gst/audioresample/resample.c: (resample_input_pushthrough): * gst/playback/gstplaybasebin.c: (queue_out_of_data): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_clients): * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (wavpack_type_find): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): * tests/check/elements/volume.c: (GST_START_TEST): Printf format fixes. 2006-10-04 13:18:57 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/gsttcp.c: Fix a simple mistake (see the docs) Original commit message from CVS: * gst/tcp/gsttcp.c: (gst_tcp_gdp_read_caps): Fix a simple mistake (see the docs) Fixes #359580 2006-10-04 13:15:36 +0000 Thomas Vander Stichele <thomas@apestaart.org> * win32/common/config.h: bump version Original commit message from CVS: bump version 2006-10-03 12:11:45 +0000 Tim-Philipp Müller <tim@centricular.net> docs/plugins/: Add vorbistag element to docs; update version numbers to 0.10.10.1. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Add vorbistag element to docs; update version numbers to 0.10.10.1. 2006-10-03 11:51:48 +0000 James Doc Livingston <doclivingston@gmail.com> ext/vorbis/: Add new vorbistag element which derives from vorbisparse and is essentially the same as well, only that ... Original commit message from CVS: Patch by: James "Doc" Livingston <doclivingston at gmail com> * ext/vorbis/Makefile.am: * ext/vorbis/vorbis.c: (plugin_init): * ext/vorbis/vorbisparse.c: (gst_vorbis_parse_class_init), (vorbis_parse_parse_packet), (vorbis_parse_chain): * ext/vorbis/vorbisparse.h: * ext/vorbis/vorbistag.c: (gst_vorbis_tag_base_init), (gst_vorbis_tag_class_init), (gst_vorbis_tag_init), (gst_vorbis_tag_parse_packet): * ext/vorbis/vorbistag.h: Add new vorbistag element which derives from vorbisparse and is essentially the same as well, only that it implements the GstTagSetter interface and can modify the stream's vorbiscomment on the fly (#335635). * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/vorbistag.c: (setup_vorbistag), (cleanup_vorbistag), (buffer_probe), (start_pipeline), (get_buffer), (stop_pipeline), (_create_codebook_header_buffer), (_create_audio_buffer), (GST_START_TEST), (vorbistag_suite): Add unit test for new vorbistag element. 2006-10-03 10:36:38 +0000 Tim-Philipp Müller <tim@centricular.net> ext/vorbis/vorbisparse.c: Set BOS flag in packet structure to fix 'jump depends on unitialized value' errors in valgr... Original commit message from CVS: * ext/vorbis/vorbisparse.c: (gst_vorbis_parse_init), (vorbis_parse_push_headers), (vorbis_parse_chain): Set BOS flag in packet structure to fix 'jump depends on unitialized value' errors in valgrind; various minor clean-ups. 2006-09-30 15:30:07 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: Fix typo in a debug statement. Original commit message from CVS: * gst/playback/gstdecodebin.c: (close_pad_link): Fix typo in a debug statement. * gst/playback/gstplaybasebin.c: (probe_triggered), (new_decoded_pad_full), (new_decoded_pad), (subs_new_decoded_pad), (gen_source_element), (source_new_pad), (analyse_source), (setup_source): When handling no_more_pads in new_decoded_pad, make sure to treat subtitle pads correctly. Fixes playback with subtitle files. Move a recurring message to LOG level. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): The maximum value for the Xv colorkey on this Radeon is 0xFFFFFFFF, which ends up as -1 when cast to an int. Make the logic handle the max value as an unsigned mask and only change the colorkey when it's a value we recognise. 2006-09-30 00:14:20 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Removed empty * between paragraphs Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: Removed empty * between paragraphs 2006-09-29 23:50:53 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/: Moved some documentation into .c file Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/README: Moved some documentation into .c file 2006-09-29 17:35:01 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Fix compilation. Original commit message from CVS: * gst/playback/gstdecodebin.c: (no_more_pads): Fix compilation. 2006-09-29 16:04:05 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Remove g_print Original commit message from CVS: * gst/playback/gstdecodebin.c: (new_caps): Remove g_print * gst/playback/gstplaybin.c: Add some docs. 2006-09-29 15:16:32 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Re-enable cddabasesrc test to see if it works again now. Original commit message from CVS: * tests/check/Makefile.am: Re-enable cddabasesrc test to see if it works again now. 2006-09-29 13:46:45 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Handle invalid URIs a bit more gracefully. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_subtitle), (gen_source_element): Handle invalid URIs a bit more gracefully. 2006-09-29 12:54:28 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/oggmux.c: Remove obsolete comment. Original commit message from CVS: * tests/check/pipelines/oggmux.c: Remove obsolete comment. 2006-09-29 10:43:05 +0000 James Doc Livingston <doclivingston@gmail.com> ext/ogg/gstoggmux.c: Commit patch from James "Doc" Livingston, adds proper EOS handling in oggmux. GStreamer can, for... Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_request_new_pad), (gst_ogg_mux_release_pad), (gst_ogg_mux_push_buffer), (gst_ogg_mux_compare_pads), (gst_ogg_mux_queue_pads), (gst_ogg_mux_send_headers), (gst_ogg_mux_process_best_pad), (gst_ogg_mux_collected): Commit patch from James "Doc" Livingston, adds proper EOS handling in oggmux. GStreamer can, for the first time ever, create a valid Ogg file! Yay! * tests/check/pipelines/oggmux.c: (check_chain_final_state), (oggmux_suite): Reenable tests now that they pass. 2006-09-29 08:20:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstmultifdsink.c: Stop reading commands when EOF (we read 0) as well. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_clients): Stop reading commands when EOF (we read 0) as well. 2006-09-28 15:29:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Implement delayed caps linking needed for element with a lot of different caps on the sr... Original commit message from CVS: * gst/playback/gstdecodebin.c: (dynamic_create), (dynamic_free), (close_pad_link), (dynamic_remove), (no_more_pads), (new_caps), (find_dynamic), (unlinked), (close_link): Implement delayed caps linking needed for element with a lot of different caps on the src pads that get fixed at runtime. Improve management of dynamic elements. * gst/playback/gstplaybasebin.c: (gst_play_base_bin_init), (group_destroy), (group_commit), (check_queue), (queue_overrun), (gen_preroll_element), (remove_groups), (unknown_type), (add_element_stream), (no_more_pads_full), (no_more_pads), (sub_no_more_pads), (source_no_more_pads), (preroll_unlinked), (new_decoded_pad), (setup_subtitle), (array_has_value), (gen_source_element), (source_new_pad), (has_all_raw_caps), (analyse_source), (remove_decoders), (make_decoder), (remove_source), (setup_source), (finish_source), (prepare_output), (gst_play_base_bin_change_state): * gst/playback/gstplaybasebin.h: Use more _CAST instead of full type checking casts. Small cleanups, plug some leaks. Handle dynamic sources. Add some helper functions to create lists of strings used for blacklisting and other stuff. Refactor some code dealing with analysing the source. Re-enable sources without pads (like cd:// or other selfcontained elements). 2006-09-28 15:08:15 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: When we have a timestamp, we can still perform clipping. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): When we have a timestamp, we can still perform clipping. When we have no clock, we must play the sample ASAP. 2006-09-28 11:46:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiorate/gstaudiorate.c: Set caps on outgoing buffers. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain): Set caps on outgoing buffers. * gst/videorate/gstvideorate.c: (gst_video_rate_flush_prev), (gst_video_rate_event), (gst_video_rate_chain): * gst/videorate/gstvideorate.h: Fix videorate some more. Fixes #357977 2006-09-28 11:34:05 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/adder.c: Don't set timeout to 6 seconds when we're running in valgrind ... (and how is 6 seconds... Original commit message from CVS: * tests/check/elements/adder.c: (adder_suite): Don't set timeout to 6 seconds when we're running in valgrind ... (and how is 6 seconds longer than the default anyway?) 2006-09-28 10:49:56 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiorate/gstaudiorate.c: Keep sink and src segment to keep track of time and support more input formats. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_reset), (gst_audio_rate_sink_event), (gst_audio_rate_convert), (gst_audio_rate_convert_segments), (gst_audio_rate_chain): Keep sink and src segment to keep track of time and support more input formats. Fix bogus next_offset and run_time calculation, don't understand how this could have worked before. Fixes #357976. Remove some unneeded vars. 2006-09-28 09:41:20 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Only remove visualisation from visbin if there is a visbin (or: don't throw warnings when ... Original commit message from CVS: * gst/playback/gstplaybin.c: (remove_sinks): Only remove visualisation from visbin if there is a visbin (or: don't throw warnings when closing totem without playing a file). 2006-09-27 13:52:14 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Add some more info in a WARNING. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): Add some more info in a WARNING. * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Handle PAUSE in create function, use new -core addition to wait for playing. Fixes pausing and resuming capture from an audiosrc. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit), (gst_ring_buffer_read): Constify some more. Caller supports interrupted reads now. 2006-09-27 13:29:49 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: add new header file to spec Original commit message from CVS: add new header file to spec 2006-09-27 12:55:45 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Another attempt to make the gen64 buildbot happy. Original commit message from CVS: * tests/check/Makefile.am: Another attempt to make the gen64 buildbot happy. 2006-09-27 11:58:17 +0000 Jonathan Matthew <jonathan@kaolin.wh9.net> ext/libvisual/visual.c: Libvisual plugin was not passing audio data to libvisual 0.4.0 correctly. Fixes #357800 Original commit message from CVS: Patch by: Jonathan Matthew <jonathan@kaolin.wh9.net> * ext/libvisual/visual.c: (gst_visual_clear_actors), (gst_visual_chain), (gst_visual_change_state): Libvisual plugin was not passing audio data to libvisual 0.4.0 correctly. Fixes #357800 2006-09-27 11:31:43 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/simple-launch-lines.c: Add timeout to _get_state() so we see which pipeline it is that causes t... Original commit message from CVS: * tests/check/pipelines/simple-launch-lines.c: (run_pipeline): Add timeout to _get_state() so we see which pipeline it is that causes trouble on the gen64 build bot. 2006-09-27 11:06:54 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: the source pad always uses fixed caps. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_init), (gst_base_rtp_depayload_push_full), (gst_base_rtp_depayload_push_ts), (gst_base_rtp_depayload_process), (gst_base_rtp_depayload_set_gst_timestamp): the source pad always uses fixed caps. 2006-09-27 11:05:08 +0000 Wim Taymans <wim.taymans@gmail.com> Added docs for the audio libs. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/gstaudioclock.c: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_init): * gst-libs/gst/audio/gstbaseaudiosrc.h: * gst-libs/gst/audio/gstringbuffer.h: Added docs for the audio libs. 2006-09-27 10:59:24 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Temporarily disable test that fails on the bots for unknown reasons. Original commit message from CVS: * tests/check/Makefile.am: Temporarily disable test that fails on the bots for unknown reasons. 2006-09-27 00:13:29 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpaudiopayload.*: Moved AudioCodecType into priv Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: Moved AudioCodecType into priv Renamed all gst_basertpaudiopayload to gst_base_rtp_audio_payload prefixes 2006-09-25 15:47:25 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Cleanups and small leak fixes. Original commit message from CVS: * gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter), (add_fakesink), (remove_fakesink), (pad_probe), (close_pad_link), (is_demuxer_element), (try_to_link_1), (get_our_ghost_pad), (new_pad): Cleanups and small leak fixes. Added Depayloaders to valid list of autopluggable elements. 2006-09-25 13:24:59 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin.c: Detect NO_PREROLL state change returns and disable clock distribution to the sinks so that... Original commit message from CVS: * gst/playback/gstplaybin.c: (gst_play_bin_class_init), (gst_play_bin_vis_blocked), (gst_play_bin_set_property), (gen_video_element), (gen_text_element), (gen_audio_element), (gen_vis_element), (remove_sinks), (add_sink), (setup_sinks), (gst_play_bin_set_clock_func), (gst_play_bin_change_state): Detect NO_PREROLL state change returns and disable clock distribution to the sinks so that sync is disabled. Avoid some type checking and do simple casts instead. Small cleanups, fix some FIXMEs. Be more robust when linking user specified elements, catch an report errors. Fixes #357404. Fix some leaks in the error paths. 2006-09-25 12:55:04 +0000 Stefan Kost <ensonic@users.sourceforge.net> * ChangeLog: ChangeLog surgery for missing bug-number Original commit message from CVS: ChangeLog surgery for missing bug-number 2006-09-25 11:28:15 +0000 Peter Kjellerstedt <pkj@axis.com> gst/playback/test.c: Fix compilation with uClibc and -Werror (#357591). Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst/playback/test.c: Fix compilation with uClibc and -Werror (#357591). 2006-09-25 10:21:31 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstvorbistag.c: Parse dates that are followed by a time as well (#357532). Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add): Parse dates that are followed by a time as well (#357532). * tests/check/libs/tag.c: (test_vorbis_tags): Add unit test for this. 2006-09-23 15:24:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst/: A few array const-ifications. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (make_lossless_changes), (gst_audio_convert_transform_caps): * gst/videotestsrc/videotestsrc.c: (gst_video_test_src_unicolor): * gst/videotestsrc/videotestsrc.h: A few array const-ifications. 2006-09-23 15:02:51 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: See if this makes the build bots happy. Original commit message from CVS: * tests/check/Makefile.am: See if this makes the build bots happy. * tests/check/libs/cddabasesrc.c: UTF8-ise my name. 2006-09-23 14:30:53 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/samiparse.c: More case-insensitivity for certain tags; recognise entities with decimal codes as special ... Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian dot net> * gst/subparse/samiparse.c: (handle_start_font), (fix_invalid_entities): More case-insensitivity for certain tags; recognise entities with decimal codes as special entities as well (#357330). 2006-09-23 13:32:07 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/Makefile.am: Need to build tag directory before cdda. Original commit message from CVS: * gst-libs/gst/Makefile.am: Need to build tag directory before cdda. 2006-09-23 13:21:07 +0000 Tim-Philipp Müller <tim@centricular.net> Move GST_TAG_CDDA_* tags into libgsttag and make libgstcddabasesrc depend on libgsttag. This is required so we can ex... Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_base_init): * gst-libs/gst/cdda/gstcddabasesrc.h: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: (gst_tag_register_tags_internal), (gst_tag_register_musicbrainz_tags): Move GST_TAG_CDDA_* tags into libgsttag and make libgstcddabasesrc depend on libgsttag. This is required so we can extract/read tags like DISCID without depending on libgstcddabasesrc (which used to register them). * gst-libs/gst/tag/gstvorbistag.c: Add vorbiscomment mapping for CDDB_DISCID and MUSICBRAINZ_DISCID tags (also see #347848). * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_metadata_set1): Log vorbis comments we are actually writing. Const-ify array. 2006-09-23 08:53:30 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Improve buffering a bit by avoiding a deadlock because we cannot assume the underrun i... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gen_preroll_element): Improve buffering a bit by avoiding a deadlock because we cannot assume the underrun is always called. 2006-09-23 08:51:14 +0000 Young-Ho Cha <ganadist@chollian.net> gst-libs/gst/riff/: Added MPEG-4 AAC and id and caps. Fixes #357289 Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian dot net> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Added MPEG-4 AAC and id and caps. Fixes #357289 Added WMA9 Lossless id. 2006-09-22 14:50:01 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: Fix misleading docs addition. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: Fix misleading docs addition. * tests/check/elements/videotestsrc.c: (check_rgb_buf): Get rid of compiler warning the right way. 2006-09-22 14:13:34 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.*: Small cleanups. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_finalize), (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_push_full), (gst_base_rtp_depayload_push_ts), (gst_base_rtp_depayload_push), (gst_base_rtp_depayload_process), (gst_base_rtp_depayload_set_gst_timestamp), (gst_base_rtp_depayload_queue_release): * gst-libs/gst/rtp/gstbasertpdepayload.h: Small cleanups. Fix some leaks. Refactored the process method and added methods to push from the process vmethod. Use _scale functions. API: gst_base_rtp_depayload_push_ts API: gst_base_rtp_depayload_push * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push): timestamps are uint. 2006-09-22 11:59:00 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/interfaces/xoverlay.c: Remove unused statement from doc example. Original commit message from CVS: * gst-libs/gst/interfaces/xoverlay.c: Remove unused statement from doc example. 2006-09-22 09:52:21 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/videorate/gstvideorate.c: update docs Original commit message from CVS: update docs 2006-09-21 13:49:47 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/interfaces/videoorientation.c: Add since tags to new API docs, ChangeLog surgery (forgot API keyword in ... Original commit message from CVS: * gst-libs/gst/interfaces/videoorientation.c: (gst_video_orientation_iface_init), (gst_video_orientation_get_hflip), (gst_video_orientation_get_vflip), (gst_video_orientation_get_hcenter), (gst_video_orientation_get_vcenter), (gst_video_orientation_set_hflip), (gst_video_orientation_set_vflip), (gst_video_orientation_set_hcenter), (gst_video_orientation_set_vcenter): Add since tags to new API docs, ChangeLog surgery (forgot API keyword in ChangeLog) 2006-09-21 09:27:47 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: but disable for now since it doesn't pass (something wrong with Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/ffmpegcolorspace.c: (rgb_format_to_caps), (create_rgb_conversions), (rgb_conversion_free), (right_shift_colour), (fix_expected_colour), (check_rgb_buf), (got_buf_cb), (GST_START_TEST), (ffmpegcolorspace_suite): Add unit test for ffmpegcolorspace (RGB <=> RGB only so far), but disable for now since it doesn't pass (something wrong with RGBA somewhere). 2006-09-21 07:01:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Refactor handling of overrun detection. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (group_commit), (queue_deadlock_check), (queue_overrun), (queue_threshold_reached), (queue_out_of_data), (gen_preroll_element), (preroll_remove_overrun), (probe_triggered): Refactor handling of overrun detection. Separate handling of group completion and deadlock detection when doing network buffering. This should fix some deadlocks that were not detected because the group was completed. Add more comments, improve debugging. 2006-09-21 05:31:00 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/: Some more compilation fixes. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/libs/audio.c: Some more compilation fixes. 2006-09-21 05:12:18 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: Early morning compilation fix. Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_samples_done), (gst_ring_buffer_commit), (gst_ring_buffer_read): Early morning compilation fix. 2006-09-20 18:09:43 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: bump nano Original commit message from CVS: bump nano 2006-09-20 17:04:57 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/: Fix some warnings. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/multifdsink.c: (GST_START_TEST): * tests/check/elements/videorate.c: (GST_START_TEST): * tests/check/libs/cddabasesrc.c: (GST_START_TEST): * tests/check/pipelines/oggmux.c: (eos_buffer_probe): Fix some warnings. 2006-09-20 10:59:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: change colorkey behaviour back according to #354773 comment 6/7 Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support), (gst_xvimagesink_get_times): change colorkey behaviour back according to #354773 comment 6/7 2006-09-20 10:42:34 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery: remove junk Original commit message from CVS: ChangeLog surgery: remove junk 2006-09-19 11:31:06 +0000 Michael Smith <msmith@xiph.org> gst/tcp/gstmultifdsink.*: Implement stubbed out properties unit-type, units-soft-max, units-max, to allow specifying ... Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_sync_method_get_type), (gst_multi_fd_sink_class_init), (get_buffers_max), (find_limits), (gst_multi_fd_sink_recover_client), (gst_multi_fd_sink_queue_buffer), (gst_multi_fd_sink_set_property), (gst_multi_fd_sink_get_property): * gst/tcp/gstmultifdsink.h: Implement stubbed out properties unit-type, units-soft-max, units-max, to allow specifying maximum sizes in units other than buffers. Fixes #355935 2006-09-19 10:23:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-media.c: Reorder the audio formats a bit for clarity. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Reorder the audio formats a bit for clarity. Detect and create caps for MSGSM and MSN (WAV49). Fixes #356596. * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_show_frame): Small cleanups, move error handling out of normal flow for clarity. 2006-09-18 15:59:39 +0000 Stefan Kost <ensonic@users.sourceforge.net> Add new interface to control video orientation (fixes #354908) Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs.types: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/videoorientation.c: (gst_video_orientation_get_type), (gst_video_orientation_iface_init), (gst_video_orientation_get_hflip), (gst_video_orientation_get_vflip), (gst_video_orientation_get_hcenter), (gst_video_orientation_get_vcenter), (gst_video_orientation_set_hflip), (gst_video_orientation_set_vflip), (gst_video_orientation_set_hcenter), (gst_video_orientation_set_vcenter): * gst-libs/gst/interfaces/videoorientation.h: Add new interface to control video orientation (fixes #354908) 2006-09-18 15:48:01 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/videotestsrc/gstvideotestsrc.c: Use G_UNLIKELY in _create and log one more detail. Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: Use G_UNLIKELY in _create and log one more detail. (gst_video_test_src_get_times), (gst_video_test_src_create): * sys/ximage/ximagesink.c: (gst_ximagesink_get_times): Use gst_util_uint64_scale_int in _get_times(). 2006-09-18 15:00:51 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support) Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support) Give better warning message (add object and detail). 2006-09-18 14:42:03 +0000 Stefan Kost <ensonic@users.sourceforge.net> sys/xvimage/xvimagesink.c: xvimage assumed that XV_COLORKEY can be set in RGB888 format (fixes #354773), use gst_util... Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support), (gst_xvimagesink_get_times): xvimage assumed that XV_COLORKEY can be set in RGB888 format (fixes #354773), use gst_util_uint64_scale_int in _get_times() 2006-09-18 14:21:45 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggmux.c: Timestamps are unsigned; comparision against GST_CLOCK_TIME_NONE was always true, leading to dro... Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_push_buffer): Timestamps are unsigned; comparision against GST_CLOCK_TIME_NONE was always true, leading to dropping all timestamps. 2006-09-18 11:40:14 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/libvisual/visual.c: update to work also with libvisual 0.4 API Original commit message from CVS: * ext/libvisual/visual.c: (gst_vis_src_negotiate), (gst_visual_chain), (gst_visual_change_state): update to work also with libvisual 0.4 API * tools/gst-launch-ext.1.in: * tools/gst-visualise.1.in: remove references to old man-pages * tests/examples/seek/seek.c: (main): add real meadi-buttons, add tool-tips for the seek-options, arrange seek options in a table 2006-09-18 10:57:28 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggmux.c: Don't generate out-of-order timestamps from oggmux, instead clamp output timestamps to be >= the... Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_clear), (gst_ogg_mux_push_buffer): Don't generate out-of-order timestamps from oggmux, instead clamp output timestamps to be >= the previously output ts. Fixes #355595 2006-09-18 10:18:22 +0000 Michael Smith <msmith@xiph.org> gst/tcp/gstmultifdsink.c: Updates, fixes, and typo corrections for multifdsink. No functional changes. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_sync_method_get_type), (gst_multi_fd_sink_class_init): Updates, fixes, and typo corrections for multifdsink. No functional changes. 2006-09-17 21:58:06 +0000 Michael Smith <msmith@xiph.org> gst/typefind/gsttypefindfunctions.c: Don't crash on truncated files - check that we got an 8 byte buffer before tryin... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (ogganx_type_find): Don't crash on truncated files - check that we got an 8 byte buffer before trying to memcmp it. 2006-09-17 20:32:09 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Make stream-switching appear instant to the application (ie. make sure that a g_object... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (get_active_source): Make stream-switching appear instant to the application (ie. make sure that a g_object_get on 'current-foo' returns the stream previously set with g_object_set(). Totem needs this to update stream-related meta-info (like audio-codec) correctly when switching streams. 2006-09-17 20:14:43 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsamixer.c: Try harder to guess which mixer track is the master mixer track (instead of just taking the ... Original commit message from CVS: * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_find_master_mixer), (gst_alsa_mixer_ensure_track_list): Try harder to guess which mixer track is the master mixer track (instead of just taking the first one that has a pvolume). Fixes #342228. 2006-09-17 11:24:21 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioconvert/gstaudioconvert.c: Get structure-name just once. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (set_structure_widths), (gst_audio_convert_transform_caps): Get structure-name just once. 2006-09-16 22:30:50 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/: Fix big batch of compiler warnings. Original commit message from CVS: * tests/check/elements/audioresample.c: (GST_START_TEST): * tests/check/elements/videotestsrc.c: (check_rgb_buf): * tests/check/elements/volume.c: (GST_START_TEST): * tests/check/elements/vorbisdec.c: (GST_START_TEST): * tests/check/pipelines/oggmux.c: (validate_ogg_page), (eos_watch), (test_pipeline), (GST_START_TEST): * tests/check/pipelines/theoraenc.c: (GST_START_TEST): * tests/check/pipelines/vorbisenc.c: (GST_START_TEST): Fix big batch of compiler warnings. 2006-09-16 21:54:48 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/gnomevfs/gstgnomevfssrc.c: Add docs about icydemux usage in connection with gnomevfssrc Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: Add docs about icydemux usage in connection with gnomevfssrc * ext/libvisual/visual.c: * ext/ogg/gstoggaviparse.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * gst-libs/gst/audio/gstaudiofiltertemplate.c: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosrc.c: * gst/audiorate/gstaudiorate.c: More G_OBJECT macro fixing. * gst/audiotestsrc/gstaudiotestsrc.h: Fix wrong info in header due to copy & paste 2006-09-15 14:53:44 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/: Do the delay calculation in the source/sink base classes as this is specific for the capture/pla... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_time), (gst_base_audio_sink_callback): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_get_time), (gst_base_audio_src_fixate), (gst_base_audio_src_get_times), (gst_base_audio_src_get_offset), (gst_base_audio_src_create), (gst_base_audio_src_change_state): Do the delay calculation in the source/sink base classes as this is specific for the capture/playback mode. Try to fixate a bit better, like round depth up to a multiple of 8 bigger than width. Handle underruns correctly by marking DISCONT on buffers and adjusting timestamps to handle the gap. Set offset/offset_end correctly on buffers. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_pause), (gst_ring_buffer_samples_done), (gst_ring_buffer_commit), (gst_ring_buffer_read): Remove resync and underrun recovery from the ringbuffer. Fix ringbuffer read code on under/overrun. 2006-09-15 11:17:02 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.*: Don't use a 0 low watermark when buffering, it is catching starvation way too late. In... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (gst_play_base_bin_init), (fill_buffer), (check_queue), (queue_threshold_reached), (gst_play_base_bin_set_property), (gst_play_base_bin_get_property): * gst/playback/gstplaybasebin.h: Don't use a 0 low watermark when buffering, it is catching starvation way too late. Instead, use a 3 second queue with 30 and 95 percent low/high watermarks. Added queue-min-threshold property to configure low watermark. Use new _buffering message API. Make queue_threshold variable big enough to store a uint64 time value. API: playbin::queue-min-threshold property. 2006-09-15 09:13:50 +0000 Wim Taymans <wim.taymans@gmail.com> configure.ac: We require 0.10.10.1 now because of _wait_preroll(). Original commit message from CVS: * configure.ac: We require 0.10.10.1 now because of _wait_preroll(). * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): Use gst_base_sink_wait_preroll(). 2006-09-15 09:09:00 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/: Use DEBUG_OBJECT more. Original commit message from CVS: * ext/alsa/gstalsasink.c: (xrun_recovery), (gst_alsasink_write): * ext/alsa/gstalsasrc.c: (xrun_recovery), (gst_alsasrc_read): Use DEBUG_OBJECT more. === release 0.10.10 === 2006-09-14 20:09:19 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/theora/theoraparse.c: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst/playback/gstplaybin.c: * tests/check/Makefile.am: * win32/common/config.h: releasing 0.10.10 Original commit message from CVS: releasing 0.10.10 2006-09-09 16:08:06 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: * win32/common/config.h: second prerelease Original commit message from CVS: second prerelease 2006-09-07 19:01:23 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: update bug in changelog Original commit message from CVS: update bug in changelog 2006-09-07 19:00:33 +0000 Michael Smith <msmith@fluendo.com> Fix implementation of sync-method 'next-keyframe' Original commit message from CVS: patch by: Michael Smith <msmith at fluendo dot com> * gst/tcp/gstmultifdsink.c: (is_sync_frame), (gst_multi_fd_sink_client_queue_buffer), (gst_multi_fd_sink_new_client): * tests/check/elements/multifdsink.c: (GST_START_TEST), (multifdsink_suite): Fix implementation of sync-method 'next-keyframe' 2006-09-07 15:00:08 +0000 Wim Taymans <wim@fluendo.com> ext/gnomevfs/gstgnomevfssrc.c: This patch removes the RANDOM flag that was incorrectly introduced with revision 1.91.... Original commit message from CVS: patch by: Wim Taymans <wim at fluendo dot com> * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_start): This patch removes the RANDOM flag that was incorrectly introduced with revision 1.91. Fixes #354590 2006-09-07 14:56:47 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: * win32/common/config.h: first prerelease Original commit message from CVS: first prerelease 2006-09-07 14:56:31 +0000 Thomas Vander Stichele <thomas@apestaart.org> * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: update po files Original commit message from CVS: update po files 2006-09-05 09:12:25 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Random variation in Makefile line to see if it makes the gen64-base-full bot any happier. Original commit message from CVS: * tests/check/Makefile.am: Random variation in Makefile line to see if it makes the gen64-base-full bot any happier. 2006-09-04 19:04:35 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/pipelines/oggmux.c: Disable test that fails at the moment (killed after timeout). Original commit message from CVS: * tests/check/pipelines/oggmux.c: (oggmux_suite): Disable test that fails at the moment (killed after timeout). 2006-09-04 18:19:06 +0000 James Livingston <doclivingston@gmail.com> tests/check/: Add simple unit test for oggmux from #337026 with checking for the Original commit message from CVS: Patch by: James Livingston <doclivingston at gmail.com> * tests/check/Makefile.am: * tests/check/pipelines/.cvsignore: * tests/check/pipelines/oggmux.c: (get_page_codec), (check_chain_final_state), (fail_if_audio), (validate_ogg_page), (eos_buffer_probe), (start_pipeline), (stop_pipeline), (eos_watch), (test_pipeline), (test_vorbis), (test_theora), (test_vorbis_theora), (test_theora_vorbis), (oggmux_suite): Add simple unit test for oggmux from #337026 with checking for the EOS flags disabled for the time being. 2006-09-04 09:13:01 +0000 Alessandro Dessina <alessandro@nnva.org> ext/ogg/gstoggmux.c: Add cmml caps to oggmux. Fixes #353912 Original commit message from CVS: patch by: Alessandro Dessina <alessandro nnva org> * ext/ogg/gstoggmux.c: Add cmml caps to oggmux. Fixes #353912 2006-09-02 13:20:59 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/videotestsrc.c: Returning a return value often helps. In this case, we don't need the return val... Original commit message from CVS: * tests/check/elements/videotestsrc.c: (check_rgb_buf): Returning a return value often helps. In this case, we don't need the return value anyway, so just get rid of it. Should make build bots much happier. 2006-09-02 12:59:48 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/videotestsrc.*: Add support for AYUV and the various RGBA formats. Initialise fields of paintinfo st... Original commit message from CVS: * gst/videotestsrc/videotestsrc.c: (paintinfo_find_by_structure), (paint_get_structure), (gst_video_test_src_get_size), (gst_video_test_src_smpte), (gst_video_test_src_snow), (gst_video_test_src_unicolor), (paint_setup_AYUV), (paint_hline_AYUV), (paint_setup_ARGB8888), (paint_setup_ABGR8888), (paint_setup_RGBA8888), (paint_setup_BGRA8888), (paint_hline_str4): * gst/videotestsrc/videotestsrc.h: Add support for AYUV and the various RGBA formats. Initialise fields of paintinfo structs allocated on the stack. * tests/check/elements/videotestsrc.c: (right_shift_colour), (fix_expected_colour), (check_rgb_buf), (got_buf_cb), (GST_START_TEST), (videotestsrc_suite): Add unit tests for videotestsrc's RGB output. 2006-09-01 16:12:35 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/: Add more uni-colour patterns ("white", "red", "green", and "blue"). Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_pattern_get_type), (gst_video_test_src_set_pattern): * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: (gst_video_test_src_unicolor), (gst_video_test_src_black), (gst_video_test_src_white), (gst_video_test_src_red), (gst_video_test_src_green), (gst_video_test_src_blue): * gst/videotestsrc/videotestsrc.h: Add more uni-colour patterns ("white", "red", "green", and "blue"). 2006-09-01 10:07:05 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/videotestsrc.c: Fix stride for YVYU, should be word-aligned (#353658). Original commit message from CVS: * gst/videotestsrc/videotestsrc.c: (paint_setup_YVYU): Fix stride for YVYU, should be word-aligned (#353658). 2006-08-31 14:37:33 +0000 Tim-Philipp Müller <tim@centricular.net> gst/adder/gstadder.c: Fix build. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_src_event): Fix build. 2006-08-31 12:39:17 +0000 Edward Hervey <bilboed@bilboed.com> gst/adder/gstadder.*: Remember the start position asked in the incoming seeks, so we can output GST_EVENT_NEW_SEGMENT... Original commit message from CVS: * gst/adder/gstadder.c: (forward_event_func), (gst_adder_src_event), (gst_adder_collected), (gst_adder_change_state): * gst/adder/gstadder.h: Remember the start position asked in the incoming seeks, so we can output GST_EVENT_NEW_SEGMENT with a correct position value (instead of assuming it will always be 0). 2006-08-31 12:31:00 +0000 Edward Hervey <bilboed@bilboed.com> ext/ogg/gstoggdemux.c: Send the GST_EVENT_NEW_SEGMENT from the streaming thread. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_init), (gst_ogg_demux_finalize), (gst_ogg_demux_perform_seek), (gst_ogg_demux_loop): Send the GST_EVENT_NEW_SEGMENT from the streaming thread. 2006-08-30 17:22:27 +0000 Tim-Philipp Müller <tim@centricular.net> gst/ffmpegcolorspace/gstffmpegcolorspace.c: Return FALSE instead of returning a random false unit size when the forma... Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_unit_size): Return FALSE instead of returning a random false unit size when the format isn't known/supported (even if this shouldn't happen under normal circumstances). 2006-08-29 15:23:46 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: Try harder to get the size from a uri by using _info_uri() when _info_from_handle() do... Original commit message from CVS: Patch by: Tim-Philipp Müller <tim at centricular dot net> * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_create), (gst_gnome_vfs_src_start): Try harder to get the size from a uri by using _info_uri() when _info_from_handle() does not give us enough info. Also follow symlinks when getting the size. Partially Fixes #332864. 2006-08-29 11:50:51 +0000 Viktor Peters <viktor.peters@gmail.com> ext/alsa/: Improve and fix mixer track handling, in particular better handling of alsa's pvolume/pswitch/cvolume/cswi... Original commit message from CVS: Patch by: Viktor Peters <viktor dot peters at gmail dot com> * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_ensure_track_list), (gst_alsa_mixer_update), (gst_alsa_mixer_get_volume), (gst_alsa_mixer_set_volume), (gst_alsa_mixer_set_mute), (gst_alsa_mixer_set_record): * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_update_alsa_capabilities), (alsa_track_has_cap), (gst_alsa_mixer_track_new), (gst_alsa_mixer_track_update): * ext/alsa/gstalsamixertrack.h: Improve and fix mixer track handling, in particular better handling of alsa's pvolume/pswitch/cvolume/cswitch capabilities; create separate track objects for tracks that have both capture and playback volume (and label them differently as well so they're not mistakenly assumed to be duplicates); classify mixer tracks that only affect the audible volume of something (rather than the capture volume) as playback tracks. Redefine/fix meaning of RECORD and MUTE flags for capture tracks to correspond to alsa-pswitch alsa-cswitch (following the meaning documented in the mixer interface header file); add support for alsa's exclusive cswitch groups; update/sync state/flags better if mixer settings are changed by another application. Fixes #336075. 2006-08-29 10:58:43 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Improve docs: add section about BUFFERING messages sent by playbin. Original commit message from CVS: * gst/playback/gstplaybin.c: Improve docs: add section about BUFFERING messages sent by playbin. 2006-08-29 10:51:12 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisenc.c: Ignore explicit DISCONT marked on buffers (which is often spurious, particularly when using m... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_push_buffer), (gst_vorbis_enc_buffer_check_discontinuous), (gst_vorbis_enc_chain): Ignore explicit DISCONT marked on buffers (which is often spurious, particularly when using multiple segments), in favour of solely using the timestamps/durations. 2006-08-29 10:32:34 +0000 Edward Hervey <bilboed@bilboed.com> gst/audiorate/gstaudiorate.c: Don't rely on incoming buffers offset anymore, since it is completely broken when using... Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain): Don't rely on incoming buffers offset anymore, since it is completely broken when using multiple segments. Instead convert the incoming buffers timestamp to running time, and then convert that value to the offsets. Also inform GstSegment of the last outputted stop position, which is needed if we received several segments with an unknown stop value. 2006-08-29 08:03:05 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/vorbis/vorbisenc.c: fix buffer unreffing on a header push failure Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_chain): fix buffer unreffing on a header push failure 2006-08-28 16:17:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiorate/gstaudiorate.c: Make the metadata of the buffer writable before changing its flags. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_sink_event), (gst_audio_rate_chain): Make the metadata of the buffer writable before changing its flags. 2006-08-28 16:09:57 +0000 Wim Taymans <wim.taymans@gmail.com> * ChangeLog: Fix changelog with bugzilla bug it fixed. Original commit message from CVS: Fix changelog with bugzilla bug it fixed. 2006-08-28 16:08:18 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audiorate/gstaudiorate.c: Fix audiorate some more. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_reset), (gst_audio_rate_setcaps), (gst_audio_rate_init), (gst_audio_rate_sink_event), (gst_audio_rate_src_event), (gst_audio_rate_chain), (gst_audio_rate_change_state): Fix audiorate some more. Reset and resync counters on flush and READY. Handle the DISCONT flag correctly. Use GstSegment to track position. Fail when not negotiated. 2006-08-25 16:48:28 +0000 Michael Smith <msmith@xiph.org> gst/tcp/gstmultifdsink.c: Fix spelling. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_render): Fix spelling. Remove accidently included debug line. 2006-08-25 16:39:38 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstmultifdsink.c: Small cleanups. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_render): Small cleanups. If a buffer is received with no caps, make the buffer metadata writable and set the caps, making sure that we don't screw up the refcounts. 2006-08-25 16:19:55 +0000 Michael Smith <msmith@xiph.org> gst/gdp/gstgdppay.c: Fix memory leaks and misleading debug messages, add a couple of comments. Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain): Fix memory leaks and misleading debug messages, add a couple of comments. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_get_stats), (gst_multi_fd_sink_render): Do not use gst_buffer_make_writable() in a basesink render method, as it may incorrectly unref the buffer. Instead, use convoluted dance to avoid copying the buffer except when we need to. 2006-08-25 09:54:56 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisenc.c: Allow very small discontinuities in the timestamps. These we can't do anything useful with an... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_buffer_check_discontinuous): Allow very small discontinuities in the timestamps. These we can't do anything useful with anyway (because vorbis's timestamps have only sample granularity), and are commonly produced by elements with minor bugs. Allow up to 1/2 a sample out. Fixes #351742. 2006-08-24 11:18:56 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add a checkbox to enable play scrubbing. Makes it possible to disable normal scrubbing. Original commit message from CVS: * tests/examples/seek/seek.c: (seek_cb), (start_seek), (stop_seek), (play_scrub_toggle_cb), (main): Add a checkbox to enable play scrubbing. Makes it possible to disable normal scrubbing. 2006-08-23 19:37:50 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/.cvsignore: make buildbot happy Original commit message from CVS: * tests/check/elements/.cvsignore: make buildbot happy 2006-08-23 16:43:03 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstogmparse.c: Refactor ogm parse, do better input checking, misc. clean-ups. Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init), (gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init), (gst_ogm_parse_class_init), (gst_ogm_parse_dispose), (gst_ogm_parse_init), (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_text_parse_init), (gst_ogm_parse_stream_header), (gst_ogm_parse_comment_packet), (gst_ogm_text_parse_strip_trailing_zeroes), (gst_ogm_parse_data_packet), (gst_ogm_parse_chain), (gst_ogm_parse_sink_event), (gst_ogm_parse_change_state): Refactor ogm parse, do better input checking, misc. clean-ups. Cache incoming events and push them once the source pad has been created. Don't pass unterminated strings to sscanf(). Strip trailing zeroes from subtitle text output, since they are not valid UTF-8. Don't push vorbiscomment packets on the subtitle text pad. Output perfect streams if possible. 2006-08-23 15:27:38 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/libs/cddabasesrc.c: Waits for tasks to settle down so that we clean up correctly for valgrind. Original commit message from CVS: * tests/check/libs/cddabasesrc.c: (GST_START_TEST): Waits for tasks to settle down so that we clean up correctly for valgrind. 2006-08-23 15:11:56 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/libs/tag.c: Unit test fixes: \377 is more likely to fit into 8 bits than \777; actually return return val... Original commit message from CVS: * tests/check/libs/tag.c: (GST_START_TEST), (taglists_are_equal): Unit test fixes: \377 is more likely to fit into 8 bits than \777; actually return return value in taglists_are_equal. 2006-08-23 12:14:20 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstogmparse.c: Fix crash due to broken bitstream parsing on x86-64: can't make any assumptions about sizeof(s... Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_parse_chain): Fix crash due to broken bitstream parsing on x86-64: can't make any assumptions about sizeof(struct) due to alignment/packing differences on different architectures. Fixes #351790. 2006-08-22 16:31:47 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/riff/riff-read.c: Protect public functions against bad input. Original commit message from CVS: * gst-libs/gst/riff/riff-read.c: (gst_riff_read_chunk), (gst_riff_parse_chunk), (gst_riff_parse_file_header), (gst_riff_parse_strh), (gst_riff_parse_strf_vids), (gst_riff_parse_strf_auds), (gst_riff_parse_strf_iavs), (gst_riff_parse_info): Protect public functions against bad input. Do some cleanups. Fix documentation. 2006-08-22 15:50:36 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/: Add voxware audio IDs (even if we can't play it) (#351795). Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Add voxware audio IDs (even if we can't play it) (#351795). 2006-08-22 15:11:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Const-ify some arrays and use G_N_ELEMENTS instead of wasting oodles of RAM on termin... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_template_caps), (gst_riff_create_audio_template_caps), (gst_riff_create_iavs_template_caps): Const-ify some arrays and use G_N_ELEMENTS instead of wasting oodles of RAM on terminator bits. 2006-08-22 08:27:07 +0000 Tim-Philipp Müller <tim@centricular.net> And the same for _to_vorbiscomment_buffer(): allow id_data_len == 0 for speex. Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_tag_list_to_vorbiscomment_buffer): * tests/check/libs/tag.c: (GST_START_TEST): And the same for _to_vorbiscomment_buffer(): allow id_data_len == 0 for speex. 2006-08-21 19:04:14 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/gdp/README: adding a README Original commit message from CVS: adding a README 2006-08-21 19:01:41 +0000 Thomas Vander Stichele <thomas@apestaart.org> Move GDP plugin to -base from -bad. Closes #347783. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/inspect/plugin-gdp.xml: * gst/gdp/Makefile.am: * tests/check/Makefile.am: Move GDP plugin to -base from -bad. Closes #347783. 2006-08-21 18:34:46 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstvorbistag.c: Allow id_data_len == 0 (needed for vorbis comments in Speex files). Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_tag_list_from_vorbiscomment_buffer): Allow id_data_len == 0 (needed for vorbis comments in Speex files). Also add some checks to make sure we don't memcmp() beyond the end of vorbiscomment buffer if the ID to check for is larger than the buffer. * tests/check/libs/tag.c: (GST_START_TEST): Some more tests for gst_tag_list_from_vorbiscomment_buffer(). 2006-08-21 16:39:25 +0000 Tim-Philipp Müller <tim@centricular.net> ext/vorbis/vorbisenc.c: Use vorbis comment utility functions from libgsttag instead of re-inventing the wheel (partia... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_metadata_set1), (gst_vorbis_enc_set_metadata): Use vorbis comment utility functions from libgsttag instead of re-inventing the wheel (partially fixes #347091). 2006-08-21 11:42:12 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/elements/audioconvert.c: Fix leaks. Wait for state transitions that might happen ASYNC, as well as some t... Original commit message from CVS: * tests/check/elements/audioconvert.c: (GST_START_TEST): Fix leaks. Wait for state transitions that might happen ASYNC, as well as some that won't. 2006-08-21 10:32:51 +0000 Wim Taymans <wim.taymans@gmail.com> docs/libs/: Don't try to GObject scan the netbuffer as it's not a GObject. Original commit message from CVS: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: Don't try to GObject scan the netbuffer as it's not a GObject. Fixes #351308. * gst-libs/gst/netbuffer/gstnetbuffer.c: * gst-libs/gst/netbuffer/gstnetbuffer.h: Document GstNetBuffer. 2006-08-21 08:54:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/audioconvert.c: Add testcase for caps-size-explosion Original commit message from CVS: * tests/check/elements/audioconvert.c: (GST_START_TEST), (audioconvert_suite): Add testcase for caps-size-explosion 2006-08-20 13:05:44 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audioconvert/gstaudioconvert.c: Lower debug, use g_assert in _get_unit_size Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_get_unit_size), (set_structure_widths): Lower debug, use g_assert in _get_unit_size * gst/audioresample/gstaudioresample.c: (audioresample_get_unit_size): * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_unit_size): * gst/videoscale/gstvideoscale.c: (gst_video_scale_get_unit_size): use g_assert in _get_unit_size 2006-08-18 21:21:48 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery: fix bug number Original commit message from CVS: ChangeLog surgery: fix bug number 2006-08-18 16:43:26 +0000 Wim Taymans <wim.taymans@gmail.com> Document GstRTPBuffer. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_set_packet_len), (gst_rtp_buffer_pad_to), (gst_rtp_buffer_get_payload_subbuffer), (gst_rtp_buffer_get_payload_buffer): * gst-libs/gst/rtp/gstrtpbuffer.h: Document GstRTPBuffer. Added function to efficiently strip payload headers. API: gst_rtp_buffer_get_payload_subbuffer() 2006-08-17 16:52:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstvorbistag.c: Serialise unknown vorbis comments into GST_TAG_EXTENDED_COMMENT tags and deserialise... Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add), (gst_tag_to_vorbis_comments): Serialise unknown vorbis comments into GST_TAG_EXTENDED_COMMENT tags and deserialise them properly as well (#351768). Add some more gtk-doc blurbs and also some g_return_if_fail(). * tests/check/libs/tag.c: (GST_START_TEST), (back_to_vorbis_comments), (taglists_are_equal), (tag_suite): More tests. 2006-08-17 15:43:40 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/: Added ogg-in-avi parser element. Fixes #140139. Original commit message from CVS: * ext/ogg/Makefile.am: * ext/ogg/gstogg.c: (plugin_init): * ext/ogg/gstoggaviparse.c: (gst_ogg_avi_parse_get_type), (gst_ogg_avi_parse_base_init), (gst_ogg_avi_parse_class_init), (gst_ogg_avi_parse_init), (gst_ogg_avi_parse_finalize), (gst_ogg_avi_parse_setcaps), (gst_ogg_avi_parse_event), (gst_ogg_avi_parse_push_packet), (gst_ogg_avi_parse_chain), (gst_ogg_avi_parse_change_state), (gst_ogg_avi_parse_plugin_init): Added ogg-in-avi parser element. Fixes #140139. * ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page): Fixed a bug in oggdemux debug code. * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Recognise Ogg in the AVI extensible wave format. 2006-08-17 10:00:00 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/cdda/gstcddabasesrc.c: Make buffer durations add up (duration should be next_ts-ts for perfect streams).... Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): Make buffer durations add up (duration should be next_ts-ts for perfect streams). Fixes CD ripping to Ogg/Vorbis with vorbisenc from CVS. * tests/check/libs/cddabasesrc.c: (gst_cd_foo_src_close), (test_buffer_timestamps), (cddabasesrc_suite): Add unit test for the above. * tests/check/Makefile.am: Don't know why cddabasesrc test was in VALGRIND_TO_FIX, remove to see what happens. 2006-08-16 11:38:52 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/: Avoid setting and using a NULL device name. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_set_property), (gst_alsasink_open): * ext/alsa/gstalsasrc.c: (gst_alsasrc_set_property), (gst_alsasrc_open): Avoid setting and using a NULL device name. Print more info when we fail to open a device. 2006-08-16 11:28:57 +0000 Tim-Philipp Müller <tim@centricular.net> API: add gst_tag_parse_extended_comment() (#351426). Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: (gst_tag_parse_extended_comment): API: add gst_tag_parse_extended_comment() (#351426). * tests/check/Makefile.am: * tests/check/libs/.cvsignore: * tests/check/libs/tag.c: (GST_START_TEST), (tag_suite), (main): Add unit test for gst_tag_parse_extended_comment(). 2006-08-15 19:20:16 +0000 Tim-Philipp Müller <tim@centricular.net> sys/: Fix leak (#351502). Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_get_property): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_property): Fix leak (#351502). 2006-08-15 17:21:33 +0000 Tim-Philipp Müller <tim@centricular.net> Document playbin. Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * gst/playback/gstplaybin.c: Document playbin. * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update to CVS version. 2006-08-14 17:54:01 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Add "connection-speed" property; re-order redirect messages with multiple redirect locatio... Original commit message from CVS: * gst/playback/gstplaybin.c: (gst_play_bin_class_init), (gst_play_bin_set_property), (gst_play_bin_get_property), (value_list_append_structure_list), (gst_play_bin_handle_redirect_message), (gst_play_bin_handle_message): Add "connection-speed" property; re-order redirect messages with multiple redirect locations depending on the minimum bitrate if that information is available and a connection speed is set (#350399). 2006-08-14 11:41:04 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Update max volume to the same value that the volume element uses. Original commit message from CVS: * gst/playback/gstplaybin.c: Update max volume to the same value that the volume element uses. 2006-08-14 10:50:15 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsamixer.c: Less uglyness.. Original commit message from CVS: * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_open): Less uglyness.. 2006-08-14 10:49:10 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Add some more debug info. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_submit_buffer), (gst_ogg_demux_get_next_page), (gst_ogg_demux_perform_seek), (gst_ogg_demux_read_chain), (gst_ogg_demux_loop): Add some more debug info. Don't crash when a seek failed. Actually return the result of the seek instead of TRUE. Ignore multiple BOS pages with the same serial so that we don't create the same stream multiple times. Post an error when we fail to do the initial seek. 2006-08-13 14:34:48 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsa.c: Small code cleanup. Original commit message from CVS: * ext/alsa/gstalsa.c: (gst_alsa_detect_rates), (gst_alsa_detect_channels), (gst_alsa_probe_supported_formats): Small code cleanup. * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_open), (gst_alsa_mixer_new): Remove hack that always set the device to hw:0*. Properly find the card name for whatever device was configured. Do some better debugging. Fixes #350784. * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_set_property), (gst_alsa_mixer_element_change_state): Cleanups. Handle setting of a NULL device name better. 2006-08-11 15:53:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.c: Don't clip float values. Fixes #350900. Original commit message from CVS: * gst/adder/gstadder.c: Don't clip float values. Fixes #350900. 2006-08-11 15:33:17 +0000 Andy Wingo <wingo@pobox.com> gst/tcp/gsttcp.c: Really fix the build? Original commit message from CVS: 2006-08-11 Andy Wingo <wingo@pobox.com> * gst/tcp/gsttcp.c: Really fix the build? 2006-08-11 15:29:56 +0000 Andy Wingo <wingo@pobox.com> gst/tcp/gsttcp.h: For now, always disable deprecation here -- fixes the build. Original commit message from CVS: 2006-08-11 Andy Wingo <wingo@pobox.com> * gst/tcp/gsttcp.h: For now, always disable deprecation here -- fixes the build. 2006-08-10 13:01:31 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/gstaudioconvert.c: Float caps shouldn't have a "signed" field. Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (make_lossless_changes): Float caps shouldn't have a "signed" field. 2006-08-10 08:56:22 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstoggdemux.c: Implement SEEKING query in its most basic form, so that we can at least check if we're seekabl... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query): Implement SEEKING query in its most basic form, so that we can at least check if we're seekable or not (#350655). 2006-08-09 14:42:58 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: The checks here are not even close to anything that would justify MAXIMUM probab... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg2_sys_type_find): The checks here are not even close to anything that would justify MAXIMUM probability, lowering to POSSIBLE until someone fixes the checks (case at hand: quicktime redirection files might start with 00 00 01 XX and pass the checks here just fine, see #350399). 2006-08-08 13:57:29 +0000 Edward Hervey <bilboed@bilboed.com> tests/check/elements/gdpdepay.c: I forgot to include the file containing the #define :) Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): I forgot to include the file containing the #define :) Now includes "config.h" 2006-08-08 13:45:44 +0000 Edward Hervey <bilboed@bilboed.com> tests/check/elements/gdpdepay.c: Ignore test known to fail on PPC64. See #348114. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): Ignore test known to fail on PPC64. See #348114. 2006-08-08 08:41:13 +0000 Sjoerd Simons <sjoerd@luon.net> gst/typefind/gsttypefindfunctions.c: Better detection for multipart/x-mixed-replace: accept leading whitespaces befor... Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon net> * gst/typefind/gsttypefindfunctions.c: (multipart_type_find): Better detection for multipart/x-mixed-replace: accept leading whitespaces before the boundary marker as well (as our very own multipartmux used to produce) (#349068). 2006-08-07 08:26:03 +0000 Young-Ho Cha <ganadist@chollian.net> gst-libs/gst/riff/: Detect DTS audio streams (#350157). Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps), (gst_riff_create_audio_template_caps): Detect DTS audio streams (#350157). 2006-08-05 17:08:05 +0000 Andy Wingo <wingo@pobox.com> ext/theora/gsttheoraparse.h: ext/theora/theoraparse.c (gst_theora_parse_class_init) (theora_parse_dispose, theora_par... Original commit message from CVS: 2006-08-05 Andy Wingo <wingo@pobox.com> * ext/theora/gsttheoraparse.h: * ext/theora/theoraparse.c (gst_theora_parse_class_init) (theora_parse_dispose, theora_parse_set_property) (theora_parse_get_property, theora_parse_munge_granulepos) (theora_parse_push_buffer, theora_parse_change_state): Add a property 'synchronization-points' to fix badly synchronized oggs. 2006-08-04 13:20:23 +0000 Zaheer Abbas Merali <zaheerabbas@merali.org> gst/gdp/gstgdpdepay.c: Fix event parsing by gdpdepay. Fixes #349916. Original commit message from CVS: 2006-08-04 Zaheer Abbas Merali <zaheerabbas at merali dot org> * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Fix event parsing by gdpdepay. Fixes #349916. 2006-08-03 15:04:42 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add a few tests for the channel position stuff in libgstaudio. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/libs/.cvsignore: * tests/check/libs/audio.c: (structure_contains_channel_positions), (fixed_caps_have_channel_positions), (GST_START_TEST), (audio_suite), (main): Add a few tests for the channel position stuff in libgstaudio. 2006-08-03 14:16:06 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/: Add support for cards that (only) do more than 8 channels, like the Delta 44 (#345188). Original commit message from CVS: * ext/alsa/gstalsa.c: (caps_add_channel_configuration), (gst_alsa_detect_channels): * ext/alsa/gstalsasink.c: Add support for cards that (only) do more than 8 channels, like the Delta 44 (#345188). * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions): * gst-libs/gst/audio/multichannel.h: API: add GST_AUDIO_CHANNEL_POSITION_NONE, which stands for an unspecified channel position and cannot be combined with any of the other audio channel positions; adjust position layout checks accordingly (#345188). 2006-08-03 11:15:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Recognise ancient RealAudio files (see #349779). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Recognise ancient RealAudio files (see #349779). 2006-08-03 09:01:25 +0000 Jens Granseuer <jensgr@gmx.net> gst/typefind/gsttypefindfunctions.c: Add typefinder for Interplay's MVE format (#348973). Original commit message from CVS: Patch by: Jens Granseuer <jensgr at gmx net> * gst/typefind/gsttypefindfunctions.c: (plugin_init): Add typefinder for Interplay's MVE format (#348973). 2006-08-02 17:03:29 +0000 Marcel Moreaux <marcelm@luon.net> gst-libs/gst/rtp/gstbasertpdepayload.*: Handle RTP sequence number rollover. Original commit message from CVS: Patch by: Marcel Moreaux <marcelm at luon dot net> * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_add_to_queue): * gst-libs/gst/rtp/gstbasertpdepayload.h: Handle RTP sequence number rollover. Disable jitterbuffer by default. 2006-08-02 16:56:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst/gdp/gstgdpdepay.c: Disable seeking. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init), (gst_gdp_depay_finalize), (gst_gdp_depay_sink_event), (gst_gdp_depay_src_event), (gst_gdp_depay_chain), (gst_gdp_depay_change_state): Disable seeking. Small cleanups. Clear adapter on disconts. Clear caps when going to READY instead of NULL * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_pay_finalize), (gst_gdp_pay_reset), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_queue_buffer), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_src_event), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: Reset payloader when going to READY. Fix leaked buffers in ->queue on push errors. Disable seeking. Code cleanups. Create packetizer in _init, free in _finalize. 2006-07-31 08:48:36 +0000 Wim Taymans <wim.taymans@gmail.com> gst/gdp/gstgdpdepay.c: Consume all events except EOS because we generate events from the gdp payload instead. Fixes #... Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init), (gst_gdp_depay_sink_event), (gst_gdp_depay_chain): Consume all events except EOS because we generate events from the gdp payload instead. Fixes #349204 2006-07-28 17:17:24 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/audioresample/gstaudioresample.c: Don't leak references to the incoming caps. Clean them up when stopping. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (audioresample_stop), (audioresample_set_caps): Don't leak references to the incoming caps. Clean them up when stopping. * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init), (gst_video_scale_finalize): Don't leak our temporary pixel buffer. * tests/check/Makefile.am: * tests/check/pipelines/simple-launch-lines.c: (run_pipeline), (GST_START_TEST), (simple_launch_lines_suite): Fix leaks and re-enable the test for valgrind checking. 2006-07-28 16:39:31 +0000 Sjoerd Simons <sjoerd@luon.net> gst/typefind/gsttypefindfunctions.c: Add typefind function for multipart/x-mixed-replace (#348916). Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon net> * gst/typefind/gsttypefindfunctions.c: (multipart_type_find), (plugin_init): Add typefind function for multipart/x-mixed-replace (#348916). 2006-07-28 14:14:58 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.c: Fix leak in duration query. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_setcaps), (gst_adder_query_duration): Fix leak in duration query. Reflow some docs and notes. 2006-07-28 13:42:48 +0000 Michael Smith <msmith@xiph.org> tests/check/pipelines/vorbisenc.c: Enable Andy's extra vorbisenc test, now that it passes. Also fix one aspect of it. Original commit message from CVS: * tests/check/pipelines/vorbisenc.c: (GST_START_TEST), (vorbisenc_suite): Enable Andy's extra vorbisenc test, now that it passes. Also fix one aspect of it. 2006-07-28 12:48:21 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisenc.*: Handle discontinuities in the input vorbis stream correctly, so that the output is properly t... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_generate_sink_caps), (gst_vorbis_enc_sink_getcaps), (gst_vorbis_enc_buffer_from_packet), (gst_vorbis_enc_push_buffer), (gst_vorbis_enc_buffer_check_discontinuous), (gst_vorbis_enc_chain), (gst_vorbis_enc_change_state): * ext/vorbis/vorbisenc.h: Handle discontinuities in the input vorbis stream correctly, so that the output is properly timestamped (and has good granulepos values). Needs some oggmux fixes too. 2006-07-27 10:52:52 +0000 Kai Vehmanen <kv2004@eca.cx> gst-libs/gst/rtp/gstbasertpdepayload.c: Don't send multiple newsegments with different formats. Original commit message from CVS: patch by: Kai Vehmanen <kv2004 eca cx> * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_handle_sink_event), (gst_base_rtp_depayload_change_state): Don't send multiple newsegments with different formats. Fixes #348677. 2006-07-26 15:20:56 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Make seeking in ogg more accurate again by doing the more correct granuletime to stream time c... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_internal_chain), (gst_ogg_demux_do_seek), (gst_ogg_demux_read_chain): Make seeking in ogg more accurate again by doing the more correct granuletime to stream time conversion. 2006-07-26 10:59:35 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/gstmultifdsink.c: debug a little more understandably do not use goto as a substitute for break, especially if... Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_add_full), (gst_multi_fd_sink_new_client): debug a little more understandably do not use goto as a substitute for break, especially if break is also being used 2006-07-26 10:55:13 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gsttcp.c: move a recurring normal event to LOG, where it should be Original commit message from CVS: move a recurring normal event to LOG, where it should be 2006-07-26 10:54:13 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/vorbis/vorbisdec.c: tweak debug output Original commit message from CVS: tweak debug output 2006-07-26 10:52:05 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/gdp/gstgdpdepay.c: proxying get/set caps is the wrong thing to do, since we really do change caps quite fundament... Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init): proxying get/set caps is the wrong thing to do, since we really do change caps quite fundamentally * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: remove declaration of buffers, it's already done in gstcheck.h 2006-07-26 10:31:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Remove GLib-2.6 compatibility cruft. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_property): * gst/playback/gstplaybin.c: (gst_play_bin_get_property): Remove GLib-2.6 compatibility cruft. 2006-07-24 16:47:10 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Don't try to align a sample to an unknown value. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): Don't try to align a sample to an unknown value. 2006-07-24 15:14:17 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: When the audio clock is slaved to another clock, never try to align samples bu... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_provide_clock), (gst_base_audio_sink_render): When the audio clock is slaved to another clock, never try to align samples but trust the rate interpolation algorithm. 2006-07-24 14:34:42 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.c: Don't try to calculate silence samples, base class does this much better now. Original commit message from CVS: * ext/alsa/gstalsasink.c: (set_hwparams), (gst_alsasink_prepare): Don't try to calculate silence samples, base class does this much better now. * gst-libs/gst/audio/gstringbuffer.c: (build_linear_format), (gst_ring_buffer_debug_spec_caps), (gst_ring_buffer_parse_caps), (gst_ring_buffer_acquire): Calculate silence samples correctly. * gst-libs/gst/audio/gstringbuffer.h: Add _CAST macro. 2006-07-22 17:01:12 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Limit search for the first markup tag to the first few kB of the file. If we don... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (xml_check_first_element): Limit search for the first markup tag to the first few kB of the file. If we don't find one there, it's highly unlikely that this is an XML(-ish) file. 2006-07-21 17:04:06 +0000 Andy Wingo <wingo@pobox.com> tests/check/pipelines/theoraenc.c (test_discontinuity): Similar test to the one in vorbisenc. Also commented out. Original commit message from CVS: 2006-07-21 Andy Wingo <wingo@pobox.com> * tests/check/pipelines/theoraenc.c (test_discontinuity): Similar test to the one in vorbisenc. Also commented out. 2006-07-21 16:54:19 +0000 Andy Wingo <wingo@pobox.com> tests/check/pipelines/vorbisenc.c: New test, commented out until Mike lands some elite vorbisenc patches. Original commit message from CVS: 2006-07-21 Andy Wingo <wingo@pobox.com> * tests/check/pipelines/vorbisenc.c: (test_discontinuity): New test, commented out until Mike lands some elite vorbisenc patches. 2006-07-21 15:59:24 +0000 Andy Wingo <wingo@pobox.com> tests/check/pipelines/: Port to bufferstraw. Original commit message from CVS: 2006-07-21 Andy Wingo <wingo@pobox.com> * tests/check/pipelines/vorbisenc.c: * tests/check/pipelines/theoraenc.c: Port to bufferstraw. Bufferstraw was actually factored out of these tests. Now we share code yay. 2006-07-21 11:03:28 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Better clipping. Original commit message from CVS: * ext/theora/theoradec.c: (clip_buffer): Better clipping. 2006-07-21 10:43:54 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Fix leak. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func), (gst_audioringbuffer_finalize), (gst_audioringbuffer_acquire), (gst_audioringbuffer_release), (gst_audioringbuffer_stop): Fix leak. Avoid type casting when we can. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_dispose): Fix mem leak. 2006-07-20 16:57:29 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsamixerelement.c: Make state change fail if the specified device can't be opened for some reason. Original commit message from CVS: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_change_state): Make state change fail if the specified device can't be opened for some reason. 2006-07-20 10:42:21 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/test.c: Example of a small audio/video player using decodebin. Original commit message from CVS: * gst/playback/test.c: (gen_video_element), (gen_audio_element), (cb_newpad), (main): Example of a small audio/video player using decodebin. 2006-07-20 05:56:48 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/riff-ids.h: Add 'fact' chunk id Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: Add 'fact' chunk id 2006-07-19 18:20:43 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Don't assert when not negotiated but post a meaningfull error message. Fixes ... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_chain), (gst_base_rtp_depayload_change_state): Don't assert when not negotiated but post a meaningfull error message. Fixes #347918. * gst-libs/gst/rtp/gstbasertppayload.c: Add comment about better default MTU size. * gst-libs/gst/rtp/gstrtpbuffer.c: (gst_rtp_buffer_validate_data): Small cleanups, start docs. 2006-07-19 14:46:36 +0000 Martin Szulecki <compiz@sukimashita.com> sys/v4l/gstv4lelement.c: If "device-name" is requested and the device is not open, try to temporarily open it to obta... Original commit message from CVS: Patch by: Martin Szulecki * sys/v4l/gstv4lelement.c: (gst_v4lelement_get_property): If "device-name" is requested and the device is not open, try to temporarily open it to obtain this information (#342494). 2006-07-19 12:25:00 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstid3tag.c: Add TSSE <=> GST_TAG_ENCODER mapping (see #347898). Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: Add TSSE <=> GST_TAG_ENCODER mapping (see #347898). * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/gstvorbistag.c: Some more random const-ifications. 2006-07-18 19:48:48 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst-libs/gst/riff/: add comment what those 16 bytes in struct _gst_riff_strh according to one avi-dumper are Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_template_caps): Add more FOURCCs (sort list to make stuff easier to find), add comment what those 16 bytes in struct _gst_riff_strh according to one avi-dumper are 2006-07-17 14:17:45 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/gdp/: remove parent_class setting, BOILERPLATE does this fix typo in comment Original commit message from CVS: 2006-07-17 Thomas Vander Stichele <thomas at apestaart dot org> * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_class_init): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), remove parent_class setting, BOILERPLATE does this (gst_gdp_pay_reset_streamheader): fix typo in comment 2006-07-17 13:48:10 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: Const-ify two arrays. Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions), (gst_audio_fixate_channel_positions): Const-ify two arrays. 2006-07-17 12:33:42 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsa.c: Fix typo, so that alsasink also advertises 8 channels if that's supported (tags: can, worms, open... Original commit message from CVS: * ext/alsa/gstalsa.c: (caps_add_channel_configuration): Fix typo, so that alsasink also advertises 8 channels if that's supported (tags: can, worms, open, alsa, ph34r). 2006-07-17 12:01:04 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: *sigh*, when is the compiler going to warn when the comments are out-of-sync with the code.. R... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_internal_chain), (gst_ogg_pad_submit_packet), (gst_ogg_demux_read_chain): *sigh*, when is the compiler going to warn when the comments are out-of-sync with the code.. Refix case of busted theora headers with 0 granule pos. 2006-07-14 17:56:59 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Fix 99% cpu load by waiting for absolute times on the clock. Fixes #347300. Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_wait), (gst_base_rtp_depayload_change_state), (gst_base_rtp_depayload_set_property), (gst_base_rtp_depayload_get_property): Fix 99% cpu load by waiting for absolute times on the clock. Fixes #347300. 2006-07-14 17:07:08 +0000 Andy Wingo <wingo@pobox.com> ext/theora/gsttheoraparse.h: ext/theora/theoraparse.c (theora_parse_drain_event_queue) (theora_parse_push_headers, th... Original commit message from CVS: 2006-07-14 Andy Wingo <wingo@pobox.com> * ext/theora/gsttheoraparse.h: * ext/theora/theoraparse.c (theora_parse_drain_event_queue) (theora_parse_push_headers, theora_parse_clear_queue) (theora_parse_drain_queue_prematurely, ) (theora_parse_sink_event, theora_parse_change_state): Queue events until we initialized our state, like in vorbisparse. 2006-07-14 16:45:17 +0000 Iain * <iaingnome@gmail.com> ext/vorbis/vorbisparse.h: ext/vorbis/vorbisparse.c (vorbis_parse_drain_event_queue) (vorbis_parse_push_headers, vorbi... Original commit message from CVS: 2006-07-14 Andy Wingo <wingo@pobox.com> * ext/vorbis/vorbisparse.h: * ext/vorbis/vorbisparse.c (vorbis_parse_drain_event_queue) (vorbis_parse_push_headers, vorbis_parse_clear_queue) (vorbis_parse_drain_queue_prematurely, ) (vorbis_parse_sink_event, vorbis_parse_change_state): Queue events until we have initialized our state. Fixes seeking after an initial pad block. 2006-07-14 Andy Wingo <wingo@pobox.com> Patch by: Iain * <iaingnome@gmail.com> * ext/ogg/gstoggdemux.c (gst_ogg_demux_finalize): Fix memleak. 2006-07-14 15:52:39 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Bump nano back to CVS Original commit message from CVS: * configure.ac: Bump nano back to CVS === release 0.10.9 === 2006-07-14 15:51:24 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: releasing 0.10.9, "I walk the line" Original commit message from CVS: 2006-07-13 Jan Schmidt <thaytan@mad.scientist.com> * configure.ac: releasing 0.10.9, "I walk the line" 2006-07-14 14:12:40 +0000 Michael Smith <msmith@xiph.org> tests/check/pipelines/vorbisenc.c: Move a g_cond_signal to earlier to avoid sometimes deadlocking (commonly happens w... Original commit message from CVS: * tests/check/pipelines/vorbisenc.c: (stop_pipeline): Move a g_cond_signal to earlier to avoid sometimes deadlocking (commonly happens when running this test under valgrind) when trying to remove the buffer probe. 2006-07-14 10:34:36 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/gdp/Makefile.am: build as a plugin, not a lib Original commit message from CVS: build as a plugin, not a lib 2006-07-13 16:43:22 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/xvimage/xvimagesink.c: Fix missing g_unlock from the previous commit Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new): Fix missing g_unlock from the previous commit 2006-07-13 16:34:04 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/: Implement a locking order to ensure we always take the object lock before the x_lock and never vice-versa. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new), (gst_ximagesink_change_state): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new), (gst_xvimagesink_change_state): Implement a locking order to ensure we always take the object lock before the x_lock and never vice-versa. 2006-07-13 15:25:58 +0000 Thomas Vander Stichele <thomas@apestaart.org> docs/plugins/: add more plugins and elements to docs Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: add more plugins and elements to docs * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): fix segfaults due to wrong g_free add example * gst/gdp/gstgdppay.c: add example 2006-07-13 14:38:15 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: Fix a caps leak when linking (#347304) Original commit message from CVS: * gst/playback/gstdecodebin.c: (find_compatibles): Fix a caps leak when linking (#347304) * sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize), (gst_ximagesink_ximage_destroy), (gst_ximagesink_xcontext_clear), (gst_ximagesink_change_state): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimage_buffer_finalize), (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new), (gst_xvimagesink_xvimage_put), (gst_xvimagesink_xcontext_clear), (gst_xvimagesink_change_state): Don't leak shared memory resources. Use the object lock to protect against the xcontext disappearing while returning a buffer from the pipeline. (#347304) 2006-07-12 14:20:43 +0000 Edward Hervey <bilboed@bilboed.com> ext/vorbis/vorbisdec.c: gst_tag_list_merge() returns a new object. Take that into account when using it. This avoids ... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_finalize), (vorbis_handle_comment_packet): gst_tag_list_merge() returns a new object. Take that into account when using it. This avoids memleak. Revert previous commit which is not needed. 2006-07-12 13:30:20 +0000 Edward Hervey <bilboed@bilboed.com> ext/vorbis/vorbisdec.c: Reset the decoder in finalize so that all fields get cleared. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_finalize): Reset the decoder in finalize so that all fields get cleared. 2006-07-12 13:24:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Don't try to post an error message when setting the clock fails as this can hap... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_set_clock), (gst_base_audio_src_check_get_range), (gst_base_audio_src_create): Don't try to post an error message when setting the clock fails as this can happen when adding an element to a bin which will then deadlock. Fixes #347296. 2006-07-12 13:04:15 +0000 Edward Hervey <bilboed@bilboed.com> ext/vorbis/vorbisdec.c: Post tag messages on the bus even if we're not initialized. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset), (vorbis_dec_sink_event), (vorbis_handle_comment_packet), (vorbis_handle_type_packet): Post tag messages on the bus even if we're not initialized. If we're not initialized, we still postpone the event pushing of tags. 2006-07-12 11:28:37 +0000 Wim Taymans <wim.taymans@gmail.com> Revert last two changes that broke the freeze. Original commit message from CVS: * ext/alsa/gstalsasink.c: (set_hwparams), (gst_alsasink_prepare): * gst-libs/gst/audio/gstringbuffer.c: (build_linear_format), (gst_ring_buffer_debug_spec_caps), (gst_ring_buffer_parse_caps): Revert last two changes that broke the freeze. 2006-07-12 10:59:55 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.c: basesink calculates silence sample correctly for us. Original commit message from CVS: * ext/alsa/gstalsasink.c: (set_hwparams), (gst_alsasink_prepare): basesink calculates silence sample correctly for us. 2006-07-12 10:58:42 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: Calculate correct silence samples so we don't fill our ringbuffer with noise. Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (build_linear_format), (gst_ring_buffer_debug_spec_caps), (gst_ring_buffer_parse_caps): Calculate correct silence samples so we don't fill our ringbuffer with noise. 2006-07-12 10:37:18 +0000 Edward Hervey <bilboed@bilboed.com> ext/vorbis/vorbisdec.*: Delay sending events (newsegment, tags) until the decoder is properly initialized. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (gst_vorbis_dec_init), (gst_vorbis_dec_reset), (vorbis_dec_sink_event), (vorbis_handle_comment_packet), (vorbis_handle_type_packet): * ext/vorbis/vorbisdec.h: Delay sending events (newsegment, tags) until the decoder is properly initialized. Fixes #347295 2006-07-11 22:40:13 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-07-11 21:04:16 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/elements/audioconvert.c: Patch from #347221 adding a test for audioconvert channel remappings. Original commit message from CVS: * tests/check/elements/audioconvert.c: (get_float_mc_caps), (get_int_mc_caps), (GST_START_TEST), (audioconvert_suite): Patch from #347221 adding a test for audioconvert channel remappings. 2006-07-11 12:03:25 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstssaparse.c: Don't include the terminating NUL in the buffer size, it's only there for extra paranoia ... Original commit message from CVS: * gst/subparse/gstssaparse.c: (gst_ssa_parse_base_init), (gst_ssa_parse_parse_line): Don't include the terminating NUL in the buffer size, it's only there for extra paranoia (would add random '*' characters at the end of each subtitle since the terminator itself is not valid UTF-8 technically). Also fix indenting after boilerplate macro. 2006-07-10 14:59:03 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: Also emit 'unknown-type' signal (which should really be called unhandled-type) if we fou... Original commit message from CVS: * gst/playback/gstdecodebin.c: (close_pad_link): Also emit 'unknown-type' signal (which should really be called unhandled-type) if we found potential decoders/demuxers in the registry but none of them worked in the end (as in the case where the plugins don't exist any longer but are still listed in the registry). Fixes #329798. 2006-07-08 13:48:58 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * ext/theora/theoraparse.c: theoraparse.c (theora_parse_push_buffer) Original commit message from CVS: 2006-07-08 Andy Wingo <wingo@pobox.com> * theoraparse.c (theora_parse_push_buffer) (theora_parse_drain_queue_prematurely, theora_parse_drain_queue): Add some more debugging. Fix granulepos reconstruction in the face of discontinuities. 2006-07-06 15:54:50 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Use gobject_class instead of G_OBJECT_CLASS (klass) Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init), (gst_base_audio_sink_provide_clock): Use gobject_class instead of G_OBJECT_CLASS (klass) * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init), (gst_base_audio_src_init), (gst_base_audio_src_set_clock), (gst_base_audio_src_provide_clock), (gst_base_audio_src_get_time), (gst_base_audio_src_check_get_range), (gst_base_audio_src_create), (gst_base_audio_src_create_ringbuffer): Fix latency and buffer-time constants and properties ala basesink. Implement pull based scheduling. Fixes #346527. Set default blocksize in GstBaseSrc to 0, we default to pushing out one segment. Refuse slaving to another clock instead of silently not working. Only provide a clock when we are actually able to do so. Various small cleanups and compiler hints. 2006-07-06 13:23:07 +0000 Lutz Mueller <lutz@topfrose.de> gst/typefind/gsttypefindfunctions.c: Add typefinding for text/html (#346581). Original commit message from CVS: Patch by: Lutz Mueller <lutz at topfrose de> * gst/typefind/gsttypefindfunctions.c: (html_type_find), (plugin_init): Add typefinding for text/html (#346581). 2006-07-06 13:12:02 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Fix SMIL typefinding, make xml_check_first_element() more useful. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (utf8_type_find), (xml_check_first_element), (xml_type_find), (smil_type_find): Fix SMIL typefinding, make xml_check_first_element() more useful. 2006-07-06 13:04:24 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.*: Protect list of elements with a subtitle-encoding property and the subtitle encoding m... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gst_play_base_bin_init), (gst_play_base_bin_finalize), (decodebin_element_added_cb), (decodebin_element_removed_cb), (gst_play_base_bin_set_property): * gst/playback/gstplaybasebin.h: Protect list of elements with a subtitle-encoding property and the subtitle encoding member itself with a lock of their own instead of using the object lock. This prevents a dead-lock in the element-remove callback in some circumstances when shutting down playbin. 2006-07-05 20:11:13 +0000 Sébastien Moutte <sebastien@moutte.net> win32/common/libgsttag.def: Export some new functions. Original commit message from CVS: * win32/common/libgsttag.def: Export some new functions. * win32/vs6/libgstogg.dsp: Add a link to libgsttag-0.10.lib. 2006-07-04 16:50:21 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsamixertrack.c: Some const-ification. Original commit message from CVS: * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new): Some const-ification. 2006-07-04 14:06:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.c: Improve checking if we are dealing with a stream. Added some more uris that need buffe... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (is_stream), (gen_source_element): Improve checking if we are dealing with a stream. Added some more uris that need buffering. 2006-07-03 10:43:31 +0000 Edward Hervey <bilboed@bilboed.com> ext/vorbis/vorbisdec.c: Remove unused variable. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_do_clip): Remove unused variable. 2006-07-02 21:48:51 +0000 Thomas Vander Stichele <thomas@apestaart.org> Makefile.am: include lcov.mak Original commit message from CVS: * Makefile.am: include lcov.mak * configure.ac: add GCOV_LIBS to GST_LIBS 2006-07-02 11:08:58 +0000 Michael Sheldon <webmaster@mikeasoft.com> ext/alsa/gstalsasrc.c: Add 32 bps to template caps and increase channels range from [1,2] to [1,MAX]. See #346326. Original commit message from CVS: Patch by: Michael Sheldon <webmaster at mikeasoft com> * ext/alsa/gstalsasrc.c: Add 32 bps to template caps and increase channels range from [1,2] to [1,MAX]. See #346326. 2006-06-30 12:04:51 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Recognise 'WMVA' video codec fourcc (#345879). Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Recognise 'WMVA' video codec fourcc (#345879). 2006-06-29 12:21:06 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpaudiopayload.c: Fixed nasty memory leak Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: Fixed nasty memory leak 2006-06-26 13:19:33 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/gsttcp.c: fix logging Original commit message from CVS: * gst/tcp/gsttcp.c: (gst_tcp_read_buffer), (gst_tcp_gdp_read_buffer), (gst_tcp_gdp_read_caps): fix logging 2006-06-23 16:45:50 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: Protect remove_fakesink using a mutex, so that we don't try and remove the fakesink simu... Original commit message from CVS: * gst/playback/gstdecodebin.c: (gst_decode_bin_class_init), (gst_decode_bin_init), (gst_decode_bin_finalize), (add_fakesink), (remove_fakesink), (pad_probe), (gst_decode_bin_change_state): Protect remove_fakesink using a mutex, so that we don't try and remove the fakesink simultaneously from multiple threads. When going from READY to PAUSED, restore the fakesink, so that it is there when decodebin gets reused. 2006-06-23 09:53:09 +0000 Tim-Philipp Müller <tim@centricular.net> Use GST_DEBUG_CATEGORY_STATIC where possible (#342503). Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: * gst-libs/gst/rtp/gstbasertppayload.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.c: * sys/v4l/gstv4ljpegsrc.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lsrc.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: Use GST_DEBUG_CATEGORY_STATIC where possible (#342503). 2006-06-23 09:09:44 +0000 Tim-Philipp Müller <tim@centricular.net> Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. Original commit message from CVS: * ext/directfb/dfbvideosink.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/theora/theoradec.c: * gst/freeze/gstfreeze.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * sys/glsink/glimagesink.c: Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. 2006-06-22 12:13:31 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/tags.c: Second field in GEnumValue shouldn't be a description, but a stringified version of the enum... Original commit message from CVS: * gst-libs/gst/tag/tags.c: (register_tag_image_type_enum): Second field in GEnumValue shouldn't be a description, but a stringified version of the enum value. 2006-06-22 12:03:14 +0000 Wim Taymans <wim.taymans@gmail.com> sys/ximage/ximagesink.c: Avoid type checking in buffer casts. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize), (gst_ximage_buffer_free), (gst_ximagesink_ximage_put), (gst_ximagesink_setcaps), (gst_ximagesink_buffer_alloc): Avoid type checking in buffer casts. Avoid caps copy in buffer_alloc when we can. Use pad_peer_accept. 2006-06-22 11:01:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/tag.h: Oops, make that 'Since: 0.10.9'. Original commit message from CVS: * gst-libs/gst/tag/tag.h: Oops, make that 'Since: 0.10.9'. 2006-06-22 10:55:05 +0000 Tim-Philipp Müller <tim@centricular.net> API: add GstTagImageType enum to describe images contained in image tags (#345641). Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: (register_tag_image_type_enum), (gst_tag_image_type_get_type): API: add GstTagImageType enum to describe images contained in image tags (#345641). 2006-06-22 10:31:22 +0000 Tim-Philipp Müller <tim@centricular.net> gst/tcp/gstmultifdsink.c: Fix warnings with gst-inspect: "buffers-min" property should be of G_TYPE_INT and not G_TYP... Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): Fix warnings with gst-inspect: "buffers-min" property should be of G_TYPE_INT and not G_TYPE_INT64. Also fix typo in property description. 2006-06-22 10:10:51 +0000 Cody Russell <bratsche@gnome.org> gst/: Avoid unnecessary class cast check in class_init functions (#337747). Original commit message from CVS: Patch by: Cody Russell <bratsche at gnome org> * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init): * gst/playback/gststreamselector.c: (gst_stream_selector_class_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init): * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init): * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init): * gst/volume/gstvolume.c: (gst_volume_class_init): Avoid unnecessary class cast check in class_init functions (#337747). 2006-06-21 18:39:07 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: g_markup_escape_text() REALLY doesn't like non-UTF8 input and doesn't validate its input ... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_make_utf8), (gst_text_overlay_video_chain): g_markup_escape_text() REALLY doesn't like non-UTF8 input and doesn't validate its input either (and neither did textoverlay it seems). Let's do that then and fix #345206. 2006-06-19 17:12:57 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstmultifdsink.*: Added shiny new burst-on-connect methods. Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_sync_method_get_type), (gst_unit_type_get_type), (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_init), (gst_multi_fd_sink_add_full), (gst_multi_fd_sink_add), (gst_multi_fd_sink_handle_client_read), (find_syncframe), (find_limits), (assign_value), (count_burst_unit), (gst_multi_fd_sink_new_client), (gst_multi_fd_sink_handle_client_write), (gst_multi_fd_sink_queue_buffer), (gst_multi_fd_sink_render), (gst_multi_fd_sink_set_property), (gst_multi_fd_sink_get_property), (gst_multi_fd_sink_change_state): * gst/tcp/gstmultifdsink.h: Added shiny new burst-on-connect methods. Add properties to control the minimal amount of data queued. Small cleanups. API: bytes-min property API: time-min property API: buffers-min property API: burst-unit property API: burst-value property API: add-full signal * gst/tcp/gsttcp-marshal.list: Added new marshaller code for the new signal. * tests/check/elements/multifdsink.c: (GST_START_TEST), (multifdsink_suite): Added testcases for new burst methods. 2006-06-19 11:35:47 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update for latest changes Original commit message from CVS: update for latest changes 2006-06-19 09:57:50 +0000 Edward Hervey <bilboed@bilboed.com> ext/theora/theoradec.c: Implement clipping for accurate seeking. Original commit message from CVS: * ext/theora/theoradec.c: (clip_buffer), (theora_dec_push): Implement clipping for accurate seeking. Closes #345225 2006-06-19 09:08:05 +0000 Philip Jaegenstedt <philip@lysator.liu.se> gst/videoscale/gstvideoscale.c: Make videoscale support RGBA, ARGB, BGRA and ABGR. Fixes #345131 Original commit message from CVS: Patch by: Philip Jaegenstedt <philip at lysator dot liu dot se> * gst/videoscale/gstvideoscale.c: (gst_video_scale_prepare_size), (gst_video_scale_transform): Make videoscale support RGBA, ARGB, BGRA and ABGR. Fixes #345131 2006-06-17 14:18:41 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery Original commit message from CVS: ChangeLog surgery 2006-06-17 14:13:03 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Fix --disable-extern (can't set conditionals conditionally, #343602). Original commit message from CVS: * configure.ac: Fix --disable-extern (can't set conditionals conditionally, #343602). 2006-06-16 15:43:23 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/audioresample.c: Add test case for bug #342789 fixed below. Original commit message from CVS: * tests/check/elements/audioresample.c: (test_reuse), (audioresample_suite): Add test case for bug #342789 fixed below. 2006-06-16 15:17:44 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioresample/gstaudioresample.c: Implement GstBaseTransform::start and ::stop so that audioresample can clear it... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init), (gst_audioresample_init), (audioresample_start), (audioresample_stop), (gst_audioresample_set_property), (gst_audioresample_get_property): Implement GstBaseTransform::start and ::stop so that audioresample can clear its internal state properly and be reused insted of causing non-negotiated errors with playbin under some circumstances (#342789). * tests/check/elements/audioresample.c: (setup_audioresample), (cleanup_audioresample): Need to set element state here so that ::start and ::stop are called. 2006-06-16 13:59:29 +0000 Young-Ho Cha <ganadist@chollian.net> gst-libs/gst/riff/riff-read.c: Parse extra data better, apparently it's right behind the normal strf header size. Fix... Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian dot net> * gst-libs/gst/riff/riff-read.c: (gst_riff_parse_strf_vids): Parse extra data better, apparently it's right behind the normal strf header size. Fixes #343500. 2006-06-16 11:04:21 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.c: If we fail to set the buffer_time and period_time alsa parameters, post a warning and leave a... Original commit message from CVS: * ext/alsa/gstalsasink.c: (set_hwparams): If we fail to set the buffer_time and period_time alsa parameters, post a warning and leave alsa select a default instead of failing. Fixes #342085 2006-06-16 10:30:25 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery (it wouldn't have crashed, just shown bogus values) Original commit message from CVS: ChangeLog surgery (it wouldn't have crashed, just shown bogus values) 2006-06-16 10:20:10 +0000 Tim-Philipp Müller <tim@centricular.net> Remove GST_CDDA_TAG_TRACK_TAGS again, it is #ifdef 0'ed out in the header file and shouldn't be listed in the docs. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/cdda/gstcddabasesrc.h: Remove GST_CDDA_TAG_TRACK_TAGS again, it is #ifdef 0'ed out in the header file and shouldn't be listed in the docs. * gst-libs/gst/riff/riff-read.c: (gst_riff_read_chunk): Fix it so that it doesn't crash in the debug statement. 2006-06-16 10:02:25 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/: add remaining symbols into correct setions Original commit message from CVS: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: add remaining symbols into correct setions * gst-libs/gst/audio/gstringbuffer.c: fix incomplete docs * gst-libs/gst/audio/gstringbuffer.h: comment out not yet implemented function * gst-libs/gst/floatcast/floatcast.h: * gst-libs/gst/netbuffer/gstnetbuffer.c: add short descriptions * gst-libs/gst/interfaces/propertyprobe.c: fix return value docs * gst-libs/gst/riff/riff-read.c: (gst_riff_read_chunk): simplify debug logging * gst-libs/gst/riff/riff-read.h: sync function prototype and docs * gst-libs/gst/rtp/gstbasertpaudiopayload.h: remove left over symbol 2006-06-16 09:56:41 +0000 Tim-Philipp Müller <tim@centricular.net> Use GST_PLUGIN_DOCS macro in configure.ac, add Original commit message from CVS: * autogen.sh: * configure.ac: * docs/Makefile.am: Use GST_PLUGIN_DOCS macro in configure.ac, add --enable-plugin-docs default to autogen.sh and use ENABLE_PLUGIN_DOCS conditional in Makefile.am (#344039). 2006-06-15 15:27:49 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Combine GstFlowReturn from the source pads to give a meaningfull result to the upstream peer o... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer), (gst_ogg_demux_activate_chain), (gst_ogg_demux_combine_flows), (gst_ogg_demux_loop): Combine GstFlowReturn from the source pads to give a meaningfull result to the upstream peer or to stop the processing task in case of errors. 2006-06-14 14:49:33 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gststreaminfo.c: Try GST_TAG_CODEC as fallback when extracting the codec name; more debug info. Original commit message from CVS: * gst/playback/gststreaminfo.c: (cb_probe): Try GST_TAG_CODEC as fallback when extracting the codec name; more debug info. 2006-06-14 14:34:28 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/: Extract language tags from ogm subtitle streams, so that the subtitle menu choices are labelled correctly in Original commit message from CVS: * ext/ogg/Makefile.am: * ext/ogg/gstogmparse.c: (gst_ogm_parse_chain): Extract language tags from ogm subtitle streams, so that the subtitle menu choices are labelled correctly in Totem (fixes #344708). 2006-06-14 09:13:54 +0000 Alessandro Decina <alessandro@nnva.org> ext/ogg/gstoggmux.c: Fix various leaks. Fixes #343699. Original commit message from CVS: Patch by: Alessandro Decina <alessandro at nnva dot org> * ext/ogg/gstoggmux.c: (gst_ogg_mux_get_type), (gst_ogg_mux_clear), (gst_ogg_mux_release_pad), (gst_ogg_mux_get_headers), (gst_ogg_mux_set_header_on_caps), (gst_ogg_mux_init_collectpads), (gst_ogg_mux_clear_collectpads), (gst_ogg_mux_change_state): Fix various leaks. Fixes #343699. Add x-smoke mime type. 2006-06-14 08:17:45 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-ids.h: Add IDs for 'bext' chunks (see #343837). Original commit message from CVS: * gst-libs/gst/riff/riff-ids.h: Add IDs for 'bext' chunks (see #343837). 2006-06-12 12:44:38 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/samiparse.c: Honour font face tags in SAMI subtitles (#344503). Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst/subparse/samiparse.c: (sami_context_pop_state), (handle_start_font), (end_sami_element): Honour font face tags in SAMI subtitles (#344503). 2006-06-11 20:41:56 +0000 Stefan Kost <ensonic@users.sourceforge.net> po/POTFILES.in: add missing files containing translatable strings Original commit message from CVS: * po/POTFILES.in: add missing files containing translatable strings 2006-06-11 19:55:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/tmpl/.cvsignore: we don't want those *.sgml files in CVS either Original commit message from CVS: * docs/libs/tmpl/.cvsignore: we don't want those *.sgml files in CVS either 2006-06-11 19:44:49 +0000 Stefan Kost <ensonic@users.sourceforge.net> ignore more Original commit message from CVS: * docs/libs/.cvsignore: * tests/check/elements/.cvsignore: * tests/check/libs/.cvsignore: ignore more 2006-06-11 18:33:27 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/Makefile.am: also commiting the changed Makefile.am (added more libs to the doc-build) Original commit message from CVS: * docs/libs/Makefile.am: also commiting the changed Makefile.am (added more libs to the doc-build) 2006-06-11 17:08:26 +0000 Stefan Kost <ensonic@users.sourceforge.net> docs/libs/: first batch of reordering things, add index & hierarchy Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: first batch of reordering things, add index & hierarchy 2006-06-11 14:08:54 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * sys/v4l/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: further clean up build Original commit message from CVS: further clean up build 2006-06-11 12:14:18 +0000 Thomas Vander Stichele <thomas@apestaart.org> configure.ac: use GST_PKG_CHECK_MODULES, cleans up output Original commit message from CVS: * configure.ac: use GST_PKG_CHECK_MODULES, cleans up output 2006-06-11 12:10:55 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * win32/common/config.h: update to cvs Original commit message from CVS: update to cvs 2006-06-10 18:52:03 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfsuri.c: Add support for burn:// URIs (#343385); const-ify things a bit, use G_N_ELEMENTS inste... Original commit message from CVS: * ext/gnomevfs/gstgnomevfsuri.c: (gst_gnomevfs_get_supported_uris): Add support for burn:// URIs (#343385); const-ify things a bit, use G_N_ELEMENTS instead of hard-coded array size. 2006-06-10 18:25:07 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/samiparse.c: Fix up broken entities before passing them to libxml *sigh*. (#343303). Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst/subparse/samiparse.c: (fix_invalid_entities), (parse_sami): Fix up broken entities before passing them to libxml *sigh*. (#343303). 2006-06-09 18:52:35 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * configure.ac: back to trunk Original commit message from CVS: back to trunk === release 0.10.8 === 2006-06-09 18:49:26 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/config.h: releasing 0.10.8 Original commit message from CVS: releasing 0.10.8 2006-06-07 11:04:09 +0000 Thomas Vander Stichele <thomas@apestaart.org> 0.10.7.2 prerelease Original commit message from CVS: * configure.ac: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * win32/common/config.h: 0.10.7.2 prerelease 2006-06-07 11:03:03 +0000 Thomas Vander Stichele <thomas@apestaart.org> move last template doc snippets to source code and delete them Original commit message from CVS: * docs/libs/tmpl/gstaudio.sgml: * docs/libs/tmpl/gstcolorbalance.sgml: * docs/libs/tmpl/gstmixer.sgml: * docs/libs/tmpl/gstringbuffer.sgml: * docs/libs/tmpl/gsttuner.sgml: * docs/libs/tmpl/gstxoverlay.sgml: * gst-libs/gst/audio/audio.c: * gst-libs/gst/audio/gstringbuffer.c: * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/mixer.c: * gst-libs/gst/interfaces/tuner.c: * gst-libs/gst/interfaces/xoverlay.c: move last template doc snippets to source code and delete them 2006-06-06 16:26:59 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/gdp/gstgdppay.c: adapt to new api Original commit message from CVS: adapt to new api 2006-06-06 14:39:15 +0000 Thomas Vander Stichele <thomas@apestaart.org> configure.ac: enable building of GDP elements Original commit message from CVS: * configure.ac: enable building of GDP elements * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_sink_event), (gst_gdp_pay_set_property), (gst_gdp_pay_get_property), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: add version 1.0 2006-06-06 11:13:18 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoraparse.c: Mark DELTA_UNIT on non-keyframes. Original commit message from CVS: * ext/theora/theoraparse.c: (theora_parse_drain_queue_prematurely), (theora_parse_drain_queue): Mark DELTA_UNIT on non-keyframes. 2006-06-03 21:06:49 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/audio/: Document better the fact that latency_time and buffer_time are values stored in microseconds, an... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init), (gst_base_audio_sink_setcaps): * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_parse_caps), (gst_ring_buffer_samples_done): * gst-libs/gst/audio/gstringbuffer.h: Document better the fact that latency_time and buffer_time are values stored in microseconds, and not the usual GStreamer nanoseconds. Change the variables (compatibly) that store them from GstClockTime to guint64 to make it more clear that they're not storing clock times. Also, remove the bogus property description that says the user can specify -1 to get the default value, since that's never been the case. When computing the default segment size for the ring buffer, make it an integer number of samples. When the sub-class indicates a delay greater than the number of samples we've written return 0 from the audio sink get_time method. 2006-06-02 17:01:02 +0000 Michael Smith <msmith@xiph.org> tests/check/: Don't busy-wait in tests; this was causing test timeouts very frequently when running under valgrind. Original commit message from CVS: * tests/check/elements/audioconvert.c: (set_channel_positions), (get_float_mc_caps), (get_int_mc_caps): * tests/check/elements/audioresample.c: * tests/check/elements/audiotestsrc.c: (GST_START_TEST): * tests/check/elements/videorate.c: * tests/check/elements/videotestsrc.c: (GST_START_TEST): * tests/check/elements/volume.c: * tests/check/elements/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: (GST_START_TEST): Don't busy-wait in tests; this was causing test timeouts very frequently when running under valgrind. 2006-06-02 16:45:59 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.h: small fixes Original commit message from CVS: small fixes 2006-06-02 16:35:12 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: fail_if_can_read is racy Original commit message from CVS: fail_if_can_read is racy 2006-06-02 16:26:54 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/: make multifdsink properly deal with streamheader: Original commit message from CVS: * gst/tcp/README: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_init), (gst_multi_fd_sink_remove_client_link), (gst_multi_fd_sink_client_queue_caps), (gst_multi_fd_sink_client_queue_buffer), (gst_multi_fd_sink_handle_client_write), (gst_multi_fd_sink_render): * gst/tcp/gstmultifdsink.h: make multifdsink properly deal with streamheader: - streamheader is taken from caps - buffers marked with IN_CAPS are not sent - streamheaders are sent, on connection, from the caps of the buffer where the client gets positioned to - further streamheader changes are done every time the client will receive a buffer with different caps * tests/check/elements/multifdsink.c: (GST_START_TEST), (gst_multifdsink_create_streamheader): add tests for this 2006-06-02 15:06:59 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisdec.c: Reinstate limit on channel count. Vorbis does not define the meaning of > 6 channels, so they... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet): Reinstate limit on channel count. Vorbis does not define the meaning of > 6 channels, so they're just independent channels. Gstreamer currently has no mechanism to represent N independent channels. 2006-06-02 14:23:34 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisdec.c: Don't arbitrarily restrict channel counts and rate in vorbis. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet): Don't arbitrarily restrict channel counts and rate in vorbis. In terms of effects likely on real-world files, this fixes 96kHz playback of vorbis. 2006-06-02 14:19:18 +0000 Michael Smith <msmith@xiph.org> gst/audioconvert/audioconvert.c: More correct float->int conversion. Original commit message from CVS: * gst/audioconvert/audioconvert.c: (float): More correct float->int conversion. 2006-06-02 14:07:42 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggdemux.c: Don't accidently send GST_CLOCK_TIME_NONE as a new segment start value. Fixes g-critical on tr... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_perform_seek): Don't accidently send GST_CLOCK_TIME_NONE as a new segment start value. Fixes g-critical on trying to play back ogg containing unknown codec. 2006-06-02 10:34:12 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybasebin.*: Make the subtitle detection work from any thread so we don't deadlock. Fixes #343397. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (group_create), (group_commit), (setup_source): * gst/playback/gstplaybasebin.h: Make the subtitle detection work from any thread so we don't deadlock. Fixes #343397. 2006-06-02 10:28:32 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/gdp/gstgdppay.c: add crc-header and crc-payload properties don't error out on some things that are recoverable Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_set_property), (gst_gdp_pay_get_property): add crc-header and crc-payload properties don't error out on some things that are recoverable * tests/check/elements/gdppay.c: (GST_START_TEST), (gdppay_suite): add test for crc 2006-06-02 09:17:07 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gsttcp.c: show type number when packet is of the wrong type Original commit message from CVS: show type number when packet is of the wrong type 2006-06-01 23:04:32 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/volume/Makefile.am: Seriously, it's not *that* hard to get compilation right. Even a drunk can do it ! Add LIBOI... Original commit message from CVS: * gst/volume/Makefile.am: Seriously, it's not *that* hard to get compilation right. Even a drunk can do it ! Add LIBOIL CFLAGS and LIBS 2006-06-01 22:00:23 +0000 Stefan Kost <ensonic@users.sourceforge.net> Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.h: * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbenc.h: * ext/amrwb/gstamrwbparse.h: * ext/arts/gst_arts.h: * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.h: * ext/audioresample/gstaudioresample.h: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.h: * ext/dirac/gstdiracdec.h: * ext/directfb/dfbvideosink.h: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.h: * ext/dts/gstdtsdec.h: * ext/faac/gstfaac.h: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.h: * ext/ivorbis/vorbisenc.h: * ext/libfame/gstlibfame.h: * ext/nas/nassink.h: * ext/neon/gstneonhttpsrc.h: * ext/polyp/polypsink.h: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.h: * ext/shout/gstshout.h: * ext/snapshot/gstsnapshot.h: * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.h: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.h: * ext/theora/theoradec.h: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.h: * ext/xine/gstxine.h: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.h: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstcdxastrip.h: * gst/colorspace/gstcolorspace.h: * gst/festival/gstfestival.h: * gst/freeze/gstfreeze.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/modplug/gstmodplug.h: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/multifilesink/gstmultifilesink.h: * gst/overlay/gstoverlay.h: * gst/playondemand/gstplayondemand.h: * gst/qtdemux/qtdemux.h: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.h: * gst/smooth/gstsmooth.h: * gst/smoothwave/gstsmoothwave.h: * gst/spectrum/gstspectrum.h: * gst/speed/gstspeed.h: * gst/stereo/gststereo.h: * gst/switch/gstswitch.h: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.h: * gst/videodrop/gstvideodrop.h: * gst/xingheader/gstxingmux.h: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.h: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.h: * sys/qcam/gstqcamsrc.h: * sys/vcd/vcdsrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-06-01 20:39:30 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/volume/gstvolume.*: rewrite the passthrough check, split _int16 and _int16_clamp, fix another property desc., rem... Original commit message from CVS: * gst/volume/gstvolume.c: (volume_choose_func), (volume_update_real_volume), (gst_volume_class_init), (gst_volume_init), (volume_process_float), (volume_process_int16), (volume_process_int16_clamp), (volume_set_caps), (volume_transform_ip), (plugin_init): * gst/volume/gstvolume.h: rewrite the passthrough check, split _int16 and _int16_clamp, fix another property desc., remove unused param from process function * tests/check/elements/volume.c: (volume_suite): reactivate the passthrough test 2006-06-01 19:19:51 +0000 Stefan Kost <ensonic@users.sourceforge.net> Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsa/gstalsamixerelement.h: * ext/alsa/gstalsamixeroptions.h: * ext/alsa/gstalsamixertrack.h: * ext/gnomevfs/gstgnomevfssink.h: * ext/gnomevfs/gstgnomevfssrc.h: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.h: * ext/theora/gsttheoraparse.h: * ext/vorbis/vorbisparse.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: * gst/audioconvert/gstaudioconvert.h: * gst/audioresample/gstaudioresample.h: * gst/audiotestsrc/gstaudiotestsrc.h: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: * gst/playback/gststreamselector.h: * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcpclientsink.h: * gst/tcp/gsttcpclientsrc.h: * gst/tcp/gsttcpserversink.h: * gst/tcp/gsttcpserversrc.h: * gst/videorate/gstvideorate.h: * gst/videoscale/gstvideoscale.h: * gst/videotestsrc/gstvideotestsrc.h: * gst/volume/gstvolume.h: * sys/v4l/gstv4ljpegsrc.h: * sys/v4l/gstv4lmjpegsink.h: * sys/v4l/gstv4lmjpegsrc.h: * sys/v4l/gstv4lsrc.h: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.h: * tests/old/testsuite/alsa/sinesrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-05-31 16:56:45 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: remove wrong commit Original commit message from CVS: remove wrong commit 2006-05-31 16:21:48 +0000 Wim Taymans <wim.taymans@gmail.com> ext/libvisual/visual.c: Handle DISCONT. Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_reset), (gst_visual_sink_setcaps), (gst_visual_sink_event), (gst_visual_src_event), (get_buffer), (gst_visual_chain): Handle DISCONT. Use running time before doing QoS. Handle mono too. 2006-05-31 14:17:30 +0000 Thomas Vander Stichele <thomas@apestaart.org> docs/libs/Makefile.am: set a magic variable to indicate we know the docs are incomplete Original commit message from CVS: * docs/libs/Makefile.am: set a magic variable to indicate we know the docs are incomplete 2006-05-30 20:33:59 +0000 Sébastien Moutte <sebastien@moutte.net> win32/common/libgstvideo.def: export gst_video_calculate_display_ratio Original commit message from CVS: * win32/common/libgstvideo.def: export gst_video_calculate_display_ratio * win32/vs6/libgstvideoscale.dsp: add link to libgstvideo-0.10.lib 2006-05-30 19:00:39 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Throw a more comprehensible error for rtsp:// URIs (rather than erroring out with a ne... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gen_source_element): Throw a more comprehensible error for rtsp:// URIs (rather than erroring out with a negotiation error later on) until we fix playbin to handle rtspsrc etc. 2006-05-30 16:09:36 +0000 Wim Taymans <wim.taymans@gmail.com> ext/pango/gsttextoverlay.c: Added some FIXMEs. Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_src_event), (gst_text_overlay_text_event): Added some FIXMEs. 2006-05-30 16:07:50 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.*: Implement release_request_pad. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_class_init), (gst_adder_init), (gst_adder_request_new_pad), (gst_adder_release_pad): * gst/adder/gstadder.h: Implement release_request_pad. Make padcounter atomic. * tests/check/elements/adder.c: (GST_START_TEST), (adder_suite): Added check for release_pad in adder. 2006-05-30 16:04:14 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Fix build again. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_chain_new_stream): Fix build again. 2006-05-30 14:59:24 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/ogg/gstoggdemux.c: add more debugging clean up printf formats for granulepos and serialno Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind), (gst_ogg_demux_chain_elem_pad), (gst_ogg_demux_queue_data), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_pad_submit_page), (gst_ogg_chain_new_stream), (gst_ogg_demux_seek), (gst_ogg_demux_get_data), (gst_ogg_demux_get_next_page), (gst_ogg_demux_do_seek), (gst_ogg_demux_bisect_forward_serialno), (gst_ogg_demux_read_chain), (gst_ogg_demux_find_chains), (gst_ogg_demux_chain), (gst_ogg_demux_loop), (gst_ogg_print): add more debugging clean up printf formats for granulepos and serialno 2006-05-30 14:31:43 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: * tests/check/generic/states.c: properly fail if we can't make an element Original commit message from CVS: properly fail if we can't make an element 2006-05-30 13:22:58 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisenc.*: Multi-channel caps negotiation, so we can do proper multichannel vorbis encoding, negotiated ... Original commit message from CVS: * ext/vorbis/vorbisenc.c: (raw_caps_factory), (gst_vorbis_enc_class_init), (gst_vorbis_enc_dispose), (gst_vorbis_enc_generate_sink_caps), (gst_vorbis_enc_sink_getcaps), (gst_vorbis_enc_init), (gst_vorbis_enc_buffer_from_header_packet), (gst_vorbis_enc_chain), (gst_vorbis_enc_change_state): * ext/vorbis/vorbisenc.h: Multi-channel caps negotiation, so we can do proper multichannel vorbis encoding, negotiated through audioconvert. 2006-05-30 11:45:52 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/elements/adder.c: Added check to show that #339935 is fixed with ongoing adder and collectpads fixes. Original commit message from CVS: * tests/check/elements/adder.c: (test_event_message_received), (test_play_twice_message_received), (GST_START_TEST), (adder_suite): Added check to show that #339935 is fixed with ongoing adder and collectpads fixes. 2006-05-29 17:19:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.c: Don't leak pad name. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_request_new_pad): Don't leak pad name. 2006-05-29 15:49:53 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.c: Fix adder seeking. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_query_duration), (forward_event_func), (forward_event), (gst_adder_src_event): Fix adder seeking. Make query/seeking code threadsafe. * tests/check/Makefile.am: * tests/check/elements/adder.c: (test_event_message_received), (GST_START_TEST), (test_play_twice_message_received): Fix adder test case. 2006-05-29 13:21:00 +0000 Young-Ho Cha <ganadist@chollian.net> gst/playback/gstplaybasebin.*: Add 'subtitle-encoding' property to playbin, so applications can force a subtitle enco... Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (gst_play_base_bin_init), (gst_play_base_bin_dispose), (set_encoding_element), (decodebin_element_added_cb), (decodebin_element_removed_cb), (setup_subtitle), (setup_source), (gst_play_base_bin_set_property), (gst_play_base_bin_get_property): * gst/playback/gstplaybasebin.h: Add 'subtitle-encoding' property to playbin, so applications can force a subtitle encoding for non-UTF8 subtitles (#342268). * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init), (gst_sub_parse_set_property): Rename recently-added 'encoding' property to 'subtitle-encoding' (so it can be proxied by playbin/decodebin in a generic way with less danger of false positives). 2006-05-29 11:04:48 +0000 Michael Smith <msmith@xiph.org> gst/audioconvert/gstaudioconvert.c: Patch from #341562: give more specific audio caps in get_caps, so that basetransf... Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (make_lossless_changes), (append_with_other_format), (set_structure_widths), (gst_audio_convert_transform_caps): Patch from #341562: give more specific audio caps in get_caps, so that basetransform can make better decisions on what caps to negotiate. 2006-05-28 20:04:12 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/volume.c: make it compile again Original commit message from CVS: * tests/check/elements/volume.c: make it compile again 2006-05-28 19:56:25 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/volume.c: disable test until #343196 gets resolved Original commit message from CVS: * tests/check/elements/volume.c: (volume_suite): disable test until #343196 gets resolved 2006-05-28 19:42:27 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/adder/gstadder.c: Make it easier to copy&paste Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_get_type): Make it easier to copy&paste * gst/volume/Makefile.am: * gst/volume/gstvolume.c: (volume_update_real_volume), (gst_volume_set_volume), (gst_volume_set_mute), (gst_volume_class_init), (volume_process_int16), (volume_set_caps), (volume_transform_ip), (volume_update_mute), (volume_update_volume): * gst/volume/gstvolume.h: Add own debug category, move duplicate code to helper function, fix property texts, add more comments and prepare ffor liboil-goodness * tests/check/Makefile.am: * tests/check/elements/volume.c: (GST_START_TEST), (volume_suite): add test for mute and passtrough case, be a bit more verbose to track failure * tests/check/generic/states.c: (GST_START_TEST): catch elements that fail to instantiate 2006-05-28 09:37:18 +0000 Edward Hervey <bilboed@bilboed.com> tests/check/pipelines/: Comment out tests using parse_launch() if core was built without parsing capabilities. Original commit message from CVS: * tests/check/pipelines/simple-launch-lines.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisenc.c: Comment out tests using parse_launch() if core was built without parsing capabilities. 2006-05-27 13:34:03 +0000 Edward Hervey <bilboed@bilboed.com> tests/check/Makefile.am: Extra bonus points for whoever explains to ensonic that you are meant to test unit tests tho... Original commit message from CVS: * tests/check/Makefile.am: Extra bonus points for whoever explains to ensonic that you are meant to test unit tests thoroughly before commiting them, especially if you know it's going to break. De-activated element/adder tests. 2006-05-27 13:09:16 +0000 Edward Hervey <bilboed@bilboed.com> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Marking caps conversion issues as GST_WARNING is way too verbose, Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_smpfmt_to_caps): Marking caps conversion issues as GST_WARNING is way too verbose, Moving them to GST_LOG. 2006-05-27 11:26:18 +0000 Tim-Philipp Müller <tim@centricular.net> README: Replace current README (containing the release notes from some 0.9.x version) with a proper README taken from... Original commit message from CVS: * README: Replace current README (containing the release notes from some 0.9.x version) with a proper README taken from the core. 2006-05-26 15:52:23 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Small cleanups. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_src_query), (vorbis_dec_src_event), (vorbis_dec_sink_event), (vorbis_do_clip), (vorbis_dec_push), (vorbis_handle_data_packet), (vorbis_dec_chain), (vorbis_dec_change_state): Small cleanups. Add some FIXMEs Clip output samples to segment boundaries. 2006-05-26 11:17:57 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/ximage/ximagesink.c: Improve the errors produced on bad output, including some human readable description strings. Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new), (gst_ximagesink_xcontext_get), (gst_ximagesink_show_frame): Improve the errors produced on bad output, including some human readable description strings. Handle the (theoretical for ximagesink) case where the XServer has a different idea about the size required for a particular frame and gives us too small a memory allocation. 2006-05-26 10:18:41 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: Mention bugs fixed by previous commit Original commit message from CVS: Mention bugs fixed by previous commit 2006-05-26 09:40:35 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/xvimage/xvimagesink.c: Improve the errors produced on bad output, including some human readable description strings. Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_xcontext_get), (gst_xvimagesink_get_format_from_caps), (gst_xvimagesink_setcaps), (gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc): Improve the errors produced on bad output, including some human readable description strings. Handle RGB Xv formats properly by transforming them into our big-endian caps description. Use gst_caps_truncate to ensure that we never try and choose a non-fixed caps in buffer_alloc. Handle the case where the XServer has a different idea about the size required for a particular frame and gives us too small a memory allocation. Use -1 to indicate 'no image format', because 0 is a valid XServer image format number. Put RGB Xv formats at the end of the caps, so that we always prefer YUV format frames. Iterate the available Xv Encodings to determine the maximum width and height, and then return that in our caps. 2006-05-25 16:50:17 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstdecodebin.c: When there is only one unfinished pad and it receives an event that doesn't match our re... Original commit message from CVS: * gst/playback/gstdecodebin.c: (remove_fakesink), (pad_probe): When there is only one unfinished pad and it receives an event that doesn't match our requirements, we need to set alldone=FALSE so that the fakesink is not removed yet. 2006-05-25 09:32:31 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstoggdemux.c: Use gst_type_find_helper_for_buffer() to find the type of stream from the first packet. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind): Use gst_type_find_helper_for_buffer() to find the type of stream from the first packet. * configure.ac: Bump requirements to core CVS (needed for vorbis typefinding to work). 2006-05-24 08:34:53 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Added the 'prfl' atom type which MQV (no, it's not a typo) files contain. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (qt_type_find): Added the 'prfl' atom type which MQV (no, it's not a typo) files contain. Else they play perfectly fine with qtdemux. 2006-05-23 20:38:56 +0000 Stefan Kost <ensonic@users.sourceforge.net> make more debug catagories static Original commit message from CVS: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/theora/theoraparse.c: (gst_theora_parse_class_init): * gst/audiorate/gstaudiorate.c: make more debug catagories static * tests/check/Makefile.am: * tests/check/elements/adder.c: (message_received), (test_event_message_received), (GST_START_TEST), (test_play_twice_message_received), (adder_suite): added test case for using element twice, extra bonus points for anyone who can make these test run reliably 2006-05-23 15:18:40 +0000 Tim-Philipp Müller <tim@centricular.net> ext/theora/theoradec.c: Make work with time-stamped input buffers that do not have a granulepos in BUFFER_OFFSET_END ... Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_chain): Make work with time-stamped input buffers that do not have a granulepos in BUFFER_OFFSET_END (like theora buffers coming from matroskademux). Fixes #342448. 2006-05-22 15:53:07 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/gdp/: Handle error cases when calling functions do downwards state change after parent's change_state Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain), (gst_gdp_depay_change_state): * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: Handle error cases when calling functions do downwards state change after parent's change_state * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/gdppay.c: (GST_START_TEST): clean up more 2006-05-22 13:25:52 +0000 Thomas Vander Stichele <thomas@apestaart.org> adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out. Original commit message from CVS: * gst/gdp/Makefile.am: * gst/gdp/gstgdp.c: (plugin_init): * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_base_init), (gst_gdp_depay_class_init), (gst_gdp_depay_init), (gst_gdp_depay_finalize), (gst_gdp_depay_chain), (gst_gdp_depay_change_state), (gst_gdp_depay_plugin_init): * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: (gst_gdp_pay_base_init), (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_pay_dispose), (gst_gdp_stamp_buffer), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_queue_buffer), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_change_state), (gst_gdp_pay_plugin_init): * gst/gdp/gstgdppay.h: * tests/check/Makefile.am: * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (cleanup_gdpdepay), (gdpdepay_push_per_byte), (GST_START_TEST), (setup_gdpdepay_streamheader), (gdpdepay_suite), (main): * tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay), (GST_START_TEST), (setup_gdppay_streamheader), (gdppay_suite), (main): adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out. 2006-05-22 11:42:03 +0000 Peter Kjellerstedt <pkj@axis.com> gst/tcp/Makefile.am: fdstresstest doesn't need Gtk+, fix compilation if gtk is not available (#342566). Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst/tcp/Makefile.am: fdstresstest doesn't need Gtk+, fix compilation if gtk is not available (#342566). 2006-05-19 17:57:56 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpaudiopayload.c: 80 line columns Original commit message from CVS: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: 80 line columns Removed redundant floor() 2006-05-19 15:00:43 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-read.c: On second thought, just skip JUNK chunks automatically, so the caller doesn't have to ... Original commit message from CVS: * gst-libs/gst/riff/riff-read.c: (gst_riff_read_chunk): On second thought, just skip JUNK chunks automatically, so the caller doesn't have to handle this. Fixes #342345. Also, return GST_FLOW_UNEXPECTED if we get a short read, not GST_FLOW_ERROR. 2006-05-19 13:37:55 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-read.c: Don't bail out on JUNK chunks with a size of 0 (would try to pull_range 0 bytes before... Original commit message from CVS: * gst-libs/gst/riff/riff-read.c: (gst_riff_read_chunk): Don't bail out on JUNK chunks with a size of 0 (would try to pull_range 0 bytes before, which sources don't like too much). See #342345. 2006-05-19 13:02:46 +0000 Jan Schmidt <thaytan@mad.scientist.com> Use the gstutil scaling function to preserve 64 bits while calculating output width and height from the display-aspec... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (gst_video_scale_fixate_caps): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps): Use the gstutil scaling function to preserve 64 bits while calculating output width and height from the display-aspect-ratio. (A continuation of #341542) 2006-05-19 11:50:17 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/xvimage/xvimagesink.*: When performing buffer allocations, remember the caps and image format we return so that i... Original commit message from CVS: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_clear), (gst_xvimagesink_buffer_alloc): * sys/xvimage/xvimagesink.h: When performing buffer allocations, remember the caps and image format we return so that if the same caps are asked for next time we can return them immediately without doing any caps intersections. 2006-05-18 23:00:02 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/README: Some new documentation Original commit message from CVS: 2006-05-18 Philippe Kalaf <philippe.kalaf@collabora.co.uk> * gst-libs/gst/rtp/README: Some new documentation * gst-libs/gst/rtp/gstrtpbuffer.h: Added GST_RTP_PAYLOAD_DYNAMIC_STRING for use by children * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: New RTP audio base payloader class. Supports frame or sample based codecs. Not enabled in Makefile.am until approved. 2006-05-18 20:30:26 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/elements/alsa.c: Fix test case: don't try to free NULL GValueArray when there are no devices. Original commit message from CVS: * tests/check/elements/alsa.c: (test_device_property_probe): Fix test case: don't try to free NULL GValueArray when there are no devices. 2006-05-18 19:21:53 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/: Add simple test that runs a device property probe on alsasrc, alsasink and alsamixer. Disable valgrind ... Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/alsa.c: (test_device_property_probe), (alsa_suite), (main): Add simple test that runs a device property probe on alsasrc, alsasink and alsamixer. Disable valgrind check for now (too many leaks in libasound, and valgrind ignored my suppressions additions). 2006-05-18 17:19:39 +0000 Martin Szulecki <gnomebugzilla@sukimashita.com> ext/alsa/: Clean up and simplify alsa device probing. Make it actually work for multiple classes. Don't cache results... Original commit message from CVS: * ext/alsa/gstalsadeviceprobe.c: (gst_alsa_get_device_list), (gst_alsa_device_property_probe_probe_property), (gst_alsa_device_property_probe_needs_probe), (gst_alsa_device_property_probe_get_values), (gst_alsa_type_add_device_property_probe_interface): * ext/alsa/gstalsadeviceprobe.h: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_init_interfaces): * ext/alsa/gstalsamixerelement.h: Clean up and simplify alsa device probing. Make it actually work for multiple classes. Don't cache results any longer. * ext/alsa/gstalsasink.c: (gst_alsasink_init_interfaces), (gst_alsasink_init): * ext/alsa/gstalsasrc.c: (gst_alsasrc_dispose), (gst_alsasrc_interface_supported), (gst_implements_interface_init), (gst_alsasrc_init_interfaces), (gst_alsasrc_set_property): Make alsasink and alsasrc implement the GstPropertyProbe interface for device probing (#342181). Patch by: Martin Szulecki <gnomebugzilla at sukimashita com> 2006-05-18 10:05:23 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/samiparse.c: Don't ignore return value of strtol (++compiler_happiness). Original commit message from CVS: * gst/subparse/samiparse.c: (handle_start_font): Don't ignore return value of strtol (++compiler_happiness). 2006-05-17 17:49:10 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/gstsubparse.*: Add 'encoding' property (#341681). Original commit message from CVS: Patch by: Young-Ho Cha <ganadist chollian net> * gst/subparse/gstsubparse.c: (gst_sub_parse_dispose), (gst_sub_parse_class_init), (gst_sub_parse_init), (gst_sub_parse_set_property), (gst_sub_parse_get_property), (convert_encoding): * gst/subparse/gstsubparse.h: Add 'encoding' property (#341681). * gst/subparse/samiparse.c: (characters_sami): Output is pango markup, so we need to escape text between tags (#342143). 2006-05-16 17:34:14 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: It's okay to have caps with channels=1 and a channel position different from GST_A... Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_check_channel_positions): It's okay to have caps with channels=1 and a channel position different from GST_AUDIO_CHANNEL_POSITION_FRONT_MONO (deinterleavers might want to keep the position in the caps, so that they can be re-interleaved again properly later). Leave check for unexpected 2-channel layouts intact for now. 2006-05-16 16:28:10 +0000 Zaheer Abbas Merali <zaheerabbas@merali.org> gst/tcp/gsttcp.c: Return GST_FLOW_UNEXPECTED when we have an eos on the socket so basesrc can do its job correctly. Original commit message from CVS: 2006-05-16 Zaheer Abbas Merali <zaheerabbas at merali dot org> * gst/tcp/gsttcp.c: (gst_tcp_socket_read): Return GST_FLOW_UNEXPECTED when we have an eos on the socket so basesrc can do its job correctly. 2006-05-16 15:52:17 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/: Refactor and improve caps probing code: probe signedness when we probe the supported formats/widths; set e... Original commit message from CVS: * ext/alsa/Makefile.am: * ext/alsa/gstalsa.c: (gst_alsa_detect_rates), (gst_alsa_detect_formats), (get_channel_free_structure), (caps_add_channel_configuration), (gst_alsa_detect_channels), (gst_alsa_probe_supported_formats): * ext/alsa/gstalsa.h: * ext/alsa/gstalsasink.c: (gst_alsasink_getcaps): Refactor and improve caps probing code: probe signedness when we probe the supported formats/widths; set endianness to the one we actually probed for (ie. cpu endianness). * ext/alsa/gstalsasrc.c: (gst_alsasrc_init), (gst_alsasrc_getcaps), (gst_alsasrc_close): * ext/alsa/gstalsasrc.h: Implement caps probing for alsasrc. 2006-05-15 17:42:19 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Cleanups, add some G_LIKELY. Original commit message from CVS: * ext/theora/theoradec.c: (gst_theora_dec_reset), (theora_dec_src_query), (theora_dec_src_event), (theora_dec_sink_event), (theora_handle_comment_packet), (theora_handle_data_packet), (theora_dec_change_state): Cleanups, add some G_LIKELY. Use segment helpers instead of our own wrong code. Clear queued buffers on seek and READY. * ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset), (vorbis_dec_convert), (vorbis_dec_src_query), (vorbis_dec_src_event), (vorbis_dec_sink_event), (vorbis_handle_comment_packet), (vorbis_dec_push), (vorbis_handle_data_packet), (vorbis_dec_chain), (vorbis_dec_change_state): * ext/vorbis/vorbisdec.h: Remove old useless packetno variable. Do position query properly. Add some G_LIKELY. Do cleanup of queued buffers in new helper function and use it. 2006-05-15 17:17:22 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsasink.c: Query supported sample rates. Fixes #341732. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_getcaps): Query supported sample rates. Fixes #341732. 2006-05-15 17:01:02 +0000 Julien Moutte <julien@moutte.net> gst/playback/gstdecodebin.c: Make decodebin reusable when going from PAUSE_TO_READY and then back to PAUSED. Original commit message from CVS: 2006-05-15 Julien MOUTTE <julien@moutte.net> * gst/playback/gstdecodebin.c: (cleanup_decodebin), (gst_decode_bin_change_state): Make decodebin reusable when going from PAUSE_TO_READY and then back to PAUSED. Fixes #331678. 2006-05-15 16:49:31 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Cleanups. Use refcounting and DEBUG_OBJECT. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_get_query_types), (vorbis_dec_convert), (vorbis_dec_src_query), (vorbis_dec_sink_query), (vorbis_dec_src_event), (vorbis_dec_sink_event), (vorbis_handle_identification_packet), (vorbis_dec_clean_queued), (vorbis_dec_push), (vorbis_handle_data_packet), (vorbis_dec_change_state): Cleanups. Use refcounting and DEBUG_OBJECT. Reset segment on flush, use code methods instead of our own wrong version. Fix potential memleak. 2006-05-15 16:46:44 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsasink.*: Don't leak allocated snd_output_t structure if there's more than one alsasink instance at a t... Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_finalise), (gst_alsasink_init): * ext/alsa/gstalsasink.h: Don't leak allocated snd_output_t structure if there's more than one alsasink instance at a time (#341873). Also fix GObject macros in header file. 2006-05-15 15:31:30 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Don't use libxml functions in the typefinding code. Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect): Don't use libxml functions in the typefinding code. 2006-05-15 15:01:08 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Fix seeking performance in the case where a non-header packet has a 0 granulepos (busted theor... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet): Fix seeking performance in the case where a non-header packet has a 0 granulepos (busted theora case). Fixes #341719 2006-05-15 14:19:35 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Improve SAMI typefinding: handle case where there are whitespaces or newlines in front of... Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect): Improve SAMI typefinding: handle case where there are whitespaces or newlines in front of the first <SAMI> tag (#169936). 2006-05-15 12:18:13 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Build video4linux plugin even if there's no XVIDEO, just without implementing the GstXOverlay interface... Original commit message from CVS: * configure.ac: Build video4linux plugin even if there's no XVIDEO, just without implementing the GstXOverlay interface (#334002). 2006-05-15 10:17:04 +0000 Tim-Philipp Müller <tim@centricular.net> Add tentative support for libvisual-0.4 (#336881). Original commit message from CVS: * configure.ac: * ext/libvisual/visual.c: (gst_visual_actor_plugin_is_gl), (plugin_init): Add tentative support for libvisual-0.4 (#336881). 2006-05-15 09:41:03 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/samiparse.c: Need to map "silver" colour explicitly (#169936). Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst/subparse/samiparse.c: (handle_start_font): Need to map "silver" colour explicitly (#169936). 2006-05-15 09:14:35 +0000 Young-Ho Cha <ganadist@chollian.net> gst/subparse/: Add support for SAMI subtitles (#169936). Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: (gst_sub_parse_dispose), (parser_state_dispose), (gst_sub_parse_data_format_autodetect), (gst_sub_parse_format_autodetect), (feed_textbuf), (gst_subparse_type_find), (plugin_init): * gst/subparse/gstsubparse.h: * gst/subparse/samiparse.c: * gst/subparse/samiparse.h: Add support for SAMI subtitles (#169936). 2006-05-14 21:18:58 +0000 Thomas Vander Stichele <thomas@apestaart.org> * win32/common/config.h: update config.h Original commit message from CVS: update config.h 2006-05-14 21:18:16 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/README: fix mistakes in README Original commit message from CVS: fix mistakes in README 2006-05-14 18:15:17 +0000 Michael Smith <msmith@xiph.org> gst/audioconvert/gstchannelmix.c: Fix #341696: crash when mixing L+R+C to mono or stereo. Original commit message from CVS: * gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_others): Fix #341696: crash when mixing L+R+C to mono or stereo. * tests/check/Makefile.am: * tests/check/elements/audioconvert.c: (set_channel_positions), (get_float_mc_caps), (get_int_mc_caps), (GST_START_TEST), (audioconvert_suite): Add test for the above, including some generic framework bits for testing multichannel things. 2006-05-14 16:05:47 +0000 Jan Schmidt <thaytan@mad.scientist.com> * configure.ac: Back to CVS Original commit message from CVS: Back to CVS === release 0.10.7 === 2006-05-14 16:00:57 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: releasing 0.10.7, "Leave the gun" Original commit message from CVS: 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com> * configure.ac: releasing 0.10.7, "Leave the gun" 2006-05-14 15:55:16 +0000 Jan Schmidt <thaytan@mad.scientist.com> * common: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-05-12 22:22:37 +0000 Jan Schmidt <thaytan@mad.scientist.com> Fix the build. Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (gst_video_scale_fixate_caps): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps): Fix the build. 2006-05-12 21:30:00 +0000 Jan Schmidt <thaytan@mad.scientist.com> Fix integer overflow problem with pixel-aspect-ratio calculations in videoscale and xvimagesink (#341542) Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/video/video.c: (gst_video_calculate_display_ratio): * gst-libs/gst/video/video.h: * gst/videoscale/Makefile.am: * gst/videoscale/gstvideoscale.c: (gst_video_scale_fixate_caps): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps): * tests/check/Makefile.am: * tests/check/libs/video.c: (GST_START_TEST), (video_suite), (main): Fix integer overflow problem with pixel-aspect-ratio calculations in videoscale and xvimagesink (#341542) 2006-05-12 16:56:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstid3tag.c: Map GST_IMAGE_TAG to and from ID2v2 APIC frames (#341557). Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: Map GST_IMAGE_TAG to and from ID2v2 APIC frames (#341557). 2006-05-12 10:39:08 +0000 Sébastien Moutte <sebastien@moutte.net> win32/MANIFEST: update win32 files listing Original commit message from CVS: * win32/MANIFEST: update win32 files listing 2006-05-11 21:47:01 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: disable failing check on gentoo64 Original commit message from CVS: disable failing check on gentoo64 2006-05-11 21:35:44 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: disable failing check on gentoo64 Original commit message from CVS: disable failing check on gentoo64 2006-05-11 21:20:20 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: macros show the correct line Original commit message from CVS: macros show the correct line 2006-05-11 21:04:08 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: macros show the correct line Original commit message from CVS: macros show the correct line 2006-05-11 21:01:05 +0000 Sjoerd Simons <sjoerd@luon.net> gst/playback/gstplaybasebin.*: API: GstPlayBaseBin::stream-info-value-array property use a more bindings-friendly way... Original commit message from CVS: 2006-05-11 Thomas Vander Stichele <thomas at apestaart dot org> patch by: Sjoerd Simons (sjoerd@luon.net) * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (group_create), (group_destroy), (add_stream), (gst_play_base_bin_get_property), (gst_play_base_bin_get_streaminfo_value_array): * gst/playback/gstplaybasebin.h: API: GstPlayBaseBin::stream-info-value-array property use a more bindings-friendly way of exposing streaminfo using a GValueArray. Tested in ipython. Closes #341114 2006-05-11 19:44:06 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: fix some type warnings Original commit message from CVS: fix some type warnings 2006-05-11 19:38:22 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Also catch queue underruns but don't do anything yet. Original commit message from CVS: * gst/playback/gstdecodebin.c: (try_to_link_1), (queue_enlarge), (queue_underrun_cb), (queue_filled_cb): Also catch queue underruns but don't do anything yet. Refactor and comment queue enlarging code a bit. * gst/playback/gstplaybasebin.c: (queue_overrun), (queue_threshold_reached), (queue_out_of_data), (gen_preroll_element): If a queue over/underruns check that we don't create nasty deadlocks when the min-threshold is not reached but the max-bytes is. In those cases disable max-bytes when we know that the queue is fed timed data. Add more comments. 2006-05-11 18:06:18 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Make playbin automatically plug an 'audioresample' element before the audio sink as well. ... Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_audio_element): Make playbin automatically plug an 'audioresample' element before the audio sink as well. This solves problems with sinks that only accept a very specific sample rate, like esdsink (e.g. #340379). 2006-05-11 16:04:28 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Make http sources send special headers so that we receive icecast metadata if the http... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gen_source_element): Make http sources send special headers so that we receive icecast metadata if the http stream is an icecast stream (otherwise the server will just ignore them). This also means that from now on users will need the 'icydemux' element from gst-plugins-good installed if they want to listen to icecast radio streams. (#341432, #333657). 2006-05-11 12:34:53 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: more commenting Original commit message from CVS: more commenting 2006-05-11 11:40:39 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/gstmultifdsink.c: remove stupid example from docs - it should come with a simple Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_remove_client_link), (gst_multi_fd_sink_new_client), (gst_multi_fd_sink_stop): remove stupid example from docs - it should come with a simple C program instead. Clean up/fix docs * tests/check/elements/multifdsink.c: (wait_bytes_served), (fail_if_can_read), (GST_START_TEST), (gst_multifdsink_create_streamheader), (multifdsink_suite): add a test for changing streamheader which exposes a bug in multifdsink 2006-05-11 10:33:46 +0000 Michael Smith <msmith@xiph.org> ext/gnomevfs/gstgnomevfssrc.*: Don't set icy-caps unless we have a sane interval value. Move interval to a local vari... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_init), (gst_gnome_vfs_src_received_headers_callback): * ext/gnomevfs/gstgnomevfssrc.h: Don't set icy-caps unless we have a sane interval value. Move interval to a local variable; we never use it outside this function. 2006-05-11 10:14:20 +0000 Wim Taymans <wim.taymans@gmail.com> sys/: Register special buffer types along with the objects so that they are not registered at runtime from N differen... Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_get_type): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_type): Register special buffer types along with the objects so that they are not registered at runtime from N different streaming threads since they are not threadsafe. 2006-05-10 18:31:27 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/multifdsink.c: set caps and plug leaks Original commit message from CVS: set caps and plug leaks 2006-05-10 18:16:23 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/elements/multifdsink.c: add two more tests, one doing streamheader Original commit message from CVS: * tests/check/elements/multifdsink.c: (wait_bytes_served), (GST_START_TEST), (fail_unless_read), (multifdsink_suite): add two more tests, one doing streamheader 2006-05-10 16:34:06 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/tcp/gstmultifdsink.c: clean up the bufqueue when shutting down Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_stop): clean up the bufqueue when shutting down * tests/check/Makefile.am: * tests/check/elements/multifdsink.c: (setup_multifdsink), (cleanup_multifdsink), (GST_START_TEST), (multifdsink_suite), (main): add a test for the leak that was just fixed 2006-05-10 15:16:33 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: DEBUG_FUNCPTR'ing Original commit message from CVS: DEBUG_FUNCPTR'ing 2006-05-10 15:14:30 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: whitespace fixes Original commit message from CVS: whitespace fixes 2006-05-10 11:54:36 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.*: Updated some docs. Added comments and FIXMEs all over the place. Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_setcaps), (gst_adder_query_duration), (gst_adder_query), (forward_event), (gst_adder_src_event), (gst_adder_sink_event), (gst_adder_class_init), (gst_adder_finalize), (gst_adder_request_new_pad), (gst_adder_collected): * gst/adder/gstadder.h: Updated some docs. Added comments and FIXMEs all over the place. Improve debugging info. Fix leak on finalize by not calling the parent. Implement duration query. Make event forwarding threadsafe. Correctly send NEWSEGMENT at start and after flush. Handle EOS correctly. Post error when not negotiated. * tests/check/elements/adder.c: (GST_START_TEST): Added FIXME in the test. 2006-05-09 19:24:46 +0000 Tim-Philipp Müller <tim@centricular.net> Const-ify GEnumValue and GFlagsValue arrays. Use Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type), (gst_text_overlay_halign_get_type), (gst_text_overlay_wrap_mode_get_type): * ext/theora/theoradec.c: (theora_handle_type_packet), (theora_handle_data_packet): * ext/theora/theoraenc.c: (gst_border_mode_get_type), (theora_enc_sink_setcaps), (theora_enc_chain): * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_mode_get_type): * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audiostestsrc_wave_get_type): * gst/playback/gststreaminfo.c: (gst_stream_type_get_type): * gst/tcp/gstfdset.c: (gst_fdset_mode_get_type): * gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type), (gst_sync_method_get_type), (gst_unit_type_get_type), (gst_client_status_get_type): * gst/videoscale/gstvideoscale.c: (gst_video_scale_method_get_type): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_pattern_get_type): * gst/videotestsrc/videotestsrc.c: (paint_setup_I420), (paint_setup_YV12), (paint_setup_YUY2), (paint_setup_UYVY), (paint_setup_YVYU), (paint_setup_IYU2), (paint_setup_Y41B), (paint_setup_Y42B), (paint_setup_Y800), (paint_setup_YVU9), (paint_setup_YUV9), (paint_setup_RGB888), (paint_setup_BGR888), (paint_setup_RGB565), (paint_setup_xRGB1555): Const-ify GEnumValue and GFlagsValue arrays. Use GST_ROUND_UP_* macros instead of home-made ones. 2006-05-09 17:40:41 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Require core CVS for the new newsegment stuff. Original commit message from CVS: * configure.ac: Require core CVS for the new newsegment stuff. 2006-05-09 17:30:48 +0000 Sjoerd Simons <sjoerd@luon.net> gst/tcp/gstmultifdsink.c: Register nick for enum value (#341160). Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon net> * gst/tcp/gstmultifdsink.c: (gst_client_status_get_type): Register nick for enum value (#341160). 2006-05-09 16:46:23 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/typefind/gsttypefindfunctions.c: backout typefind patch #340375 Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (m4a_type_find), (plugin_init): backout typefind patch #340375 * tests/check/elements/adder.c: (message_received), (GST_START_TEST), (adder_suite): redo, signal-handling of test 2006-05-09 16:14:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst/adder/gstadder.*: Remove bogus segment merging and forwarding, we don't care about timestamps anyway and we just ... Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_request_new_pad), (gst_adder_collected): * gst/adder/gstadder.h: Remove bogus segment merging and forwarding, we don't care about timestamps anyway and we just produce a continuous stream. Also create a nice NEWSEGMENT event when we start. Use _scale_int some more. 2006-05-09 11:59:13 +0000 Edward Hervey <bilboed@bilboed.com> tests/icles/stress-xoverlay.c: Fix if core was built without parsing support. Original commit message from CVS: * tests/icles/stress-xoverlay.c: Fix if core was built without parsing support. 2006-05-09 11:37:22 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Add SEDG (Samsung MPEG-4) fourcc. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Add SEDG (Samsung MPEG-4) fourcc. 2006-05-09 11:31:47 +0000 Edward Hervey <bilboed@bilboed.com> tests/examples/volume/volume.c: Fox if core was built without parsing support. Original commit message from CVS: * tests/examples/volume/volume.c: Fox if core was built without parsing support. * tests/examples/seek/seek.c: Disable the parse_launch example if core was built without parsing support. 2006-05-09 11:21:24 +0000 Edward Hervey <bilboed@bilboed.com> tests/examples/seek/seek.c: Disable the parse_launch example if core was built without parsing support. Original commit message from CVS: * tests/examples/seek/seek.c: Disable the parse_launch example if core was built without parsing support. 2006-05-08 15:51:15 +0000 Thomas Vander Stichele <thomas@apestaart.org> * docs/libs/tmpl/gstcolorbalance.sgml: * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst/tcp/gstmultifdsink.c: * gst/videoscale/gstvideoscale.c: doc reparagraphing and DEBUG_FUNCPTRing Original commit message from CVS: doc reparagraphing and DEBUG_FUNCPTRing 2006-05-08 11:51:43 +0000 Edward Hervey <bilboed@bilboed.com> autogen.sh: libtoolize on Darwin/MacOSX is called glibtoolize Original commit message from CVS: * autogen.sh: (CONFIGURE_DEF_OPT): libtoolize on Darwin/MacOSX is called glibtoolize 2006-05-07 17:39:04 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/: Disable the adder test, until the build-slaves posses the kindness to either like it or to give valid r... Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/adder.c: (event_loop), (GST_START_TEST): Disable the adder test, until the build-slaves posses the kindness to either like it or to give valid reason for not doing so 2006-05-07 17:25:56 +0000 Stefan Kost <ensonic@users.sourceforge.net> tests/check/elements/adder.c: Shuffle NULL state change around and raise timeout more Original commit message from CVS: * tests/check/elements/adder.c: (event_loop), (GST_START_TEST), (adder_suite): Shuffle NULL state change around and raise timeout more 2006-05-07 17:07:03 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/typefind/gsttypefindfunctions.c: Add typefind to distinguish between "audio/x-m4a" and new type "video/mp4". Fixe... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp4_find_box), (mp4_type_find), (plugin_init): Add typefind to distinguish between "audio/x-m4a" and new type "video/mp4". Fixes #340375 * tests/check/elements/adder.c: (adder_suite): Raise timeout to make buildbot happy 2006-05-07 16:39:36 +0000 Stefan Kost <ensonic@users.sourceforge.net> Add sink-event handling to adder. It tries to merge incomming newsegment-events. Added test to check if segment_done ... Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_sink_event), (gst_adder_request_new_pad), (gst_adder_change_state): * gst/adder/gstadder.h: * tests/check/Makefile.am: * tests/check/elements/adder.c: (event_loop), (GST_START_TEST), (adder_suite), (main): Add sink-event handling to adder. It tries to merge incomming newsegment-events. Added test to check if segment_done is comming through. 2006-05-05 16:34:15 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * ext/theora/theoraparse.c: * ext/vorbis/vorbisparse.c: ext/theora/theoraparse.c (gst_theora_parse_init) ext/vorbis/vorbisparse.c (gst_vorbis_parse_init) Original commit message from CVS: 2006-05-05 Andy Wingo <wingo@pobox.com> * ext/theora/theoraparse.c (gst_theora_parse_init) (theora_parse_src_convert, theora_parse_src_query): * ext/vorbis/vorbisparse.c (gst_vorbis_parse_init) (vorbis_parse_convert, vorbis_parse_src_query): Add convert and query functions on the source pads of the theora and vorbis parse elements. Fixes position querying when doing a remux. 2006-05-05 13:46:37 +0000 Michael Smith <msmith@xiph.org> ext/theora/theoraparse.c: Fix flushing. Original commit message from CVS: * ext/theora/theoraparse.c: (parse_granulepos), (theora_parse_drain_queue_prematurely), (theora_parse_queue_buffer), (theora_parse_sink_event): Fix flushing. Fix invalid granulepos outputs when starting with a non-keyframe. 2006-05-05 12:37:35 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/typefind/gsttypefindfunctions.c: Rearrange MPEG system stream detection, fixing some memleaks in the process. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg2_sys_type_find), (mpeg1_sys_type_find), (ogganx_type_find), (sw_data_destroy): Rearrange MPEG system stream detection, fixing some memleaks in the process. Constify the data for STARTS_WITH and RIFF helper handlers. Make sure they clean up their data correctly. Remove unused ogganx caps and move the 'is_annodex' check to inside the 'is_ogg' if statement. 2006-05-05 11:33:37 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstdecodebin.c: Properly remove ghostpads. Fixes #340392 Original commit message from CVS: * gst/playback/gstdecodebin.c: (cleanup_decodebin): Properly remove ghostpads. Fixes #340392 2006-05-04 18:43:58 +0000 David Schleef <ds@schleef.org> gst/typefind/gsttypefindfunctions.c: Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: 2006-05-03 16:32:19 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/typefind/gsttypefindfunctions.c: When typefinding an MP3 in push-based mode, don't penalise the probability down ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (mpeg_ts_probe_headers), (mpeg_ts_type_find): When typefinding an MP3 in push-based mode, don't penalise the probability down to 74% when we found 5 valid frames just because we can't peek the end of the file. Make the probability for detecting MPEG Transport Streams based on the number of sequential headers we successfully detected. 2006-05-03 15:52:46 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Still produce an error when we receive an empty packet. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event), (vorbis_dec_push), (vorbis_dec_chain): Still produce an error when we receive an empty packet. 2006-05-03 15:34:48 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Mark buffers with DISCONT after seek and after activating new chains. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer), (gst_ogg_chain_mark_discont), (gst_ogg_chain_new_stream), (gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek): Mark buffers with DISCONT after seek and after activating new chains. * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_reset), (theora_get_query_types), (theora_dec_sink_event), (theora_dec_push), (theora_handle_data_packet), (theora_dec_chain), (theora_dec_change_state): Fix frame counter. Detect and mark DISCONT buffers. * ext/vorbis/vorbisdec.c: (vorbis_dec_src_query), (vorbis_dec_sink_event), (vorbis_dec_push), (vorbis_dec_chain), (vorbis_dec_change_state): * ext/vorbis/vorbisdec.h: Use GstSegment. Detect and mark DISCONT buffers. Don't crash on 0 sized buffers. 2006-05-03 08:58:13 +0000 Wim Taymans <wim.taymans@gmail.com> gst/volume/gstvolume.c: Increase "volume" property to 10.0. Fixes #340369. Original commit message from CVS: * gst/volume/gstvolume.c: (volume_funcfind), (volume_set_caps), (volume_transform_ip): Increase "volume" property to 10.0. Fixes #340369. Set the process function to NULL when capsnego fails so that we properly error out. 2006-05-02 18:15:25 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/playback/: free cpas using gst_caps_unref, don't leak caps-strings Original commit message from CVS: * gst/playback/gstplaybin.c: (add_sink): * gst/playback/test.c: (main): * gst/playback/test5.c: (dump_element_stats): * gst/playback/test6.c: (main): free cpas using gst_caps_unref, don't leak caps-strings 2006-05-02 06:33:54 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst-libs/gst/rtp/gstbasertppayload.c: some RTP debug Original commit message from CVS: some RTP debug 2006-05-01 19:08:40 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Refine musepack typefinding a bit. Return MAXIMUM probability when we detect str... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (musepack_type_find), (plugin_init): Refine musepack typefinding a bit. Return MAXIMUM probability when we detect stream version 7 to make sure the mpeg audio typefinder doesn't trump us. 2006-04-29 16:25:58 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Protect against unexpected NULL strf_data buffer. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Protect against unexpected NULL strf_data buffer. 2006-04-29 13:09:52 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/elements/audioconvert.c: interpret the out[] buffer in the order the bytes are actually put in, which is ... Original commit message from CVS: * tests/check/elements/audioconvert.c: (verify_convert), (GST_START_TEST): interpret the out[] buffer in the order the bytes are actually put in, which is LITTLE_ENDIAN, not BYTE_ORDER. Other tests should use BYTE_ORDER since the array is filled in with actual values 2006-04-29 12:10:52 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/elements/audioconvert.c: dump expected data when audioconvert test fails Original commit message from CVS: dump expected data when audioconvert test fails 2006-04-29 11:55:09 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/elements/audioconvert.c: when a test fails, give an indication of which it is Original commit message from CVS: * tests/check/elements/audioconvert.c: (verify_convert), (GST_START_TEST): when a test fails, give an indication of which it is 2006-04-29 09:48:16 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: * ext/theora/theoraenc.c: add another include Original commit message from CVS: add another include 2006-04-29 01:24:31 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/subparse/gstssaparse.c: atoi() needs stdlib.h Original commit message from CVS: atoi() needs stdlib.h 2006-04-29 01:18:05 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/playback/test4.c: * gst/playback/test5.c: * gst/playback/test6.c: exit needs stdlib.h Original commit message from CVS: exit needs stdlib.h 2006-04-29 01:10:34 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst-libs/gst/cdda/gstcddabasesrc.c: compile fix; strtol() needs <stdlib.h> Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: compile fix; strtol() needs <stdlib.h> 2006-04-29 01:04:51 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * common: * docs/Makefile.am: * docs/libs/Makefile.am: * docs/libs/tmpl/gstcolorbalance.sgml: * docs/plugins/Makefile.am: * docs/upload.mak: use common upload.mak Original commit message from CVS: use common upload.mak 2006-04-28 19:46:37 +0000 Stefan Kost <ensonic@users.sourceforge.net> make GstElementDetails const Original commit message from CVS: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsasrc.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofiltertemplate.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/playback/gstdecodebin.c: * gst/playback/gstplaybin.c: * gst/playback/gststreamselector.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/typefind/gsttypefindfunctions.c: (plugin_init): * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/v4l/gstv4ljpegsrc.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsrc.c: * sys/v4l/gstv4lsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/libs/cddabasesrc.c: make GstElementDetails const 2006-04-28 19:17:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/adder/gstadder.c: send events from src-pad to all sink-pads fixes #338657 Original commit message from CVS: * gst/adder/gstadder.c: (gst_adder_setcaps), (gst_adder_src_event), (gst_adder_init): send events from src-pad to all sink-pads fixes #338657 2006-04-28 19:08:34 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/alsa/gstalsasink.c: query witdh capabilities from alsa, fixes #338919 Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_getcaps), (alsasink_parse_spec): query witdh capabilities from alsa, fixes #338919 2006-04-28 15:31:28 +0000 Wim Taymans <wim.taymans@gmail.com> gst/tcp/gstmultifdsink.*: Fix race condition in multifdsink that can lead to spurious duplicate clients. this patch a... Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init), (gst_multi_fd_sink_remove_client_link): * gst/tcp/gstmultifdsink.h: Fix race condition in multifdsink that can lead to spurious duplicate clients. this patch adds a new signal that is fired when multifdsink has removed all references to the fd. Fixes #339574. Updated documentation. API: client-fd-removed signal added 2006-04-28 15:24:00 +0000 Michael Smith <msmith@xiph.org> gst/tcp/gstmultifdsink.c: When asking g_value_array_new to prealloc elements, we may as well ask for the right number... Original commit message from CVS: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_get_stats): When asking g_value_array_new to prealloc elements, we may as well ask for the right number of elements. 2006-04-28 15:08:09 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: patch to make timestamp checking more tollerant to rounding errors given that ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_drain), (gst_base_audio_sink_event), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): patch to make timestamp checking more tollerant to rounding errors given that real discontinuities are to be marked on buffers. Fixes some asf files and #338778. Also avoid some crashers when we receive an event in the NULL state. 2006-04-28 15:01:58 +0000 Michael Smith <msmith@xiph.org> ext/gnomevfs/gstgnomevfssrc.*: Remove ICY handling (mostly) from gnomevfssrc, in favour of proper shared support with... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init), (gst_gnome_vfs_src_init), (gst_gnome_vfs_src_finalize), (gst_gnome_vfs_src_get_property), (gst_gnome_vfs_src_send_additional_headers_callback), (gst_gnome_vfs_src_received_headers_callback), (gst_gnome_vfs_src_create), (gst_gnome_vfs_src_start), (gst_gnome_vfs_src_stop): * ext/gnomevfs/gstgnomevfssrc.h: Remove ICY handling (mostly) from gnomevfssrc, in favour of proper shared support within icydemux. 2006-04-28 14:49:22 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/videorate/gstvideorate.c: fix up docs fix a leak when no caps negotiated fix counting of input frames Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_reset), (gst_video_rate_swap_prev), (gst_video_rate_chain): fix up docs fix a leak when no caps negotiated fix counting of input frames * tests/check/elements/.cvsignore: * tests/check/elements/videorate.c: (assert_videorate_stats), (GST_START_TEST), (videorate_suite): add tests for these 2006-04-28 14:48:11 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: Check arguments passed to public functions instead of crashing. Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_set_callback), (gst_ring_buffer_acquire), (gst_ring_buffer_release), (gst_ring_buffer_is_acquired), (gst_ring_buffer_set_flushing), (gst_ring_buffer_start), (gst_ring_buffer_pause), (gst_ring_buffer_stop), (gst_ring_buffer_delay), (gst_ring_buffer_samples_done), (gst_ring_buffer_set_sample), (gst_ring_buffer_clear_all), (gst_ring_buffer_commit), (gst_ring_buffer_read), (gst_ring_buffer_prepare_read), (gst_ring_buffer_advance), (gst_ring_buffer_clear), (gst_ring_buffer_may_start): Check arguments passed to public functions instead of crashing. 2006-04-28 14:37:46 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: GstBaseAudioSrc must be live or it does not work. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_init), (gst_base_audio_src_get_time), (gst_base_audio_src_create): GstBaseAudioSrc must be live or it does not work. * gst-libs/gst/audio/gstaudiosrc.c: (gst_audio_src_init): Don't set live to TRUE as this is the default in the parentclass. 2006-04-28 14:37:12 +0000 Thomas Vander Stichele <thomas@apestaart.org> * win32/common/config.h: update config.h Original commit message from CVS: update config.h 2006-04-28 14:33:45 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videoscale/gstvideoscale.c: Videoscale doesn't pass on pixel-aspect ratio. Handle all fixation cases better. Fixe... Original commit message from CVS: * gst/videoscale/gstvideoscale.c: (gst_video_scale_transform_caps), (gst_video_scale_fixate_caps), (gst_video_scale_src_event): Videoscale doesn't pass on pixel-aspect ratio. Handle all fixation cases better. Fixes #338991 2006-04-28 14:24:38 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videotestsrc/gstvideotestsrc.c: Handle 0/1 framerate correctly Fixes #331901. Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create): Handle 0/1 framerate correctly Fixes #331901. 2006-04-28 14:22:16 +0000 Wim Taymans <wim.taymans@gmail.com> tests/check/elements/audioconvert.c: Added check for correct clipping when doing float samples in audioconvert. Original commit message from CVS: * tests/check/elements/audioconvert.c: (get_float_caps), (GST_START_TEST), (audioconvert_suite): Added check for correct clipping when doing float samples in audioconvert. 2006-04-28 14:19:49 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videorate/gstvideorate.c: Print more debugging info. Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_event), (gst_video_rate_chain): Print more debugging info. 2006-04-28 14:17:00 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audioresample/gstaudioresample.c: Add support for other formats audioresample can handle such as 32 bits in and f... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (resample_set_state_from_caps): Add support for other formats audioresample can handle such as 32 bits in and float and 64 bits float. Fixes #301759 2006-04-28 14:12:28 +0000 Wim Taymans <wim.taymans@gmail.com> gst/audioconvert/audioconvert.c: correctly clip float samples > 1.0. Fixes #338718 Original commit message from CVS: * gst/audioconvert/audioconvert.c: (float): correctly clip float samples > 1.0. Fixes #338718 2006-04-28 13:35:34 +0000 Young-Ho Cha <ganadist@chollian.net> ext/pango/gsttextoverlay.c: Don't strip newlines from the text. Also, center lines within multi-line paragraphs (#339... Original commit message from CVS: Patch by: Young-Ho Cha <ganadist at chollian net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_render_text): Don't strip newlines from the text. Also, center lines within multi-line paragraphs (#339405). 2006-04-28 12:15:33 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Fix wavpack typefinding to work in more cases (don't peek for chunks of multiple... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (wavpack_type_find): Fix wavpack typefinding to work in more cases (don't peek for chunks of multiple hundred kBs at once, but process things step-by-step in smaller units). Fixes #339786. 2006-04-28 10:58:41 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.10.6 === 2006-04-28 10:53:40 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * docs/upload.mak: releasing 0.10.6 Original commit message from CVS: releasing 0.10.6 2006-04-28 10:42:57 +0000 Thomas Vander Stichele <thomas@apestaart.org> * win32/MANIFEST: * win32/common/config.h: dist more win32 files Original commit message from CVS: dist more win32 files 2006-04-28 10:41:57 +0000 Thomas Vander Stichele <thomas@apestaart.org> * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-04-27 00:19:29 +0000 David Schleef <ds@schleef.org> gst/videoscale/gstvideoscale.c: Add call to oil_init(). Original commit message from CVS: * gst/videoscale/gstvideoscale.c: Add call to oil_init(). Fixes #338897. 2006-04-26 17:20:31 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * configure.ac: * win32/common/config.h: new prerelease Original commit message from CVS: new prerelease 2006-04-26 17:17:39 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: make sure correct newsegments are sent, so that the decoder and the demuxer agree on timestamp... Original commit message from CVS: 2006-04-26 Thomas Vander Stichele <thomas at apestaart dot org> patch by: Wim Taymans * ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek): make sure correct newsegments are sent, so that the decoder and the demuxer agree on timestamps. Fixes playback of a lot of Ogg files that do not start from 0. Fixes #339833. 2006-04-26 16:44:20 +0000 Edward Hervey <edward@fluendo.com> Fix an infinite loop if frames are passed in with wrongly ordered timestamps. Fixes #339013. Original commit message from CVS: Patch by: Edward Hervey <edward@fluendo.com> * gst/videorate/gstvideorate.c: (gst_video_rate_chain): * tests/check/Makefile.am: * tests/check/elements/videorate.c: (assert_videorate_stats), (setup_videorate), (cleanup_videorate), (GST_START_TEST), (videorate_suite), (main): Fix an infinite loop if frames are passed in with wrongly ordered timestamps. Fixes #339013. 2006-04-26 13:55:14 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: * win32/common/config.h: prerelease Original commit message from CVS: prerelease 2006-04-22 21:25:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: fix typefinding on some ISO files. Fixes #339212. Original commit message from CVS: Patch by: Tim-Philipp Müller <tim at centricular dot net> * gst/typefind/gsttypefindfunctions.c: (qt_type_find): fix typefinding on some ISO files. Fixes #339212. 2006-04-22 21:19:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: add another H264 fourcc. Fixes #339047. Original commit message from CVS: Patch by: Tim-Philipp Müller <tim at centricular dot net> * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): add another H264 fourcc. Fixes #339047. 2006-04-22 21:12:52 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gststreamselector.c: Restore old StreamSelector behaviour. Original commit message from CVS: Patch by: Jan Schmidt * gst/playback/gststreamselector.c: (gst_stream_selector_bufferalloc): Restore old StreamSelector behaviour. Fixes #338419. 2006-04-13 09:26:27 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/rtp/gstrtpbuffer.h: reverting rtp patches to fix freeze break on -base as explained on the list Original commit message from CVS: reverting rtp patches to fix freeze break on -base as explained on the list 2006-04-13 03:55:12 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstrtpbuffer.h: Added GST_RTP_PAYLOAD_DYNAMIC_STRING for use by children Original commit message from CVS: 2006-04-12 Philippe Kalaf <philippe.kalaf@collabora.co.uk> * gst-libs/gst/rtp/gstrtpbuffer.h: Added GST_RTP_PAYLOAD_DYNAMIC_STRING for use by children * gst-libs/gst/rtp/gstbasertpaudiopayload.c: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: New RTP audio base payloader class. Supports frame or sample based codecs 2006-04-12 11:04:53 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: update libtool versioning Original commit message from CVS: update libtool versioning 2006-04-12 10:58:00 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * configure.ac: * win32/common/config.h: prerelease Original commit message from CVS: prerelease 2006-04-11 17:31:29 +0000 Antoine Tremblay <hexa00@gmail.com> gst-libs/gst/rtp/gstbasertpdepayload.c: Fix some memory leaks: on finalize, free buffers left in the queue before des... Original commit message from CVS: Patch by: Antoine Tremblay <hexa00 at gmail dot com> * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_finalize), (gst_base_rtp_depayload_push): Fix some memory leaks: on finalize, free buffers left in the queue before destroying the queue; in _push(), unref rtp_buf even if the process vfunc returned a NULL buffer as output buffer (#337548); demote some recuring debug messages to LOG level. 2006-04-11 15:01:51 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: fix version number macro Original commit message from CVS: fix version number macro 2006-04-11 14:42:33 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: More cleanups. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_chain_free), (gst_ogg_demux_sink_event), (gst_ogg_demux_loop): More cleanups. Respect segment stop when emiting EOS or SEGMENT_DONE. Fixes (#337945). 2006-04-11 10:45:32 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gststreamselector.c: Don't leak pad name. Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_stream_selector_get_property): Don't leak pad name. 2006-04-11 09:42:52 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: Mention bug #336617 closed by recent commit Original commit message from CVS: Mention bug #336617 closed by recent commit 2006-04-10 20:32:46 +0000 Michael Smith <msmith@xiph.org> tests/check/: so that FC4 buildslaves can pass. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/gst-plugins-base.supp: Suppress an old libtheora bug (fixed in more recent versions), so that FC4 buildslaves can pass. 2006-04-10 19:13:30 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Don't leak events. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query), (gst_ogg_demux_receive_event), (gst_ogg_pad_event), (gst_ogg_demux_init), (gst_ogg_demux_finalize), (gst_ogg_demux_sink_event), (gst_ogg_demux_get_data), (gst_ogg_demux_loop): Don't leak events. Remember what error we got when finding chains, if we were shutdown, that would not be an error. 2006-04-10 17:05:46 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Starting the ringbuffer when we did not acquire it can cause a deadlock, is po... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_event): Starting the ringbuffer when we did not acquire it can cause a deadlock, is pointless and causes nasty things for subclasses. Fixes gst-launch audiotestsrc num-buffers=0 ! alsasink. 2006-04-10 15:17:24 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Add some more debugging. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query), (gst_ogg_demux_receive_event), (gst_ogg_pad_event), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_demux_submit_buffer), (gst_ogg_demux_get_data), (gst_ogg_demux_deactivate_current_chain), (gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek), (gst_ogg_demux_bisect_forward_serialno), (gst_ogg_demux_find_chains), (gst_ogg_demux_chain): Add some more debugging. 2006-04-10 14:52:10 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * ext/theora/theoraenc.c: fix width of docs Original commit message from CVS: fix width of docs 2006-04-10 10:29:21 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Some more debug info. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_src_event), (theora_handle_data_packet): Some more debug info. * tests/examples/seek/seek.c: (start_seek), (main): Print element messages too. 2006-04-09 17:14:22 +0000 Sébastien Moutte <sebastien@moutte.net> gst/audioresample/debug.h: replace debug macros with variable number of parameters by a simple alias to gstreamer sta... Original commit message from CVS: * gst/audioresample/debug.h: replace debug macros with variable number of parameters by a simple alias to gstreamer standard debug macros (#define RESAMPLE_ERROR GST_ERROR, __VA_ARGS__ is not supported by MSVC 6.0 and 7.1) * gst/audioresample/resample.h: define M_PI and rint for WIN32 * win32/common/libgstaudio.def: * win32/common/libgstriff.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: add new exported functions * win32/vs6: update project files 2006-04-08 21:02:53 +0000 Stefan Kost <ensonic@users.sourceforge.net> Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) Original commit message from CVS: * ext/alsa/gstalsamixeroptions.c: (gst_alsa_mixer_options_class_init): * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_class_init): * ext/ogg/gstoggdemux.c: (gst_ogg_pad_class_init): * ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init): * ext/ogg/gstoggparse.c: (gst_ogg_parse_class_init): * gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_class_init): * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_class_init): * gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_class_init): * gst-libs/gst/audio/gstaudiosrc.c: (gst_audioringbuffer_class_init): * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_class_init): * gst-libs/gst/interfaces/colorbalancechannel.c: (gst_color_balance_channel_class_init): * gst-libs/gst/interfaces/mixeroptions.c: (gst_mixer_options_class_init): * gst-libs/gst/interfaces/mixertrack.c: (gst_mixer_track_class_init): * gst-libs/gst/interfaces/tunerchannel.c: (gst_tuner_channel_class_init): * gst-libs/gst/interfaces/tunernorm.c: (gst_tuner_norm_class_init): * gst-libs/gst/netbuffer/gstnetbuffer.c: (gst_netbuffer_class_init): * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init): * gst/playback/gstdecodebin.c: (gst_decode_bin_class_init): * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init): * gst/playback/gstplaybin.c: (gst_play_bin_class_init): * gst/playback/gststreaminfo.c: (gst_stream_info_class_init): * gst/playback/gststreamselector.c: (gst_stream_selector_class_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init): * sys/v4l/gstv4lcolorbalance.c: (gst_v4l_color_balance_channel_class_init): * sys/v4l/gstv4ljpegsrc.c: (gst_v4ljpegsrc_class_init): * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init): * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init): * sys/v4l/gstv4ltuner.c: (gst_v4l_tuner_channel_class_init), (gst_v4l_tuner_norm_class_init): * sys/ximage/ximagesink.c: (gst_ximagesink_class_init): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init): * tests/old/testsuite/alsa/sinesrc.c: (sinesrc_class_init): Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) 2006-04-08 18:09:17 +0000 Stefan Kost <ensonic@users.sourceforge.net> Fix broken GObject macros Original commit message from CVS: * ext/pango/gsttextrender.h: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.h: * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/rtp/gstbasertppayload.h: * gst-libs/gst/video/gstvideofilter.h: * gst-libs/gst/video/gstvideosink.h: * gst/playback/gstplaybasebin.h: * gst/tcp/gstmultifdsink.h: * sys/v4l/gstv4lelement.h: Fix broken GObject macros 2006-04-08 16:21:15 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/alsa/gstalsasink.c: More debug to trace why my USB headset is not working with gst Original commit message from CVS: * ext/alsa/gstalsasink.c: (set_hwparams), (alsasink_parse_spec): More debug to trace why my USB headset is not working with gst 2006-04-07 17:18:11 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybasebin.c: Clean up our group elements properly in the case where it never got committed - it sti... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (group_destroy): Clean up our group elements properly in the case where it never got committed - it still got added unconditionally to the bin. 2006-04-07 15:14:32 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Unref unhandled events. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_sink_event), (theora_handle_data_packet), (theora_dec_chain): Unref unhandled events. Protect against empty buffers. Perform QoS on running time. 2006-04-07 13:24:54 +0000 Michael Smith <msmith@xiph.org> ext/vorbis/vorbisenc.c: Remove leaks from vorbisenc. Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_set_header_on_caps), (gst_vorbis_enc_chain): Remove leaks from vorbisenc. Mostly minor changes, the only significant one is that now the buffers we set as 'streamheader' on the caps are copies of the original buffers, to avoid circular refcounting problems. 2006-04-07 09:51:35 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybasebin.c: Don't remove our mute-probe if someone else already did so. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (mute_stream), (setup_substreams): Don't remove our mute-probe if someone else already did so. Don't set a 2nd one if there is already one pending on the pad. * gst/playback/gstplaybin.c: (gst_play_bin_send_event_to_sink), (do_playbin_seek): When a seek fails, ensure that playbin is still set back to playing. * gst/typefind/gsttypefindfunctions.c: (mpeg_ts_probe_headers), (mpeg_ts_type_find), (plugin_init): Add a typefind function for mpeg-ts streams. 2006-04-06 11:40:45 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/videorate/gstvideorate.c: gst/videorate/gstvideorate.c (gst_video_rate_reset) Original commit message from CVS: 2006-04-06 Andy Wingo <wingo@pobox.com> * gst/videorate/gstvideorate.c (gst_video_rate_reset) (gst_video_rate_init): Caps-related parameters should not be reset by a flush -- move their inits to the instance init function. (gst_video_rate_flush_prev): Don't complain if gst_pad_push is not OK, just return the result. * gst/audiotestsrc/gstaudiotestsrc.c (gst_audio_test_src_class_init) (gst_audio_test_src_get_times): Re-enable is-live=true, as was broken by Stefan's commit on 24 March. 2006-04-06 10:50:14 +0000 Andy Wingo <wingo@pobox.com> ext/ogg/gstoggmux.c (gst_ogg_mux_push_buffer): Set caps on buffers being pushed out. Fixes oggmux ! multifdsink. Original commit message from CVS: 2006-04-06 Andy Wingo <wingo@pobox.com> * ext/ogg/gstoggmux.c (gst_ogg_mux_push_buffer): Set caps on buffers being pushed out. Fixes oggmux ! multifdsink. 2006-04-05 13:05:25 +0000 Tim-Philipp Müller <tim@centricular.net> ext/vorbis/: Remove left-over 0.8 cruft; use GST_DEBUG_FUNCPTR; make vorbisenc adhere to the official nomenclature; u... Original commit message from CVS: * ext/vorbis/vorbisdec.c: (gst_vorbis_dec_class_init), (gst_vorbis_dec_init), (vorbis_dec_finalize): * ext/vorbis/vorbisdec.h: * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_add_interfaces), (gst_vorbis_enc_base_init), (gst_vorbis_enc_class_init), (gst_vorbis_enc_sink_setcaps), (gst_vorbis_enc_convert_src), (gst_vorbis_enc_convert_sink), (gst_vorbis_enc_get_query_types), (gst_vorbis_enc_src_query), (gst_vorbis_enc_sink_query), (gst_vorbis_enc_init), (gst_vorbis_enc_get_tag_value), (gst_vorbis_enc_metadata_set1), (gst_vorbis_enc_set_metadata), (gst_vorbis_enc_setup), (gst_vorbis_enc_clear), (gst_vorbis_enc_buffer_from_packet), (gst_vorbis_enc_buffer_from_header_packet), (gst_vorbis_enc_push_buffer), (gst_vorbis_enc_push_packet), (gst_vorbis_enc_set_header_on_caps), (gst_vorbis_enc_sink_event), (gst_vorbis_enc_chain), (gst_vorbis_enc_output_buffers), (gst_vorbis_enc_get_property), (gst_vorbis_enc_set_property), (gst_vorbis_enc_change_state): * ext/vorbis/vorbisenc.h: Remove left-over 0.8 cruft; use GST_DEBUG_FUNCPTR; make vorbisenc adhere to the official nomenclature; use boilerplate macro. 2006-04-04 11:20:24 +0000 Andy Wingo <wingo@pobox.com> gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Whoops, fix bug introduced. Bad hacker! Original commit message from CVS: 2006-04-04 Andy Wingo <wingo@pobox.com> * gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Whoops, fix bug introduced. Bad hacker! 2006-04-04 11:15:00 +0000 Andy Wingo <wingo@pobox.com> gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Properly handle the case where you get EOS before any buffe... Original commit message from CVS: 2006-04-04 Andy Wingo <wingo@pobox.com> * gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Properly handle the case where you get EOS before any buffers are received. Use gst_buffer_make_metadata_writable where appropriate. 2006-04-04 10:16:46 +0000 Andy Wingo <wingo@pobox.com> ext/theora/theoradec.c (theora_handle_data_packet): This value is often negative -- make it signed so as not to wrap ... Original commit message from CVS: 2006-04-04 Andy Wingo <wingo@pobox.com> * ext/theora/theoradec.c (theora_handle_data_packet): This value is often negative -- make it signed so as not to wrap around. Fixes segfaults introduced on 9 March. 2006-04-03 16:43:10 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/: Don't try to store a gdouble in a gboolean. Original commit message from CVS: * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (theora_dec_src_event): Don't try to store a gdouble in a gboolean. Small cleanups. 2006-04-03 12:55:18 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggmux.c: Oggmux sucks. Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads): Oggmux sucks. Make it suck slightly less by writing out the final page. Still can't encode a vorbis-in-ogg file correctly, though. 2006-04-03 08:49:06 +0000 Andy Wingo <wingo@pobox.com> ext/theora/theoraparse.c (theora_parse_drain_queue): Um, remove a g_print. Original commit message from CVS: 2006-04-03 Andy Wingo <wingo@pobox.com> * ext/theora/theoraparse.c (theora_parse_drain_queue): Um, remove a g_print. 2006-04-03 08:32:21 +0000 Andy Wingo <wingo@pobox.com> ext/theora/theora.c (plugin_init): Register theoraparse. Original commit message from CVS: 2006-04-03 Andy Wingo <wingo@pobox.com> * ext/theora/theora.c (plugin_init): Register theoraparse. * ext/theora/gsttheoraparse.h: * ext/theora/theoraparse.c: New files implementing a theora parser. Now we can properly remux ogg/theora+vorbis, yay. 2006-04-03 08:28:58 +0000 Andy Wingo <wingo@pobox.com> ext/vorbis/vorbisparse.c: Add some docs and a copyright. Original commit message from CVS: 2006-04-03 Andy Wingo <wingo@pobox.com> * ext/vorbis/vorbisparse.c: Add some docs and a copyright. 2006-04-01 15:34:38 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * configure.ac: don't use AS_LIBTOOL_TAGS, it doesn't work Original commit message from CVS: don't use AS_LIBTOOL_TAGS, it doesn't work 2006-04-01 11:41:13 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * ext/pango/gsttextoverlay.c: * sys/v4l/gstv4lsrc.c: remove BT8x8 from description, works for more devices Original commit message from CVS: remove BT8x8 from description, works for more devices 2006-04-01 11:21:30 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/audiotestsrc/gstaudiotestsrc.c: Fixed the sample pipeline (see #323798) Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: Fixed the sample pipeline (see #323798) 2006-04-01 09:50:34 +0000 Thomas Vander Stichele <thomas@apestaart.org> use AS_VERSION and AS_NANO more cleanups Original commit message from CVS: * configure.ac: * win32/common/config.h: * win32/common/config.h.in: use AS_VERSION and AS_NANO more cleanups 2006-03-31 17:08:41 +0000 Andy Wingo <wingo@pobox.com> ext/vorbis/vorbisparse.c (vorbis_parse_sink_event): Fix uninitialized variable return that would happen. Original commit message from CVS: 2006-03-31 Andy Wingo <wingo@pobox.com> * ext/vorbis/vorbisparse.c (vorbis_parse_sink_event): Fix uninitialized variable return that would happen. 2006-03-31 16:57:47 +0000 Andy Wingo <wingo@pobox.com> ext/vorbis/vorbisparse.c (vorbis_parse_drain_queue): Fix uninitialized variable return that would never happen. Original commit message from CVS: 2006-03-31 Andy Wingo <wingo@pobox.com> * ext/vorbis/vorbisparse.c (vorbis_parse_drain_queue): Fix uninitialized variable return that would never happen. 2006-03-31 16:43:43 +0000 Andy Wingo <wingo@pobox.com> ext/vorbis/vorbisparse.c (gst_vorbis_parse_init) Original commit message from CVS: 2006-03-31 Andy Wingo <wingo@pobox.com> * ext/vorbis/vorbisparse.c (gst_vorbis_parse_init) (vorbis_parse_sink_event): Add an event function to flush our state on a seek, and to drain buffers on a premature EOS. (vorbis_parse_push_headers, vorbis_parse_clear_queue) (vorbis_parse_push_buffer, vorbis_parse_drain_queue_prematurely) (vorbis_parse_chain, vorbis_parse_queue_buffer) (vorbis_parse_drain_queue): Queue up buffers until we can set their timestamps and granulepos values. * ext/vorbis/vorbisparse.h: Include the vorbis decoder headers, and keep track of data needed for deriving granulepos and timestamps for buffers. 2006-03-30 11:05:25 +0000 Thomas Vander Stichele <thomas@apestaart.org> * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: expose pluginsdir so gonlin can use it for tests Original commit message from CVS: expose pluginsdir so gonlin can use it for tests 2006-03-30 10:03:56 +0000 Thomas Vander Stichele <thomas@apestaart.org> * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: add ccda to libraries Original commit message from CVS: add ccda to libraries 2006-03-29 14:00:08 +0000 j^ <j@bootlab.org> better/unified long descriptions Original commit message from CVS: Patch by: j^ <j at bootlab dot org> * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_class_init): * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init): * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * gst/audioconvert/gstaudioconvert.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: better/unified long descriptions Fixes #336477 2006-03-29 13:54:24 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Don't let double and tripple clicks mess up our state. Original commit message from CVS: * tests/examples/seek/seek.c: (end_scrub), (seek_cb), (start_seek), (stop_seek): Don't let double and tripple clicks mess up our state. 2006-03-28 13:13:43 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybin.c: Error out gracefully when we can't create any of the usual conversion elements for some re... Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_video_element), (gen_text_element), (gen_audio_element), (gen_vis_element): Error out gracefully when we can't create any of the usual conversion elements for some reason. Also, don't try to create an audioscale (sic) element that's not used anyway. 2006-03-28 10:21:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Don't post RESOURCE_NOT_FOUND error when we can't find a source element for a particul... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_source): Don't post RESOURCE_NOT_FOUND error when we can't find a source element for a particular protocol, that's confusing for users. Instead, post a RESOURCE_FAILED error, so that our own error message is actually shown in totem etc. (#336303). 2006-03-27 16:36:46 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> ext/gnomevfs/gstgnomevfssrc.c: Fix some minor memory leaks (#336194). Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_finalize), (gst_gnome_vfs_src_get_icy_metadata): Fix some minor memory leaks (#336194). 2006-03-27 16:15:00 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/: Make gnomevfssink accept filenames as well as URIs for the "location" property, just like gnomevfssrc ... Original commit message from CVS: * ext/gnomevfs/gstgnomevfs.c: (gst_gnome_vfs_location_to_uri_string): * ext/gnomevfs/gstgnomevfs.h: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_set_property): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_set_property): Make gnomevfssink accept filenames as well as URIs for the "location" property, just like gnomevfssrc does (and filesrc/filesink do) (#336190). 2006-03-24 20:35:34 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/check/generic/clock-selection.c: set to NULL before unreffing, fixes a valgrind leak. Original commit message from CVS: * tests/check/generic/clock-selection.c: (GST_START_TEST): set to NULL before unreffing, fixes a valgrind leak. Why was this not triggering the error that an object needs to be NULL before unreffing ? * win32/common/config.h: update 2006-03-24 17:57:39 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.*: Text subtitle files may or may not be UTF-8. If it's not, we don't really want to see '?'... Original commit message from CVS: * gst/subparse/gstsubparse.c: (convert_encoding), (gst_sub_parse_change_state): * gst/subparse/gstsubparse.h: Text subtitle files may or may not be UTF-8. If it's not, we don't really want to see '?' characters in place of non-ASCII characters like accented characters. So let's assume the input is UTF-8 until we come across text that is clearly not. If it's not UTF-8, we don't really know what it is, so try the following: (a) see whether the GST_SUBTITLE_ENCODING environment variable is set; if not, check (b) if the current locale encoding is non-UTF-8 and use that if it is, or (c) assume ISO-8859-15 if the current locale encoding is UTF-8 and the environment variable was not set to any particular encoding. Not perfect, but better than nothing (and better than before, I think) (fixes #172848). 2006-03-24 17:39:45 +0000 Thomas Vander Stichele <thomas@apestaart.org> * docs/plugins/tmpl/.gitignore: * tests/check/libs/.gitignore: * tests/check/pipelines/.gitignore: * tests/examples/volume/.gitignore: ignore more Original commit message from CVS: ignore more 2006-03-24 17:26:54 +0000 Thomas Vander Stichele <thomas@apestaart.org> configure.ac: update core requirement to 0.10.4.1 because of async_playback vmethod on GstBaseSink Original commit message from CVS: 2006-03-24 Thomas Vander Stichele <thomas at apestaart dot org> * configure.ac: update core requirement to 0.10.4.1 because of async_playback vmethod on GstBaseSink 2006-03-24 17:11:53 +0000 Stefan Kost <ensonic@users.sourceforge.net> use DEBUG_FUNCPTR for collectpads Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_init): * gst/adder/gstadder.c: (gst_adder_init): use DEBUG_FUNCPTR for collectpads 2006-03-24 14:11:20 +0000 Thomas Vander Stichele <thomas@apestaart.org> * Makefile.am: don't go through check-torture if no check installed Original commit message from CVS: don't go through check-torture if no check installed 2006-03-24 10:42:11 +0000 Stefan Kost <ensonic@users.sourceforge.net> Add docs for adder, use GST_ELEMENT_DETAILS macro, define GstElementDetails at the top Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_base_init), (gst_gnome_vfs_sink_class_init): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_base_init): * ext/ogg/gstoggdemux.c: (gst_ogg_demux_base_init): * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: (gst_ogg_parse_base_init): * ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init), (gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init): * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_base_init): * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_base_init): * gst/adder/gstadder.c: (gst_adder_get_type): * gst/adder/gstadder.h: * gst/audioconvert/gstaudioconvert.c: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init), (gst_audio_test_src_create): * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/playback/gstdecodebin.c: * gst/playback/gstplaybin.c: * gst/playback/gststreamselector.c: (gst_stream_selector_base_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_base_init): * gst/volume/gstvolume.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsrc.c: * tests/check/libs/cddabasesrc.c: * tests/old/examples/gob/gst-identity2.gob: Add docs for adder, use GST_ELEMENT_DETAILS macro, define GstElementDetails at the top 2006-03-23 21:48:18 +0000 Sébastien Moutte <sebastien@moutte.net> win32/common/libgstinterfaces.def: Add a lot of export functions for gst-python Original commit message from CVS: * win32/common/libgstinterfaces.def: Add a lot of export functions for gst-python * win32/common/libgstinterfaces.dsp: Add a missing include folder in the project configuration 2006-03-23 16:58:03 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: Fix audio sources, forgot to make the ringbuffer startable... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_get_time), (gst_base_audio_src_create), (gst_base_audio_src_change_state): Fix audio sources, forgot to make the ringbuffer startable... 2006-03-23 16:29:58 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosrc.c: unparent instead of unref the ringbuffer. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_get_time), (gst_base_audio_src_create), (gst_base_audio_src_change_state): unparent instead of unref the ringbuffer. 2006-03-23 16:24:23 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Implement new async_play vmethod to start slaving and allow playback start in ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init), (gst_base_audio_sink_async_play), (gst_base_audio_sink_do_play), (gst_base_audio_sink_change_state): Implement new async_play vmethod to start slaving and allow playback start in case of async PLAY state changes. * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init): Enable QoS with new method in base class. 2006-03-23 11:18:19 +0000 Julien MOUTTE <julien@moutte.net> gst/videotestsrc/gstvideotestsrc.c: Partially handle 0 framerate, only EOS after the first frame is missing. Original commit message from CVS: Patch by: Julien MOUTTE <julien at moutte dot net> * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_query), (gst_video_test_src_do_seek), (gst_video_test_src_create): Partially handle 0 framerate, only EOS after the first frame is missing. 2006-03-23 09:38:59 +0000 Fabrizio Gennari <fabrizio.ge@tiscali.it> gst/: Patch for support of YVU9 AVI files (#334822) Original commit message from CVS: Patch by: Fabrizio Gennari <fabrizio dot ge at tiscali dot it> * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpegcsp_avpicture_fill): * gst/ffmpegcolorspace/imgconvert.c: Patch for support of YVU9 AVI files (#334822) 2006-03-22 15:29:25 +0000 Edward Hervey <bilboed@bilboed.com> docs/design/design-decodebin.txt: Added design document for new decodebin text/x-pango-markup is also a default targe... Original commit message from CVS: * docs/design/design-decodebin.txt: Added design document for new decodebin (Target Caps): text/x-pango-markup is also a default target caps. 2006-03-22 15:11:47 +0000 Edward Hervey <bilboed@bilboed.com> docs/design/design-decodebin.txt: Added design document for new decodebin Original commit message from CVS: * docs/design/design-decodebin.txt: Added design document for new decodebin 2006-03-22 12:33:09 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Since we _parent the ringbuffer, we also need to _unparent instead of a plain ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_dispose): Since we _parent the ringbuffer, we also need to _unparent instead of a plain _unref. 2006-03-22 12:28:36 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/seek.c: Add scrub checkbox. Original commit message from CVS: * tests/examples/seek/seek.c: (end_scrub), (do_seek), (seek_cb), (stop_seek), (scrub_toggle_cb), (main): Add scrub checkbox. 2006-03-21 17:47:04 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstoggparse.c: Fix very inefficient usage of linked lists (#335365). Original commit message from CVS: * ext/ogg/gstoggparse.c: (gst_ogg_parse_find_stream), (gst_ogg_parse_chain): Fix very inefficient usage of linked lists (#335365). 2006-03-21 14:26:01 +0000 Edward Hervey <bilboed@bilboed.com> gcc 4.1 unreferenced pointer fixes. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose): * gst/playback/gstplaybin.c: (handoff): * gst/playback/gststreamselector.c: (gst_stream_selector_set_property): gcc 4.1 unreferenced pointer fixes. * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put): gst_buffer_ref() now takes a GstBuffer*. 2006-03-20 18:09:41 +0000 Julien Moutte <julien@moutte.net> sys/xvimage/xvimagesink.c: Fix a memleak reported by Jan Schmidt. Original commit message from CVS: 2006-03-20 Julien MOUTTE <julien@moutte.net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_format_from_caps): Fix a memleak reported by Jan Schmidt. 2006-03-19 11:37:46 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Can't do tag preferences via probability, as tags would then lose against types ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (id3v2_type_find), (id3v1_type_find), (apetag_type_find), (plugin_init): Can't do tag preferences via probability, as tags would then lose against types that are recognised with MAXIMUM probability (like .wav); so let all tag typefinders return MAXIMUM themselves and order them via the rank. Split ID3v1 and ID3v2 typefinders so that we can prefer APE to ID3v1 (fixes #335028). 2006-03-17 17:48:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/: Only start playback if we are playing. should fix #330748. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_change_state): * gst-libs/gst/audio/gstringbuffer.c: (wait_segment), (gst_ring_buffer_may_start): * gst-libs/gst/audio/gstringbuffer.h: Only start playback if we are playing. should fix #330748. 2006-03-17 13:11:45 +0000 Jan Schmidt <thaytan@mad.scientist.com> Revert accidental commits to these files. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_getcaps): * win32/common/config.h: Revert accidental commits to these files. 2006-03-16 20:01:03 +0000 Michal Benes <michal.benes@xeris.cz> tests/Makefile.am: Don't try to build tests in tests/icles if we don't have X (#323852) Original commit message from CVS: Patch by: Michal Benes <michal dot benes at xeris dot cz> * tests/Makefile.am: Don't try to build tests in tests/icles if we don't have X (#323852) 2006-03-16 13:08:01 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstid3tag.c: Add TXXX frame identifiers for replaygain stuff as used by some taggers (see #323721). Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: Add TXXX frame identifiers for replaygain stuff as used by some taggers (see #323721). 2006-03-16 10:22:27 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gststreamselector.c: Preserve the existing buggy streamselector behaviour by performing a fallback buffe... Original commit message from CVS: * gst/playback/gststreamselector.c: (gst_stream_selector_set_property), (gst_stream_selector_bufferalloc): Preserve the existing buggy streamselector behaviour by performing a fallback buffer allocation when downstream isn't linked yet. This should really be fixed in playbin by blocking pads until it's linked them. Also, use gst_pad_alloc_buffer instead of gst_pad_alloc_buffer_and_set. 2006-03-15 22:40:08 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstid3tag.c: Don't crash on unknown ID3v2 TXXX frames. Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: Don't crash on unknown ID3v2 TXXX frames. 2006-03-15 17:59:05 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/alsa/gstalsasink.c: Chain up to the parent finalize method. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_finalise): Chain up to the parent finalize method. Add 32-bit sample size to the template caps. * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add the fourcc that the VMWare codec uses. * gst/playback/gststreamselector.c: (gst_stream_selector_set_property), (gst_stream_selector_bufferalloc), (gst_stream_selector_request_new_pad): For the active pad, forward buffer-alloc requests, otherwise return GST_FLOW_NOT_LINKED. This also prevents xvimagesink having to memcpy every frame when used by playbin. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_client_write): Get negotiated caps from the sink pad, rather than the sink pad's peer. 2006-03-15 17:11:34 +0000 Tommi Myöhänen <ext-tommi.myohanen@nokia.com> ext/gnomevfs/gstgnomevfssrc.c: Don't forget to set src->callbacks_pushed to FALSE again when popping them, otherwise ... Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_pop_callbacks): Don't forget to set src->callbacks_pushed to FALSE again when popping them, otherwise re-activation in a different mode won't work (#334620). 2006-03-15 11:30:29 +0000 Sebastien Moutte <sebastien@moutte.net> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Replace __VA_ARGS__ caps creation macros with varargs functions. looks nice... Original commit message from CVS: Patch by: Sebastien Moutte <sebastien moutte net> * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ff_vid_caps_new), (gst_ff_aud_caps_new), (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_smpfmt_to_caps): Replace __VA_ARGS__ caps creation macros with varargs functions. Makes things compile on MSVC (#320765), looks nicer, and we can tell the compiler to check for the NULL terminator. 2006-03-14 15:13:04 +0000 Fabrizio Gennari <fabrizio.ge@tiscali.it> gst-libs/gst/riff/riff-media.c: Make sure the buffer we copy into is really always big enough, this time for real (#3... Original commit message from CVS: Patch by: Fabrizio Gennari <fabrizio dot ge at tiscali dot it> * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Make sure the buffer we copy into is really always big enough, this time for real (#333488). 2006-03-14 13:16:49 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Add support for 24bpp DIB (#305279). Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Add support for 24bpp DIB (#305279). 2006-03-14 11:11:59 +0000 Wim Taymans <wim.taymans@gmail.com> gst/: Re-enable QoS after the release. Original commit message from CVS: * gst-libs/gst/video/gstvideofilter.c: (gst_video_filter_init): * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init): * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_init): * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init), (gst_video_scale_init), (gst_video_scale_src_event): Re-enable QoS after the release. Rework videoscale to use the base class src_event handler. 2006-03-14 09:51:01 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: back to CVS. Original commit message from CVS: * configure.ac: back to CVS. === release 0.10.5 === 2006-03-13 19:50:04 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/config.h: releasing 0.10.5 Original commit message from CVS: releasing 0.10.5 2006-03-13 17:28:23 +0000 Thomas Vander Stichele <thomas@apestaart.org> * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-03-13 11:17:19 +0000 Tim-Philipp Müller <tim@centricular.net> docs/plugins/Makefile.am: Part of previous cdparanoiasrc docs fixes, forgot to commit. Original commit message from CVS: * docs/plugins/Makefile.am: Part of previous cdparanoiasrc docs fixes, forgot to commit. 2006-03-12 14:56:31 +0000 Tim-Philipp Müller <tim@centricular.net> docs/plugins/: Add cdparanoiasrc to docs. Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.hierarchy: Add cdparanoiasrc to docs. * gst-libs/gst/cdda/gstcddabasesrc.c: More GstCddaBaseSrc docs. 2006-03-12 13:47:22 +0000 Tim-Philipp Müller <tim@centricular.net> Add new API to libgsttag: gst_tag_from_id3_user_tag(). Original commit message from CVS: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstid3tag.c: (gst_tag_from_id3_user_tag): * gst-libs/gst/tag/tag.h: Add new API to libgsttag: gst_tag_from_id3_user_tag(). 2006-03-11 19:47:16 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: NULL-terminate array of mpeg4 video file extensions. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): NULL-terminate array of mpeg4 video file extensions. Fixes crash on PPC (#334226). 2006-03-11 16:40:20 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: gnome_vfs_uri_is_local() alone is not a good indicator whether we can operate in pull-... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_check_get_range): gnome_vfs_uri_is_local() alone is not a good indicator whether we can operate in pull-mode with a specific URI, as it returns FALSE for file:// URIs that point to an NFS-mounted path. Be more conservative here: whitelist local files, blacklist http URIs and use the old mechanism for anything else (fixes #334216). 2006-03-10 19:15:34 +0000 Thomas Vander Stichele <thomas@apestaart.org> configure.ac: back to trunk Original commit message from CVS: * configure.ac: back to trunk === release 0.10.4 === 2006-03-10 19:05:13 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * docs/upload.mak: * win32/common/config.h: releasing 0.10.4 Original commit message from CVS: releasing 0.10.4 2006-03-10 12:37:53 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/video/gstvideosink.c: Disable max-lateness by setting it to -1 for now, so that we can bed QoS stuff in ... Original commit message from CVS: * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init): Disable max-lateness by setting it to -1 for now, so that we can bed QoS stuff in thoroughly between now and the next release. 2006-03-10 11:09:23 +0000 Fabrizio <fabrizio.ge@tiscali.it> gst-libs/gst/riff/riff-media.c: Make sure we don't read beyond the palette buffer in case of Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Make sure we don't read beyond the palette buffer in case of broken or manipulated files (#333488, patch by: Fabrizio Gennari) 2006-03-10 10:44:02 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Fix for variable not initialized. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset): Fix for variable not initialized. 2006-03-09 19:02:32 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: * docs/libs/tmpl/gstringbuffer.sgml: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * win32/common/config.h: prereleasing Original commit message from CVS: prereleasing 2006-03-09 17:58:00 +0000 Wim Taymans <wim.taymans@gmail.com> ext/libvisual/visual.c: Small cleanups. Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_get_type), (gst_visual_src_setcaps), (gst_vis_src_negotiate), (gst_visual_chain): Small cleanups. * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_init), (gst_theora_dec_reset), (_theora_granule_time), (theora_dec_src_convert), (theora_dec_sink_convert), (theora_dec_src_query), (theora_dec_src_event), (theora_dec_sink_event), (theora_handle_comment_packet), (theora_handle_header_packet), (theora_dec_push), (theora_handle_data_packet), (theora_dec_chain), (theora_dec_change_state): Add simple QoS. 2006-03-09 17:50:59 +0000 Wim Taymans <wim.taymans@gmail.com> ext/gnomevfs/gstgnomevfssrc.c: Some cleanups. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (audiocast_init), (audiocast_register_listener), (gst_gnome_vfs_src_start): Some cleanups. 2006-03-09 17:45:39 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Don't try to activate NULL chains. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain): Don't try to activate NULL chains. 2006-03-09 16:30:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Fix invalid memory access to region before peek'd data (#332964). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset): Fix invalid memory access to region before peek'd data (#332964). 2006-03-09 15:05:03 +0000 Christophe Fergeau <teuf@gnome.org> closes #333510. Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_init): * ext/pango/gsttextrender.c: (gst_text_render_init): * gst/adder/gstadder.c: (gst_adder_init): Don't leak padtemplates, patch by Christophe Fergeau, closes #333510. 2006-03-09 12:56:35 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Fix invalid memory access: make sure string passed to regexec() is NUL-termianted. Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_subparse_type_find): Fix invalid memory access: make sure string passed to regexec() is NUL-termianted. 2006-03-09 12:37:59 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Refactor mpeg/audio typefinding to make it more maintainable and easier to fine-... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (mp3_type_find): Refactor mpeg/audio typefinding to make it more maintainable and easier to fine-tune. Make probing into middle of the file work properly (fixes #333900, also see #152688). 2006-03-09 11:10:03 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Remove part from previous commit that was bogus: g_utf8_validate() does in fact ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (utf8_type_find_have_valid_utf8_at_offset): Remove part from previous commit that was bogus: g_utf8_validate() does in fact not accept embedded zeroes, so we don't need to check for those (thanks to Mike for the hint). 2006-03-08 17:11:29 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Make plain/text typefinder more conservative: firstly, check for embedded zeroes... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (utf8_type_find_count_embedded_zeroes), (utf8_type_find_have_valid_utf8_at_offset), (utf8_type_find): Make plain/text typefinder more conservative: firstly, check for embedded zeroes, which are perfectly valid UTF-8 characters, but also a fairly good sign that something is not a plain text file; secondly, probe into the middle of the file if possible. If we can't probe into the middle, limit the probability value to be returned to TYPE_FIND_POSSIBLE (see #333900). 2006-03-08 11:34:45 +0000 Michael Smith <msmith@xiph.org> gst/typefind/gsttypefindfunctions.c: Make typefind function name for mpeg4 video unique. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Make typefind function name for mpeg4 video unique. 2006-03-08 09:53:31 +0000 Wim Taymans <wim.taymans@gmail.com> ext/libvisual/visual.c: Cleanups, post nice errors. Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_init), (gst_visual_clear_actors), (gst_visual_dispose), (gst_visual_reset), (gst_visual_src_setcaps), (gst_visual_sink_setcaps), (gst_vis_src_negotiate), (gst_visual_sink_event), (gst_visual_src_event), (get_buffer), (gst_visual_chain), (gst_visual_change_state): Cleanups, post nice errors. Handle sink and src events. Implement simple QoS. * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init): Use new basesink methods to configure max-lateness. Small doc update. * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform_caps), (gst_ffmpegcsp_set_caps): Debug statement cleanups. * gst/volume/gstvolume.c: (gst_volume_class_init): Simple cleanup. 2006-03-08 09:50:23 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Revert API/ABI break from March 1. Keep 'halign' and 'valign' as string type properties, ... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init), (gst_text_overlay_init), (gst_text_overlay_set_property), (gst_text_overlay_get_property): Revert API/ABI break from March 1. Keep 'halign' and 'valign' as string type properties, but mark them deprecated. Add 'halignment' and 'valignment' properties that use enums instead of strings. 2006-03-08 09:37:12 +0000 Fabrizio <fabrizio.ge@tiscali.it> gst-libs/gst/riff/riff-media.c: Allow palettes with less than 256 colours in AVI files Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Allow palettes with less than 256 colours in AVI files (#333488, patch by: Fabrizio Gennari). 2006-03-07 21:56:09 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Fix wrong EOS handling on text pad. We were releasing the queued text buffer when we shou... Original commit message from CVS: 2006-03-07 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_text_event), (gst_text_overlay_video_event): Fix wrong EOS handling on text pad. We were releasing the queued text buffer when we should keep it until video pad gets EOS or discard the text buffer because it's too old. That was eating the last subtitle buffer. Add some more debug. 2006-03-07 17:28:36 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Fix invalid memory access (we can't access a buffer after it's been pushed downstream wit... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_render_text), (gst_text_overlay_video_chain): Fix invalid memory access (we can't access a buffer after it's been pushed downstream without taking a reference); fix memory leak (if there's no text to render, bail out before allocating stuff). 2006-03-07 15:08:15 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.*: If input is plain text, escape it before passing it to pango_layout_set_markup(). Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_setcaps_txt), (gst_text_overlay_video_chain): * ext/pango/gsttextoverlay.h: If input is plain text, escape it before passing it to pango_layout_set_markup(). 2006-03-07 13:01:21 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstaudiofilter.c: Don't ignore flow return from gst_pad_push(). Original commit message from CVS: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_chain): Don't ignore flow return from gst_pad_push(). 2006-03-07 12:49:03 +0000 Christophe Fergeau <teuf@gnome.org> Don't leak references returned by gst_pad_get_parent() Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_getcaps), (gst_visual_src_setcaps), (gst_visual_sink_setcaps): * ext/ogg/gstoggmux.c: (gst_ogg_mux_sinkconnect): * ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_src), (gst_vorbisenc_convert_sink): * gst-libs/gst/audio/audio.c: (gst_audio_frame_byte_size), (gst_audio_duration_from_pad_buffer): * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_link), (gst_audio_filter_chain): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps): * gst-libs/gst/video/video.c: (gst_video_frame_rate), (gst_video_get_size): * gst/audiorate/gstaudiorate.c: (gst_audio_rate_setcaps): Don't leak references returned by gst_pad_get_parent() (#333663, based on patch by: Christophe Fergeau). 2006-03-06 20:52:25 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/gnomevfs/gstgnomevfssink.c: change location param details Original commit message from CVS: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): change location param details * gst/volume/gstvolume.c: (plugin_init): correct plugin description 2006-03-06 20:07:55 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: Override GstBaseSrc::check_get_range() in order to avoid opening the resource just to ... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init), (gst_gnome_vfs_src_check_get_range): Override GstBaseSrc::check_get_range() in order to avoid opening the resource just to check whether we can operate in pull-mode or not - we can predict that pretty well from the URI alone. Should fix problems with last.fm (#331690). (Requires latest core CVS). 2006-03-06 16:18:51 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/video/gstvideosink.c: Throw away frames that are later than 20 ms. Original commit message from CVS: * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init), (gst_video_sink_class_init): Throw away frames that are later than 20 ms. 2006-03-06 14:14:47 +0000 Fabrizio <fabrizio.ge@tiscali.it> gst-libs/gst/riff/riff-media.c: Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Set depth on WMA caps (#333545, patch by: Fabrizio Gennari). 2006-03-05 23:39:50 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/ogg/gstoggmux.c: put Theora BOS pages before others. This hardcodes the Ogg/Theora I profile, but hey. Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page), (gst_ogg_mux_send_headers), (gst_ogg_mux_collected): put Theora BOS pages before others. This hardcodes the Ogg/Theora I profile, but hey. 2006-03-05 23:06:22 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: changed more than 5 lines Original commit message from CVS: changed more than 5 lines 2006-03-05 22:57:58 +0000 Thomas Vander Stichele <thomas@apestaart.org> ogg muxing of vorbis and theora now has pages ordered correctly again, even with delays. Original commit message from CVS: ogg muxing of vorbis and theora now has pages ordered correctly again, even with delays. * ext/ogg/README: updated with some examples * ext/theora/theoraenc.c: (granulepos_to_timestamp), (granulepos_add), (theora_buffer_from_packet): * ext/vorbis/vorbisenc.c: (granulepos_to_timestamp_offset), (granulepos_to_timestamp), (gst_vorbisenc_buffer_from_packet), (gst_vorbisenc_chain): implement strategy from ext/ogg/README * ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page), (gst_ogg_mux_push_buffer), (gst_ogg_mux_dequeue_page), (gst_ogg_mux_pad_queue_page), (gst_ogg_mux_compare_pads), (gst_ogg_mux_queue_pads), (gst_ogg_mux_collected): Fix muxer so that oggz-validate is happy with all streams; except for no eos mark, and the BOS page ordering * tests/check/pipelines/theoraenc.c: (check_buffer_is_header), (check_buffer_granulepos): * tests/check/pipelines/vorbisenc.c: (check_buffer_granulepos): update tests to check for OFFSET being set as requested fixed type of granulepos, it's not a ClockTime 2006-03-05 21:34:23 +0000 Julien Moutte <julien@moutte.net> sys/xvimage/xvimagesink.c: Check that the xvimage we are creating has a correct size before returning it. (#3... Original commit message from CVS: 2006-03-05 Julien MOUTTE <julien@moutte.net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new), (gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc): Check that the xvimage we are creating has a correct size before returning it. (#314897) 2006-03-05 13:44:05 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Give id3 and ape tag typefinders a rank slightly higher than PRIMARY to ensure t... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Give id3 and ape tag typefinders a rank slightly higher than PRIMARY to ensure they're always run before any of the other typefinders (in particular wav and mp3) (#324186). 2006-03-05 13:08:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Add support for '3IVD' fourcc (#333403). Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Add support for '3IVD' fourcc (#333403). 2006-03-04 14:35:10 +0000 Tim-Philipp Müller <tim@centricular.net> configure.ac: Bump requirements to GStreamer CVS for the new error enum. Original commit message from CVS: * configure.ac: Bump requirements to GStreamer CVS for the new error enum. * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_render): Emit new GST_RESOURCE_ERROR_NO_SPACE_LEFT when there's no space left on the device (fixes #333352). 2006-03-03 23:53:50 +0000 Sébastien Moutte <sebastien@moutte.net> win32/vs6: add a project file for libgstvolume update the workspace Original commit message from CVS: * win32/vs6: add a project file for libgstvolume update the workspace 2006-03-03 15:26:57 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/README: * ext/ogg/gstoggmux.c: debug updates Original commit message from CVS: debug updates 2006-03-03 15:22:02 +0000 Thomas Vander Stichele <thomas@apestaart.org> Fix for http://bugzilla.gnome.org/show_bug.cgi?id=333254 Original commit message from CVS: 2006-03-03 Thomas Vander Stichele <thomas at apestaart dot org> * ext/theora/theoraenc.c: (theora_set_header_on_caps): * tests/check/pipelines/theoraenc.c: (check_buffer_is_header), (GST_START_TEST): Fix for http://bugzilla.gnome.org/show_bug.cgi?id=333254 Set IN_CAPS on header buffers 2006-03-02 18:23:55 +0000 Wim Taymans <wim.taymans@gmail.com> docs/plugins/: Add audioresample to docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Add audioresample to docs. * gst/audioconvert/gstaudioconvert.c: Add revision date. * gst/audioresample/gstaudioresample.c: (gst_audioresample_base_init), (gst_audioresample_class_init), (gst_audioresample_init), (gst_audioresample_dispose), (audioresample_get_unit_size), (audioresample_transform_caps), (resample_set_state_from_caps), (audioresample_transform_size), (audioresample_set_caps), (audioresample_event), (audioresample_do_output), (audioresample_transform), (audioresample_pushthrough), (gst_audioresample_set_property), (gst_audioresample_get_property), (plugin_init): * gst/audioresample/gstaudioresample.h: Added docs. Small code cleanups. 2006-03-02 18:12:33 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/videorate/Makefile.am: fix wim's commit Original commit message from CVS: fix wim's commit 2006-03-02 17:48:40 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: debug using the actual GstPad, that allows us to see the serialno in the padname Original commit message from CVS: debug using the actual GstPad, that allows us to see the serialno in the padname 2006-03-02 17:46:36 +0000 Wim Taymans <wim.taymans@gmail.com> docs/plugins/: Added videoscale to docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Added videoscale to docs. * gst/videorate/gstvideorate.c: (gst_video_rate_flush_prev), (gst_video_rate_swap_prev), (gst_video_rate_event), (gst_video_rate_chain): Fix typo in docs. * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init), (gst_video_scale_init), (gst_video_scale_prepare_size), (gst_video_scale_set_caps), (gst_video_scale_get_unit_size), (gst_video_scale_fixate_caps), (gst_video_scale_transform): * gst/videoscale/gstvideoscale.h: Added docs, examples. Some code cleanups. Post errors instead of g_warning. 2006-03-02 17:30:57 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: clean up debug messages Original commit message from CVS: clean up debug messages 2006-03-02 17:15:38 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: extra debugging from older version, makes it easier to compare Original commit message from CVS: extra debugging from older version, makes it easier to compare 2006-03-02 17:04:55 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ext/ogg/gstoggmux.c: some space cleanup and debug fixes Original commit message from CVS: some space cleanup and debug fixes 2006-03-02 16:47:34 +0000 Wim Taymans <wim.taymans@gmail.com> docs/: Added some more docs to libs and plugins. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Added some more docs to libs and plugins. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_prepare_read), (gst_ring_buffer_clear): * gst-libs/gst/audio/gstringbuffer.h: Document ringbuffer some more. * gst/videorate/gstvideorate.c: (gst_video_rate_class_init), (gst_video_rate_setcaps), (gst_video_rate_reset), (gst_video_rate_init), (gst_video_rate_flush_prev), (gst_video_rate_swap_prev), (gst_video_rate_event), (gst_video_rate_chain), (gst_video_rate_change_state): * gst/videorate/gstvideorate.h: Fix videorate to use segments. Make it work with 0/1 framerates (closes #331903) Handle EOS correctly. Added docs. 2006-03-02 13:13:00 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstogmparse.c: In state change function, first chain up to parent class, then handle downwards state change s... Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_parse_class_init), (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_text_parse_init), (gst_ogm_parse_change_state): In state change function, first chain up to parent class, then handle downwards state change stuff. Remove some commented out cruft from 0.8 code. 2006-03-02 12:35:59 +0000 Tim-Philipp Müller <tim@centricular.net> ext/ogg/gstogmparse.c: Don't remove/re-add source pad if the new caps are the same as the old caps anyway (#333042). ... Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_text_parse_init), (gst_ogm_parse_sink_convert), (gst_ogm_parse_sink_query), (gst_ogm_parse_chain): Don't remove/re-add source pad if the new caps are the same as the old caps anyway (#333042). When removing source pad, don't unref it afterwards - we didn't ref it when adding. Sprinkle some GST_DEBUG_FUNCPTR goodness here and there. Don't leak references after using gst_pad_get_parent(). Return downstream flow return value in chain function. 2006-03-02 11:28:23 +0000 Wim Taymans <wim.taymans@gmail.com> docs/plugins/: Fix hierarchy, added some more elements to the docs. Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: Fix hierarchy, added some more elements to the docs. * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_type): * gst/ffmpegcolorspace/gstffmpegcolorspace.h: Fix docs for ffmpegcolorspace. 2006-03-01 19:24:44 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Some typefinding fine-tuning: Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (id3_type_find), (apetag_type_find), (ape_type_find), (plugin_init): Some typefinding fine-tuning: - rank ID3/APE tags in order of preference via probabilities, so that ID3v2 > APEv2 > APEv1 > ID3v1. - three or four bytes don't really justify MAXIMUM probability, change those to 'very likely' (musepack and monkeysaudio). 2006-03-01 18:25:18 +0000 Wim Taymans <wim.taymans@gmail.com> Added alsa docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_class_init), (gst_alsa_mixer_element_init): * ext/alsa/gstalsamixerelement.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init), (gst_alsasrc_init): * ext/alsa/gstalsasrc.h: Added alsa docs. Small code cleanups. 2006-03-01 17:52:45 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/Makefile.am: Dist new header too, Original commit message from CVS: * ext/theora/Makefile.am: Dist new header too, 2006-03-01 17:39:28 +0000 Wim Taymans <wim.taymans@gmail.com> Fix some more docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/gnomevfs/gstgnomevfssink.h: * ext/gnomevfs/gstgnomevfssrc.h: * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): * ext/vorbis/vorbisdec.h: * ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_sink): * ext/vorbis/vorbisenc.h: * ext/vorbis/vorbisparse.c: (vorbis_parse_set_header_on_caps), (vorbis_parse_chain), (vorbis_parse_change_state): * ext/vorbis/vorbisparse.h: * gst/audioconvert/gstaudioconvert.h: * gst/tcp/gsttcpserversink.h: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: Fix some more docs. Added docs for vorbisdec and vorbisparse. Fix vorbisparse. 2006-03-01 16:24:37 +0000 Wim Taymans <wim.taymans@gmail.com> Updated/added documentation. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/pango/gstclockoverlay.h: * ext/pango/gsttextoverlay.h: * ext/pango/gsttextrender.h: * ext/pango/gsttimeoverlay.h: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.h: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * gst/audioconvert/gstaudioconvert.h: * gst/audiotestsrc/gstaudiotestsrc.h: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gstmultifdsink.h: Updated/added documentation. * ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type), (gst_text_overlay_halign_get_type), (gst_text_overlay_wrap_mode_get_type), (gst_text_overlay_base_init), (gst_text_overlay_class_init), (gst_text_overlay_init), (gst_text_overlay_set_property), (gst_text_overlay_get_property): Fix up properties to be enums instead of string to make bindings, introspection and automatic GUI creation possible. Add getters for the properties. 2006-02-28 21:21:07 +0000 Sébastien Moutte <sebastien@moutte.net> gst/audiotestsrc/gstaudiotestsrc.c: added defines of M_PI and M_PI_2 Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: added defines of M_PI and M_PI_2 * gst/ffmpegcolorspace/avcodec.h: removed #include "stdint.h" for win32 as _stdint.h is autogenerated to win32/common * win32/common/libgstaudio.def: * win32/common/libgsttag.def: added some exports * win32/vs6: some project files bugs corrected * win32/vs7: project files are reset to the default vs7 configuration (they link to msvcr71.dll using default optimizations) 2006-02-28 19:08:12 +0000 Wim Taymans <wim.taymans@gmail.com> ext/gnomevfs/gstgnomevfssink.c: Fix some docs. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): Fix some docs. 2006-02-28 13:52:04 +0000 Edward Hervey <bilboed@bilboed.com> ext/alsa/gstalsasrc.c: Set proper class on the ElementDetails: Original commit message from CVS: * ext/alsa/gstalsasrc.c: Set proper class on the ElementDetails: Source/Audio instead of Src/Audio 2006-02-28 12:19:11 +0000 Edward Hervey <bilboed@bilboed.com> gst/videoscale/vs_scanline.c: Revert optimization in videoscale. It should go in liboil and have an appropriate liboi... Original commit message from CVS: * gst/videoscale/vs_scanline.c: (vs_scanline_resample_nearest_RGBA): Revert optimization in videoscale. It should go in liboil and have an appropriate liboil function. 2006-02-28 11:06:24 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Don't try to provide a clock in the NULL state. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_provide_clock): Don't try to provide a clock in the NULL state. 2006-02-28 11:04:47 +0000 Wim Taymans <wim.taymans@gmail.com> ext/ogg/gstoggdemux.c: Use GstSegment infrastructure to remove duplicated code and handle more seek cases correctly. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_receive_event), (gst_ogg_pad_event), (gst_ogg_pad_internal_chain), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_demux_deactivate_current_chain), (gst_ogg_demux_activate_chain), (gst_ogg_demux_do_seek), (gst_ogg_demux_perform_seek), (gst_ogg_demux_collect_info), (gst_ogg_demux_find_chains), (gst_ogg_demux_chain), (gst_ogg_demux_loop), (gst_ogg_demux_change_state): Use GstSegment infrastructure to remove duplicated code and handle more seek cases correctly. 2006-02-28 10:39:19 +0000 Wim Taymans <wim.taymans@gmail.com> gst/ffmpegcolorspace/gstffmpegcolorspace.c: Don't ignore return code from ffmpeg convert function. Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform): Don't ignore return code from ffmpeg convert function. * gst/ffmpegcolorspace/imgconvert.c: (img_convert): Split out some long statements to ease debugging. 2006-02-27 12:08:22 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/libvisual/visual.c: Don't use gst_pad_use_fixed_caps, because it prevents downstream from being able to renegotia... Original commit message from CVS: * ext/libvisual/visual.c: (gst_visual_init), (gst_vis_src_negotiate), (get_buffer), (plugin_init): Don't use gst_pad_use_fixed_caps, because it prevents downstream from being able to renegotiate the size. Instead, use the negotiation algorithm from the goom plugin to pick an initial output caps. Also, allow theoretical libvisual plugins that might support non-GL output even if they also do GL. 2006-02-26 21:05:46 +0000 Julien Moutte <julien@moutte.net> ext/libvisual/visual.c: Load only non GL plugins. Fix some memleaks and possible negotiation issues. Original commit message from CVS: 2006-02-26 Julien MOUTTE <julien@moutte.net> * ext/libvisual/visual.c: (gst_visual_init), (gst_visual_src_setcaps), (get_buffer), (gst_visual_chain), (plugin_init): Load only non GL plugins. Fix some memleaks and possible negotiation issues. 2006-02-24 23:19:44 +0000 Julien Moutte <julien@moutte.net> gst-libs/gst/tag/tag.h: Adding Annodex tags here. Original commit message from CVS: 2006-02-25 Julien MOUTTE <julien@moutte.net> * gst-libs/gst/tag/tag.h: Adding Annodex tags here. 2006-02-24 18:55:27 +0000 Michael Smith <msmith@xiph.org> gst/typefind/gsttypefindfunctions.c: Fix CMML type find function to not require a specific minor version of the CMML ... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mpeg4_video_type_find), (cmml_type_find), (plugin_init): Fix CMML type find function to not require a specific minor version of the CMML header. Add an MPEG4 video elementary stream typefind function. 2006-02-24 17:31:53 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggdemux.c: Annodex support in ogg demuxer. Doesn't do very much without the other annodex patches (to come). Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fishead), (gst_ogg_pad_parse_skeleton_fisbone), (gst_ogg_pad_query_convert), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek), (gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain), (gst_ogg_demux_collect_chain_info), (gst_ogg_demux_change_state), (gst_annodex_granule_to_time): Annodex support in ogg demuxer. Doesn't do very much without the other annodex patches (to come). 2006-02-24 16:21:34 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Pick up palette for MS video v1 (#327028, patch by: Fabrizio Gennari <fabrizio dot get at tiscali dot it>) 2006-02-24 13:54:04 +0000 Tim-Philipp Müller <tim@centricular.net> gst/ffmpegcolorspace/gstffmpegcolorspace.c: The 'palette_data' field from incoming RGB caps shouldn't be proxied on o... Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_caps_remove_format_info), (gst_ffmpegcsp_get_unit_size): The 'palette_data' field from incoming RGB caps shouldn't be proxied on outgoing YUV caps; also, restrict unit size adjustment in case of paletted data only to the unit that actually has a palette. Fixes #330711. 2006-02-24 12:18:14 +0000 Tim-Philipp Müller <tim@centricular.net> gst/ffmpegcolorspace/gstffmpegcolorspace.c: Plug some memory leaks. Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform_caps), (gst_ffmpegcsp_set_caps), (gst_ffmpegcsp_finalize), (gst_ffmpegcsp_class_init), (gst_ffmpegcsp_get_unit_size): Plug some memory leaks. 2006-02-24 10:18:52 +0000 Tim-Philipp Müller <tim@centricular.net> sys/: Add some _CFLAGS and _LIBS that seem to be missing and/or required for Cygwin (see #317048). Original commit message from CVS: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Add some _CFLAGS and _LIBS that seem to be missing and/or required for Cygwin (see #317048). 2006-02-24 00:07:18 +0000 Tim-Philipp Müller <tim@centricular.net> * ChangeLog: ChangeLog surgery: use UTF-8 encoding in stead of ISO-8859-15 Original commit message from CVS: ChangeLog surgery: use UTF-8 encoding in stead of ISO-8859-15 2006-02-22 18:46:46 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasrc.c: Fix description as pointed out by caugier. Original commit message from CVS: * ext/alsa/gstalsasrc.c: Fix description as pointed out by caugier. 2006-02-22 10:29:22 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Better 3gp typefinding. Original commit message from CVS: Reviewed by : Edward Hervey <edward@fluendo.com> * gst/typefind/gsttypefindfunctions.c: (q3gp_type_find), (qt_type_find): Better 3gp typefinding. 2006-02-21 12:16:16 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: Don't send EOS event here, the base class will send one for us. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_create): Don't send EOS event here, the base class will send one for us. * gst/playback/gstplaybasebin.c: (prepare_output): Subpictures without video stream aren't allowed either. * gst/subparse/gstsubparse.c: (gst_subparse_type_find): Fix debug statement copy'n'paste-o. 2006-02-21 12:05:18 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsamixer.c: Fix issues with mixer keeping state when muting/unmuting and when changing the volume whilst... Original commit message from CVS: * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_get_volume): Fix issues with mixer keeping state when muting/unmuting and when changing the volume whilst muted (see #331763 and #331765). 2006-02-20 18:27:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Set right caps given that we send escaped text. Also, honour <i></i>, <b></b> and <u></u>... Original commit message from CVS: * gst/subparse/gstsubparse.c: (subrip_unescape_formatting), (parse_subrip), (gst_sub_parse_format_autodetect): Set right caps given that we send escaped text. Also, honour <i></i>, <b></b> and <u></u> markers that can be found in .srt files (fixes #310202). 2006-02-20 16:21:14 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/mixerutils.c: Make order in which elements are tried more determinable. Original commit message from CVS: * gst-libs/gst/audio/mixerutils.c: (element_factory_rank_compare_func): Make order in which elements are tried more determinable. 2006-02-20 15:57:51 +0000 Julien Moutte <julien@moutte.net> gst/playback/gstdecodebin.c: Make decodebin reusable by fixing remove_element_chain first and then introduce a cleane... Original commit message from CVS: * gst/playback/gstdecodebin.c: (get_our_ghost_pad), (remove_element_chain), (cleanup_decodebin), (gst_decode_bin_change_state): Make decodebin reusable by fixing remove_element_chain first and then introduce a cleaner in state change to ->NULL. (Closes #331678) ------------------------------------------------------ 2006-02-19 14:32:35 +0000 Wim Taymans <wim.taymans@gmail.com> ext/gnomevfs/gstgnomevfssink.c: use 0666 mask when creating files so umask gets applied correctly. Fixes #331295. Original commit message from CVS: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_open_file): use 0666 mask when creating files so umask gets applied correctly. Fixes #331295. 2006-02-19 14:16:16 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/: Add very basic parser for SSA subtitle streams (as often found in matroska files). Original commit message from CVS: * gst/subparse/Makefile.am: * gst/subparse/gstssaparse.c: (gst_ssa_parse_base_init), (gst_ssa_parse_dispose), (gst_ssa_parse_init), (gst_ssa_parse_class_init), (gst_ssa_parse_src_event), (gst_ssa_parse_sink_event), (gst_ssa_parse_setcaps), (gst_ssa_parse_remove_override_codes), (gst_ssa_parse_parse_line), (gst_ssa_parse_chain), (gst_ssa_parse_change_state): * gst/subparse/gstssaparse.h: * gst/subparse/gstsubparse.c: (plugin_init): Add very basic parser for SSA subtitle streams (as often found in matroska files). 2006-02-19 14:09:40 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: That should be text/x-pango-markup, not text/x-pango-layout. Original commit message from CVS: * gst/playback/gstdecodebin.c: (mimetype_is_raw): That should be text/x-pango-markup, not text/x-pango-layout. 2006-02-19 12:41:03 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Polishing. Original commit message from CVS: 2006-02-19 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_finalize): Polishing. 2006-02-19 12:05:23 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Fix state change deadlock. Original commit message from CVS: 2006-02-19 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_src_event), (gst_text_overlay_render_text), (gst_text_overlay_text_pad_link), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): Fix state change deadlock. 2006-02-19 11:56:28 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.*: Fix seeking both for muxed formats and subtitles files. Original commit message from CVS: 2006-02-19 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_src_event), (gst_text_overlay_render_text), (gst_text_overlay_text_pad_link), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): * ext/pango/gsttextoverlay.h: Fix seeking both for muxed formats and subtitles files. 2006-02-19 00:40:38 +0000 Julien Moutte <julien@moutte.net> gst/playback/gstdecodebin.c: pango layout should be considered as row. Original commit message from CVS: 2006-02-19 Julien MOUTTE <julien@moutte.net> * gst/playback/gstdecodebin.c: (mimetype_is_raw): pango layout should be considered as row. 2006-02-19 00:25:16 +0000 Julien Moutte <julien@moutte.net> gst/playback/gststreaminfo.*: Introduce language informations. Original commit message from CVS: 2006-02-19 Julien MOUTTE <julien@moutte.net> * gst/playback/gststreaminfo.c: (gst_stream_type_get_type), (cb_probe): * gst/playback/gststreaminfo.h: Introduce language informations. 2006-02-18 22:41:31 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/: Set shared memory segments to be deleted as soon as we have attached, that way they get cleaned up automaticall... Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new), (gst_ximagesink_ximage_destroy): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): Set shared memory segments to be deleted as soon as we have attached, that way they get cleaned up automatically if we crash. 2006-02-18 19:53:48 +0000 Julien Moutte <julien@moutte.net> ext/pango/: Those functions are called with lock held. Original commit message from CVS: 2006-02-18 Julien MOUTTE <julien@moutte.net> * ext/pango/gstclockoverlay.c: (gst_clock_overlay_get_text): * ext/pango/gsttimeoverlay.c: (gst_time_overlay_get_text): Those functions are called with lock held. 2006-02-18 19:51:47 +0000 Julien Moutte <julien@moutte.net> * ChangeLog: Forgot Changelog. Original commit message from CVS: Forgot Changelog. 2006-02-18 19:10:35 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Refactoring of textoverlay without collectpads. This now supports sparse subtitles coming... Original commit message from CVS: 2006-02-18 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_src_event), (gst_text_overlay_render_text), (gst_text_overlay_text_pad_link), (gst_text_overlay_text_pad_unlink), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): Refactoring of textoverlay without collectpads. This now supports sparse subtitles coming from a demuxer instead of a sub file. Seeking is still broken though. Need to discuss with wtay some more on how to handle seeking correctly. * ext/pango/gsttextoverlay.h: * gst/playback/gstplaybin.c: (setup_sinks): Support linking with subtitles coming from the demuxer. 2006-02-17 19:31:12 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisenc.c: Use some more scaling functions. Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_src), (gst_vorbisenc_convert_sink): Use some more scaling functions. 2006-02-17 16:12:11 +0000 Tim-Philipp Müller <tim@centricular.net> ext/cdparanoia/gstcdparanoiasrc.*: Add back 'transport-error' and 'uncorrected-error' signals and make them actually ... Original commit message from CVS: * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_class_init), (gst_cd_paranoia_dummy_callback), (gst_cd_paranoia_paranoia_callback), (gst_cd_paranoia_src_signal_is_being_watched), (gst_cd_paranoia_src_read_sector): * ext/cdparanoia/gstcdparanoiasrc.h: Add back 'transport-error' and 'uncorrected-error' signals and make them actually be fired when bad stuff happens (#319340). 2006-02-17 14:07:01 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: Small cleanups. Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_get_type), (gst_ring_buffer_open_device), (gst_ring_buffer_close_device), (gst_ring_buffer_device_is_open), (gst_ring_buffer_acquire), (gst_ring_buffer_release), (gst_ring_buffer_set_flushing), (gst_ring_buffer_start), (gst_ring_buffer_pause_unlocked), (gst_ring_buffer_pause), (gst_ring_buffer_stop), (gst_ring_buffer_delay), (gst_ring_buffer_samples_done), (gst_ring_buffer_set_sample), (gst_ring_buffer_clear_all), (gst_ring_buffer_commit), (gst_ring_buffer_prepare_read), (gst_ring_buffer_clear): Small cleanups. Added some G_LIKELY. 2006-02-17 10:15:52 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/TODO: Update TODO Original commit message from CVS: * gst-libs/gst/audio/TODO: Update TODO * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_offset): When trying to play samples ASAP and we don't have a previous sample, try to play at position 0 instead of an invalid position. 2006-02-17 09:24:56 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.c: Also release lock when we get an error in _reset(); fix an error message. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_open), (gst_alsasink_reset): Also release lock when we get an error in _reset(); fix an error message. 2006-02-16 21:01:23 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/gstalsasink.*: Add support for more than 2 channels (#326720). Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_class_init), (gst_alsasink_init), (get_channel_free_structure), (caps_add_channel_configuration), (gst_alsasink_getcaps), (gst_alsasink_close): * ext/alsa/gstalsasink.h: Add support for more than 2 channels (#326720). 2006-02-16 20:19:51 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/riff/riff-media.c: Set codec_name for WAVEFORMATEX as well. When we have 'normal PCM' with 4 or 6 channe... Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Set codec_name for WAVEFORMATEX as well. When we have 'normal PCM' with 4 or 6 channels, assume a default channel layout to make things work (not sure there's anything else we can do in those cases). 2006-02-16 19:18:46 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: Minor docs fix. Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: Minor docs fix. * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_wavext_add_channel_layout), (gst_riff_create_audio_caps): Add support for WAVEFORMATEX, eg. PCM audio with more than two channels and a channel layout map. 2006-02-16 17:06:46 +0000 Edward Hervey <bilboed@bilboed.com> gst/videoscale/vs_scanline.c: C-level optimization of the RGBA nearest neighbour function. Original commit message from CVS: Reviewed by Edward Hervey <edward@fluendo.com> * gst/videoscale/vs_scanline.c: (vs_scanline_resample_nearest_RGBA): C-level optimization of the RGBA nearest neighbour function. Eventually this might end up in liboil with vectorized versions. 2006-02-16 11:44:43 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/multichannel.c: When we have more than 2 channels, but no channel layout is specified in the caps,... Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_get_channel_positions): When we have more than 2 channels, but no channel layout is specified in the caps, return some default channel layout to the caller and warn about about a possibly buggy element (could be buggy filtercaps as well of course) (#317038). 2006-02-16 09:29:38 +0000 Tim-Philipp Müller <tim@centricular.net> pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: Add gst-libs/gst/cdda to list of lib search paths. Original commit message from CVS: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: Add gst-libs/gst/cdda to list of lib search paths. 2006-02-15 12:20:47 +0000 Andy Wingo <wingo@pobox.com> ext/ogg/gstoggmux.c (gst_ogg_mux_collected): When updating timestamp, update timestamp_end as well. Fixes a bugaboo. ... Original commit message from CVS: 2006-02-15 Andy Wingo <wingo@pobox.com> * ext/ogg/gstoggmux.c (gst_ogg_mux_collected): When updating timestamp, update timestamp_end as well. Fixes a bugaboo. I hope to the Lord Jesus that I do not have to touch the ogg muxer ever again. 2006-02-15 12:07:57 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: quicktime movie files can also contain 'uuid' atoms. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (qt_type_find): quicktime movie files can also contain 'uuid' atoms. 2006-02-14 18:52:52 +0000 Tim-Philipp Müller <tim@centricular.net> gst/audioconvert/plugin.c: Register the GstAudioChannelPosition enum type with the type system in the plugin_init fun... Original commit message from CVS: * gst/audioconvert/plugin.c: (plugin_init): Register the GstAudioChannelPosition enum type with the type system in the plugin_init function, so that it is known before any element actually makes use of multi-channel stuff. This is required for example if one wants to be able to deserialise/use a caps string with channel positions before any pipeline has been setup and started, like with gst-launch. 2006-02-14 13:45:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstringbuffer.c: Add some compiler G_(UN_)LIKELY help. Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_pause_unlocked), (gst_ring_buffer_delay), (gst_ring_buffer_samples_done), (wait_segment), (gst_ring_buffer_commit), (gst_ring_buffer_clear): Add some compiler G_(UN_)LIKELY help. SIGNAL the ringbuffer waiters when going to PAUSED as well to make sure they can exit their functions. Should fix #330748 2006-02-13 20:49:07 +0000 Thomas Vander Stichele <thomas@apestaart.org> Windows does not have long long; copy the generated _stdint.h Original commit message from CVS: * Makefile.am: * configure.ac: * win32/MANIFEST: * win32/common/_stdint.h: Windows does not have long long; copy the generated _stdint.h * win32/common/interfaces-enumtypes.c: (gst_color_balance_type_get_type), (gst_mixer_type_get_type), (gst_mixer_track_flags_get_type), (gst_tuner_channel_flags_get_type): * win32/common/multichannel-enumtypes.c: (gst_audio_channel_position_get_type): update 2006-02-13 18:49:02 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Always sync on first sample we receive when starting. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_time), (gst_base_audio_sink_preroll), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Always sync on first sample we receive when starting. 2006-02-13 15:59:48 +0000 Wim Taymans <wim.taymans@gmail.com> gst/playback/gstplaybin.c: Update vis bin docs. Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_vis_element): Update vis bin docs. Move queue after tee so we don't queue video buffers but audio samples instead. Fixes problems where the video queue is filled and the audio queue empty. 2006-02-13 15:17:34 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/cdda/gstcddabasesrc.c: No need to push an EOS event here, GstBaseSrc will do that for us when we return ... Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): No need to push an EOS event here, GstBaseSrc will do that for us when we return FLOW_UNEXPECTED. 2006-02-12 14:54:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Use scale functions when possible. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_time), (gst_base_audio_sink_setcaps), (gst_base_audio_sink_drain), (gst_base_audio_sink_preroll), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Use scale functions when possible. Fix error messages. Free clockid when after waiting for EOS. Use G_(UN_)LIKLY when it makes sense. Fix sample clipping bug found by Arwed v. Merkatz fixes #330789. 2006-02-12 14:26:55 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstplaybasebin.c: Remove stray semi-colon (fixes #330888). Original commit message from CVS: * gst/playback/gstplaybasebin.c: (prepare_output): Remove stray semi-colon (fixes #330888). 2006-02-11 23:35:55 +0000 Jan Schmidt <thaytan@mad.scientist.com> sys/: Fix up the XShm call testing so that we catch errors, and don't cause new ones by attempting to detach from a s... Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls): Fix up the XShm call testing so that we catch errors, and don't cause new ones by attempting to detach from a segment we failed to attach to. Fixes #312439. 2006-02-10 11:29:55 +0000 Edward Hervey <bilboed@bilboed.com> gst/typefind/gsttypefindfunctions.c: Added flv file typefind (video/x-flv). Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (plugin_init): Added flv file typefind (video/x-flv). 2006-02-10 10:53:33 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Added FLV1 <==> 'video/x-flash-video,flvversion=1' conversion. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Added FLV1 <==> 'video/x-flash-video,flvversion=1' conversion. Also added the caps to the default set of riff video caps. 2006-02-09 19:05:23 +0000 Andy Wingo <wingo@pobox.com> ext/ogg/gstoggmux.c (GstOggPad): Keep track of both the start time and the end time of the last packet in the page. Original commit message from CVS: 2006-02-09 Andy Wingo <wingo@pobox.com> * ext/ogg/gstoggmux.c (GstOggPad): Keep track of both the start time and the end time of the last packet in the page. (gst_ogg_mux_pad_queue_page): In addition to setting the timestamp on the pages in our queue, set the duration as well. Reflow a debug statement. (gst_ogg_mux_collected): Keep track of GstOggPad->timestamp_end. Fixes bad muxing order. 2006-02-09 17:04:18 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst-libs/gst/rtp/gstbasertppayload.c: update seqnum before setting it on the packet; this makes sure that the timesta... Original commit message from CVS: * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_setcaps), (gst_basertppayload_push): update seqnum before setting it on the packet; this makes sure that the timestamp and seqnum properties match after pushing a buffer 2006-02-09 12:16:35 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: changelog foo Original commit message from CVS: changelog foo 2006-02-09 11:46:03 +0000 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstringbuffer.c: * win32/common/config.h: kapowpowpow Original commit message from CVS: kapowpowpow 2006-02-09 11:36:18 +0000 Andy Wingo <wingo@pobox.com> gst-libs/gst/audio/gstringbuffer.c Original commit message from CVS: 2006-02-09 Andy Wingo <wingo@pobox.com> * gst-libs/gst/audio/gstringbuffer.c (gst_ring_buffer_samples_done): Cast to guint64, fixes an integer overflow after 13.5 hours of recording. Kapow! * ext/alsa/gstalsasrc.c (gst_alsasrc_delay): Clamp the delay to the buffer size -- we don't care about underrun/overrun reporting right now, just need to return a useful value. 2006-02-09 11:21:33 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.3 === 2006-02-09 11:18:22 +0000 Jan Schmidt <thaytan@mad.scientist.com> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * win32/common/config.h: Releasing 0.10.3 Original commit message from CVS: Releasing 0.10.3 2006-02-08 18:37:38 +0000 Jan Schmidt <thaytan@mad.scientist.com> configure.ac: Drat. Bump libtool version number for new API. Original commit message from CVS: * configure.ac: Drat. Bump libtool version number for new API. Prelease 0.10.2.3 (of 0.10.3) 2006-02-08 15:57:53 +0000 Jan Schmidt <thaytan@mad.scientist.com> 0.10.2.2 prerelease (of 0.10.3). Original commit message from CVS: * configure.ac: * win32/common/config.h: 0.10.2.2 prerelease (of 0.10.3). 2006-02-08 15:50:08 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/tcp/gsttcpclientsrc.c: Revert Andy's newsegment change pending a more correct fix. Original commit message from CVS: * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_create): Revert Andy's newsegment change pending a more correct fix. 2006-02-08 12:46:14 +0000 Jan Schmidt <thaytan@mad.scientist.com> * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-02-08 11:04:09 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst/tcp/gstmultifdsink.c: doc fixes Original commit message from CVS: doc fixes 2006-02-08 09:20:23 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst/typefind/gsttypefindfunctions.c: detect more files as 3gp group and reorder the iso file formats Original commit message from CVS: : * gst/typefind/gsttypefindfunctions.c: (q3gp_type_find), (qt_type_find), (plugin_init): detect more files as 3gp group and reorder the iso file formats 2006-02-07 18:32:00 +0000 Tim-Philipp Müller <tim@centricular.net> ext/vorbis/vorbis.c: Register musicbrainz tags, so apps don't have to. Original commit message from CVS: * ext/vorbis/vorbis.c: (plugin_init): Register musicbrainz tags, so apps don't have to. 2006-02-07 17:44:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstvorbistag.c: Make sure we called gst_tag_register_musicbrainz_tags() before possibly mapping a vo... Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_tag_from_vorbis_tag), (gst_tag_to_vorbis_tag): Make sure we called gst_tag_register_musicbrainz_tags() before possibly mapping a vorbiscomment string from/to a musicbrainz tag. 2006-02-07 16:16:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: In case we can't find the required number of consecutive mpeg audio frames to po... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (mp3_type_find): In case we can't find the required number of consecutive mpeg audio frames to positively identify an MPEG audio stream, check if there's at least a valid mpeg audio frame right at offset 0 and if so suggest mpeg/audio caps with a very low probability (#153004). 2006-02-07 15:52:26 +0000 Andy Wingo <wingo@pobox.com> gst/tcp/gsttcpclientsrc.c (gst_tcp_client_src_create): Switch to a TIME segment if we get timestamped buffers. Requir... Original commit message from CVS: 2006-02-07 Andy Wingo <wingo@pobox.com> * gst/tcp/gsttcpclientsrc.c (gst_tcp_client_src_create): Switch to a TIME segment if we get timestamped buffers. Requires recent fixes in core to work properly. 2006-02-07 14:57:46 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Don't print the URI as part of the error message, it makes error dialogs look rather u... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (prepare_output): Don't print the URI as part of the error message, it makes error dialogs look rather ugly, especially if the URI is very long or has characters in it that need escaping. 2006-02-07 13:11:31 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Error out if we have only text or subtitles, but nothing else. Also error out if we ha... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (prepare_output): Error out if we have only text or subtitles, but nothing else. Also error out if we have subtitles but no video stream. 2006-02-07 11:44:39 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssrc.c: Treat GNOME_VFS_RESULT_EOF as EOS, not as error (#329194). Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_create): Treat GNOME_VFS_RESULT_EOF as EOS, not as error (#329194). Post an error message on the bus when we encounter an error, which will hopefully be more meaningful than the 'Internal Flow Error' message users get to see if we just return GST_FLOW_ERROR. 2006-02-07 11:28:04 +0000 Andy Wingo <wingo@pobox.com> configure.ac (GST_MAJORMINOR): Update core version req to 0.10.2.2, for the collectpads API addition (#330244). Original commit message from CVS: 2006-02-07 Andy Wingo <wingo@pobox.com> * configure.ac (GST_MAJORMINOR): Update core version req to 0.10.2.2, for the collectpads API addition (#330244). 2006-02-06 19:09:26 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfs.c: Return FALSE from plugin_init() when GnomeVFS can't be initialised for some reason (#3284... Original commit message from CVS: * ext/gnomevfs/gstgnomevfs.c: (plugin_init): Return FALSE from plugin_init() when GnomeVFS can't be initialised for some reason (#328423). 2006-02-06 13:26:54 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Stick to seeking theory until i find the bug. Original commit message from CVS: 2006-02-06 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_src_event): Stick to seeking theory until i find the bug. * gst/subparse/gstsubparse.c: (parse_subrip): Fix debug. 2006-02-06 12:38:48 +0000 Jan Schmidt <thaytan@mad.scientist.com> Make theoraenc and the tests leak free. Like, really. Original commit message from CVS: * ext/theora/theoraenc.c: (gst_theora_enc_class_init), (theora_enc_finalize), (theora_enc_sink_setcaps), (theora_set_header_on_caps), (theora_enc_chain), (theora_enc_change_state): * tests/check/pipelines/theoraenc.c: (GST_START_TEST): Make theoraenc and the tests leak free. Like, really. 2006-02-05 23:31:05 +0000 Jan Schmidt <thaytan@mad.scientist.com> Add a finalize method to ensure we clean up state even if someone omitted the state change back to NULL. Original commit message from CVS: (theora_enc_finalize), (theora_enc_sink_setcaps): Add a finalize method to ensure we clean up state even if someone omitted the state change back to NULL. * ext/vorbis/vorbisenc.c: (gst_vorbisenc_metadata_set1), (gst_vorbisenc_chain): Free some more leaked bits. * tests/check/pipelines/theoraenc.c: (start_pipeline), (stop_pipeline): Wait for state changes to happen if they're ASYNC. This ought to teach those fancy pants buildbots a lesson. 2006-02-05 22:47:41 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/tag/gstid3tag.c: Add mapping for ID3 International Standard Recording Code tag "TSRC" Original commit message from CVS: * gst-libs/gst/tag/gstid3tag.c: Add mapping for ID3 International Standard Recording Code tag "TSRC" 2006-02-05 22:44:55 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/vorbis/vorbisenc.c: Don't leak tag names. Original commit message from CVS: * ext/vorbis/vorbisenc.c: (gst_vorbisenc_metadata_set1): Don't leak tag names. 2006-02-05 18:22:01 +0000 Tim-Philipp Müller <tim@centricular.net> Split libgsttag docs into multiple sections. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstid3tag.c: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tags.c: Split libgsttag docs into multiple sections. 2006-02-05 18:01:33 +0000 Tim-Philipp Müller <tim@centricular.net> Add libgsttag to the docs. Original commit message from CVS: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstid3tag.c: (gst_tag_from_id3_tag): * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: Add libgsttag to the docs. 2006-02-05 17:21:23 +0000 Julien Moutte <julien@moutte.net> ext/pango/gsttextoverlay.c: Fix clockoverlay. Original commit message from CVS: 2006-02-05 Julien MOUTTE <julien@moutte.net> * ext/pango/gsttextoverlay.c: (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_src_event), (gst_text_overlay_collected): Fix clockoverlay. 2006-02-05 17:15:17 +0000 Tim-Philipp Müller <tim@centricular.net> docs/libs/compiling.sgml: Fix typo: it's pkg-config, not pkg-gconfig Original commit message from CVS: * docs/libs/compiling.sgml: Fix typo: it's pkg-config, not pkg-gconfig * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/tmpl/gstgconf.sgml: There is no libgstgconf in 0.10, remove it from the docs. 2006-02-05 16:03:48 +0000 Julien Moutte <julien@moutte.net> docs/libs/tmpl/gstcolorbalance.sgml: Updated. Original commit message from CVS: 2006-02-05 Julien MOUTTE <julien@moutte.net> * docs/libs/tmpl/gstcolorbalance.sgml: Updated. * ext/pango/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_src_event), (gst_text_overlay_collected): * gst/subparse/gstsubparse.c: (gst_sub_parse_dispose), (gst_sub_parse_class_init), (gst_sub_parse_init), (gst_sub_parse_src_event), (parse_mdvdsub), (parse_subrip), (parse_mpsub), (parser_state_init), (handle_buffer), (gst_sub_parse_chain), (gst_sub_parse_sink_event), (plugin_init): * gst/subparse/gstsubparse.h: Introduce seeking code. 2006-02-05 15:14:06 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/gstvorbistag.c: Add comment about LANGUAGE tag inconsistency (we want Original commit message from CVS: * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add): Add comment about LANGUAGE tag inconsistency (we want ISO-639-1, but extract three-letter identifiers?) * po/POTFILES.in: Add two translatable files. 2006-02-05 14:59:28 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/tag/: Forward-port some tags stuff from the 0.8 branch. This is mostly the addition of musicbrainz tags ... Original commit message from CVS: * gst-libs/gst/tag/Makefile.am: * gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add): * gst-libs/gst/tag/tag.h: * gst-libs/gst/tag/tags.c: (gst_tag_register_musicbrainz_tags_internal), (gst_tag_register_musicbrainz_tags): Forward-port some tags stuff from the 0.8 branch. This is mostly the addition of musicbrainz tags and their mapping to vorbistags, and a vorbistag mapping of the language tag. 2006-02-05 12:06:25 +0000 Julien Moutte <julien@moutte.net> gst/playback/gstplaybin.c: Fix broken code refactoring. Original commit message from CVS: 2006-02-05 Julien MOUTTE <julien@moutte.net> * gst/playback/gstplaybin.c: (gen_text_element): Fix broken code refactoring. 2006-02-05 03:05:41 +0000 David Schleef <ds@schleef.org> Add Dirac typefinding and add dirac format to oggmux. Original commit message from CVS: * ext/ogg/gstoggmux.c: * gst/typefind/gsttypefindfunctions.c: Add Dirac typefinding and add dirac format to oggmux. 2006-02-04 07:49:03 +0000 Michael Smith <msmith@xiph.org> * configure.ac: Improve error message for liboil missingness. Original commit message from CVS: Improve error message for liboil missingness. 2006-02-03 19:23:41 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: Don't put essential function call into g_return_*() macro, otherwise it'll all be replac... Original commit message from CVS: * gst/playback/gstdecodebin.c: (try_to_link_1): Don't put essential function call into g_return_*() macro, otherwise it'll all be replaced by NOOPs when compiling with G_DISABLE_CHECKS defined. 2006-02-03 17:45:44 +0000 Edgard Lima <edgard.lima@indt.org.br> * ChangeLog: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggparse.c: * gst/tcp/gsttcpserversink.c: * sys/v4l/v4lsrc_calls.c: * sys/v4l/v4lsrc_calls.h: Just make it compile with --disable-gst-debug. Original commit message from CVS: Just make it compile with --disable-gst-debug. 2006-02-03 12:51:47 +0000 Wim Taymans <wim.taymans@gmail.com> ext/alsa/gstalsasink.*: Add lock to protect alsa calls. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_finalise), (gst_alsasink_class_init), (gst_alsasink_init), (gst_alsasink_write), (gst_alsasink_reset): * ext/alsa/gstalsasink.h: Add lock to protect alsa calls. Implement reset to flush samples ASAP, does not work with dmix though. 2006-02-02 18:18:31 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Ugh.. getting late I guess... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_provide_clock): Ugh.. getting late I guess... 2006-02-02 18:13:26 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Don't try to provide a clock when we are not negotiated since we might not be ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_provide_clock), (gst_base_audio_sink_set_property), (gst_base_audio_sink_get_property), (gst_base_audio_sink_render): Don't try to provide a clock when we are not negotiated since we might not be able to make it run. 2006-02-02 17:51:48 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstdecodebin.c: Unlinking two source pads is ... hard. Original commit message from CVS: * gst/playback/gstdecodebin.c: (try_to_link_1): Unlinking two source pads is ... hard. 2006-02-02 12:14:35 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/TODO: Updated. Original commit message from CVS: * gst-libs/gst/audio/TODO: Updated. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_drain), (gst_base_audio_sink_event): On EOS, wait till the last sample is played before posting EOS. 2006-02-02 08:53:27 +0000 Thomas Vander Stichele <thomas@apestaart.org> * tests/check/pipelines/theoraenc.c: comment on my understanding Original commit message from CVS: comment on my understanding 2006-02-02 08:47:42 +0000 Thomas Vander Stichele <thomas@apestaart.org> * common: * tests/check/pipelines/theoraenc.c: reformat to fit 80 chars Original commit message from CVS: reformat to fit 80 chars 2006-02-02 00:04:37 +0000 Kai Vehmanen <kv2004@eca.cx> gst-libs/gst/rtp/gstbasertpdepayload.c: setting queue_delay to zero. Also avoid thread being started if queue_delay i... Original commit message from CVS: 2006-02-01 Philippe Kalaf <burger at speedy dot org> * gst-libs/gst/rtp/gstbasertpdepayload.c: Patch by Kai Vehmanen : Adds ability to enable newsegment bypass by setting queue_delay to zero. Also avoid thread being started if queue_delay is zero. 2006-02-01 14:51:29 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/test6.c: Make test work again by connecting fakesinks to each decoded pad, which makes the pipeline wait... Original commit message from CVS: * gst/playback/test6.c: (new_decoded_pad_cb), (show_error), (main): Make test work again by connecting fakesinks to each decoded pad, which makes the pipeline wait until each fakesink has a buffer queued before going to PAUSED state. At that point we know the decodebin pads are negotiated. 2006-02-01 11:59:47 +0000 Tim-Philipp Müller <tim@centricular.net> gst/: Pass unhandled queries to the parent class's query function. Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_query), (gst_cdda_base_src_handle_event): * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_query): Pass unhandled queries to the parent class's query function. 2006-02-01 11:56:11 +0000 Tim-Philipp Müller <tim@centricular.net> Pass unhandled queries upstream instead of just dropping them (#326447). Also, fix supported query types list for som... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_query_types), (gst_ogg_pad_src_query): * ext/ogg/gstogmparse.c: (gst_ogm_parse_sink_query): * ext/theora/theoradec.c: (theora_dec_src_query), (theora_dec_sink_query): * ext/vorbis/vorbisdec.c: (vorbis_dec_src_query), (vorbis_dec_sink_query): * ext/vorbis/vorbisenc.c: (gst_vorbisenc_src_query), (gst_vorbisenc_sink_query): * gst/adder/gstadder.c: (gst_adder_query): Pass unhandled queries upstream instead of just dropping them (#326447). Also, fix supported query types list for some elements. 2006-02-01 09:58:15 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Fix typefinding for audio/x-au, audio/x-paris and audio/iLBC-sh. We cannot use t... Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (au_type_find), (paris_type_find), (ilbc_type_find), (plugin_init): Fix typefinding for audio/x-au, audio/x-paris and audio/iLBC-sh. We cannot use the START_WITH macros here, because there can only be one typefind factory with the same name (caps), so the second one would replace the first one and the first one would never be called when doing typefinding (see #161712). 2006-01-31 19:25:10 +0000 Wim Taymans <wim.taymans@gmail.com> ext/vorbis/vorbisdec.c: Use scale_int when we can, add some more scaling. Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_convert), (vorbis_handle_header_packet), (vorbis_dec_push), (vorbis_handle_data_packet): Use scale_int when we can, add some more scaling. Check packettype before parsing it. 2006-01-31 17:44:35 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Call right _scale functions. Original commit message from CVS: * ext/theora/theoradec.c: (_theora_granule_time), (theora_dec_src_convert), (theora_dec_sink_convert): Call right _scale functions. Use parameter instead of some other random value. 2006-01-31 17:27:00 +0000 Wim Taymans <wim.taymans@gmail.com> ext/theora/theoradec.c: Use higher precision timestamps calculation. Original commit message from CVS: * ext/theora/theoradec.c: (_theora_granule_frame), (_theora_granule_time), (_inc_granulepos), (theora_dec_src_convert), (theora_dec_sink_convert), (theora_handle_type_packet), (theora_handle_data_packet), (theora_dec_chain): Use higher precision timestamps calculation. Convert some other conversions to _scale. 2006-01-31 17:19:09 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/: initialize gst_controller before using Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_create_sine_table), (plugin_init): * gst/volume/gstvolume.c: (plugin_init): initialize gst_controller before using 2006-01-31 16:26:57 +0000 Jan Schmidt <thaytan@mad.scientist.com> tests/check/pipelines/: Define constant using G_GINT64_CONSTANT to avoid errors when passing it around - otherwise it... Original commit message from CVS: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisenc.c: Define constant using G_GINT64_CONSTANT to avoid errors when passing it around - otherwise it gets truncated to 32 bits. Fixes failing tests. 2006-01-31 15:36:13 +0000 Andy Wingo <wingo@pobox.com> sys/v4l/gstv4lsrc.c (gst_v4lsrc_set_caps): Don't segfault if the caps being set doesn't have a framerate value. Basic... Original commit message from CVS: 2006-01-31 Andy Wingo <wingo@pobox.com> * sys/v4l/gstv4lsrc.c (gst_v4lsrc_set_caps): Don't segfault if the caps being set doesn't have a framerate value. Basically a stopgap measure. * ext/ogg/gstoggmux.c (GST_BUFFER_END_TIME): New macro. Not technically correct enough to put into core though. (gst_ogg_mux_dequeue_page): Use END_TIME instead of TIMESTAMP + DURATION. Fixes theoraenc ! oggmux. * sys/v4l/gstv4lsrc.c (gst_v4lsrc_fixate): Fixate to the nearest fraction, not double. 2006-01-31 12:23:35 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update with latest files Original commit message from CVS: update with latest files 2006-01-30 23:42:54 +0000 Sébastien Moutte <sebastien@moutte.net> win32/vs7: add vs7 project files created by Sergey Scobich Original commit message from CVS: * win32/vs7: add vs7 project files created by Sergey Scobich 2006-01-30 22:18:53 +0000 Sébastien Moutte <sebastien@moutte.net> win32/vs8: add vs8 project files created by Sergey Scobich Original commit message from CVS: * win32/vs8: add vs8 project files created by Sergey Scobich 2006-01-30 19:22:22 +0000 Andy Wingo <wingo@pobox.com> ext/ogg/gstoggmux.c (gst_ogg_mux_dequeue_page): Compare timestamp + duration, not just timestamp -- ogg pages should ... Original commit message from CVS: 2006-01-30 Andy Wingo <wingo@pobox.com> * ext/ogg/gstoggmux.c (gst_ogg_mux_dequeue_page): Compare timestamp + duration, not just timestamp -- ogg pages should be ordered by stop time. Necessary fix given the change in vorbis timestamps. 2006-01-30 19:21:07 +0000 Andy Wingo <wingo@pobox.com> * ChangeLog: * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: * tests/check/pipelines/theoraenc.c: ext/theora/theoraenc.c (theora_enc_sink_setcaps) Original commit message from CVS: 2006-01-30 Andy Wingo <wingo@pobox.com> * ext/theora/theoraenc.c (theora_enc_sink_setcaps) (gst_theora_enc_init): Pull the granule shift out of the encoder. (granulepos_add): New function, handles the messiness of adjusting granulepos values. (theora_buffer_from_packet): (theora_enc_chain): (theora_enc_sink_event): Use granulepos_add, not +. * tests/check/pipelines/theoraenc.c (check_buffer_granulepos_from_starttime): Just check the frame count, not the actual granulepos -- we can't dictate to the encoder when it should be placing keyframes. 2006-01-30 18:17:19 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/gnomevfs/gstgnomevfssrc.c: SERVICE_NOT_AVAILABLE happens for example when you're trying to play an http:// stream... Original commit message from CVS: * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_start): SERVICE_NOT_AVAILABLE happens for example when you're trying to play an http:// stream from a server that's not serving 2006-01-30 17:08:11 +0000 Andy Wingo <wingo@pobox.com> tests/check/pipelines/: Totally remove the UINT64_CONSTANT macro, doesn't appear to be needed or available. Original commit message from CVS: 2006-01-30 Andy Wingo <wingo@pobox.com> * tests/check/pipelines/vorbisenc.c (TIMESTAMP_OFFSET): * tests/check/pipelines/theoraenc.c (TIMESTAMP_OFFSET): Totally remove the UINT64_CONSTANT macro, doesn't appear to be needed or available. 2006-01-30 17:01:54 +0000 Andy Wingo <wingo@pobox.com> ext/theora/: Same changes as were done to vorbisenc, although theoraenc was timestamping correctly. Added handling of... Original commit message from CVS: 2006-01-30 Andy Wingo <wingo@pobox.com> * ext/theora/gsttheoraenc.h: * ext/theora/theoraenc.c: Same changes as were done to vorbisenc, although theoraenc was timestamping correctly. Added handling of streams that start with nonzero timestamps. * tests/check/Makefile.am: * tests/check/pipelines/theoraenc.c: New file, basically does same tests as vorbisenc. * tests/check/pipelines/vorbisenc.c: I claim these bugs. 2006-01-30 16:19:33 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstaudiosink.c: Implement pause that does not wait for completion. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_class_init), (gst_audioringbuffer_release), (gst_audioringbuffer_pause): Implement pause that does not wait for completion. * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Don't drop buffers when going to PAUSED but perform preroll on remaining samples now that core base class supports this. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_release), (gst_ring_buffer_pause_unlocked), (gst_ring_buffer_stop), (gst_ring_buffer_commit): Pause should not signal waiters. Implement return value of _commit correctly. 2006-01-30 15:01:28 +0000 Andy Wingo <wingo@pobox.com> tests/check/Makefile.am (check_vorbis): Add pipelines/vorbisenc. Original commit message from CVS: 2006-01-30 Andy Wingo <wingo@pobox.com> * tests/check/Makefile.am (check_vorbis): Add pipelines/vorbisenc. * ext/vorbis/vorbisenc.c (gst_vorbisenc_buffer_from_packet): Logic updated to timestamp from the first sample, not the last. (gst_vorbisenc_buffer_from_header_packet): New function, takes special care of granulepos and timestamp for header packets. (gst_vorbisenc_chain): Reflow, fix some leaks, and handle the case when the first buffer has a nonzero timestamp. * ext/vorbis/vorbisenc.h (GstVorbisEnc.granulepos_offset) (GstVorbisEnc.subgranule_offset): New members. Take care of the case when the first audio buffer we get has a nonzero timestamp. (GstVorbisEnc.next_ts): Renamed from prev_ts, because now we properly timestamp vorbis buffers with the time of the first sample, not the last. * ext/vorbis/vorbisenc.c (granulepos_to_clocktime): Renamed from vorbis_granule_time_copy -- now it takes the granule/subgranule offset into account. * tests/check/pipelines/vorbisenc.c: New test for correctness of timestamps, durations, and granulepos on buffers produced by vorbisenc. 2006-01-30 14:42:28 +0000 Eric Jonas <jonas@mit.edu> gst/ffmpegcolorspace/gstffmpegcodecmap.c: Patch from Eric Jonas to support conversions to/from UYVY (Fixes: #324626) Original commit message from CVS: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt): Patch from Eric Jonas to support conversions to/from UYVY (Fixes: #324626) 2006-01-30 08:11:14 +0000 Julien Moutte <julien@moutte.net> gst/playback/: Implement subtitles. Original commit message from CVS: 2006-01-30 Julien MOUTTE <julien@moutte.net> * gst/playback/gstplaybasebin.c: (group_commit), (queue_overrun), (setup_subtitle), (setup_source), (set_active_source): * gst/playback/gstplaybin.c: (gst_play_bin_dispose), (gen_text_element), (gen_audio_element), (gen_vis_element), (remove_sinks), (add_sink), (setup_sinks): Implement subtitles. 2006-01-29 19:13:39 +0000 Sébastien Moutte <sebastien@moutte.net> gst-libs/gst/audio/audio.h: (GST_CLOCK_TIME_TO_FRAMES) Original commit message from CVS: * gst-libs/gst/audio/audio.h: (GST_CLOCK_TIME_TO_FRAMES) * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render) use of gst_guint64_to_gdouble to be compliant with vs6 * gst/playback/gstdecodebin.c: (try_to_link_1) * gst/videorate/videorate.c: (gst_video_rate_blank_data) use of G_GINT64_CONSTANT for int64 constants * win32/common/libgstinterfaces.def: export some symbols (gst_mixer_get_type,gst_mixer_track_get_type) * win32/vs6: update and add new project files 2006-01-29 18:21:12 +0000 Thomas Vander Stichele <thomas@apestaart.org> add a win32-update rule like in core, and copy over enumtypes files Original commit message from CVS: * Makefile.am: * win32/MANIFEST: * win32/common/interfaces-enumtypes.c: (gst_color_balance_type_get_type), (gst_mixer_type_get_type), (gst_mixer_track_flags_get_type), (gst_tuner_channel_flags_get_type): * win32/common/interfaces-enumtypes.h: * win32/common/multichannel-enumtypes.c: (gst_audio_channel_position_get_type): * win32/common/multichannel-enumtypes.h: add a win32-update rule like in core, and copy over enumtypes files 2006-01-29 18:07:51 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: generate win32/common/config.h Original commit message from CVS: generate win32/common/config.h 2006-01-29 18:05:42 +0000 Thomas Vander Stichele <thomas@apestaart.org> win32/: add config files just like in core Original commit message from CVS: * win32/MANIFEST: * win32/common/config.h: * win32/common/config.h.in: add config files just like in core 2006-01-28 18:22:06 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/alsa/: Update all error messages. All of them should either use the default translated message, or actually prov... Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_init), (set_hwparams), (set_swparams), (gst_alsasink_prepare), (gst_alsasink_unprepare), (gst_alsasink_close), (gst_alsasink_write), (gst_alsasink_reset): * ext/alsa/gstalsasrc.c: (gst_alsasrc_init), (set_hwparams), (set_swparams), (gst_alsasrc_open), (gst_alsasrc_prepare), (gst_alsasrc_unprepare), (gst_alsasrc_read): Update all error messages. All of them should either use the default translated message, or actually provide a translatable string. Make the string for channel count problems meaningful. 2006-01-28 18:19:18 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstringbuffer.c: Make gcc-4.1 happy (part of #327357). Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (build_linear_format): Make gcc-4.1 happy (part of #327357). 2006-01-28 16:35:47 +0000 Thomas Vander Stichele <thomas@apestaart.org> sys/v4l/v4l_calls.c: check for and throw RESOURCE_BUSY Original commit message from CVS: * sys/v4l/v4l_calls.c: (gst_v4l_open): check for and throw RESOURCE_BUSY 2006-01-28 02:13:14 +0000 David Schleef <ds@schleef.org> gst/videoscale/vs_scanline.c: Oops, *that's* why I never checked in this change -- it requires liboil features not in... Original commit message from CVS: * gst/videoscale/vs_scanline.c: Oops, *that's* why I never checked in this change -- it requires liboil features not in 0.3.6. Revert parts. 2006-01-27 23:40:19 +0000 David Schleef <ds@schleef.org> update liboil requirement to 0.3.6 Original commit message from CVS: * REQUIREMENTS: * configure.ac: update liboil requirement to 0.3.6 * gst/videoscale/Makefile.am: * gst/videoscale/vs_scanline.c: liboilify 2006-01-27 17:00:09 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/libvisual/visual.c: When pad_alloc returns a GstFlowReturn other than GST_FLOW_OK, make sure it is passed upstream. Original commit message from CVS: * ext/libvisual/visual.c: (get_buffer): When pad_alloc returns a GstFlowReturn other than GST_FLOW_OK, make sure it is passed upstream. 2006-01-27 01:36:01 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/alsa/gstalsasink.c: Free the device name string. Original commit message from CVS: * ext/alsa/gstalsasink.c: (gst_alsasink_finalise), (gst_alsasink_class_init): Free the device name string. * ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init), (gst_ogg_mux_request_new_pad), (gst_ogg_mux_release_pad), (gst_ogg_mux_handle_src_event), (gst_ogg_mux_clear_collectpads): Don't remove a pad from the collectpads structure until it is released - it's a request pad, and may receive data again if the element gets moved back to PLAYING state. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): Ensure we turn on double buffering on the Xv port, and set the colour key to something dark and mysterious that isn't black. 2006-01-27 01:06:29 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/: - a library should not call setlocale. see Libraries node in gettext manual Original commit message from CVS: * ext/alsa/gstalsaplugin.c: (plugin_init): * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_base_init), (plugin_init): * ext/gnomevfs/gstgnomevfs.c: (plugin_init): * ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init): - a library should not call setlocale. see Libraries node in gettext manual - make sure all plugins that use translation do bindtextdomain to point to the localedir * gst/playback/gstplaybin.c: (gen_vis_element), (add_sink), (setup_sinks), (plugin_init): all this, and check for NULL when creating sinks 2006-01-26 23:21:31 +0000 Julien Moutte <julien@moutte.net> gst/subparse/gstsubparse.c: Make typefinding of subtitles work again. Original commit message from CVS: 2006-01-27 Julien MOUTTE <julien@moutte.net> * gst/subparse/gstsubparse.c: (gst_subparse_type_find), (plugin_init): Make typefinding of subtitles work again. 2006-01-26 20:40:20 +0000 Tim-Philipp Müller <tim@centricular.net> gst/typefind/gsttypefindfunctions.c: Backport a bunch of typefinding fixes from the 0.8 branch. Original commit message from CVS: * gst/typefind/gsttypefindfunctions.c: (aac_type_find), (mp3_type_frame_length_from_header), (mp3_type_find), (wavpack_type_find), (m4a_type_find), (ircam_type_find), (plugin_init): Backport a bunch of typefinding fixes from the 0.8 branch. Also, improve wavpack typefinding: if we can't peek the entire wavpack block, try to parse the bits we can get and see if we find what we're looking for in those. 2006-01-26 19:17:38 +0000 Julien Moutte <julien@moutte.net> sys/: Handle some more cases of pixel aspect ratio. Original commit message from CVS: 2006-01-26 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_calculate_pixel_aspect_ratio): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_calculate_pixel_aspect_ratio): Handle some more cases of pixel aspect ratio. 2006-01-26 13:09:24 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin.c: Also consider the flush-start and tag events as unblockers for the pad probes. Original commit message from CVS: * gst/playback/gstdecodebin.c: (pad_probe): Also consider the flush-start and tag events as unblockers for the pad probes. 2006-01-26 12:32:58 +0000 Julien Moutte <julien@moutte.net> gst/playback/gstplaybin.c: On the fly visualisation switch, works disabling, enabling as well but it won't be able to... Original commit message from CVS: 2006-01-26 Julien MOUTTE <julien@moutte.net> * gst/playback/gstplaybin.c: (gst_play_bin_init), (gst_play_bin_dispose), (gst_play_bin_vis_unblocked), (gst_play_bin_vis_blocked), (gst_play_bin_set_property): On the fly visualisation switch, works disabling, enabling as well but it won't be able to enable vis in a playbin that was created with no visualisation. 2006-01-25 10:50:32 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Undo previous commit, it breaks resume after pause. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Undo previous commit, it breaks resume after pause. 2006-01-25 09:27:01 +0000 Wim Taymans <wim.taymans@gmail.com> gst-libs/gst/audio/gstbaseaudiosink.c: Improve debugging. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_setcaps), (gst_base_audio_sink_event), (gst_base_audio_sink_preroll), (gst_base_audio_sink_render): Improve debugging. Post error when caps cannot be parsed. Resync on discontinuity in the stream. Clip samples to segment boundaries. return WRONG_STATE sooner when we are flushing. * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_init), (gst_base_audio_src_get_time), (gst_base_audio_src_create): Make audiosrc operate in TIME. Set TIMESTAMP and DURATION on buffers. 2006-01-24 21:55:21 +0000 Tim-Philipp Müller <tim@centricular.net> tests/examples/seek/seek.c: Output tag messages as well. Original commit message from CVS: * tests/examples/seek/seek.c: (main): Output tag messages as well. 2006-01-23 15:05:24 +0000 Edward Hervey <bilboed@bilboed.com> gst/playback/gstdecodebin.c: Replace GstPadBlockCallback with pad probes that detect first buffer AND eos before remo... Original commit message from CVS: * gst/playback/gstdecodebin.c: (gst_decode_bin_init), (free_pad_probes), (remove_fakesink), (pad_probe), (close_pad_link), (gst_decode_bin_change_state): Replace GstPadBlockCallback with pad probes that detect first buffer AND eos before removing fakesink. Fixes hang with demuxers doing EOS while pre-rolling. Solves #328279 2006-01-23 10:10:36 +0000 Jens Granseuer <jensgr@gmx.net> GCC 2.95 fixes (#328263). Original commit message from CVS: 2006-01-23 Andy Wingo <wingo@pobox.com> * ext/alsa/gstalsasink.c: * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps), (gst_base_rtp_depayload_add_to_queue), (gst_base_rtp_depayload_queue_release): GCC 2.95 fixes (#328263). Patch by: Jens Granseuer <jensgr at gmx dot net> 2006-01-22 17:24:02 +0000 Julien Moutte <julien@moutte.net> sys/: Playbin keeps some ref to some frames. We might get a frame destroyed after changing state to Original commit message from CVS: 2006-01-22 Julien MOUTTE <julien@moutte.net> * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_destroy): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimagesink_buffer_alloc): Playbin keeps some ref to some frames. We might get a frame destroyed after changing state to NULL, adding a safety check on xcontext. 2006-01-22 14:50:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/interfaces/xoverlay.c: Fix prepare-xwindow-id code example in the docs - we need to ignore all messages ... Original commit message from CVS: * gst-libs/gst/interfaces/xoverlay.c: Fix prepare-xwindow-id code example in the docs - we need to ignore all messages that aren't element messages as well. 2006-01-21 22:40:03 +0000 Julien Moutte <julien@moutte.net> sys/xvimage/xvimagesink.c: I think one day i'll completely undestand how caps negotiation is supposed to work. This r... Original commit message from CVS: 2006-01-21 Julien MOUTTE <julien@moutte.net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_buffer_alloc): I think one day i'll completely undestand how caps negotiation is supposed to work. This refactoring handles buffer_alloc called with caps we can't handle. We definitely don't want a set_caps with those caps, so we define and allocate a buffer we would like to receive. 2006-01-20 19:10:26 +0000 Christian Schaller <uraeus@gnome.org> * autogen.sh: * common: up automake requirement to 1.7 Original commit message from CVS: up automake requirement to 1.7 2006-01-19 10:59:51 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Free iterator when done. Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_source): Free iterator when done. 2006-01-17 11:43:49 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst-libs/gst/audio/gstbaseaudiosink.c: Fix playback of non-synchronised streams by assuming a rate of 1.0 instead of ... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): Fix playback of non-synchronised streams by assuming a rate of 1.0 instead of a random one. Makes this work again: gst-launch filesrc location=raw_audio.file ! 'audio/x-raw-int, endianness=(int)4321, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100, channels=(int)2' ! audioconvert ! audioresample ! alsasink 2006-01-16 21:01:29 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.10.2 === 2006-01-16 20:59:32 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: releasing 0.10.2 Original commit message from CVS: releasing 0.10.2 2006-01-16 16:38:15 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/: Comment out broken code that connects to the state-changed signal. Original commit message from CVS: * gst/playback/gststreaminfo.c: (gst_stream_info_set_mute): * gst/playback/gststreamselector.c: (gst_stream_selector_set_property): Comment out broken code that connects to the state-changed signal. At this point, changing current stream selection is broken, but stuff like gst-launch playbin current-audio=1 works and filters to the chosen stream. 2006-01-16 15:31:14 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/vorbis/vorbisdec.c: Fix #327216 (null dereference in vorbisdec) Original commit message from CVS: * ext/vorbis/vorbisdec.c: (vorbis_dec_src_query): Fix #327216 (null dereference in vorbisdec) 2006-01-16 15:19:55 +0000 Tim-Philipp Müller <tim@centricular.net> ext/theora/theoradec.c: Post taglist actually on bus instead of just freeing it (fixes #327114 and totem bug #327080). Original commit message from CVS: * ext/theora/theoradec.c: (theora_handle_comment_packet): Post taglist actually on bus instead of just freeing it (fixes #327114 and totem bug #327080). * ext/vorbis/vorbisdec.c: (vorbis_handle_comment_packet): Use gst_element_found_tags_for_pad(), so that the tags are sent downstream as an event as well. 2006-01-15 10:06:40 +0000 Thomas Vander Stichele <thomas@apestaart.org> sys/: move all regularly occurring messages to GST_LOG level add some more object logs Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize), (gst_ximagesink_ximage_new), (gst_ximagesink_ximage_put), (gst_ximagesink_buffer_alloc): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_finalize), (gst_xvimagesink_xvimage_put), (gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc): move all regularly occurring messages to GST_LOG level add some more object logs 2006-01-14 22:59:49 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: prerelease Original commit message from CVS: prerelease 2006-01-14 20:46:25 +0000 Thomas Vander Stichele <thomas@apestaart.org> ext/ogg/gstoggmux.c: fix a silly segfault Original commit message from CVS: 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org> * ext/ogg/gstoggmux.c: (gst_ogg_mux_collected): fix a silly segfault 2006-01-14 12:52:22 +0000 Tim-Philipp Müller <tim@centricular.net> Add docs for mixerutils stuff. Original commit message from CVS: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/audio/mixerutils.c: * gst-libs/gst/audio/mixerutils.h: Add docs for mixerutils stuff. 2006-01-13 17:17:07 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/gstplaybasebin.c: Fix playback for sources that emit raw audio or raw video streams (e.g.: cd audio sour... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (setup_source): Fix playback for sources that emit raw audio or raw video streams (e.g.: cd audio sources) (#325984). 2006-01-13 16:45:50 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst-libs/gst/audio/mixerutils.c: actually save the element we create Original commit message from CVS: * gst-libs/gst/audio/mixerutils.c: (gst_audio_mixer_filter_do_filter): actually save the element we create 2006-01-13 16:17:50 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: remove version suffix Original commit message from CVS: remove version suffix 2006-01-12 14:56:11 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/cdda/gstcddabasesrc.c: No need to post a tag message on the bus when seeking within the same track, only... Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_handle_track_seek): No need to post a tag message on the bus when seeking within the same track, only post it when the current track changes. 2006-01-11 18:30:25 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/: Reenable stream selection. These mechanisms need a complete overhaul in the face of 0.8->0.10 changes ... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (group_destroy), (probe_triggered), (new_decoded_pad), (mute_group_type), (set_active_source): * gst/playback/gststreaminfo.c: (gst_stream_info_set_mute): * gst/playback/gststreamselector.c: (gst_stream_selector_base_init), (gst_stream_selector_set_property), (gst_stream_selector_request_new_pad): Reenable stream selection. These mechanisms need a complete overhaul in the face of 0.8->0.10 changes though. 2006-01-11 18:03:24 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/ogg/gstoggdemux.c: Change the pad template to src_%d to match the pads that are created from it. decodebin needs ... Original commit message from CVS: * ext/ogg/gstoggdemux.c: Change the pad template to src_%d to match the pads that are created from it. decodebin needs this information in order to decide that oggdemux is capable of producing multiple pads (and hence needs queues inserted). * ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads), (gst_ogg_mux_collected): Make debug output more useful by using GST_PTR_FORMAT. 2006-01-11 17:38:35 +0000 Christian Schaller <uraeus@gnome.org> * gst-plugins-base.spec.in: update spec.in file Original commit message from CVS: update spec.in file 2006-01-11 15:11:20 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstringbuffer.c: Set depth and width for alaw/mulaw (fixes #326601). Original commit message from CVS: Reviewed by: Tim-Philipp Müller <tim at centricular dot net> * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_parse_caps): Set depth and width for alaw/mulaw (fixes #326601). 2006-01-10 23:58:36 +0000 Thomas Vander Stichele <thomas@apestaart.org> tests/icles/Makefile.am: don't build the tests if we don't have the libs Original commit message from CVS: * tests/icles/Makefile.am: don't build the tests if we don't have the libs 2006-01-10 18:06:56 +0000 Tim-Philipp Müller <tim@centricular.net> ext/cdparanoia/gstcdparanoiasrc.c: Don't try to free NULL pointers. Original commit message from CVS: * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_close), (gst_cd_paranoia_paranoia_callback): Don't try to free NULL pointers. 2006-01-10 15:47:48 +0000 Edward Hervey <bilboed@bilboed.com> gst/audiorate/gstaudiorate.c: Add debugging category. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain), (gst_audio_rate_change_state), (plugin_init): Add debugging category. Fix type issues. Add case for incoming buffers without valid offset/offset_end. 2006-01-10 12:25:59 +0000 Michael Smith <msmith@xiph.org> gst-libs/gst/audio/gstaudiosrc.c: Don't leak GCond in audio sources. Original commit message from CVS: * gst-libs/gst/audio/gstaudiosrc.c: (gst_audioringbuffer_dispose): Don't leak GCond in audio sources. 2006-01-10 11:49:28 +0000 Jan Schmidt <thaytan@mad.scientist.com> gst/playback/gstplaybin.c: Don't leak an autoaudiosink/alsasink when we generate a new audio element. (old code, I gu... Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_audio_element): Don't leak an autoaudiosink/alsasink when we generate a new audio element. (old code, I guess) 2006-01-10 11:04:21 +0000 Michael Smith <msmith@xiph.org> gst/audiorate/gstaudiorate.c: Support float audio in audiorate. Original commit message from CVS: * gst/audiorate/gstaudiorate.c: (gst_audio_rate_setcaps): Support float audio in audiorate. Use width rather than depth for selecting sample width. 2006-01-10 10:06:53 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/videotestsrc.h: Use GLib types here (that way we don't have to include the generated _stdint.h heade... Original commit message from CVS: * gst/videotestsrc/videotestsrc.h: Use GLib types here (that way we don't have to include the generated _stdint.h header, which makes life easier for win32 folks that don't use autotools for the build) (#325990, patch by: Sergey Scobich). 2006-01-10 09:38:44 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstringbuffer.*: Name (private) union, makes Forte compiler happy (this time for real) (#324900). Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_init), (gst_ring_buffer_set_flushing), (gst_ring_buffer_start), (gst_ring_buffer_pause), (wait_segment): * gst-libs/gst/audio/gstringbuffer.h: Name (private) union, makes Forte compiler happy (this time for real) (#324900). 2006-01-09 10:52:33 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/Makefile.am: Link against libgstinterfaces, needed for mixer and property probe stuff. Original commit message from CVS: * gst-libs/gst/audio/Makefile.am: Link against libgstinterfaces, needed for mixer and property probe stuff. 2006-01-09 10:46:52 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/Makefile.am: Original commit message from CVS: * gst-libs/gst/Makefile.am: 2006-01-09 09:38:34 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/: Add gst_audio_default_registry_mixer_filter() utility function. Original commit message from CVS: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/mixerutils.c: (gst_audio_mixer_filter_do_filter), (gst_audio_mixer_filter_check_element), (gst_audio_mixer_filter_probe_feature), (element_factory_rank_compare_func), (gst_audio_default_registry_mixer_filter): * gst-libs/gst/audio/mixerutils.h: Add gst_audio_default_registry_mixer_filter() utility function. 2006-01-03 17:33:16 +0000 Michael Smith <msmith@xiph.org> gst/audioresample/resample.h: As before, but for o_buf Original commit message from CVS: * gst/audioresample/resample.h: As before, but for o_buf 2006-01-03 17:27:13 +0000 Michael Smith <msmith@xiph.org> gst/audioresample/resample.h: Declare struct _ResampleState.buffer as unsigned char *, not void *, since we do arithm... Original commit message from CVS: * gst/audioresample/resample.h: Declare struct _ResampleState.buffer as unsigned char *, not void *, since we do arithmetic on it. 2006-01-02 23:37:38 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/audio/gstringbuffer.*: Sun's Forte compiler doesn't seem to like anonymous structs, so use same setup as... Original commit message from CVS: * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_init), (gst_ring_buffer_set_flushing), (gst_ring_buffer_start), (gst_ring_buffer_pause), (wait_segment): * gst-libs/gst/audio/gstringbuffer.h: Sun's Forte compiler doesn't seem to like anonymous structs, so use same setup as in GstBaseSrc (fixes #324900). 2005-12-30 14:54:06 +0000 Stefan Kost <ensonic@users.sourceforge.net> move old example to tests/examples/volume/volune.c Original commit message from CVS: * configure.ac: * gst/volume/Makefile.am: * gst/volume/demo.c: move old example to tests/examples/volume/volune.c * tests/examples/Makefile.am: * tests/examples/seek/seek.c: (main): change window-close event from "delete-event" to "destroy" * tests/examples/volume/Makefile.am: * tests/examples/volume/volume.c: (value_changed_callback), (setup_gui), (message_received), (eos_message_received), (main): fix event handling and bus usage 2005-12-29 20:37:23 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audiotestsrc/gstaudiotestsrc.*: update to basesrc changes, implement segmented seeking and eos handling, add a 's... Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init), (gst_audio_test_src_init), (gst_audio_test_src_src_fixate), (gst_audio_test_src_query), (gst_audio_test_src_create_sine), (gst_audio_test_src_create_square), (gst_audio_test_src_create_saw), (gst_audio_test_src_create_triangle), (gst_audio_test_src_create_silence), (gst_audio_test_src_create_white_noise), (gst_audio_test_src_create_pink_noise), (gst_audio_test_src_init_sine_table), (gst_audio_test_src_create_sine_table), (gst_audio_test_src_change_wave), (gst_audio_test_src_change_volume), (gst_audio_test_src_do_seek), (gst_audio_test_src_create), (gst_audio_test_src_set_property): * gst/audiotestsrc/gstaudiotestsrc.h: update to basesrc changes, implement segmented seeking and eos handling, add a 'sine-tab' waveform for performance critical playback 2005-12-29 16:17:55 +0000 Tim-Philipp Müller <tim@centricular.net> po/POTFILES.in: ... and this time the other modified file that I missed last time. Original commit message from CVS: * po/POTFILES.in: ... and this time the other modified file that I missed last time. 2005-12-29 14:31:49 +0000 Michael Smith <msmith@xiph.org> gst/playback/gstdecodebin.c: Fix non-C89 variable declaration not at the start of a block. Should help some compilers. Original commit message from CVS: * gst/playback/gstdecodebin.c: (new_pad): Fix non-C89 variable declaration not at the start of a block. Should help some compilers. 2005-12-29 12:43:22 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: And now fix 'make distcheck' (builddir != srcdir) Original commit message from CVS: * tests/check/Makefile.am: And now fix 'make distcheck' (builddir != srcdir) 2005-12-29 12:22:24 +0000 Tim-Philipp Müller <tim@centricular.net> New cdparanoiasrc element based on cddabasesrc; enable cdparanoia plugin again (there are still fixes required to pla... Original commit message from CVS: * configure.ac: * ext/cdparanoia/Makefile.am: * ext/cdparanoia/gstcdparanoia.c: * ext/cdparanoia/gstcdparanoia.h: * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_mode_get_type), (gst_cd_paranoia_src_base_init), (gst_cd_paranoia_src_init), (gst_cd_paranoia_src_class_init), (gst_cd_paranoia_src_open), (gst_cd_paranoia_src_close), (gst_cd_paranoia_paranoia_callback), (gst_cd_paranoia_src_read_sector), (gst_cd_paranoia_src_finalize), (gst_cd_paranoia_src_set_property), (gst_cd_paranoia_src_get_property), (plugin_init): * ext/cdparanoia/gstcdparanoiasrc.h: New cdparanoiasrc element based on cddabasesrc; enable cdparanoia plugin again (there are still fixes required to playbin to make cdda:// uris work there). 2005-12-29 12:13:57 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/Makefile.am: Fix test case compilation. Original commit message from CVS: * tests/check/Makefile.am: Fix test case compilation. 2005-12-29 11:49:11 +0000 Tim-Philipp Müller <tim@centricular.net> gst-libs/gst/cdda/gstcddabasesrc.c: An integer is not a string. Fix access to uninitialised variable. Original commit message from CVS: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_update_duration), (gst_cdda_base_src_calculate_cddb_id): An integer is not a string. Fix access to uninitialised variable. * tests/check/Makefile.am: Add cddabasesrc unit test; also actually enable the vorbis test. * tests/check/generic/states.c: Blacklist new cd audio elements as well. * tests/check/libs/cddabasesrc.c: Unit test for GstCddaBaseSrc (discid calculation mostly). 2005-12-28 18:19:25 +0000 Tim-Philipp Müller <tim@centricular.net> docs/libs/: Add docs for libgstcdda/GstCddaBaseSrc. Original commit message from CVS: * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: Add docs for libgstcdda/GstCddaBaseSrc. * gst-libs/gst/interfaces/mixertrack.h: Do one struct member per line with a semicolon at the end, that way even gtk-doc might parse it without complaining. 2005-12-28 18:06:50 +0000 Tim-Philipp Müller <tim@centricular.net> Add new libgstcdda with GstCddaBaseSrc class. Original commit message from CVS: * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/cdda/base64.c: * gst-libs/gst/cdda/base64.h: * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_mode_get_type), (gst_cdda_base_src_base_init), (gst_cdda_base_src_class_init), (gst_cdda_base_src_init), (gst_cdda_base_src_finalize), (gst_cdda_base_src_set_property), (gst_cdda_base_src_get_property), (gst_cdda_base_src_get_track_from_sector), (gst_cdda_base_src_get_query_types), (gst_cdda_base_src_convert), (gst_cdda_base_src_query), (gst_cdda_base_src_is_seekable), (gst_cdda_base_src_do_seek), (gst_cdda_base_src_handle_track_seek), (gst_cdda_base_src_handle_event), (gst_cdda_base_src_uri_get_type), (gst_cdda_base_src_uri_get_protocols), (gst_cdda_base_src_uri_get_uri), (gst_cdda_base_src_uri_set_uri), (gst_cdda_base_src_uri_handler_init), (gst_cdda_base_src_setup_interfaces), (gst_cdda_base_src_add_track), (gst_cdda_base_src_update_duration), (cddb_sum), (gst_cddabasesrc_calculate_musicbrainz_discid), (lba_to_msf), (gst_cdda_base_src_calculate_cddb_id), (gst_cdda_base_src_add_tags), (gst_cdda_base_src_add_index_associations), (gst_cdda_base_src_set_index), (gst_cdda_base_src_get_index), (gst_cdda_base_src_track_sort_func), (gst_cdda_base_src_start), (gst_cdda_base_src_clear_tracks), (gst_cdda_base_src_stop), (gst_cdda_base_src_create): * gst-libs/gst/cdda/gstcddabasesrc.h: * gst-libs/gst/cdda/sha1.c: * gst-libs/gst/cdda/sha1.h: Add new libgstcdda with GstCddaBaseSrc class. 2005-12-28 14:59:41 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/gstgnomevfssink.h: Use GstBaseSinkClass as parent_class member for class struct, not Original commit message from CVS: * ext/gnomevfs/gstgnomevfssink.h: Use GstBaseSinkClass as parent_class member for class struct, not GstBaseSink. 2005-12-27 22:29:43 +0000 Tim-Philipp Müller <tim@centricular.net> gst/videotestsrc/gstvideotestsrc.c: Add start method to reset running time and number of frames sent Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init), (gst_video_test_src_start): Add start method to reset running time and number of frames sent when starting up (fixes #324696; patch by: Michal Benes). 2005-12-27 21:58:28 +0000 Tim-Philipp Müller <tim@centricular.net> docs/plugins/: Add docs stuff for gnomevfssrc and gnomevfssink. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.signals: Add docs stuff for gnomevfssrc and gnomevfssink. * ext/gnomevfs/gstgnomevfssrc.c: Fix example pipeline in gtk-doc blurb. 2005-12-27 21:42:23 +0000 Tim-Philipp Müller <tim@centricular.net> ext/gnomevfs/: Port gnomevfssink; add gtk-doc blurb. Original commit message from CVS: * ext/gnomevfs/Makefile.am: * ext/gnomevfs/gstgnomevfs.c: (gst_gnome_vfs_uri_get_type), (gst_gnome_vfs_handle_copy), (gst_gnome_vfs_handle_free), (gst_gnome_vfs_handle_get_type), (plugin_init): * ext/gnomevfs/gstgnomevfs.h: * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_do_init), (gst_gnome_vfs_sink_base_init), (gst_gnome_vfs_sink_class_init), (gst_gnome_vfs_sink_finalize), (gst_gnome_vfs_sink_init), (gst_gnome_vfs_sink_set_property), (gst_gnome_vfs_sink_get_property), (gst_gnome_vfs_sink_open_file), (gst_gnome_vfs_sink_close_file), (gst_gnome_vfs_sink_start), (gst_gnome_vfs_sink_stop), (gst_gnome_vfs_sink_handle_event), (gst_gnome_vfs_sink_query), (gst_gnome_vfs_sink_render), (gst_gnome_vfs_sink_uri_get_type), (gst_gnome_vfs_sink_uri_get_protocols), (gst_gnome_vfs_sink_uri_get_uri), (gst_gnome_vfs_sink_uri_set_uri), (gst_gnome_vfs_sink_uri_handler_init): * ext/gnomevfs/gstgnomevfssink.h: Port gnomevfssink; add gtk-doc blurb. * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_get_type), (gst_gnome_vfs_src_base_init), (gst_gnome_vfs_src_class_init), (gst_gnome_vfs_src_init), (gst_gnome_vfs_src_finalize), (gst_gnome_vfs_src_uri_get_type), (gst_gnome_vfs_src_uri_get_protocols), (gst_gnome_vfs_src_uri_get_uri), (gst_gnome_vfs_src_uri_set_uri), (gst_gnome_vfs_src_uri_handler_init), (gst_gnome_vfs_src_set_property), (gst_gnome_vfs_src_get_property), (gst_gnome_vfs_src_unicodify), (audiocast_thread_run), (gst_gnome_vfs_src_send_additional_headers_callback), (gst_gnome_vfs_src_received_headers_callback), (gst_gnome_vfs_src_push_callbacks), (gst_gnome_vfs_src_pop_callbacks), (gst_gnome_vfs_src_get_icy_metadata), (gst_gnome_vfs_src_create), (gst_gnome_vfs_src_is_seekable), (gst_gnome_vfs_src_get_size), (gst_gnome_vfs_src_start), (gst_gnome_vfs_src_stop): * ext/gnomevfs/gstgnomevfssrc.h: s/gst_gnomevfssrc/gst_gnome_vfs_src/; move header stuff to header file; add gtk-doc blurb with example pipelines. 2005-12-23 18:16:22 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.10.1 === 2005-12-23 18:08:39 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/libs/tmpl/gstcolorbalance.sgml: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: releasing 0.10.1 Original commit message from CVS: releasing 0.10.1 2005-12-21 20:59:52 +0000 Edgard Lima <edgard.lima@indt.org.br> * ChangeLog: * gst/typefind/gsttypefindfunctions.c: iLBC30 and iLBC20 added to typefind. Original commit message from CVS: iLBC30 and iLBC20 added to typefind. 2005-12-20 15:57:06 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * configure.ac: * docs/libs/tmpl/gstcolorbalance.sgml: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: prereleasing Original commit message from CVS: prereleasing 2005-12-20 12:24:29 +0000 Thomas Vander Stichele <thomas@apestaart.org> * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosrc.c: stop making fun of older compilers Original commit message from CVS: stop making fun of older compilers 2005-12-20 12:00:26 +0000 Thomas Vander Stichele <thomas@apestaart.org> gst-libs/gst/audio/: update strings, values are in microseconds change the default sink buffer time to something that... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): update strings, values are in microseconds change the default sink buffer time to something that is smaller (to help software volume mixing have a slightly lower delay) but still be acceptable on Wim's laptop 2005-12-20 10:13:05 +0000 Edward Hervey <bilboed@bilboed.com> gst-libs/gst/riff/riff-media.c: Made a quack, forgot to add DUCK to the riff video template. Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_template_caps): Made a quack, forgot to add DUCK to the riff video template. 2005-12-19 15:00:38 +0000 Edward Hervey <bilboed@bilboed.com> ext/ogg/gstogmparse.c: Make sure pads are initialized correctly. Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_text_parse_base_init), (gst_ogm_parse_init), (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_text_parse_init), (gst_ogm_parse_chain): Make sure pads are initialized correctly. * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Add a whole bunch of FOURCC <=> MimeType. Extend the riff video pad template to support the newly added fourcc. 2005-12-18 15:04:21 +0000 Jan Schmidt <thaytan@mad.scientist.com> ext/ogg/gstoggdemux.c: Extra debug output when activating/deactivating chains. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_deactivate_current_chain), (gst_ogg_demux_activate_chain): Extra debug output when activating/deactivating chains. * gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter), (is_demuxer_element), (try_to_link_1), (remove_element_chain), (unlinked): Remove a queue from our list when it becomes unlinked. Don't add queues to elements in class 'Demux' if they can only produce one pad 2005-12-18 10:54:33 +0000 Julien Moutte <julien@moutte.net> gst-libs/gst/video/gstvideosink.c: Add a debug category. Original commit message from CVS: 2005-12-18 Julien MOUTTE <julien@moutte.net> * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_base_init), (gst_video_sink_get_type): Add a debug category. 2005-12-18 00:56:07 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpdepayload.c: Handle downstream newsegment by sending our own newsegment before the next bu... Original commit message from CVS: 2005-12-17 Philippe Khalaf <burger@speedy.org> * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_init), (gst_base_rtp_depayload_handle_sink_event): Handle downstream newsegment by sending our own newsegment before the next buffer to be released. (#323900) 2005-12-18 00:41:10 +0000 Philippe Kalaf <philippe.kalaf@collabora.co.uk> gst-libs/gst/rtp/gstbasertpdepayload.c: add queue delay to new segment as well (as opposed to just the first buffer).... Original commit message from CVS: 2005-12-17 Philippe Khalaf <burger@speedy.org> * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_set_gst_timestamp): add queue delay to new segment as well (as opposed to just the first buffer). (bug #322347) 2005-12-16 22:00:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> ext/libvisual/visual.c: change some char* into char[] Original commit message from CVS: * ext/libvisual/visual.c: (make_valid_name): change some char* into char[] * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init), (gst_audio_test_src_do_seek), (gst_audio_test_src_create): * gst/audiotestsrc/gstaudiotestsrc.h: prepare to handle EOS and SEGMENT_DONE 2005-12-16 12:32:37 +0000 Tim-Philipp Müller <tim@centricular.net> tests/check/generic/states.c: Blacklist cdparanoia element in state test. Original commit message from CVS: * tests/check/generic/states.c: (GST_START_TEST): Blacklist cdparanoia element in state test. 2005-12-16 11:25:51 +0000 Benjamin Pineau <ben.pineau@gmail.com> gst/tcp/: Add <string.h> includes for memset and FD_ZERO (fixes #323878; Original commit message from CVS: * gst/tcp/gsttcp.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: Add <string.h> includes for memset and FD_ZERO (fixes #323878; patch by: Benjamin Pineau). 2005-12-15 14:43:38 +0000 Michael Smith <msmith@xiph.org> gst/videorate/gstvideorate.c: Fix timestamping for videorate when the first buffer it sees has a non-zero timestamp. ... Original commit message from CVS: * gst/videorate/gstvideorate.c: (gst_video_rate_blank_data), (gst_video_rate_chain): Fix timestamping for videorate when the first buffer it sees has a non-zero timestamp. Fix some misleading debug output. 2005-12-15 10:30:14 +0000 Michael Smith <msmith@xiph.org> gst/audioresample/gstaudioresample.c: Don't leak all input buffers to audioresample. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Don't leak all input buffers to audioresample. 2005-12-15 10:15:10 +0000 Tim-Philipp Müller <tim@centricular.net> ext/pango/gsttextoverlay.c: Don't operate on empty text buffers. Strip newlines and tabs only from the end of the tex... Original commit message from CVS: * ext/pango/gsttextoverlay.c: (gst_text_overlay_collected): Don't operate on empty text buffers. Strip newlines and tabs only from the end of the text, but leave them intact in the middle. Fix typo in gtk-doc description. 2005-12-15 09:48:19 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Make sure the video frame buffer we return to apps via the "frame" property always has caps set on it.... Original commit message from CVS: * gst/playback/gstplaybasebin.c: * gst/playback/gstplaybin.c: (handoff): Make sure the video frame buffer we return to apps via the "frame" property always has caps set on it. Modify _gst_gvalue_set_object() macro to handle NULL objects gracefully too. 2005-12-14 20:42:11 +0000 Stefan Kost <ensonic@users.sourceforge.net> gst/audiotestsrc/gstaudiotestsrc.*: Adjust to some recent api changes and add wtays new cool seeking capabillities Original commit message from CVS: * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init), (gst_audio_test_src_init), (gst_audio_test_src_setcaps), (gst_audio_test_src_src_query), (gst_audio_test_src_do_seek), (gst_audio_test_src_is_seekable), (gst_audio_test_src_create): * gst/audiotestsrc/gstaudiotestsrc.h: Adjust to some recent api changes and add wtays new cool seeking capabillities 2005-12-14 17:58:48 +0000 Tim-Philipp Müller <tim@centricular.net> ext/alsa/: Helper functions to add device probing via the GstPropertyProbe interface to a class. Original commit message from CVS: * ext/alsa/Makefile.am: * ext/alsa/gstalsadeviceprobe.c: * ext/alsa/gstalsadeviceprobe.h: Helper functions to add device probing via the GstPropertyProbe interface to a class. * ext/alsa/gstalsamixer.h: Comment out GST_ALSA_MIXER, it returns a struct that's not used. * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_open): Add some debug info. * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_interface_supported), (gst_implements_interface_init), (gst_alsa_mixer_element_init_interfaces), (gst_alsa_mixer_element_class_init), (gst_alsa_mixer_element_finalize), (gst_alsa_mixer_element_init), (gst_alsa_mixer_element_set_property), (gst_alsa_mixer_element_get_property), (gst_alsa_mixer_element_change_state): * ext/alsa/gstalsamixerelement.h: Add 'device' and 'device-name' properties. Add GstPropertyProbe for device handling (gnome-volume-control will need that). 2005-12-12 20:31:24 +0000 Christian Schaller <uraeus@gnome.org> * ChangeLog: * ext/Makefile.am: * gst-plugins-base.spec.in: updates to activate cdparanoia plugin Original commit message from CVS: updates to activate cdparanoia plugin 2005-12-12 19:13:09 +0000 Michael Smith <msmith@xiph.org> ext/ogg/gstoggdemux.c: Use the correct function to free list of typefind factories. Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_type_find): Use the correct function to free list of typefind factories. 2005-12-12 15:09:55 +0000 Wim Taymans <wim.taymans@gmail.com> gst/videotestsrc/gstvideotestsrc.*: Implement seeking in videotestsrc. Original commit message from CVS: * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init), (gst_video_test_src_init), (gst_video_test_src_parse_caps), (gst_video_test_src_query), (gst_video_test_src_do_seek), (gst_video_test_src_is_seekable), (gst_video_test_src_create): * gst/videotestsrc/gstvideotestsrc.h: Implement seeking in videotestsrc. Small cleanups. 2005-12-12 15:06:46 +0000 Wim Taymans <wim.taymans@gmail.com> ext/cdparanoia/: Partially ported cdparanoia now that basesrc can support a plugin like this.. Original commit message from CVS: * ext/cdparanoia/Makefile.am: * ext/cdparanoia/gstcdparanoia.c: (gst_paranoia_mode_get_type), (gst_paranoia_endian_get_type), (_do_init), (cdparanoia_class_init), (cdparanoia_init), (cdparanoia_set_property), (cdparanoia_get_property), (cdparanoia_do_seek), (cdparanoia_is_seekable), (cdparanoia_create), (cdparanoia_start), (cdparanoia_stop), (cdparanoia_convert), (cdparanoia_get_query_types), (cdparanoia_query), (cdparanoia_set_index), (cdparanoia_uri_set_uri): * ext/cdparanoia/gstcdparanoia.h: Partially ported cdparanoia now that basesrc can support a plugin like this.. 2005-12-12 13:03:50 +0000 Wim Taymans <wim.taymans@gmail.com> tests/examples/seek/scrubby.c: Set higher priority for bus events so they don't get reordered with gtk gui events. Original commit message from CVS: * tests/examples/seek/scrubby.c: (main): Set higher priority for bus events so they don't get reordered with gtk gui events. * tests/examples/seek/seek.c: (do_seek), (start_seek), (stop_seek), (flush_toggle_cb), (main): Added checkbox do disable flushing seeks. Disable scrubbing when doing non flushing seeks. 2005-12-12 09:52:37 +0000 Tim-Philipp Müller <tim@centricular.net> gst/subparse/gstsubparse.c: Implement some sort of event handling that doesn't rely on g_return_if_fail; make sure we... Original commit message from CVS: * gst/subparse/gstsubparse.c: (gst_sub_parse_init), (gst_sub_parse_do_seek), (gst_sub_parse_src_event), (parse_subrip), (parser_state_init), (handle_buffer), (gst_sub_parse_chain), (gst_sub_parse_sink_event), (gst_sub_parse_change_state): Implement some sort of event handling that doesn't rely on g_return_if_fail; make sure we always push the last chunk of an .srt out when we receive an EOS; use gst_pad_alloc_buffer; fix state change function; remove some old cruft. Seeking is still rather unlikely to work though. * tools/.cvsignore: Ignore more. 2005-12-11 22:26:08 +0000 Julien Moutte <julien@moutte.net> sys/xvimage/xvimagesink.c: Fixed a leak of the current image reference when cleaning up. Original commit message from CVS: 2005-12-11 Julien MOUTTE <julien@moutte.net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state): Fixed a leak of the current image reference when cleaning up. Thanks to Arwed von Merkatz (alley_cat) for pointing it out. 2005-12-09 10:23:42 +0000 Michael Smith <msmith@xiph.org> tools/: Remove gst-launch-ext. It doesn't work, and is no longer particularly useful. Original commit message from CVS: * tools/Makefile.am: * tools/gst-launch-ext-m.m: Remove gst-launch-ext. It doesn't work, and is no longer particularly useful. 2005-12-08 18:53:57 +0000 Luca Ognibene <luogni@tin.it> ext/ogg/gstogmparse.c: don't pass random values to ogmparse convert function. Original commit message from CVS: * ext/ogg/gstogmparse.c: (gst_ogm_parse_sink_query): don't pass random values to ogmparse convert function. Make seeking possible in the exile1.ogm file. 2005-12-07 18:51:35 +0000 Tim-Philipp Müller <tim@centricular.net> gst/playback/: Work around refcount problem with g_value_set_object() that occur if the core has been compiled agains... Original commit message from CVS: * gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_property): * gst/playback/gstplaybin.c: (gst_play_bin_get_property): Work around refcount problem with g_value_set_object() that occur if the core has been compiled against GLib-2.6 (g_value_set_object() will only g_object_ref() the element, but the caller will gst_object_unref() it and bad things will happen due to the way GstObjects are refcounted in the GLib-2.6 case). Fixes problems with totem for people on FC4 using Thomas's 0.10 RPMs. 2005-12-07 11:34:37 +0000 Edward Hervey <bilboed@bilboed.com> Time to welcome ogm to 0.10 :) Original commit message from CVS: Time to welcome ogm to 0.10 :) * ext/ogg/gstoggdemux.c: (internal_element_pad_added_cb), (gst_ogg_pad_typefind): Oggdemux can now properly typefind elements with dynamic pads. * ext/ogg/gstogmparse.c: (gst_ogm_parse_chain): Properly set caps on src pad, and set caps on outgoing buffers. 2005-12-06 19:42:02 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.h: * ext/alsa/gstalsamixeroptions.h: * ext/alsa/gstalsamixertrack.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.c: * ext/alsa/gstalsasrc.h: * ext/cdparanoia/gstcdparanoia.h: * ext/gnomevfs/gstgnomevfsuri.h: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gsttextoverlay.h: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/vorbis/vorbisdec.h: * ext/vorbis/vorbisenc.c: * ext/vorbis/vorbisenc.h: * ext/vorbis/vorbisparse.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiosink.c: * gst-libs/gst/audio/gstaudiosink.h: * gst-libs/gst/audio/gstaudiosrc.c: * gst-libs/gst/audio/gstaudiosrc.h: * gst-libs/gst/audio/gstbaseaudiosink.c: * gst-libs/gst/audio/gstbaseaudiosink.h: * gst-libs/gst/audio/gstbaseaudiosrc.c: * gst-libs/gst/audio/gstbaseaudiosrc.h: * gst-libs/gst/audio/gstringbuffer.h: * gst-libs/gst/audio/multichannel.h: * gst-libs/gst/floatcast/floatcast.h: * gst-libs/gst/interfaces/colorbalance.c: * gst-libs/gst/interfaces/colorbalance.h: * gst-libs/gst/interfaces/colorbalancechannel.h: * gst-libs/gst/interfaces/mixer.h: * gst-libs/gst/interfaces/mixeroptions.h: * gst-libs/gst/interfaces/mixertrack.h: * gst-libs/gst/interfaces/navigation.h: * gst-libs/gst/interfaces/propertyprobe.h: * gst-libs/gst/interfaces/tuner.h: * gst-libs/gst/interfaces/tunerchannel.h: * gst-libs/gst/interfaces/tunernorm.h: * gst-libs/gst/interfaces/xoverlay.h: * gst-libs/gst/netbuffer/gstnetbuffer.h: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.h: * gst-libs/gst/riff/riff-read.h: * gst-libs/gst/rtp/gstbasertpdepayload.h: * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstbasertppayload.h: * gst-libs/gst/rtp/gstrtpbuffer.c: * gst-libs/gst/rtp/gstrtpbuffer.h: * gst-libs/gst/tag/gsttageditingprivate.h: * gst-libs/gst/tag/gstvorbistag.c: * gst-libs/gst/tag/tag.h: * gst-libs/gst/video/video.h: * gst/adder/gstadder.c: * gst/adder/gstadder.h: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.c: * gst/audioconvert/gstchannelmix.c: * gst/audioconvert/gstchannelmix.h: * gst/audiorate/gstaudiorate.c: * gst/audioresample/buffer.h: * gst/audioresample/functable.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/resample.h: * gst/ffmpegcolorspace/avcodec.h: * gst/ffmpegcolorspace/gstffmpegcodecmap.c: * gst/ffmpegcolorspace/gstffmpegcodecmap.h: * gst/ffmpegcolorspace/imgconvert.c: * gst/ffmpegcolorspace/imgconvert_template.h: * gst/playback/gstdecodebin.c: * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: * gst/playback/gststreaminfo.h: * gst/tcp/gstfdset.c: * gst/tcp/gstfdset.h: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcp.h: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpclientsrc.h: * gst/tcp/gsttcpplugin.h: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/typefind/gsttypefindfunctions.c: * gst/videorate/gstvideorate.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.h: * sys/v4l/gstv4lcolorbalance.h: * sys/v4l/gstv4ltuner.h: * sys/v4l/gstv4lxoverlay.h: * sys/v4l/v4l_calls.h: * sys/v4l/videodev_mjpeg.h: * tests/check/elements/audioconvert.c: * tests/check/elements/audioresample.c: * tests/check/elements/audiotestsrc.c: * tests/check/elements/videotestsrc.c: * tests/check/elements/volume.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: expand tabs Original commit message from CVS: expand tabs 2005-12-06 19:28:24 +0000 Thomas Vander Stichele <thomas@apestaart.org> * docs/libs/tmpl/gstaudio.sgml: * docs/libs/tmpl/gstcolorbalance.sgml: * docs/libs/tmpl/gstgconf.sgml: * docs/libs/tmpl/gstmixer.sgml: * docs/libs/tmpl/gstringbuffer.sgml: * docs/libs/tmpl/gsttuner.sgml: * docs/libs/tmpl/gstxoverlay.sgml: put back stability level Original commit message from CVS: put back stability level 2005-12-05 18:11:49 +0000 Thomas Vander Stichele <thomas@apestaart.org> * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.10.0 === 2005-12-05 18:02:48 +0000 Thomas Vander Stichele <thomas@apestaart.org> * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/libs/tmpl/gstcolorbalance.sgml: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playbin.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: releasing 0.10.0 Original commit message from CVS: releasing 0.10.0 2001-12-17 18:37:01 +0000 Thomas Vander Stichele <thomas@apestaart.org> building up speed Original commit message from CVS: building up speed