Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_setcaps), (gst_base_audio_sink_event),
(gst_base_audio_sink_preroll), (gst_base_audio_sink_render):
Improve debugging.
Post error when caps cannot be parsed.
Resync on discontinuity in the stream.
Clip samples to segment boundaries.
return WRONG_STATE sooner when we are flushing.
* gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_init),
(gst_base_audio_src_get_time), (gst_base_audio_src_create):
Make audiosrc operate in TIME.
Set TIMESTAMP and DURATION on buffers.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(free_pad_probes), (remove_fakesink), (pad_probe),
(close_pad_link), (gst_decode_bin_change_state):
Replace GstPadBlockCallback with pad probes that detect
first buffer AND eos before removing fakesink.
Fixes hang with demuxers doing EOS while pre-rolling.
Solves #328279
Original commit message from CVS:
2006-01-22 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_destroy):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimagesink_buffer_alloc): Playbin keeps some ref to some
frames. We might get a frame destroyed after changing state to
NULL, adding a safety check on xcontext.
Original commit message from CVS:
* gst-libs/gst/interfaces/xoverlay.c:
Fix prepare-xwindow-id code example in the docs - we need to
ignore all messages that aren't element messages as well.
Original commit message from CVS:
2006-01-21 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_buffer_alloc):
I think one day i'll completely undestand how caps negotiation
is supposed to work. This refactoring handles buffer_alloc
called with caps we can't handle. We definitely don't want a
set_caps with those caps, so we define and allocate a buffer
we would like to receive.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Fix playback of non-synchronised streams by assuming a rate
of 1.0 instead of a random one.
Makes this work again:
gst-launch filesrc location=raw_audio.file ! 'audio/x-raw-int,
endianness=(int)4321, signed=(boolean)true, width=(int)16,
depth=(int)16, rate=(int)44100, channels=(int)2' ! audioconvert !
audioresample ! alsasink
Original commit message from CVS:
* gst/playback/gststreaminfo.c: (gst_stream_info_set_mute):
* gst/playback/gststreamselector.c:
(gst_stream_selector_set_property):
Comment out broken code that connects to the state-changed signal.
At this point, changing current stream selection is broken, but
stuff like gst-launch playbin current-audio=1 works and filters
to the chosen stream.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_handle_comment_packet):
Post taglist actually on bus instead of just freeing it
(fixes#327114 and totem bug #327080).
* ext/vorbis/vorbisdec.c: (vorbis_handle_comment_packet):
Use gst_element_found_tags_for_pad(), so that the tags
are sent downstream as an event as well.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize),
(gst_ximagesink_ximage_new), (gst_ximagesink_ximage_put),
(gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_finalize),
(gst_xvimagesink_xvimage_put), (gst_xvimagesink_show_frame),
(gst_xvimagesink_buffer_alloc):
move all regularly occurring messages to GST_LOG level
add some more object logs
Original commit message from CVS:
2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_collected):
fix a silly segfault
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_source):
Fix playback for sources that emit raw audio or
raw video streams (e.g.: cd audio sources) (#325984).
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_handle_track_seek):
No need to post a tag message on the bus when seeking
within the same track, only post it when the current
track changes.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_destroy),
(probe_triggered), (new_decoded_pad), (mute_group_type),
(set_active_source):
* gst/playback/gststreaminfo.c: (gst_stream_info_set_mute):
* gst/playback/gststreamselector.c:
(gst_stream_selector_base_init),
(gst_stream_selector_set_property),
(gst_stream_selector_request_new_pad):
Reenable stream selection. These mechanisms need a complete overhaul
in the face of 0.8->0.10 changes though.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c:
Change the pad template to src_%d to match the pads that
are created from it. decodebin needs this information in order
to decide that oggdemux is capable of producing multiple pads
(and hence needs queues inserted).
* ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads),
(gst_ogg_mux_collected):
Make debug output more useful by using GST_PTR_FORMAT.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_parse_caps):
Set depth and width for alaw/mulaw (fixes#326601).
Original commit message from CVS:
* ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_close),
(gst_cd_paranoia_paranoia_callback):
Don't try to free NULL pointers.
Original commit message from CVS:
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_chain),
(gst_audio_rate_change_state), (plugin_init):
Add debugging category.
Fix type issues.
Add case for incoming buffers without valid offset/offset_end.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_audio_element):
Don't leak an autoaudiosink/alsasink when we generate
a new audio element. (old code, I guess)
Original commit message from CVS:
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_setcaps):
Support float audio in audiorate.
Use width rather than depth for selecting sample width.
Original commit message from CVS:
* gst/videotestsrc/videotestsrc.h:
Use GLib types here (that way we don't have to include the
generated _stdint.h header, which makes life easier for win32
folks that don't use autotools for the build) (#325990, patch
by: Sergey Scobich).
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_init),
(gst_ring_buffer_set_flushing), (gst_ring_buffer_start),
(gst_ring_buffer_pause), (wait_segment):
* gst-libs/gst/audio/gstringbuffer.h:
Name (private) union, makes Forte compiler happy (this time
for real) (#324900).
Original commit message from CVS:
* gst/audioresample/resample.h:
Declare struct _ResampleState.buffer as unsigned char *, not void *,
since we do arithmetic on it.
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_init),
(gst_ring_buffer_set_flushing), (gst_ring_buffer_start),
(gst_ring_buffer_pause), (wait_segment):
* gst-libs/gst/audio/gstringbuffer.h:
Sun's Forte compiler doesn't seem to like anonymous structs,
so use same setup as in GstBaseSrc (fixes#324900).
Original commit message from CVS:
* configure.ac:
* gst/volume/Makefile.am:
* gst/volume/demo.c:
move old example to tests/examples/volume/volune.c
* tests/examples/Makefile.am:
* tests/examples/seek/seek.c: (main):
change window-close event from "delete-event" to "destroy"
* tests/examples/volume/Makefile.am:
* tests/examples/volume/volume.c: (value_changed_callback),
(setup_gui), (message_received), (eos_message_received), (main):
fix event handling and bus usage
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (new_pad):
Fix non-C89 variable declaration not at the start of a block. Should
help some compilers.
Original commit message from CVS:
* configure.ac:
* ext/cdparanoia/Makefile.am:
* ext/cdparanoia/gstcdparanoia.c:
* ext/cdparanoia/gstcdparanoia.h:
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_mode_get_type), (gst_cd_paranoia_src_base_init),
(gst_cd_paranoia_src_init), (gst_cd_paranoia_src_class_init),
(gst_cd_paranoia_src_open), (gst_cd_paranoia_src_close),
(gst_cd_paranoia_paranoia_callback),
(gst_cd_paranoia_src_read_sector), (gst_cd_paranoia_src_finalize),
(gst_cd_paranoia_src_set_property),
(gst_cd_paranoia_src_get_property), (plugin_init):
* ext/cdparanoia/gstcdparanoiasrc.h:
New cdparanoiasrc element based on cddabasesrc; enable cdparanoia
plugin again (there are still fixes required to playbin to make
cdda:// uris work there).
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_update_duration),
(gst_cdda_base_src_calculate_cddb_id):
An integer is not a string. Fix access to uninitialised variable.
* tests/check/Makefile.am:
Add cddabasesrc unit test; also actually enable the vorbis test.
* tests/check/generic/states.c:
Blacklist new cd audio elements as well.
* tests/check/libs/cddabasesrc.c:
Unit test for GstCddaBaseSrc (discid calculation mostly).
Original commit message from CVS:
* docs/libs/Makefile.am:
* docs/libs/gst-plugins-base-libs-docs.sgml:
* docs/libs/gst-plugins-base-libs-sections.txt:
* docs/libs/gst-plugins-base-libs.types:
Add docs for libgstcdda/GstCddaBaseSrc.
* gst-libs/gst/interfaces/mixertrack.h:
Do one struct member per line with a semicolon at the end, that way
even gtk-doc might parse it without complaining.