Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_init),
(gst_dvd_read_src_goto_title), (gst_dvd_read_src_read):
Name the structure in the custom event with the
language codes for the audio and subtitle streams
actually like dvddemux expects it to be named.
Set caps on source pad and outgoing buffers.
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_init), (gst_lame_set_property),
(gst_lame_get_property), (gst_lame_setup):
* ext/lame/gstlame.h:
Make xingheader property non-functional, it's broken anyway
after all (use xingmux instead).
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_sink_event):
On EOS, flush encoder and send remaining data. Fix
return value handling in sink event function.
Original commit message from CVS:
Patch by: Jürg Billeter <j at bitron dot ch>
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_set_property):
Fix wrong check for started flag when setting the 'device' property.
We want to allow it when the source is NOT started yet and ignore it
when the source is running.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_sink_event),
(gst_a52dec_chain_raw), (gst_a52dec_change_state):
* ext/a52dec/gsta52dec.h:
Fix#334550: failure to play raw AC3 files due to segment problems.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_convert_sink), (gst_mad_update_info),
(gst_mad_sink_event), (gst_mad_change_state):
Include AUDIO_CODEC tag with tags posted if input is not
framed (#334258). Use _scale() util functions in more places.
Original commit message from CVS:
2006-03-12 Christophe Fergeau <teuf@gnome.org>
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* ext/lame/gstlame.c: (gst_lame_class_init): mark the xing-header
property as BROKEN (see
http://bugzilla.gnome.org/show_bug.cgi?id=330317#c19 for an
explanation why it's broken).
Original commit message from CVS:
* ext/mad/gstid3tag.c: (tag_list_to_id3_tag_foreach):
Add support for writing the GST_TAG_ALBUM_VOLUME_NUMBER
tag (#333683, patch by: Alex Lancaster).
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_init),
(gst_amrnbdec_setcaps), (gst_amrnbdec_chain),
(gst_amrnbdec_state_change):
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_init),
(gst_amrnbenc_setcaps), (gst_amrnbenc_chain),
(gst_amrnbenc_state_change):
* ext/amrnb/amrnbenc.h:
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_init),
(gst_amrnbparse_query):
Further fancyfication.
Use _take to get writable data from the adapter.
Precalc packet duration.
Handle disconts.
Forward _push to upstream.
Post error messages when something goes wrong.
Remove old code in amrnbparse.
Don't ignore query results from upstream.
Original commit message from CVS:
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_chain):
The AMR encoder writes into the audio buffers it processes, so
use gst_buffer_make_writable() on buffers we might (they go through
an adapter, so there can be copying going on later anyway) be
encoding.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_init),
(gst_mpeg2dec_reset), (gst_mpeg2dec_chain):
* ext/mpeg2dec/gstmpeg2dec.h:
Don't treat STATE_INVALID as fatal error; throw an error
only after five consecutive decoding errors. Makes decoding
mpeg streams more robust and fixes playback of joined clips
(#300682).
Original commit message from CVS:
* ext/cdio/Makefile.am:
Add GST_BASE_CFLAGS and GST_BASE_LIBS (seems to be
required for Cygwin, see #317048)
* gst/rtp/gstasteriskh263.c:
Cygwin has includes for both the unix network socket API
and the windows API, but only one can be included, so fix
includes to only use one or the other, prefering the unxi
one (#317048).
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (crop_copy_i420_buffer),
(crop_copy_i422_buffer), (crop_buffer):
When we need to crop the output buffer, make sure we
create a buffer of the right size and respect the implicit
striding used for I420 elsewhere in GStreamer (#331301).
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_init), (gst_lame_chain),
(gst_lame_change_state):
Fix up lame a bit.
Apply patch #319782 by Gautier Portet.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_init), (scale), (gst_mad_update_info),
(gst_mad_sink_event), (gst_mad_check_caps_reset), (gst_mad_chain),
(gst_mad_change_state):
Port fixes for bugs 314771, 308772, 140237, and 302625
from 0.8 (Patch by Jonathan Matthew, Fixes#329575)
Use GST_EVENT_FLUSH_STOP to clear data from the current input
buffer, to avoid using it for any future decoding.
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_setcaps),
(gst_amrnbdec_chain), (gst_amrnbdec_state_change):
Some more comments.
* ext/mpeg2dec/gstmpeg2dec.c: (crop_buffer), (handle_slice):
Applied patch from Fabrizio Gennari, fixes#330844.
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_init),
(gst_dvd_read_src_class_init), (gst_dvd_read_src_start),
(gst_dvd_read_src_stop), (gst_dvd_read_src_goto_title),
(gst_dvd_read_src_set_property), (gst_dvd_read_src_get_property),
(gst_dvd_read_src_uri_get_uri), (gst_dvd_read_src_uri_set_uri):
* ext/dvdread/dvdreadsrc.h:
Let's try to play the title the user set via the URI handler or
via properties instead of always playing the first title. Also,
Also, count title/chapter/angle number in URI and properties
from 1 rather than 0.
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_class_init),
(gst_dvd_read_src_get_size), (gst_dvd_read_src_do_seek),
(gst_dvd_read_src_do_duration_query):
Don't implement GstBaseSrc::get_size or GstBaseSrc::is_seekable,
otherwise GstBaseSrc will think we can operate pull_range based,
which we don't really, and typefinding will fail miserably.
Also, make seeking work somewhat (only works with flumpegdemux
at the moment, mpegstream needs fixing for that first).
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_read),
(gst_dvd_read_src_create), (gst_dvd_read_src_src_event):
Only allocate buffer once we know exactly how much we need,
rather than gratuitously allocating 2MB-buffers all the time
even if we usually need much less than that. Also, demote
a debug message from DEBUG to LOG level.
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_class_init),
(gst_dvd_read_src_seekable), (gst_dvd_read_src_get_size),
(gst_dvd_read_src_do_seek), (gst_dvd_read_src_do_duration_query),
(gst_dvd_read_src_do_position_query):
Add some more debugging and fix duration query in BYTES.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/dvdread/Makefile.am:
* ext/dvdread/dvdreadsrc.c:
* ext/dvdread/dvdreadsrc.h:
Half-baked port to 0.10. Needs some love
in the seeking department, but at least
it does something.
* ext/dvdread/stream_labels.c:
* ext/dvdread/stream_labels.h:
Remove these (we use ISO-639 language codes internally; applications
that want to translate those into language names for display to the
user should rely on the iso-codes package for that).
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_init),
(gst_amrnbdec_setcaps), (gst_amrnbdec_event), (gst_amrnbdec_chain),
(gst_amrnbdec_state_change):
* ext/amrnb/amrnbdec.h:
Fix amrnbdec, handle events, take copy from adapter since the decoder
apparently writes in the source data.
Use some _scale_int, and precalc duration.
Fix some leaks, post ERROR messages.
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:
* docs/plugins/inspect/plugin-cdio.xml:
Add cdio plugin to docs.
* ext/cdio/gstcdiocddasrc.c:
Add gtk-doc blurb.
* ext/cdio/gstcdio.c:
The plugin is called 'cdio' not 'cddio'.
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_finalize), (gst_lame_class_init),
(gst_lame_init), (add_one_tag), (gst_lame_set_metadata):
* ext/lame/gstlame.h:
Contrary to what the const char in the lame API might suggest,
lame expects us to keep the strings we pass to id3tag_set_foo()
around; it doesn't free them either though, so we have to store
them somewhere and free them later when we can be sure lame
doesn't need them any longer.
Original commit message from CVS:
* ext/lame/gstlame.c: (add_one_tag):
Fix handling of GST_TAG_DATE (#311679), don't pass an
uninitialised string pointer to lame if we don't know
how to handle the tag type, and fix minor memory leak.
Original commit message from CVS:
2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
* ext/dvdnav/dvdnavsrc.c: (if):
* ext/dvdread/stream_labels.c:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_segment):
* gst/realmedia/rmdemux.c: (gst_rmdemux_loop):
fix up error domains, error strings, and use of translation
* po/POTFILES.in:
fix up this file, even though none of them are actually marked
for build yet.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/cdio/Makefile.am:
* ext/cdio/gstcdio.c:
* ext/cdio/gstcdio.h:
* ext/cdio/gstcdiocddasrc.c:
* ext/cdio/gstcdiocddasrc.h:
Port libcdio cdda source, formerly known as cddasrc, now known as
cdiocddasrc (fixes#323327). Should also read CD-TEXT if available,
but that's not tested (fixes#317658).
Original commit message from CVS:
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_query):
* ext/mad/gstid3tag.c: (gst_id3_tag_src_query):
* ext/mad/gstmad.c: (gst_mad_src_query):
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_src_query):
* ext/sidplay/gstsiddec.cc:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_handle_src_query):
* gst/realmedia/rmdemux.c: (gst_rmdemux_src_query):
Pass unhandled queries upstream (useful e.g. for SEEKING query)
(fixes#325652; based on patch by: Philippe); make rmdemux return
FALSE for position queries, instead of setting -1 as value and
returning TRUE.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
Don't forget that we need to send out a newsegment event after a
restart even if we don't have enough data to decode a frame right
now.
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_get_type):
Remove lingering reference to GstID3Demux
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_pes):
Don't output debug saying padding streams are unknown type,
because they're not
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_src_event):
When getting a seek event, first check if the upstream element
can handle it and only do our own seek stuff when it can't
(should fix#322856).
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* ext/mpeg2dec/gstmpeg2dec.c: (normal_seek):
Really convert to BYTES format when we want to convert
to bytes (use right variable; fixes#322856).
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_do_typefind),
(gst_id3_tag_do_caps_nego), (gst_id3_tag_chain), (plugin_init):
Fix typefinding in id3demux, and then remove it in favour
of the new LGPL id3demux in gst-plugins-good
* ext/mad/gstmad.c: (gst_mad_dispose):
dispose can run more than once.
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list),
(gst_id3_tag_do_typefind):
Use the correct function to free typefind factory list.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_src_query):
For position and duration queries in TIME format, try the peer
first (might be a demuxer).
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
g_warning() are only for really fatal warnings. If we can't decode a
tag, just ignore that tag and do a GST_WARNING.
Original commit message from CVS:
2005-12-05 Andy Wingo <wingo@pobox.com>
* ext/mad/gstid3tag.c (plugin_init): Remove id3tag -- there's just
id3demux and id3mux now. Fixes#323199.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
Proper warning statements,
Don't error if the src pad isn't linked when pushing.
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_change_state):
Proper state_change, avoids borkage when going to READY
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (handle_sequence):
Prime libmpeg2's pumps with some null custom buffers
to ensure it ask us to discard garbage later yay.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_init),
(gst_a52dec_sink_setcaps), (gst_a52dec_chain),
(gst_a52dec_chain_raw):
* ext/a52dec/gsta52dec.h:
Accept AC3 in audio/x-private1-ac3 format, which includes
DVD-specific headers, as well as raw AC3, for compatibility with
some demuxers.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
When pad_alloc returns other-than-GST_FLOW_OK and mad exits early,
skip frame synthesis and consume input data as if we'd done the
decode. Makes mad not error when the src pad is not connected.
(#319784)
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
Fix seeking even more by sending the newsegment event with the
right parameters. Should fix querying in playbin/totem after
a seek.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_mode_get_type), (gst_mad_src_query),
(normal_seek), (gst_mad_sink_event), (gst_mad_chain):
Fix seeking in stand-alone mode. Fix nonexistant enum value
introduced in previous commit. Improve debug messages here and
there. Actually return a proper return value in the sink event
handler.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (handle_slice),
(gst_mpeg2dec_sink_event):
Set DELTA_UNIT flag on outgoing buffers if this is NOT a keyframe;
nice-ify debug message in event handler; add CHECKME.
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_process_event),
(gst_dvd_demux_send_event), (gst_dvd_demux_process_private),
(gst_dvd_demux_send_subbuffer), (gst_dvd_demux_reset),
(gst_dvd_demux_sync_stream_to_time):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_class_init),
(gst_mpeg_demux_process_event), (gst_mpeg_demux_send_event),
(gst_mpeg_demux_handle_discont), (gst_mpeg_demux_new_output_pad),
(gst_mpeg_demux_parse_packet), (gst_mpeg_demux_parse_pes),
(gst_mpeg_demux_send_subbuffer), (gst_mpeg_demux_process_private),
(gst_mpeg_demux_sync_stream_to_time),
(gst_mpeg_demux_handle_src_event), (gst_mpeg_demux_reset):
* gst/mpegstream/gstmpegdemux.h:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_init),
(gst_mpeg_parse_handle_discont), (gst_mpeg_parse_send_buffer),
(gst_mpeg_parse_process_event), (gst_mpeg_parse_send_discont),
(gst_mpeg_parse_send_event), (gst_mpeg_parse_event),
(gst_mpeg_parse_chain):
* gst/mpegstream/gstmpegparse.h:
Get rid of GST_PAD_IS_USABLE and fix GstFlowReturn vs. gboolean
return value confusion (gst_pad_push vs. gst_pad_send_event and
gst_pad_push_event); pass flow return values to caller;
miscellaneous fixes and clean-ups.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format),
(handle_sequence), (handle_slice), (gst_mpeg2dec_chain),
(gst_mpeg2dec_src_query), (gst_mpeg2dec_change_state):
Small cleanups in refcounting.
Original commit message from CVS:
* ext/a52dec/Makefile.am:
* ext/a52dec/gsta52dec.c: (gst_a52dec_base_init),
(gst_a52dec_class_init), (gst_a52dec_sink_event),
(gst_a52dec_change_state):
* ext/a52dec/gsta52dec.h:
Re-enable CPU flags, use liboil to get them.
Original commit message from CVS:
* ext/amrnb/amrnbdec.c:
Mark invalid frame sizes
* ext/mad/gstmad.c: (gst_mad_init), (gst_mad_chain):
UNUSABLE is not to be used here, just push out stuff so
probes can continue linking or making the pad usable.
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_state_change):
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_state_change):
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_state_change):
State change function updates.
Original commit message from CVS:
2005-08-25 Andy Wingo <wingo@pobox.com>
* ext/ladspa/gstladspa.h:
* ext/ladspa/gstladspa.c: Halfway-ported. Doesn't compile yet.
* ext/ladspa/gstsignalprocessor.h:
* ext/ladspa/gstsignalprocessor.c: New files, the start of a base
class for DSP elements.
* configure.ac: Sort the external libs checks, add a ladspa check,
output the ladspa makefile.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/speex/Makefile.am:
* ext/speex/gstspeex.c: (plugin_init):
* ext/speex/gstspeexdec.c: (speex_get_query_types),
(gst_speex_dec_init), (speex_dec_src_query), (speex_dec_src_event),
(speex_dec_event), (speex_dec_chain):
Port speexdec. Leads to some unfamiliar warnings on console,
but works otherwise.
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_init),
(gst_id3_tag_sink_event), (gst_id3_tag_do_caps_nego),
(gst_id3_tag_chain), (gst_id3_tag_change_state), (plugin_init):
Works a bit better now, but still needs a rewrite to use
get_range instead of this seeking nastiness.
Original commit message from CVS:
* ext/amrnb/amrnbdec.c:
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_setcaps):
* ext/amrnb/amrnbparse.c:
Update caps with audio/AMR.
* gst/rtp/gstrtpamrdec.c: (gst_rtpamrdec_init),
(gst_rtpamrdec_sink_setcaps), (gst_rtpamrdec_chain),
(gst_rtpamrdec_change_state):
* gst/rtp/gstrtpamrdec.h:
* gst/rtp/gstrtpamrenc.c: (gst_rtpamrenc_class_init),
(gst_rtpamrenc_init), (gst_rtpamrenc_chain):
Dont set FT headers twice, it was already in the encoded
bitstream.
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_open),
(gst_rtspsrc_close), (gst_rtspsrc_play):
* gst/rtsp/rtspconnection.c: (parse_line):
Cleanups
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init),
(gst_udpsrc_create), (gst_udpsrc_set_property),
(gst_udpsrc_get_property):
* gst/udp/gstudpsrc.h:
Added caps property, we need this soon to type the buffers.
Original commit message from CVS:
* ext/mad/Makefile.am:
* gst/avi/Makefile.am:
* gst/effectv/Makefile.am:
* gst/udp/Makefile.am:
* gst/wavparse/Makefile.am:
Use -lgstfoo-@GST_MAJORMINOR@ instead of -lgstfoo-0.9
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_init), (gst_mad_chain):
It'd be nice if I could listen to my mp3 files, so send out an
initial discont, as the sink apparently wants.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/libpng/Makefile.am:
* ext/libpng/gstpng.c:
* ext/libpng/gstpngenc.c:
Ported pngenc , still have to port pngdec...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_src_event):
First try forwarding events, makes seeking in AVI files with mp3
audio work again.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range),
(gst_base_src_default_negotiate), (gst_base_src_negotiate):
Allow subclasses to implement their own negotiation.
Original commit message from CVS:
2005-07-01 Jan Schmidt <thaytan@mad.scientist.com>
* configure.ac:
* ext/mad/Makefile.am:
* sys/oss/Makefile.am:
Roll gstreamer-interfaces-0.9.pc into gstreamer-plugins-base-0.9.pc
Original commit message from CVS:
2005-07-01 Jan Schmidt <thaytan@mad.scientist.com>
* ext/libcaca/Makefile.am:
* ext/mad/Makefile.am:
* gst/effectv/Makefile.am:
* gst/udp/Makefile.am:
Replace GST_PLUGINS_LIBS_* with GST_PLUGINS_BASE_*
* ext/mad/gstid3tag.c: (gst_id3_tag_src_query),
(gst_id3_tag_src_event), (gst_id3_tag_sink_event),
(gst_id3_tag_chain), (plugin_init):
* ext/mad/gstmad.c: (gst_mad_src_query), (gst_mad_chain):
Signedness warning fix, use gst_pad_get_peer instead of GST_PAD_PEER
in querying and event handling, because we're not holding the pad
lock and the peer may disappear.
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex),
(gst_avi_demux_parse_index), (gst_avi_demux_massage_index):
Signedness warning fixes.
* gst/videofilter/gstvideotemplate.c: (plugin_init):
Remove gst_library_load
Original commit message from CVS:
* gst/avi/Makefile.am: (libgstavi_la_LIBADD):
Added linking to libgstriff-0.9
* ext/mad/gstmad.c: (gst_mad_src_query):
check the format of the upstream query and return query if it's the
same format as the requested one.
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_src_link):
* ext/mad/gstmad.c: (gst_mad_chain):
RPAD_ -> PAD
Fix args in bufferalloc function call.
Makes the mad plugin compile again
Original commit message from CVS:
2005-06-02 Andy Wingo <wingo@pobox.com>
* ext/mad/gstid3tag.c: Finish porting to 0.9: no more gstdata,
check for link functions before calling them, give
gst_message_new_tag its own copy of the tag list, set the parser
state before sending the event (because in 0.9 events are
processed immediately), casting fixes.
* ext/mad/Makefile.am (libgstmad_la_LDFLAGS): Link with
gsttagedit.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain), (gst_mad_change_state):
* ext/sidplay/gstsiddec.cc:
* gst/alpha/gstalpha.c: (gst_alpha_chain):
* gst/goom/gstgoom.c: (gst_goom_chain):
No need to take the lock anymore, core already did
that before calling us.
Original commit message from CVS:
* Makefile.am:
* ext/Makefile.am:
* sys/Makefile.am:
Make my automake version shut up about undefined variables
* gst/goom/gstgoom.c:
GstAdapter moved to base objects.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_init), (gst_mad_src_query),
(index_seek), (normal_seek), (gst_mad_sink_event):
Port to new query API and replace gst_pad_convert()
and gst_pad_get_formats() usage. gstid3tag looks like
it needs some more love before it will work again, if
not a rewrite.
Original commit message from CVS:
Fixed a few things to enable the mad and effectv to be able to find the headers in the gst-plugins-base/gst-libs and to link against the libs in there.
Original commit message from CVS:
Don't send 'Hey! You gave me a NULL pointer yo naughty person' as error message when we can't open the DVD device; send something more useful instead (fixes#167117)
Original commit message from CVS:
* configure.ac: Pull in librfb from my CVS tree, because it is
too small and annoying to be separate. Move rfbsrc plugin
to gst/.
* ext/Makefile.am:
* ext/librfb/Makefile.am:
* ext/librfb/gstrfbsrc.c:
* gst/librfb/Makefile.am:
* gst/librfb/gstrfbsrc.c:
* gst/librfb/rfb.c:
* gst/librfb/rfb.h:
* gst/librfb/rfbbuffer.c:
* gst/librfb/rfbbuffer.h:
* gst/librfb/rfbbytestream.c:
* gst/librfb/rfbbytestream.h:
* gst/librfb/rfbcontext.h:
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
* gst/librfb/rfbutil.h:
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_open_decoder),
(gst_mpeg2dec_reset), (free_all_buffers),
(gst_mpeg2dec_alloc_buffer), (handle_sequence):
* ext/mpeg2dec/gstmpeg2dec.h:
The libmpeg2 user-allocated buffer management is awkward,
to say the least. Hopefully this fixes things.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_init),
(gst_mpeg2dec_close_decoder), (put_buffer), (check_buffer),
(free_buffer), (free_all_buffers), (gst_mpeg2dec_alloc_buffer),
(handle_sequence), (handle_picture):
* ext/mpeg2dec/gstmpeg2dec.h:
Rearrange buffer tracking and refcounting and refactor
a little for readability.
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c:
Don't send things to NULL PAD_PEERs
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_chain):
Copy-on-write the incoming buffer.
* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstmpegclock.h:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead),
(normal_seek), (gst_mpeg_demux_handle_src_event):
* gst/mpegstream/gstmpegdemux.h:
* gst/mpegstream/gstmpegpacketize.h:
* gst/mpegstream/gstmpegparse.c:
(gst_mpeg_parse_update_streaminfo), (gst_mpeg_parse_reset),
(gst_mpeg_parse_handle_discont), (gst_mpeg_parse_parse_packhead),
(gst_mpeg_parse_loop), (gst_mpeg_parse_get_rate),
(gst_mpeg_parse_convert_src), (gst_mpeg_parse_handle_src_query),
(gst_mpeg_parse_handle_src_event), (gst_mpeg_parse_change_state):
* gst/mpegstream/gstmpegparse.h:
* gst/mpegstream/gstrfc2250enc.h:
Various changes to the way time is computed that make seeking and
total time estimation much better here.
Use G_BEGIN/END_DECLS instead of __cplusplus
* gst/videocrop/gstvideocrop.c: (gst_video_crop_chain):
Use gst_buffer_stamp instead of only copying the TIMESTAMP
Original commit message from CVS:
* ext/mad/Makefile.am:
* ext/mad/gstid3demuxbin.c: (gst_id3demux_bin_get_type),
(gst_id3demux_bin_base_init), (gst_id3demux_bin_class_init),
(gst_id3demux_bin_init), (gst_id3demux_bin_remove_pad),
(found_type), (gst_id3demux_bin_change_state):
* ext/mad/gstid3tag.c: (gst_id3_tag_add_src_pad),
(gst_id3_tag_init), (gst_id3_tag_handle_event),
(gst_id3_tag_src_link), (gst_id3_tag_chain),
(gst_id3_tag_change_state), (plugin_init):
* ext/mad/gstmad.h:
Add id3demuxbin (which is a simple bin consisting of id3demux
and typefind), take over rank from id3demux, remove typefind
code from id3demux. Makes all broken mp3s that I know of work,
and thereby fixes#152688.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/mad/gstmad.c: (gst_mad_src_event):
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event):
Allow seeks on audio pad, make mad forward those (#164826).
* gst/audioscale/gstaudioscale.c: (gst_audioscale_chain):
Set duration (#165335).
Original commit message from CVS:
Check environment variables GST_ID3V2_TAG_ENCODING,
GST_ID3_TAG_ENCODING and GST_TAG_ENCODING for a colon-separated
list of character encodings to force interpretation of non-unicode
strings stored in an ID3v2 tag to a particular encoding. If none
is specified, try to use current locale's encoding, then fall back
to ISO-8859-1 (which will always succeed). (Resolves#149274)
Check environment variables GST_ID3V1_TAG_ENCODING,
GST_ID3_TAG_ENCODING and GST_TAG_ENCODING for a colon-separated
list of character encodings to use in case a string encountered
in an ID3v1 tag is not valid UTF-8 already. If no encoding is
specified, try to use the current locale's encoding, then fall
back to ISO-8859-1 (which will always succeed).
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
- on half framerate, compute the rate in advance so the comparisons
don't compare wrong values
- don't use mad_synth/frame_mute anymore, this mirrors mad_decoder
behaviour
- don't use mad_header_decode anymore, mad_frame_decode does that
automatically
- when getting rid of consumed bytes, reset the stream's skiplen
(fixes#163867)
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_push),
(gst_a52dec_handle_event), (gst_a52dec_chain):
Add some debug output. Check that a discont has a valid
time associated.
* ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event),
(gst_alsa_sink_loop):
Ignore TAG events. A little extra debug for broken timestamps.
* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_init), (dvdnavsrc_loop),
(dvdnavsrc_change_state):
Ensure we send a discont to engage the link before we send any
other events.
* ext/dvdread/dvdreadsrc.c: (dvdreadsrc_init),
(dvdreadsrc_finalize), (_close), (_open), (_seek_title),
(_seek_chapter), (seek_sector), (dvdreadsrc_get),
(dvdreadsrc_uri_get_uri), (dvdreadsrc_uri_set_uri):
Handle URI of the form dvd://title[,chapter[,angle]]. Currently only
dvd://title works in totem because typefinding sends a seek that ends
up going back to chapter 1 regardless.
* ext/mpeg2dec/gstmpeg2dec.c:
* ext/mpeg2dec/gstmpeg2dec.h:
Output correct timestamps and handle disconts.
* ext/ogg/gstoggdemux.c: (get_relative):
Small guard against a null dereference.
* ext/pango/gsttextoverlay.c: (gst_textoverlay_finalize),
(gst_textoverlay_set_property):
Free memory when done. Don't call gst_event_filler_get_duration on
EOS events. Use GST_LOG and GST_WARNING instead of g_message and
g_warning.
* ext/smoothwave/gstsmoothwave.c: (gst_smoothwave_init),
(draw_line), (gst_smoothwave_dispose), (gst_sw_sinklink),
(gst_sw_srclink), (gst_smoothwave_chain):
Draw solid lines, prettier colours.
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init):
Add a default palette that'll work for some movies.
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_init),
(gst_dvd_demux_handle_dvd_event), (gst_dvd_demux_send_discont),
(gst_dvd_demux_send_subbuffer), (gst_dvd_demux_reset):
* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_send_discont),
(gst_mpeg_demux_parse_syshead), (gst_mpeg_demux_parse_pes):
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_init),
(gst_mpeg_parse_handle_discont), (gst_mpeg_parse_parse_packhead):
* gst/mpegstream/gstmpegparse.h:
Use PTM/NAV events when for timestamp adjustment when connected to
dvdnavsrc. Don't use many discont events where one suffices.
* gst/playback/gstplaybasebin.c: (group_destroy),
(gen_preroll_element), (gst_play_base_bin_add_element):
* gst/playback/gstplaybasebin.h:
Make sure we remove subtitles from the same bin we put them in.
* gst/subparse/gstsubparse.c: (convert_encoding), (parse_subrip),
(gst_subparse_buffer_format_autodetect),
(gst_subparse_change_state):
Fix some memleaks and invalid accesses.
* gst/typefind/gsttypefindfunctions.c: (ogganx_type_find),
(oggskel_type_find), (cmml_type_find), (plugin_init):
Some typefind functions for Annodex v3.0 files
* gst/wavparse/gstwavparse.h:
GstRiffReadClass is the correct parent class.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
Fail if caps negotiation fails. Should fix#162184, and should
definately be in there regardless of it fixing the actual bug.
* gst/avi/gstavimux.c: (gst_avimux_get_type), (gst_avimux_init),
(gst_avimux_write_tag), (gst_avimux_riff_get_avi_header),
(gst_avimux_riff_get_avix_header),
(gst_avimux_riff_get_video_header),
(gst_avimux_riff_get_audio_header), (gst_avimux_write_index),
(gst_avimux_start_file), (gst_avimux_handle_event),
(gst_avimux_change_state):
* gst/avi/gstavimux.h:
Refactor structure writing to use GST_WRITE_UINT macros, add
metadata writing support.
Original commit message from CVS:
Use NULL for an empty GList instead of g_list_alloc(); fix memory leaks; s/LCPM/LPCM/; use g_strdup_printf() instead of GString (easier to bulk free later)
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/mpeg2dec/gstmpeg2dec.c: (crop_buffer),
(gst_mpeg2dec_alloc_buffer):
* ext/mpeg2dec/gstmpeg2dec.h:
Crop if decoding size is not the actual image size (#163676).
Original commit message from CVS:
* ext/dvdread/stream_labels.c: new file
* ext/dvdread/stream_labels.h: new file
* ext/dvdread/Makefile.am:
* ext/dvdread/dvdreadsrc.c: (_seek_title):
Extract audio stream label from DVD IFO files.
It only dump them on the console for now, still have to
make playbin aware of them.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/mad/gstmad.c: (gst_mad_chain):
Don't call mad_stream_sync() directly after recovering sync.
Fixes#151661.
Original commit message from CVS:
* configure.ac:
Fix indentation, fix v4l2 plugin detection.
* ext/Makefile.am:
Fix libmms location (Maciej, use diff -u!).
* ext/alsa/gstalsa.c: (gst_alsa_init):
Initialize caps cache to NULL.
* gst/playback/gstplaybin.c: (gst_play_bin_change_state):
Only change state on audiosink if it exists.
Original commit message from CVS:
* configure.ac: add audioresample and cairo plugins. Remove
HAVE_MMX stuff, because it's not used.
* ext/Makefile.am: same
* ext/audioresample/Makefile.am: You are not ready for an
audio resampling element based on audioresample.
* ext/audioresample/gstaudioresample.c:
* ext/audioresample/gstaudioresample.h:
* ext/cairo/Makefile.am: You are not ready for overlay elements
based on cairo. Don't look too closely, these elements kinda
suck right now.
* ext/cairo/gstcairo.c: new
* ext/cairo/gsttextoverlay.c: new
* ext/cairo/gsttextoverlay.h: new
* ext/cairo/gsttimeoverlay.c: new
* ext/cairo/gsttimeoverlay.h: new
* gst-libs/gst/media-info/media-info-priv.h: fix compile
problem with compilers that don't support variadic macros.
Original commit message from CVS:
* ext/cdparanoia/gstcdparanoia.c: (cdparanoia_class_init),
(cdparanoia_set_property), (cdparanoia_get_property):
* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_class_init),
(dvdnavsrc_set_property), (dvdnavsrc_get_property):
* ext/dvdread/dvdreadsrc.c: (dvdreadsrc_class_init),
(dvdreadsrc_init), (dvdreadsrc_set_property),
(dvdreadsrc_get_property):
* sys/vcd/vcdsrc.c: (gst_vcdsrc_class_init),
(gst_vcdsrc_set_property), (gst_vcdsrc_get_property):
Synchronize property names where not yet the case. Devices are
now device=X, other versions are deprecated (but still exist).
Also use g_free() unconditionally.
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(setup_source), (gst_play_base_bin_get_property):
Expose source.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_init),
(gst_a52dec_handle_event), (gst_a52dec_update_streaminfo),
(gst_a52dec_handle_frame), (gst_a52dec_chain),
(gst_a52dec_change_state), (plugin_init):
* ext/a52dec/gsta52dec.h:
Do something useful with timestamps. Make chain-based (since
there's really no reason to be loopbased).
* gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry):
Update current_byte/frame correctly.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_loop),
(gst_a52dec_change_state):
Don't do sample adjusting anymore, we use float audio now.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_fixate):
Don't fixate to non-existing properties.