Original commit message from CVS:
* sys/osxaudio/Makefile.am: New OS X audio plugin by Zaheer Merali
* sys/osxaudio/gstosxaudio.c:
* sys/osxaudio/gstosxaudioelement.c:
* sys/osxaudio/gstosxaudioelement.h:
* sys/osxaudio/gstosxaudiosink.c:
* sys/osxaudio/gstosxaudiosink.h:
* sys/osxaudio/gstosxaudiosrc.c:
* sys/osxaudio/gstosxaudiosrc.h:
Original commit message from CVS:
* configure.ac:
remove -DG_DISABLE_DEPRECATED. It's not usable without workarounds
if you want to work against glib 2.2 and 2.4
Original commit message from CVS:
* gst/debug/testplugin.c:
* gst/debug/tests.c:
* gst/debug/tests.h:
add new extensible and configurable testing element. Current tests
include buffer count, stream length, timestamp/duration matching and
md5.
* gst/debug/Makefile.am:
* gst/debug/gstdebug.c: (plugin_init):
add infrastructure for new element
Original commit message from CVS:
* gst/ffmpegcolorspace/imgconvert.c: (img_convert): Fixes for
warnings (bugs, actually) noticed by gcc but not forte.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header): Patch from dcm@acm.org (David Moore)
to allow qtdemux to use non-seekable streams. (bug #142272)
Original commit message from CVS:
* gst-libs/gst/resample/resample.c: (gst_resample_sinc_ft_s16),
(gst_resample_sinc_ft_float): Remove use of static temporary
buffer. This code was obviously not supposed to last long, but
it's stuck in our ABI, so it required a little hack to make it
ABI-compatible. Fixes#142585.
* gst-libs/gst/resample/resample.h: same.
Original commit message from CVS:
* configure.ac: Add sunaudio
* examples/Makefile.am: make gstplay depend on gconf
* gst/ffmpegcolorspace/gstffmpegcodecmap.c: Remove c99-isms
* gst/ffmpegcolorspace/imgconvert.c: (build_rgb_palette),
(convert_table_lookup), (img_convert): remove c99-isms
* gst/ffmpegcolorspace/imgconvert_template.h: make a constant
unsigned, to fix a warning on Solaris
* gst/mpeg1sys/systems.c: bcopy->memcpy
* gst/rtjpeg/RTjpeg.c: (RTjpeg_yuvrgb8): bcopy->memcpy
* sys/Makefile.am: Add sunaudio
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_get_type), (gst_ogg_mux_init),
(gst_ogg_mux_sinkconnect), (gst_ogg_mux_request_new_pad),
(gst_ogg_mux_next_buffer), (gst_ogg_mux_push_page),
(gst_ogg_mux_compare_pads), (gst_ogg_mux_queue_pads),
(gst_ogg_mux_loop):
Fix an ugly memleak where the muxer didn't flush enough ogg
pages. This also resulted in badly muxed ogg files.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_handle_event):
Fix for when the first format in a discont event is not a
byte-based one. Should fix#137710.
Original commit message from CVS:
* ext/shout2/gstshout2.c:
use application/ogg instead of application/x-ogg (patch by Patrick
Guimond, fixes#142432)
* sys/oss/gstosselement.c: (gst_osselement_reset),
(gst_osselement_sync_parms):
don't set fragment size unless specified
Original commit message from CVS:
* autogen.sh:
* configure.ac:
* ext/mad/gstid3tag.c: (gst_id3_tag_chain):
compute offsets correctly for internal buffers so timestamps are set
correctly when we can't seek. Also handle cases where there are no
offsets. (based on a patch by David Moore, fixes#142507)
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsa_sink_loop):
use correct variable when determining amount of data to skip so we
don't skip into the void and segfault
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c:
- fix a mem leak and always propagate tags
- add WMV3 to known video codecs (but no decoder yet)
- replace "surplus data" at end of audio header for what
it is : codec specific data
- fix a typo
Original commit message from CVS:
reviewed by: Ronald Bultje <rbultje@ronald.bitfreak.net>
* gst-libs/gst/audio/audioclock.c:
Fix wrong return type (#142205).
Original commit message from CVS:
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_open),
(gst_alsa_mixer_close), (gst_alsa_mixer_supported),
(gst_alsa_mixer_build_list), (gst_alsa_mixer_free_list),
(gst_alsa_mixer_change_state), (gst_alsa_mixer_list_tracks),
(gst_alsa_mixer_get_volume), (gst_alsa_mixer_set_volume),
(gst_alsa_mixer_set_mute), (gst_alsa_mixer_set_record):
Fix for cases where we fail to attach to a mixer.
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_comment):
- process comments even if they don't end with \0\0
g_convert would ignore them if present and works well without them
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_comment):
don't write to memory we might not write to - g_convert does that
for us anyway
(gst_asf_demux_audio_caps):
conmment out gst_util_dump_mem
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsa_sink_loop):
compute correct expected timestamps after seek (broken since
last commit)
* ext/gdk_pixbuf/pixbufscale.c: (pixbufscale_init):
rename element and debugging category to gdkpixbufscale
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsa_sink_loop):
add error checking to snd_pcm_delay and remove duplicate call to
snd_pcm_delay that caused issues (see inline code comments)
* ext/alsa/gstalsasink.c: (gst_alsa_sink_get_time):
make more readable and fix return value when snd_pcm_delay fails
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_chain): Fix crash when ESD
is killed while we're playing.
* gst/qtdemux/qtdemux.c: (qtdemux_parse): call
gst_element_no_more_pads().
Original commit message from CVS:
* gst-libs/gst/riff/riff-read.c :
- fix INFO tag extraction in RIFF/AVI files
because gst_event_unref (event) also freed taglist
- avoid a mem leak
Original commit message from CVS:
* ext/mad/gstid3tag.c : move from "Codec/(Dem/M)uxer" to "Codec/(Dem/M)uxer/Audio"
* gst/wavenc/gstwavenc.c : move from "Codec/Encoder/Audio" to "Codec/Muxer/Audio"
* gst/auparse/gstauparse.c :
- add code (commented for now) to support audio/x-adpcm on src pad
(we have no decoder for those layout yet)
* gst/cdxaparse/gstcdxaparse.c :
* gst/cdxaparse/gstcdxaparse.h :
- partial rewrite using RiffRead (ripped iain's wavparse code)
* gst/rtp/gstrtpL16enc.c : typo
* gst/rtp/gstrtpgsmenc.c : typo
Original commit message from CVS:
* ext/audiofile/gstafsrc.c: (gst_afsrc_get):
Remove old debug output
* ext/dv/gstdvdec.c: (gst_dvdec_quality_get_type),
(gst_dvdec_class_init), (gst_dvdec_loop), (gst_dvdec_change_state),
(gst_dvdec_set_property), (gst_dvdec_get_property):
Change the quality setting to an enum, so it works from gst-launch
Don't renegotiate a non-linked pad. Allows audio only decoding.
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_getcaps),
(gst_deinterlace_link), (gst_deinterlace_init):
* gst/videodrop/gstvideodrop.c: (gst_videodrop_getcaps),
(gst_videodrop_link):
Some caps negotiation fixes
Original commit message from CVS:
* ext/tarkin/gsttarkin.c :
- Change RANK from NONE to PRIMARY (decoder)
* ext/gdk_pixbuf/gstgdkpixbuf.c :
- Change RANK from NONE to MARGINAL (decoder)
* ext/divx/gstdivxenc.c :
- Change RANK from PRIMARY to NONE (encoder/spider issue)
Original commit message from CVS:
* configure.ac:
enable shout2 by default
* ext/shout2/gstshout2.c: (gst_shout2send_protocol_get_type),
(gst_shout2send_base_init), (gst_shout2send_init),
(gst_shout2send_connect), (gst_shout2send_change_state):
* ext/shout2/gstshout2.h:
make this work again. Based on a patch by Zaheer Merali (fixes
#142262)
* ext/theora/theora.c: (plugin_init):
don't set rank on encoders
Original commit message from CVS:
* gst/auparse/gstauparse.c :
- Document all audio encoding we can encounter from Solaris 9
headers and libsndfile information.
- Increase max. rate from 48000 to 192000 (to match other elements)
- Don't try to play junk data between header and samples
Original commit message from CVS:
* gst/cdxaparse/gstcdxaparse.c :
Add mpegversion to CAPS to make it link
Rank is as GST_RANK_SECONDARY instead of NONE
Original commit message from CVS:
* ext/libvisual/visual.c: (gst_visual_getcaps):
use the right caps depending on endianness (I hope)
* ext/ogg/gstoggmux.c: (gst_ogg_mux_plugin_init):
use GST_RANK_NONE for all non-decoding elements or spider gets
mighty confused
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_comment):
Fix some odd cases and fix BE metadata parsing of unicode16 text.
Original commit message from CVS:
* gst/switch/gstswitch.c: (gst_switch_release_pad),
(gst_switch_request_new_pad), (gst_switch_poll_sinkpads),
(gst_switch_loop), (gst_switch_get_type):
whoever that was: DO NOT IMPORT PRIVATE SYMBOLS THAT ARE NOT IN
HEADERS. Had to be said.
Original commit message from CVS:
* gst/auparse/gstauparse.c: (gst_auparse_class_init),
(gst_auparse_init), (gst_auparse_chain),
(gst_auparse_change_state):
Hack around spider. Remove me some day please.
Original commit message from CVS:
* gst/auparse/gstauparse.c: (gst_auparse_chain):
Fix for some uninitialized variables in previous patch, also
makes it work. Fixes#142286 while we're at it.
Original commit message from CVS:
* gst/auparse/gstauparse.c:
fixes a-law, adds mu-law, linear pcm (8,16,24,32), ieee (32, 64)
only unsupported formats are ADPCM/CCITT G.72x
reviewed by Ronald
* gst-libs/gst/audio/audio.h:
adds 24bit depth to PCM (x-raw-int)
Original commit message from CVS:
* ext/vorbis/Makefile.am:
* ext/vorbis/README:
* ext/vorbis/oggvorbisenc.c: (gst_oggvorbisenc_get_formats),
(oggvorbisenc_get_type), (vorbis_caps_factory), (raw_caps_factory),
(gst_oggvorbisenc_base_init), (gst_oggvorbisenc_class_init),
(gst_oggvorbisenc_sinkconnect), (gst_oggvorbisenc_convert_src),
(gst_oggvorbisenc_convert_sink),
(gst_oggvorbisenc_get_query_types), (gst_oggvorbisenc_src_query),
(gst_oggvorbisenc_init), (gst_oggvorbisenc_get_tag_value),
(gst_oggvorbisenc_metadata_set1), (gst_oggvorbisenc_set_metadata),
(get_constraints_string), (update_start_message),
(gst_oggvorbisenc_setup), (gst_oggvorbisenc_write_page),
(gst_oggvorbisenc_chain), (gst_oggvorbisenc_get_property),
(gst_oggvorbisenc_set_property), (gst_oggvorbisenc_change_state):
* ext/vorbis/oggvorbisenc.h:
* ext/vorbis/vorbis.c: (plugin_init):
* ext/vorbis/vorbisenc.c: (vorbis_caps_factory),
(raw_caps_factory), (gst_vorbisenc_class_init),
(gst_vorbisenc_init), (gst_vorbisenc_setup),
(gst_vorbisenc_push_packet), (gst_vorbisenc_chain),
(gst_vorbisenc_get_property), (gst_vorbisenc_set_property):
* ext/vorbis/vorbisenc.h:
Added a raw vorbis encoder to be used with the oggmuxer.
We still need the old encoder for some gnome applications,
read the README to find out how that works.
The raw encoder is called "rawvorbisenc" until 0.9.
Original commit message from CVS:
* ext/theora/theoraenc.c: (gst_theora_enc_class_init),
(theora_enc_sink_link), (theora_push_packet), (theora_enc_chain),
(theora_enc_change_state), (theora_enc_set_property),
(theora_enc_get_property):
Mark the last packet with an EOS flag which is not really needed
in gstreamer.
Do some better video framerate initialisation.
Update the buffer timestamp.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c : mark audio/a52, audio/ac3 as deprecated in a comment
* gst/ac3parse/gstac3parse.c : audio/ac3 => audio/x-ac3
* gst/realmedia/rmdemux.c : audio/a52 => audio/x-ac3
Original commit message from CVS:
* ext/alsa/gstalsasrc.c: (gst_alsa_src_loop):
don't use a fixed buffer size when writing variable length data to
it. Fixes memory corruption and makes alsasrc work
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssink.c:
(_gst_boolean_allow_overwrite_accumulator),
(gst_gnomevfssink_class_init), (gst_gnomevfssink_open_file):
Run glib's default signal handler (??) in RUN_CLEANUP rather than
RUN_LAST, and don't use that to set the accumulator value because
then it's always FALSE.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_audio_caps),
(gst_riff_create_audio_template_caps):
* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_head):
Fix for unaligned RIFF files (i.e. where all the chunks together
in a LIST chunk are not of the same size as the size given in
the LIST chunk header). Fixes several odd WAVE files. Also fix
ADPCM (block_align property) in audio, so that wavparse based
on this works now as it used to stand-alone.
Original commit message from CVS:
* ext/alsa/gstalsa.c: (device_list),
(gst_alsa_class_probe_devices):
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_open):
Fix alsa oddness in mixer after the combination of using mixer
in source/sink elements and using hw:x,y instead of just hw:x.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (gst_wavparse_destroy_sourcepad),
(gst_wavparse_create_sourcepad):
make PAUSED=>READY=>PAUSED=READY work by not destroying NULL
sourcepads
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_link), (gst_level_chain),
(gst_level_change_state), (gst_level_init):
* gst/level/gstlevel.h:
figure out if we're initialized directly instead of keeping a
variable that's wrong in 90% of cases
don't initialize pads and then leak them and use a new unitialized
pad. (fixes#142084)
these were bugs so n00bish I didn't find them for an hour :/
Original commit message from CVS:
Rewrote wavparse to use riff-read instead of doing bytestream stuff by hand.
Made some useful functions in riff-read non-static.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_caps):
Missing break, detected by Daniel Gazard <daniel.gazard@free.fr>.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_video_link):
Fix caps nego and pad templates. RGB mode caps should
work now.
* ext/dvdnav/gst-dvd:
Move mpeg2dec inside the thread because otherwise the
queue rejects cap changes mid-stream
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_get_type),
(gst_mpeg2dec_flush_decoder):
For mpeg2dec > 0.4.0, call the flush function instead of
manually extracting all in-flight frames.
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_factory),
(gst_dv1394src_init), (gst_dv1394src_iso_receive):
Change mime type video/dv go video/x-dv to match the
rest of gst-plugins
Original commit message from CVS:
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_build_list):
* ext/alsa/gstalsasink.c: (gst_alsa_sink_get_type),
(gst_alsa_sink_class_init):
* ext/alsa/gstalsasink.h:
* ext/alsa/gstalsasrc.c: (gst_alsa_src_get_type),
(gst_alsa_src_class_init):
* ext/alsa/gstalsasrc.h:
Make alsasink/src a subclass of alsamixer so that mixer stuff
shows up in gst-rec. Needs some finetuning.
Original commit message from CVS:
* ext/theora/theoraenc.c: (gst_theora_enc_class_init),
(theora_enc_sink_link), (theora_push_packet), (theora_enc_chain),
(theora_enc_set_property), (theora_enc_get_property):
Also encode the first frame, cleanup some code.
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: (gst_wavenc_chain):
First process the events before deciding that negotiation
was not performed.
Original commit message from CVS:
* ext/theora/Makefile.am:
* ext/theora/theora.c: (plugin_init):
* ext/theora/theoradec.c: (theora_dec_change_state):
* ext/theora/theoraenc.c: (gst_theora_enc_base_init),
(gst_theora_enc_class_init), (gst_theora_enc_init),
(theora_enc_sink_link), (theora_enc_event), (theora_push_packet),
(theora_enc_chain), (theora_enc_change_state),
(theora_enc_set_property), (theora_enc_get_property):
Added a theora encoder, grouped the encoder and decoder into the
same plugin.
Original commit message from CVS:
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_get_type),
(gst_jpegenc_chain):
fix DURATION on outgoing buffers
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_handle_sink_event):
debug using time formats
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support),
(gst_xvimagesink_sink_link):
windows with width/height 0 generate X errors, so don't allow them
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (src_templ),
(gst_mpeg2dec_base_init), (gst_mpeg2dec_init),
(gst_mpeg2dec_negotiate_format):
* ext/mpeg2dec/gstmpeg2dec.h:
removed the static pad template so that we can add the
more accurate framerate value to the caps.
Original commit message from CVS:
* configure.ac:
check for kdemacros.h, too (should fix#141821)
* ext/vorbis/vorbisdec.c: (vorbis_dec_event), (vorbis_dec_chain):
don't crash if no header was sent, but nicely error out (fixes part
of #141554)
Original commit message from CVS:
* ext/mpeg2enc/gstmpeg2enc.cc: (gst_mpeg2enc_dispose): call the
parent dispose function to avoid segfault on destroy.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_sink_link),
(plugin_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get),
(gst_xvimagesink_sink_link):
clean up debugging caps
also recreate xvimage when format has changed
Original commit message from CVS:
* ext/libvisual/Makefile.am:
* ext/libvisual/visual.c: (gst_visual_class_init),
(gst_visual_init), (gst_visual_dispose), (gst_visual_getcaps),
(gst_visual_srclink), (gst_visual_chain),
(gst_visual_change_state), (plugin_init):
use a GstAdapter to correctly adapt buffer sizes - allows using a
framerate
Original commit message from CVS:
* gst/asfdemux/Makefile.am:
* gst/asfdemux/asfheaders.c:
* gst/asfdemux/asfheaders.h:
* gst/asfdemux/gstasf.c: (plugin_init):
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_get_type),
(gst_asf_demux_base_init), (gst_asf_demux_process_comment),
(gst_asf_demux_setup_pad):
* gst/asfdemux/gstasfdemux.h:
* gst/asfdemux/gstasfmux.c:
* gst/asfdemux/gstasfmux.h:
Add tagging support to demuxer, split out registration in its own
file instead of in demux (hacky), and prevent having some tables
in our memory multiple times (in asfheaders.h).
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-ids.h:
Basic tag reading support.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_parse), (qtdemux_type_get),
(qtdemux_dump_stsz), (qtdemux_dump_stco), (qtdemux_dump_co64),
(qtdemux_dump_unknown), (qtdemux_parse_tree), (qtdemux_parse_udta),
(qtdemux_tag_add), (get_size), (gst_qtdemux_handle_esds): More qtdemux
hackage -- parse a lot more atoms, extract a few tags. One might even
mistake this for tag support. Maybe it is.
* gst/qtdemux/qtdemux.h:
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/libvisual/visual.c:
add initial support for libvisual (http://libvisual.sourceforge.net)
libvisual is still quite alpha, so expect crashes in there :)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse),
(qtdemux_parse_trak), (get_size), (gst_qtdemux_handle_esds): Hacked
up qtdemux to make it spit out codec_data. Do _not_ look at this
code; you will no longer respect me.
Original commit message from CVS:
* ext/jpeg/gstjpegdec.c: (gst_jpegdec_get_type):
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_get_type),
(gst_jpegenc_getcaps):
move format setting to inner loop
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcolorspace_getcaps):
use GST_PAD_CAPS if available so that we use already negotiated
caps
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_moov), (qtdemux_parse):
extra debugging
* sys/qcam/qcam-Linux.c: (qc_lock_wait), (qc_unlock):
* sys/qcam/qcam-os.c: (qc_lock_wait), (qc_unlock):
move hardcoded path to DEFINE
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_class_probe_devices):
Don't probe for playback device if we're a source element. Fixes
#139658.
Original commit message from CVS:
* ext/divx/gstdivxdec.c: (plugin_init):
Remove comment that makes no sense.
* ext/mad/gstid3tag.c: (gst_id3_tag_set_property):
Fix for obvious typo that resulted in warnings during gst-register.
* ext/xvid/gstxviddec.c: (gst_xviddec_src_link),
(gst_xviddec_sink_link):
Fix caps negotiation a bit better.
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
We call this 'codec_data', not 'esds'.
Original commit message from CVS:
* gst/monoscope/gstmonoscope.c:
make sure we only provide 256x128
* gst/monoscope/monoscope.c: (monoscope_init):
assert size of 256x128
Original commit message from CVS:
* ext/mad/gstid3tag.c: (plugin_init):
set id3mux rank to NONE so it doesn't confuse spider
require audio/mpeg,mpegversion=1 in id3mux
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps):
audio/x-raw-int with height rules! not. Now it's depth.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (gst_wavparse_create_sourcepad),
(gst_wavparse_parse_fmt), (gst_wavparse_handle_sink_event),
(gst_wavparse_loop):
Missing variable initialization. Add handling of DVI ADPCM. Fix
mis-parsing of LIST chunks. This works around a bug where we mis-
parse non-aligning LIST chunks (so LIST chunks where the contents
don't align with the actual LIST size). The correct fix is to use
rifflib, I'm not going to fix wavparse - too much work. All this
fixes#104878.
Original commit message from CVS:
reviewed by Benjamin Otte <otte@gnome.org>
* ext/shout/gstshout.c: (gst_icecastsend_change_state):
fix shoutcast not working (fixes#140844)
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data):
mpegversion is an int
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_base_init):
don't try to create pad templates with NULL caps, use any caps
instead.
Original commit message from CVS:
* ext/sdl/Makefile.am: Link against libgstinterfaces, not
libgstxoverlay. jmmv@menta.net (Julio M. Merino Vidal)
(bug #140384)
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_init):
remove leftover g_print
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link):
don't try setting only a subset of the caps. We don't want to kill
autoplugging on purpose
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_type_get), (qtdemux_dump_mvhd),
(qtdemux_dump_tkhd), (qtdemux_dump_stsd), (qtdemux_dump_unknown),
(qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps):
A number of new features and hacks to extract the esds atom and
put it into the caps. (bug #137724)
Original commit message from CVS:
* gconf/Makefile.am: Fix for non-GNU make
* gst-libs/gst/Makefile.am: Change directory order to handle
GstPlay linking with gstinterfaces
* gst-libs/gst/audio/make_filter: make use of tr portable
* gst-libs/gst/play/Makefile.am: Add intended \
* gst-libs/gst/xwindowlistener/xwindowlistener.c:
(gst_xwin_set_clips): Switch to ISO variadic macro. Use a
function prototype instead of void *.
* gst/ffmpegcolorspace/gstffmpegcodecmap.c: Switch to ISO variadic
macro.
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcolorspace_chain): wrap NULL in GST_ELEMENT_ERROR call
* gst/videofilter/make_filter: make use of tr portable
* pkgconfig/Makefile.am: Remove GNU extension in Makefile target
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (gst_wavparse_init),
(gst_wavparse_destroy_sourcepad), (gst_wavparse_create_sourcepad),
(gst_wavparse_parse_fmt), (gst_wavparse_change_state):
Hack to make wavparse work with spider (always -> sometimes pad).
Fixes#135862 && #140411.
Original commit message from CVS:
* sys/oss/gstosselement.c: (gst_osselement_sync_parms),
(gst_osselement_rate_probe_check),
(gst_osselement_rate_check_rate), (gst_osselement_rate_add_rate):
get rid of \n in debug output
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_get_type),
(gst_id3_tag_class_init), (gst_id3_tag_get_caps),
(gst_id3_tag_add_src_pad), (gst_id3_tag_init),
(gst_id3_tag_set_property), (gst_id3_tag_do_caps_nego),
(gst_id3_tag_src_link), (gst_id3_tag_chain),
(gst_id3_tag_change_state), (plugin_init):
deprecate id3tag element and replace with id3demux/id3mux.
great side effect: this ugly file is now even uglier, yay!
* ext/mad/gstmad.h:
remove non-available function
update for new get_type
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data):
Add div[3456] as fourccs for DivX 3 (fixes#140137).
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_caps), (gst_riff_create_audio_caps),
(gst_riff_create_video_template_caps),
(gst_riff_create_audio_template_caps):
* gst-libs/gst/riff/riff-media.h:
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data), (gst_riff_read_strf_vids):
* gst-libs/gst/riff/riff-read.h:
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Add MS RLE support. I added some functions to read out strf chunks
into strf chunks and the data behind it. This is usually color
palettes (as in RLE, but also in 8-bit RGB). Also use those during
caps creation. Lastly, add ADPCM (similar to wavparse - which
should eventually be rifflib based).
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_init), (gst_matroska_demux_reset):
* gst/matroska/matroska-demux.h:
Remove placeholders for some prehistoric tagging system. Didn't add
support for any tag system really anyway.
* gst/qtdemux/qtdemux.c:
Add support for audio/x-m4a (MPEG-4) through spider.
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt),
(gst_wavparse_loop):
ADPCM support (#135862). Increase max. buffer size because we
cannot split buffers for ADPCM (screws references) and I've seen
files with 2048 byte chunks. 4096 seems safe for now.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
Fix typo in divxversion (3 instead of 4 for "DIVX" fourcc).
Original commit message from CVS:
* common/m4/gst-feature.m4: Call -config scripts with
--plugin-libs if it is supported.
* gst/avi/gstavimux.c: (gst_avimux_vidsinkconnect): sequences of
JPEG images are image/jpeg.
* gst/debug/Makefile.am:
* gst/debug/negotiation.c: (gst_negotiation_class_init),
(gst_negotiation_getcaps), (gst_negotiation_pad_link),
(gst_negotiation_update_caps), (gst_negotiation_get_property),
(gst_negotiation_plugin_init): Add a property that acts like
filter caps.
* testsuite/gst-lint: Move license checking to be a standard
test.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add MS video v1.
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_index),
(gst_avi_demux_stream_data):
Add support for "rec-list" chunks.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
Fix divx caps mismatch and move from video/x-jpeg to image/jpeg
so that MJPEG plays back.
Original commit message from CVS:
* gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_init),
(gst_mp1videoparse_real_chain), (gst_mp1videoparse_change_state):
* gst/mpeg1videoparse/gstmp1videoparse.h:
Fix for some slight mis-cuts in buffer parsing, and for some
potential overflows or faults-causers. Adds disconts. Also fixes
#139105 while we're at it.
Original commit message from CVS:
* configure.ac:
* sys/v4l2/gstv4l2element.h:
Workaround for missing struct v4l2_buffer declaration in Suse 9
and Mandrake 10 linux/videodev2.h header file (#135919).
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssink.c:
(_gst_boolean_allow_overwrite_accumulator),
(gst_gnomevfssink_class_init):
fix erase signal - if any handler returns false the file will not be
overwritten. If no handler is connected, the file will not be
overwritten either.
renamed signal to "allow-overwrite"
* ext/mad/gstid3tag.c: (tag_list_to_id3_tag_foreach):
free string when adding it to ID3 failed
* ext/vorbis/vorbisdec.c: (vorbis_dec_event):
unref event when done
* gst/audioconvert/gstaudioconvert.c: (_fixate_caps_to_int):
free caps
* gst/typefind/gsttypefindfunctions.c:
(mpeg_video_stream_type_find):
fix invalid read
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_dispose):
actually free the URI string
* ext/mad/gstid3tag.c: (gst_id3_tag_src_event):
compute offset correctly when passing discont events
* ext/mad/gstid3tag.c: (gst_id3_tag_handle_event):
don't leak discont events
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_video_caps):
add some missing breaks so caps aren't copied randomly
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_get_video_stream):
if we realloc memory, we better use it
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_change_state),
(gst_alsa_close_audio):
handle case better where a soundcard can't pause
* ext/ogg/gstoggdemux.c:
don't crash when we get events but don't have pads yet
Original commit message from CVS:
a52dec: Use a debug category, Output timestamps correctly
Emit tag info, Handle events, tell liba52dec about cpu
capabilities so it can use MMX etc.
dvdec: Fix a crasher accessing invalid memory
dvdnavsrc:Some support for byte-format seeking.
Small fixes for still frames and menu button overlays
mpeg2dec: Use a debug category. Adjust the report level of several items to
LOG. Call mpeg2_custom_fbuf to mark our buffers as 'custom buffers'
so it doesn't lose the GstBuffer pointer
navseek: Add the navseek debug element for seeking back and forth in a
video stream using arrow keys.
mpeg2subt:Pretty much a complete rewrite. Now a loopbased element. May still
require work to properly synchronise subtitle buffers.
mpegdemux:
dvddemux: Don't attempt to create subbuffers of size 0
Reduce a couple of error outputs to warnings.
y4mencode:Output the y4m frame header correctly
Original commit message from CVS:
* gst/audioscale/gstaudioscale.c: (gst_audioscale_expand_value),
(gst_audioscale_getcaps): Fix getcaps to expand and union lists.
(bug #138225)
* gst/debug/Makefile.am:
* gst/debug/breakmydata.c: (gst_break_my_data_plugin_init):
* gst/debug/gstdebug.c: (plugin_init): Merge elements into one
plugin.
* gst/debug/negotiation.c: (gst_gst_negotiation_get_type),
(gst_negotiation_base_init), (gst_negotiation_class_init),
(gst_negotiation_init), (gst_negotiation_getcaps),
(gst_negotiation_pad_link), (gst_negotiation_chain),
(gst_negotiation_set_property), (gst_negotiation_get_property),
(gst_negotiation_plugin_init): New element to talk about random
negotiation things happening in a pipeline.
Original commit message from CVS:
* sys/oss/gstosselement.c: (gst_osselement_probe_caps),
(gst_osselement_rate_check_rate):
probe caps correctly for sound cards that only support one format
Original commit message from CVS:
* ext/hermes/gsthermescolorspace.c: (plugin_init): decrease rank
by 2 to not interfere with other colorspaces.
* ext/pango/gsttextoverlay.c: (plugin_init): change rank to NONE
* gst/colorspace/gstcolorspace.c: (plugin_init): decrease rank by
one to not interfere with ffmpeg_colorspace.
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_fixate): Don't fixate fields that
aren't in the caps.
* gst/sine/gstsinesrc.c: change rate caps to [1,MAX]
* gst/videocrop/gstvideocrop.c: (plugin_init): Change rank to NONE.
Original commit message from CVS:
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_process_private):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead),
(gst_mpeg_demux_parse_packet), (gst_mpeg_demux_parse_pes):
get rid of non-standard "..." ranges in case statements.
Original commit message from CVS:
* gst/mpegstream/gstmpegdemux.c:
* gst/mpegstream/gstmpegdemux.h: Complete overhaul. All DVD
specific functionality split to the new dvddemux element.
* gst/mpegstream/gstdvddemux.c:
* gst/mpegstream/gstdvddemux.h: New demultiplexer for DVD (VOB)
streams, derived from mpegdemux.
* gst/mpegstream/gstmpegparse.c: Discontinuity handling cleaned
up. SCR based timestamp rewriting can be turned off (will probably
completely disappear soon).
* ext/dvdnav/dvdnavsrc.c: Changes resulting from a few months
hacking. General cleanup. All printf statements replaced by
debugging messages. Almost complete libdvdnav support.
(dvdnavsrc_class_init): Got rid of unnecessary signals (replaced
by events. New properties for audio and subpicture languages.
(dvdnavsrc_update_highlight): Now uses events.
(dvdnavsrc_user_op): Cleaned up.
(dvdnavsrc_get): Renamed to dvdnavsrc_loop (element is now loop
based). Lots of cleanup, and propper support for most libdvdnav
events.
(dvdnavsrc_make_dvd_event): New function.
(dvdnavsrc_make_dvd_nav_packet_event): New function.
(dvdnavsrc_make_clut_change_event): New function.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (theora_type_find):
fix bug where typefinding would claim it's theora whenever less then
7 bytes of data were available
Original commit message from CVS:
* gst/law/alaw-decode.c: (alawdec_getcaps), (alawdec_link),
(gst_alawdec_base_init), (gst_alawdec_class_init),
(gst_alawdec_init), (gst_alawdec_chain):
* gst/law/alaw-encode.c: (alawenc_getcaps), (alawenc_link),
(gst_alawenc_base_init), (gst_alawenc_class_init),
(gst_alawenc_init), (gst_alawenc_chain):
* gst/law/mulaw-decode.c: (mulawdec_getcaps), (mulawdec_link),
(gst_mulawdec_base_init), (gst_mulawdec_class_init),
(gst_mulawdec_init), (gst_mulawdec_chain):
* gst/law/mulaw-encode.c: (mulawenc_getcaps), (mulawenc_link),
(gst_mulawenc_base_init), (gst_mulawenc_class_init),
(gst_mulawenc_init), (gst_mulawenc_chain):
Fix capsnego in all four, remove the unused property functions and
simplify the chain functions slightly. I guess we could use macros
or something similar for those, since the code is so similar, but
I'm currently too lazy...
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (gst_speexdec_base_init),
(gst_speexdec_init):
* ext/speex/gstspeexenc.c: (gst_speexenc_base_init),
(gst_speexenc_init): Create the pad template correctly (from
the static pad template, not a NULL pointer.)
Original commit message from CVS:
* gst/debug/Makefile.am:
* gst/debug/breakmydata.c:
add element that quasi-randomly changes bytes in the stream.
Intended use is robustness checking of demuxers and decoders in
media tests.
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_set_property):
don't g_return_if_fail if element is PLAYING, fail silently as every
other element.
* gst/effectv/gstquark.c: (gst_quarktv_chain):
only fix needed for cast lvalue issues in gst-plugins
* gst/volenv/gstvolenv.c: (gst_volenv_init):
add proxy_getcaps
Original commit message from CVS:
2004-03-23 Jeremy Simon <jesimon@libertysurf.fr>
* gst/typefind/gsttypefindfunctions.c: (ape_type_find),
(plugin_init):
Add a monkeysaudio typefind function
Original commit message from CVS:
* gst-libs/gst/play/play.c (gst_play_audio_fixate)
(gst_play_video_fixate): Check so the structure has the field
before trying to fixate them, this makes it possible to have
fakesinks for video and audio output without printing errors on
the output console.
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link),
(_fixate_caps_to_int), (gst_audio_convert_fixate):
add a fixation function that pretty much does the right thing (fixes
#137556)
Original commit message from CVS:
reviewed by: Benjamin Otte <otte@gnome.org>
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_push):
terminate gst_event_new_discontinuous correctly (fixes parts of
#137711)
Original commit message from CVS:
2004-03-15 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/play/play.c: (gst_play_get_framerate),
(gst_play_get_sink_element): First draft of gst_play_get_framerate.
* gst-libs/gst/play/play.h:
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_get_property),
(gst_alsa_open_audio), (gst_alsa_close_audio):
* ext/alsa/gstalsa.c:
Don't open the device if we're a mixer (= padless).
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_class_init),
(gst_alsa_mixer_init), (gst_alsa_mixer_open),
(gst_alsa_mixer_close), (gst_alsa_mixer_change_state):
Open mixer during state change rather than during object
initialization. Also, get a device name. Currently in a somewhat
hackish fashion, but I didn't really find something better.
Original commit message from CVS:
* gst/modplug/gstmodplug.cc:
handle events - don't do crap when a discont arrives that's not
necessary
This allows correct loading and playback of mods in Rhythmbox
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/gconf/Makefile.am:
* pkgconfig/Makefile.am:
move gstreamer-gconf pkgconfig files to pkgconfig/ dir. Make sure
they get rebuilt properly
* configure.ac:
when checking for vorbis, try pkgconfig first.
* gst/modplug/gstmodplug.cc:
add fixate function
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Fix for obvious mistake, where we first shift the offset and then
read a samplesize element assuming the old offset. Note that this
part still has something weird, i.e. my movies containing those
don't actually play well, but at least there's something that looks
like sound now.
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_video_caps),
(gst_asf_demux_setup_pad):
Use 25fps as our "fake" fps value (marked for fixage in 0.9.x)
instead of 0. Reason is simple: some elements have a fps range
of 1-max instead of 0-max. So now ASF video actually works.
Original commit message from CVS:
* gst/sine/gstsinesrc.c: (gst_sinesrc_get):
return taglist correctly from _get function, don't gst_pad_push it.
(fixes#137042)
Original commit message from CVS:
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_free_list):
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_class_init),
(gst_alsa_mixer_track_new):
* ext/alsa/gstalsamixertrack.h:
Fix ancient leftovers... MixerTrack is a GObject.
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_class_probe_devices):
* sys/oss/gstosselement.c: (gst_osselement_class_probe_devices):
Don't block during probing...
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_get_type), (gst_alsa_class_init),
(gst_alsa_get_property), (gst_alsa_probe_get_properties),
(gst_alsa_class_probe_devices), (gst_alsa_class_list_devices),
(gst_alsa_probe_probe_property), (gst_alsa_probe_needs_probe),
(gst_alsa_probe_get_values), (gst_alsa_probe_interface_init),
(gst_alsa_open_audio), (gst_alsa_close_audio):
* ext/alsa/gstalsa.h:
Add propertyprobe interface implementation, add some device-name
property, all this so that it looks good in gnome-volume-control.
Original commit message from CVS:
* configure.ac: the Hermes library controls hermescolorspace, not
colorspace.
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_base_init),
(gst_mpeg2dec_init): minor pet peeve: disable code with #ifdef,
not /* */
* ext/sdl/sdlvideosink.c: Change XID to unsigned long.
* ext/sdl/sdlvideosink.h: ditto.
* gst/colorspace/gstcolorspace.c: Fix old comments about Hermes
Original commit message from CVS:
* gst-libs/gst/xoverlay/xoverlay.c: (gst_x_overlay_set_xwindow_id),
(gst_x_overlay_got_xwindow_id):
* gst-libs/gst/xoverlay/xoverlay.h:
replace XID with unsigned long to get rid of the xlibs dependency in
XOverlay (fixes#137004)
Original commit message from CVS:
Port all elements that can be ported to videofilter, and fix up the caps.
Can someone with a big-endian machine please check them?
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_get_time),
(gst_osssink_chain), (gst_osssink_change_state):
Latest fixes for A/V sync, audio playback and such. This is about
all... MPEG playback issues are mostly related to the async build-
up of MPEG files, I cannot fix that. Use basicgthread to solve it.
Original commit message from CVS:
* ext/divx/gstdivxdec.c:
Downgrade priority. We prefer ffdec_mpeg4.
* ext/faad/gstfaad.c: (gst_faad_srcgetcaps), (gst_faad_srcconnect),
(gst_faad_chain), (gst_faad_change_state):
Fix capsnego. Doesn't work for some sounds because we don't have
a 5:1 to stereo element.
* ext/xvid/gstxvid.c: (plugin_init):
Add priority.
* sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_chain),
(gst_osssink_change_state):
Add discont handling.
Original commit message from CVS:
* ext/mikmod/gstmikmod.c: (gst_mikmod_init), (gst_mikmod_loop),
(gst_mikmod_change_state):
* ext/mikmod/gstmikmod.h:
make mikmod's loop function not loop infinitely and call
gst_element_yield anymore
* gst/modplug/gstmodplug.cc:
fix pad negotiation
Original commit message from CVS:
* ext/lcs/Makefile.am: Fix so that the lcs colorspace plugin
doesn't conflict with the internal colorspace plugin.
* gst-libs/gst/audio/make_filter: Use `` instead of $() to
satisfy the crappy-ass shell shipped by a certain vendor.
* gst/videofilter/make_filter: same (bug #135299)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Fix crash (j might be greater than n_samples, in which case we're
writing outside the allocated space for the array) and memleak.
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_osssink_chain):
And another caller that couldn't handle delay < 0 (unsigned
integer overflow). Video now continues playing on an audio
buffer underrun, and the clock continues working. Audio still
stalls.
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_osssink_get_delay),
(gst_osssink_get_time):
get_delay() may return values lower than 0. In those cases, we
should not actually cast to *unsigned* int64, that will break
stuff horribly. In my case, it screwed up A/V sync in movies
in totem rather badly.
Original commit message from CVS:
2004-03-06 Christophe Fergeau <teuf@gnome.org>
* ext/faac/gstfaac.c: (gst_faac_chain):
* ext/flac/gstflactag.c: (gst_flac_tag_chain):
* ext/libpng/gstpngenc.c: (user_write_data):
* ext/mikmod/gstmikmod.c: (gst_mikmod_loop):
* gst/ac3parse/gstac3parse.c: (gst_ac3parse_chain):
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_chain_subtitle):
* gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice):
Fix several misuse of gst_buffer_merge (it doesn't take ownership
of any buffer), should fix some leaks. I hope I didn't unref buffers
that shouldn't be...
Original commit message from CVS:
2004-03-06 Christophe Fergeau <teuf@gnome.org>
* ext/mad/gstmad.c: (gst_mad_chain): send the average bitrate read
from the xing header
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_getcaps),
(gst_audio_convert_link), (gst_audio_convert_change_state),
(gst_audio_convert_buffer_from_default_format):
do conversions from/to float correctly, fix some caps nego errors,
export correct supported caps in template and getcaps, use correct
caps in try_set_caps functions
Original commit message from CVS:
2004-03-06 Christophe Fergeau <teuf@gnome.org>
For some reason, I only committed a ChangeLog entry yesterday and
not the corresponding code...
* ext/mad/gstmad.c: Fix detection of Xing headers
* gst/tags/gstid3tag.c: Changes to support TLEN tags
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_get_pad_by_pad),
(gst_ogg_demux_src_query):
make sure to handle the case where there's no current chain
gracefully.
Original commit message from CVS:
* ext/aalib/gstaasink.c: (gst_aasink_fixate), (gst_aasink_init):
Add fixate function. (bug #131128)
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_init),
(gst_sdlvideosink_fixate): Add fixate function.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link):
Fix attempt to print a non-pointer using GST_PTR_FORMAT.
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt):
Fix missing break that was causing ulaw to be interpreted as
raw int.
Original commit message from CVS:
* gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice):
Fix code that ignores return value of gst_buffer_merge().
(bug #114560)
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_descramble_segment):
* gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice): same
* testsuite/gst-lint: Check for above.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_srcgetcaps),
(gst_faad_chain): Fix negotiation.
* ext/librfb/gstrfbsrc.c: (gst_rfbsrc_handle_src_event): Add
key and button events.
* gst-libs/gst/floatcast/floatcast.h: Fix a minor bug in this
dung heap of code.
* gst-libs/gst/gconf/gstreamer-gconf-uninstalled.pc.in: gstgconf
depends on gconf
* gst-libs/gst/gconf/gstreamer-gconf.pc.in: same
* gst-libs/gst/play/play.c: (gst_play_pipeline_setup),
(gst_play_video_fixate), (gst_play_audio_fixate): Add a fixate
function to encourage better negotiation, particularly between
audioconvert and osssink.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain):
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Make some debugging
more important.
* gst/typefind/gsttypefindfunctions.c: Fix mistake in flash
typefinding.
* gst/vbidec/vbiscreen.c: Add glib header
* pkgconfig/gstreamer-play.pc.in: Depends on gst-interfaces.
Original commit message from CVS:
2004-03-06 Christophe Fergeau <teuf@users.sourceforge.net>
* ext/mad/gstmad.c: Fix detection of Xing headers
* gst/tags/gstid3tag.c: Changes to support TLEN tags
Original commit message from CVS:
2004-03-06 Christophe Fergeau <teuf@gnome.org>
* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
* ext/mad/gstmad.c: (gst_mad_init), (is_xhead),
(mpg123_parse_xing_header), (gst_mad_chain): parse Xing header in vbr
files, and report the parsed length as a GST_TAG_DURATION tag.
* gst/tags/gstid3tag.c: support TLEN (duration) tag
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_channels):
convert channels correctly. convert correctly to unsigned.
Original commit message from CVS:
2004-03-05 Julien MOUTTE <julien@moutte.net>
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state): Check if
we have a window before clearing it.
Original commit message from CVS:
2004-03-05 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_change_state): Check if we
have a window before clearing it.
Original commit message from CVS:
* examples/gstplay/player.c: (main):
Initialize variables to NULL. Prevents a segfault because the
(uninitialized) variable is not NULL, resulting in a crash on
trying to reach error->message.
Original commit message from CVS:
2004-03-05 Benjamin Otte <otte@gnome.org>
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_buffer_to_default_format):
make float=>int conversion work correctly even in cornercases.
Original commit message from CVS:
reviewed by David Schleef
* gst/videofilter/gstgamma.c: (gst_gamma_rgb32): Fix typo that
modified the alpha channel and caused a warning. (bug #136192)
Original commit message from CVS:
2004-03-03 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/gconf/gconf.c: (gst_gconf_get_default_video_sink):
Using ximagesink as a default if no gconf key found. We should
probably consider using alsasink instead of osssink for the audio
part.
Original commit message from CVS:
* ext/sdl/sdlvideosink.h:
* sys/ximage/ximagesink.h:
* sys/xvideo/xvideosink.h:
* sys/xvimage/xvimagesink.h:
Fix for move of gstvideosink.h -> videosink.h.
Original commit message from CVS:
2004-02-29 Christophe Fergeau <teuf@gnome.org>
* sys/oss/gstosselement.c: (gst_osselement_probe),
(device_combination_append), (gst_osselement_class_probe_devices):
* sys/oss/gstosselement.h:
Reworked enumeration of oss dsps and mixers so that gst-mixer works
on my system using alsa oss emulation, fixes bug #135597
Original commit message from CVS:
* gst/videodrop/gstvideodrop.c: (gst_videodrop_init),
(gst_videodrop_chain), (gst_videodrop_change_state):
* gst/videodrop/gstvideodrop.h:
Work based on timestamp of input data, not based on the expected
framerate from the input. The consequence is that this element now
not only scales framerates, but also functions as a framerate
corrector or framerate stabilizer/constantizer.
Original commit message from CVS:
2004-02-27 Benjamin Otte <otte@gnome.org>
* gst-libs/gst/audio/audio.h:
add macro to make sure header isn't included twice
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_chunk):
don't use gst_buffer_free
* gst/playondemand/filter.func:
don't usae gst_data_free. Free data only once.
Original commit message from CVS:
* gst-libs/gst/colorbalance/Makefile.am:
* gst-libs/gst/mixer/Makefile.am:
* gst-libs/gst/tuner/Makefile.am:
* gst/level/Makefile.am: -marshal.[ch] and -enum.[ch] files
should not be disted, -marshal.h files should not be installed,
and -enum.h files _should_ be installed. Fix to make this the
case.
Original commit message from CVS:
2004-02-25 Andy Wingo <wingo@pobox.com>
* gst/interleave/interleave.c (interleave_buffered_loop): Always
push only when channel->buffer is NULL. Prevents segfaults doing
the state change after a nonlocal exit, like a scheme exception.
* gst/audioconvert/gstaudioconvert.c (gst_audio_convert_getcaps):
Handle the case where the intersected caps is empty.
Original commit message from CVS:
reviewed by: David Schleef <ds@schleef.org>
* gst/videofilter/gstgamma.c: (gst_gamma_class_init),
(gst_gamma_init), (gst_gamma_set_property),
(gst_gamma_get_property), (gst_gamma_calculate_tables),
(gst_gamma_rgb24), (gst_gamma_rgb32): Adds gamma correction
for RGB, with separate r g and b correction factors.
Original commit message from CVS:
2004-02-22 Benjamin Otte <otte@gnome.org>
reported by: Padraig O'Briain <padraig.obriain@sun.com>
* autogen.sh:
replace test -e with test -x for mkinstalldirs to be more portable.
(fixes#134816)
Original commit message from CVS:
2004-02-22 Benjamin Otte <otte@gnome.org>
reported by: Stefan Kost <kost@imn.htwk-leipzig.de>
* gst/audioconvert/gstaudioconvert.c: (plugin_init):
set rank to PRIMARY
* gst/volume/gstvolume.c: (plugin_init):
set rank to NONE
fixes#134960
2004-02-22 Julio M. Merino Vidal <jmmv@menta.net>
reviewed by Benjamin Otte <otte@gnome.org>
* ext/flac/gstflacenc.c: (gst_flacenc_chain):
escape NULL strings in GST_ELEMENT_ERROR properly (fixes#135116)
Original commit message from CVS:
2004-02-20 Andy Wingo <wingo@pobox.com>
* gst/intfloat/, gst/oneton: Removed, replaced by audioconvert and
interleave respectively.
* gst/interleave/deinterleave.c: New plugin: deinterleave
(replaces on oneton).
* gst/interleave/interleave.c: New plugin: interleave.
* gst/interleave/plugin.h: Support file.
* gst/interleave/plugin.c: Support file.
* configure.ac: Remove intfloat and oneton, add interleave.
* ext/sndfile/gstsf.c: Handle events better.
* gst/audioconvert/gstaudioconvert.c: Change to support int2float
and float2int operation. int2float has scheduling problems as
noted in in2float_chain.
Original commit message from CVS:
2004-02-20 Benjamin Otte <otte@gnome.org>
* ext/xine/Makefile.am:
* ext/xine/gstxine.h:
* ext/xine/xine.c:
* ext/xine/xineaudiodec.c:
* ext/xine/xinecaps.c:
add first version of xine plugin wrapper. Currently only wraps the
QDM2 win32 DLL, and even that only in proof-of-concept quality.
* configure.ac:
* ext/Makefile.am:
add xine plugin wrapper, disabled by default. Use --enable-xine to
build. Note that it'll segfault on gst-register if you don't remove
the goom and tvtime post plugins from xine.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_parse_trak), (qtdemux_audio_caps):
add extradata parsing for QDM2.
change around debugging prints.
Original commit message from CVS:
2004-02-19 Benjamin Otte <otte@gnome.org>
* ext/lame/gstlame.c: (gst_lame_chain):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_chain):
use gst_tag_list_insert when you want to insert tags
Original commit message from CVS:
* ext/gdk_pixbuf/gstgdkpixbuf.c: (plugin_init): Disable gdk_pixbuf
typefinding, since it seems to be worse than nothing.
* gst/typefind/gsttypefindfunctions.c: (qt_type_find): Add ftyp
atom to recognize .mp4 and .m4a files as video/quicktime.
Original commit message from CVS:
* gst/sine/demo-dparams.c: (quit_live),
(dynparm_log_value_changed), (dynparm_value_changed), (main):
Use double dparams, not float.
* gst/sine/gstsinesrc.c: (gst_sinesrc_class_init),
(gst_sinesrc_init): Change sync default to FALSE, since multiple
sync'd elements don't really work correctly.
* gst/volume/gstvolume.c: (volume_class_init), (volume_init),
(volume_update_volume), (volume_get_property): Change dparam
to double.
Original commit message from CVS:
2004-02-18 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c:
(gst_ximagesink_xwindow_update_geometry),
(gst_ximagesink_renegotiate_size), (gst_ximagesink_handle_xevents),
(gst_ximagesink_change_state), (gst_ximagesink_expose),
(gst_ximagesink_init): Rework the way software video scaling works. So
now we check on each chain call if the video frames are feeling the
window. If not we try to renegotiate caps. On failure we memorize that
and we won't try again for that PLAYING sessions.
* sys/ximage/ximagesink.h: Adding a boolean to store the caps renego
failure.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_init): initialize the
synchronous flag.
Original commit message from CVS:
2004-02-18 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_renegotiate_size),
(gst_ximagesink_handle_xevents), (gst_ximagesink_expose): Reorganizing
the way renegotiation work. The event handling function is not taking
care of external windows and renegotiate method check for pad flags
NEGOTIATING. Should fix : #133209
Original commit message from CVS:
2004-02-17 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_expose): Checking if the
pad is negotiating before trying renegotiation.
Original commit message from CVS:
2004-02-17 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new): Fix a
possible SHM leak if we crash. All other apps using XShm are doing
that.
Original commit message from CVS:
2004-02-16 Benjamin Otte <in7y118@public.uni-hamburg.de>
* testsuite/alsa/sinesrc.c:
cosmetic fix to fix compile issue with gcc 2.95.4
Original commit message from CVS:
2004-02-15 Julien MOUTTE <julien@moutte.net>
* gst/switch/gstswitch.c: (gst_switch_loop): More fixes for
correct data refcounting.
Original commit message from CVS:
2004-02-15 Julien MOUTTE <julien@moutte.net>
* gst/switch/gstswitch.c: (gst_switch_change_state),
(gst_switch_class_init): Cleaning the sinkpads correctly on state
change, mostly the EOS flag.
Original commit message from CVS:
2004-02-15 Julien MOUTTE <julien@moutte.net>
* examples/gstplay/player.c: (got_eos), (main): Adding some
output for debugging.
* gst-libs/gst/play/play.c: (gst_play_state_change): Stop our
timeouts if we go to any state different from PLAYING.
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_seek): Fix some
more EOS bugs in riff lib.
Original commit message from CVS:
2004-02-14 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/play/play.c: (gst_play_connect_visualization): Disable
visualization until i find a way to fix switch correctly.
* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_head): Fix a bug when
EOS arrives.
* gst/switch/gstswitch.c: (gst_switch_release_pad),
(gst_switch_request_new_pad), (gst_switch_poll_sinkpads),
(gst_switch_loop), (gst_switch_dispose), (gst_switch_class_init):
Reworked switch to get a more correct behaviour with events and refing
of data stored in sinkpads.
* gst/switch/gstswitch.h: Adding an eos flag for every sinkpad so that
we don't pull from a pad in EOS.
Original commit message from CVS:
2004-02-14 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/mad/gstid3tag.c: (gst_id3_tag_chain):
remove v1 tag even if we can't read it (makes sure we don't detect
it again)
Original commit message from CVS:
2004-02-14 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/alsa/gstalsa.c: (gst_alsa_pcm_wait),
(gst_alsa_xrun_recovery):
* ext/alsa/gstalsa.h:
try xrun recovery when wait failed. Make xrun recovery function
return TRUE/FALSE to indicate success. (might fix#134354)
Original commit message from CVS:
* gst/sine/demo-dparams.c: (dynparm_log_value_changed),
(dynparm_value_changed), (main): Convert from float to double.
* gst/sine/gstsinesrc.c: (gst_sinesrc_init): same.
Original commit message from CVS:
Convert a few inner loops to use liboil. This is currently
optional, and is only enabled if liboil is present (duh!).
* configure.ac: Check for liboil-0.1
* gst/intfloat/Makefile.am:
* gst/intfloat/gstint2float.c: (conv_f32_s16), (scalarmult_f32),
(gst_int2float_chain_gint16):
* gst/videofilter/Makefile.am:
* gst/videofilter/gstvideobalance.c: (gst_videobalance_class_init),
(tablelookup_u8), (gst_videobalance_planar411):
* gst/videotestsrc/Makefile.am:
* gst/videotestsrc/gstvideotestsrc.c: (plugin_init):
* gst/videotestsrc/videotestsrc.c: (splat_u8), (paint_hline_YUY2),
(paint_hline_IYU2), (paint_hline_str4), (paint_hline_str3),
(paint_hline_RGB565), (paint_hline_xRGB1555):
Original commit message from CVS:
* ext/lcs/gstcolorspace.c: (colorspace_find_lcs_format),
(gst_colorspace_caps_get_fourcc), (colorspace_setup_converter),
(gst_colorspace_getcaps), (gst_colorspace_link),
(gst_colorspace_base_init), (gst_colorspace_init),
(gst_colorspace_chain), (gst_colorspace_change_state),
(plugin_init): Merge Ronald's patch (bug #117897) and update
for new caps and negotiation. Seems to work, although it
shows off bugs in lcs.
Original commit message from CVS:
* ext/alsa/Makefile.am: Fix linking against libgstinterfaces.
(bug #133886) Noticed by bugs@leroutier.net (Stephane LOEUILLET)
Original commit message from CVS:
* ext/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init),
(gst_rfbsrc_change_state), (gst_rfbsrc_init),
(gst_rfbsrc_set_property), (gst_rfbsrc_get_property):
Add server and port properties
Original commit message from CVS:
2004-02-08 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst-libs/gst/colorbalance/Makefile.am:
* gst-libs/gst/navigation/Makefile.am:
* gst-libs/gst/xoverlay/Makefile.am:
remove unused GST_OPT_CFLAGS from Makefiles
include X_CFLAGS and X_LIBS in xoverlay. (#131948)
Original commit message from CVS:
2004-02-05 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/mad/gstid3tag.c: (gst_id3_tag_chain):
skip undecodable id3v2 tag instead of keeping it
Original commit message from CVS:
2004-02-05 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_info):
use correct GST_TAG_ENCODER tag
Original commit message from CVS:
2004-02-05 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/alsa/gstalsa.c: (gst_alsa_change_state):
be sure to stop the clock when going to paused
* sys/oss/gstosssink.c: (gst_osssink_change_state):
reset number of transmitted when going to ready.
fixes#132935
2004-02-05 Charles Schmidt <cschmidt2@emich.edu>
reviewed by Benjamin Otte
* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
extract track count (fixes#133410)
Original commit message from CVS:
2004-02-04 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/mad/gstid3tag.c: (gst_id3_tag_do_caps_nego):
that should be !=, not == (fixes#132519)
Original commit message from CVS:
Make sure set_explicit_caps() is called before adding pad.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
* gst/id3/gstid3types.c: (gst_id3types_loop):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead):
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
Original commit message from CVS:
Replace use of GST_PAD_FORMATS_FUNCTION() and similar macros
with the code that they would expand to.
* ext/flac/gstflacdec.c: (gst_flacdec_get_src_formats),
(gst_flacdec_get_src_query_types),
(gst_flacdec_get_src_event_masks):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_get_formats),
(gst_gnomevfssrc_get_query_types),
(gst_gnomevfssrc_get_event_mask):
Original commit message from CVS:
2004-02-04 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst/sine/gstsinesrc.c: (gst_sinesrc_class_init),
(gst_sinesrc_dispose):
fix memleak by properly disposing sinesrc
Original commit message from CVS:
2004-02-04 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/xoverlay/xoverlay.c: (gst_x_overlay_expose):
* gst-libs/gst/xoverlay/xoverlay.h: Adding the _expose method to tell
an overlay to redraw the image because it has been exposed.
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_destroy),
(gst_ximagesink_ximage_put), (gst_ximagesink_expose),
(gst_ximagesink_xoverlay_init), (gst_ximagesink_init):
* sys/ximage/ximagesink.h: Implement expose method from XOverlay
interface
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_destroy),
(gst_xvimagesink_xvimage_put), (gst_xvimagesink_expose),
(gst_xvimagesink_xoverlay_init), (gst_xvimagesink_init):
* sys/xvimage/xvimagesink.h: Implement expose method from XOverlay
interface
Original commit message from CVS:
2004-02-03 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_type_find):
more memleak fixage
Original commit message from CVS:
2004-02-03 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/gdk_pixbuf/gstgdkpixbuf.c: (plugin_init):
* gst/typefind/gsttypefindfunctions.c:
fix memleaks shown by gst-typefind
Original commit message from CVS:
2004-02-03 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream):
set explicit caps before adding the element, so the autopluggers can
plug correctly.
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find),
(mpeg2_sys_type_find), (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find),
(dv_type_find):
fix memleaks in typefind functions. gst_type_find_suggest takes a const
argument.
Original commit message from CVS:
2004-02-03 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain):
handle chain parsing correctly in the multichain case
* ext/theora/theoradec.c: (gst_theora_dec_init), (_theora_ilog),
(theora_dec_from_granulepos), (theora_dec_to_granulepos),
(theora_dec_src_query), (theora_dec_src_event), (theora_dec_event),
(theora_dec_chain):
handle events and queries correctly
Original commit message from CVS:
* gst-libs/gst/audio/.cvsignore:
Ignore generated file.
* gst-libs/gst/audio/Makefile.am:
Do not install example filter.
Original commit message from CVS:
2004-02-03 Benjamin Otte <in7y118@public.uni-hamburg.de>
* common/m4/ax_create_stdint_h.m4:
* configure.ac:
add AX_CREATE_STDINT_H to get correct type definitions for a52dec in
_stdint.h.
* Makefile.am:
remove generated _stdint.h in DISTCLEANFILES
* ext/a52dec/gsta52dec.c:
include _stdint.h for a52dec. (should fix#133064)
Original commit message from CVS:
2004-02-02 Jeremy Simon <jesimon@libertysurf.fr>
* gst/tags/gstvorbistag.c: (gst_vorbis_tag_add),
(gst_tag_to_vorbis_comments):
Add replaygain support to vorbistag
Original commit message from CVS:
2004-02-02 Jeremy Simon <jesimon@libertysurf.fr>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_to_extradata):
Fix SVQ3 caps flag properties
Use glib macro for bytes swap
Original commit message from CVS:
2004-02-02 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/play/play.c: (gst_play_pipeline_setup),
(gst_play_set_audio_sink): Moving volume in the audio thread for
instantaneous volume change. Maybe i will add another volume in front
of visualization later, not sure yet though.
Original commit message from CVS:
2004-02-02 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_renegotiate_size),
(gst_ximagesink_handle_xevents): Better X events handling, only take
the latest events for configure and motion.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): same.