Original commit message from CVS:
* ext/flac/Makefile.am:
Include $(FLAC_CFLAGS) in CFLAGS to make sure to find the FLAC headers.
This fixes compilation if FLAC is installed in an uncommon location
that is not already handled by other CFLAGS. Fixes bug #558711.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_class_init),
(gst_soup_http_src_set_property), (gst_soup_http_src_get_property):
Add support for souphttpsrc to act as a live source. This makes it
possible to get timestamped buffers in combination with the
"do-timestamp" property. Fixes bug #556019.
Original commit message from CVS:
* ext/flac/gstflacdec.c (gst_flac_dec_read_stream):
* ext/flac/gstflacenc.c (gst_flac_enc_write_callback):
Cast some size_t arguments to guint to avoid compiler
warnings on 64-bit systems.
Original commit message from CVS:
* ext/pulse/pulsesink.c: (gst_pulsesink_write):
* ext/pulse/pulsesrc.c: (gst_pulsesrc_read):
Return -1 instead of 0 in error cases. Fixes#554771.
Original commit message from CVS:
* ext/pulse/pulsesink.c:
Fix problems with pulsesink randomly erroring with code 'OK' after a
format change on the stream by waiting when disconnecting the stream.
Original commit message from CVS:
* ext/raw1394/gstdv1394src.c: (SEND_COMMAND):
* ext/raw1394/gsthdv1394src.c: (SEND_COMMAND):
Pretend to care about the result of write() which works around
compiler warnings.
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_class_init):
Make sure the desired default values are actually set, not only
registered as defaults (actual problem is that the stereo-specific
values are only updated if channels==2, which is not the case yet
when the object is created, so the default values for the
mid-side-stereo and loose-mid-side-stereo settings are never
set in _update_quality()). Makes flacenc create smaller files by
default (for stereo input), and fixes#550791.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data):
* ext/speex/gstspeexdec.h:
* ext/speex/gstspeexenc.c: (gst_speex_enc_encode):
* ext/speex/gstspeexenc.h:
Use integer encoding and decoding functions instead of converting
the integer input to float in the element. The libspeex integer
functions are doing this for us already or, if libspeex was compiled
in integer mode, they're doing everything using integer arithmetics.
Also saves some copying around.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset),
(gst_wavpack_enc_push_block), (gst_wavpack_enc_chain):
* ext/wavpack/gstwavpackenc.h:
Handle non-zero start timestamps and stream discontinuities
correctly. This only has an effect if we're muxing into
a container format as the raw WavPack stream must contain
continous sample numbers.
Original commit message from CVS:
* ext/speex/gstspeexenc.c: (gst_speex_enc_encode):
Correct the timestamp and granulepos calculation by one Speex
frame.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data):
Correctly take the granulepos from upstream if possible and
correctly handle the granulepos in various calculations: the
granulepos is the sample number of the _last_ sample in a frame, not
the first.
* ext/speex/gstspeexenc.c: (gst_speex_enc_sinkevent),
(gst_speex_enc_encode), (gst_speex_enc_chain),
(gst_speex_enc_change_state):
* ext/speex/gstspeexenc.h:
Handle non-zero start timestamps in the encoder and detect/handle
stream discontinuities. Fixes bug #547075.
Original commit message from CVS:
Patch by: Craig Keogh <cskeogh at adam dot com dot au>
* ext/annodex/gstcmmlparser.c: (gst_cmml_parser_parse_chunk):
Fix compiler warnings caused by passing a string as format string
instead of "%s" and then the string. This is only exposed by -Wformat=2
as used by default on Ubuntu. Fixes bug #550015.
Original commit message from CVS:
* ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init),
(gst_pulsesrc_create_stream), (gst_pulsesrc_negotiate),
(gst_pulsesrc_prepare):
* ext/pulse/pulseutil.c: (gst_pulse_gst_to_channel_map),
(gst_pulse_channel_map_to_gst):
* ext/pulse/pulseutil.h:
If downstream provides no channel layout and >2 channels should be
used use the default layout that pulseaudio chooses and also
add this layout to the caps. Fixes bug #547258.
Original commit message from CVS:
* ext/pulse/pulsesink.c: (gst_pulsesink_prepare):
* ext/pulse/pulsesrc.c: (gst_pulsesrc_prepare):
The bytes_per_sample and silence_sample fields of the GstRingBufferSpec
are already filled with the correct values by
gst_ring_buffer_parse_caps() so there's no need to set them again
with wrong values.
Original commit message from CVS:
* ext/pulse/pulsesink.c: (gst_pulsesink_class_init),
(gst_pulsesink_init), (gst_pulsesink_finalize),
(gst_pulsesink_set_volume), (gst_pulsesink_get_volume),
(gst_pulsesink_set_property), (gst_pulsesink_get_property),
(gst_pulsesink_prepare), (gst_pulsesink_change_state):
* ext/pulse/pulsesink.h:
Add "device-name" property to pulsesink too and currently commented
out and not working support for a "volume" property.
Original commit message from CVS:
Patch by: Laszlo Pandy <laszlok2 at gmail dot com>
* ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init),
(gst_pulsesrc_get_property):
Add "device-name" property, which provides a human readable string
for the audio device, to make it more consisten with other audio
sources. Fixes bug #547519.
Original commit message from CVS:
* ext/pulse/pulsemixer.c: (gst_pulsemixer_change_state):
* ext/pulse/pulsemixerctrl.c: (gst_pulsemixer_ctrl_subscribe_cb),
(gst_pulsemixer_ctrl_open), (gst_pulsemixer_ctrl_new),
(gst_pulsemixer_ctrl_free), (gst_pulsemixer_ctrl_timeout_event):
* ext/pulse/pulsemixerctrl.h:
* ext/pulse/pulseprobe.c: (gst_pulseprobe_open),
(gst_pulseprobe_enumerate), (gst_pulseprobe_new),
(gst_pulseprobe_free), (gst_pulseprobe_needs_probe),
(gst_pulseprobe_probe_property), (gst_pulseprobe_get_values):
* ext/pulse/pulseprobe.h:
* ext/pulse/pulsesink.c: (gst_pulsesink_init):
* ext/pulse/pulsesrc.c: (gst_pulsesrc_init), (gst_pulsesrc_delay),
(gst_pulsesrc_change_state):
Improve debugging a bit by including the parent object in pulsemixerctrl
and pulseprobe objects and using GST_WARNING_OBJECT instead of
GST_WARNING.
Use the parent GObject subclass instead of a random struct as GObject
parameter for G_OBJECT_WARN_INVALID_PROPERTY_ID. This fixes a crash
when probing for another property than "device".
Original commit message from CVS:
Patch by: Laszlo Pandy <laszlok2 at gmail dot com>
* ext/pulse/pulsemixer.c: (gst_pulsemixer_set_property):
Fix property probing after the device property is set by calling
set_server when the server property changes. Fixes bug #547518.
Original commit message from CVS:
Patch by: Laszlo Pandy <laszlok2 at gmail dot com>
* ext/pulse/pulsemixer.c: (gst_pulsemixer_set_property):
Fix property probing after the device property is set by calling
set_server when the server property changes. Fixes bug #547518.
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_check_discont):
Actually provide the variables required for the format string.
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_write_callback),
(gst_flac_enc_check_discont), (gst_flac_enc_chain),
(gst_flac_enc_change_state):
* ext/flac/gstflacenc.h:
Handle non-zero start timestamps correctly, mark header packets as
IN_CAPS and print a warning and suggest using audiorate if stream
discontinuities are detected. When FLAC supports flushing the encoder
somehow this should be done for discontinuities instead.
Remove some unused variables from the instance struct.
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_seek_callback):
If seeking failed return the appropiate return value to FLAC.
Otherwise it thinks seeking was successfull and tries to rewrite
parts of the headers which then get appended to the output.
Original commit message from CVS:
Patch by: Frederic Crozat <fcrozat@mandriva.org>
* ext/esd/gstesd.c: (plugin_init):
* ext/flac/gstflac.c: (plugin_init):
* ext/shout2/gstshout2.c: (plugin_init):
* ext/wavpack/gstwavpack.c: (plugin_init):
* sys/oss/gstossaudio.c: (plugin_init):
* sys/v4l2/gstv4l2.c: (plugin_init):
Make sure gettext returns translations in UTF-8 encoding rather
than in the current locale encoding (#546822).
Original commit message from CVS:
* ext/flac/gstflacdec.c:
Add FIXME for 0.11 to simply output everything with width=32 as given
by FLAC and let audioconvert handle the conversions instead of doing
them in flacdec.
Original commit message from CVS:
Based on a patch by: Jonathan Matthew <notverysmart at gmail dot com>
* ext/flac/Makefile.am:
* ext/flac/gstflac.c: (plugin_init):
* ext/flac/gstflactag.c: (gst_flac_tag_setup_interfaces),
(gst_flac_tag_base_init), (gst_flac_tag_class_init),
(gst_flac_tag_dispose), (gst_flac_tag_init),
(gst_flac_tag_sink_setcaps), (gst_flac_tag_chain),
(gst_flac_tag_change_state):
* ext/flac/gstflactag.h:
Port flactag to 0.10, add documentation for it and clean it up a bit.
Fixes bug #413841.
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/gst-plugins-good-plugins.interfaces:
* docs/plugins/gst-plugins-good-plugins.prerequisites:
* docs/plugins/inspect/plugin-flac.xml:
* ext/flac/gstflacdec.c: (gst_flac_dec_base_init):
* ext/flac/gstflacdec.h:
* ext/flac/gstflacenc.c: (gst_flac_enc_base_init):
* ext/flac/gstflacenc.h:
Add flactag and flacenc to the documentation and mark
the private parts of the flacdec instance structure as private.
Also use gst_element_class_set_details_simple() in flacdec and
flacenc.
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_query_peer_total_samples),
(gst_flac_enc_sink_setcaps), (gst_flac_enc_write_callback):
Set an estimate for the total number of samples that will be encoded
if possible to help decoders if the streaminfo can't be rewritten
later (like when muxing into Ogg containers).
Add a warning if we get header packets after data packets as those
will get lost when muxing into Ogg, i.e. rewriting the headers doesn't
work.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_metadata_callback),
(gst_flac_dec_write):
Support decoding of all depths between 4 and 32 bits and read the
depth from the streaminfo header if needed. Also support all sampling
rates between 1 and 655350 Hz.
* ext/flac/gstflacenc.c:
(gst_flac_enc_caps_append_structure_with_widths),
(gst_flac_enc_sink_getcaps), (gst_flac_enc_sink_setcaps),
(gst_flac_enc_chain):
* ext/flac/gstflacenc.h:
Support encoding in all bit depths supported by the streamable
subformat (i.e. 8, 12, 16, 20 and 24 bits) and all sampling rates
between 1 Hz and 655350 Hz.
Original commit message from CVS:
* ext/soup/gstsouphttpsrc.c:
* ext/soup/gstsouphttpsrc.h:
Fix seeking race condition in #540300
Patch By: Wouter Cloetens <wouter at mind be>
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_setup_seekable_decoder),
(gst_flac_dec_setup_stream_decoder),
(gst_flac_dec_update_metadata):
Always post the audio-codec tag, not only if other tags are present.
Original commit message from CVS:
* ext/soup/gstsouphttpsrc.c:
Don't throw an error when soup completes a msg with status
'cancelled', as that indicates we cancelled a request while
shutting down or seeking, and it's not an error.
Fixes: #540300 again.
Original commit message from CVS:
* ext/Makefile.am:
Finish hooking up pulseaudio plugin to the build.
* ext/pulse/pulsemixerctrl.c:
Fix compilation error.
Original commit message from CVS:
* configure.ac::
* ext/taglib/Makefile.am::
Only use -Wno-attributes (which is there to work around a
bug in the taglib 1.5 headers) if the c++ compiler actually
supports it (#543255).
Original commit message from CVS:
* ext/dv/gstdv.c: (plugin_init):
Marking rank of dvdec as GST_RANK_MARGINAL since it's the slowest
DV decoder available.
Fixes#532393
Original commit message from CVS:
Patch by: Jason Donenfeld <BugZilla at zx2c4 dot com>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_got_headers_cb):
Fix HTTP auth support with user/password passed via the URI.
Fixes bug #540067.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_src_query), (gst_wavpack_parse_create_src_pad):
Use G_GINT64_CONSTANT, this fixes the duration query on files without
known length.
Original commit message from CVS:
* ext/pulse/pulsemixer.c: (gst_pulsemixer_base_init),
(gst_pulsemixer_class_init):
* ext/pulse/pulsesink.c: (gst_pulsesink_base_init),
(gst_pulsesink_class_init), (gst_pulsesink_prepare):
* ext/pulse/pulsesrc.c: (gst_pulsesrc_interface_supported),
(gst_pulsesrc_base_init), (gst_pulsesrc_class_init),
(gst_pulsesrc_prepare):
Some smaller cleanup. Use G_PARAM_STATIC_STRINGS,
gst_element_class_set_details_simple() and fix coding style a bit
more.
Original commit message from CVS:
Patch by: Benjamin Kampmann <benjamin at fluendo dot com>
* ext/cdio/gstcdio.c: (gst_cdio_get_cdtext),
(gst_cdio_add_cdtext_album_tags):
* ext/cdio/gstcdio.h:
* ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_open):
Also extract album title and album genre from CD-TEXT if
available (#537021).
Original commit message from CVS:
* ext/taglib/Makefile.am::
Add -Wno-attributes to CXXFLAGS to suppress warning caused by
taglib headers (with gcc 4.3.1).
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_extract_picture_buffer):
* gst/id3demux/id3v2frames.c: (parse_picture_frame):
Use new utility functions in libgsttag to process coverart (#512333).
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_write):
We actually support left/side, right/side and mid/side files. The
conversion to normal, interleaved stereo is done by libflac.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* ext/raw1394/gstdv1394src.c:
Document whats first shown on the fdo plugin docs page :)
Original commit message from CVS:
* ext/flac/Makefile.am:
* ext/flac/gstflacdec.c: (gst_flac_dec_write):
Set the channel layout when decoding FLAC files with more than 2
channels as defined by the FLAC spec. Fixes bug #534570.
Also don't try to decode left/side, right/side and mid/side files
as we don't support this at all.
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_write):
When we post an error, we must return -1 to let the parent know that we
cannot write the segment else it will loop and continue to call us again
forever. Patch by Michael Meeks.
Original commit message from CVS:
* ext/wavpack/gstwavpackstreamreader.c:
* tests/examples/spectrum/demo-audiotest.c:
* tests/examples/spectrum/demo-osssrc.c:
Fix some compiler warnings.
Original commit message from CVS:
* ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_reset),
(gst_gconf_audio_src_change_state):
* ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset),
(gst_gconf_video_sink_change_state):
* ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_reset),
(gst_gconf_video_src_change_state):
* ext/gconf/gstswitchsink.c: (gst_switch_sink_reset),
(gst_switch_commit_new_kid), (gst_switch_sink_change_state):
When we can't create a fakesink/fakesrc complain instead of unreffing
NULL pointers and crashing later. See bug #530535.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* ext/speex/gstspeexenc.c: (gst_speex_enc_sink_getcaps),
(gst_speex_enc_init), (gst_speex_enc_chain):
Add negotiation for the speex channels and rate. Fixes#465146.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_sink_event),
(speex_dec_chain_parse_data):
Produce concealment data when time progresses in a segment update.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data),
(speex_dec_chain):
Try to preserve input timestamps when we can.
Do beginnings of error concealment.
Original commit message from CVS:
* ext/soup/gstsouphttpsrc.c: (plugin_init):
Give souphttpsrc GST_RANK_PRIMARY to make it the default HTTP source
over gnome-vfs and everything else. Fixes bug #527848.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_header):
Fix bounds checking of mode in Speex header, which may
produce negative numbers in speex < 1.1.12
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_response_cb):
Only ignore actual redirects not all responses when in state
GST_SOUP_HTTP_SRC_SESSION_IO_STATUS_RUNNING. Fixes bug #526337.
Original commit message from CVS:
* ext/hal/hal.c: (gst_hal_get_alsa_element):
Don't munge device string to 'default:x' for capture devices.
Fixes#525833.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_index_entry_free):
Always use GSlice as we actually depend on GLib 2.12 already.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init):
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_index_entry_new),
(gst_wavpack_parse_index_entry_free),
(gst_wavpack_parse_base_init),
(gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset):
Use GSlice for allocating index entries and use
gst_element_class_set_details_simple().
Original commit message from CVS:
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_got_headers_cb),
(gst_soup_http_src_chunk_allocator),
(gst_soup_http_src_got_chunk_cb),
(gst_soup_http_src_uri_get_protocols):
Don't autoplug souphttpsrc for dav/davs. This is better handled by
GIO and GnomeVFS as they provide authentication.
Don't leak the icy caps if we already set them and get a new
icy-metaint header.
Try harder to set the icy caps on the output buffer to have correct
caps for the first buffer already.
* tests/check/elements/souphttpsrc.c: (got_buffer),
(GST_START_TEST):
Check that we get a buffer with application/x-icy caps if iradio-mode
is enabled and we have an icecast URL.
Original commit message from CVS:
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_chunk_allocator):
Actually set the icy caps on our src pad if we have icecast data.
Fixes bug #523854.
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_init),
(gst_soup_http_src_finished_cb), (gst_soup_http_src_response_cb),
(gst_soup_http_src_build_message), (gst_soup_http_src_create):
* ext/soup/gstsouphttpsrc.h:
Try to resume on server disconnect. Fixes bug #522134.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* ext/speex/gstspeexenc.c: (gst_speex_enc_chain):
Unref the buffers only once when handling not-negotiated errors.
Fixes bug #520764.
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_class_init),
(gst_soup_http_src_init), (gst_soup_http_src_dispose),
(gst_soup_http_src_set_property), (gst_soup_http_src_get_property),
(gst_soup_http_src_create):
* ext/soup/gstsouphttpsrc.h:
* tests/check/elements/souphttpsrc.c: (run_test), (GST_START_TEST),
(souphttpsrc_suite):
Add support for specifying a list of cookies to be passed in
the HTTP request. Fixes bug #518722.
Original commit message from CVS:
* configure.ac:
* ext/taglib/Makefile.am:
Check for and define ERROR_CXXFLAGS and use them when building
C++ code (#516509).
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* configure.ac:
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_cancel_message),
(gst_soup_http_src_finished_cb), (gst_soup_http_src_chunk_free),
(gst_soup_http_src_chunk_allocator),
(gst_soup_http_src_got_chunk_cb), (gst_soup_http_src_create),
(gst_soup_http_src_start), (gst_soup_http_src_set_proxy):
* ext/soup/gstsouphttpsrc.h:
Implement zero-copy and make the buffer size configurable.
Prefix proxy URIs with "http://" if they don't start with it
already and catch errors earlier, fixes hanging in some situations.
Fixes bug #514948.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query),
(gst_wavpack_parse_create_src_pad):
* ext/wavpack/gstwavpackparse.h:
Always report the duration if we know it in push mode and don't
return 0 just to make totem believe we can't seek in push mode.
Newer totem version use the SEEKING query which properly reports
if we can seek or not.
Original commit message from CVS:
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain):
* tests/check/Makefile.am:
* tests/check/gst-plugins-good.supp:
Add a few libjpeg suppressions and initialize a variable to
make smokeenc valgrind clean. Fixes bug #515701.
Original commit message from CVS:
* ext/gconf/gconf.c: (gst_gconf_render_bin_with_default):
Use and unset the GError when pipeline creation fails instead of
simply leaking it. Fixes bug #515704.
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_got_chunk_cb),
(gst_soup_http_src_create):
Fix memory leak and improve debugging a bit.
Original commit message from CVS:
Patch by: John Millikin <jmillikin at gmail dot com>
* ext/flac/gstflacdec.c: (gst_flac_dec_scan_for_last_block),
(gst_flac_extract_picture_buffer), (gst_flac_dec_metadata_callback):
Fix extraction of picture blocks with newer libflac versions again:
FLAC__METADATA_TYPE_PICTURE is an enum, not a define (#513628).