=== release 0.10.5 === 2006-03-13 Thomas Vander Stichele * configure.ac: releasing 0.10.5, "Net" 2006-03-13 Tim-Philipp Müller * docs/plugins/Makefile.am: Part of previous cdparanoiasrc docs fixes, forgot to commit. 2006-03-12 Tim-Philipp Müller * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.hierarchy: Add cdparanoiasrc to docs. * gst-libs/gst/cdda/gstcddabasesrc.c: More GstCddaBaseSrc docs. 2006-03-12 Tim-Philipp Müller * docs/libs/gst-plugins-base-libs-sections.txt: * gst-libs/gst/tag/gstid3tag.c: (gst_tag_from_id3_user_tag): * gst-libs/gst/tag/tag.h: Add new API to libgsttag: gst_tag_from_id3_user_tag(). 2006-03-11 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (plugin_init): NULL-terminate array of mpeg4 video file extensions. Fixes crash on PPC (#334226). 2006-03-11 Tim-Philipp Müller * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_check_get_range): gnome_vfs_uri_is_local() alone is not a good indicator whether we can operate in pull-mode with a specific URI, as it returns FALSE for file:// URIs that point to an NFS-mounted path. Be more conservative here: whitelist local files, blacklist http URIs and use the old mechanism for anything else (fixes #334216). 2006-03-10 Thomas Vander Stichele * configure.ac: back to trunk === release 0.10.4 === 2006-03-10 Thomas Vander Stichele * configure.ac: releasing 0.10.4, "Power" 2006-03-10 Jan Schmidt * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init): Disable max-lateness by setting it to -1 for now, so that we can bed QoS stuff in thoroughly between now and the next release. 2006-03-10 Tim-Philipp Müller Patch by: Fabrizio Gennari * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Make sure we don't read beyond the palette buffer in case of broken or manipulated files (#333488) 2006-03-10 Edward Hervey * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset): Fix for variable not initialized. 2006-03-09 Wim Taymans * ext/libvisual/visual.c: (gst_visual_get_type), (gst_visual_src_setcaps), (gst_vis_src_negotiate), (gst_visual_chain): Small cleanups. * ext/theora/gsttheoradec.h: * ext/theora/theoradec.c: (gst_theora_dec_init), (gst_theora_dec_reset), (_theora_granule_time), (theora_dec_src_convert), (theora_dec_sink_convert), (theora_dec_src_query), (theora_dec_src_event), (theora_dec_sink_event), (theora_handle_comment_packet), (theora_handle_header_packet), (theora_dec_push), (theora_handle_data_packet), (theora_dec_chain), (theora_dec_change_state): Add simple QoS. 2006-03-09 Wim Taymans * ext/gnomevfs/gstgnomevfssrc.c: (audiocast_init), (audiocast_register_listener), (gst_gnome_vfs_src_start): Some cleanups. 2006-03-09 Wim Taymans * ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain): Don't try to activate NULL chains. 2006-03-09 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset): Fix invalid memory access to region before peek'd data (#332964). 2006-03-09 Wim Taymans Patch by: Christophe Fergeau * ext/pango/gsttextoverlay.c: (gst_text_overlay_init): * ext/pango/gsttextrender.c: (gst_text_render_init): * gst/adder/gstadder.c: (gst_adder_init): Don't leak padtemplates, closes #333510. 2006-03-09 Tim-Philipp Müller * gst/subparse/gstsubparse.c: (gst_subparse_type_find): Fix invalid memory access: make sure string passed to regexec() is NUL-termianted. 2006-03-09 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (mp3_type_find): Refactor mpeg/audio typefinding to make it more maintainable and easier to fine-tune. Make probing into middle of the file work properly (fixes #333900, also see #152688). 2006-03-09 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (utf8_type_find_have_valid_utf8_at_offset): Remove part from previous commit that was bogus: g_utf8_validate() does in fact not accept embedded zeroes, so we don't need to check for those (thanks to Mike for the hint). 2006-03-08 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (utf8_type_find_count_embedded_zeroes), (utf8_type_find_have_valid_utf8_at_offset), (utf8_type_find): Make plain/text typefinder more conservative: firstly, check for embedded zeroes, which are perfectly valid UTF-8 characters, but also a fairly good sign that something is not a plain text file; secondly, probe into the middle of the file if possible. If we can't probe into the middle, limit the probability value to be returned to TYPE_FIND_POSSIBLE (see #333900). 2006-03-08 Michael Smith * gst/typefind/gsttypefindfunctions.c: (plugin_init): Make typefind function name for mpeg4 video unique. 2006-03-08 Wim Taymans * ext/libvisual/visual.c: (gst_visual_init), (gst_visual_clear_actors), (gst_visual_dispose), (gst_visual_reset), (gst_visual_src_setcaps), (gst_visual_sink_setcaps), (gst_vis_src_negotiate), (gst_visual_sink_event), (gst_visual_src_event), (get_buffer), (gst_visual_chain), (gst_visual_change_state): Cleanups, post nice errors. Handle sink and src events. Implement simple QoS. * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init): Use new basesink methods to configure max-lateness. Small doc update. * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform_caps), (gst_ffmpegcsp_set_caps): Debug statement cleanups. * gst/volume/gstvolume.c: (gst_volume_class_init): Simple cleanup. 2006-03-08 Tim-Philipp Müller * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init), (gst_text_overlay_init), (gst_text_overlay_set_property), (gst_text_overlay_get_property): Revert API/ABI break from March 1. Keep 'halign' and 'valign' as string type properties, but mark them deprecated. Add 'halignment' and 'valignment' properties that use enums instead of strings. 2006-03-08 Tim-Philipp Müller Patch by: Fabrizio Gennari * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Allow palettes with less than 256 colours in AVI files (#333488) 2006-03-07 Julien MOUTTE * ext/pango/gsttextoverlay.c: (gst_text_overlay_text_event), (gst_text_overlay_video_event): Fix wrong EOS handling on text pad. We were releasing the queued text buffer when we should keep it until video pad gets EOS or discard the text buffer because it's too old. That was eating the last subtitle buffer. Add some more debug. 2006-03-07 Tim-Philipp Müller * ext/pango/gsttextoverlay.c: (gst_text_overlay_render_text), (gst_text_overlay_video_chain): Fix invalid memory access (we can't access a buffer after it's been pushed downstream without taking a reference); fix memory leak (if there's no text to render, bail out before allocating stuff). 2006-03-07 Tim-Philipp Müller * ext/pango/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_setcaps_txt), (gst_text_overlay_video_chain): * ext/pango/gsttextoverlay.h: If input is plain text, escape it before passing it to pango_layout_set_markup(). 2006-03-07 Tim-Philipp Müller * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_chain): Don't ignore flow return from gst_pad_push(). 2006-03-07 Tim-Philipp Müller Patch by: Fabrizio Gennari * ext/libvisual/visual.c: (gst_visual_getcaps), (gst_visual_src_setcaps), (gst_visual_sink_setcaps): * ext/ogg/gstoggmux.c: (gst_ogg_mux_sinkconnect): * ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_src), (gst_vorbisenc_convert_sink): * gst-libs/gst/audio/audio.c: (gst_audio_frame_byte_size), (gst_audio_duration_from_pad_buffer): * gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_link), (gst_audio_filter_chain): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_setcaps): * gst-libs/gst/video/video.c: (gst_video_frame_rate), (gst_video_get_size): * gst/audiorate/gstaudiorate.c: (gst_audio_rate_setcaps): Don't leak references returned by gst_pad_get_parent() (#333663) 2006-03-06 Stefan Kost * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): change location param details * gst/volume/gstvolume.c: (plugin_init): correct plugin description 2006-03-06 Tim-Philipp Müller * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init), (gst_gnome_vfs_src_check_get_range): Override GstBaseSrc::check_get_range() in order to avoid opening the resource just to check whether we can operate in pull-mode or not - we can predict that pretty well from the URI alone. Should fix problems with last.fm (#331690). (Requires latest core CVS). 2006-03-06 Wim Taymans * gst-libs/gst/video/gstvideosink.c: (gst_video_sink_init), (gst_video_sink_class_init): Throw away frames that are later than 20 ms. 2006-03-06 Tim-Philipp Müller Patch by: Fabrizio Gennari * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Set depth on WMA caps (#333545) 2006-03-06 Thomas Vander Stichele * ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page), (gst_ogg_mux_send_headers), (gst_ogg_mux_collected): put Theora BOS pages before others. This hardcodes the Ogg/Theora I profile, but hey. 2006-03-05 Thomas Vander Stichele * ext/ogg/README: updated with some examples * ext/theora/theoraenc.c: (granulepos_to_timestamp), (granulepos_add), (theora_buffer_from_packet): * ext/vorbis/vorbisenc.c: (granulepos_to_timestamp_offset), (granulepos_to_timestamp), (gst_vorbisenc_buffer_from_packet), (gst_vorbisenc_chain): implement strategy from ext/ogg/README * ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page), (gst_ogg_mux_push_buffer), (gst_ogg_mux_dequeue_page), (gst_ogg_mux_pad_queue_page), (gst_ogg_mux_compare_pads), (gst_ogg_mux_queue_pads), (gst_ogg_mux_collected): Fix muxer so that oggz-validate is happy with all streams; except for no eos mark, and the BOS page ordering * tests/check/pipelines/theoraenc.c: (check_buffer_is_header), (check_buffer_granulepos): * tests/check/pipelines/vorbisenc.c: (check_buffer_granulepos): update tests to check for OFFSET being set as requested fixed type of granulepos, it's not a ClockTime 2006-03-05 Julien MOUTTE * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new), (gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc): Check that the xvimage we are creating has a correct size before returning it. (#314897) 2006-03-05 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (plugin_init): Give id3 and ape tag typefinders a rank slightly higher than PRIMARY to ensure they're always run before any of the other typefinders (in particular wav and mp3) (#324186). 2006-03-05 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Add support for '3IVD' fourcc (#333403). 2006-03-04 Tim-Philipp Müller * configure.ac: Bump requirements to GStreamer CVS for the new error enum. * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_render): Emit new GST_RESOURCE_ERROR_NO_SPACE_LEFT when there's no space left on the device (fixes #333352). 2006-03-04 Sebastien Moutte * win32/vs6: add a project file for libgstvolume update the workspace 2006-03-03 Thomas Vander Stichele * ext/theora/theoraenc.c: (theora_set_header_on_caps): * tests/check/pipelines/theoraenc.c: (check_buffer_is_header), (GST_START_TEST): Fix for http://bugzilla.gnome.org/show_bug.cgi?id=333254 Set IN_CAPS on header buffers 2006-03-02 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Add audioresample to docs. * gst/audioconvert/gstaudioconvert.c: Add revision date. * gst/audioresample/gstaudioresample.c: (gst_audioresample_base_init), (gst_audioresample_class_init), (gst_audioresample_init), (gst_audioresample_dispose), (audioresample_get_unit_size), (audioresample_transform_caps), (resample_set_state_from_caps), (audioresample_transform_size), (audioresample_set_caps), (audioresample_event), (audioresample_do_output), (audioresample_transform), (audioresample_pushthrough), (gst_audioresample_set_property), (gst_audioresample_get_property), (plugin_init): * gst/audioresample/gstaudioresample.h: Added docs. Small code cleanups. 2006-03-02 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Added videoscale to docs. * gst/videorate/gstvideorate.c: (gst_video_rate_flush_prev), (gst_video_rate_swap_prev), (gst_video_rate_event), (gst_video_rate_chain): Fix typo in docs. * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init), (gst_video_scale_init), (gst_video_scale_prepare_size), (gst_video_scale_set_caps), (gst_video_scale_get_unit_size), (gst_video_scale_fixate_caps), (gst_video_scale_transform): * gst/videoscale/gstvideoscale.h: Added docs, examples. Some code cleanups. Post errors instead of g_warning. 2006-03-02 Wim Taymans * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: * docs/libs/gst-plugins-base-libs.types: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Added some more docs to libs and plugins. * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_prepare_read), (gst_ring_buffer_clear): * gst-libs/gst/audio/gstringbuffer.h: Document ringbuffer some more. * gst/videorate/gstvideorate.c: (gst_video_rate_class_init), (gst_video_rate_setcaps), (gst_video_rate_reset), (gst_video_rate_init), (gst_video_rate_flush_prev), (gst_video_rate_swap_prev), (gst_video_rate_event), (gst_video_rate_chain), (gst_video_rate_change_state): * gst/videorate/gstvideorate.h: Fix videorate to use segments. Make it work with 0/1 framerates (closes #331903) Handle EOS correctly. Added docs. 2006-03-02 Tim-Philipp Müller * ext/ogg/gstogmparse.c: (gst_ogm_parse_class_init), (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_text_parse_init), (gst_ogm_parse_change_state): In state change function, first chain up to parent class, then handle downwards state change stuff. Remove some commented out cruft from 0.8 code. 2006-03-02 Tim-Philipp Müller * ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_text_parse_init), (gst_ogm_parse_sink_convert), (gst_ogm_parse_sink_query), (gst_ogm_parse_chain): Don't remove/re-add source pad if the new caps are the same as the old caps anyway (#333042). When removing source pad, don't unref it afterwards - we didn't ref it when adding. Sprinkle some GST_DEBUG_FUNCPTR goodness here and there. Don't leak references after using gst_pad_get_parent(). Return downstream flow return value in chain function. 2006-03-02 Wim Taymans * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.signals: Fix hierarchy, added some more elements to the docs. * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_type): * gst/ffmpegcolorspace/gstffmpegcolorspace.h: Fix docs for ffmpegcolorspace. 2006-03-01 Tim-Philipp Müller * gst/typefind/gsttypefindfunctions.c: (id3_type_find), (apetag_type_find), (ape_type_find), (plugin_init): Some typefinding fine-tuning: - rank ID3/APE tags in order of preference via probabilities, so that ID3v2 > APEv2 > APEv1 > ID3v1. - three or four bytes don't really justify MAXIMUM probability, change those to 'very likely' (musepack and monkeysaudio). 2006-03-01 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsamixer.h: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_class_init), (gst_alsa_mixer_element_init): * ext/alsa/gstalsamixerelement.h: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasink.h: * ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init), (gst_alsasrc_init): * ext/alsa/gstalsasrc.h: Added alsa docs. Small code cleanups. 2006-03-01 Wim Taymans * ext/theora/Makefile.am: Dist new header too, 2006-03-01 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/gnomevfs/gstgnomevfssink.h: * ext/gnomevfs/gstgnomevfssrc.h: * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): * ext/vorbis/vorbisdec.h: * ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_sink): * ext/vorbis/vorbisenc.h: * ext/vorbis/vorbisparse.c: (vorbis_parse_set_header_on_caps), (vorbis_parse_chain), (vorbis_parse_change_state): * ext/vorbis/vorbisparse.h: * gst/audioconvert/gstaudioconvert.h: * gst/tcp/gsttcpserversink.h: * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/volume/gstvolume.c: * gst/volume/gstvolume.h: Fix some more docs. Added docs for vorbisdec and vorbisparse. Fix vorbisparse. 2006-03-01 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * ext/pango/gstclockoverlay.h: * ext/pango/gsttextoverlay.h: * ext/pango/gsttextrender.h: * ext/pango/gsttimeoverlay.h: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.h: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * gst/audioconvert/gstaudioconvert.h: * gst/audiotestsrc/gstaudiotestsrc.h: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gstmultifdsink.h: Updated/added documentation. * ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type), (gst_text_overlay_halign_get_type), (gst_text_overlay_wrap_mode_get_type), (gst_text_overlay_base_init), (gst_text_overlay_class_init), (gst_text_overlay_init), (gst_text_overlay_set_property), (gst_text_overlay_get_property): Fix up properties to be enums instead of string to make bindings, introspection and automatic GUI creation possible. Add getters for the properties. 2006-02-28 Sebastien Moutte * gst/audiotestsrc/gstaudiotestsrc.c: added defines of M_PI and M_PI_2 * gst/ffmpegcolorspace/avcodec.h: removed #include "stdint.h" for win32 as _stdint.h is autogenerated to win32/common * win32/common/libgstaudio.def: * win32/common/libgsttag.def: added some exports * win32/vs6: some project files bugs corrected * win32/vs7: project files are reset to the default vs7 configuration (they link to msvcr71.dll using default optimizations) 2006-02-28 Wim Taymans * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): Fix some docs. 2006-02-28 Edward Hervey * ext/alsa/gstalsasrc.c: Set proper class on the ElementDetails: Source/Audio instead of Src/Audio/ 2006-02-28 Edward Hervey * gst/videoscale/vs_scanline.c: (vs_scanline_resample_nearest_RGBA): Revert optimization in videoscale. It should go in liboil and have an appropriate liboil function. 2006-02-28 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_provide_clock): Don't try to provide a clock in the NULL state. 2006-02-28 Wim Taymans * ext/ogg/gstoggdemux.c: (gst_ogg_demux_receive_event), (gst_ogg_pad_event), (gst_ogg_pad_internal_chain), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_demux_deactivate_current_chain), (gst_ogg_demux_activate_chain), (gst_ogg_demux_do_seek), (gst_ogg_demux_perform_seek), (gst_ogg_demux_collect_info), (gst_ogg_demux_find_chains), (gst_ogg_demux_chain), (gst_ogg_demux_loop), (gst_ogg_demux_change_state): Use GstSegment infrastructure to remove duplicated code and handle more seek cases correctly. 2006-02-28 Wim Taymans * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform): Don't ignore return code from ffmpeg convert function. * gst/ffmpegcolorspace/imgconvert.c: (img_convert): Split out some long statements to ease debugging. 2006-02-27 Jan Schmidt * ext/libvisual/visual.c: (gst_visual_init), (gst_vis_src_negotiate), (get_buffer), (plugin_init): Don't use gst_pad_use_fixed_caps, because it prevents downstream from being able to renegotiate the size. Instead, use the negotiation algorithm from the goom plugin to pick an initial output caps. Also, allow theoretical libvisual plugins that might support non-GL output even if they also do GL. 2006-02-26 Julien MOUTTE * ext/libvisual/visual.c: (gst_visual_init), (gst_visual_src_setcaps), (get_buffer), (gst_visual_chain), (plugin_init): Load only non GL plugins. Fix some memleaks and possible negotiation issues. 2006-02-25 Julien MOUTTE * gst-libs/gst/tag/tag.h: Adding Annodex tags here. 2006-02-24 Michael Smith * gst/typefind/gsttypefindfunctions.c: (mpeg4_video_type_find), (cmml_type_find), (plugin_init): Fix CMML type find function to not require a specific minor version of the CMML header. Add an MPEG4 video elementary stream typefind function. 2006-02-04 Michael Smith * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fishead), (gst_ogg_pad_parse_skeleton_fisbone), (gst_ogg_pad_query_convert), (gst_ogg_demux_chain_peer), (gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek), (gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain), (gst_ogg_demux_collect_chain_info), (gst_ogg_demux_change_state), (gst_annodex_granule_to_time): Annodex support in ogg demuxer. Doesn't do very much without the other annodex patches (to come). 2006-02-24 Tim-Philipp Müller Patch by: Fabrizio Gennari * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps): Pick up palette for MS video v1 (#327028) 2006-02-24 Tim-Philipp Müller * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_caps_remove_format_info), (gst_ffmpegcsp_get_unit_size): The 'palette_data' field from incoming RGB caps shouldn't be proxied on outgoing YUV caps; also, restrict unit size adjustment in case of paletted data only to the unit that actually has a palette. Fixes #330711. 2006-02-24 Tim-Philipp Müller * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_transform_caps), (gst_ffmpegcsp_set_caps), (gst_ffmpegcsp_finalize), (gst_ffmpegcsp_class_init), (gst_ffmpegcsp_get_unit_size): Plug some memory leaks. 2006-02-24 Tim-Philipp Müller * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Add some _CFLAGS and _LIBS that seem to be missing and/or required for Cygwin (see #317048). 2006-02-22 Wim Taymans * ext/alsa/gstalsasrc.c: Fix description as pointed out by caugier. 2006-02-22 Tommi Myöhänen Reviewed by : Edward Hervey * gst/typefind/gsttypefindfunctions.c: (q3gp_type_find), (qt_type_find): Better 3gp typefinding (#331526). 2006-02-21 Tim-Philipp Müller * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_create): Don't send EOS event here, the base class will send one for us. * gst/playback/gstplaybasebin.c: (prepare_output): Subpictures without video stream aren't allowed either. * gst/subparse/gstsubparse.c: (gst_subparse_type_find): Fix debug statement copy'n'paste-o. 2006-02-21 Tim-Philipp Müller * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_get_volume): Fix issues with mixer keeping state when muting/unmuting and when changing the volume whilst muted (see #331763 and #331765). 2006-02-20 Tim-Philipp Müller * gst/subparse/gstsubparse.c: (subrip_unescape_formatting), (parse_subrip), (gst_sub_parse_format_autodetect): Set right caps given that we send escaped text. Also, honour , and markers that can be found in .srt files (fixes #310202). 2006-02-20 Tim-Philipp Müller * gst-libs/gst/audio/mixerutils.c: (element_factory_rank_compare_func): Make order in which elements are tried more determinable. 2006-02-20 Julien MOUTTE * gst/playback/gstdecodebin.c: (get_our_ghost_pad), (remove_element_chain), (cleanup_decodebin), (gst_decode_bin_change_state): Make decodebin reusable by fixing remove_element_chain first and then introduce a cleaner in state change to ->NULL. (Closes #331678) 2006-02-19 Wim Taymans * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_open_file): use 0666 mask when creating files so umask gets applied correctly. Fixes #331295. 2006-02-19 Tim-Philipp Müller * gst/subparse/Makefile.am: * gst/subparse/gstssaparse.c: (gst_ssa_parse_base_init), (gst_ssa_parse_dispose), (gst_ssa_parse_init), (gst_ssa_parse_class_init), (gst_ssa_parse_src_event), (gst_ssa_parse_sink_event), (gst_ssa_parse_setcaps), (gst_ssa_parse_remove_override_codes), (gst_ssa_parse_parse_line), (gst_ssa_parse_chain), (gst_ssa_parse_change_state): * gst/subparse/gstssaparse.h: * gst/subparse/gstsubparse.c: (plugin_init): Add very basic parser for SSA subtitle streams (as often found in matroska files). 2006-02-19 Tim-Philipp Müller * gst/playback/gstdecodebin.c: (mimetype_is_raw): That should be text/x-pango-markup, not text/x-pango-layout. 2006-02-19 Julien MOUTTE * ext/pango/gsttextoverlay.c: (gst_text_overlay_finalize): Polishing. 2006-02-19 Julien MOUTTE * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_src_event), (gst_text_overlay_render_text), (gst_text_overlay_text_pad_link), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): Fix state change deadlock. 2006-02-19 Julien MOUTTE * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_src_event), (gst_text_overlay_render_text), (gst_text_overlay_text_pad_link), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): * ext/pango/gsttextoverlay.h: Fix seeking both for muxed formats and subtitles files. 2006-02-19 Julien MOUTTE * gst/playback/gstdecodebin.c: (mimetype_is_raw): pango layout should be considered as raw. 2006-02-19 Julien MOUTTE * gst/playback/gststreaminfo.c: (gst_stream_type_get_type), (cb_probe): * gst/playback/gststreaminfo.h: Introduce language informations. 2006-02-18 Jan Schmidt * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new), (gst_ximagesink_ximage_destroy): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): Set shared memory segments to be deleted as soon as we have attached, that way they get cleaned up automatically if we crash. 2006-02-18 Julien MOUTTE * ext/pango/gstclockoverlay.c: (gst_clock_overlay_get_text): * ext/pango/gsttimeoverlay.c: (gst_time_overlay_get_text): Those functions are called with lock held. 2006-02-18 Julien MOUTTE * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_src_event), (gst_text_overlay_render_text), (gst_text_overlay_text_pad_link), (gst_text_overlay_text_pad_unlink), (gst_text_overlay_text_event), (gst_text_overlay_video_event), (gst_text_overlay_pop_text), (gst_text_overlay_text_chain), (gst_text_overlay_video_chain), (gst_text_overlay_change_state): Refactoring of textoverlay without collectpads. This now supports sparse subtitles coming from a demuxer instead of a sub file. Seeking is still broken though. Need to discuss with wtay some more on how to handle seeking correctly. * ext/pango/gsttextoverlay.h: * gst/playback/gstplaybin.c: (setup_sinks): Support linking with subtitles coming from the demuxer. 2006-02-17 Wim Taymans * ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_src), (gst_vorbisenc_convert_sink): Use some more scaling functions. 2006-02-17 Tim-Philipp Müller * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_class_init), (gst_cd_paranoia_dummy_callback), (gst_cd_paranoia_paranoia_callback), (gst_cd_paranoia_src_signal_is_being_watched), (gst_cd_paranoia_src_read_sector): * ext/cdparanoia/gstcdparanoiasrc.h: Add back 'transport-error' and 'uncorrected-error' signals and make them actually be fired when bad stuff happens (#319340). 2006-02-17 Wim Taymans * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_get_type), (gst_ring_buffer_open_device), (gst_ring_buffer_close_device), (gst_ring_buffer_device_is_open), (gst_ring_buffer_acquire), (gst_ring_buffer_release), (gst_ring_buffer_set_flushing), (gst_ring_buffer_start), (gst_ring_buffer_pause_unlocked), (gst_ring_buffer_pause), (gst_ring_buffer_stop), (gst_ring_buffer_delay), (gst_ring_buffer_samples_done), (gst_ring_buffer_set_sample), (gst_ring_buffer_clear_all), (gst_ring_buffer_commit), (gst_ring_buffer_prepare_read), (gst_ring_buffer_clear): Small cleanups. Added some G_LIKELY. 2006-02-17 Wim Taymans * gst-libs/gst/audio/TODO: Update TODO * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_offset): When trying to play samples ASAP and we don't have a previous sample, try to play at position 0 instead of an invalid position. 2006-02-17 Wim Taymans * ext/alsa/gstalsasink.c: (gst_alsasink_open), (gst_alsasink_reset): Also release lock when we get an error in _reset(); fix an error message. 2006-02-16 Tim-Philipp Müller * ext/alsa/gstalsasink.c: (gst_alsasink_class_init), (gst_alsasink_init), (get_channel_free_structure), (caps_add_channel_configuration), (gst_alsasink_getcaps), (gst_alsasink_close): * ext/alsa/gstalsasink.h: Add support for more than 2 channels (#326720). 2006-02-16 Tim-Philipp Müller * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): Set codec_name for WAVEFORMATEX as well. When we have 'normal PCM' with 4 or 6 channels, assume a default channel layout to make things work (not sure there's anything else we can do in those cases). 2006-02-16 Tim-Philipp Müller * gst-libs/gst/audio/multichannel.c: Minor docs fix. * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/riff/riff-ids.h: * gst-libs/gst/riff/riff-media.c: (gst_riff_wavext_add_channel_layout), (gst_riff_create_audio_caps): Add support for WAVEFORMATEX, eg. PCM audio with more than two channels and a channel layout map. 2006-02-16 Mathieu Garcia Reviewed by Edward Hervey * gst/videoscale/vs_scanline.c: (vs_scanline_resample_nearest_RGBA): C-level optimization of the RGBA nearest neighbour function. Eventually this might end up in liboil with vectorized versions. 2006-02-16 Tim-Philipp Müller * gst-libs/gst/audio/multichannel.c: (gst_audio_get_channel_positions): When we have more than 2 channels, but no channel layout is specified in the caps, return some default channel layout to the caller and warn about about a possibly buggy element (could be buggy filtercaps as well of course) (#317038). 2006-02-16 Tim-Philipp Müller * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: Add gst-libs/gst/cdda to list of lib search paths. 2006-02-15 Andy Wingo * ext/ogg/gstoggmux.c (gst_ogg_mux_collected): When updating timestamp, update timestamp_end as well. Fixes a bugaboo. I hope to the Lord Jesus that I do not have to touch the ogg muxer ever again. 2006-02-15 Edward Hervey * gst/typefind/gsttypefindfunctions.c: (qt_type_find): quicktime movie files can also contain 'uuid' atoms. 2006-02-14 Tim-Philipp Müller * gst/audioconvert/plugin.c: (plugin_init): Register the GstAudioChannelPosition enum type with the type system in the plugin_init function, so that it is known before any element actually makes use of multi-channel stuff. This is required for example if one wants to be able to deserialise/use a caps string with channel positions before any pipeline has been setup and started, like with gst-launch. 2006-02-14 Wim Taymans * gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_pause_unlocked), (gst_ring_buffer_delay), (gst_ring_buffer_samples_done), (wait_segment), (gst_ring_buffer_commit), (gst_ring_buffer_clear): Add some compiler G_(UN_)LIKELY help. SIGNAL the ringbuffer waiters when going to PAUSED as well to make sure they can exit their functions. Should fix #330748 2006-02-13 Thomas Vander Stichele * Makefile.am: * configure.ac: * win32/MANIFEST: * win32/common/_stdint.h: Windows does not have long long; copy the generated _stdint.h * win32/common/interfaces-enumtypes.c: (gst_color_balance_type_get_type), (gst_mixer_type_get_type), (gst_mixer_track_flags_get_type), (gst_tuner_channel_flags_get_type): * win32/common/multichannel-enumtypes.c: (gst_audio_channel_position_get_type): update 2006-02-13 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_time), (gst_base_audio_sink_preroll), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Always sync on first sample we receive when starting. 2006-02-13 Wim Taymans * gst/playback/gstplaybin.c: (gen_vis_element): Update vis bin docs. Move queue after tee so we don't queue video buffers but audio samples instead. Fixes problems where the video queue is filled and the audio queue empty. 2006-02-13 Tim-Philipp Müller * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): No need to push an EOS event here, GstBaseSrc will do that for us when we return FLOW_UNEXPECTED. 2006-02-12 Wim Taymans * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_get_time), (gst_base_audio_sink_setcaps), (gst_base_audio_sink_drain), (gst_base_audio_sink_preroll), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): Use scale functions when possible. Fix error messages. Free clockid when after waiting for EOS. Use G_(UN_)LIKLY when it makes sense. Fix sample clipping bug found by Arwed v. Merkatz fixes #330789. 2006-02-12 Edward Hervey * gst/playback/gstplaybasebin.c: (prepare_output): Remove stray semi-colon (fixes #330888). 2006-02-12 Jan Schmidt * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls): Fix up the XShm call testing so that we catch errors, and don't cause new ones by attempting to detach from a segment we failed to attach to. Fixes #312439. 2006-02-10 Edward Hervey * gst/typefind/gsttypefindfunctions.c: (plugin_init): Added flv file typefind (video/x-flv). 2006-02-10 Edward Hervey * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps), (gst_riff_create_video_template_caps): Added FLV1 <==> 'video/x-flash-video,flvversion=1' conversion. Also added the caps to the default set of riff video caps. 2006-02-09 Andy Wingo * ext/ogg/gstoggmux.c (GstOggPad): Keep track of both the start time and the end time of the last packet in the page. (gst_ogg_mux_pad_queue_page): In addition to setting the timestamp on the pages in our queue, set the duration as well. Reflow a debug statement. (gst_ogg_mux_collected): Keep track of GstOggPad->timestamp_end. Fixes bad muxing order. 2006-02-09 Thomas Vander Stichele * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_setcaps), (gst_basertppayload_push): update seqnum before setting it on the packet; this makes sure that the timestamp and seqnum properties match after pushing a buffer 2006-02-09 Andy Wingo * gst-libs/gst/audio/gstringbuffer.c (gst_ring_buffer_samples_done): Cast to guint64, fixes an integer overflow after 13.5 hours of recording. Kapow! * ext/alsa/gstalsasrc.c (gst_alsasrc_delay): Clamp the delay to the buffer size -- we don't care about underrun/overrun reporting right now, just need to return a useful value. 2006-02-09 Jan Schmidt * configure.ac: Back to CVS