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:
* 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/interleave/deinterleave.c: (gst_deinterleave_class_init),
(gst_deinterleave_init), (gst_deinterleave_add_new_pads),
(gst_deinterleave_set_pads_caps), (gst_deinterleave_set_property),
(gst_deinterleave_get_property):
* gst/interleave/deinterleave.h:
Add a property to select whether channel positions should be kept on
the mono output buffers or should be dropped.
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:
* gst/interleave/deinterleave.c: (gst_deinterleave_finalize),
(gst_deinterleave_init), (gst_deinterleave_sink_event),
(gst_deinterleave_process), (gst_deinterleave_sink_activate_push):
* gst/interleave/deinterleave.h:
Queue events until src pads were added and they can be sent. Otherwise
downstream will never get the first newsegment event.
Original commit message from CVS:
* gst/interleave/deinterleave.c: (gst_deinterleave_sink_setcaps),
(gst_deinterleave_getcaps):
Always set the channel positions when gst_audio_get_channel_positions()
returns something, even if they're not set in the caps. This makes
sure that the output channels can be interleaved again correctly
in the mono/stereo cases too.
Don't ask for the peercaps of the current pad in getcaps() as this
might call getcaps() again and deadlock.
Original commit message from CVS:
* gst/interleave/Makefile.am:
* gst/interleave/deinterleave.c: (deinterleave_24),
(gst_deinterleave_finalize), (gst_deinterleave_base_init),
(gst_deinterleave_class_init), (gst_deinterleave_init),
(gst_deinterleave_add_new_pads), (gst_deinterleave_set_pads_caps),
(gst_deinterleave_set_process_function),
(gst_deinterleave_sink_setcaps), (__remove_channels),
(__set_channels), (gst_deinterleave_getcaps),
(gst_deinterleave_process), (gst_deinterleave_chain),
(gst_deinterleave_sink_activate_push):
* gst/interleave/deinterleave.h:
Add support for all raw audio formats and provide better negotiation
if the caps are changing.
Don't allow changes of the channel positions and set the position of
the corresponding channel on the src pad caps.
General cleanup and smaller bugfixes.
* tests/check/elements/deinterleave.c: (float_buffer_check_probe):
Check the channel positions on the output buffer caps.
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:
* gst/interleave/Makefile.am:
* gst/interleave/deinterleave.h:
* gst/interleave/interleave.h:
* gst/interleave/plugin.h:
Split definitions into separate header files for better documentation
generation.
* gst/interleave/deinterleave.c: (gst_deinterleave_base_init),
(gst_deinterleave_class_init), (gst_deinterleave_sink_setcaps),
(gst_deinterleave_process):
Don't use alloca, allow caps changes as long as the number of channels
does not change, don't use g_warning, return NOT_NEGOTIATED as early
as possible and some other cleanup.
* gst/interleave/interleave.c: (gst_interleave_base_init),
(gst_interleave_class_init):
Do some random cleanup.
* tests/check/Makefile.am:
* tests/check/elements/deinterleave.c: (GST_START_TEST),
(deinterleave_chain_func), (deinterleave_pad_added),
(deinterleave_suite):
Add unit tests for the deinterleave element.
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:
* 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:
* 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>
* 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:
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.