Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_add_stream), (gst_matroska_demux_query),
(gst_matroska_demux_element_query),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_handle_seek_event):
Handle position and duration query in DEFAULT format if the
pad's track has a default frame duration set.
Fix seeking now that the segment's duration doesn't contain the
(possibly wrong or inaccurate) duration of the Matroska file.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (_ext2dbl):
Use NAN constant instead of 0.0/0.0 if possible. NAN is defined
in math.h except on MSVC where it is defined in xmath.h.
Fixes compilation with MSVC.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_parse_info),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
Don't set the segment duration to the duration from the Matroska
header as this value could be wrong and is just informational.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_loop_stream_parse_id):
If no Tracks element is found until the first Cluster is found
search it and error out if none is found in the complete file.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_sync_streams):
Resync non-subtitle tracks too if a too large gap compared to other
tracks is detected.
Original commit message from CVS:
* tests/check/elements/avimux.c: (check_avimux_pad):
Adjust avimux unit test according to increased streamheader size.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header):
* gst/avi/gstavimux.h:
Add 8 bytes to current streamheader to make for a complete one
and to make more players happy. Fixes#519460.
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c::
Don't include unused gstv4l2xoverlay.h. Fixes build
in case where X11 headers are not installed.
Original commit message from CVS:
* ext/dv/gstdv.c: (plugin_init):
Marking rank of dvdec as GST_RANK_MARGINAL since it's the slowest
DV decoder available.
Fixes#532393
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_start):
Call getsockname() after the call to bind() to get updated values
for the port, etc. This fixes the usage of udpsrc on anonymous
binding and it's usage by rtspsrc. Fixes bugs #539372, #539548.
Thanks to Aurelien Grimaud for pointing out the obvious fix.
Original commit message from CVS:
Patch by: Jason Donenfeld <BugZilla at zx2c4 dot com>
* ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_got_headers_cb):
Fix HTTP auth support with user/password passed via the URI.
Fixes bug #540067.
Original commit message from CVS:
2008-06-23 Julien Moutte <julien@fluendo.com>
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_parse_blockgroup_or_simpleblock): Fix buggy
format strings in macros. (makes it build on OS X again...)
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_setcaps):
No need to check for audio/G723 and audio/32KADPCM here as they are
no longer supported.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_src_query), (gst_wavpack_parse_create_src_pad):
Use G_GINT64_CONSTANT, this fixes the duration query on files without
known length.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_audio_caps):
* gst/matroska/matroska-ids.h:
Fix demuxing of WavPack files. Muxing is still broken.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_track_free),
(gst_matroska_demux_add_mpeg_seq_header),
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_check_subtitle_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps),
(gst_matroska_demux_subtitle_caps):
* gst/matroska/matroska-ids.h:
Add a "vfunc" to the track context for postprocessing frames and
convert the wavpack and subtitle postprocessing to this vfunc.
Copy buffer flags in those functions to the new buffers too.
Parse CodecState elements of Blocks.
Add a postprocessing function for MPEG video that adds the sequence
header from the codec private data or codec state to the frames if
it's not already there.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
If a gap of more than 1/2 second is found in one stream send a
NEWSEGMENT event to not stall the pipeline if the gap is too large.
This also fixes Matroska files where the first buffer doesn't start
at timestamp 0. Fixes bug #429322.
The duration of a block is the default duration multiplied with the
number of laces. Every lace is one frame and the default duration
is the duration of one frame. This fixes playback of files that use
lacing for some tracks.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Update FIXME/TODOs and only ignore EOS at the central, important place
instead of several places.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_stream_from_num),
(gst_matroska_demux_encoding_cmp),
(gst_matroska_demux_encoding_order_unique),
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_tracknumber_unique),
(gst_matroska_demux_add_stream), (gst_matroska_demux_init_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_sync_streams), (gst_matroska_decode_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id),
(gst_matroska_demux_loop):
Improve debug output everywhere and fix the EOS logic.
Check the values of the ContentEncoding elements more strictly and
don't use tracks for which it's invalid.
Check that the track number is unique for this stream.
Check that seek positions are below G_MAXINT64 as our seeks are
int64-based and overflows will fail badly.
After seeks also don't push SimpleBlocks until the first one
containing a keyframe is found. Before this was done only for normal
Blocks.
Update some FIXME/TODOs.
* gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes),
(gst_ebml_read_utf8), (gst_ebml_read_header):
Improve debug output.
* gst/matroska/matroska-ids.c:
(gst_matroska_track_init_video_context):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_video_pad_setcaps):
Remove eye mode and don't parse it anymore. We can't use that
information in GStreamer yet so it's useless.
Original commit message from CVS:
* gst/rtsp/URLS:
Some more urls.
* gst/smpte/barboxwipes.c:
Add a comment
* tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh:
Fix typo, add audioresample to the pipeline.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_index_compare):
When comparing index elements with the same time compare their
block number.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_attached_file)
Init variable to NULL to avoid compiler warning.
Original commit message from CVS:
* gst/matroska/Makefile.am:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.c: (gst_matroska_register_tags):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska.c: (plugin_init):
Parse Attachments and post them as GST_TAG_IMAGE if we detect
it as image and otherwise as GST_TAG_ATTACHMENT. Include filename
and description of the attachments in the caps. Fixes bug #537622.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes):
Return GST_FLOW_UNEXPECTED instead of GST_FLOW_ERROR on short reads.
If we get less bytes than requested we can't do anything except doing
our EOS logic.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroskademux_do_index_seek),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_index_compare), (gst_matroska_demux_parse_index),
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.h:
Use a GArray for storing the Cue (i.e. seek) information, store
the CueTrackPositions for every track, store the block number
and optimize searching in the array by sorting it after the last
element was added.
Fix a small memory leak when trying to parse a tags element that was
already parsed.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_reset),
(gst_matroska_mux_start), (gst_matroska_mux_finish),
(gst_matroska_mux_write_data):
* gst/matroska/matroska-mux.h:
Don't write another SeekHead which indexes all Clusters to the end of
the file. This isn't useful for anything and just increases filesize.
Original commit message from CVS:
* gst/matroska/ebml-read.c:
* gst/matroska/ebml-read.h:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-demux.h:
Make sure that every Tags element is only parsed once and it's
containing tags are only posted once.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_peek_id),
(gst_ebml_read_header):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id):
Handle EBML elements like Void or CRC32 in the EbmlRead base class
already. They're not useful in the matroska parser and only cause
additional code.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_level_free),
(gst_ebml_finalize), (gst_ebml_read_change_state),
(gst_ebml_read_element_level_up), (gst_ebml_read_master):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Reverse the level list as we usually are only interested in the
first element or want to add a new first element. Having the
first element stored at the end and calling g_list_last() and
g_list_append() is more expensive.
Also use GSlice for allocating the GstEbmlLevel structs.
Original commit message from CVS:
* gst/debug/gsttaginject.c: (gst_tag_inject_finalize),
(gst_tag_inject_class_init), (gst_tag_inject_init):
Don't unref NULL taglist in finalize. Don't use c++ style
comments.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_metadata_id_simple_tag):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag),
(gst_matroska_mux_write_data):
Use gst_value_serialize() and gst_value_deserialize() for transforming
tags from some GType to a string and the other way around. The default
transformations in GLib don't include transformations from string to
number types.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
Only parse Tracks, SeekHead and SegmentInfo elements once but allow
Tags multiple times. The first ones can appear more than once but must
contain the same content as the first for backup purposes so we ignore
all but the first one. Tags can appear multiple times with different
content.
Jump to all elements except Clusters that are available from a
SeekHead to make it more likely to have all required informations
before getting to the first Clusters.
Add dummy functions for parsing Attachments and Chapters.
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init),
(gst_udpsrc_create), (gst_udpsrc_set_property),
(gst_udpsrc_get_property), (gst_udpsrc_start), (gst_udpsrc_stop):
* gst/udp/gstudpsrc.h:
Add property to control automatic join/leave of multicast groups.
Add G_LIKELY.
Remove setting caps on buffers explicitly, basesrc does that for us now.
Improve debug info.
Convert some non-fatal error into warnings.
Use g_ntohs for better portability.
Leave multicast groups when stopping.
When using external sockets, use getsockname() on them to fill up the
addr structure before calling methods that use the structure.
Should all fix#536903.
API: GstUDPSrc::auto-multicast property
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init_send),
(gst_multiudpsink_remove):
Fix a typo and do some small cleanups.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps):
Make the delivery-method mandatory on the caps and only accept inline
for now.
Reverse strcmp checks for delivery-method.
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps):
Make delivery method optional when parsing caps and note this in the
caps.
Reverse strcmp checks for delivery-method.
* gst/rtp/gstrtpvorbispay.c:
Update a comment to note that the delivery-method is optional,
Fixes#537675.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_mcast):
Set udpsrc for receiving data from multicast groups to PAUSED instead of
leaving them in READY. Fixes#537832.
Original commit message from CVS:
* gst/avi/gstavimux.c:
Simplify code. gst_tag_list_merge() does the NULL checks. Add a FIXME
for a random constant in tagmuxing code.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_request_new_pad),
(gst_matroska_mux_release_pad), (gst_matroska_mux_write_data):
Update the counter for the number of streams when pads are added or
removed. This will make sure that a seek table is generated for
files with just one audio stream.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_metadata_id_simple_tag):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag):
Add some more tags, improve debugging a bit and make sure that
GValue transformation has succeeded before using the result
as a tag.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtptheorapay.c:
The Theora RTP payloader only supports the "inline" delievery method
so let's declare this on the caps of the static pad template.
Fixes bug #537675.
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_fill_queues),
(gst_videomixer_blend_buffers):
Use stream_time to synchronize the object properties.
Use running_time of the master pad to timestamp outgoing buffers.
Fix the initial segment event to extend an unknown amount of time.
Fixes#537361.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream),
(gst_avi_demux_parse_index), (gst_avi_demux_massage_index),
(gst_avi_demux_calculate_durations_from_index),
(gst_avi_demux_stream_header_push),
(gst_avi_demux_stream_header_pull):
Try to ignore unparsable/unknown streams and give a warning instead of
erroring out. Fixes#537377.
Original commit message from CVS:
* gst/matroska/ebml-write.c: (gst_ebml_write_float):
Use GDOUBLE_TO_BE() instead of (probably slower) custom code.
* gst/matroska/matroska-demux.c: (gst_matroska_demux_base_init),
(gst_matroska_demux_class_init), (gst_matroska_demux_init),
(gst_matroska_track_free), (gst_matroska_demux_encoding_cmp),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_add_stream),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_init_stream),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_add_wvpk_header), (gst_matroska_decode_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id),
(gst_matroska_demux_loop), (gst_matroska_demux_video_caps),
(gst_matroska_demux_audio_caps),
(gst_matroska_demux_subtitle_caps):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.c:
(gst_matroska_track_init_subtitle_context):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init),
(gst_matroska_mux_class_init), (gst_matroska_mux_init),
(gst_matroska_mux_create_uid), (gst_matroska_mux_reset),
(gst_matroska_mux_video_pad_setcaps),
(gst_matroska_mux_audio_pad_setcaps),
(gst_matroska_mux_subtitle_pad_setcaps),
(gst_matroska_mux_request_new_pad),
(gst_matroska_mux_track_header), (gst_matroska_mux_start),
(gst_matroska_mux_write_simple_tag), (gst_matroska_mux_finish),
(gst_matroska_mux_write_data), (gst_matroska_mux_collected),
(gst_matroska_mux_set_property):
Add many FIXMEs/TODOs all over the matroska muxer and demuxer
elements, do some checks for valid values in the demuxer, handle
tracktimecodescale in the demuxer, set correct default values for all
settings in the demuxer, review and add all missing matroska
IDs and some more raw YUV formats, and some trivial cleanup.
Original commit message from CVS:
* ext/pulse/pulsemixer.c: (gst_pulsemixer_base_init),
(gst_pulsemixer_class_init):
* ext/pulse/pulsesink.c: (gst_pulsesink_base_init),
(gst_pulsesink_class_init), (gst_pulsesink_prepare):
* ext/pulse/pulsesrc.c: (gst_pulsesrc_interface_supported),
(gst_pulsesrc_base_init), (gst_pulsesrc_class_init),
(gst_pulsesrc_prepare):
Some smaller cleanup. Use G_PARAM_STATIC_STRINGS,
gst_element_class_set_details_simple() and fix coding style a bit
more.
Original commit message from CVS:
Patch by: Brian Cameron <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_get_volume),
(gst_sunaudiomixer_ctrl_set_volume):
Improvements for the SunAudio mixer by handling mute as no gain
for tracks that have a gain property but no mute property.
Fixes bug #536067.
Original commit message from CVS:
Patch by: Benjamin Kampmann <benjamin at fluendo dot com>
* ext/cdio/gstcdio.c: (gst_cdio_get_cdtext),
(gst_cdio_add_cdtext_album_tags):
* ext/cdio/gstcdio.h:
* ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_open):
Also extract album title and album genre from CD-TEXT if
available (#537021).
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_negotiate):
Improve negotiation a bit more by picking the smallest possible
resolution that is larger than the resolution specified in the
first caps entry of the peer caps. Fixes bug #536994.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init),
(gst_v4l2src_fixate), (gst_v4l2src_negotiate):
Provide a custom negotiation function to make sure to pick the highest
possible framerate and resolution. Fixes bug #536646.
Original commit message from CVS:
* ext/taglib/Makefile.am::
Add -Wno-attributes to CXXFLAGS to suppress warning caused by
taglib headers (with gcc 4.3.1).
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink):
Use the new gst_rtsp_connection_get_ip() to access the IP address
of a GstRTSPConnection since it is a private member.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_extract_picture_buffer):
* gst/id3demux/id3v2frames.c: (parse_picture_frame):
Use new utility functions in libgsttag to process coverart (#512333).
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_write):
We actually support left/side, right/side and mid/side files. The
conversion to normal, interleaved stereo is done by libflac.
Original commit message from CVS:
* gst/matroska/ebml-write.c: (gst_ebml_write_finalize),
(gst_ebml_write_set_cache):
Unref the write cache in finalize if it was set and add add "FIXME"
to a comment that needs it.
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_query_duration),
(gst_videomixer_query_latency):
When using gst_element_iterate_pads() one has to unref every pad
after usage.
Original commit message from CVS:
2008-05-31 Julien Moutte <julien@fluendo.com>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_find_keyframe),
(gst_qtdemux_find_segment), (gst_qtdemux_perform_seek),
(gst_qtdemux_seek_to_previous_keyframe),
(gst_qtdemux_activate_segment), (gst_qtdemux_loop): Make sure we
we don't clip the segment's stop using the main segment duration
as
that could crop quite some video frames. Make reverse playback
support
more robust and support edit lists. Support seeking to the last
frame,
and fix reverse looping playback. Add some debugging.
* win32/common/config.h: Updated.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c:
(gst_iir_equalizer_transform_ip):
Don't clip float/double samples, correctly unset passthrough mode
and use better rounding for integer samples.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c:
(gst_iir_equalizer_band_set_property), (gst_iir_equalizer_init),
(setup_filter), (set_passthrough), (update_coefficients),
(gst_iir_equalizer_compute_frequencies),
(gst_iir_equalizer_transform_ip):
* gst/equalizer/gstiirequalizer.h:
Update the filter coefficients only when needed in the transform_ip
function and correctly set the element into passthrough mode if the
gain of all bands is 0.
Original commit message from CVS:
Based on patch by: Sebastian Keller <sebastian-keller at gmx dot de>
* gst/alpha/gstalpha.c: (gst_alpha_class_init), (gst_alpha_init),
(gst_alpha_set_property), (gst_alpha_get_property),
(gst_alpha_chroma_key_ayuv), (gst_alpha_chromakey_row_i420):
Try to skip pixels or areas that are too dark or too bright for us to do
meaningfull color detection.
Added properties to control the sensitivity to light and darkness.
Added some small cleanups. Fixes#512345.
Original commit message from CVS:
* docs/plugins/.cvsignore:
* tests/check/elements/.cvsignore:
Ignore some more generated things
* tests/check/Makefile.am:
Ignore OSS elements in the state changes test too.
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:
Add SMPTE effect elements to docs.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* ext/raw1394/gstdv1394src.c:
Document whats first shown on the fdo plugin docs page :)
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_reset),
(gst_videomixer_init), (gst_videomixer_query_duration),
(gst_videomixer_query_latency), (gst_videomixer_query),
(gst_videomixer_blend_buffers):
* gst/videomixer/videomixer.h:
Implement position (in time), duration and latency queries.
Original commit message from CVS:
Patch by: j^ <j at oil21 dot org>
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add caps for DVCPRO50 and DVCPRO HD PAL/NTSC. See #526481.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm dot com dot hk>
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format):
Fix potential caps leak.
If we can't get the framerate with an ioctl, try to get it with the
current norm. Fixes#520092.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm dot com dot hk>
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size):
If we fail to get the frame intervals, simply don't touch the framerates
on the template caps instead of discarding the format. See #520092.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm dot com dot hk>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure),
(gst_v4l2_get_caps_info):
Add NV12, NV21 and bayer support. See #520092.
Original commit message from CVS:
* ext/flac/Makefile.am:
* ext/flac/gstflacdec.c: (gst_flac_dec_write):
Set the channel layout when decoding FLAC files with more than 2
channels as defined by the FLAC spec. Fixes bug #534570.
Also don't try to decode left/side, right/side and mid/side files
as we don't support this at all.
Original commit message from CVS:
* gst/udp/Makefile.am:
Add -D_GNU_SOURCE to CFLAGS so we get things like EAI_ADDRFAMILY
when including netdb.h when building against glibc >= 2.8.
Original commit message from CVS:
2008-05-22 Julien Moutte <julien@fluendo.com>
* gst/smpte/gstsmptealpha.c: (gst_smpte_alpha_setcaps): Fix
debug statement arguments.
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_setup_qos_dscp):
* gst/udp/gstudpnetutils.c: (gst_udp_join_group),
(gst_udp_leave_group): Fix IP and IPV6 options to make it work
on more platforms.
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init_send),
(gst_multiudpsink_add_internal):
* gst/udp/gstudpnetutils.c: (gst_udp_set_loop_ttl),
(gst_udp_join_group):
* gst/udp/gstudpnetutils.h:
* gst/udp/gstudpsrc.c: (gst_udpsrc_start):
Joining a multicast group and setting the loop/ttl properties are
totally unrelated tasks are must be separated.
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init),
(gst_multiudpsink_setup_qos_dscp), (gst_multiudpsink_add_internal):
* gst/udp/gstmultiudpsink.h:
Add a fixme for the auto-multicast property.
Fix some confusing debug messages.
Disable setting a qos value by default.
Original commit message from CVS:
Patch by: Gustaf Räntilä <g dot rantila at gmail dot com>
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render):
Ignore EPERM errors from sendto. Fixes#533619.
Original commit message from CVS:
Patch by: Henrik Eriksson <henriken at axis dot com>
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init),
(gst_multiudpsink_init), (gst_multiudpsink_setup_qos_dscp),
(gst_multiudpsink_set_property), (gst_multiudpsink_get_property),
(gst_multiudpsink_init_send), (gst_multiudpsink_add_internal):
* gst/udp/gstmultiudpsink.h:
Add qos-dscp property to manage the Quality of service.
Original commit message from CVS:
Patch by: Bruno Santos <brunof at ua dot pt>
* gst/udp/gstudpnetutils.c: (gst_udp_get_addr),
(gst_udp_join_group), (gst_udp_leave_group),
(gst_udp_is_multicast):
* gst/udp/gstudpnetutils.h:
Provide a bunch of helper methods to deal with IPv4 and IPv6
transparently.
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init),
(gst_multiudpsink_init), (gst_multiudpsink_set_property),
(gst_multiudpsink_get_property), (join_multicast),
(gst_multiudpsink_init_send), (gst_multiudpsink_add_internal),
(gst_multiudpsink_remove):
* gst/udp/gstmultiudpsink.h:
Add multicast TTL and loopback properties.
Use the helper methods to implement ip4 and ip6.
* gst/udp/gstudpsrc.c: (gst_udpsrc_create), (gst_udpsrc_start):
* gst/udp/gstudpsrc.h:
Use the helper methods to implement ip4 and ip6.
Fixes#515962.
Original commit message from CVS:
Patch by: Patrick Radizi <patrick dot radizi at axis dot com>
* gst/multipart/multipartdemux.c: (gst_multipart_demux_class_init),
(gst_multipart_demux_get_gstname),
(gst_multipart_find_pad_by_mime), (gst_multipart_demux_chain):
* gst/multipart/multipartdemux.h:
Don't blindly copy the mime-type as the caps name because they not
always map directly. Instead use a hashtable with common mappings.
Fixes#533287.
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_write):
When we post an error, we must return -1 to let the parent know that we
cannot write the segment else it will loop and continue to call us again
forever. Patch by Michael Meeks.
Original commit message from CVS:
* gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_class_init),
(gst_rtp_h264_depay_init), (gst_rtp_h264_depay_set_property),
(gst_rtp_h264_depay_get_property), (gst_rtp_h264_depay_setcaps),
(gst_rtp_h264_depay_process):
* gst/rtp/gstrtph264depay.h:
Add experimental support for outputting quicktime-like AVC output in
addition to the existing bytestream output.
* gst/rtp/gstrtph264pay.c: (gst_h264_scan_mode_get_type),
(gst_rtp_h264_pay_class_init), (gst_rtp_h264_pay_init),
(gst_rtp_h264_pay_setcaps), (gst_rtp_h264_pay_payload_nal),
(gst_rtp_h264_pay_handle_buffer), (gst_rtp_h264_pay_set_property),
(gst_rtp_h264_pay_get_property):
* gst/rtp/gstrtph264pay.h:
Make the parsing mode configurable, for some inputs we don't need to
scan every byte for start codes.
Only set the marker bit on ACCESS units.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c:
Use a bigger type in integer mode for the intermediate results to
prevent overflows. This fixes the crippled sound when using the
equalizer in integer mode. Fixes bug #510865.
Original commit message from CVS:
* gst/videomixer/videomixer.c:
* gst/videomixer/videomixer.h:
Instead of a random number for the request pad id's,
use a counter.
Register the videomixerpad class from the element's class_init
where it's safer, and allows the docs generator to scan it.
Original commit message from CVS:
* gst/smpte/Makefile.am:
* gst/smpte/gstsmpte.c: (gst_smpte_plugin_init):
* gst/smpte/gstsmpte.h:
* gst/smpte/gstsmptealpha.c:
(gst_smpte_alpha_transition_type_get_type),
(gst_smpte_alpha_get_type), (gst_smpte_alpha_base_init),
(gst_smpte_alpha_class_init), (gst_smpte_alpha_update_mask),
(gst_smpte_alpha_setcaps), (gst_smpte_alpha_get_unit_size),
(gst_smpte_alpha_init), (gst_smpte_alpha_finalize),
(gst_smpte_alpha_do_ayuv), (gst_smpte_alpha_do_i420),
(gst_smpte_alpha_transform), (gst_smpte_alpha_set_property),
(gst_smpte_alpha_get_property), (gst_smpte_alpha_plugin_init):
* gst/smpte/gstsmptealpha.h:
* gst/smpte/plugin.c: (plugin_init):
Add new plugin that adds the SMPTE transition in the alpha channel of
I420 and AYUV frames so that they can be blended with videomixer later
on. Uses all niceties such as using base transform for efficient alloc
and negotiation. It currently requires GstController to control the
position in the transition effect.
Original commit message from CVS:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/gst-plugins-good-plugins.interfaces:
* docs/plugins/gst-plugins-good-plugins.types:
* gst/videomixer/videomixer.c:
Try using thaytans new mechanism to get extra classes into plugin
docs. Aparently works for the Eq. For VideoMixer the GObject stuff is
missing still.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_audsink_set_caps):
Set proper rate in avi stream header for PCM audio, and also do some
more sanity checks on caps in this case. Fixes#511489.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
Don't include the gstv4l2xoverlay.h header as the XOverlay support
isn't implemented at all yet and this requires X headers to be
installed. Fixes bug #533264.
Original commit message from CVS:
* ext/wavpack/gstwavpackstreamreader.c:
* tests/examples/spectrum/demo-audiotest.c:
* tests/examples/spectrum/demo-osssrc.c:
Fix some compiler warnings.
Original commit message from CVS:
* gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_process):
Small comment added.
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_class_init),
(gst_rtp_h264_pay_decode_nal), (gst_rtp_h264_pay_parse_sps_pps),
(gst_rtp_h264_pay_payload_nal), (gst_rtp_h264_pay_handle_buffer):
Debug string cleanups (remove trailing \n)
Refactor and clean up the payloader a bit and make sure that we only
put one NAL unit in an RTP packet even if the input buffer contains
multiple NAL units.
Add suport for AVC format input.
Original commit message from CVS:
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_class_init),
(gst_rtp_h264_pay_finalize), (gst_rtp_h264_pay_handle_buffer),
(gst_rtp_h264_pay_set_property), (gst_rtp_h264_pay_get_property):
* gst/rtp/gstrtph264pay.h:
Make it possible to specify profile-level-id and sprop-parameter-sets
using properties in case they are not available in-stream.
Original commit message from CVS:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/inspect/plugin-ladspa.xml:
Remove ladspa fro plugin-docs, its in gst-plugins-bad.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_start_file):
Send an initial BYTE segment to inform downstream of later seeking,
and to forego sync attempts.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_push_dvd_clut_change_event):
Convert subtitle palette info in VobSub private data from VobSub's
(buggy) RGB to YUV.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_pad_reset):
Do not leave fourcc stream header field empty upon reset.
Fixes#519301.
Original commit message from CVS:
Based on patch by: Wouter Cloetens <wouter at mind be>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_skip_lws), (gst_rtspsrc_unskip_lws),
(gst_rtspsrc_skip_commas), (gst_rtspsrc_skip_item),
(gst_rtsp_decode_quoted_string),
(gst_rtspsrc_parse_digest_challenge), (gst_rtspsrc_parse_auth_hdr),
(gst_rtspsrc_setup_auth):
Support Digest authentication. Fixes#532065.
Original commit message from CVS:
* gst/level/gstlevel.c:
Also support 32bit (e.g. whe having it after 'mad'). Add more notes
about whats needed for liboil acceleration. Simplify docs a bit.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/matroska/matroska-mux.c: (gst_matroska_mux_collected):
Update the track duration if the old one was invalid.
Fixes bug #532117.
Original commit message from CVS:
* gst/rtp/gstrtph264pay.c (gst_rtp_h264_pay_parse_sps_pps):
Use GST_STR_NULL when trying to print sps and pps strings that could
be NULL, as this might crash on some platforms.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_setup_ddraw):
Do IDirectDrawClipper_SetHWnd() if the window ID has already been
set after creating the clipper.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame):
Added checking of surface lost case after an unsuccessful
IDirectDrawSurface7_Lock() call.
If surface is lost, return GST_FLOW_OK.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame,
WndProc, gst_directdraw_sink_window_thread):
Improved Windows message loop and fixed window destruction issue.
When the window which DirectDraw is rendering to is destroyed, the
render/show_frame function will return GST_FLOW_ERROR.
Partially fixes#520885.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_set_caps):
Fixed mid stream resolution change bug, the offscreen surface is now
released when set_caps is called.
Partially fixes#520885.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c
(gst_directdraw_sink_buffer_alloc):
Make it so that gst_directdraw_sink_buffer_alloc uses the right
width/height.
Especially when looking through the pool of buffers, make sure that
the width/height of caps is used instead of the already negotiated
dimensions.
For example if a buffer with different caps is requested, i.e.
higher resolution, the caller would get a buffer with the old
dimensions and thus corrupt the heap.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c
(gst_directdraw_sink_buffer_alloc):
Clear the flags on recycled buffers from buffer_alloc.
Partially fixes#520885.
Original commit message from CVS:
* gst/rtp/gstrtpilbcpay.c:
Added missing stdlib.h include for strtol(), and made include ordering and
style consistent with the corresponding depayloader.
Original commit message from CVS:
* ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_reset),
(gst_gconf_audio_src_change_state):
* ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset),
(gst_gconf_video_sink_change_state):
* ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_reset),
(gst_gconf_video_src_change_state):
* ext/gconf/gstswitchsink.c: (gst_switch_sink_reset),
(gst_switch_commit_new_kid), (gst_switch_sink_change_state):
When we can't create a fakesink/fakesrc complain instead of unreffing
NULL pointers and crashing later. See bug #530535.
Original commit message from CVS:
* gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_process):
Add some more debug info and guard against small payloads.
* gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_process):
Set duration on outgoing buffers because we can.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* ext/speex/gstspeexenc.c: (gst_speex_enc_sink_getcaps),
(gst_speex_enc_init), (gst_speex_enc_chain):
Add negotiation for the speex channels and rate. Fixes#465146.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_class_init),
(gst_rtp_speex_pay_getcaps):
Add negotiation for the speec channels and rate. See #465146.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_class_init),
(gst_rtpilbcpay_sink_setcaps), (gst_rtpilbcpay_sink_getcaps):
Add negotiation for the ILBC mode. See #465146.
Original commit message from CVS:
Patch by: Youness Alaoui <youness.alaoui at collabora co uk>
* gst/udp/gstudpsrc.c: (gst_udpsrc_create):
Don't error out if we get an ICMP destination-unreachable
message when trying to read packets on win32 (#529454).
Original commit message from CVS:
* configure.ac:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Use new error code for encrypted streams (which requires core CVS).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_videosrc_template),
(gst_qtdemux_audiosrc_template):
Fix swapped pad template names, spotted by Thiago Sousa Santos.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_sink_event),
(speex_dec_chain_parse_data):
Produce concealment data when time progresses in a segment update.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data),
(speex_dec_chain):
Try to preserve input timestamps when we can.
Do beginnings of error concealment.
Original commit message from CVS:
2008-04-28 Julien Moutte <julien@fluendo.com>
* gst/debug/rndbuffersize.c: (gst_rnd_buffer_size_loop): Fix printf
format to pacify Mac OSX's gcc.
Original commit message from CVS:
* gst/debug/rndbuffersize.c: (DEFAULT_SEED), (DEFAULT_MIN),
(DEFAULT_MAX), (src_template), (sink_template),
(gst_rnd_buffer_size_base_init), (gst_rnd_buffer_size_class_init),
(gst_rnd_buffer_size_init), (gst_rnd_buffer_size_activate),
(gst_rnd_buffer_size_loop), (gst_rnd_buffer_size_plugin_init):
Bring rndbuffersize element into a state that doesn't require us
to move it to -bad immediately. For one, fix up default min/max
values so that the element actuall works using the default values.
Also, don't ignore flow return values and do some kind of minimal
eos logic. Allow min=max to pull fixed-sized buffers. Bunch of
other gratuitious clean-ups.
Original commit message from CVS:
* gst/rtp/gstasteriskh263.c: (gst_asteriskh263_chain):
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_add_internal):
* gst/udp/gstudpsrc.c: (gst_udpsrc_start):
Use GLib versions of htonl, htons, ntohl and ntohs in order
to avoid problems on win32 (#529707).
Original commit message from CVS:
Patch by: Jesús Corrius <jesus at softcatala org>
* gst/goom/filters.c: (zoomVector):
* gst/goom/goom_core.c: (init_buffers):
Fix build with mingw32: use rand() instead of random() and
replace bzero() with memset(). Fixes#529692.
Original commit message from CVS:
* tests/check/elements/multifile.c:
Include stdlib.h and unistd.h for mkdtemp. Some platforms have it
declared in the former, some have it declared in the latter.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (request_pt_map),
(gst_rtspsrc_configure_caps):
Ref caps as the return value for the request_pt_map signal.
Remove some caps weirdness when configuring a stream. See #528245.
Original commit message from CVS:
* tests/check/Makefile.am:
Disable some more elements in the state test.
Add a define so the soup test can find the test files
it needs at runtime.
* tests/check/elements/souphttpsrc.c: (run_server):
Add a define so the soup test can find the test files
it needs at runtime.
Original commit message from CVS:
* gst/goom/plugin_info.c: (setOptimizedMethods):
Disable altivec optimisations for 32-bit PPC as well to make
things build properly on all PPC systems. Fixes#528143
Original commit message from CVS:
* ext/soup/gstsouphttpsrc.c: (plugin_init):
Give souphttpsrc GST_RANK_PRIMARY to make it the default HTTP source
over gnome-vfs and everything else. Fixes bug #527848.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_header):
Fix bounds checking of mode in Speex header, which may
produce negative numbers in speex < 1.1.12
Original commit message from CVS:
* gst/goom/ppc_drawings.s:
* gst/goom/ppc_zoom_ultimate.s:
Change license of these files to LGPL, as permitted by the
author, Guillaume Borios. See #515073.
Original commit message from CVS:
* gst/goom/convolve_fx.c:
* gst/goom/motif_goom1.h:
* gst/goom/motif_goom2.h:
As hinted in Bug #518213, revert one change and fix warnings properly.
This fixes both #518213 and #520073 for me.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_seek):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop):
Fix the Forte build by making function declaration signatures
match the implementations.
Original commit message from CVS:
* sys/oss/gstosshelper.c: (gst_oss_helper_rate_check_rate):
* sys/oss/gstosssink.c: (gst_oss_sink_reset):
* sys/oss/gstosssrc.c: (gst_oss_src_reset):
More logging when probing (see #518474), some comments in _reset().
Original commit message from CVS:
2008-04-07 Julien Moutte <julien@fluendo.com>
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_setcaps): Fix build
because of a bad argument number.
Original commit message from CVS:
* tests/icles/.cvsignore:
* tests/icles/Makefile.am:
* tests/icles/gdkpixbufsink-test.c:
Interactive test app for gdkpixbufsink.
Original commit message from CVS:
* ext/hal/hal.c: (gst_hal_get_alsa_element):
Don't munge device string to 'default:x' for capture devices.
Fixes#525833.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_index_entry_free):
Always use GSlice as we actually depend on GLib 2.12 already.
Original commit message from CVS:
* configure.ac:
Require core/base 0.10.18 for ARGB caps parsing fixes in libgstvideo.
Also bump the GLib requirement to the current de-facto requirement
(ie. 2.12).
Original commit message from CVS:
* gst/rtp/gstrtph264pay.c: (encode_base64),
(gst_rtp_h264_pay_setcaps), (gst_rtp_h264_pay_handle_buffer):
* gst/rtp/gstrtph264pay.h:
Parse codec_data for future AVC compatibility.
Fail when we encounter AVC data for now.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init),
(gst_spectrum_init), (gst_spectrum_set_property),
(gst_spectrum_get_property), (gst_spectrum_message_new):
Rename property enums and default defines for the properties to match
the property names and rephrase property descriptions to make them a
bit clearer (hopefully). See #518188.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/gdkpixbufsink.c:
Add unit test for gdkpixbufsink element.
Original commit message from CVS:
* tests/check/pipelines/.cvignore:
Remove useless file.
* tests/check/pipelines/.cvsignore:
Add new test to .cvsignore.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/pipelines/wavpack.c: (bus_handler),
(identity_handoff), (fakesink_handoff), (GST_START_TEST),
(wavpack_suite), (main):
Add unit test that encodes and decodes some data, checks that it
is still the same and that all timestamps/offsets are perfect.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init):
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_index_entry_new),
(gst_wavpack_parse_index_entry_free),
(gst_wavpack_parse_base_init),
(gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset):
Use GSlice for allocating index entries and use
gst_element_class_set_details_simple().
Original commit message from CVS:
Based on patch by: mersad <mersad at axis dot com>
* gst/law/alaw-decode.c: (gst_alaw_dec_sink_setcaps),
(gst_alaw_dec_chain), (gst_alaw_dec_change_state):
* gst/law/alaw-decode.h:
* gst/law/alaw-encode.c: (gst_alaw_enc_chain):
* gst/law/mulaw-decode.c: (mulawdec_sink_setcaps),
(gst_mulawdec_chain), (gst_mulawdec_change_state):
* gst/law/mulaw-decode.h:
* gst/law/mulaw-encode.c: (gst_mulawenc_chain):
Make negotiation a bit modern.
Use pad_alloc. Fixes#525359.
Original commit message from CVS:
Patch by: Brian Cameron <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_get_volume),
(gst_sunaudiomixer_ctrl_set_volume):
* sys/sunaudio/gstsunaudiomixertrack.c: (gst_sunaudiomixer_track_new):
Fix up the mixer tracks to use a volume range of 0-255, which is what
the sun audio API uses. This simplifies the code and avoids rounding
errors. Fixes#524593.
Original commit message from CVS:
Based on patch by: William M. Brack <wbrack at mmm com hk>
* sys/v4l2/v4l2src_calls.c: (fractions_are_equal),
(gst_v4l2src_set_capture):
Check whether the device supports setting the framerate before
trying to set it and then posting a warning or error if it doesn't
work (#516649, #520092). Also compare fractions more correctly.
Original commit message from CVS:
* gst/goom/Makefile.am:
Remove ppc assembler optimisations from the build until they
actually build (they also seem to have GPL headers).
Original commit message from CVS:
2008-03-18 Andy Wingo <wingo@pobox.com>
* sys/osxvideo/osxvideosink.m
(gst_osx_video_sink_osxwindow_destroy)
(gst_osx_video_sink_osxwindow_new): Actually set a lock on the
task, whoopdee.
(cocoa_event_loop): Pacify the taymans by upping the usleepage to
2 ms.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm com hk>
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size),
(gst_v4l2src_probe_caps_for_format):
Make sure the probed frame sizes are reversed in the resulting
caps also when using V4L2_FRMSIZE_STEPWISE (so they end up
highest resolution first); also remove unused variable.
(Partly fixes#520092)
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_finalize):
Call WSAStartup() and WSACleanup before using the Winsock API.
See #520808.
Original commit message from CVS:
* gst/goom/plugin_info.c:
* gst/goom/ppc_zoom_ultimate.h:
Small fixes to build more on PPC: ifdef out code that uses unknown
define; add newline at end of header file to avoid compiler warning.
Assembler code still doesn't build though.
Original commit message from CVS:
* gst/avi/gstavidemux.c:
Fix up my last commit. Use G_GUINT32_FORMAT for the guint32 debug log.
Also downgrade a GST_WARNING to GST_DEBUG and add a comment.
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw skynet be>
* sys/oss/gstosssrc.c: (gst_oss_src_init), (gst_oss_src_getcaps),
(gst_oss_src_close):
* sys/oss/gstosssrc.h:
Cache probed caps, so _get_caps() during recording doesn't cause
ioctl calls which may disrupt the recording (fixes#521875).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek),
(gst_qtdemux_activate_segment),
(gst_qtdemux_prepare_current_sample),
(gst_qtdemux_loop_state_movie), (qtdemux_parse_trak):
Make sure we always send a DISCONT after a seek by setting the sample
index to an undefined value after a seek.
Original commit message from CVS:
* gst/avi/gstavisubtitle.h: (GST_IS_AVI_SUBTITLE),
(GST_IS_AVI_SUBTITLE_CLASS):
Fix up IS_FOO macros, which makes gtk-doc much happier.
Original commit message from CVS:
* gst/matroska/ebml-ids.h:
Add ID for EBML CRC32 elements.
* gst/matroska/Makefile.am:
* gst/matroska/ebml-read.c: (gst_ebml_finalize),
(gst_ebml_read_class_init), (gst_ebml_read_peek_bytes),
(gst_ebml_read_get_length), (_ext2dbl), (gst_ebml_read_float),
(gst_ebml_read_header):
Support reading 80bit floats, add finalize method to clean up
in any case, support reading length/id elements with any length
as long as it's smaller than our supported maximum, don't leak
buffers if reading as much data as we wanted failed and some
smaller cleanup.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_process):
Check that a buffer is large enough before reading from it.
Fixes bug #521102.
Original commit message from CVS:
* configure.ac:
* gst/audiofx/Makefile.am:
* gst/audiofx/audiochebband.c:
* gst/audiofx/audiocheblimit.c:
* gst/audiofx/math_compat.h:
Check for sinh(), cosh() and asinh() and define our own
implementations if they're not available. Fixes bug #520880.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* ext/speex/gstspeexenc.c: (gst_speex_enc_chain):
Unref the buffers only once when handling not-negotiated errors.
Fixes bug #520764.
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* gst/udp/gstudpsrc.c: (gst_udpsrc_finalize), (gst_udpsrc_start),
(gst_udpsrc_stop):
Properly balance WSA_Cleanup with WSA_Startup.
Also make the poll controllable on windows. Fixes#520888.
Original commit message from CVS:
* gst/matroska/ebml-read.c:
Use GINT64 formatting constants from GLIB.
* gst/matroska/matroska-demux.c:
Add some guards to avoid a possible division by 0 and crashing
with NULL events on some systems.
Use gst_gdouble_to_guint64 somewhere instead of an implicit
conversion.
* gst/matroska/matroska-mux.c:
Check for invalid timestamps in a bunch of places to avoid
writing bogus durations into the output file.
Fix some double<->gint64 conversions that weren't using
gst_guint64_to_gdouble
Original commit message from CVS:
* configure.ac:
Move the checks for bison, flex and as to the program section and the
check for gcc inline asm to the compiler characteristics section.
Original commit message from CVS:
* configure.ac:
Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which
plug-ins are included/excluded. (#498222)
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_blend_buffers):
Don't call gst_object_sync_values() unless we have a valid timestamp.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c:
Fix Dirac mapping. I had previously added a VfW-type
mapping, but it looks like Dirac will get a native Matroska
mapping, and this is the most likely method.
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/udp/gstudpsrc.c: (gst_udpsrc_init), (gst_udpsrc_create),
(gst_udpsrc_get_property), (gst_udpsrc_start), (gst_udpsrc_unlock),
(gst_udpsrc_unlock_stop), (gst_udpsrc_stop):
* gst/udp/gstudpsrc.h:
Port to GstPoll. See #505417.
Original commit message from CVS:
* gst/law/mulaw-decode.c: (gst_mulawdec_chain):
Return GST_FLOW_NOT_NEGOTIATED when the caps are not set
yet on the srcpad. We need rate and channels before we
can do any processing. Fixes bug #519088.
Original commit message from CVS:
* configure.ac:
Detect and indicate if GCC inline assembly syntax is
available.
* gst/goom/Makefile.am:
* gst/goom/convolve_fx.c:
* gst/goom/flying_stars_fx.c:
* gst/goom/goom_config.h:
* gst/goom/goom_core.c:
* gst/goom/goomsl.c:
* gst/goom/ifs.c:
* gst/goom/mmx.c:
* gst/goom/plugin_info.c:
* gst/goom/xmmx.c:
Fix various GCC-isms, and only build the inline assembly
with compilers that support GCC inline assembly.
Fix a couple of other warnings shown with Forte.
Original commit message from CVS:
* gst/goom/xmmx.c:
Use 'emms' instead of 'femms' to not crash on cpus that do not
implement this 3dnow specific instruction.
Original commit message from CVS:
* gst/goom/plugin_info.c: (setOptimizedMethods):
Use extended MMX for draw_line() too if available, not only
normal MMX.
Original commit message from CVS:
* gst/goom2k1/Makefile.am:
* gst/goom2k1/gstgoom.c:
Rename the installed library, and don't register the same
GType name as the new goom.
Original commit message from CVS:
* configure.ac:
* ext/taglib/Makefile.am:
Check for and define ERROR_CXXFLAGS and use them when building
C++ code (#516509).
Original commit message from CVS:
* gst/goom/gstgoom.c: (goom_debug), (plugin_init):
* gst/goom/plugin_info.c: (goom_debug), (GST_CAT_DEFAULT),
(setOptimizedMethods):
Call oil_init(), otherwise oil_get_cpu_flags() won't return
anything useful. Export goom debug category so we can get
rid of the VERBOSE define and the printfs.
Original commit message from CVS:
* gst/goom/Makefile.am: Don't compile lex or yacc outputs
with warnings, but add other CFLAGS
* gst/goom/goomsl.c (gsl_instr_set_namespace),
(gsl_instr_add_param), (iflow_execute), (gsl_enternamespace),
(calculate_labels), (gsl_read_file):
* gst/goom/goomsl_lex.l:
* gst/goom/goomsl_yacc.y:
* gst/goom/plugin_info.c: Remove a few live printf, and
fprintf, replace exit() calls with g_assert_not_reached()
if it not optimal for a library
Original commit message from CVS:
* gst/goom/Makefile.am: Remove the warnings being disabled,
fix linkage on x86, spotted by Sebastian Dröge
<slomo@circular-chaos.org>
* gst/goom/convolve_fx.c (convolve_init),
(create_output_with_brightness), (convolve_apply):
* gst/goom/filters.c (zoomFilterVisualFXWrapper_create):
* gst/goom/goomsl.c:
* gst/goom/ifs.c (ifs_update), (ifs_visualfx_create):
* gst/goom/plugin_info.c:
* gst/goom/tentacle3d.c (tentacle_fx_create):
Fix warnings, and disable the motifs in the convolve_fx
plugin (they were causing warnings, and they were just
"Goom" in funny letterring)
Original commit message from CVS:
2008-02-23 Bastien Nocera <hadess@hadess.net>
* configure.ac: Add checks for Flex/Yacc/Bison and other
furry animals, for the new goom 2k4 based plugin
* gst/goom/*: Update to use goom 2k4, uses liboil to detect
CPU optimisations (not working yet), move the old plugin to...
* gst/goom2k1/*: ... here, in case somebody is sick enough
Fixes#515073
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams):
Post the server response code in an error message instead of a generic
'error' message. Fixes#517237.
Original commit message from CVS:
* tests/check/Makefile.am:
Ignore gconfaudiosrc for the states unit test too. It will fallback
to alsasrc if the gconf settings can't be read and not everybody has
alsa.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query),
(gst_wavpack_parse_create_src_pad):
* ext/wavpack/gstwavpackparse.h:
Always report the duration if we know it in push mode and don't
return 0 just to make totem believe we can't seek in push mode.
Newer totem version use the SEEKING query which properly reports
if we can seek or not.
Original commit message from CVS:
Patch by: Jens Granseuer <jensgr at gmx dot net>
* tests/examples/equalizer/demo.c: (main):
C89 fix, moving variable declarations to the beginning of
the block. Fixes bug #517933.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream):
Init values to -1 instead of the default 0 value.
Fixes#516524.
Original commit message from CVS:
* tests/examples/spectrum/spectrum-example.c:
Add missing include to fix compilation when libxml usage is disabled.
Fixes: #516371
Original commit message from CVS:
patch by: Wim Taymans <wim.taymans@collabora.co.uk>
fixes: #514889
* gst/rtp/gstrtph264pay.c:
* gst/rtp/gstrtpmp4gdepay.c:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4gpay.h:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtpvorbispay.c:
Fix various leaks shown up in valgrind
- free sprops and buffer in error cases in H264 payloader
- fix leak in mp4g depayloader when construction the caps
- don't leak config string in the mp4g payloader
- don't leak buffers and headers in theora and vorbis payloaders
* tests/check/elements/rtp-payloading.c:
Fix the RTP data test
- Actually send valid amr data to the payloader instead of 20
zero-bytes
- The mp4g payloader expects codec_data on the caps
Original commit message from CVS:
* win32/MANIFEST:
Add libgstpng.dsp to MANIFEST.
* win32/vs6/libgstaudiofx.dsp:
Add new source files to VS project file.
Original commit message from CVS:
* sys/ximage/gstximagesrc.c:
Initialise variables when opening the X display rather
than in _start(), as the display can be opened before that.
Fixes: #515985
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize),
(gst_v4l2_buffer_class_init), (gst_v4l2_buffer_pool_finalize),
(gst_v4l2_buffer_pool_class_init):
Chain up the finalize functions. Fixes bug #515984.
Original commit message from CVS:
* sys/ximage/ximageutil.c:
Chain up in the finalize function for our custom
buffer sub-class.
Patch by: Sebastian Dröge <slomo@circular-chaos.org>
Fixes: #515706
Original commit message from CVS:
* sys/ximage/gstximagesrc.c:
Free allocated Damage memory before closing our connection to the
X server. Fixes: #515706
Original commit message from CVS:
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain):
* tests/check/Makefile.am:
* tests/check/gst-plugins-good.supp:
Add a few libjpeg suppressions and initialize a variable to
make smokeenc valgrind clean. Fixes bug #515701.
Original commit message from CVS:
* gst/avi/gstavidemux.c:
Revert patch which sends timestamps only on keyframes, as it
breaks playback with current gst-ffmpeg.
Fixes: #515562
Original commit message from CVS:
* gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_create):
* tests/check/elements/multifile.c: (GST_START_TEST):
Close some memory leaks spotted by the unit test. Fixes bug #515697.
Original commit message from CVS:
* ext/gconf/gconf.c: (gst_gconf_render_bin_with_default):
Use and unset the GError when pipeline creation fails instead of
simply leaking it. Fixes bug #515704.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* gst/spectrum/gstspectrum.c:
* tests/examples/spectrum/.cvsignore:
* tests/examples/spectrum/Makefile.am:
* tests/examples/spectrum/spectrum-example.c:
Add a simple example application for the spectrum element, include it
in the docs, and fix some documentation ambiguities.
Fixes: #348085
Original commit message from CVS:
* gst/equalizer/Makefile.am:
* gst/spectrum/Makefile.am:
Fix includes order
* tests/check/Makefile.am:
Exclude v4l2src from the states test - it takes too long to start.
* tests/check/elements/spectrum.c:
Make the test run properly with CK_FORK=no
Original commit message from CVS:
2008-02-08 Julien Moutte <julien@fluendo.com>
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock): Flag
keyframe and delta units correctly when dealign with a
BlockGroup.
Fixes: #514397
Original commit message from CVS:
* gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_create):
Need to use gsize here for the size, fixes compiler warning.
* tests/examples/equalizer/.cvsignore:
* tests/examples/equalizer/Makefile.am:
* tests/examples/spectrum/.cvsignore:
* tests/examples/spectrum/Makefile.am:
Add missing files to fix the build.
Original commit message from CVS:
* configure.ac:
Only build with DISABLE_DEPRECATED during the CVS cycle. Pre-releases
are treated like releases and build without it.
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/gst-plugins-good-plugins.args:
* docs/plugins/inspect/plugin-audiofx.xml:
* gst/audiofx/Makefile.am:
* gst/audiofx/audiofx.c:
* gst/audiofx/audiowsincband.c:
* gst/audiofx/audiowsincband.h:
* gst/audiofx/audiowsinclimit.c:
* gst/audiofx/audiowsinclimit.h:
* tests/check/Makefile.am:
* tests/check/elements/audiowsincband.c:
* tests/check/elements/audiowsinclimit.c:
Move the lpwsinc and bpwsinc elements from gst-plugins-bad into
the audiofx plugin, and rename to audiowsinclimit and audiowsincband
respectively.
Fixes: #467666
Original commit message from CVS:
* gst/icydemux/gsticydemux.c: (gst_icydemux_chain):
* tests/check/elements/icydemux.c:
Return GST_FLOW_NOT_NEGOTIATED if we get a buffer without
caps, and add a somewhat useful debug message. Plus test.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c:
Include unistd.h only if HAVE_UNISTD_H is defined
* win32/common/config.h.in:
* win32/common/config.h:
Define socklen_t as it seems it's not defined in default
Visual Studio headers.
* win32/vs6/libgstalpha.dsp:
* win32/vs6/libgstapetag.dsp:
* win32/vs6/libgstavi.dsp:
* win32/vs6/libgstrtp.dsp:
* win32/vs6/libgstrtsp.dsp:
* win32/vs6/libgstvideomixer.dsp:
Update project file dependencies and add new source files
Original commit message from CVS:
Patch by: Bjarne Rosengren <bjarne at axis dot com>
* gst/matroska/ebml-write.c: (gst_ebml_write_element_push):
Don't leak buffers when we don't push them downstream.
Fixes bug #514965.
Original commit message from CVS:
* configure.ac:
Bump requirements to (good) released versions to avoid
confusion and make implicit core requirement explicit.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex):
If there's no entries in the subindex, don't try to do anything stupid,
just return.
Original commit message from CVS:
Patch by: John Millikin <jmillikin at gmail dot com>
* ext/flac/gstflacdec.c: (gst_flac_dec_scan_for_last_block),
(gst_flac_extract_picture_buffer), (gst_flac_dec_metadata_callback):
Fix extraction of picture blocks with newer libflac versions again:
FLAC__METADATA_TYPE_PICTURE is an enum, not a define (#513628).
Original commit message from CVS:
* tests/check/Makefile.am:
Add rtp-payloading test to VALGRIND_TO_FIX.
* tests/check/elements/rtp-payloading.c:
Add semicolons after GST_TEST_END so gst-indent gets the
formatting right; make test less verbose in general, but
more verbose in the error case (which should probably
make the test fail anyway).
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:
* gst/avi/gstavisubtitle.c:
Add documentation for avisubtitle and change class to
Codec/Parser/Subtitle
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
Treat ENOTTY (driver does not implement ioctl) the same as
EINVAL since it implies there are no available standards.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format),
(gst_v4l2src_get_nearest_size):
Replace gst_v4l2src_get_size_limits with 2 calls to new function
gst_v4l2src_get_nearest_size, and get it to use VIDIOC_S_FMT to
probe if the driver does not support VIDIOC_TRY_FMT for whatever
reason, and if we aren't yet actively capturing.
* sys/v4l2/v4l2src_calls.h:
Remove replaced function declaration.
Original commit message from CVS:
* gst/alpha/Makefile.am:
* gst/alpha/gstalpha.c:
Re-write the 'alpha' plugin to be BaseTransform based, simplifying
some stuff, and making buffer-alloc and resizing work automatically.
No longer crashes on odd frame widths and heights, although there
seems to be a disagreement with ffmpegcolorspace about what size
an AYUV frame with odd height should be.
Original commit message from CVS:
Patch by: Alessandro Decina <alessandro at nnva dot org>
* ext/libpng/gstpngenc.c: (user_write_data), (gst_pngenc_chain):
* ext/libpng/gstpngenc.h:
Preallocate the output buffer so that g_memdup() and
gst_buffer_merge() aren't needed anymore. This greatly improves
performances and fixes#512544.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry),
(gst_avi_demux_stream_data):
GStreamer timestamps are PTS values while AVI only knows about DTS
timestamps. Make sure we only copy the DTS as the buffer timestamp when
we are dealing with a key frame.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/rtp-payloading.c:
Add add testsuite for the rtp-payloader that tries simulating
dataflow. Needs more test data.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpinfo):
Use g_ascii_strtoll() instead of atoll, which is only
available in C99.
Original commit message from CVS:
* tests/check/Makefile.am:
Fix up some CFLAGS sets.
Don't include gconfvideosrc in the states test.
* tests/check/elements/autodetect.c: (GST_START_TEST):
Add some error strings to fail_unless arguments to fix some weird
compiler errors on Solaris.
Original commit message from CVS:
* configure.ac:
Detect video4linux headers on Solaris too.
* sys/v4l2/gstv4l2colorbalance.h:
* sys/v4l2/gstv4l2object.h:
* sys/v4l2/v4l2_calls.c:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize),
(gst_v4l2_buffer_new):
Make v4l2 build on Solaris.
Patch by: Brian Cameron <brian.cameron at sun dot com>
Fixes: #510505
Original commit message from CVS:
Based on a patch by:
Victor STINNER <victor dot stinner at haypocalc dot com>
* gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers):
Set variable to NULL after freeing it to prevent double frees
or make failures by another use of it afterwards more obvious
and fix use of it after the freeing.
Original commit message from CVS:
* ext/flac/gstflacdec.c:
Fix compilation against flac 1.1.2 (as on debian stable), where
the picture metadata defines and structs don't exist yet.
Fixes#509301.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init),
(gst_multiudpsink_init), (gst_multiudpsink_set_property),
(gst_multiudpsink_get_property), (gst_multiudpsink_init_send),
(gst_multiudpsink_add_internal), (gst_multiudpsink_remove):
* gst/udp/gstmultiudpsink.h:
Add property to automatically join a multicast group or not. This can be
useful when sharing a socket between multiple elements.
Fixes#509531.
Original commit message from CVS:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* sys/osxvideo/osxvideosink.h:
Revert previous change caused by a file that got stuck on an old
revision.
Original commit message from CVS:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* gst/multipart/Makefile.am:
* gst/multipart/multipartdemux.c:
* gst/multipart/multipartdemux.h:
* gst/multipart/multipartmux.c:
* gst/multipart/multipartmux.h:
Re-add multipartdemux to the docs. Last round of section cleanup.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* sys/osxaudio/gstosxaudiosink.h:
* sys/osxvideo/osxvideosink.h:
Managed to resolve most unused declarations. Filed a bug for one left.
Original commit message from CVS:
As found by: Tommi Myöhänen <ext-tommi.myohanen nokia com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpinfo):
Use atoll to parse the rtptime with enough precision. Fixes#509329.
Original commit message from CVS:
* gst/avi/gstavisubtitle.c: (gst_avi_subtitle_extract_file):
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send):
Initialise variables to work around (false) 'foo might be used
uninitialized in this function' warnings by gcc-3.3.3 (#509298).
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_extract_picture_buffer):
* gst/id3demux/id3v2frames.c: (parse_picture_frame):
Generate the image-type values correctly. Leave them out of the caps
when outputting a "preview image" tag, since it only makes sense
to have one of those - the type is irrelevant.
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_open):
If we can, mark the mixer multiple open when we use it, in case
(for some reason) the process wants to open it again elsewhere.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps):
* gst/rtp/gstrtptheorapay.c:
Fix the clock rate to 90000 as required by the RFC.
Fixes#508644.
Original commit message from CVS:
* tests/check/elements/icydemux.c: (GST_START_TEST), (icydemux_suite):
Don't use deprecated GST_PLUGIN_DEFINE_STATIC.
Original commit message from CVS:
* autogen.sh:
Add -Wno-portability to the automake parameters to stop warnings
about GNU make extensions being used. We require GNU make in almost
every Makefile anyway.
* configure.ac:
Use AM_PROG_CC_C_O as a compiler that accepts both -c and -o
at the same time is required for per target flags.
Original commit message from CVS:
Based on patch by: Tommi Myöhänen <ext-tommi.myohanen nokia com>
* gst/id3demux/id3v2frames.c: (parse_comment_frame):
Make sure the ISO 639-X language code in ID3v2 COMM frames
is actually valid UTF-8 (or rather: ASCII), so we don't end
up with non-UTF8 strings in tags if there's garbage in the
language field. Also make sure the language code is always
lower case. Fixes: #508291.
Original commit message from CVS:
* Makefile.am:
Include lcov.mak to allow builging coverage reports. Guard
check-torture target like in the other packages.
Original commit message from CVS:
reviewed by: Edward Hervey <edward.hervey@collabora.co.uk>
* gst/videomixer/videomixer.c:
(gst_videomixer_set_master_geometry), (_do_init),
(gst_videomixer_child_proxy_get_child_by_index),
(gst_videomixer_child_proxy_get_children_count),
(gst_videomixer_child_proxy_init), (gst_videomixer_reset),
(gst_videomixer_init), (gst_videomixer_request_new_pad),
(gst_videomixer_release_pad), (gst_videomixer_fill_queues):
Implement GstChildProxy interface.
Send newsegment at the right moment
Fixes#488879
Original commit message from CVS:
* gst/alpha/Makefile.am:
* gst/alpha/gstalpha.c: (gst_alpha_class_init), (gst_alpha_init),
(gst_alpha_sink_event), (gst_alpha_chain),
(gst_alpha_change_state), (plugin_init):
Make the various properties of 'alpha' controllable. This allows doing
niceties like fade-in/fade-out.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (COMMON_VIDEO_CAPS_NO_FRAMERATE),
(videosink_templ):
Also fix up pad templates to indicate that image/jpeg doesn't
absolutely require the framerate property to be set (#504081).
Original commit message from CVS:
Based on patch by: Wouter Cloetens <wouter at mind be>
* gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps),
(gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad),
(gst_matroska_mux_finish), (gst_matroska_mux_collected):
* gst/matroska/matroska-mux.h:
Keep track of first and last timestamps for each incoming stream,
so we can calculate the total duration for live sources and other
input where we can't query the duration from the start or where
there's no constant framerate from which we can deduce the
duration; also use calculated/observed duration if it is bigger
than the previously queried duration. Furthermore, use
gst_pad_query_peer_duration() and take into account that it may
return TRUE but still a duration of CLOCK_TIME_NONE, which easily
screws up comparisons when using unsigned integers. Fixes#504081.
Original commit message from CVS:
* configure.ac:
* gst/audiofx/audioamplify.c:
(gst_audio_amplify_clipping_method_get_type),
(gst_audio_amplify_init), (gst_audio_amplify_transform_ip):
* gst/audiofx/audiodynamic.c: (gst_audio_dynamic_init),
(gst_audio_dynamic_transform_ip):
* gst/audiofx/audioinvert.c: (gst_audio_invert_init),
(gst_audio_invert_transform_ip):
* gst/audiofx/audiopanorama.c: (gst_audio_panorama_init),
(gst_audio_panorama_transform):
* gst/level/gstlevel.c: (gst_level_init):
Make elements GST_BUFFER_FLAG_GAP aware and call
gst_base_transform_set_gap_aware for this.
Bump core requirement to CVS.
* gst/audiofx/audiochebyshevfreqband.c:
(gst_audio_chebyshev_freq_band_transform_ip):
* gst/audiofx/audiochebyshevfreqlimit.c:
(gst_audio_chebyshev_freq_limit_transform_ip):
Also sync GObject properties to the controller if operating
in passthrough mode.
Original commit message from CVS:
2008-01-05 Julien Moutte <julien@fluendo.com>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_set_window_id),
(gst_directdraw_sink_set_caps),
(gst_directdraw_sink_change_state),
(gst_directdraw_sink_buffer_alloc),
(gst_directdraw_sink_draw_borders),
(gst_directdraw_sink_show_frame),
(gst_directdraw_sink_setup_ddraw),
(gst_directdraw_sink_window_thread),
(gst_directdraw_sink_get_ddrawcaps),
(gst_directdraw_sink_surface_create): Make sure we create our
internal window only when we need it. That will give a chance to
the application to get the prepare-xwindow-id bus message. Draw
black borders when keeping aspect ratio. Handle the case where
our
rendering window disappears (closed or errors) like other sinks
do. Various 80 columns fixes, improve state change order. That
element could need some more love.
Original commit message from CVS:
* ext/taglib/gstapev2mux.h:
* ext/taglib/gstid3v2mux.h:
Remove useless typedefs without new type name. Fixes a warning with
gcc 4.3.
Original commit message from CVS:
Patch by: John Millikin <jmillikin at gmail dot com>
* ext/flac/gstflacdec.c: (gst_flac_dec_setup_seekable_decoder),
(gst_flac_dec_setup_stream_decoder),
(gst_flac_normalize_picture_mime_type),
(gst_flac_extract_picture_buffer),
(gst_flac_dec_metadata_callback):
Emit metadata messages when a PICTURE block is encountered.
Fixes#506715.
Original commit message from CVS:
* gst/avi/gstavi.c:
increase rank because no known issues anymore ...
* gst/avi/gstavisubtitle.c:
send subtitle name to the srcpad
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_open):
* gst/rtsp/gstrtspsrc.h:
Implement redirect for the DESCRIBE reply. Fixes#506025.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_write):
Fix 'xyz may be used uninitialized' compiler warnings caused
by broken g_assert_not_reached() macro in GLib-2.15.x and don't
abort() in any case but properly report the error.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_loop):
* gst/wavparse/gstwavparse.c: (gst_wavparse_chain):
* sys/ximage/gstximagesrc.c: (composite_pixel):
Fix 'xyz may be used uninitialized' compiler warnings caused
by broken g_assert_not_reached() macro in GLib-2.15.x (it's
not really nice to abort in any case). Fixes#505745.
Original commit message from CVS:
* tests/check/elements/avisubtitle.c: (check_correct_buffer):
Small unit test fix (has no practical impact at the moment,
since we're only feeding utf8 and hence just create a sub-
buffer for the output).
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_reset_decoders),
(gst_flac_dec_update_metadata), (gst_flac_dec_metadata_callback),
(gst_flac_dec_write):
* ext/flac/gstflacdec.h:
Remove some unused vars.
Do more cleanup of leftover events and tags.
Output tags after the segment event. Fixes#504018.
Original commit message from CVS:
* gst/avi/gstavisubtitle.c: (IS_BOM_UTF8), (IS_BOM_UTF16_BE),
(IS_BOM_UTF16_LE), (IS_BOM_UTF32_BE), (IS_BOM_UTF32_LE),
(gst_avi_subtitle_extract_file), (gst_avi_subtitle_parse_gab2_chunk):
Detect other UTF byte order markers and convert to UTF-8 as
appropriate.
Original commit message from CVS:
* gst/avi/gstavisubtitle.c: (src_template),
(gst_avi_subtitle_extract_utf8_file),
(gst_avi_subtitle_parse_gab2_chunk), (gst_avi_subtitle_chain),
(gst_avi_subtitle_base_init), (gst_avi_subtitle_class_init),
(gst_avi_subtitle_init), (gst_avi_subtitle_change_state):
* gst/avi/gstavisubtitle.h:
Refactor a bit; fix name extraction; don't assume all the data
in the chunk is actually subtitle data, there may be padding at
the end; fix GST_ELEMENT_ERROR usage; store extracted subtitle
file so it's there to send again after a seek (for future use).
Original commit message from CVS:
* gst/avi/Makefile.am:
* gst/avi/gstavi.c:
* gst/avi/gstavisubtitle.c:
* gst/avi/gstavisubtitle.h:
* tests/check/Makefile.am:
* tests/check/elements/avisubtitle.c:
* win32/common/config.h:
Add avi subtitle element for bug #442034. Need seeking support
and more support for character conversion.
Original commit message from CVS:
* Makefile.am:
Include common/win32.mak for CRLF check of win32 project
files (see #393626).
* win32/vs6/libgstpng.dsp:
Fix line endings and do cvs admin -kb.
Original commit message from CVS:
* ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain):
Actually drop the buffers which are outside the currently configured
segment instead of just emitting a WARNING.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_metadata_callback),
(gst_flac_dec_write):
* ext/flac/gstflacdec.h:
Send segments from the streaming thread. Fixes#502187.
Fix segment seeking and a bunch of other seeking cases.
Original commit message from CVS:
* gst/id3demux/id3v2frames.c: (parse_url_link_frame):
Parse WOAF frames and put the result into GST_TAG_CONTACT,
which is where it would end up if the same information was
put in a vorbis comment (don't think it's worth adding a
new URI tag for this). Fixes#488112.
Original commit message from CVS:
Patch by: Wai-Ming Ho <webregbox at yahoo dot co dot uk>
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_init),
(gst_rtp_h264_pay_finalize), (gst_rtp_h264_pay_setcaps),
(next_start_code), (is_nal_equal), (gst_rtp_h264_pay_decode_nal),
(encode_base64), (gst_rtp_h264_pay_parse_sps_pps),
(gst_rtp_h264_pay_handle_buffer):
* gst/rtp/gstrtph264pay.h:
Use higher performance start-code searching.
Parse NALs and store SPS, PPS and profile in the caps so that they can
be used in the SDP. Fixes#502814.
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list):
Init some structs to zero before we pass them to ioctl, which
avoids valgrind warnings. Also fix a small memory leak.
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* gst/multipart/multipartdemux.c: (gst_multipart_demux_chain):
Copy timestamp from input to output. Not very perfect yet but better
than nothing. Fixes#503023.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
Also print a useful error message with the old Wavpack API
if possible.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c:
More build fixes for old libwavpack versions: include config.h so
that WAVPACK_OLD_API is actually defined as detected; only use
WavpackGetErrorMessage if it is available. This fixes the build
on debian stable for me.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_create_src_pad):
Workaround the non-existance of WavpackGetChannelMask in Wavpack
versions below 4.40.0.
Original commit message from CVS:
Based on a patch by: Kwang Yul Seo <kwangyul dot seo at gmail dot com>
* configure.ac:
* ext/cairo/gsttimeoverlay.c:
(gst_cairo_time_overlay_print_smpte_time):
Fix compilation with MSVC by using gst_util_guint64_to_gdouble()
and checking for rint() and implementing it ourself if it doesn't
exist.
Original commit message from CVS:
* sys/oss/gstosshelper.c:
Verify that the format returned after the ioctl is the one
we requested. It is valid for the ioctl to succeed while
substituting an alternate 'supported' sample format.
Original commit message from CVS:
* sys/oss/gstossaudio.c: (plugin_init):
* sys/oss/gstosssink.c: (gst_oss_sink_open):
* sys/oss/gstosssrc.c: (gst_oss_src_open):
Post decent (and translated) error message when we can't
open the audio device for some reason.
Original commit message from CVS:
* sys/oss/gstosssink.c:
* sys/oss/gstosssrc.c:
Allow the AUDIODEV environment variable to redirect us
to a different default OSS device, like sunaudiosink does
on Solaris (makes audio play automatically on SunRays).
Original commit message from CVS:
* gst/audiofx/audioamplify.c: (gst_audio_amplify_transform_ip):
* gst/audiofx/audiochebyshevfreqband.c:
(gst_audio_chebyshev_freq_band_transform_ip):
* gst/audiofx/audiochebyshevfreqlimit.c:
(gst_audio_chebyshev_freq_limit_transform_ip):
* gst/audiofx/audiodynamic.c: (gst_audio_dynamic_transform_ip):
* gst/audiofx/audioinvert.c: (gst_audio_invert_transform_ip):
The transform_ip() methods should do nothing if in passthrough mode.
It might get non-writable buffers in that case but the buffer might
as well be writable.
* gst/audiofx/audiopanorama.c: (gst_audio_panorama_transform):
The transform() methods won't be called in passthrough mode and
otherwise the buffer is always writable so don't check here.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (gst_wavparse_srcpad_event):
Fix seeking in .wav files again (#501775). Some people seem to think
they don't need to test their changes when they're just 'reflowing'
some code.
Original commit message from CVS:
* gst/autodetect/gstautovideosink.c:
(gst_auto_video_sink_class_init), (gst_auto_video_sink_dispose),
(gst_auto_video_sink_init),
(gst_auto_video_sink_create_element_with_pretty_name),
(gst_auto_video_sink_find_best),
(gst_auto_video_sink_set_property),
(gst_auto_video_sink_get_property):
* gst/autodetect/gstautovideosink.h:
Fix docs.
Use same error reporting code as autoaudiosink.
Add property to filter sinks based on caps. Only select raw video sinks
by default for backwards compat.
API: GstAutoVideoSink::filter-caps
Original commit message from CVS:
Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_class_init), (gst_auto_audio_sink_dispose),
(gst_auto_audio_sink_init), (gst_auto_audio_sink_find_best),
(gst_auto_audio_sink_set_property),
(gst_auto_audio_sink_get_property):
* gst/autodetect/gstautoaudiosink.h:
Add property to filter sinks based on caps. Only select raw audio sinks
by default for backwards compat. Fixes#417420.
API: GstAutoAudioSink::filter-caps
Original commit message from CVS:
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_class_init),
(gst_rtp_h263_depay_process):
Code beautification.
Added debug statements.
Don't bit-shift everything, just do operations on last/first byte
instead.
Original commit message from CVS:
Patch by: Jayarama S. Santana <sundarsantana at gmail dot com>
* gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_process):
Fix wrong comparison in overrun check. Fixes#499239 some more.
Original commit message from CVS:
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_init),
(gst_rtp_h263_depay_process):
* gst/rtp/gstrtph263depay.h:
Fix h263 depayloader so that ANY h263 decoder can handle the outgoing
stream.
Original commit message from CVS:
Based on Path by: Jayarama S. Santana <sundarsantana at gmail dot com>
* gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_setcaps),
(gst_rtp_mp4a_depay_process):
* gst/rtp/gstrtpmp4adepay.h:
Fix depayloading when multiple frames are inside one RTP packet.
Fixes#499239.
Original commit message from CVS:
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_process):
Read the I flag for Mode A h263 rtp stream and set the
GST_BUFFER_FLAG_DELTA_UNIT accordingly.
Fixes#499383