Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsasink_finalise),
(gst_alsasink_class_init):
Free the device name string.
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init),
(gst_ogg_mux_request_new_pad), (gst_ogg_mux_release_pad),
(gst_ogg_mux_handle_src_event), (gst_ogg_mux_clear_collectpads):
Don't remove a pad from the collectpads structure until it
is released - it's a request pad, and may receive data again
if the element gets moved back to PLAYING state.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support):
Ensure we turn on double buffering on the Xv port, and
set the colour key to something dark and mysterious that
isn't black.
Original commit message from CVS:
* ext/alsa/gstalsaplugin.c: (plugin_init):
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_src_base_init), (plugin_init):
* ext/gnomevfs/gstgnomevfs.c: (plugin_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init):
- a library should not call setlocale. see Libraries node in
gettext manual
- make sure all plugins that use translation do bindtextdomain
to point to the localedir
* gst/playback/gstplaybin.c: (gen_vis_element), (add_sink),
(setup_sinks), (plugin_init):
all this, and check for NULL when creating sinks
Original commit message from CVS:
2006-01-27 Julien MOUTTE <julien@moutte.net>
* gst/subparse/gstsubparse.c: (gst_subparse_type_find),
(plugin_init): Make typefinding of subtitles work again.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (aac_type_find),
(mp3_type_frame_length_from_header), (mp3_type_find),
(wavpack_type_find), (m4a_type_find), (ircam_type_find),
(plugin_init):
Backport a bunch of typefinding fixes from the 0.8 branch.
Also, improve wavpack typefinding: if we can't peek the
entire wavpack block, try to parse the bits we can get and
see if we find what we're looking for in those.
Original commit message from CVS:
2006-01-26 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c:
(gst_ximagesink_calculate_pixel_aspect_ratio):
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_calculate_pixel_aspect_ratio): Handle some
more cases of pixel aspect ratio.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (pad_probe):
Also consider the flush-start and tag events as unblockers
for the pad probes.
Original commit message from CVS:
2006-01-26 Julien MOUTTE <julien@moutte.net>
* gst/playback/gstplaybin.c: (gst_play_bin_init),
(gst_play_bin_dispose), (gst_play_bin_vis_unblocked),
(gst_play_bin_vis_blocked), (gst_play_bin_set_property):
On the fly visualisation switch, works disabling, enabling as
well but it won't be able to enable vis in a playbin that was
created with no visualisation.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render), (gst_base_audio_sink_change_state):
Undo previous commit, it breaks resume after pause.
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.
Original commit message from CVS:
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init), (gst_video_test_src_start):
Add start method to reset running time and number of frames sent
when starting up (fixes#324696; patch by: Michal Benes).
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
update strings, values are in microseconds
change the default sink buffer time to something that is smaller
(to help software volume mixing have a slightly lower delay) but
still be acceptable on Wim's laptop
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_template_caps):
Made a quack, forgot to add DUCK to the riff video template.
Original commit message from CVS:
* ext/ogg/gstogmparse.c: (gst_ogm_text_parse_base_init),
(gst_ogm_parse_init), (gst_ogm_audio_parse_init),
(gst_ogm_video_parse_init), (gst_ogm_text_parse_init),
(gst_ogm_parse_chain):
Make sure pads are initialized correctly.
* gst-libs/gst/riff/riff-ids.h:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add a whole bunch of FOURCC <=> MimeType.
Extend the riff video pad template to support the newly added fourcc.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_deactivate_current_chain),
(gst_ogg_demux_activate_chain):
Extra debug output when activating/deactivating chains.
* gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter),
(is_demuxer_element), (try_to_link_1), (remove_element_chain),
(unlinked):
Remove a queue from our list when it becomes unlinked.
Don't add queues to elements in class 'Demux' if they
can only produce one pad
Original commit message from CVS:
2005-12-17 Philippe Khalaf <burger@speedy.org>
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_init), (gst_base_rtp_depayload_handle_sink_event):
Handle downstream newsegment by sending our own newsegment before the
next buffer to be released. (#323900)
Original commit message from CVS:
2005-12-17 Philippe Khalaf <burger@speedy.org>
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_set_gst_timestamp):
add queue delay to new segment as well (as opposed to just the first
buffer). (bug #322347)
Original commit message from CVS:
* ext/libvisual/visual.c: (make_valid_name):
change some char* into char[]
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audio_test_src_class_init), (gst_audio_test_src_do_seek),
(gst_audio_test_src_create):
* gst/audiotestsrc/gstaudiotestsrc.h:
prepare to handle EOS and SEGMENT_DONE
Original commit message from CVS:
* gst/tcp/gsttcp.c:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
Add <string.h> includes for memset and FD_ZERO (fixes#323878;
patch by: Benjamin Pineau).
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_video_rate_blank_data),
(gst_video_rate_chain):
Fix timestamping for videorate when the first buffer it sees has a
non-zero timestamp. Fix some misleading debug output.
Original commit message from CVS:
* ext/pango/gsttextoverlay.c: (gst_text_overlay_collected):
Don't operate on empty text buffers. Strip newlines and
tabs only from the end of the text, but leave them intact
in the middle. Fix typo in gtk-doc description.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
* gst/playback/gstplaybin.c: (handoff):
Make sure the video frame buffer we return to apps via the
"frame" property always has caps set on it. Modify
_gst_gvalue_set_object() macro to handle NULL objects
gracefully too.
Original commit message from CVS:
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audio_test_src_class_init), (gst_audio_test_src_init),
(gst_audio_test_src_setcaps), (gst_audio_test_src_src_query),
(gst_audio_test_src_do_seek), (gst_audio_test_src_is_seekable),
(gst_audio_test_src_create):
* gst/audiotestsrc/gstaudiotestsrc.h:
Adjust to some recent api changes and add wtays new cool seeking
capabillities
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/alsa/gstalsadeviceprobe.c:
* ext/alsa/gstalsadeviceprobe.h:
Helper functions to add device probing via the GstPropertyProbe
interface to a class.
* ext/alsa/gstalsamixer.h:
Comment out GST_ALSA_MIXER, it returns a struct that's not
used.
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_open):
Add some debug info.
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_interface_supported),
(gst_implements_interface_init),
(gst_alsa_mixer_element_init_interfaces),
(gst_alsa_mixer_element_class_init),
(gst_alsa_mixer_element_finalize), (gst_alsa_mixer_element_init),
(gst_alsa_mixer_element_set_property),
(gst_alsa_mixer_element_get_property),
(gst_alsa_mixer_element_change_state):
* ext/alsa/gstalsamixerelement.h:
Add 'device' and 'device-name' properties. Add GstPropertyProbe
for device handling (gnome-volume-control will need that).
Original commit message from CVS:
* ext/cdparanoia/Makefile.am:
* ext/cdparanoia/gstcdparanoia.c: (gst_paranoia_mode_get_type),
(gst_paranoia_endian_get_type), (_do_init),
(cdparanoia_class_init), (cdparanoia_init),
(cdparanoia_set_property), (cdparanoia_get_property),
(cdparanoia_do_seek), (cdparanoia_is_seekable),
(cdparanoia_create), (cdparanoia_start), (cdparanoia_stop),
(cdparanoia_convert), (cdparanoia_get_query_types),
(cdparanoia_query), (cdparanoia_set_index),
(cdparanoia_uri_set_uri):
* ext/cdparanoia/gstcdparanoia.h:
Partially ported cdparanoia now that basesrc can support a
plugin like this..
Original commit message from CVS:
* tests/examples/seek/scrubby.c: (main):
Set higher priority for bus events so they don't get reordered with
gtk gui events.
* tests/examples/seek/seek.c: (do_seek), (start_seek), (stop_seek),
(flush_toggle_cb), (main):
Added checkbox do disable flushing seeks.
Disable scrubbing when doing non flushing seeks.
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (gst_sub_parse_init),
(gst_sub_parse_do_seek), (gst_sub_parse_src_event), (parse_subrip),
(parser_state_init), (handle_buffer), (gst_sub_parse_chain),
(gst_sub_parse_sink_event), (gst_sub_parse_change_state):
Implement some sort of event handling that doesn't rely on
g_return_if_fail; make sure we always push the last chunk of an
.srt out when we receive an EOS; use gst_pad_alloc_buffer; fix
state change function; remove some old cruft. Seeking is still
rather unlikely to work though.
* tools/.cvsignore:
Ignore more.
Original commit message from CVS:
2005-12-11 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state):
Fixed a leak of the current image reference when cleaning up.
Thanks to Arwed von Merkatz (alley_cat) for pointing it out.
Original commit message from CVS:
* tools/Makefile.am:
* tools/gst-launch-ext-m.m:
Remove gst-launch-ext. It doesn't work, and is no longer
particularly useful.
Original commit message from CVS:
* ext/ogg/gstogmparse.c: (gst_ogm_parse_sink_query):
don't pass random values to ogmparse convert function.
Make seeking possible in the exile1.ogm file.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_property):
* gst/playback/gstplaybin.c: (gst_play_bin_get_property):
Work around refcount problem with g_value_set_object() that occur
if the core has been compiled against GLib-2.6 (g_value_set_object()
will only g_object_ref() the element, but the caller will
gst_object_unref() it and bad things will happen due to the way
GstObjects are refcounted in the GLib-2.6 case). Fixes problems with
totem for people on FC4 using Thomas's 0.10 RPMs.
Original commit message from CVS:
Time to welcome ogm to 0.10 :)
* ext/ogg/gstoggdemux.c: (internal_element_pad_added_cb),
(gst_ogg_pad_typefind):
Oggdemux can now properly typefind elements with dynamic pads.
* ext/ogg/gstogmparse.c: (gst_ogm_parse_chain):
Properly set caps on src pad, and set caps on outgoing buffers.
Original commit message from CVS:
* ext/Makefile.am:
Add $(PANGO_DIR) to SUBDIRS
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttimeoverlay.c:
Fix and improve element descriptions.
Original commit message from CVS:
* docs/libs/tmpl/gstcolorbalance.sgml:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
* gst-libs/gst/rtp/gstbasertppayload.c:
* gst-libs/gst/rtp/gstrtpbuffer.c:
* gst-libs/gst/rtp/gstrtpbuffer.h:
Do burger's rename for rtp payloaders and depayloaders
Original commit message from CVS:
* gst-libs/gst/net/Makefile.am:
* gst-libs/gst/net/README:
* gst-libs/gst/net/gstnetbuffer.c:
* gst-libs/gst/net/gstnetbuffer.h:
this was moved to netbuffer
Original commit message from CVS:
* gst-libs/gst/video/gstvideofilter.c: (gst_video_filter_get_type),
(gst_video_filter_class_init), (gst_video_filter_init):
* gst-libs/gst/video/gstvideofilter.h:
borgify name to bring in line with other classes
Original commit message from CVS:
* gst-libs/gst/netbuffer/Makefile.am: (libgstnetbufferincludedir):
Let's not override libgstnet from core for no reason...
(libgstnetbuffer_@GST_MAJORMINOR@_la_SOURCES):
Ok, maybe not so quick next time.
Original commit message from CVS:
* gst-libs/gst/netbuffer/Makefile.am: (libgstnetbufferincludedir):
Let's not override libgstnet from core for no reason...
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/Makefile.am:
moved gst-libs/gst/net to netbuffer through CVS surgery
remove old directory
updating build to accomodate
(#322257)
Original commit message from CVS:
2005-11-29 Andy Wingo <wingo@pobox.com>
* pkgconfig/gstreamer-plugins-base.pc.in:
* pkgconfig/gstreamer-plugins-base-uninstalled.pc.in:
* gst-libs/gst/net/Makefile.am: Rename gstnet to gstnetbuffer
(#322257).
Original commit message from CVS:
* gst/playback/gststreamselector.c: (gst_stream_selector_chain):
3rd time's the charm. Correct ref-counting for discarded buffers.
Original commit message from CVS:
* gst/playback/gststreamselector.c:
(gst_stream_selector_class_init), (gst_stream_selector_init),
(gst_stream_selector_dispose), (gst_stream_selector_set_property),
(gst_stream_selector_get_property),
(gst_stream_selector_get_linked_pad),
(gst_stream_selector_request_new_pad), (gst_stream_selector_chain):
* gst/playback/gststreamselector.h:
Add the active-pad property for playbin to use shortly. Ignore buffers
from any other pad, returning GST_FLOW_NOT_LINKED
Original commit message from CVS:
2005-11-28 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put),
(gst_ximagesink_setcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put),
(gst_xvimagesink_setcaps): Fixed a tricky bug. When caps
renegotiation
happens (only visible on ximagesink but bug is in xv too)
set_caps was
destroying the internal x[v]image used to memcpy non locally
alloced
buffers so that it got renewed on next _chain. The issue is that
_expose will try to put that image as it reffed it in _put.
Using gst_buffer_unref instead of destroy fixes it !
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(try_to_link_1), (queue_filled_cb):
Better use of the queues. Start with a small size queue and only increase
the size of the queues when the other queues are empty.
Original commit message from CVS:
* gst-libs/gst/video/Makefile.am:
compile in copied-over videofilter into the video library
* gst-libs/gst/video/videosink.h:
rename the header to gstvideosink.h since it's a base GstObject class
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.h:
use the new header
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_commit), (probe_triggered):
* gst/playback/gstplaybasebin.h:
Prepare to handle errors betters.
* gst/playback/gstplaybin.c: (add_sink), (setup_sinks):
Set sinks to PAUSED first before adding and linking them so that
we don't interrupt dataflow.
Original commit message from CVS:
* gst-libs/gst/audio/TODO:
Updated TODO
* gst-libs/gst/audio/gstaudiosink.c:
(gst_audioringbuffer_open_device),
(gst_audioringbuffer_close_device), (gst_audioringbuffer_acquire),
(gst_audioringbuffer_release):
Small cleanups.
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init), (gst_base_audio_sink_render),
(gst_base_audio_sink_change_state):
Slave to the master clock when going to PLAYING and unslave when
going to PAUSED.
* gst-libs/gst/audio/gstringbuffer.c:
(gst_ring_buffer_open_device), (gst_ring_buffer_close_device),
(gst_ring_buffer_acquire), (gst_ring_buffer_release),
(gst_ring_buffer_samples_done), (gst_ring_buffer_set_sample),
(gst_ring_buffer_clear_all), (wait_segment),
(gst_ring_buffer_commit), (gst_ring_buffer_read),
(gst_ring_buffer_advance):
* gst-libs/gst/audio/gstringbuffer.h:
Add some docs and cleanups.
Original commit message from CVS:
2005-11-28 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put):
Use calculated video geometry from _setcaps instead of buffer
caps to respect pixel aspect ratio. (fixes#322388)
Original commit message from CVS:
2005-11-28 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new):
Refuse to create an XvImage if we can't find the format.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_audio_template_caps):
Add ATRAC3 to the list of riff-possible audio caps.
I know we still don't have a plugin for atrac3, but it's saner to output
that than a cryptic mimetype.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (close_pad_link), (try_to_link_1):
Remove unused properties, and add queues between demuxers and decoders
so that a lot more files can preroll properly.
Original commit message from CVS:
* gst-libs/gst/net/Makefile.am:
* gst-libs/gst/rtp/Makefile.am:
* gst-libs/gst/tag/Makefile.am:
remove silly include
* gst/tags/Makefile.am:
* gst/tags/gsttagediting.c:
* gst/tags/gsttageditingprivate.h:
* gst/tags/tagedit.vcproj:
remove directory, is as good as empty
Original commit message from CVS:
* configure.ac:
added GST_LIB_LDFLAGS and GST_ALL_LDFLAGS
* gst-libs/Makefile.am:
* gst-libs/gst/audio/Makefile.am:
* gst-libs/gst/interfaces/Makefile.am:
* gst-libs/gst/net/Makefile.am:
* gst-libs/gst/riff/Makefile.am:
* gst-libs/gst/rtp/Makefile.am:
* gst-libs/gst/tag/Makefile.am:
* gst-libs/gst/video/Makefile.am:
and use them
Original commit message from CVS:
* gst/audiorate/gstaudiorate.c: (gst_audiorate_chain):
Properly return GstFlowReturn from gst_pad_push in chain functions.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_query_convert),
(gst_ogg_demux_chain_peer), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain),
(gst_ogg_demux_send_event), (gst_ogg_demux_loop):
Handle various conditions better when we don't understand a stream.
Removes a heap of CRITICALs on ogg streams containing unknown data.
Original commit message from CVS:
2005-11-24 Andy Wingo <wingo@pobox.com>
* gst/tcp/gstmultifdsink.c (gst_multifdsink_handle_client_write):
Be threadsafe.
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_read):
If we are reading too slowly, jump forward in the ringbuffer
instead of blocking.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init), (gst_base_audio_sink_set_clock),
(gst_base_audio_sink_render), (gst_base_audio_sink_change_state):
Fix for calibration API change.
Original commit message from CVS:
* gst-libs/gst/audio/multichannel.c:
(gst_audio_get_channel_positions),
(gst_audio_set_channel_positions),
(gst_audio_set_structure_channel_positions_list),
(gst_audio_fixate_channel_positions):
Use gst_value_array_*() functions on value arrays, not
gst_value_list_*().
Original commit message from CVS:
* check/Makefile.am:
* check/elements/audiotestsrc.c: (setup_audiotestsrc),
(cleanup_audiotestsrc), (GST_START_TEST), (audiotestsrc_suite),
(main):
add a test for audiotestsrc, testing all waves. Even seems
leak-free at first glance, nice job Stefan
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init), (gst_base_audio_sink_set_clock),
(gst_base_audio_sink_render), (gst_base_audio_sink_change_state):
And we provide a clock by default, of course...
Original commit message from CVS:
* gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_init):
This clock can be slaved to a master clock now.
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init), (gst_base_audio_sink_init),
(gst_base_audio_sink_dispose), (gst_base_audio_sink_provide_clock),
(gst_base_audio_sink_set_clock),
(gst_base_audio_sink_set_property),
(gst_base_audio_sink_get_property), (gst_base_audio_sink_preroll),
(gst_base_audio_sink_render), (gst_base_audio_sink_change_state):
* gst-libs/gst/audio/gstbaseaudiosink.h:
Handle slaving the internal clock to the clock selected in the
pipeline.
Add property to make the basesink not provide a clock.
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_class_init), (gst_base_rtp_depayload_init),
(gst_base_rtp_depayload_wait):
* gst-libs/gst/rtp/gstbasertpdepayload.h:
We can use the clock in GstElement, no need to store it ourselves.
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_videorate_chain):
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_create):
Use utility method for scaling clocktime for fractional framerates.
Original commit message from CVS:
* examples/seeking/seek.c: (main):
Give higher priority to bus signals than the gtk events
to fix a race condition in the segment looping.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_setcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps):
Call gst_x_overlay_prepare_xwindow_id() to give applications
a final chance to set their own xwindow id before the video
sink creates its own window.
Original commit message from CVS:
2005-11-22 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event): Handle navigation
events correcly with borders if applicable.
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_caps_remove_format_info):
* gst/ffmpegcolorspace/imgconvert.c:
* gst/ffmpegcolorspace/imgconvert_template.h:
Forward-port fixes from the 0.8 branch (patch by Luca Ognibene,
#318353); use gst_structure_has_name().
Original commit message from CVS:
* gst-libs/gst/audio/audio.c: (gst_audio_duration_from_pad_buffer):
* gst-libs/gst/audio/audio.h:
fix prototype - wondering why the test worked regardless
Original commit message from CVS:
* gst-libs/gst/interfaces/xoverlay.c: (gst_x_overlay_base_init),
(gst_x_overlay_got_xwindow_id), (gst_x_overlay_prepare_xwindow_id):
* gst-libs/gst/interfaces/xoverlay.h:
Remove everything having to do with the desired size; add
gst_x_overlay_prepare_xwindow_id() function; remove the
'have-xwindow-id' signal and make gst_x_overlay_got_xwindow_id()
post a message on the bus instead (#321816).
* sys/ximage/ximagesink.c: (gst_ximagesink_xoverlay_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps),
(gst_xvimagesink_xoverlay_init):
Remove desired size stuff (#321816).
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find),
(mpeg2_sys_type_find), (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find):
Terminate vararg functions with NULL instead of 0 to
make gcc4 happy.
Original commit message from CVS:
2005-11-21 Andy Wingo <wingo@pobox.com>
* gst/playback/gstplaybin.c (gen_audio_element)
(gen_video_element): Use the new MISSING_PLUGIN core error
category.
Original commit message from CVS:
* sys/ximage/Makefile.am:
* sys/ximage/ximage.c:
Rename ximage plugin to ximagesink (#321426) (Don't forget to
remove your old libgstximage.* manually if necessary).
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_setup):
Minimal fix for bug #320200: set the min/max bitrate in the correct
units. A better fix would be to upgrade to the RATEMANAGE2
interface, rather than using the deprecated interface used here, but
that would require an update in our libvorbis dependency (to 1.1),
which is probably undesirable.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_init),
(gst_ogg_mux_request_new_pad), (gst_ogg_mux_queue_pads),
(gst_ogg_mux_clear_collectpads), (gst_ogg_mux_change_state):
* gst/adder/gstadder.c: (gst_adder_init),
(gst_adder_request_new_pad), (gst_adder_collected),
(gst_adder_change_state):
Update for gst_collectpads_foo() to gst_collect_pads_foo()
API change.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_push_buffer),
(gst_vorbisenc_push_packet):
GST_PAD_IS_USABLE is gone, use the return value of
the push or pad_alloc_buffer instead.
Original commit message from CVS:
2005-11-18 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize),
(gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new),
(gst_ximagesink_ximage_destroy),
(gst_ximagesink_xwindow_draw_borders),
(gst_ximagesink_ximage_put),
(gst_ximagesink_xwindow_new),
(gst_ximagesink_xwindow_update_geometry),
(gst_ximagesink_handle_xevents), (gst_ximagesink_event_thread),
(gst_ximagesink_xcontext_get), (gst_ximagesink_xcontext_clear),
(gst_ximagesink_bufferpool_clear), (gst_ximagesink_getcaps),
(gst_ximagesink_setcaps), (gst_ximagesink_change_state),
(gst_ximagesink_show_frame), (gst_ximagesink_buffer_alloc),
(gst_ximagesink_navigation_send_event),
(gst_ximagesink_set_xwindow_id), (gst_ximagesink_expose),
(gst_ximagesink_set_property), (gst_ximagesink_get_property),
(gst_ximagesink_finalize), (gst_ximagesink_init),
(gst_ximagesink_class_init):
* sys/ximage/ximagesink.h: Refactoring of ximagesink.
This new version brings correct software scaling, non flickering
window while resizing, pixel aspect ratio handling, usage of
hardware buffer pools, out of data flow event thread for
navigation and handling of expose events even when being PAUSED,
a new property to keep video aspect ratio when resizing, etc...
Original commit message from CVS:
2005-11-18 Julien MOUTTE <julien@moutte.net>
* gst/videoscale/gstvideoscale.c: (gst_videoscale_class_init),
(gst_videoscale_fixate_caps): Introduce back caps fixate with
handling of PAR.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init):
Unsetting IS_SINK flag from the fakesink, so decodebin
never behaves as a sink.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_change_state):
Fix the audiosrc base class again, we did not unflush.
Original commit message from CVS:
2005-11-17 Julien MOUTTE <julien@moutte.net>
* examples/seeking/seek.c: (make_dv_pipeline),
(make_vorbis_theora_pipeline), (make_avi_pipeline),
(make_mpegnt_pipeline): Use VSINK everywhere, add a scaler
to ogg/vorbis/theora pipeline.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads),
(gst_ogg_mux_get_headers), (gst_ogg_mux_send_headers),
(gst_ogg_mux_collected), (gst_ogg_mux_change_state):
Fix EOS on multiple streams.
More debugging.
Original commit message from CVS:
* check/generic/states.c: (GST_START_TEST):
fix the test so that it only checks for elements that are part of
this source module
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_provide_clock),
(gst_base_audio_sink_change_state):
Set ringbuffer to non-flushing when going to PAUSED, set to
flushing again when going to READY.
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_init),
(gst_ring_buffer_stop):
Start in flushing mode by default.
Don't set flushing in the _stop method, let the app call
this explicitly.
Original commit message from CVS:
2005-11-16 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/video/gstvideosink.c:
(gst_video_sink_center_rect):
* gst-libs/gst/video/videosink.h: Add helper function needed
for video sinks.
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_stop):
Set ringbuffer to flushing when stopping so that we don't
block on wait_segment anymore and livelock.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_receive_event),
(gst_ogg_demux_class_init):
Implement GstElement::send_event, so we can send seek events
in GST_STATE_READY
Original commit message from CVS:
2005-11-14 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_new):
Discovered how to take away flickering while resizing the
window. Please don't put that in ximagesink, refactoring in
progress.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_client_queue_data),
(gst_multifdsink_render):
Don't leak GDP headers when using GDP mode (i.e. tcpserversink).
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_audio_element):
Use autoaudiosink, it tends to be more widely available than
autoaudiiosink.
Original commit message from CVS:
2005-11-14 Andy Wingo <wingo@pobox.com>
* gst/playback/gstplaybin.c (gen_audio_element): Use autoaudiosink
as well if it is available. Fixes#316442.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_clear), (gst_ogg_mux_init),
(gst_ogg_mux_sinkconnect), (gst_ogg_mux_request_new_pad),
(gst_ogg_mux_push_buffer), (gst_ogg_mux_dequeue_page),
(gst_ogg_mux_pad_queue_page), (gst_ogg_mux_queue_pads),
(gst_ogg_mux_set_header_on_caps), (gst_ogg_mux_collected),
(gst_ogg_mux_clear_collectpads), (gst_ogg_mux_change_state):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_buffer_from_packet),
(gst_vorbisenc_change_state):
Fix a small memory leak in vorbisenc.
Fix large memory leaks in oggmux, also fix lots of state change
bugs in oggmux.
Original commit message from CVS:
* gst/videotestsrc/gstvideotestsrc.c:
(gst_videotestsrc_class_init), (gst_videotestsrc_init),
(gst_videotestsrc_src_fixate):
move fixation to a fixate function
remove negotiate function, basesrc's is good enough
fixes a bug for check when using the element alone
Original commit message from CVS:
* examples/seeking/seek.c: (do_seek), (accurate_toggle_cb),
(key_toggle_cb), (main):
Added checkboxes for adding/removing the accurate and key_unit seek
flags.
Original commit message from CVS:
* examples/seeking/seek.c: (make_parselaunch_pipeline):
Added parse-launch syntax seeking mode for the seeking example.
This should help stress-test even more cases.
Ex usage : ./seek 15 "filesrc location=uranus.avi ! decodebin ! xvimagesink"
Original commit message from CVS:
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event):
Check whether peer pad exists before sending navigation events
to it.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_setup),
(gst_vorbisenc_buffer_from_packet):
* ext/vorbis/vorbisenc.h:
Set duration on encoded buffers. This allows oggmux's
max_page_delay parameter to actually work.
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_get_palette), (gst_ffmpeg_set_palette),
(gst_ffmpegcsp_avpicture_fill):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_get_unit_size), (gst_ffmpegcsp_transform):
Make palettes work again (see #132341). Use our own macros
for rounding up.
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsasink_open):
check for ALSA errors properly, instead of relying on ALSA's
error strings to serve to the user.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_commit), (new_decoded_pad),
(setup_substreams), (set_active_source):
Unlock GROUP_LOCK in failure cases, so that we don't deadlock when
trying to go to NULL if we failed to read a file.
Original commit message from CVS:
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiotestsrc_class_init), (gst_audiotestsrc_get_times),
(gst_audiotestsrc_create):
* gst/sine/gstsinesrc.c: (gst_sinesrc_class_init),
(gst_sinesrc_get_times), (gst_sinesrc_create):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_videotestsrc_class_init), (gst_videotestsrc_get_times),
(gst_videotestsrc_create):
The base class can now sync for us.
Original commit message from CVS:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_fixate):
Check if the caps have a fourcc field. Fixes crash for
gst-launch-0.9 v4lsrc name=source autoprobe=false autoprobe-fps=false copy-mode=1 device=/dev/video0 ! ffmpegcolorspace ! "video/x-raw-yuv, format=(fourcc)I420" ! xvimagesink
Original commit message from CVS:
* gst/sine/gstsinesrc.c: (gst_sinesrc_class_init),
(gst_sinesrc_get_query_types), (gst_sinesrc_src_query),
(gst_sinesrc_newsegment):
Send newsegment event in TIME format, set duration if
num-buffers is set, fix duration querying.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_request_new_pad),
(gst_ogg_mux_push_buffer), (gst_ogg_mux_dequeue_page),
(gst_ogg_mux_pad_queue_page), (gst_ogg_mux_queue_pads),
(gst_ogg_mux_collected):
Fix EOS handling, partially. Now forwarding an EOS event once we have
EOS on all pads works correctly. However, we still don't properly set
EOS on the actual ogg stream pages.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_init),
(gst_base_rtp_depayload_set_gst_timestamp):
* gst-libs/gst/rtp/gstbasertpdepayload.h:
We need to send a newsegment event for each instance, not
just for the first instance of this class (get rid of
static variable in function). (#321011).
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_request_new_pad),
(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_send_headers), (gst_ogg_mux_collected):
Forward port rewrite of muxing strategy to 0.9 version of oggmux.
This makes us mux things correctly according to the ogg muxing
rules. Still not handling EOS correctly right now, though.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_internal_chain),
(gst_ogg_pad_submit_packet), (gst_ogg_chain_new):
Initialise segment_stop to GST_CLOCK_TIME_NONE when
creating a new chain; should fix live streaming. Also
add more debug output and fix a typo.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* gst/volume/gstvolume.c: (volume_set_caps):
Fix compilation on Solaris with Forte. (#320923)
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (free_dynamics), (remove_fakesink),
(pad_blocked), (close_pad_link), (new_pad), (no_more_pads):
Handle the case where a pad_block failed.
Original commit message from CVS:
2005-10-31 Michael Smith <msmith@fluendo.com>
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_init),
(gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain),
(gst_ogg_demux_collect_chain_info), (gst_ogg_print):
Patch from Alessandro Decina <alessandro@nnva.org>.
Make oggdemux only find the final time in a chain, not per-pad,
since the per-pad information can be very expensive to locate, and
it isn't used anywhere. This makes reading a file containing
OggSkeleton reasonably fast.
Also, make chain finding work when there are logical bitstreams that
can't be decoded. Fixes#319110.
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.h:
Don't break ABI.
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_caps_to_pixfmt):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_set_caps):
Some more comments.
Handle missing required caps fields better.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_event), (gst_base_audio_sink_get_offset),
(gst_base_audio_sink_render):
* gst-libs/gst/audio/gstringbuffer.c:
(gst_ring_buffer_open_device), (gst_ring_buffer_close_device),
(gst_ring_buffer_set_flushing), (gst_ring_buffer_start),
(gst_ring_buffer_pause_unlocked), (gst_ring_buffer_pause),
(gst_ring_buffer_stop), (wait_segment), (gst_ring_buffer_commit),
(gst_ring_buffer_read):
* gst-libs/gst/audio/gstringbuffer.h:
Add flushing mode to the ringbuffer so that it in all cases does
not try to handle more audio. This makes sure it does not try to
block anymore when flushing and fixes a livelock.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_query_convert),
(gst_ogg_demux_chain_peer), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain):
Explicitly check for -1 values before doing a conversion
and always map them to -1. (#315545)
Original commit message from CVS:
* gst/adder/gstadder.c: (gst_adder_query), (gst_adder_collected),
(gst_adder_change_state):
Fix timestamps and fix deadlock when stopping the collectpads.
Original commit message from CVS:
* gst/audioconvert/audioconvert.c: (audio_convert_clean_context):
When clearing an audioconvert context, set tmpbufsize to zero, so
we'll allocate it again later if required.
This fixes audioconvert re-negotiating formats, which previously
segfaulted with a NULL destination buffer.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
Correctly flush decoder samples even if we could not
copy them to an output buffer. Fixes#319618.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_get_offset), (gst_base_audio_sink_render):
Remove g_print
Use sync property from baseclass to disable sync.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_get_offset), (gst_base_audio_sink_render):
Buffers with no timestamps get aligned with previous buffers or
on underrun, played ASAP.
Original commit message from CVS:
2005-10-24 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/video/video.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support):
And
here comes my change on caps for framerate and geometry range.
We are now accepting 1 to MAXINT for width and height, and from
0.0 to MAXDOUBLE for framerate. That allows duration less png
frames
to be blended correctly in videomixer.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (free_dynamics), (pad_unblocked),
(pad_blocked), (close_pad_link), (new_pad):
Don't try to remove elements twice.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_event):
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_event), (vorbis_handle_identification_packet),
(vorbis_handle_data_packet):
* ext/vorbis/vorbisdec.h:
Fix old naming.
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Don't try to sync on buffers without a timestamp.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_get_query_types),
(gst_vorbisenc_src_query):
Implement position and duration queries.
* gst/playback/test3.c: (update_scale), (main):
Fix for async state changes and print nicer output.
Original commit message from CVS:
* gst/audiotestsrc/gstaudiotestsrc.c: (gst_audiotestsrc_src_query):
* gst/sine/gstsinesrc.c: (gst_sinesrc_src_query):
Don't use functions for position queries when handling
duration queries.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_handle_data_packet), (vorbis_dec_chain),
(vorbis_dec_change_state):
* ext/vorbis/vorbisdec.h:
Vorbis streams can be embedded in other container formats
than ogg, container formats where the demuxer might set
timestamps on encoded vorbis buffers instead of those silly
granulepos thingies. In short: make vorbisdec handle
timestamps on incoming buffers as well.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_destroy),
(gst_play_base_bin_change_state):
Fix leak.
Handle case where playbasebin is now ASYNC because
decodebin is.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (utf8_type_find),
(xml_check_first_element), (xml_type_find), (smil_type_find),
(plugin_init):
Add typefinding for SMIL and for generic XML. Based on patch by
Akos Maroy (#308663).
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_loop):
Fix for segment-start/stop API change.
Original commit message from CVS:
* check/Makefile.am:
* check/clocks/selection.c: (GST_START_TEST), (volume_suite),
(main):
Add future test for clock selection.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add support for Indeo-3 (IV32).
Original commit message from CVS:
2005-10-17 Andy Wingo <wingo@pobox.com>
* ext/ogg/gstoggmux.c (gst_ogg_mux_queue_pads): Fix bug introduced
with the collectpads change.
(gst_ogg_mux_send_headers): Elevate warning to a g_critical.
Original commit message from CVS:
2005-10-17 Andy Wingo <wingo@pobox.com>
* gst/tcp/gstmultifdsink.c: Convert to use the boilerplate macro.
* gst/tcp/gsttcp.c (gst_tcp_socket_read): Comment update.
Original commit message from CVS:
2005-10-17 Andy Wingo <wingo@pobox.com>
* ext/theora/theoraenc.c (theora_buffer_from_packet): Pass the
alloc_buffer flow return to callers.
(theora_enc_chain, theora_enc_chain): Adapt to buffer_from_packet
change. Fix some memleaks in theoraenc.
Original commit message from CVS:
2005-10-17 Andy Wingo <wingo@pobox.com>
* ext/ogg/gstoggmux.c (gst_ogg_mux_send_headers): Fix a segfault
in strange circumstance.
Original commit message from CVS:
2005-10-17 Julien MOUTTE <julien@moutte.net>
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_get_unit_size): We are asked to compute a buffer
size
from caps, let's use the caps...
Original commit message from CVS:
2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
* configure.ac:
put back AX_CREATE_STDINT_H, ffmpegcolorspace includes _stdint.h
Original commit message from CVS:
2005-10-16 Andy Wingo <wingo@pobox.com>
* gst/playback/gstdecodebin.c
(gst_element_set_state_like_a_crazy_man): New kraaaaaaazy
function!
(try_to_link_1): Increase kraziness level.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/tag/gstid3tag.c: (gst_tag_list_new_from_id3v1):
* gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_add),
(gst_tag_to_vorbis_comments):
Fix handling of GST_TAG_DATE, which is now of GST_TYPE_DATE.
Original commit message from CVS:
- Don't use non-portable LL suffix on constants, since MSVC doesn't allow
them. These constants all fit into ints anyway.
- Continue to hate nano.
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit),
(gst_ring_buffer_read), (gst_ring_buffer_clear):
Don't assert on normal stuff.
* gst/playback/gstplaybin.c: (do_playbin_seek):
API fix.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create):
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit),
(gst_ring_buffer_read):
Cleanups.
Commit and read from ringbuffer in samples rather than bytes.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Respect segment rate and accum when scheduling samples.
Original commit message from CVS:
2005-10-11 Julien MOUTTE <julien@moutte.net>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads),
(gst_ogg_mux_collected): Quick hack to fix build. We need to
handle
EOS correctly, that needs more work.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_send_event_to_sink),
(do_playbin_seek), (gst_play_bin_send_event):
Override send_event differently, so that we can takes bits of
functionality from GstPipeline (special handling for seeks,
including pausing/resuming, and resetting stream time) and
still get
the appropriate behaviour of only forwarding event to a single
sink,
rather than all of them.
Unfortunately requires a lot of code duplication, but the
alternatives are equally ugly in the end.
Original commit message from CVS:
* check/elements/audioconvert.c: (setup_audioconvert),
(cleanup_audioconvert), (get_int_caps), (verify_convert),
(GST_START_TEST), (audioconvert_suite):
clean up tests a little, fix some leaks.
Original commit message from CVS:
* ext/alsa/gstalsasink.c:
Also allow unsigned int.
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_create), (gst_base_audio_src_change_state):
Small cleanup
Original commit message from CVS:
* check/pipelines/simple_launch_lines.c: (run_pipeline):
Small update, use API as stated in design docs.
* examples/seeking/seek.c: (make_avi_msmpeg4v3_mp3_pipeline),
(update_scale), (do_seek), (seek_cb), (set_update_scale),
(start_seek), (stop_seek), (play_cb), (pause_cb), (stop_cb),
(message_received), (main):
Updated seek example for GOption. Some usability improvements.
Original commit message from CVS:
* gst/tcp/gsttcpserversrc.c: (gst_tcpserversrc_create),
(gst_tcpserversrc_start):
Don't block in accept while doing the state change, move
to poll and make cancellable.
Original commit message from CVS:
2005-10-09 Philippe Khalaf <burger@speedy.org>
* gst-libs/gst/rtp/rtpbasedepayload.c:
Set timestamp and add queue delay to timestamp
* gst-libs/gst/rtp/rtpbuffer.h:
Set correct payload type for h263
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (wavpack_type_find),
(plugin_init):
Add wavpack and spc typefind functions from 0.8 branch.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (tar_type_find),
(ar_type_find), (msdos_type_find), (plugin_init):
Add typefind functions for tar archives, ar archives,
RAR archives, and msdos-executables (dlls, exe, etc.).
Some of those would be wrongly identified as mpeg
streams of some sort before (#315550).
Original commit message from CVS:
* gst/adder/gstadder.c: (gst_adder_query), (gst_adder_class_init),
(gst_adder_init), (gst_adder_request_new_pad),
(gst_adder_change_state):
Add query function to source pad, so adder reports the correct
time/sample position when queried (#315457); fix state change
function; use GST_DEBUG_FUNCPTR() for pad functions.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (utf8_type_find):
Fix leaks in typefind registration
Clean up the gratuitous commenting and whitespacing a little
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_stop):
Only actually wait for the thread to be stopped if it's
running.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_event), (gst_base_audio_sink_render):
If we receive EOS we can start playback of what we had.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_class_init),
(gst_multifdsink_finalize), (multifdsink_hash_remove),
(gst_multifdsink_stop):
Fix crasher when going to NULL multiple times.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_event),
(gst_base_audio_src_create), (gst_base_audio_src_change_state):
* gst-libs/gst/audio/gstbaseaudiosrc.h:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_read):
patch from Edgard Lima <edgard.lima@indt.org.br>
Fixed gstbaseaudiosrc adding ring buffer sync to it.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_loop):
Report the FLOW_RETURN as string in the error message.
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_clear_all):
Don't assert when clearing an unnegotiated buffer.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_destroy),
(gen_preroll_element), (remove_groups), (setup_source):
* gst/playback/gstplaybin.c: (remove_sinks), (add_sink),
(setup_sinks), (gst_play_bin_send_event),
(gst_play_bin_change_state):
Set state to NULL before removing from bin. Fix refcounting.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_send_event):
Correct refcounting in send_event() function. Previously was wrong
if the first sink was unable to handle the event.
Original commit message from CVS:
2005-10-03 Andy Wingo <wingo@pobox.com>
* gst/playback/gstdecodebin.c (try_to_link_1)
(remove_element_chain): set element to NULL before removing it.
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssrc.c (gst_gnomevfssrc_uri_get_protocols):
protect gst_gnomevfs_get_supported_uris by a mutex, to make it
MT safe.
Original commit message from CVS:
2005-10-02 Andy Wingo <wingo@pobox.com>
* gst-libs/gst/audio/gstringbuffer.c (gst_ring_buffer_clear)
(gst_ring_buffer_prepare_read):
* gst-libs/gst/audio/gstaudiosink.c (audioringbuffer_thread_func):
Demote to LOG.
Original commit message from CVS:
2005-09-28 Andy Wingo <wingo@pobox.com>
* gst/videotestsrc/gstvideotestsrc.c: Implement live source mode
and unlocking.
Original commit message from CVS:
2005-09-28 Andy Wingo <wingo@pobox.com>
* gst/tcp/gsttcpclientsink.c (gst_tcpclientsink_base_init):
Actually add the pad template.
(gst_tcpclientsink_get_type): We're a base sink. Woot, works.
* gst/tcp/gsttcpserversrc.c: Go ahead and fix up serversrc while
I'm at it...
Original commit message from CVS:
2005-09-28 Andy Wingo <wingo@pobox.com>
* gst/tcp/gsttcpclientsrc.c: Make interruptable -- code stolen
from fdsrc. Get caps in create() instead of start() so it can be
interrupted. Interruption somewhat untested.
* gst/tcp/gsttcp.c (gst_tcp_read_buffer, gst_tcp_socket_read):
Proper EOS handling.
Original commit message from CVS:
2005-09-27 Andy Wingo <wingo@pobox.com>
* gst/tcp/gsttcpserversrc.c:
* gst/tcp/gsttcpclientsrc.c: Updated for new gsttcp API.
* gst/tcp/gsttcp.h:
* gst/tcp/gsttcp.c (gst_tcp_read_buffer): New function, factored
out of tcpclientsrc.c. Cancellable.
(gst_tcp_socket_read): Made private, cancellable, with better
diagnostics. Also the FIONREAD ioctl takes a int*, not a size_t*.
(gst_tcp_gdp_read_buffer): Made cancellable, actually returns the
whole buffer, and better diagnostics.
(gst_tcp_gdp_read_caps): Same.
* gst/sine/gstsinesrc.c (gst_sinesrc_wait): Add the base time.
Original commit message from CVS:
2005-09-26 Andy Wingo <wingo@pobox.com>
* gst/sine/gstsinesrc.h:
* gst/sine/gstsinesrc.c: Refactor, remove the table lookup code,
change the 'sync' property to 'is-live' and implement it halfway,
update for controller api change.
* gst/volume/gstvolume.c (volume_transform_ip): Update for
controller api change.
Original commit message from CVS:
* gst/audioresample/Makefile.am:
* gst/audioresample/debug.h:
* gst/audioresample/gstaudioresample.c:
* gst/audioresample/resample.c: Convert to using gst debugging
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_send_event):
Only seek on one sink, the first one that succeeds.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_clear),
(gst_vorbisenc_sink_event), (gst_vorbisenc_change_state):
Don't flush encoder state unless we have an initialised encoder.
Clear out encoder state on PAUSED_TO_READY.
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init), (gst_basertppayload_init),
(gst_basertppayload_setcaps), (gst_basertppayload_chain),
(gst_basertppayload_set_options), (gst_basertppayload_set_outcaps),
(gst_basertppayload_is_filled), (gst_basertppayload_push),
(gst_basertppayload_set_property),
(gst_basertppayload_get_property),
(gst_basertppayload_change_state):
* gst-libs/gst/rtp/gstbasertppayload.h:
Added max-ptime to control amount of data in the rtp packets.
Original commit message from CVS:
2005-09-21 Andy Wingo <wingo@pobox.com>
* gst/playback/gstplaybasebin.c: Attempt to fix up buffer probe
thingies.
* gst/playback/gstdecodebin.c (gst_decode_bin_dispose): Dispose
can be called multiple times, dogs.
Original commit message from CVS:
* check/Makefile.am:
have some tests be disabled for valgrinding
* check/elements/vorbisdec.c: (cleanup_vorbisdec),
(GST_START_TEST):
* ext/vorbis/vorbisdec.c: (vorbisdec_finalize):
Fix A Leak. Chain To Parent Finalize.
Original commit message from CVS:
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_add_to_queue),
(gst_base_rtp_depayload_push),
(gst_base_rtp_depayload_set_gst_timestamp),
(gst_base_rtp_depayload_queue_release):
This one was not supposed to go in.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: free plugin list correctly
* gst/playback/gstplaybin.c: emit warning if autovideosink
and autoaudiosink can't be found (instead of segfaulting)
Original commit message from CVS:
2005-09-15 Thomas Vander Stichele <thomas at apestaart dot org>
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_init),
(gst_vorbisenc_sink_event), (gst_vorbisenc_chain),
(gst_vorbisenc_output_buffers), (gst_vorbisenc_change_state):
* ext/vorbis/vorbisenc.h:
Fix EOS handling. Still needs a fix in the ogg muxer to
mark the last page as eos somehow.
Original commit message from CVS:
* common/gtk-doc-plugins.mak:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/theora/Makefile.am:
* ext/theora/gsttheoraenc.h:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisenc.c:
pick up signals and args for vorbis; add some docs for vorbis
Original commit message from CVS:
* common/gstdoc-scangobj:
* common/gtk-doc-plugins.mak:
* docs/libs/Makefile.am:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
only scanobj stuff from our source module. Not sure yet
if that's correct, given the hierarchy stuff :)
Original commit message from CVS:
2005-09-15 Andy Wingo <wingo@pobox.com>
* configure.ac (plugindir): Remove the EOL matcher from the
regexp, as it causes me problems. Libtool? Make? Who knows?
Original commit message from CVS:
* check/generic/states.c:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind):
* gst/playback/gstdecodebin.c: (gst_decode_bin_init):
Fixes for changes in registry API.
* configure.ac: Only export gst_plugins_desc. Add -no-undefined
to GST_PLUGIN_LDFLAGS.
* ext/libvisual/visual.c: Make the library shut up.
* gst-libs/gst/audio/audio.c: Don't define a plugin in a library.
* gst-libs/gst/audio/gstaudiofilter.c: same
Original commit message from CVS:
* gst/audioconvert/Makefile.am:
Audioconvert derives from GstBaseTransform and should
link to the library with our base elements to avoid
unresolved symbols. Makes things work with MinGW (#316160)
* gst/playback/test4.c: (main):
Fix MinGW build problem and use g_usleep() instead of
sleep() (#316162)
Original commit message from CVS:
* gst/audioconvert/audioconvert.c: (float),
(audio_convert_prepare_context), (audio_convert_convert):
* gst/audioconvert/audioconvert.h:
Cleanups, speedups, simplifications, added back support
for 24 bits.
Original commit message from CVS:
* check/Makefile.am:
* check/pipelines/simple_launch_lines.c: (setup_pipeline),
(run_pipeline), (GST_START_TEST), (simple_launch_lines_suite):
Add extra tests for basetransform based components.
Comment out the test_element_negotiation test until we decide
if it's testing correct behaviour.
* ext/libvisual/visual.c: (gst_visual_init), (get_buffer),
(gst_visual_chain), (gst_visual_change_state):
Slightly more correct but still bogus timestamping.
Fix state change function.
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_class_init):
* gst/audioresample/gstaudioresample.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_class_init):
* gst/videoscale/gstvideoscale.c: (gst_videoscale_class_init),
(gst_videoscale_prepare_size), (gst_videoscale_set_caps),
(gst_videoscale_prepare_image):
* gst/volume/gstvolume.c: (gst_volume_class_init),
(volume_transform_ip):
Basetransform updates. Enable passthrough modes.
* sys/ximage/ximagesink.c: (gst_ximage_buffer_init),
(gst_ximagesink_renegotiate_size), (gst_ximagesink_xcontext_get),
(gst_ximagesink_setcaps), (gst_ximagesink_buffer_alloc):
Negotiation fix that allows the window to return to the original
size and renegotiate passthrough upstream. Extra debug output.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_commit):
* gst/volume/gstvolume.c: (gst_volume_class_init),
(volume_transform):
fixing lost sync, some more debugging
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximage_buffer_init),
(gst_ximagesink_check_xshm_calls), (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_init),
(gst_xvimagesink_check_xshm_calls):
Fix compilation when XShm is not available.
Original commit message from CVS:
* ext/libvisual/visual.c: (gst_visual_dispose),
(gst_visual_getcaps), (gst_visual_src_setcaps),
(gst_visual_sink_setcaps), (get_buffer), (gst_visual_chain),
(gst_visual_change_state):
Finish fixing up libvisual plugin so that it runs.
Original commit message from CVS:
* check/pipelines/simple_launch_lines.c: (GST_START_TEST):
added another test that failes for me (test is not active by default)
Original commit message from CVS:
* configure.ac:
In the output at the end, don't show the first plugin on the same
line as "Core plug-ins, always built:".
Indent the output as for other plugin categories
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_create):
#define that can be used to not use peer buffer_alloc functions for
test purposes.
* sys/ximage/ximagesink.c: (gst_ximage_buffer_init),
(gst_ximage_buffer_get_type), (gst_ximagesink_ximage_new),
(gst_ximagesink_show_frame):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_init),
(gst_xvimage_buffer_get_type), (gst_xvimagesink_setcaps),
(gst_xvimagesink_show_frame):
Error case handling fixes. gst-launch fakesrc ! x[v]imagesink now
fails gracefully instead of XError aborting or deadlocking.
Original commit message from CVS:
* configure.ac: Enable libvisual plugin.
* ext/libvisual/Makefile.am:
* ext/libvisual/visual.c: Fixes to make it compile.
Original commit message from CVS:
* common/gst-xmlinspect.py:
* common/gtk-doc-plugins.mak:
only inspect plugins for this given package
require gst-python 0.9
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Resync if the buffer timestamps drift more than a 10th
of a second.
Original commit message from CVS:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_set_property),
(gst_v4lsrc_get_property):
The 'timestamp-offset' property is registered as an int64, so
let's use g_value_{set|get}_int64() in our setter and getter
functions (makes it work and fixes warnings with gst-inspect).
Original commit message from CVS:
* examples/seeking/seek.c: (make_mp3_pipeline),
(make_mpeg_pipeline), (seek_cb), (start_seek), (stop_seek),
(play_cb), (pause_cb), (stop_cb):
update the example
Original commit message from CVS:
* gst/volume/gstvolume.c: (gst_volume_class_init),
(volume_transform):
do not update controlled params, if buffer has no timestamp
Original commit message from CVS:
* configure.ac:
* gst/sine/Makefile.am:
* gst/volume/Makefile.am:
controllerized elements also need to link against controller-libs ;)
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* docs/libs/tmpl/gstcolorbalance.sgml:
* docs/libs/tmpl/gstgconf.sgml:
* docs/libs/tmpl/gstmixer.sgml:
* docs/libs/tmpl/gstringbuffer.sgml:
* gst/sine/gstsinesrc.c: (gst_sinesrc_class_init),
(gst_sinesrc_create):
* gst/volume/gstvolume.c: (gst_volume_class_init),
(volume_transform):
controllerized two audio plugins
Original commit message from CVS:
2005-08-29 Andy Wingo <wingo@pobox.com>
* ext/vorbis/vorbisdec.c (vorbis_dec_convert, vorbis_dec_push)
(vorbis_handle_data_packet): Fix some int overflow errors.
Original commit message from CVS:
2005-08-29 Andy Wingo <wingo@pobox.com>
* ext/ogg/gstoggdemux.c (gst_ogg_demux_init): Init total_time to
-1.
(gst_ogg_demux_perform_seek): Clamp segment_stop only if it's
valid.
(gst_ogg_pad_submit_packet): Subtract the chain's begin_time only
if it's valid. Fixed streaming-mode playback.
Original commit message from CVS:
2005-08-29 Andy Wingo <wingo@pobox.com>
* check/elements/audioconvert.c: Convert from native endian, not
little endian.
Original commit message from CVS:
* gst/audioconvert/audioconvert.c: (if), (float),
(audio_convert_get_func_index), (check_default),
(audio_convert_clean_fmt), (audio_convert_prepare_context),
(audio_convert_clean_context), (audio_convert_get_sizes),
(audio_convert_convert):
More elegant and working temp buffer selection algo.
Original commit message from CVS:
* gst/audioconvert/audioconvert.c: (if), (float),
(audio_convert_get_func_index), (check_default),
(audio_convert_clean_fmt), (audio_convert_prepare_context),
(audio_convert_clean_context), (audio_convert_get_sizes),
(get_temp_buffer), (audio_convert_convert):
Use realloc else we lose our original data.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (ogg_find_peek):
Another from MikeS:
During typefinding, don't support negative offsets
(offsets from the end of the stream) in our typefind->peek() function
- nothing embedded in ogg ever needs them. However, we need to recognise
those requests and reject them, otherwise we return invalid pointers.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose):
* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_class_init),
(vorbisdec_finalize), (vorbis_handle_type_packet):
Big shout-out to MikeS for fixing this giant memory leak.
Huzzah!
Original commit message from CVS:
* check/Makefile.am:
* check/elements/audioconvert.c: (setup_audioconvert),
(cleanup_audioconvert), (get_int_caps), (verify_convert),
(GST_START_TEST), (audioconvert_suite), (main):
add a test for audioconvert
* gst/audioresample/gstaudioresample.c:
* gst/audioresample/gstaudioresample.h:
set DURATION so that TIMESTAMP(a) + DURATION(a) == TIMESTAMP(b);
note that for buffers of 1/3 sec this means DURATION(c) is
one nanosecond more than for a and b
Original commit message from CVS:
* gst/audioresample/debug.c:
* gst/audioresample/gstaudioresample.c:
add room for extra overlap samples when asked to transform size
protect against possible mem corruption and check for discrepancies
between written size and outbuffer's size so we can warn for
potential problems
* gst/audioresample/resample.c: (resample_init),
(resample_get_output_size_for_input), (resample_get_output_size),
(resample_set_n_channels), (resample_set_format):
set debug level based on RESAMPLE_DEBUG env var
make sure that get_output_size* returns a whole number of
sample_size
set sample_size each time either channel or format is set
* gst/audioresample/resample_chunk.c: (resample_scale_chunk):
* gst/audioresample/resample_functable.c:
(resample_scale_functable):
* gst/audioresample/resample_ref.c: (resample_scale_ref):
remove r->sample_size, it's done in resample.c now
add some debugging to the ref implementation
make sure we only give back bytes that are wholes of the sample
size
Original commit message from CVS:
* check/Makefile.am:
* check/generic/states.c: (GST_START_TEST), (states_suite), (main):
add same test as to core, it bitches out on playbin atm.
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c: (gst_videoscale_init),
(gst_videoscale_prepare_size), (parse_caps),
(gst_videoscale_set_caps), (gst_videoscale_get_size),
(gst_videoscale_prepare_image), (gst_videoscale_transform_ip),
(gst_videoscale_transform):
* gst/videoscale/gstvideoscale.h:
Refactor, make use of BaseTranform really well.
Original commit message from CVS:
* check/Makefile.am:
Add CHECK_CFLAGS and LDFLAGS
* gst/playback/gstplaybasebin.c: (fill_buffer):
GST_MESSAGE_SRC became a GObject
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_set_sample),
(gst_ring_buffer_clear_all):
* gst-libs/gst/audio/gstringbuffer.h:
Added function to clear the ringbuffer.
Original commit message from CVS:
2005-08-24 Andy Wingo <wingo@pobox.com>
* sys/v4l/gstv4lelement.c (gst_v4lelement_start)
(gst_v4lelement_stop): Call _start and _stop for xoverlay instead
of _open and _close.
* sys/v4l/gstv4lxoverlay.h:
* sys/v4l/gstv4lxoverlay.c (gst_v4l_xoverlay_set_xwindow_id): Open
an Xv connection here, instead of all the time. Make Xv only be
loaded if you axe for it. Kindof a workaround for buggy behaviour
of Xv when using remote xservers (XvQueryExtension would block).
(gst_v4l_xoverlay_stop, gst_v4l_xoverlay_start): New functions,
replace the _open and _close public API. Only start the xv
connection if necessary.
(gst_v4l_xoverlay_open, gst_v4l_xoverlay_close): Made static.
Original commit message from CVS:
* examples/seeking/seek.c: (make_vorbis_pipeline),
(make_theora_pipeline), (make_vorbis_theora_pipeline), (do_seek):
Small seek updates.
Original commit message from CVS:
2005-08-23 Andy Wingo <wingo@pobox.com>
* gst-libs/gst/audio/gstbaseaudiosrc.c
(gst_base_audio_src_fixate): Only fixate endianness if it is
present in the caps.
Original commit message from CVS:
2005-08-22 Andy Wingo <wingo@pobox.com>
* ext/alsa/gstalsasink.c (gst_alsasink_get_property):
* ext/alsa/gstalsasrc.c (gst_alsasrc_get_property): Add a
device-name property.
Original commit message from CVS:
2005-08-22 Andy Wingo <wingo@pobox.com>
* gst-libs/gst/audio/gstaudiosrc.h:
* gst-libs/gst/audio/gstaudiosrc.c: Implement open_device and
close_device in the ring buffer, like gstaudiosink.
* ext/alsa/gstalsamixer.h:
* ext/alsa/gstalsamixer.c: Not a GObject any more. Include a nifty
macro to implement the interface without much code. Cleanups.
* ext/alsa/gstalsasrc.h:
* ext/alsa/gstalsasrc.c: Be a mixer. Open device and mixer in
READY.
* ext/alsa/Makefile.am: Add new files.
* ext/alsa/gstalsamixerelement.c:
* ext/alsa/gstalsamixerelement.c: Split element code out from
mixer code so that alsasrc can be a mixer too.
Original commit message from CVS:
2005-08-19 Andy Wingo <wingo@pobox.com>
* ext/alsa/gstalsamixertrack.h:
* ext/alsa/gstalsamixertrack.c:
* ext/alsa/gstalsamixeroptions.h:
* ext/alsa/gstalsamixeroptions.c:
* ext/alsa/gstalsamixer.h:
* ext/alsa/gstalsamixer.c: Port to 0.9.
* ext/alsa/Makefile.am: Build mixer, mixeroptions, mixertracks.
Remove gstalsa.c and alsaclock. No more cruft here.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_change_state):
Open and close device in READY<->NULL state change.
Original commit message from CVS:
2005-08-16 Andy Wingo <wingo@pobox.com>
* examples/seeking/Makefile.am: Don't compile non-compiling
compiled objects with the compiler.
* examples/seeking/seek.c (make_dv_pipeline): Update for new DV
elements.
Original commit message from CVS:
2005-08-12 Philippe Khalaf <burger@speedy.org>
* gst-libs/gst/rtp/gstbasertpdepayload.c:
* gst-libs/gst/rtp/gstbasertpdepayload.h:
Made a thread to release the queue.
Removed timestamp conversion for now.
Original commit message from CVS:
2005-08-10 Philippe Khalaf <burger@speedy.org>
* gst-libs/gst/rtp/gstbasertpdepayload.c:
* gst-libs/gst/rtp/gstbasertpdepayload.h:
Added rtp timestamp -> gst timestamp conversion.
Fixed several problems with queue.
Original commit message from CVS:
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_chunk),
(gst_riff_parse_chunk):
Fix bug in debug message and add some more debug messages.
Original commit message from CVS:
2005-08-08 Andy Wingo <wingo@pobox.com>
* gst-libs/gst/audio/gstbaseaudiosink.c
(gst_base_audio_sink_change_state): Open the device in NULL->READY
like good elements should. Close on READY->NULL too.
* gst-libs/gst/audio/gstaudiosink.c
(gst_audioringbuffer_open_device,
(gst_audioringbuffer_close_device, gst_audioringbuffer_acquire)
(gst_audioringbuffer_release): Updates for new ring buffer API,
hook into the new audio sink api.
* gst-libs/gst/audio/gstaudiosink.h (GstAudioSinkClass.open)
(GstAudioSinkClass.close): Just open and close the device -- no
resource allocation or configuration.
(GstAudioSinkClass.prepare, GstAudioSinkClass.unprepare): New
vmethods, handle device setup and resource allocation.
* ext/alsa/gstalsasink.c (gst_alsasink_open, gst_alsasink_close)
(gst_alsasink_prepare, gst_alsasink_unprepare): Update for new
base class API.
* gst-libs/gst/audio/gstringbuffer.h
(GstRingBufferClass.open_device, GstRingBufferClass.close_device):
New vmethods.
* gst-libs/gst/audio/gstringbuffer.c (gst_ring_buffer_open_device)
(gst_ring_buffer_close_device, gst_ring_buffer_device_is_open):
New API functions. The device should be opened before acquiring
and closed after releasing.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (remove_sinks):
Remove visualization from parent explicitely; works around some
apparent refcount issue that I haven't tracked down yet.
Original commit message from CVS:
* common/gtk-doc-plugins.mak:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
renamed to actual element names, so much nicer to look at
* docs/plugins/tmpl/gstmultifdsink.sgml:
remove
* docs/plugins/tmpl/multifdsink.sgml:
* docs/plugins/tmpl/tcpserversink.sgml:
add
* ext/alsa/gstalsa.c:
* ext/cdparanoia/gstcdparanoia.c: (cdparanoia_get_property):
* ext/ogg/gstoggmux.c:
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain):
* gst/playback/gstdecodebin.c:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_class_init):
* gst/tcp/gsttcpserversink.c:
various fixes and documentation additions
Original commit message from CVS:
2005-08-04 Andy Wingo <wingo@pobox.com>
* gst/videoscale/gstvideoscale.c (gst_videoscale_get_size):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c
(gst_ffmpegcsp_get_size): Adapt to API changes.
* gst/videoscale/gstvideoscale.c (gst_videoscale_transform_ip):
Implement an in-place do-nothing transform.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put),
(gst_ximagesink_renegotiate_size):
Do not set new window sizes yet if we prepare a new buffer size
for upstream renegotiation (software scaling) at some point in the
future, because this new size waqs not actually accepted yet. Once
accepted, renegotiation later on will set the new sizes just fine.
Fixes a videotestsrc ! queue ! videoscale ! ximagesink xoverlay
embedding testcase.
Original commit message from CVS:
2005-08-03 Andy Wingo <wingo@pobox.com>
* sys/ximage/ximagesink.c (gst_ximagesink_renegotiate_size):
(gst_ximagesink_buffer_alloc):
Protect the height, width, and desired_caps with the pool_lock.
Fixes videotestsrc ! queue ! ximagesink.
Original commit message from CVS:
2005-08-02 Jan Schmidt <thaytan@mad.scientist.com>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_change_state):
Stop collectpads before calling the parent state
change function on PAUSED->READY.
Original commit message from CVS:
* configure.ac:
When testing for X libs, use the X CFlags
* gst/adder/gstadder.c: (gst_adder_change_state):
Stop the collectpads before calling parent state change function
on PAUSED->READY, otherwise we deadlock deactivating pads.
Original commit message from CVS:
2005-07-29 Andy Wingo <wingo@pobox.com>
* ext/alsa/gstalsaplugin.c (plugin_init): We are primary audio
sinks.
* ext/alsa/gstalsasink.c (alsasink_sink_factory): Advertise our
support of both endiannesses.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_audio_element):
Switch to auto*sink elements as default sinks; add volume element
so that volume control in totem works.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gen_preroll_element):
* gst/playback/gstplaybin.c: (setup_sinks),
(gst_play_bin_change_state):
Refcount fix and more comments.
Original commit message from CVS:
2005-07-21 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/Makefile.am:
* sys/ximage/ximage.c: (plugin_init):
* sys/ximage/ximagesink.c:
Prepare for adding ximagesrc, rename of plugin to ximage etc.
Original commit message from CVS:
2005-07-20 Andy Wingo <wingo@pobox.com>
* gst/videoscale/vs_image.c (vs_image_scale_nearest_YUYV): Typo
fix (?), fixes a seggie mcfalterson (#310894).
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (fill_buffer):
Use _new_custom() so we can set custom message types for buffering
messages.
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/gconf/.cvsignore:
* gst-libs/gst/gconf/Makefile.am:
* gst-libs/gst/gconf/test-gconf.c:
* pkgconfig/Makefile.am:
* pkgconfig/gstreamer-gconf-uninstalled.pc.in:
* pkgconfig/gstreamer-gconf.pc.in:
Remove gconf stuff, use gconf elements instead from now on.
Original commit message from CVS:
* examples/seeking/seek.c: (make_dv_pipeline),
(make_vorbis_theora_pipeline), (query_rates),
(query_positions_elems), (query_positions_pads), (do_seek):
Make correct DV pipeline.
Original commit message from CVS:
2005-07-18 Andy Wingo <wingo@pobox.com>
* configure.ac (DEFAULT_AUDIOSINK, DEFAULT_AUDIOSRC): Use alsa by
default. Also because it's the only thing that really works. (This
is used in the GConf elements).
Use AS_LIBTOOL_TAGS.
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Align samples even if we have roundoff errors in the
timestamp conversion.
Original commit message from CVS:
* gst/tcp/gstfdset.c: (gst_fdset_free):
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_init),
(gst_multifdsink_add), (gst_multifdsink_remove),
(gst_multifdsink_clear), (gst_multifdsink_get_stats),
(gst_multifdsink_remove_client_link),
(gst_multifdsink_client_queue_data),
(gst_multifdsink_client_queue_caps),
(gst_multifdsink_client_queue_buffer),
(gst_multifdsink_queue_buffer), (gst_multifdsink_handle_clients),
(gst_multifdsink_stop):
* gst/tcp/gstmultifdsink.h:
0.8 backporting.
* sys/ximage/ximagesink.c: (gst_ximagesink_show_frame):
Also draw image when not from a pool.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (check_queue), (probe_triggered),
(mute_stream), (silence_stream):
Small debug additions.
Original commit message from CVS:
make GST_PLUGIN_LDFLAGS only be flags; GST_LIBS should be
added manually to each Makefile.am so we are sure it goes
*last* and doesn't add -L flags before linking in libs of our
own, like, say, internal .la libs, that then accidentally pick
up the installed copy.
Original commit message from CVS:
2005-07-13 Andy Wingo <wingo@pobox.com>
* sys/v4l/gstv4lsrc.c (gst_v4lsrc_stop): Fix a spurious warning.
(gst_v4lsrc_fixate): Fixate on format as well.
Original commit message from CVS:
2005-07-13 Andy Wingo <wingo@pobox.com>
* sys/xvimage/xvimagesink.c (gst_xvimage_buffer_destroy)
(gst_xvimagesink_xvimage_new): Ref the xvimagesink while the
buffer points to it.
(gst_xvimagesink_check_xshm_calls): Don't use our xvimage buffer,
rather just doing X calls ourselves. Also fixes a memleak.
Original commit message from CVS:
2005-07-12 Andy Wingo <wingo@pobox.com>
* sys/v4l/gstv4lsrc.c (gst_v4lsrc_get_property)
(gst_v4lsrc_set_property, gst_v4lsrc_class_init, gst_v4lsrc_init)
(gst_v4lsrc_create): Re-add the copy-mode property, default to
TRUE to avoid deadlocks if an element holds on to our buffers.
Original commit message from CVS:
2005-07-07 Andy Wingo <wingo@pobox.com>
* sys/v4l/gstv4lsrc.c (gst_v4lsrc_fixate): Also fixate the
framerate. Need to get a handle on when exactly this function is
called, tho.
Original commit message from CVS:
2005-07-07 Andy Wingo <wingo@pobox.com>
* sys/v4l/v4lsrc_calls.h:
* sys/v4l/v4lsrc_calls.c: Remove sync-related stuff.
(gst_v4lsrc_get_fps_list): Moved here from gstv4lsrc.c.
(gst_v4lsrc_buffer_new): Totally derive from GstBuffer.
* sys/v4l/v4l_calls.h: Cast to V4lElement.
* sys/v4l/v4l_calls.c: Header loc fixen, don't load mjpeg, all
v4lelements are sources.
* sys/v4l/gstv4lxoverlay.h:
* sys/v4l/gstv4lxoverlay.c:
* sys/v4l/gstv4ltuner.h:
* sys/v4l/gstv4ltuner.c: Header loc fixen.
* sys/v4l/gstv4lsrc.h:
* sys/v4l/gstv4lsrc.c: Crucial GPL update. Clean up a bit, port to
PushSrc/BaseSrc. Removed most sync-related properties, videorate
or something should handle that. Made a live source.
* sys/v4l/gstv4lelement.h:
* sys/v4l/gstv4lelement.c: Derive from GstPushSrc. No more
signals. Some cleanups.
* sys/v4l/gstv4lcolorbalance.h: Interface header update.
* sys/v4l/gstv4l.c: Don't register v4lelement, or the jpeg/mjpeg
stuff.
* sys/v4l/Makefile.am: Build everything except the jpeg/mjpeg
stuff.
* sys/Makefile.am (SUBDIRS): Hit the V4L crack pipe.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_getcaps),
(theora_dec_push), (theora_handle_data_packet):
Prepare for better timestamp fix later.
* gst/audioconvert/gstaudioconvert.c:
List most accurate caps first
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_loop):
Use proper pad task function.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_show_frame):
Fix deadlock when alloc failed.
Original commit message from CVS:
2005-07-04 Andy Wingo <wingo@pobox.com>
* gst/audioconvert/gstaudioconvert.c (gst_audio_convert_fixate):
No refcount leakage.
Original commit message from CVS:
2005-07-01 Andy Wingo <wingo@pobox.com>
* ext/theora/theoradec.c (theora_dec_src_getcaps): Implement a
getcaps to do explicit caps. Needs to be done in all decoders,
possibly via a base class.
* configure.ac (GST_PLUGIN_LDFLAGS): Add videoscale.
* ext/ogg/gstoggdemux.c (gst_ogg_pad_typefind): No need to set
caps on the sink pad, just rely on the pad template. Also, setting
ANY caps on a pad is not valid because the caps are not fixed.
* sys/ximage/ximagesink.c (gst_ximagesink_buffer_alloc): Set the
caps on the buffer, and get the width from the desired_caps if
they're set.
(gst_ximagesink_renegotiate_size): Implement via setting the
desired_caps on the ximagesink.
(gst_ximagesink_setcaps): Only reset the width of the player if it
wasn't already set. Not sure if this is right.
(gst_ximagesink_show_frame): Memcpy only for normal buffers.
* sys/ximage/ximagesink.h (desired_caps): New field, is the caps
that the user wants. NULL unless the window has been resized.
* gst/volume/gstvolume.c (volume_transform): Adapt to
basetransform refcount changes.
Original commit message from CVS:
2005-07-01 Andy Wingo <wingo@pobox.com>
* gst/videoscale/gstvideoscale.c:
* gst/videoscale/gstvideoscale.h: Clean up, port to 0.9. Derives
from BaseTransform, implements a transform_caps. Removed dead code
including some PAR stuff that was never reached -- should probably
be added back somehow.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_audio_caps), (gst_riff_create_iavs_caps),
(gst_riff_create_video_template_caps),
(gst_riff_create_audio_template_caps),
(gst_riff_create_iavs_template_caps):
* gst-libs/gst/riff/riff-media.h:
* gst-libs/gst/riff/riff-read.h:
* gst-libs/gst/riff/riff.c: (gst_riff_init):
Add gst_riff_init() to initialize the debug category, instead
of plugin_init(). Port riff-media.[ch] from -THREADED to HEAD.
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_init):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_baseaudiosink_class_init), (gst_baseaudiosink_dispose),
(gst_baseaudiosink_change_state):
* gst-libs/gst/audio/gstbaseaudiosink.h:
* gst-libs/gst/audio/gstringbuffer.c:
(gst_ringbuffer_set_callback):
Fix compilation error.
Ringbuffer starts out as not running.
Free our clock in dispose.
When releasing the ringbuffer we need to renegotiate so
clear the pad caps.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet):
If we're building a chain we are not in an error case
when we queue a buffer.
Original commit message from CVS:
2005-06-27 Andy Wingo <wingo@pobox.com>
* gst/videotestsrc/gstvideotestsrc.c
(gst_videotestsrc_activate_push): Activation API changes.
* gst/playback/gstdecodebin.c (gst_decode_bin_change_state)
(gst_decode_bin_dispose): Free dynamics in READY->NULL, because
they have refs on the decodebin.
* ext/ogg/gstoggdemux.c (gst_ogg_pad_class_init): Ref the right
parent class.
(gst_ogg_pad_typefind): Don't leak a pad ref.
(gst_ogg_chain_new_stream): gst_object_unref, not g_object_unref.
(gst_ogg_demux_sink_activate, gst_ogg_demux_sink_activate_push)
(gst_ogg_demux_sink_activate_pull): Changes for activation API.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_change_state):
re-arranged call to parent's state change in order to avoid locks (or
worse).
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
2nd argument of 'unknow-type' signal is a GstCaps and not a
GstMiniObject
Original commit message from CVS:
2005-06-25 Jan Schmidt <thaytan@mad.scientist.com>
* gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_acquire):
Set the worker thread's running flag to TRUE before starting the
thread.
* gst/playback/gstdecodebin.c: (gst_decode_bin_init):
Catch a failure to add typefind to the bin.
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_videorate_transformcaps),
(gst_videorate_getcaps), (gst_videorate_setcaps),
(gst_videorate_event), (gst_videorate_chain):
Fixed videorate, fixating an already fixated caps is not
an error.
Original commit message from CVS:
* ext/theora/theoraenc.c: (theora_set_header_on_caps):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_set_header_on_caps):
Set buffers on caps as miniobjects and not as boxed.
Original commit message from CVS:
2005-06-09 Andy Wingo <wingo@pobox.com>
* configure.ac:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/net/Makefile.am:
Add gstnet to build.
Original commit message from CVS:
* gst-libs/gst/net/Makefile.am:
* pkgconfig/gstreamer-libs-uninstalled.pc.in:
* pkgconfig/gstreamer-libs.pc.in:
Added net stuff, version net lib.
Original commit message from CVS:
2005-06-02 Andy Wingo <wingo@pobox.com>
* pkgconfig/gstreamer-libs-uninstalled.pc.in (prefix):
* pkgconfig/gstreamer-libs.pc.in (prefix): Add gst/tag to the -L
list.
* gst/playback/gstdecodebin.c (gst_decode_bin_dispose): Don't
remove the typefind, the bin dispose will do it for us. When it's
removed and unreffed, the signal handler will be disconnected,
too.
(unlinked): It's too difficult to disconnect from unlinked
handlers, as they are on pads not elements. Just punt if the pads
aren't grandkids of the bin.
Original commit message from CVS:
* gst-libs/gst/audio/gstringbuffer.c: (gst_ringbuffer_delay):
Don't try to call the delay method when the device is not
opened.
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (set_hwparams), (gst_alsasink_open):
Get actual segment size and buffer size after opening
the device.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_clear_chains):
Also FLUSH upstream, makes the loop function exit faster.
* ext/theora/theoradec.c: (theora_dec_src_query):
Some more debug info in the query.
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new),
(gst_ximagesink_setcaps):
Release lock on par error, better error reporting.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_activate_chain), (gst_ogg_demux_chain),
(gst_ogg_demux_clear_chains), (gst_ogg_demux_change_state):
Clear chains in READY
Queue packets until the chain is activated.
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_configure_context),
(gst_ffmpegcsp_setcaps), (gst_ffmpegcsp_bufferalloc),
(gst_ffmpegcsp_chain), (gst_ffmpegcsp_change_state):
No need to take the STREAM lock anymore.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose),
(gst_ogg_pad_typefind), (gst_ogg_pad_submit_packet),
(gst_ogg_chain_new_stream), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_chain), (gst_ogg_demux_loop),
(gst_ogg_demux_sink_activate):
* ext/theora/theoradec.c: (theora_dec_src_event),
(theora_handle_comment_packet), (theora_dec_chain),
(theora_dec_change_state):
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_handle_data_packet), (vorbis_dec_chain),
(vorbis_dec_change_state):
Remove STREAM locks as they are taken in core now.
Never set bogus granulepos on vorbis/theora.
Fix leaks in theoradec tag parsing.
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsasink_open):
Open non-blocking, set to blocking mode afterwards to avoid
lockups when audio device is busy.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (probe_triggered):
Fix missing unlock.
* gst/playback/gstplaybin.c: (add_sink):
First add, then link (otherwise pad link fails).
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gen_preroll_element):
Increase buffer for video, decrease buffer for other media types.
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_audio_element):
Change names for debugging purposes.
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_configure_context),
(gst_ffmpegcsp_setcaps), (gst_ffmpegcsp_bufferalloc),
(gst_ffmpegcsp_chain):
Enable buffer alloc passthrough if the source and dest
formats are the same.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(fill_buffer), (check_queue), (queue_threshold_reached),
(queue_out_of_data):
* gst/playback/gstplaybasebin.h:
Post buffer-fullness on the bus.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_type),
(gst_play_base_bin_class_init), (gst_play_base_bin_finalize),
(get_active_group), (get_building_group), (group_destroy),
(group_commit), (check_queue), (queue_overrun),
(queue_threshold_reached), (queue_out_of_data),
(gen_preroll_element), (remove_groups), (unknown_type),
(add_element_stream), (no_more_pads), (probe_triggered),
(preroll_unlinked), (new_decoded_pad), (setup_subtitle),
(setup_substreams), (setup_source), (finish_source),
(prepare_output), (muted_group_change_state),
(gst_play_base_bin_set_property), (gst_play_base_bin_get_property),
(gst_play_base_bin_change_state):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_init), (gst_play_bin_set_property),
(gen_video_element), (gen_text_element), (gen_audio_element),
(gen_vis_element), (remove_sinks), (add_sink), (setup_sinks),
(gst_play_bin_change_state):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init),
(cb_probe), (gst_stream_info_new), (gst_stream_info_dispose),
(stream_info_change_state), (gst_stream_info_set_mute),
(gst_stream_info_get_property):
* gst/playback/gststreaminfo.h:
* gst/playback/gststreamselector.c: (gst_stream_selector_init),
(gst_stream_selector_get_linked_pad),
(gst_stream_selector_getcaps),
(gst_stream_selector_get_linked_pads),
(gst_stream_selector_request_new_pad), (gst_stream_selector_chain):
* gst/playback/gststreamselector.h:
Rough port of playbin. Needs some more work, but is mostly done,
and uses a few locks in important places, which should make stuff
like chain-switches clean. Still uses GST_STATE() in a few places,
which isn't all that good an idea, subtitles/elements disabled
because no elements to test with and thus probably broken, query
and event handling moved to GstBin, internal thread removed
alltogether because the pipeline does that for us now. Can play
Ogg/Vorbis files. Haven't tested anything else yet.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c (vorbis_handle_comment_packet): Post a
message to the bus with the tags. Still not sent downstream tho.
* gst/playback/gstdecodebin.c (remove_element_chain): Unref after
get_parent.
(remove_element_chain): Use OBJECT_PARENT instead of get_parent to
avoid refcounting hassles.
Original commit message from CVS:
2005-05-09 Andy Wingo <wingo@pobox.com>
* gst/volume/Makefile.am:
* gst/volume/demo.c
* gst/volume/gstvolume.h
* gst/volume/gstvolume.c: Port to 0.9 API, derive from
basetransform. Probably need an audio filter base class.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_sink_setcaps),
(gst_vorbisenc_src_query), (gst_vorbisenc_sink_query),
(gst_vorbisenc_set_header_on_caps), (gst_vorbisenc_sink_event),
(gst_vorbisenc_chain):
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain),
(gst_audio_convert_caps_remove_format_info),
(gst_audio_convert_getcaps), (gst_audio_convert_setcaps),
(gst_audio_convert_fixate), (gst_audio_convert_channels):
Make caps writable before writing to it.
Fix negotiation in audioconvert some more.
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_videorate_class_init),
(gst_videorate_getcaps), (gst_videorate_setcaps),
(gst_videorate_blank_data), (gst_videorate_init),
(gst_videorate_event), (gst_videorate_chain),
(gst_videorate_change_state):
Port videorate, do a better job at negotiation while we're at
it.
Original commit message from CVS:
* configure.ac: Require liboil.
* gst/videotestsrc/gstvideotestsrc.c: Fix up liboil calls, add
a few more.
* gst/videotestsrc/videotestsrc.c:
* gst/videotestsrc/videotestsrc.h:
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_configure_context),
(gst_ffmpegcsp_setcaps), (gst_ffmpegcsp_chain):
Well, unreffing a buffer right before pushing it is asking
for trouble..
Original commit message from CVS:
2005-05-06 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* ext/Makefile.am:
Disable cdparanoia until someone ports it!
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind),
(gst_ogg_demux_sink_activate):
And revert after wingo's revert.. sigh..
Original commit message from CVS:
2005-05-05 Andy Wingo <wingo@pobox.com>
* gst/audiorate/gstaudiorate.c (gst_audiorate_class_init): Pacify
GObject.
* configure.ac: Return audiorate and subparse from the ghetto.
Re-enable -Wall -Werror.
* gst/subparse/gstsubparse.c:
* gst/subparse/gstsubparse.h: Port to 0.9. Can operate loop-based
or chain-based. Cleaned up a bit. Not tested.
Original commit message from CVS:
* gst/adder/Makefile.am:
* gst/adder/gstadder.c: (gst_adder_setcaps),
(gst_adder_class_init), (gst_adder_init),
(gst_adder_request_new_pad), (gst_adder_collected),
(gst_adder_change_state):
* gst/adder/gstadder.h:
Ported adder as an example of a mixer element using
collect pads. Needs more negotiation work.
Original commit message from CVS:
* ext/theora/theoradec.c: (_inc_granulepos),
(theora_dec_src_event), (theora_dec_sink_event),
(theora_handle_comment_packet), (theora_handle_type_packet),
(theora_handle_header_packet), (theora_handle_data_packet),
(theora_dec_chain):
* ext/theora/theoraenc.c: (gst_theora_enc_class_init),
(gst_theora_enc_init), (theora_enc_sink_setcaps),
(theora_push_buffer), (theora_push_packet),
(theora_enc_sink_event), (theora_enc_chain),
(theora_enc_change_state), (theora_enc_set_property),
(theora_enc_get_property):
Added stream lock to decoder so that we can serialize
the discont event.
More theoraenc porting, recover from errors, do clean
shutdown.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_sink_activate):
* ext/vorbis/vorbisdec.c: (vorbis_dec_convert),
(vorbis_dec_src_query), (vorbis_dec_src_event),
(vorbis_dec_sink_event), (vorbis_handle_comment_packet),
(vorbis_handle_type_packet), (vorbis_handle_header_packet),
(copy_samples), (vorbis_handle_data_packet), (vorbis_dec_chain):
Don't crap out when seeking back to position 0.
Original commit message from CVS:
* ext/theora/theoradec.c: (_inc_granulepos),
(theora_dec_sink_event), (theora_handle_comment_packet),
(theora_handle_type_packet), (theora_handle_header_packet),
(theora_handle_data_packet), (theora_dec_chain),
(theora_dec_change_state):
Refactor a bit, use STREAM_LOCK.
Original commit message from CVS:
Make ringbuffer faster and more simple by removing the locks
in the playback thread.
Add sample accurate playback based on buffer sample offsets.
Make the baseaudiosink provide a clock.
Parse caps in the base class.
Correctly handle seeking, flushing and state changes.
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/xwindowlistener/Makefile.am:
* gst-libs/gst/xwindowlistener/xwindowlistener.c:
* gst-libs/gst/xwindowlistener/xwindowlistener.h:
Remove deprecated xwindowlistener (I've moved xwindowlistening
in the v4l/v4l2 plugins over to serverside).
Original commit message from CVS:
* examples/dynparams/Makefile.am: Move demo-dparams from gst/sine
to examples/dynparams. Examples do not belong interspersed with
source code.
* examples/dynparams/demo-dparams.c:
* gst/sine/Makefile.am:
* gst/sine/demo-dparams.c:
Original commit message from CVS:
Don't use GST_PLUGIN_LDFLAGS, because these aren't plugins.
* gst-libs/gst/audio/Makefile.am:
* gst-libs/gst/riff/Makefile.am:
* gst-libs/gst/tag/Makefile.am:
* gst-libs/gst/video/Makefile.am:
* gst-libs/gst/xwindowlistener/Makefile.am:
Convert to 0.9 API, seems to work:
* sys/ximage/Makefile.am:
* sys/ximage/ximagesink.c:
Original commit message from CVS:
* gst-libs/gst/Makefile.am: Remove idct. It hasn't been used
in gst-plugins in a long time, and properly belongs in liboil.
* gst-libs/gst/idct/Makefile.am:
* gst-libs/gst/idct/README:
* gst-libs/gst/idct/dct.h:
* gst-libs/gst/idct/doieee:
* gst-libs/gst/idct/fastintidct.c:
* gst-libs/gst/idct/floatidct.c:
* gst-libs/gst/idct/idct.c:
* gst-libs/gst/idct/idct.h:
* gst-libs/gst/idct/idtc.vcproj:
* gst-libs/gst/idct/ieeetest.c:
* gst-libs/gst/idct/intidct.c:
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_factory_filter):
* gst/playback/gstdecodebin.c: (find_compatibles):
Work with staticpadtemplates in elementfactories.
Original commit message from CVS:
2005-04-06 Andy Wingo <wingo@pobox.com>
* gst-libs/gst/video/Makefile.am (libgstvideo_la_LDFLAGS): Use
GST_BASE_LIBS.
Original commit message from CVS:
Plugin port to 0.9, ogg/theora playback should work in the seek
example now.
Removed old examples.
Removed old oggvorbisenc, renamed rawvorbisenc to vorbisenc as
explained in 0.9 TODO doc.
Original commit message from CVS:
* sys/oss/gstosselement.c: (gst_osselement_class_probe_devices):
Kick the hell out of gcc for not warning me about a symbol conflict.
Original commit message from CVS:
Since dirac 0.5.0 the framerate in dirac is expressed as a rational number. Fix build and up requirement to 0.5.0, and also pass parameters to gst_diracdec_link in the right order. (fixes#167959)
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_audio_caps_with_data):
Do actually fix invalid RIFF fmt header values for alaw
and mulaw audio instead of just saying so.
* gst/wavparse/gstwavparse.c: (gst_wavparse_fmt):
Give gst_riff_create_audio_caps_with_data() a chance to
fix up broken format header fields before extracting any
parameters from the header. (fixes#167633)
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_invert):
Declare variables at beginning of block and make gcc-2.95 happy
(fixes # 167482, patch by Gergely Nagy).
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpclientsrc.h:
Move some includes into the header, so that struct sockaddr_in is
defined when it should be defined on FreeBSD as well (fixes
#167483).
* gst/tcp/gsttcpserversrc.c: (gst_tcpserversrc_init_receive):
Don't pass uninitialised values to setsockopt() here either.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_chain),
(gst_ximagesink_send_pending_navigation),
(gst_ximagesink_navigation_send_event), (gst_ximagesink_finalize),
(gst_ximagesink_init):
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain),
(gst_xvimagesink_send_pending_navigation),
(gst_xvimagesink_navigation_send_event),
(gst_xvimagesink_finalize), (gst_xvimagesink_init):
* sys/xvimage/xvimagesink.h:
Use a mutex protected list to marshal navigation
events into the stream thread from whichever thread
sends them.
Original commit message from CVS:
Add query function to GstSpeed, so that the stream length and current position get adjusted when queried (note that current position queries may still be wrong if the audio sink returns values based on buffer timestamps instead of passing on the query
Original commit message from CVS:
* gst/audioconvert/gstchannelmix.h:
include missing header file
* gst/audioconvert/gstchannelmix.c:
(gst_audio_convert_fill_compatible):
use same sign for both channels when converting to/from compatible
channel. Previously used different signs made the signals cancel
each other out and appear like silence. (fixes#167269)
Original commit message from CVS:
Don't send 'Hey! You gave me a NULL pointer yo naughty person' as error message when we can't open the DVD device; send something more useful instead (fixes#167117)
Original commit message from CVS:
2005-02-11 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put),
(gst_xvimagesink_sink_link), (gst_xvimagesink_change_state),
(gst_xvimagesink_chain), (gst_xvimagesink_buffer_free),
(gst_xvimagesink_buffer_alloc), (gst_xvimagesink_set_xwindow_id),
(gst_xvimagesink_expose), (gst_xvimagesink_set_property),
(gst_xvimagesink_finalize), (gst_xvimagesink_init): Protect interface
methods from chain and negotiation and vice versa (Fixes#166142).
Fix a possible bug of images in the buffer pool being discarded because
we are looking at the wrong geometry.
* sys/xvimage/xvimagesink.h: Add stream_lock.
Original commit message from CVS:
* gst/librfb/Makefile.am: Testing stuff before committing is
for wimps... and people with fast machines. Fix stupid
mistake.
Original commit message from CVS:
* configure.ac: Pull in librfb from my CVS tree, because it is
too small and annoying to be separate. Move rfbsrc plugin
to gst/.
* ext/Makefile.am:
* ext/librfb/Makefile.am:
* ext/librfb/gstrfbsrc.c:
* gst/librfb/Makefile.am:
* gst/librfb/gstrfbsrc.c:
* gst/librfb/rfb.c:
* gst/librfb/rfb.h:
* gst/librfb/rfbbuffer.c:
* gst/librfb/rfbbuffer.h:
* gst/librfb/rfbbytestream.c:
* gst/librfb/rfbbytestream.h:
* gst/librfb/rfbcontext.h:
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
* gst/librfb/rfbutil.h:
Original commit message from CVS:
* ext/dts/gstdtsdec.c: (gst_dtsdec_init), (gst_dtsdec_channels),
(gst_dtsdec_handle_event), (gst_dtsdec_handle_frame),
(gst_dtsdec_chain), (gst_dtsdec_change_state):
* ext/dts/gstdtsdec.h:
Don't clobber the stack constructing the channels array.
Make the element chain-based. DTS tracks can now be played.
Original commit message from CVS:
* testsuite/gst-lint: Check for non-statically scoped
parent_class variables. This won't be a problem once
plugins are loaded with RTLD_LOCAL.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/libpng/gstpngdec.c: (gst_pngdec_init), (gst_pngdec_chain):
* ext/libpng/gstpngenc.c:
Fix byte-order, use proper fixed caps. Fixes#164197.
Original commit message from CVS:
Include "_stdint.h" instead of <stdint.h>. Fixes build on systems that do not have stdint.h, like Solaris 9 (fixes#166631).
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_change_state):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_clear),
(gst_xvimagesink_change_state):
Clear window on PAUSED->READY instead of READY->PAUSED. Stop
Xv video (and thereby regenerate Xv colourkey) in clear() so
that PLAY -> READY -> PLAY works (fixes#162504).
Original commit message from CVS:
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_getcaps):
Switch to list instead of range, since MJPEG-devices really just
support decimations, not any size.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_open_decoder),
(gst_mpeg2dec_reset), (free_all_buffers),
(gst_mpeg2dec_alloc_buffer), (handle_sequence):
* ext/mpeg2dec/gstmpeg2dec.h:
The libmpeg2 user-allocated buffer management is awkward,
to say the least. Hopefully this fixes things.
Original commit message from CVS:
2005-02-04 Andy Wingo <wingo@pobox.com>
* gst/audioconvert/bufferframesconvert.c
(buffer_frames_convert_fixate): New function, fixates to 256
frames per buffer by default. (Much better than 1.)
(buffer_frames_convert_init): Set the fixate function for both src
and sink pad.
(buffer_frames_convert_link): After success setting nonfixed caps,
get the negotiated caps so we can know how many buffer-frames it
will be. No idea how this worked at all before.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_init),
(gst_mpeg2dec_close_decoder), (put_buffer), (check_buffer),
(free_buffer), (free_all_buffers), (gst_mpeg2dec_alloc_buffer),
(handle_sequence), (handle_picture):
* ext/mpeg2dec/gstmpeg2dec.h:
Rearrange buffer tracking and refcounting and refactor
a little for readability.
Original commit message from CVS:
* sys/qcam/gstqcamsrc.c: (gst_qcamsrc_change_state),
(gst_qcamsrc_open):
Use GST_ELEMENT_ERROR, not g_warning, if open failed.
Original commit message from CVS:
* gst/tcp/gsttcpclientsink.c: (gst_tcpclientsink_class_init),
(gst_tcpclientsink_finalize):
* gst/tcp/gsttcpclientsrc.c: (gst_tcpclientsrc_class_init),
(gst_tcpclientsrc_finalize):
* gst/tcp/gsttcpserversink.c: (gst_tcpserversink_class_init),
(gst_tcpserversink_init), (gst_tcpserversink_finalize):
* gst/tcp/gsttcpserversrc.c: (gst_tcpserversrc_class_init),
(gst_tcpserversrc_init), (gst_tcpserversrc_finalize):
Don't leak the hostname when shutting down.
In tcpserversrc, take a copy of the default hostname.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c:
Don't send things to NULL PAD_PEERs
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_chain):
Copy-on-write the incoming buffer.
* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstmpegclock.h:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead),
(normal_seek), (gst_mpeg_demux_handle_src_event):
* gst/mpegstream/gstmpegdemux.h:
* gst/mpegstream/gstmpegpacketize.h:
* gst/mpegstream/gstmpegparse.c:
(gst_mpeg_parse_update_streaminfo), (gst_mpeg_parse_reset),
(gst_mpeg_parse_handle_discont), (gst_mpeg_parse_parse_packhead),
(gst_mpeg_parse_loop), (gst_mpeg_parse_get_rate),
(gst_mpeg_parse_convert_src), (gst_mpeg_parse_handle_src_query),
(gst_mpeg_parse_handle_src_event), (gst_mpeg_parse_change_state):
* gst/mpegstream/gstmpegparse.h:
* gst/mpegstream/gstrfc2250enc.h:
Various changes to the way time is computed that make seeking and
total time estimation much better here.
Use G_BEGIN/END_DECLS instead of __cplusplus
* gst/videocrop/gstvideocrop.c: (gst_video_crop_chain):
Use gst_buffer_stamp instead of only copying the TIMESTAMP
Original commit message from CVS:
* ext/polyp/polypsink.c: (gst_polypsink_base_init),
(create_context), (gst_polypsink_link): Fix silly endianness
bug. Add some debugging. Remove float from caps; it doesn't
work. Attempt to get remote audio working.
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_chain):
D'oh, reference the palette data, not the palette structure.
Fixes color distortion in #132341.
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c: (gst_videoscale_link):
PAR can be non-fixed when not provided as argument (#162626).
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header):
Re-apply patch from #142272 that allows non-seekable sources,
re-proposed by Daniel Drake <dsd@gentoo.org>.
Original commit message from CVS:
2005-01-28 Andy Wingo <wingo@pobox.com>
* ext/dv/gstdvdec.c: Change the pixel aspect ratio of dvdec output
to reflect a different dubious internet source. Add a reference
and some commentary.
Original commit message from CVS:
* gst/playback/gststreamselector.c: (gst_stream_selector_init),
(gst_stream_selector_get_caps), (gst_stream_selector_chain):
* gst/playback/gststreamselector.h:
Be more selective when we're redoing caps negotiation from
within the chain function on a stream change.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup):
Fix logic error in timing of subtitle stream synchronization.
* gst/typefind/gsttypefindfunctions.c: (qt_type_find):
Add skip-chunk, which is found in kodak-camera streams.
Original commit message from CVS:
* ext/mad/Makefile.am:
* ext/mad/gstid3demuxbin.c: (gst_id3demux_bin_get_type),
(gst_id3demux_bin_base_init), (gst_id3demux_bin_class_init),
(gst_id3demux_bin_init), (gst_id3demux_bin_remove_pad),
(found_type), (gst_id3demux_bin_change_state):
* ext/mad/gstid3tag.c: (gst_id3_tag_add_src_pad),
(gst_id3_tag_init), (gst_id3_tag_handle_event),
(gst_id3_tag_src_link), (gst_id3_tag_chain),
(gst_id3_tag_change_state), (plugin_init):
* ext/mad/gstmad.h:
Add id3demuxbin (which is a simple bin consisting of id3demux
and typefind), take over rank from id3demux, remove typefind
code from id3demux. Makes all broken mp3s that I know of work,
and thereby fixes#152688.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/mad/gstmad.c: (gst_mad_src_event):
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event):
Allow seeks on audio pad, make mad forward those (#164826).
* gst/audioscale/gstaudioscale.c: (gst_audioscale_chain):
Set duration (#165335).
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_init),
(gst_asf_demux_commit_taglist), (gst_asf_demux_process_comment),
(gst_asf_demux_process_ext_content_desc),
(gst_asf_demux_change_state), (gst_asf_demux_add_audio_stream),
(gst_asf_demux_add_video_stream), (gst_asf_demux_setup_pad):
* gst/asfdemux/gstasfdemux.h:
Improve metadata display, e.g. if the metadata comes before the
streams are loaded (which is perfectly valid).
Original commit message from CVS:
2005-01-26 Amaury Jacquot <sxpert@esitcom.org>
* ext/cairo/gsttextoverlay.c: include string.h and strings.h to fix
build failure on amd64
Original commit message from CVS:
Check environment variables GST_ID3V2_TAG_ENCODING,
GST_ID3_TAG_ENCODING and GST_TAG_ENCODING for a colon-separated
list of character encodings to force interpretation of non-unicode
strings stored in an ID3v2 tag to a particular encoding. If none
is specified, try to use current locale's encoding, then fall back
to ISO-8859-1 (which will always succeed). (Resolves#149274)
Check environment variables GST_ID3V1_TAG_ENCODING,
GST_ID3_TAG_ENCODING and GST_TAG_ENCODING for a colon-separated
list of character encodings to use in case a string encountered
in an ID3v1 tag is not valid UTF-8 already. If no encoding is
specified, try to use the current locale's encoding, then fall
back to ISO-8859-1 (which will always succeed).
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
- on half framerate, compute the rate in advance so the comparisons
don't compare wrong values
- don't use mad_synth/frame_mute anymore, this mirrors mad_decoder
behaviour
- don't use mad_header_decode anymore, mad_frame_decode does that
automatically
- when getting rid of consumed bytes, reset the stream's skiplen
(fixes#163867)
Original commit message from CVS:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_class_init)
Use 1/2 a second for default max_discont, as PES streams from DVB
seem to have larger spacings in the SCR.
Fix a typo.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_push),
(gst_a52dec_handle_event), (gst_a52dec_chain):
Add some debug output. Check that a discont has a valid
time associated.
* ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event),
(gst_alsa_sink_loop):
Ignore TAG events. A little extra debug for broken timestamps.
* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_init), (dvdnavsrc_loop),
(dvdnavsrc_change_state):
Ensure we send a discont to engage the link before we send any
other events.
* ext/dvdread/dvdreadsrc.c: (dvdreadsrc_init),
(dvdreadsrc_finalize), (_close), (_open), (_seek_title),
(_seek_chapter), (seek_sector), (dvdreadsrc_get),
(dvdreadsrc_uri_get_uri), (dvdreadsrc_uri_set_uri):
Handle URI of the form dvd://title[,chapter[,angle]]. Currently only
dvd://title works in totem because typefinding sends a seek that ends
up going back to chapter 1 regardless.
* ext/mpeg2dec/gstmpeg2dec.c:
* ext/mpeg2dec/gstmpeg2dec.h:
Output correct timestamps and handle disconts.
* ext/ogg/gstoggdemux.c: (get_relative):
Small guard against a null dereference.
* ext/pango/gsttextoverlay.c: (gst_textoverlay_finalize),
(gst_textoverlay_set_property):
Free memory when done. Don't call gst_event_filler_get_duration on
EOS events. Use GST_LOG and GST_WARNING instead of g_message and
g_warning.
* ext/smoothwave/gstsmoothwave.c: (gst_smoothwave_init),
(draw_line), (gst_smoothwave_dispose), (gst_sw_sinklink),
(gst_sw_srclink), (gst_smoothwave_chain):
Draw solid lines, prettier colours.
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init):
Add a default palette that'll work for some movies.
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_init),
(gst_dvd_demux_handle_dvd_event), (gst_dvd_demux_send_discont),
(gst_dvd_demux_send_subbuffer), (gst_dvd_demux_reset):
* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_send_discont),
(gst_mpeg_demux_parse_syshead), (gst_mpeg_demux_parse_pes):
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_init),
(gst_mpeg_parse_handle_discont), (gst_mpeg_parse_parse_packhead):
* gst/mpegstream/gstmpegparse.h:
Use PTM/NAV events when for timestamp adjustment when connected to
dvdnavsrc. Don't use many discont events where one suffices.
* gst/playback/gstplaybasebin.c: (group_destroy),
(gen_preroll_element), (gst_play_base_bin_add_element):
* gst/playback/gstplaybasebin.h:
Make sure we remove subtitles from the same bin we put them in.
* gst/subparse/gstsubparse.c: (convert_encoding), (parse_subrip),
(gst_subparse_buffer_format_autodetect),
(gst_subparse_change_state):
Fix some memleaks and invalid accesses.
* gst/typefind/gsttypefindfunctions.c: (ogganx_type_find),
(oggskel_type_find), (cmml_type_find), (plugin_init):
Some typefind functions for Annodex v3.0 files
* gst/wavparse/gstwavparse.h:
GstRiffReadClass is the correct parent class.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data):
Add extradata to huffyuv (fixes#165013).
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data):
Fix extradata extraction if it is in the chunk size.
Original commit message from CVS:
2005-01-25 Andy Wingo <wingo@pobox.com>
* sys/v4l/gstv4lelement.c (gst_v4l_iface_supported): Fix compile
for #ifndef HAVE_XVIDEO.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_change_state):
Explicit state change to workaround refcount bugs.
Original commit message from CVS:
* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_element_data),
(gst_riff_read_element_data):
* gst-libs/gst/riff/riff-read.h:
Add _peek version (req'ed in CDXA).
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxaparse_init),
(gst_cdxaparse_loop):
Fix parsing in playbin.
* gst/playback/gstdecodebin.c: (close_pad_link):
Ignore current_ pads, they cause major annoyance.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_buffer):
Allow for 0-sized buffers. Fixes length query problems in
starwars.mkv from the testsuite.
Original commit message from CVS:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_parse_packhead):
MPEG2 has a useful rate property, so we can actually use that.
For MPEG-1, continue using the bytes/time properties.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
Fail if caps negotiation fails. Should fix#162184, and should
definately be in there regardless of it fixing the actual bug.
* gst/avi/gstavimux.c: (gst_avimux_get_type), (gst_avimux_init),
(gst_avimux_write_tag), (gst_avimux_riff_get_avi_header),
(gst_avimux_riff_get_avix_header),
(gst_avimux_riff_get_video_header),
(gst_avimux_riff_get_audio_header), (gst_avimux_write_index),
(gst_avimux_start_file), (gst_avimux_handle_event),
(gst_avimux_change_state):
* gst/avi/gstavimux.h:
Refactor structure writing to use GST_WRITE_UINT macros, add
metadata writing support.
Original commit message from CVS:
* gst/playback/gststreaminfo.c: (gst_stream_info_dispose):
Elements may already be destroyed when this function is called.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header), (gst_qtdemux_handle_esds):
More memory leak fixes (#149162).
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_srcgetcaps):
Fix off-by-one bug. Fixes warnings during playback of sincity.mp4
when fixating to six channels in Totem.
Original commit message from CVS:
Use NULL for an empty GList instead of g_list_alloc(); fix memory leaks; s/LCPM/LPCM/; use g_strdup_printf() instead of GString (easier to bulk free later)
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps):
Fix BGRA32 caps (#164209).
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_caps_to_pixfmt):
alpha_mask can be RGBA/ABGR. Fixes#164265.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/mpeg2dec/gstmpeg2dec.c: (crop_buffer),
(gst_mpeg2dec_alloc_buffer):
* ext/mpeg2dec/gstmpeg2dec.h:
Crop if decoding size is not the actual image size (#163676).
Original commit message from CVS:
* ext/alsa/gstalsaclock.c: (gst_alsa_clock_wait):
Sanity check, don't wait endlessly since the clock might not
actually run at this point (which is a deadlock). Fixes#164069.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_caps_to_pixfmt):
Fix for depth = 15. Fixes#161675.
Original commit message from CVS:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_getcaps):
Set FPS correctly, even for webcams and the like.
* sys/v4l/v4l_calls.c: (gst_v4l_set_chan_norm):
Don error on setting while capturing.
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
I'm a bad boy. using /1001. to force C to do float division
and not integer division (as it did in my last commit)
Thanks to David I. Lehn for pointing this mistake.
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* ext/libfame/gstlibfame.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
replace framerate aproximations by their real value
(24000/1001, 30000/1001, 60000/1001)
Finish fixing bug #164049
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
eos/bos debugging
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcp.c:
* gst/tcp/gsttcp.h:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
improve reusability of elements after state changes and errors
make multifdsink throw away streamheaders when receiving new ones
Original commit message from CVS:
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_link),
(pixbufscale_scale), (gst_pixbufscale_chain):
* ext/gdk_pixbuf/pixbufscale.h:
Incorporate changes from Tim-Philipp Mueller <t.i.m@orange.net>
to ensure rowstrides are calculated the same way as
ffmpegcolorspace.
Use gst_buffer_stamp instead of copying timestamps manually, so
that we pick up duration and offset also.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(gst_play_base_bin_init), (gst_play_base_bin_dispose),
(probe_triggered), (new_decoded_pad), (gen_source_element),
(gst_play_base_bin_set_property), (gst_play_base_bin_get_property):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_init), (group_switch), (remove_sinks), (setup_sinks),
(gst_play_bin_change_state):
Implement group-switch signal for use in apps to clear metadata
cache, clean up subtitle, add suburi property instead of # hack,
some error-out fixes.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_dec_chain):
Debug.
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_grab_frame):
If we got a state change in the _get handler, don't return success.
Original commit message from CVS:
* ext/jpeg/gstjpegdec.c: (gst_jpegdec_my_output_message),
(gst_jpegdec_my_emit_message), (gst_jpegdec_init):
Make jpegdec quiet on MJPEG decoding
* gst/asfdemux/README:
Fix mimetypes for MJPEG and H263
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_chain):
Fix broken code generation by gcc by swapping arguments.
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query):
Fix \n in debug.
Original commit message from CVS:
* ext/musepack/gstmusepackreader.cpp:
* gst/apetag/apedemux.c: (gst_ape_demux_stream_data):
Some work on tags - still doesn't work in playbin...
* gst/audioscale/gstaudioscale.c: (gst_audioscale_chain):
Handle events...
Original commit message from CVS:
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_use_event):
Don't bail on unknown events.
* gst/audioscale/gstaudioscale.c: (gst_audioscale_chain):
Don't crash on events before negotiation.
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Send tags on pads, too.
* gst/playback/gststreamselector.c:
(gst_stream_selector_request_new_pad):
Forward events on first pad if no input was selected yet.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_substreams):
Don't disable streamtype if the stream doesn't exist, since
then playing a video after audio will disable both and nothing
will happen. Fixes the testsuite.
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_class_init), (gst_alsa_get_caps):
* ext/alsa/gstalsa.h:
Add HW probing for period_count/size and buffer_size MIX/MAX
Adjust default/user defined value if out of bounds
Should fix bug #162024
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst/tta/gstttaparse.c: (gst_tta_src_event):
Fix gcc-2.95 compile (#163485).
Original commit message from CVS:
* configure.ac:
* ext/flac/gstflacenc.c: (gst_flacenc_init),
(gst_flacenc_seek_callback), (gst_flacenc_write_callback),
(gst_flacenc_tell_callback), (gst_flacenc_chain),
(gst_flacenc_change_state):
* ext/flac/gstflacenc.h:
Update for API change in flac-1.1.1. Update requirement in
configure.ac. Fixes#162974.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_destroy):
Remove hack to get rid of assert and get rid of unlinked
signals properly.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_source):
Set source to NULL so that resources are free'ed. Fixes issues
with playback of CDDA and similar device-accessing things.
Original commit message from CVS:
* ext/dvdread/stream_labels.c: new file
* ext/dvdread/stream_labels.h: new file
* ext/dvdread/Makefile.am:
* ext/dvdread/dvdreadsrc.c: (_seek_title):
Extract audio stream label from DVD IFO files.
It only dump them on the console for now, still have to
make playbin aware of them.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_init),
(gen_preroll_element), (remove_groups), (setup_subtitle),
(gen_source_element), (setup_source):
* gst/playback/gstplaybasebin.h:
Multiple .sub files is just a stupid idea... Fix some threading
mistakes. Interestingly, external .sub files cause playbin to
hang, I don't know why... Parsing fixes contributed by Felix
Kooman <fkooman@tuxed.net>.
Original commit message from CVS:
* gst/audioscale/gstaudioscale.c: (gst_audioscale_init),
(gst_audioscale_chain):
%#^@^#@^@#^#@^#@^@#^@#^@#^@#^#@^#@^#@^@#^#@ fix seeking
when resampling - how the ^@$^!@^! is this possible?!?
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_change_state):
Reset variables on READY.
* gst/matroska/matroska-mux.c: (gst_matroska_mux_request_new_pad),
(gst_matroska_mux_loop):
Require data before writing header.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/mad/gstmad.c: (gst_mad_chain):
Don't call mad_stream_sync() directly after recovering sync.
Fixes#151661.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init),
(snapshot_handler), (gst_snapshot_sinkconnect),
(gst_snapshot_chain):
Allocate resources when required, fix recursive signal emission
and fix caps. Fixes#161667.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/libpng/gstpngdec.c: (gst_pngdec_src_getcaps),
(gst_pngdec_chain):
Handle only 8-bppc (bits-per-pixel-component) images, better
error handling and correct strides. Fixes#163177.
* ext/libpng/gstpngenc.c: (gst_pngenc_sinklink),
(gst_pngenc_chain):
Better error handling. Fixes#163348.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_navigation_send_event):
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event):
Check for pad availability before sending event.
Original commit message from CVS:
* gst/games/gstpuzzle.c: (nav_event_handler):
- handle nav events differently: forward every event no matter if it
was handled or not.
- translate events
You can now cheat by using navigationtest ! puzzle and moving the
mouse close to the edge of a tile. ;)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
really fix bpp24/32 dvdec caps (classic rgba indeed)
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
don't send text tags if they are empty (bis repetita)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
remove unneeded comment from dvdec
(related to DV 4CC codes in AVI files)
moved them in gstreamer/docs/random/mimetypes
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
don't send text tags if they are empty
fix mem leak on error path
* gst/ffmpegcolorspace/avcodec.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt),
(gst_ffmpegcsp_avpicture_fill):
* gst/ffmpegcolorspace/imgconvert.c: (img_get_alpha_info):
* gst/ffmpegcolorspace/imgconvert_template.h:
adds BGR32 and BGRA32 to ffmpegcolorspace
(still bad colors, fixing it on next commit)
helps with dvdec outputing BGR32
Original commit message from CVS:
* ext/dv/gstdvdec.c:
Fix audio caps i just broke (missing ',')
* gst/matroska/matroska-mux.c: (gst_matroska_mux_get_type),
(gst_matroska_mux_reset):
Fix typo + add FIXME about old "x-gst-metadata" crap
Original commit message from CVS:
* ext/dv/demo-play.c: (main):
xvideosink -> xvimagesink
* ext/dv/gstdvdec.c:
change rgb 32/32 caps to 24/32 (no alpha)
change nb of channels to be a list (2 or 4, not 2)
change sample rate to be a list (32, 44.1, 48 kHz) not a range
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
Add 'date/year' to extracted metadata list
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_fixate):
The return value of fixate_to does not imply that the requested
value was set, so don't assume.
Original commit message from CVS:
* gst/games/gstpuzzle.c: (gst_puzzle_get_type),
(gst_puzzle_class_init), (gst_puzzle_finalize):
no memleaks, please
(gst_puzzle_create), (gst_puzzle_init),
(gst_puzzle_set_property), (gst_puzzle_setup):
change initialization code around so we don't reshuffle on resize
(draw_puzzle):
fix another stupid typo
Original commit message from CVS:
* gst/games/gstpuzzle.c: (gst_puzzle_base_init):
make RGB endianness work correctly
(gst_puzzle_show), (gst_puzzle_swap), (gst_puzzle_move):
refactor and fix race with initial shuffling
(nav_event_handler):
allow using the mouse to puzzle
(draw_puzzle):
insist on tiles having width and height as multiples of 4 to get
clean YUV image handling
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_handle_xevents), (gst_xvimagesink_buffer_alloc):
s/DEBUG/LOG/ for common messages
(gst_xvimagesink_navigation_send_event):
fix mouse event translation to not include screen PAR
* sys/ximage/ximagesink.c: (gst_ximagesink_navigation_send_event):
fix mouse event translation to actually work
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
Extract TrackNumber metadata + clean up code
* gst/games/gstvideoimage.c: (gst_video_image_draw_rectangle):
Hope this is the good fix (var used unitialised)
Original commit message from CVS:
* configure.ac:
* gst/games/Makefile.am:
* gst/games/gstpuzzle.c:
add a puzzle game with...
* gst/games/gstvideoimage.c:
* gst/games/gstvideoimage.h:
... full colorspace support (that includes YUV9 and RGB16)) stolen
from videotestsrc and made into something that would be a nice
library for a lot of other plugins.
Original commit message from CVS:
* configure.ac:
don't compile faad plugin if a RC of 2.0 is found
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
try to make Solaris compiler happier
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init):
Fix segfault (#161667).