=== release 0.10.36 === 2012-02-20 Tim-Philipp Müller * configure.ac: releasing 0.10.36, "Better" 2012-02-20 23:19:49 +0000 Tim-Philipp Müller * po/ca.po: * po/id.po: po: update translations 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-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-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-05 13:55:40 +0000 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/config.h: 0.10.35.3 pre-release 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-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-23 09:28:18 -0800 David Schleef * gst-libs/gst/interfaces/propertyprobe.c: propertyprobe: fix documentation 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-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-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-17 18:19:30 +0100 Mark Nauwelaerts * ext/ogg/gstoggstream.c: oggstream: initialize variable ... to help out challenged compiler. 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-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-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-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 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-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-09 12:31:02 +0100 Mark Nauwelaerts * gst/playback/gstplay-enum.h: playback: document DEINTERLACE flag 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. 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 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 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-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 19:39:28 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 63d592e to cb5da59 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 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-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-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 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-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-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-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-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-13 12:55:45 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: fix late buffer leak 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-10 02:08:49 +0000 Tim-Philipp Müller * configure.ac: * win32/common/_stdint.h: * win32/common/audio-enumtypes.c: * win32/common/config.h: * win32/common/gstrtsp-enumtypes.c: 0.10.35.2 pre-release 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 15:39:12 +0000 Christian Fredrik Kalager Schaller * gst-plugins-base.spec.in: Add latest header file to spec file 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-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-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-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-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 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-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-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-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 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 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 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-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 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-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-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 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 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-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 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-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-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-22 13:29:10 +0000 Vincent Penquerc'h * ext/ogg/gstoggstream.c: oggstream: extract opus comments 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-19 16:06:09 +0000 Vincent Penquerc'h * ext/ogg/gstoggmux.c: * ext/ogg/gstoggstream.c: ogg: add opus support 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 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 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-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-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-10 15:55:31 +0000 Vincent Penquerc'h * gst-libs/gst/audio/gstbaseaudiosink.c: baseaudiosink: make unsigned properties unsigned, not signed 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 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-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-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-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-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 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 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-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 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-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 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: * tests/examples/volume/volume.c: 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-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 13:00:29 +0200 René Stadler * gst/playback/gstsubtitleoverlay.c: subtitleoverlay: fix event unref in (rare) error case 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-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-10 13:11:59 +0200 Brian Cameron * gst/videotestsrc/Makefile.am: videotestsrc: fix LDADD missing GST_LIBS 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: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-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-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-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-04 23:09:42 +0200 Stefan Sauer * gst/audiotestsrc/gstaudiotestsrc.c: auditestsrc: indent fix 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-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-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-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-28 15:41:16 +0200 Mark Nauwelaerts * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: really push pending events 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 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 00:32:41 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: docs: minor docs fix 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 17:50:31 +0200 Robert Swain * gst/encoding/gstencodebin.c: encodebin: Avoid unnecessary read only caps copy 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-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 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: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 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 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 15:40:02 +0200 Stefan Sauer * common: Automatic update of common submodule From 605cd9a to a39eb83 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 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/gstbaseaudiodecoder.c: * gst-libs/gst/audio/gstbaseaudiodecoder.h: * gst-libs/gst/audio/gstbaseaudioencoder.c: * 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 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 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-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 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 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-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 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-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-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 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-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-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-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 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-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-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-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 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-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 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-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-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-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: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 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-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-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-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-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-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 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-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