Original commit message from CVS:
2006-07-31 Julien MOUTTE <julien@moutte.net>
* ext/directfb/dfbvideosink.c: (gst_dfbvideosink_change_state),
(gst_dfbvideosink_buffer_alloc): Don't try allocating if we are
not
setup yet. Fail changing state if setup fails.
Original commit message from CVS:
* ext/xvid/gstxviddec.c: (gst_xviddec_init), (gst_xviddec_reset),
(gst_xviddec_unset), (gst_xviddec_handle_sink_event),
(gst_xviddec_setup), (gst_xviddec_negotiate), (gst_xviddec_chain),
(gst_xviddec_flush_buffers), (gst_xviddec_src_getcaps),
(gst_xviddec_setcaps), (gst_xviddec_change_state):
* ext/xvid/gstxviddec.h:
Clean-ups and code reflows. Pass return value from
gst_pad_alloc_buffer() upstream among other things. Also check
for NULL GValue before using GST_VALUE_TYPE macro (#348976).
Mass rename of xviddec -> dec variable for better
code readability.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
Fix caps after previous change to byte order endianness.
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_sink_event), (gst_wavpack_parse_init),
(gst_wavpack_parse_loop):
* ext/wavpack/gstwavpackparse.h:
Queue incoming events if there's no source pad yet and
send them downstream later when the pad is there.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_init),
(gst_wavpack_dec_format_samples),
(gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain),
(gst_wavpack_dec_change_state):
* ext/wavpack/gstwavpackdec.h:
Output audio in native byte order (which is also how we get
samples from wavpack); output samples with 21-24 bit depth
with 32 bit width (makes things easier for us).
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init),
(gst_wavpack_dec_class_init), (gst_wavpack_dec_init),
(gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples),
(gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain),
(gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state):
* ext/wavpack/gstwavpackdec.h:
More clean-ups: remove most of the disfunctional correction
pad stuff for now, if it ever gets implemented a lot of stuff
will have to be rewritten anyway; redo chain function, move
errors to end, error out instead of g_assert()ing. Also rename
overly long variable 'wavpackdec' to just 'dec'; miscellaneous
other small stuff.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* configure.ac:
Check for wavpack version and define WAVPACK_OLD_API if
necessary.
* ext/wavpack/Makefile.am:
* ext/wavpack/gstwavpackcommon.c: (gst_wavpack_read_header),
(gst_wavpack_read_metadata):
* ext/wavpack/gstwavpackcommon.h:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init),
(gst_wavpack_dec_class_init), (gst_wavpack_dec_init),
(gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples),
(gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain),
(gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state),
(gst_wavpack_dec_request_new_pad), (gst_wavpack_dec_plugin_init):
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_finalize),
(gst_wavpack_enc_set_wp_config):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init),
(gst_wavpack_parse_finalize), (gst_wavpack_parse_class_init),
(gst_wavpack_parse_index_get_entry_from_sample),
(gst_wavpack_parse_scan_to_find_sample),
(gst_wavpack_parse_handle_seek_event),
(gst_wavpack_parse_create_src_pad):
* ext/wavpack/gstwavpackstreamreader.c:
* ext/wavpack/gstwavpackstreamreader.h:
Port to new/official wavpack API, don't use API that was exported
in wavpack header files and in the lib but meant to be private, at
least not for recent wavpack versions; misc. 'cleanups' (#347443).
Original commit message from CVS:
Patch by: Lutz Mueller <lutz at topfrose dot de>
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_init), (gst_neonhttp_src_finalize),
(request_dispatch), (gst_neonhttp_src_create),
(gst_neonhttp_src_start), (gst_neonhttp_src_get_size),
(gst_neonhttp_src_stop), (set_proxy), (set_uri),
(gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property),
(gst_neonhttp_src_uri_set_uri), (size_header_handler):
* ext/neon/gstneonhttpsrc.h:
Remove unlock function. start/stop will do everything needed
Removed code that was never called.
Use gst_pad_alloc_buffer. Don't send EOS - parent class does that for us.
Do not escape path. Fixes#346723.
Additional code cleanups.
Original commit message from CVS:
* configure.ac:
Fix check so that future libneon API changes won't break the build.
* ext/neon/gstneonhttpsrc.c:
Fix build with libneon-0.26.x (#345182).
Original commit message from CVS:
Patch by: Wouter Paesen <wouter at kangaroot net>
* ext/soundtouch/Makefile.am:
* ext/soundtouch/gstpitch.cc:
Make pitch element controllable via GstController interface
(#344821).
* configure.ac:
Up core requirements to 0.10.8.1/CVS because earlier
GstControllers can't handle float properties correctly.
Check for GstController CFLAGS and LIBS.
* tests/icles/Makefile.am:
* tests/icles/pitch-test.c: (main):
Add small test program for the above (welcome to the 80s!).
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos org>
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init),
(gst_wavpack_enc_class_init), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_chain), (gst_wavpack_enc_sink_event),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
Use bitrate property solely for bitrates and add new
bits-per-sample property for the other stuff. Set duration
to 'unknown' in initial header and resend header with proper
duration on EOS; update Sebastian's e-mail address.
Original commit message from CVS:
* ext/libmms/gstmms.c: (gst_mms_create):
Set caps on outgoing buffers.
* sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_init):
Comment out unused global instance variable.
Original commit message from CVS:
* configure.ac:
Check for X before using X_CFLAGS in the check for opengl (#343866).
* ext/musepack/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/speed/Makefile.am:
Add missing GST_LIBS, fixes build on cygwin (#343866).
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_class_init), (gst_faad_init),
(gst_faad_dispose), (gst_faad_sink_event), (clip_outgoing_buffer),
(gst_faad_chain), (gst_faad_change_state):
Added GstSegment to control segments.
Added clipping/dropping of outgoing buffers in order to have accurate
seeking working properly.
Original commit message from CVS:
Patch by: Lutz Müller <lutz at topfrose de>
* ext/bz2/Makefile.am:
* ext/bz2/gstbz2dec.c: (gst_bz2dec_chain), (gst_bz2dec_init),
(gst_bz2dec_change_state), (gst_bz2dec_class_init):
Use gst_type_find_helper_* functions for typefinding; use
correct caps with gst_pad_alloc_buffer(); add state change
function and reset decoder in it; don't unref buffer if
pad_push fails; use fixed caps on source pad. (#341524).
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_update_caps), (gst_faad_chain):
Remove unused caps cruft from chain function altogether.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_chain):
There's no guarantee that caps was set to something, and if it did, the
function called to fill that variable actually sets the caps on the
sourcpad, so we call gst_pad_alloc_buffer_and_set_caps() using
GST_PAD_CAPS(faad->srcpad).
Original commit message from CVS:
Patch by: Young-Ho Cha <ganadist chollian net>
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_chain),
(gst_faad_change_state):
* ext/faad/gstfaad.h:
If we encounter a decoding error, don't error out immediately,
but try to resync (or see if we have better luck with the next
buffer in case of framed input). Only error out after five
consecutive errors. Fixes#341563.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_setcaps),
(looks_like_valid_header), (gst_faad_chain):
Fix#334748: use fake_codec_data if the first bytes of the first
buffer we process doesn't look like plausible AAC data (e.g.
reserved values for rate, or channels). Fixes playback of Apple's
movie trailers.
Original commit message from CVS:
* ext/taglib/Makefile.am:
* ext/taglib/gstid3v2mux.cc:
* ext/taglib/gstid3v2mux.h:
* ext/taglib/gsttaglib.cc:
* ext/taglib/gsttaglib.h:
Split the actual ID3v2 tag rendering code into
its own subclass.
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c:
* ext/neon/gstneonhttpsrc.h:
added iradio-mode support as in gnomevfssrc to enable
connections with icydemux that will send title tag messages on
shoutcast/icecast streams. I've also added iradio properties
iradio-name, iradio-genre, iradio-url.
added user-agent property because some shoutcast streams don't return
data if the GET requests don't have a User-Agent.
* win32/common/libgstneon.dsp:
use debug version of libneon in debug mode
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (aac_rate_idx),
(gst_faad_setcaps), (gst_faad_chain), (gst_faad_open_decoder),
(gst_faad_close_decoder), (gst_faad_change_state):
* ext/faad/gstfaad.h:
If we run into a decoding error, try re-opening the decoder
with faacDecInit2() using fake codec data created from the
data the demuxer gave us. Should fix a whole bunch of
GStreamer-faad problems incl. 'channel coupling not
implemented', 'maximum number of scalefactor bands exceeded'
etc. (#173007, #332892).
Original commit message from CVS:
* ext/musepack/gstmusepackdec.c:
(gst_musepackdec_handle_seek_event), (gst_musepackdec_loop):
Add support for segment seeks.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_convert),
(theora_handle_type_packet), (theora_handle_422_image),
(theora_handle_420_image), (theora_handle_data_packet):
* ext/theora/theoradec.h:
Apply fix from j^ for API change in libtheoradec.
Implement 4:2:2 pixel format. Untested at the moment.
Original commit message from CVS:
* ext/musepack/gstmusepackdec.c: (gst_musepackdec_init),
(gst_musepack_stream_init):
Fix track/album peak tag values; use GST_DEBUG_FUNCPTR and
gst_pad_new_from_static_template().
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_start):
remove atoll by using g_ascii_strtoull (atoll is not supported on WIN32)
* sys/directdraw/gstdirectdrawsink.c:
* sys/directsound/gstdirectsoundsink.c:
done some cleans in sources
* win32/vs6:
add project files for neon, qtdemux
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property):
Add back "uri" property and mark it as deprecated; undoes
API/ABI breakage from 2006-02-24.
Original commit message from CVS:
* ext/swfdec/Makefile.am:
Don't set plugindir.
* ext/swfdec/gstswfdec.c:
GST_PLUGIN_DEFINE_STATIC isn't a good idea for installed plugins.
Original commit message from CVS:
* ext/taglib/gsttaglib.cc:
* ext/taglib/gsttaglib.h:
Fix newsegment event handling a bit. We need to
cache the first newsegment event, because we can't
adjust offsets yet when we get it, as we don't
know the size of the tag yet for sure at that point.
Also do some minor cleaning up here and there and add
some debug statements.
Original commit message from CVS:
* ext/taglib/gsttaglib.cc:
We do not want to proxy the caps on the sink pad; our
source pad should have application/x-id3 caps; also,
don't use already-freed strings in debug messages;
finally, adjust buffer offsets on buffers sent out.
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet dot be>
* ext/xvid/gstxvidenc.c: (gst_xvidenc_init), (gst_xvidenc_setup),
(gst_xvidenc_chain):
Patch to mark outgoing encoded buffers as delta-units (or not).
Note that this patch also patches:
- the setting of fincr and fbase in xvid-encoder creation based on
caps framerate
- makes 0, rather than 2, the default max_b_frames, as the current
xvidenc does not seem "fully prepared" to handle b-frame
"effects", such as encoder returning 0 encoded bytes, etc.
Fixes#335585
Original commit message from CVS:
* ext/taglib/gsttaglib.cc:
Add gtk-doc blurb (unused for the time being); match registered
plugin name to the filename of the plugin (taglibmux => taglib)
Original commit message from CVS:
* ext/taglib/Makefile.am:
* ext/taglib/gsttaglib.cc:
* ext/taglib/gsttaglib.h:
Add support for writing MusicBrainz IDs.
Original commit message from CVS:
2006-03-11 Christophe Fergeau <teuf@gnome.org>
Patch by: Alex Lancaster
* ext/taglib/gsttaglib.cc: fix writing of TPOS tags (album number),
and add support for TCOP (copyright)
Original commit message from CVS:
* ext/libmms/gstmms.c: (gst_mms_urihandler_init),
(gst_mms_base_init), (gst_mms_class_init), (gst_mms_init),
(gst_mms_finalize), (gst_mms_create), (gst_mms_start),
(gst_mms_set_property), (gst_mms_get_property),
(gst_mms_uri_get_uri):
* ext/libmms/gstmms.h:
Some clean-ups; more debug output; use blocksize property
of GstBaseSrc instead of re-registering our own; make debug
category actually be used.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_send_tags),
(gst_faad_setcaps), (gst_faad_do_raw_seek), (gst_faad_src_event),
(gst_faad_sink_event), (gst_faad_src_convert),
(gst_faad_src_query), (gst_faad_chain), (gst_faad_change_state):
Add query function for position/duration querying (mostly for
raw AAC streams); make seeking in raw AAC streams work; post
tags with codec name if this is a raw AAC stream.
Original commit message from CVS:
* ext/xvid/gstxviddec.c: (gst_xviddec_chain):
Declare variable at the beginning of the block and make gcc-2.9x
happy (fixes#333283; patch by: Jens Granseuer).
Original commit message from CVS:
* ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_event),
(gst_signal_processor_process):
Fix compilation of LADPSA. It doesn't seem to work, and isn't
enabled for the build, but it helps me win the feature-count
competitions ooh yeah.
Original commit message from CVS:
* ext/libmms/gstmms.c: (gst_mms_class_init), (gst_mms_create),
(gst_mms_start):
Return FLOW_UNEXPECTED on EOS, not FLOW_ERROR. Also, no need to
push our own EOS event on EOS, the base class will do that for us;
fix bogus query code; post semi-decent errors on the bus when an
error occurs in ::start(), otherwise the user will get to see
whatever cryptic default message GstBaseSrc comes up with.
Original commit message from CVS:
Reviewed by: Edward Hervey <edward@fluendo.com>
* ext/bz2/gstbz2enc.c: Accepd "ANY" caps. Use "x-bzip" instead of
"x-bz2".
* ext/bz2/gstbz2dec.c: Use "x-bzip" instead of "x-bz2". Initial
caps are "ANY".
(gst_bz2dec_chain): Configure the source pad if we can figure out
the mime type of the decompressed data.
(gst_bz2dec_[get,set]_property):
(gst_bz2dec_class_init: New property "first_buffer_size".
Original commit message from CVS:
2006-02-06 Andy Wingo <wingo@pobox.com>
* ext/bz2/gstbz2enc.c (gst_bz2enc_class_init):
* ext/bz2/gstbz2dec.c (gst_bz2dec_class_init): No need to init
parent_class, the boilerplate does it for you.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_setcaps),
(gst_faad_chanpos_to_gst), (gst_faad_sync), (gst_faad_chain):
Handle 'framed' field in caps; Port syncing for raw streams
from 0.8 branch (for AAC+ radio streams) (#328722).
Original commit message from CVS:
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_supported),
(gst_sdlvideosink_xoverlay_set_xwindow_id),
(gst_sdlvideosink_deinitsdl), (gst_sdlv_process_events),
(gst_sdlvideosink_event_thread), (gst_sdlvideosink_initsdl),
(gst_sdlvideosink_destroy), (gst_sdlvideosink_create),
(gst_sdlvideosink_setcaps), (gst_sdlvideosink_show_frame),
(gst_sdlvideosink_change_state),
(gst_sdlvideosink_navigation_send_event):
* ext/sdl/sdlvideosink.h:
Fix output stride copying, so that it displays correctly on
framebuffer devices that don't match our implict GStreamer stride
arrangement.
Fix locking things. Offer XOverlay only when SDL is running against
X. Make non-scaled (and ugly) embedding work via X Overlay. It can't
actually match the embedded window size because there's no way to
figure out what size that should be from the XOverlay interface.
See comment in sdlvideosink.c
Original commit message from CVS:
* ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init),
(gst_musepackdec_class_init), (gst_musepackdec_init),
(gst_musepackdec_send_newsegment),
(gst_musepackdec_handle_seek_event), (gst_musepackdec_src_event),
(gst_musepackdec_src_query), (gst_musepackdec_src_convert),
(gst_musepack_stream_init), (gst_musepackdec_sink_activate_pull),
(gst_musepackdec_loop), (gst_musepackdec_change_state):
* ext/musepack/gstmusepackdec.h:
* ext/musepack/gstmusepackreader.c: (gst_musepack_reader_peek),
(gst_musepack_reader_seek), (gst_musepack_reader_tell),
(gst_musepack_reader_get_size):
* ext/musepack/gstmusepackreader.h:
Fix seeking in musepack files (it's still incredibly slow, but I
don't think that is our plugin's fault). Clean up code and get
rid of old cruft. Post tags with all kind of neat information like
replay gain and such on the bus, if it is available. Add a
'musepackdec' debug category.
Original commit message from CVS:
* ext/swfdec/gstswfdec.c: (gst_swfdec_class_init),
(gst_swfdec_chain), (gst_swfdec_render):
Add debugging category and return GstFlowReturn in the right places
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_link):
Get something from the peer pad once we've checked if there is a peer pad.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(qtdemux_tree_get_child_by_type), (qtdemux_parse_trak),
(qtdemux_video_caps):
Couple of fixes
Original commit message from CVS:
* ext/artsd/gstartsdsink.c: (gst_artsdsink_open_audio):
* gst/festival/gstfestival.c: (socket_receive_file_to_buff):
* gst/vbidec/vbidata.c:
* gst/vbidec/vbidata.h:
* gst/vbidec/vbiscreen.c:
* sys/dxr3/ac3_padder.c:
don't use doc comments for non-docs
change some char* into char[]
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_link):
* ext/wavpack/gstwavpackparse.c:
Wavpack supports samplerates from 6-192kHz, fix pad template
caps (fixes#322973; patch by: gcocatre@gmail.com). Also
remove buffer-frames from caps, they are gone in 0.10.
Original commit message from CVS:
* ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_loop):
* ext/libmms/gstmms.c: (gst_mms_src_query), (gst_mms_create):
* ext/musepack/gstmusepackdec.c: (gst_musepackdec_src_query),
(gst_musepackdec_loop):
* ext/swfdec/gstswfdec.c: (gst_swfdec_video_link),
(gst_swfdec_src_query):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query):
GstObjects must be unref'ed with gst_object_unref() instead of
g_object_unref(), otherwise things break for GLib-2.6 users.
Original commit message from CVS:
* ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_get_type),
(gst_swfdecbuffer_class_init), (gst_swfdecbuffer_finalize),
(gst_swfdec_buffer_from_swf), (gst_swfdec_render): Add a subclass
of GstBuffer that wraps SwfdecBuffers. Fix a massive memleak
because the video buffers previously never got freed.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_chanpos_to_gst),
(gst_faad_update_caps):
Assume that an unknown channel mapping with 2 channels
is stereo and play it that way instead of erroring.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_parse_trak):
Handle e.g. jpeg streams with 0 duration frames as having 0 framerate.
Debug fixes. Some 64 bit variable fixes
Original commit message from CVS:
libmm ported to 0.9. It works fine, but print some error messages. I'll fix them soon. Tested with mmssrc location=mms:// ! filesink.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_srcgetcaps):
Handle gracefully the consequence of "Maximum number of scalefactor
bands exceeded", which results in 0 channels with samplerates of 0.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state):
Do upward transitions, then call parent state_change, then do
downward transitions.
Original commit message from CVS:
Musepackdec ported to 0.9. There is still a small problem to be solved, after the end of file, the pipeline doens't stop.