2008-10-27 Stefan Kost * gst/autodetect/Makefile.am: * gst/autodetect/gstautoaudiosink.c: * gst/autodetect/gstautoaudiosrc.c: * gst/autodetect/gstautoaudiosrc.h: * gst/autodetect/gstautodetect.c: * gst/autodetect/gstautovideosink.c: * gst/autodetect/gstautovideosrc.c: * gst/autodetect/gstautovideosrc.h: Implement src plugins. Little code/string cleanup in the sinks. Fixes #523813. 2008-10-27 Sebastian Dröge Patch by: Peter Kjellerstedt * gst/matroska/matroska-mux.c: (gst_matroska_mux_reset), (gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad): Fix a memory leak when pads are requested but the pipeline never goes into PLAYING. Correctly remove request pads, no matter if they have collected data or not. Fixes bug #557710. 2008-10-27 Sebastian Dröge Patch by: * gst/udp/gstudpnetutils.h: Define the correct WINVER so getaddinfo() can be used when using mingw32. Fixes bug #557294. 2008-10-27 Sebastian Dröge Patch by: * gst/udp/gstdynudpsink.c: (gst_dynudpsink_render): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render): * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Fix "argument type mismatch" compiler warnings on Windows. Fixes bug #557293. 2008-10-27 Sebastian Dröge * gst/equalizer/gstiirequalizer.c: (update_coefficients): Don't calculate the filter coefficients for every single buffer but only when it's needed. Fixes bug #557260. 2008-10-26 Jan Schmidt * configure.ac: Back to development -> 0.10.11.1 2008-10-25 Jan Schmidt * gst-plugins-good.doap: Fix version number of 0.10.11 release in doap file === release 0.10.11 === 2008-10-24 Jan Schmidt * configure.ac: releasing 0.10.11, "Secondary Consideration" 2008-10-24 Jan Schmidt * configure.ac: Commit 0.10.10.4 pre-release 2008-10-21 Jan Schmidt * gst/avi/gstavimux.c: Fix VPRP chunk setup in avimux. Fixes: #556010 Patch By: Mark Nauwelaerts 2008-10-21 Jan Schmidt * gst/videobox/gstvideobox.c: support dynamically changing properties in videobox Fixed: #557085 Patch By: Wim Taymans 2008-10-16 Jan Schmidt * configure.ac: 0.10.10.3 pre-release 2008-10-16 Jan Schmidt * tests/check/Makefile.am: Don't run the states test on pulsesrc and pulsesink 2008-10-16 Jan Schmidt * configure.ac: Commit 0.10.10.2 pre-release bump that actually went out on 2008-10-11 2008-10-15 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan): Skip entries for streams that don't have a output pad yet, thereby avoiding calling pad functions with a NULL pad. Fixes #556424 2008-10-15 Edward Hervey * gst/qtdemux/qtdemux.c: Remove previous wrong commit * tests/check/elements/icydemux.c: (icydemux_found_pad): Remove problematic and useless refcount check. Fixes #556381 2008-10-15 Edward Hervey * gst/qtdemux/qtdemux.c: (qtdemux_parse_node): Remove problematic and useless refcount check. Fixes #556381 2008-10-10 Jan Schmidt * ext/flac/gstflacdec.c (gst_flac_dec_read_stream): * ext/flac/gstflacenc.c (gst_flac_enc_write_callback): Cast some size_t arguments to guint to avoid compiler warnings on 64-bit systems. 2008-10-09 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_event): Return TRUE instead of FALSE from the event handler when we swallowed the event. 2008-10-08 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_index): Reset header state. Fixes #555321. 2008-10-08 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index): * gst/avi/gstavidemux.h: For timestamping audio packets we need to take into account the amount of blocks in one entry using the blockalign. Fixes some sync issues with zero-padded audio blocks in the beginning of avi files. 2008-10-08 Wim Taymans * gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_class_init), (gst_multi_file_src_query): Implement DEFAULT and BUFFER position queries. See #555260. 2008-10-08 Edward Hervey * sys/ximage/gstximagesrc.c: (gst_ximage_src_stop): Fix build for systems that don't have XDamage. 2008-10-07 Wim Taymans * tests/examples/rtp/client-H263p.sdp: * tests/examples/rtp/client-H263p.sh: * tests/examples/rtp/server-VTS-H263p.sh: Add some more H263p server and client examples. 2008-10-03 Tim-Philipp Müller * configure.ac:: Depend on released versions of core and base. 2008-10-03 Wim Taymans * ext/pulse/pulsesink.c: (gst_pulsesink_write): * ext/pulse/pulsesrc.c: (gst_pulsesrc_read): Return -1 instead of 0 in error cases. Fixes #554771. 2008-10-03 Wim Taymans * sys/ximage/gstximagesrc.c: (gst_ximage_src_start), (gst_ximage_src_stop), (gst_ximage_src_ximage_get): Stop leaking the cursor image. Unref the last_ximage and the cached cursor image on shutdown. Fixes #551570. 2008-10-03 Wim Taymans * sys/v4l2/gstv4l2object.h: Getting the Class from an instance is not just a matter of casting it to the class struct but it involves calling G_OBJECT_GET_CLASS on the instance. Fixes #549784. 2008-10-01 Michael Smith * configure.ac: Fix libs for linking directsound. * sys/directsound/gstdirectsoundsink.c: Fix buffer sizing to prevent racing the ringbuffer at startup. Add volume property. 2008-09-27 Jan Schmidt * ext/pulse/pulsesink.c: Fix problems with pulsesink randomly erroring with code 'OK' after a format change on the stream by waiting when disconnecting the stream. 2008-09-26 Wim Taymans * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_class_init), (gst_rtp_amr_depay_process): Mark DISCONT on output buffers when the marker bit signals a new talk spurt. * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_handle_buffer): Set the marker bit for buffers with a DISCONT flag to signal a talk spurt. 2008-09-26 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp4apay.c: (gst_rtp_mp4a_pay_get_type), (gst_rtp_mp4a_pay_base_init), (gst_rtp_mp4a_pay_class_init), (gst_rtp_mp4a_pay_init), (gst_rtp_mp4a_pay_finalize), (gst_rtp_mp4a_pay_parse_audio_config), (gst_rtp_mp4a_pay_new_caps), (gst_rtp_mp4a_pay_setcaps), (gst_rtp_mp4a_pay_handle_buffer), (gst_rtp_mp4a_pay_change_state), (gst_rtp_mp4a_pay_plugin_init): * gst/rtp/gstrtpmp4apay.h: Added MP4A-LATM payloader to match the depayloader. 2008-09-25 Wim Taymans * gst/videomixer/videomixer.c: (gst_videomixer_fill_queues), (gst_videomixer_sink_event): Handle segments a little better. Fixes #537361. 2008-09-25 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_methods): Don't assume the server supports PAUSE by default. Fixes #551048. 2008-09-25 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_set_uri), (gst_udpsrc_start): Switch on the socket family to get the addrlen size right. 2008-09-25 Wim Taymans Patch by: Daniel Franke * gst/udp/gstudpsrc.c: (gst_udpsrc_create), (gst_udpsrc_start): OS X's bind() implementation is picky about its addrlen parameter and fails with EINVAL if it is larger than expected for the socket's address family. Set the length to the expected length instead. Fixes #553191. 2008-09-23 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): Handle the case where we cannot do desribe or when the describe result does not contain a valid SDP message. 2008-09-23 Wim Taymans * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_set_property): Fix setting the qos. 2008-09-17 Edward Hervey * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header), (gst_qtdemux_chain): Some 'broken' files out there have atom lengths of zero... which basically results in qtdemux consuming that atom again and again until the *end of night* ! Detect that and emits an adequate element error message. 2008-09-17 Jan Schmidt * gst/interleave/Makefile.am: * gst/matroska/Makefile.am: Fix build flags order. * tests/check/elements/audioamplify.c: (GST_START_TEST): * tests/check/elements/audiodynamic.c: (GST_START_TEST): * tests/check/elements/audioinvert.c: (GST_START_TEST): * tests/check/elements/audiopanorama.c: (GST_START_TEST): Format fixes. * tests/check/elements/multifile.c: Pull in unistd.h 2008-09-15 Wim Taymans * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_init), (gst_rtp_mp4g_depay_finalize), (gst_rtp_mp4g_depay_setcaps), (gst_rtp_mp4g_depay_clear_queue), (gst_rtp_mp4g_depay_flush_queue), (gst_rtp_mp4g_depay_queue), (gst_rtp_mp4g_depay_process), (gst_rtp_mp4g_depay_change_state): * gst/rtp/gstrtpmp4gdepay.h: Handle interleaved streams by reordering AU in a queue. 2008-09-15 Wim Taymans * gst/rtp/gstrtpmp4gdepay.c: (gst_bs_parse_init), (gst_bs_parse_read), (gst_rtp_mp4g_depay_process): Change some of the ranges in the caps, mostly for the amount of bits we can use. Added a little bitstream parse and use it to parse the AU header fields. Check for malformed and wrongly sized packets better. Implement more header field parsing. Handle the size of fragmented packets correctly. 2008-09-14 Edward Hervey Patch by: Jonathan Matthew * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add mapping for 'tiff' => image/tiff Fixes #552213 2008-09-11 Tim-Philipp Müller * ext/raw1394/gstdv1394src.c: (SEND_COMMAND): * ext/raw1394/gsthdv1394src.c: (SEND_COMMAND): Pretend to care about the result of write() which works around compiler warnings. 2008-09-04 Tim-Philipp Müller * ext/flac/gstflacenc.c: (gst_flac_enc_class_init): Make sure the desired default values are actually set, not only registered as defaults (actual problem is that the stereo-specific values are only updated if channels==2, which is not the case yet when the object is created, so the default values for the mid-side-stereo and loose-mid-side-stereo settings are never set in _update_quality()). Makes flacenc create smaller files by default (for stereo input), and fixes #550791. 2008-09-03 Mark Nauwelaerts * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state), (gst_qtdemux_loop_state_header), (qtdemux_parse_node), (qtdemux_parse_trak), (qtdemux_video_caps): * gst/qtdemux/qtdemux.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: Add support for video/mj2 mime-type and its additional atoms/boxes. Fixes #550646. 2008-09-03 Stefan Kost * gst/debug/gsttaginject.c: Add warning when tags parameter is unparsable and give example for quoting in the docs. 2008-09-02 Wim Taymans * gst/qtdemux/qtdemux.c: (qtdemux_audio_caps): Add mapping for IMA Loki SDL MJPEG ADPCM codec. Add some alternative byteswapped mappings that seem to pop up sometimes. Fixes #550288. 2008-09-02 Tim-Philipp Müller * po/LINGUAS: * po/POTFILES.in: * po/POTFILES.skip: Add 'ca' to LINGUAS; add some more files with translations and some files which should be ignored by translation tools. 2008-09-02 Sebastian Dröge * ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data): * ext/speex/gstspeexdec.h: * ext/speex/gstspeexenc.c: (gst_speex_enc_encode): * ext/speex/gstspeexenc.h: Use integer encoding and decoding functions instead of converting the integer input to float in the element. The libspeex integer functions are doing this for us already or, if libspeex was compiled in integer mode, they're doing everything using integer arithmetics. Also saves some copying around. 2008-09-01 Tim-Philipp Müller * configure.ac: Fix --disable-external 2008-08-31 Sebastian Dröge * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset), (gst_wavpack_enc_push_block), (gst_wavpack_enc_chain): * ext/wavpack/gstwavpackenc.h: Handle non-zero start timestamps and stream discontinuities correctly. This only has an effect if we're muxing into a container format as the raw WavPack stream must contain continous sample numbers. 2008-08-31 Sebastian Dröge * ext/speex/gstspeexenc.c: (gst_speex_enc_encode): Correct the timestamp and granulepos calculation by one Speex frame. 2008-08-31 Sebastian Dröge * ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data): Correctly take the granulepos from upstream if possible and correctly handle the granulepos in various calculations: the granulepos is the sample number of the _last_ sample in a frame, not the first. * ext/speex/gstspeexenc.c: (gst_speex_enc_sinkevent), (gst_speex_enc_encode), (gst_speex_enc_chain), (gst_speex_enc_change_state): * ext/speex/gstspeexenc.h: Handle non-zero start timestamps in the encoder and detect/handle stream discontinuities. Fixes bug #547075. 2008-08-31 Sebastian Dröge Patch by: Craig Keogh * ext/annodex/gstcmmlparser.c: (gst_cmml_parser_parse_chunk): Fix compiler warnings caused by passing a string as format string instead of "%s" and then the string. This is only exposed by -Wformat=2 as used by default on Ubuntu. Fixes bug #550015. 2008-08-30 Tim-Philipp Müller * ext/raw1394/gsthdv1394src.c: (gst_hdv1394src_create): * gst/alpha/gstalpha.c: (gst_alpha_get_unit_size): * gst/audiofx/audiocheblimit.c: (generate_coefficients): * gst/avi/gstavidemux.c: (gst_avi_demux_src_convert): * gst/matroska/ebml-read.c: (gst_ebml_read_element_id), (gst_ebml_read_element_length): * gst/matroska/matroska-demux.c: (gst_matroska_demux_check_subtitle_buffer): Make stuff compile with GST_DISABLE_GST_DEBUG. 2008-08-28 Michael Smith * gst/law/alaw.c: * gst/law/mulaw.c: Ref caps before passing to gst_pad_template_new(), since that takes ownership. 2008-08-28 Wim Taymans Patch by: Mersad Jelacic * gst/multipart/multipartdemux.c: * gst/multipart/multipartmux.c: (gst_multipart_mux_get_mime): Convert audio/x-adpcm to and from the audio/G726-X in the muxer and demuxer. Fixes #549551. 2008-08-27 Edward Hervey * sys/osxaudio/gstosxaudiosink.c: (gst_osx_audio_sink_select_device): * sys/osxaudio/gstosxaudiosrc.c: (gst_osx_audio_src_create_ringbuffer), (gst_osx_audio_src_select_device): * sys/osxaudio/gstosxringbuffer.c: (gst_osx_ring_buffer_acquire): Fix the build on macosx. 2008-08-27 Tim-Philipp Müller * gst/icydemux/gsticydemux.c: Small docs fix: in the example pipeline, we need to pass iradio-mode=true to the source, so the server actually sends an ICY stream. 2008-08-26 Michael Smith * sys/osxaudio/gstosxaudio.c: Oops. Revert more completely. 2008-08-26 Michael Smith * sys/osxaudio/gstosxaudio.c: Revert accidental element rename from testing. 2008-08-27 Jan Schmidt * gst-plugins-good.doap: Pull in 0.10.10 doap entry from release branch 2008-08-27 Jan Schmidt * configure.ac: Update version number to reflect 0.10.10 release from branch. 2008-08-26 Michael Smith * sys/osxaudio/Makefile.am: * sys/osxaudio/gstosxaudio.c: * sys/osxaudio/gstosxaudiosink.c: * sys/osxaudio/gstosxaudiosink.h: * sys/osxaudio/gstosxaudiosrc.c: * sys/osxaudio/gstosxaudiosrc.h: * sys/osxaudio/gstosxringbuffer.c: * sys/osxaudio/gstosxringbuffer.h: Rewrite caps setting and ring buffer initialisation. Previously we never told CoreAudio what format we were going to send it, so it only worked due to luck, and not at all on some hardware. Now we explicitly advertise what formats the hardware supports, and then configure the selected one correctly. 2008-08-26 Stefan Kost * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2src_calls.c: Fix memory leaks. Small code cleanups : No need for empty _init(). No need to memset instance structures. Some more FIXME's and comments. 2008-08-26 Stefan Kost * tests/icles/.cvsignore: Ignore more. 2008-08-26 Stefan Kost * gst/goom/.cvsignore: * gst/goom2k1/.cvsignore: Ignore files. 2008-08-26 Stefan Kost * ext/cairo/gsttextoverlay.c: Fix compiler warning. 2008-08-25 David Schleef * ext/cairo/gsttextoverlay.c: Fix obvious memleak. 2008-08-25 Edward Hervey * gst/matroska/matroska-demux.c: (gst_matroska_demux_send_event), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps): * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_finish): Add Real[Audio|Video] support to Matroska containers. It works fine for: * decoding real audio/video streams contained in mkv * 'transmuxing' real (.rm) files into .mkv files It will not work though for encoding real[audio/video] streams that don't contain the 'mdpr_data' extra data on the caps. The reason why this will not work is because I never intended to duplicate virtually all the 'mdpr' block creation into mkvmux. Fixes #536067 2008-08-25 Wim Taymans * gst/law/alaw-encode.c: (gst_alaw_enc_init), (gst_alaw_enc_chain): * gst/law/mulaw-conversion.c: * gst/law/mulaw-encode.c: (gst_mulawenc_init), (gst_mulawenc_chain): The encoder can't really renegotiate at the time they perform a pad-alloc so make the srcpads use fixed caps. Check the buffer size after a pad-alloc because the returned size might not be right when the downstream element does not know the size of the new buffer (capsfilter). Fixes #549073. 2008-08-23 Sebastian Dröge Patch by: Filippo Argiolas * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_set_norm_and_notify): v4l2src doesn't have a property named "norm" so don't try to notify about changes to that property. The "norm" property and related code are commented out currently. Fixes bug #549090. 2008-08-23 Sebastian Dröge Patch by: Mike Ruprecht * sys/v4l2/gstv4l2object.c: (gst_v4l2_class_probe_devices): Reprobe devices again instead of taking a cached list as new devices could've been plugged in. Fixes bug #549062. 2008-08-22 Sebastian Dröge * gst/autodetect/Makefile.am: Don't link the autodetect plugin with GConf as it doesn't use GConf. Fixes bug #545463. 2008-08-22 Sebastian Dröge * gst/matroska/ebml-read.c: (gst_ebml_read_element_id), (gst_ebml_read_element_length), (gst_ebml_read_uint), (gst_ebml_read_sint), (gst_ebml_read_float), (gst_ebml_read_header): Change some GST_ELEMENT_ERRORs to GST_ERROR_OBJECT to make it possible to ignore errors and not post any ERROR messages on the bus. * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_contents): Ignore any errors and not just EOS when parsing the contents of a SeekHead. Errors here are usually caused by truncated files and playback of the file works fine. Fixes playback of the audio_only_chapter_seekbroken.mka file from the MPlayer samples archive. 2008-08-22 Zaheer Abbas Merali * gst/multipart/multipartdemux.c: * gst/multipart/multipartmux.c: Conform to RFC2046. audio/basic is mulaw 8000Hz mono. 2008-08-21 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc, gst_directdraw_sink_bufferpool_clear): Fix two more buffer ref leaks. 2008-08-21 Tim-Philipp Müller Patch by: Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_show_frame): Fix buffer ref leak. 2008-08-21 Sebastian Dröge * gst/wavenc/gstwavenc.c: (gst_wavenc_chain): Revert the last commit. wavenc still supports width!=depth for 32 bit width. Thanks Tim. 2008-08-21 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup_or_simpleblock): If the duration of a block is unknown only use the timestamp for the first lace and use GST_CLOCK_TIME_NONE as duration for the following laces. Otherwise every lace has the same timestamp which leads to various problems. Really fixes bug #548831. 2008-08-21 Sebastian Dröge * gst/wavenc/gstwavenc.c: (gst_wavenc_chain): If we're not allowing width!=depth in wavenc we should also disable the code that was added to support width!=depth. 2008-08-21 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): Don't calculate the default duration of a frame from the audio sampling rate. This only works for raw audio if every frame contains a single sample and results in broken buffer durations for other formats if no specified default duration is given or the blocks have no duration. Fixes bug #548831. 2008-08-21 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup_or_simpleblock): Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks are used for text/plain subtitles as a gap-filler in some files. 2008-08-21 Wim Taymans * sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure), (gst_v4l2_get_caps_info): Add S910 and PWC formats with a low priority. * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_format_get_rank), (gst_v4l2src_probe_caps_for_format): Add more debugging. 2008-08-20 Tim-Philipp Müller * ext/flac/gstflacenc.c: Fix compilation against older libflac versions. 2008-08-20 Sebastian Dröge * ext/pulse/pulsemixer.c: (gst_pulsemixer_class_init), (gst_pulsemixer_set_property), (gst_pulsemixer_get_property): * ext/pulse/pulsemixerctrl.c: (gst_pulsemixer_ctrl_subscribe_cb), (gst_pulsemixer_ctrl_open), (gst_pulsemixer_ctrl_timeout_event), (gst_pulsemixer_ctrl_set_volume): * ext/pulse/pulsemixertrack.c: (gst_pulsemixer_track_new): * ext/pulse/pulseprobe.c: (gst_pulseprobe_open): * ext/pulse/pulsesink.c: (gst_pulsesink_class_init), (gst_pulsesink_init), (gst_pulsesink_open), (gst_pulsesink_prepare), (gst_pulsesink_write), (gst_pulsesink_delay), (gst_pulsesink_reset): * ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init), (gst_pulsesrc_init): Use GST_BOILERPLATE everywhere and fix coding style at some places. Fix a locking issue in pulsesink's prepare function. * ext/pulse/pulseutil.c: (gst_pulse_channel_map_to_gst): Check if the created channel layout is valid for GStreamer. 2008-08-20 Wim Taymans * gst/rtsp/gstrtspgoogle.c: Things that can happen when your brain is in google mode trying to deal with their google rtsp server extensions and trying to type your google mail account. 2008-08-20 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/gstrtsp.c: (plugin_init): * gst/rtsp/gstrtspgoogle.c: (gst_rtsp_google_before_send), (gst_rtsp_google_after_send), (gst_rtsp_google_get_transports), (_do_init), (gst_rtsp_google_base_init), (gst_rtsp_google_class_init), (gst_rtsp_google_init), (gst_rtsp_google_finalize), (gst_rtsp_google_change_state), (gst_rtsp_google_extension_init): * gst/rtsp/gstrtspgoogle.h: Add google RTSP extension, it can only handle udp and responds with unsupported if we do anything else. Fixes #546465. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_connection_send), (gst_rtspsrc_connection_receive), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_pause): Make transport setup code a bit better using GString. Add some more debug. Check for closed connections before doing anything on them. 2008-08-20 Sebastian Dröge * ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init), (gst_pulsesrc_create_stream), (gst_pulsesrc_negotiate), (gst_pulsesrc_prepare): * ext/pulse/pulseutil.c: (gst_pulse_gst_to_channel_map), (gst_pulse_channel_map_to_gst): * ext/pulse/pulseutil.h: If downstream provides no channel layout and >2 channels should be used use the default layout that pulseaudio chooses and also add this layout to the caps. Fixes bug #547258. 2008-08-20 Wim Taymans Patch by: Peter Kjellerstedt * gst/udp/gstdynudpsink.c: (gst_dynudpsink_init), (gst_dynudpsink_finalize), (gst_dynudpsink_set_property), (gst_dynudpsink_init_send), (gst_dynudpsink_close): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init), (gst_multiudpsink_finalize), (gst_multiudpsink_set_property): * gst/udp/gstudpsrc.c: (gst_udpsrc_finalize), (gst_udpsrc_set_property): Avoid leaking internally allocated file descriptors when setting custom file descriptors. Fixes #543101. 2008-08-20 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink): Don't try to configure RTCP back to the server when the server did not give us a valid port number. 2008-08-20 Wim Taymans * gst/videobox/gstvideobox.c: (gst_video_box_set_property): Use new basetransform method to renegotiate. Fixes #544956. * tests/icles/Makefile.am: * tests/icles/videobox-test.c: (make_pipeline), (main): Add videobox renegotiation example. 2008-08-19 David Schleef * gst/wavenc/gstwavenc.c: Remove depth ranges and replace with sane values. Fixes #548530. 2008-08-18 Sebastian Dröge * ext/pulse/pulsesink.c: (gst_pulsesink_prepare): * ext/pulse/pulsesrc.c: (gst_pulsesrc_prepare): The bytes_per_sample and silence_sample fields of the GstRingBufferSpec are already filled with the correct values by gst_ring_buffer_parse_caps() so there's no need to set them again with wrong values. 2008-08-16 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_read_subindexes_pull), (gst_avi_demux_read_subindexes_push): Some AVI 2.0 (ODML) files don't respect the 'specifications' completely and instead of using the 'ix##' nomenclature, use '##ix'. They're still valid though, this fixes the duration and indexes for virtually all the ODML files I have. 2008-08-15 Wim Taymans Patch by: Olivier Crete * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps), (gst_rtp_vorbis_depay_process): * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers): Update the vorbis RTP pay/depay to RFC 5215. Fixes #547842. 2008-08-14 David Schleef * gst/qtdemux/qtdemux.c: Add 'hdv6' as a HDV format for 1080i/60 with 3:2 pulldown, i.e., 24p. 2008-08-14 Wim Taymans * tests/check/elements/level.c: (GST_START_TEST): Fix compilation some more. 2008-08-14 Tim-Philipp Müller * configure.ac:: Require -base CVS for wavparse acid chunk parsing. 2008-08-13 Sebastian Dröge * ext/pulse/pulsesink.c: (gst_pulsesink_class_init), (gst_pulsesink_init), (gst_pulsesink_finalize), (gst_pulsesink_set_volume), (gst_pulsesink_get_volume), (gst_pulsesink_set_property), (gst_pulsesink_get_property), (gst_pulsesink_prepare), (gst_pulsesink_change_state): * ext/pulse/pulsesink.h: Add "device-name" property to pulsesink too and currently commented out and not working support for a "volume" property. 2008-08-13 Thijs Vermeir * configure.ac: Remove more cdio stuff (moved to ugly) 2008-08-13 Sebastian Dröge Patch by: Laszlo Pandy * ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init), (gst_pulsesrc_get_property): Add "device-name" property, which provides a human readable string for the audio device, to make it more consisten with other audio sources. Fixes bug #547519. 2008-08-13 Sebastian Dröge * ext/pulse/pulsemixer.c: (gst_pulsemixer_change_state): * ext/pulse/pulsemixerctrl.c: (gst_pulsemixer_ctrl_subscribe_cb), (gst_pulsemixer_ctrl_open), (gst_pulsemixer_ctrl_new), (gst_pulsemixer_ctrl_free), (gst_pulsemixer_ctrl_timeout_event): * ext/pulse/pulsemixerctrl.h: * ext/pulse/pulseprobe.c: (gst_pulseprobe_open), (gst_pulseprobe_enumerate), (gst_pulseprobe_new), (gst_pulseprobe_free), (gst_pulseprobe_needs_probe), (gst_pulseprobe_probe_property), (gst_pulseprobe_get_values): * ext/pulse/pulseprobe.h: * ext/pulse/pulsesink.c: (gst_pulsesink_init): * ext/pulse/pulsesrc.c: (gst_pulsesrc_init), (gst_pulsesrc_delay), (gst_pulsesrc_change_state): Improve debugging a bit by including the parent object in pulsemixerctrl and pulseprobe objects and using GST_WARNING_OBJECT instead of GST_WARNING. Use the parent GObject subclass instead of a random struct as GObject parameter for G_OBJECT_WARN_INVALID_PROPERTY_ID. This fixes a crash when probing for another property than "device". 2008-08-13 Sebastian Dröge Patch by: Laszlo Pandy * ext/pulse/pulsemixer.c: (gst_pulsemixer_set_property): Fix property probing after the device property is set by calling set_server when the server property changes. Fixes bug #547518. 2008-08-13 Sebastian Dröge Patch by: Laszlo Pandy * ext/pulse/pulsesink.c: (gst_pulsesink_interface_supported), (gst_pulsesink_implements_interface_init), (gst_pulsesink_init_interfaces), (gst_pulsesink_init), (gst_pulsesink_finalize), (gst_pulsesink_set_property), (gst_pulsesink_get_type): * ext/pulse/pulsesink.h: * ext/pulse/pulsesrc.c: (gst_pulsesrc_interface_supported), (gst_pulsesrc_init_interfaces), (gst_pulsesrc_init), (gst_pulsesrc_finalize), (gst_pulsesrc_set_property): * ext/pulse/pulsesrc.h: Implement GstPropertyProbe interface on pulsesink for detecting sink devices and on pulsesrc for detecting source devices. Fixes bugs #547227 and #547217. 2008-08-13 Stefan Kost * gst/spectrum/gstspectrum.c: Don't terminate on fabs(in)>1.0. Init doubles as doubles. 2008-08-13 Edward Hervey * sys/v4l2/gstv4l2src.c: (gst_v4l2src_query): Properly set the maximum latency value, in the same way it is done in v4lsrc. * sys/v4l2/v4l2src_calls.c: Simplify fraction equality check, no need to use GValues for this. 2008-08-12 Edward Hervey * sys/v4l2/gstv4l2src.c: (gst_v4l2src_query): Add warning messages stating exactly why the latency query failed. * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture): In some cases, the negotiated framerate might be the default one which is already set internally. But we still need to mark it down in fps_n and fps_d so that the latency query can happen properly. 2008-08-12 Edward Hervey * docs/plugins/inspect/plugin-1394.xml: Whoops, forgot one doc file for people who can't/don't build the raw1394 plugin. 2008-08-12 Jan Schmidt * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-cdio.xml: * ext/Makefile.am: * ext/cdio/Makefile.am: * ext/cdio/gstcdio.c: * ext/cdio/gstcdio.h: * ext/cdio/gstcdiocddasrc.c: * ext/cdio/gstcdiocddasrc.h: Pull changes from 0.10.9.2 pre-release branch moving the libcdio CDDA source to -ugly. * po/LINGUAS: * po/POTFILES.in: * po/id.po: Pull in new translation from 0.10.9.2 release branch. 2008-08-11 Edward Hervey * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: Integrate documentation for new hdv1394src element. 2008-08-11 Edward Hervey * ext/raw1394/Makefile.am: * ext/raw1394/gst1394.c: (plugin_init): * ext/raw1394/gsthdv1394src.c: (_do_init), (gst_hdv1394src_base_init), (gst_hdv1394src_class_init), (gst_hdv1394src_init), (gst_hdv1394src_dispose), (gst_hdv1394src_set_property), (gst_hdv1394src_get_property), (gst_hdv1394src_from_raw1394handle), (gst_hdv1394src_iec61883_receive), (gst_hdv1394src_bus_reset), (gst_hdv1394src_create), (gst_hdv1394src_discover_avc_node), (gst_hdv1394src_start), (gst_hdv1394src_stop), (gst_hdv1394src_unlock), (gst_hdv1394src_update_device_name), (gst_hdv1394src_uri_get_type), (gst_hdv1394src_uri_get_protocols), (gst_hdv1394src_uri_get_uri), (gst_hdv1394src_uri_set_uri), (gst_hdv1394src_uri_handler_init): * ext/raw1394/gsthdv1394src.h: mpeg2-ts (HDV) variant of firewire capture element. Fixes #350830 2008-08-11 Edward Hervey * gst/level/gstlevel.c: (gst_level_message_new): Fix compilation (also known as the classic 'fix code that someone committed without compiling it first'). 2008-08-10 Stefan Kost * tests/check/elements/level.c: Add a test for level in stereo mode. 2008-08-10 Stefan Kost * tests/examples/spectrum/demo-audiotest.c: * tests/examples/spectrum/demo-osssrc.c: Demo how to draw analyzer results synced to the clock. 2008-08-10 Stefan Kost * gst/level/gstlevel.c: Little renaming (l -> level). * gst/spectrum/gstspectrum.c: * gst/spectrum/gstspectrum.h: Also send full timestamp/duration details here. 2008-08-10 Stefan Kost * gst/level/gstlevel.c: * gst/level/gstlevel.h: Send same timestamp/duration details as videoanalysis. This gives applications better chance to sync analysis results with playback. 2008-08-09 Sebastian Dröge * gst/matroska/matroska-mux.c: (gst_matroska_mux_handle_sink_event), (flac_streamheader_to_codecdata): We need to drop one additional buffer for FLAC as the fLaC marker and STREAMINFO block are merged into one buffer in the caps. Also don't pretend to support NEWSEGMENT events, otherwise we will most probably write some invalid data. 2008-08-09 Sebastian Dröge * gst/matroska/matroska-mux.c: (flac_streamheader_to_codecdata), (gst_matroska_mux_audio_pad_setcaps): Add support for muxing FLAC into Matroska containers. Fixes bug #311586. 2008-08-09 Sebastian Dröge * ext/flac/gstflacenc.c: (gst_flac_enc_check_discont): Actually provide the variables required for the format string. 2008-08-08 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_reset), (gst_matroska_demux_element_send_event), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_loop): * gst/matroska/matroska-demux.h: Close the current segment if we're doing a non-flushing seek and send the close-segment and the new segment of the seek from the streaming thread. 2008-08-08 Sebastian Dröge * ext/flac/gstflacenc.c: (gst_flac_enc_write_callback), (gst_flac_enc_check_discont), (gst_flac_enc_chain), (gst_flac_enc_change_state): * ext/flac/gstflacenc.h: Handle non-zero start timestamps correctly, mark header packets as IN_CAPS and print a warning and suggest using audiorate if stream discontinuities are detected. When FLAC supports flushing the encoder somehow this should be done for discontinuities instead. Remove some unused variables from the instance struct. 2008-08-07 Sebastian Dröge * ext/flac/gstflacenc.c: (gst_flac_enc_seek_callback): If seeking failed return the appropiate return value to FLAC. Otherwise it thinks seeking was successfull and tries to rewrite parts of the headers which then get appended to the output. 2008-08-07 Tim-Philipp Müller Patch by: Frederic Crozat * ext/esd/gstesd.c: (plugin_init): * ext/flac/gstflac.c: (plugin_init): * ext/shout2/gstshout2.c: (plugin_init): * ext/wavpack/gstwavpack.c: (plugin_init): * sys/oss/gstossaudio.c: (plugin_init): * sys/v4l2/gstv4l2.c: (plugin_init): Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822). 2008-08-07 Sebastian Dröge * ext/flac/gstflacdec.c: Add FIXME for 0.11 to simply output everything with width=32 as given by FLAC and let audioconvert handle the conversions instead of doing them in flacdec. 2008-08-07 Jan Schmidt * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format): When outputting a pad template range for the size, include a framerate range too, to avoid 'not a real subset of template caps' errors. 2008-08-06 Sebastian Dröge Based on a patch by: Jonathan Matthew * ext/flac/Makefile.am: * ext/flac/gstflac.c: (plugin_init): * ext/flac/gstflactag.c: (gst_flac_tag_setup_interfaces), (gst_flac_tag_base_init), (gst_flac_tag_class_init), (gst_flac_tag_dispose), (gst_flac_tag_init), (gst_flac_tag_sink_setcaps), (gst_flac_tag_chain), (gst_flac_tag_change_state): * ext/flac/gstflactag.h: Port flactag to 0.10, add documentation for it and clean it up a bit. Fixes bug #413841. * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/gst-plugins-good-plugins.prerequisites: * docs/plugins/inspect/plugin-flac.xml: * ext/flac/gstflacdec.c: (gst_flac_dec_base_init): * ext/flac/gstflacdec.h: * ext/flac/gstflacenc.c: (gst_flac_enc_base_init): * ext/flac/gstflacenc.h: Add flactag and flacenc to the documentation and mark the private parts of the flacdec instance structure as private. Also use gst_element_class_set_details_simple() in flacdec and flacenc. 2008-08-06 Stefan Kost * gst/qtdemux/qtdemux.c: Use audio/x-qdm for caps. Collect some info - mplayer has a decoder for it but ffmpeg does not. 2008-08-05 Stefan Kost * gst/wavparse/gstwavparse.c: Handle the list chunk and use gst_riff_parse_info() to parse the info sub-chunk. 2008-08-05 Stefan Kost * gst/wavparse/gstwavparse.c: Handle the acid chunk and send tempo as part of tags. Other fields are interesting too, but need more tag-definitions. Fixes #545433. 2008-08-05 Stefan Kost * gst/wavparse/gstwavparse.c: Refactor wavparse. Call _reset() from dispose() and move old code from dispose into reset. This way we don't leak taglists when we abort parsing. Fix some comments. Move code for skipping a chunk into extra function. Replace chunk sizes with a const to ease readability. 2008-08-05 Wim Taymans Patch by: Aurelien Grimaud * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_alloc_udp_ports): Improve udp port setup. Fixes #545710. 2008-08-05 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_base_init), (gst_rtp_mp1s_depay_class_init), (gst_rtp_mp1s_depay_init), (gst_rtp_mp1s_depay_setcaps), (gst_rtp_mp1s_depay_process), (gst_rtp_mp1s_depay_set_property), (gst_rtp_mp1s_depay_get_property), (gst_rtp_mp1s_depay_change_state), (gst_rtp_mp1s_depay_plugin_init): * gst/rtp/gstrtpmp1sdepay.h: Add MP1S depayloader. * gst/rtsp/URLS: Some more sample rtsp streams. 2008-08-05 Wim Taymans * gst/rtsp/URLS: Add another URL. * tests/check/elements/id3v2mux.c: (test_taglib_id3mux_with_tags): * tests/check/elements/rglimiter.c: (GST_START_TEST): Add some more debug info. 2008-08-04 Mark Nauwelaerts * gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header): Provide cbSize field for audio extra_data size, and take care to pad extra_data. 2008-08-04 Stefan Kost * gst/qtdemux/qtdemux.c: Return the result of gst_pad_{start,stop}_task instead of hard-coded TRUE. 2008-08-04 Stefan Kost * gst/qtdemux/qtdemux.c: * gst/qtdemux/qtdemux_fourcc.h: Add keyword tag support. Fixes #520694 for qtdemux. 2008-08-04 Stefan Kost * gst/qtdemux/qtdemux.c: Add support for tmpo tag (BPM). 2008-08-03 Sebastian Dröge * ext/flac/gstflacenc.c: (gst_flac_enc_query_peer_total_samples), (gst_flac_enc_sink_setcaps), (gst_flac_enc_write_callback): Set an estimate for the total number of samples that will be encoded if possible to help decoders if the streaminfo can't be rewritten later (like when muxing into Ogg containers). Add a warning if we get header packets after data packets as those will get lost when muxing into Ogg, i.e. rewriting the headers doesn't work. 2008-08-03 Sebastian Dröge * ext/flac/gstflacdec.c: (gst_flac_dec_metadata_callback), (gst_flac_dec_write): Support decoding of all depths between 4 and 32 bits and read the depth from the streaminfo header if needed. Also support all sampling rates between 1 and 655350 Hz. * ext/flac/gstflacenc.c: (gst_flac_enc_caps_append_structure_with_widths), (gst_flac_enc_sink_getcaps), (gst_flac_enc_sink_setcaps), (gst_flac_enc_chain): * ext/flac/gstflacenc.h: Support encoding in all bit depths supported by the streamable subformat (i.e. 8, 12, 16, 20 and 24 bits) and all sampling rates between 1 Hz and 655350 Hz. 2008-08-03 Sebastian Dröge * ext/flac/gstflacenc.c: (gst_flac_enc_init), (gst_flac_enc_sink_getcaps): Support encoding of up to 8 channels. 2008-08-02 Jan Schmidt * ext/soup/gstsouphttpsrc.c: * ext/soup/gstsouphttpsrc.h: Fix seeking race condition in #540300 Patch By: Wouter Cloetens 2008-08-02 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroskademux_do_index_seek), (gst_matroska_demux_element_send_event), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_handle_src_event): When receiving a SEEK event on a specific pad first search for a seek table entry for the stream of the pad and then fall back to an entry for a different stream. 2008-08-02 Sebastian Dröge * configure.ac: * gst/matroska/matroska-ids.c: (gst_matroska_register_tags): * gst/matroska/matroska-ids.h: Build depend on core CVS for the attachment tag. 2008-08-02 Sebastian Dröge * configure.ac: * gst/matroska/Makefile.am: * gst/matroska/lzo.c: (get_byte), (get_len), (copy), (copy_backptr), (lzo1x_decode), (main): * gst/matroska/lzo.h: * gst/matroska/matroska-demux.c: (gst_matroska_demux_read_track_encoding), (gst_matroska_decompress_data), (gst_matroska_decode_data), (gst_matroska_decode_buffer), (gst_matroska_decode_content_encodings), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_demux_parse_blockgroup_or_simpleblock): * gst/matroska/matroska-ids.h: Decode the codec private data and following ContentEncoding if necessary. Support bzip2, lzo and header stripped compression. For lzo use the ffmpeg lzo implementation as liblzo is GPL licensed. Fix zlib decompression. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_setcaps): Fix muxing of MP3/MP2 with different MPEG versions by calculating the duration of a frame with the new mpegaudioversion caps field. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_finalize), (gst_matroska_demux_class_init), (gst_matroska_demux_init), (gst_matroska_demux_combine_flows), (gst_matroska_demux_reset), (gst_matroska_demux_stream_from_num), (gst_matroska_demux_tracknumber_unique), (gst_matroska_demux_add_stream), (gst_matroska_demux_send_event), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_sync_streams), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_loop): * gst/matroska/matroska-demux.h: Allow an infinite number of stream inside Matroska containers and use a GPtrArray for storing them instead of allowing "only" 127 streams. 2008-08-02 Sebastian Dröge * gst/matroska/ebml-read.c: (gst_ebml_read_class_init), (gst_ebml_read_change_state), (gst_ebml_read_element_level_up), (gst_ebml_read_peek_bytes), (gst_ebml_read_element_id), (gst_ebml_read_element_length), (gst_ebml_peek_id), (gst_ebml_read_get_length), (gst_ebml_read_skip), (gst_ebml_read_buffer), (gst_ebml_read_bytes), (gst_ebml_read_uint), (gst_ebml_read_sint), (_ext2dbl), (gst_ebml_read_float), (gst_ebml_read_ascii), (gst_ebml_read_date), (gst_ebml_read_master), (gst_ebml_read_binary), (gst_ebml_read_header): * gst/matroska/ebml-write.c: (gst_ebml_write_element_id), (gst_ebml_write_element_size), (gst_ebml_write_uint), (gst_ebml_write_sint), (gst_ebml_write_ascii), (gst_ebml_write_master_start), (gst_ebml_write_master_finish), (gst_ebml_replace_uint): * gst/matroska/matroska-demux.c: (gst_matroska_demux_reset), (gst_matroska_demux_read_track_encoding), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroskademux_do_index_seek), (gst_matroska_demux_send_event), (gst_matroska_demux_element_send_event), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_handle_src_event), (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_ebmlnum_uint), (gst_matroska_ebmlnum_sint), (gst_matroska_demux_push_hdr_buf), (gst_matroska_demux_push_flac_codec_priv_data), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_push_dvd_clut_change_event), (gst_matroska_demux_add_mpeg_seq_header), (gst_matroska_demux_add_wvpk_header), (gst_matroska_demux_check_subtitle_buffer), (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_stream), (gst_matroska_demux_loop), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps), (gst_matroska_demux_subtitle_caps), (gst_matroska_demux_change_state): * gst/matroska/matroska-ids.c: * gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init), (gst_matroska_mux_reset), (gst_matroska_mux_handle_sink_event), (gst_matroska_mux_video_pad_setcaps), (xiph3_streamheader_to_codecdata), (vorbis_streamheader_to_codecdata), (theora_streamheader_to_codecdata), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad), (gst_matroska_mux_track_header), (gst_matroska_mux_start), (gst_matroska_mux_write_simple_tag), (gst_matroska_mux_finish), (gst_matroska_mux_best_pad), (gst_matroska_mux_write_data), (gst_matroska_mux_collected), (gst_matroska_mux_change_state): Fix indention everywhere. A broken indent version has added newlines after every single declaration some time ago. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_loop_stream_parse_id): If no Tracks are found error out instead of trying it again until the end of time. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_demux_audio_caps): Fix demuxing of raw integer audio. The samples are unsigned only for 8 bit and signed otherwise, not the other way around. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-mux.c: Add more raw YUV formats to the list of supported formats. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_setcaps): Add support for muxing raw float audio now that the spec defines the endianness and add support for muxing raw integer audio with 24 and 32 bits. Allow muxing of more than 8 audio channels. 2008-08-02 Sebastian Dröge * gst/matroska/matroska-mux.c: (gst_matroska_mux_create_uid), (gst_matroska_mux_reset), (gst_matroska_mux_start): Add locking to the global array of used track UIDs to prevent random crashes if more than a single matrosmux instance is used. Use 64 bit values for the track UIDs. Use the global GRandom of GLib instead of creating our own one for the few random numbers we need every single time. 2008-08-02 Sebastian Dröge * ext/flac/gstflacdec.c: (gst_flac_dec_setup_seekable_decoder), (gst_flac_dec_setup_stream_decoder), (gst_flac_dec_update_metadata): Always post the audio-codec tag, not only if other tags are present. 2008-08-02 Jan Schmidt * configure.ac: Back to development -> 0.10.9.1 === release 0.10.9 === 2008-07-31 Jan Schmidt * configure.ac: releasing 0.10.9, "Steam Train Rolling" 2008-07-31 Jan Schmidt * ext/soup/gstsouphttpsrc.c: Don't throw an error when soup completes a msg with status 'cancelled', as that indicates we cancelled a request while shutting down or seeking, and it's not an error. Fixes: #540300 again. 2008-07-28 Jan Schmidt * configure.ac: 0.10.8.4 pre-release 2008-07-25 Edward Hervey * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment): Fix segment-stop regression. Add documentation regarding segments in quicktime files by Wim Taymans. Fixes #544509 2008-07-25 Jan Schmidt * configure.ac: 0.10.8.3 pre-release * po/LINGUAS: * po/pt_BR.po: Add pt_BR translation 2008-07-23 Michael Smith * gst/goom/convolve_fx.c: * gst/goom/filters.c: * gst/goom/goom_config.h: * gst/goom/goom_core.c: * gst/goom/goom_tools.h: Fix build with MSVC: include glib.h to define inline appropriately, use header guards where needed. * gst/udp/gstudpnetutils.c: * gst/udp/gstudpsrc.c: Fix build with MSVC: use WSA* constants/functions where appropriate, use g_snprintf rather than snprintf. Fixes #544433. 2008-07-22 Stefan Kost * gst/debug/gsttaginject.c: * gst/debug/gsttaginject.h: Sent tags in _transform_ip() instead of _start(). Fixes #543404 partially. 2008-07-19 Jan Schmidt * configure.ac: 0.10.8.2 pre-release 2008-07-19 Jan Schmidt * ext/Makefile.am: Finish hooking up pulseaudio plugin to the build. * ext/pulse/pulsemixerctrl.c: Fix compilation error. 2008-07-19 Jan Schmidt * po/LINGUAS: * po/lt.po: Add new lithunian translation, and add french to the LINGUAS file. 2008-07-19 Jan Schmidt * ext/soup/gstsouphttpsrc.c: Fix Soup HTTP source seeking. Patch By: Wouter Cloetens Fixes: #540300 * tests/check/elements/.cvsignore: Ignore new check programs. 2008-07-19 Jan Schmidt * configure.ac: * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/gst-plugins-good-plugins.prerequisites: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-replaygain.xml: * tests/check/Makefile.am: Move replaygain and interleave plugins from -bad. Fixes: #543406 Fixes: #536228 2008-07-18 Mark Nauwelaerts * gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse_trak): Revert ISO base media spec based pixel-aspect-ratio calculation. Fixes #543300. 2008-07-17 Edward Hervey * sys/osxvideo/osxvideosink.m: Fix minor build issues on macosx. Fixes #543054 2008-07-17 Tim-Philipp Müller * configure.ac:: * ext/taglib/Makefile.am:: Only use -Wno-attributes (which is there to work around a bug in the taglib 1.5 headers) if the c++ compiler actually supports it (#543255). 2008-07-17 Tim-Philipp Müller Patch by: Benoit Fouet * sys/v4l2/gstv4l2src.c: (gst_v4l2src_negotiate): Avoid compiler warning by initialising variable to NULL (#543259). 2008-07-14 Sebastian Dröge * gst/debug/gsttaginject.c: (gst_tag_inject_start): Don't pass NULL taglists to gst_tag_list_is_empty(). 2008-07-14 Sebastian Dröge * tests/check/elements/cmmldec.c: (GST_START_TEST): * tests/check/elements/rtp-payloading.c: (rtp_pipeline_create), (rtp_pipeline_run): * tests/check/elements/souphttpsrc.c: (souphttpsrc_suite): Don't use declarations after statements. 2008-07-14 Mark Nauwelaerts * ext/jpeg/gstjpegdec.c: Align documentation with reality. 2008-07-14 Sebastian Dröge * gst/udp/gstudpnetutils.c: EAI_ADDRFAMILY was obsoleted in BSD at some point. Define it to the old value (1) if it's not defined which should not cause any problems as we're using it internal only anyway. 2008-07-14 Sebastian Dröge Patch by: Alessandro Decina * gst/avi/gstavidemux.c: (gst_avi_demux_riff_parse_vprp): Fix build of avidemux on big endian architectures. 2008-07-10 Mark Nauwelaerts Patch by: Thiago Sousa Santos * gst/qtdemux/qtdemux.c: (qtdemux_audio_caps): Correctly distinguish 8bit vs 16bit raw audio. Fixes #542410. 2008-07-08 Mark Nauwelaerts * gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse_trak): Set pixel-aspect-ratio in caps using display width and height provided in track. 2008-07-08 Sebastian Dröge * configure.ac: Don't include ERROR_CFLAGS in GST_CXXFLAGS as it might include flags that are invalid for C++. Fixes bug #516509. 2008-07-08 Sebastian Dröge * ext/raw1394/gstdv1394src.c: (gst_dv1394src_uri_set_uri): * ext/speex/gstspeexenc.c: (gst_speex_enc_sink_getcaps): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_set_wp_config): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_fixate): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format): * tests/examples/equalizer/demo.c: (message_handler): * tests/examples/spectrum/demo-audiotest.c: (message_handler): * tests/examples/spectrum/demo-osssrc.c: (message_handler): Don't use declarations after statements and variable length arrays. 2008-07-07 Sebastian Dröge Patch by: Daniel Drake * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture), (gst_v4l2src_get_nearest_size): Try progressive video if interlaced fails. Fixes bug #541956 and the usage of v4l2src on OLPC. 2008-07-07 Sebastian Dröge * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init), (gst_rtp_speex_depay_process): * gst/rtp/gstrtpspeexdepay.h: Revert last change: Only the jitterbuffer is able to convert RTP to Gstreamer timestamps and normal (de)payloaders should simply copy it. Reopens bug #541787. 2008-07-07 Stefan Kost * gst/rtp/gstrtpvrawdepay.c: Include stdlib.h for atoi(). * gst/rtsp/gstrtspsrc.c: Use floating point math for latencies < 0 sec in log output. 2008-07-07 Sebastian Dröge Patch by: Tomasz Grobelny * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init), (gst_rtp_speex_depay_process): * gst/rtp/gstrtpspeexdepay.h: Take timestamp from the RTP packet as a first step to fix problems with transmission over RTP when the network is not reliable. Fixes bug #541787. 2008-07-05 Sebastian Dröge Patch by: Tero Saarni * gst/udp/gstudpsrc.c: (gst_udpsrc_set_uri): Fix parsing of udp:// URIs containing IPv6 addresses. Fixes bug #541650. 2008-07-04 Mark Nauwelaerts * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_chain): Do not leak incoming buffers. 2008-07-03 Sebastian Dröge Patch by: Damien Lespiau * configure.ac: Fix build of the RTP plugin with mingw32 by linking to ws2_32 for htons() and htonl(). Fixes bug #541412. 2008-07-02 Sebastian Dröge * 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. 2008-07-02 Sebastian Dröge * 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. 2008-07-02 Sebastian Dröge * 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. 2008-07-02 Sebastian Dröge * 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. 2008-07-02 Sebastian Dröge * 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. 2008-07-01 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_base_init), (gst_rtp_vraw_depay_class_init), (gst_rtp_vraw_depay_init), (gst_rtp_vraw_depay_setcaps), (gst_rtp_vraw_depay_process), (gst_rtp_vraw_depay_change_state), (gst_rtp_vraw_depay_plugin_init): * gst/rtp/gstrtpvrawdepay.h: * gst/rtp/gstrtpvrawpay.c: (gst_rtp_vraw_pay_get_type), (gst_rtp_vraw_pay_base_init), (gst_rtp_vraw_pay_class_init), (gst_rtp_vraw_pay_init), (gst_rtp_vraw_pay_finalize), (gst_rtp_vraw_pay_setcaps), (gst_rtp_vraw_pay_handle_buffer), (gst_rtp_vraw_pay_plugin_init): * gst/rtp/gstrtpvrawpay.h: Add raw video pay and depayloaders, see RFC4175. 2008-06-30 Jan Schmidt * ext/libpng/gstpngdec.c: Don't return GST_FLOW_ERROR when buffer_alloc fails - return whatever it returned. 2008-06-29 Mark Nauwelaerts * gst/avi/avi-ids.h: Add vprp chunk related structures. * gst/avi/gstavidemux.c: (gst_avi_demux_riff_parse_vprp), (gst_avi_demux_parse_stream): Parse optional vprp chunk and add calculated pixel-aspect-ratio to caps. Fixes #539482. * gst/avi/gstavimux.h: * gst/avi/gstavimux.c: (gst_avi_mux_pad_reset), (gst_avi_mux_vidsink_set_caps), (gst_avi_mux_riff_get_avi_header): Add a vprp chunk if non-trival pixel-aspect-ratio provided in caps. 2008-06-28 Mark Nauwelaerts * tests/check/elements/avimux.c: (check_avimux_pad): Adjust avimux unit test according to increased streamheader size. 2008-06-27 David Schleef * gst/qtdemux/qtdemux.c: Add Dirac stream type 2008-06-27 Mark Nauwelaerts * 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. 2008-06-26 Tim-Philipp Müller * sys/v4l2/v4l2_calls.c:: Don't include unused gstv4l2xoverlay.h. Fixes build in case where X11 headers are not installed. 2008-06-26 Wim Taymans * ext/dv/gstdv.c: (plugin_init): Fix compilation. 2008-06-26 Edward Hervey * ext/dv/gstdv.c: (plugin_init): Marking rank of dvdec as GST_RANK_MARGINAL since it's the slowest DV decoder available. Fixes #532393 2008-06-25 Sebastian Dröge * 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. 2008-06-25 Sebastian Dröge * tests/check/pipelines/wavpack.c: (bus_handler): Remove workaround for a bug in identity that is fixed in 0.10.20. 2008-06-25 Sebastian Dröge Patch by: Jason Donenfeld * 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. 2008-06-24 Tim-Philipp Müller * configure.ac: Depend on released versions of core and -base. 2008-06-23 Julien Moutte * 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...) 2008-06-20 Thomas Vander Stichele * gst/rtp/gstrtptheorapay.c: * gst/udp/gstmultiudpsink.c: Added debug. 2008-06-20 Christian Schaller * configure.ac: switch v4l2src over to the normal build instead of being 'experimental'. Fixes bug #536831. 2008-06-19 Wim Taymans * gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_setcaps): Remove unused variable so that we can compile again. 2008-06-19 Peter Kjellerstedt * 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. 2008-06-19 Sebastian Dröge * 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. 2008-06-19 Sebastian Dröge * 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. 2008-06-19 Sebastian Dröge * 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. 2008-06-19 Sebastian Dröge * 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. 2008-06-18 Sebastian Dröge * 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. 2008-06-18 Wim Taymans * gst/rtp/gstrtpg726pay.c: Fix caps, See #538891. 2008-06-18 Sebastian Dröge * 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. 2008-06-18 Wim Taymans Patch by: Mersad Jelacic * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpg726depay.c: (gst_rtp_g726_depay_base_init), (gst_rtp_g726_depay_class_init), (gst_rtp_g726_depay_init), (gst_rtp_g726_depay_setcaps), (gst_rtp_g726_depay_process), (gst_rtp_g726_depay_plugin_init): * gst/rtp/gstrtpg726depay.h: * gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_base_init), (gst_rtp_g726_pay_class_init), (gst_rtp_g726_pay_init), (gst_rtp_g726_pay_setcaps), (gst_rtp_g726_pay_plugin_init): * gst/rtp/gstrtpg726pay.h: Added G726 pay/depayloaders. Fixes #538891. 2008-06-17 Wim Taymans * 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. 2008-06-17 Wim Taymans * ext/libmng/Makefile.am: * ext/libmng/gstmng.c: (plugin_init): * ext/libmng/gstmngdec.c: (gst_mng_dec_base_init), (gst_mng_dec_class_init), (gst_mng_dec_sink_setcaps), (gst_mng_dec_init), (gst_mng_dec_src_getcaps), (gst_mng_dec_loop), (gst_mng_dec_get_property), (gst_mng_dec_set_property), (mngdec_error), (mngdec_openstream), (mngdec_closestream), (gst_mng_dec_sink_event), (mngdec_readdata), (mngdec_settimer), (mngdec_processheader), (mngdec_getcanvasline), (mngdec_refresh), (gst_mng_dec_change_state): * ext/libmng/gstmngdec.h: * ext/libmng/gstmngenc.c: (gst_mng_enc_base_init), (gst_mng_enc_class_init), (gst_mng_enc_sink_setcaps), (gst_mng_enc_init), (gst_mng_enc_chain), (gst_mng_enc_get_property), (gst_mng_enc_set_property): * ext/libmng/gstmngenc.h: Somewhat port mngenc and mngdec to 0.10. Does not work yet and has many bits ifdeffed out still. 2008-06-16 Sebastian Dröge * gst/matroska/matroska-demux.c: (gst_matroska_index_compare): When comparing index elements with the same time compare their block number. 2008-06-16 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_attached_file) Init variable to NULL to avoid compiler warning. 2008-06-16 Sebastian Dröge * 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. 2008-06-16 Wim Taymans * ext/speex/gstspeexenc.c: (gst_speex_enc_mode_get_type), (gst_speex_enc_class_init), (gst_speex_enc_sink_getcaps), (gst_speex_enc_get_latency), (gst_speex_enc_get_query_types), (gst_speex_enc_src_query), (gst_speex_enc_init), (gst_speex_enc_setup), (gst_speex_enc_push_buffer), (gst_speex_enc_chain), (gst_speex_enc_get_property), (gst_speex_enc_set_property): Add mode property. Some cleanups, add more debug info. Add latency query. 2008-06-16 Sebastian Dröge * 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. 2008-06-15 Sebastian Dröge * 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. 2008-06-15 Sebastian Dröge * 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. 2008-06-15 Sebastian Dröge * gst/matroska/ebml-read.c: (_ext2dbl), (gst_ebml_read_float): Prevent unaligned memory access when reading floats. 2008-06-15 Sebastian Dröge * 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. 2008-06-15 Sebastian Dröge * 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. 2008-06-14 Sebastian Dröge * 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. 2008-06-13 Tim-Philipp Müller * 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. 2008-06-13 Sebastian Dröge * 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. 2008-06-13 Sebastian Dröge * 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. 2008-06-13 Wim Taymans * 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 2008-06-13 Wim Taymans * gst/udp/gstudpnetutils.c: (gst_udp_is_multicast): Use g_ntohl for better portability. 2008-06-13 Wim Taymans * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init_send), (gst_multiudpsink_remove): Fix a typo and do some small cleanups. 2008-06-13 Wim Taymans Patch by: Olivier Crete * 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. 2008-06-12 Wim Taymans * 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. 2008-06-12 Stefan Kost * gst/avi/gstavimux.c: Simplify code. gst_tag_list_merge() does the NULL checks. Add a FIXME for a random constant in tagmuxing code. 2008-06-11 Stefan Kost * gst/debug/gsttaginject.c: * gst/debug/gsttaginject.h: Now actually adding the new element. 2008-06-11 Stefan Kost * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/gst-plugins-good-plugins.prerequisites: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gamma.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-goom2k1.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-monoscope.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multifile.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-soup.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: * gst/debug/Makefile.am: * gst/debug/breakmydata.c: * gst/debug/efence.c: * gst/debug/gstdebug.c: * gst/debug/gstnavseek.c: * gst/debug/gstpushfilesrc.c: * gst/debug/gstpushfilesrc.h: * gst/debug/negotiation.c: * gst/debug/progressreport.c: * gst/debug/progressreport.h: * gst/debug/rndbuffersize.c: * gst/debug/testplugin.c: Remove dummy plugin_init. Remove some undefined entries from doc- section file. Add taginject element and rebuild docs for it. 2008-06-11 Sebastian Dröge * 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. 2008-06-11 Sebastian Dröge * 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. 2008-06-11 Sebastian Dröge Patch by: Olivier Crete * 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. 2008-06-10 Wim Taymans * gst/videomixer/videomixer.c: (gst_videomixer_fill_queues), (gst_videomixer_blend_buffers), (gst_videomixer_update_queues): Remove bogus check. 2008-06-10 Wim Taymans * 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. 2008-06-10 Wim Taymans * 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. 2008-06-10 Sebastian Dröge * 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. 2008-06-10 Sebastian Dröge * 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. 2008-06-10 Sebastian Dröge * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/gst-plugins-good-plugins.prerequisites: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gamma.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-goom2k1.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-monoscope.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multifile.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-pulseaudio.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-soup.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: * ext/pulse/plugin.c: * ext/pulse/pulsemixer.c: * ext/pulse/pulsesink.c: * ext/pulse/pulsesrc.c: Add documentation to the pulseaudio plugin and run make update in docs/plugins. 2008-06-10 Sebastian Dröge Patch by: Brian Cameron * 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. 2008-06-10 Sebastian Dröge * configure.ac: * ext/pulse/Makefile.am: * ext/pulse/plugin.c: (plugin_init): * ext/pulse/pulsemixer.c: (gst_pulsemixer_interface_supported), (gst_pulsemixer_implements_interface_init), (gst_pulsemixer_init_interfaces), (gst_pulsemixer_base_init), (gst_pulsemixer_class_init), (gst_pulsemixer_init), (gst_pulsemixer_finalize), (gst_pulsemixer_set_property), (gst_pulsemixer_get_property), (gst_pulsemixer_change_state): * ext/pulse/pulsemixer.h: * ext/pulse/pulsemixerctrl.c: (gst_pulsemixer_ctrl_context_state_cb), (gst_pulsemixer_ctrl_sink_info_cb), (gst_pulsemixer_ctrl_source_info_cb), (gst_pulsemixer_ctrl_subscribe_cb), (gst_pulsemixer_ctrl_success_cb), (gst_pulsemixer_ctrl_open), (gst_pulsemixer_ctrl_close), (gst_pulsemixer_ctrl_new), (gst_pulsemixer_ctrl_free), (gst_pulsemixer_ctrl_list_tracks), (gst_pulsemixer_ctrl_timeout_event), (restart_time_event), (gst_pulsemixer_ctrl_set_volume), (gst_pulsemixer_ctrl_get_volume), (gst_pulsemixer_ctrl_set_record), (gst_pulsemixer_ctrl_set_mute): * ext/pulse/pulsemixerctrl.h: * ext/pulse/pulsemixertrack.c: (gst_pulsemixer_track_class_init), (gst_pulsemixer_track_init), (gst_pulsemixer_track_new): * ext/pulse/pulsemixertrack.h: * ext/pulse/pulseprobe.c: (gst_pulseprobe_context_state_cb), (gst_pulseprobe_sink_info_cb), (gst_pulseprobe_source_info_cb), (gst_pulseprobe_invalidate), (gst_pulseprobe_open), (gst_pulseprobe_enumerate), (gst_pulseprobe_close), (gst_pulseprobe_new), (gst_pulseprobe_free), (gst_pulseprobe_get_properties), (gst_pulseprobe_needs_probe), (gst_pulseprobe_probe_property), (gst_pulseprobe_get_values), (gst_pulseprobe_set_server): * ext/pulse/pulseprobe.h: * ext/pulse/pulsesink.c: (gst_pulsesink_base_init), (gst_pulsesink_class_init), (gst_pulsesink_init), (gst_pulsesink_destroy_stream), (gst_pulsesink_destroy_context), (gst_pulsesink_finalize), (gst_pulsesink_dispose), (gst_pulsesink_set_property), (gst_pulsesink_get_property), (gst_pulsesink_context_state_cb), (gst_pulsesink_stream_state_cb), (gst_pulsesink_stream_request_cb), (gst_pulsesink_stream_latency_update_cb), (gst_pulsesink_open), (gst_pulsesink_close), (gst_pulsesink_prepare), (gst_pulsesink_unprepare), (gst_pulsesink_write), (gst_pulsesink_delay), (gst_pulsesink_success_cb), (gst_pulsesink_reset), (gst_pulsesink_change_title), (gst_pulsesink_event), (gst_pulsesink_get_type): * ext/pulse/pulsesink.h: * ext/pulse/pulsesrc.c: (gst_pulsesrc_interface_supported), (gst_pulsesrc_implements_interface_init), (gst_pulsesrc_init_interfaces), (gst_pulsesrc_base_init), (gst_pulsesrc_class_init), (gst_pulsesrc_init), (gst_pulsesrc_destroy_stream), (gst_pulsesrc_destroy_context), (gst_pulsesrc_finalize), (gst_pulsesrc_dispose), (gst_pulsesrc_set_property), (gst_pulsesrc_get_property), (gst_pulsesrc_context_state_cb), (gst_pulsesrc_stream_state_cb), (gst_pulsesrc_stream_request_cb), (gst_pulsesrc_open), (gst_pulsesrc_close), (gst_pulsesrc_prepare), (gst_pulsesrc_unprepare), (gst_pulsesrc_read), (gst_pulsesrc_delay), (gst_pulsesrc_change_state), (gst_pulsesrc_get_type): * ext/pulse/pulsesrc.h: * ext/pulse/pulseutil.c: (gst_pulse_fill_sample_spec), (gst_pulse_client_name), (gst_pulse_gst_to_channel_map): * ext/pulse/pulseutil.h: Add pulseaudio GStreamer element from gst-pulse. Development will continue here instead of pulseaudio SVN. Fixes bug #400679. Only changes over gst-pulse SVN are added copyright to the top of files and coding style changes. 2008-06-09 Tim-Philipp Müller Patch by: Benjamin Kampmann * 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). 2008-06-09 Sebastian Dröge Patch by: Sjoerd Simons * 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. 2008-06-09 Sebastian Dröge Patch by: Bastien Nocera * sys/v4l2/gstv4l2vidorient.c: * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): Fix compilation with newer GIT kernels that deprecated V4L2_CID_HCENTER and V4L2_CID_VCENTER. Fixes bug #536317. 2008-06-07 Tim-Philipp Müller * configure.ac: * ext/cdio/gstcdio.c: * ext/cdio/gstcdio.h: * ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_open): Require libcdio >= 0.76. 2008-06-05 Thijs Vermeir * gst/avi/gstavidemux.c: Catch UNEXPECTED when downstream has reached end of segment in reverse mode. 2008-06-04 Thijs Vermeir * gst/avi/gstavidemux.c: Fix typo in comment 2008-06-04 Thijs Vermeir * gst/avi/gstavidemux.c: Because we don't know the frame order we need to push till the next keyframe 2008-06-04 Sebastian Dröge Patch by: Sjoerd Simons * 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. 2008-06-04 Thijs Vermeir * gst/avi/gstavidemux.c: Set EOS when going out of the segment in reverse playback 2008-06-04 Tim-Philipp Müller * ext/taglib/Makefile.am:: Add -Wno-attributes to CXXFLAGS to suppress warning caused by taglib headers (with gcc 4.3.1). 2008-06-04 Peter Kjellerstedt * 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. 2008-06-04 Tim-Philipp Müller * 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). 2008-06-04 Sebastian Dröge * 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. 2008-06-04 Sebastian Dröge * 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. 2008-06-02 Wim Taymans Patch by: Thijs Vermeir * gst/avi/gstavidemux.c: (gst_avi_demux_index_next), (gst_avi_demux_index_prev), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_do_seek), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry): * gst/avi/gstavidemux.h: Implement reverse playback. Fixes #535300. Small cleanups. 2008-06-02 Sebastian Dröge * 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. 2008-05-31 Edward Hervey Patch by: Bastien Nocera * gst/qtdemux/qtdemux.c: (qtdemux_tag_add_str), (qtdemux_parse_udta): * gst/qtdemux/qtdemux_fourcc.h: Improve meta-data handling, add 'comment', 'description' and 'copyright' tag handling. Fixes #535935 2008-05-31 Julien Moutte * 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. 2008-05-31 Sebastian Dröge * 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. 2008-05-30 Sebastian Dröge * 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. 2008-05-29 Wim Taymans Based on patch by: Sebastian Keller * 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. 2008-05-28 Jan Schmidt * 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. 2008-05-28 Wim Taymans * 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. 2008-05-28 Stefan Kost * 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 :) 2008-05-28 Stefan Kost * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-audiofx.xml: * gst/audiofx/Makefile.am: * gst/audiofx/audiofx.c: * gst/audiofx/audiokaraoke.c: * gst/audiofx/audiokaraoke.h: * gst/audiofx/audiovoice.c: * gst/audiofx/audiovoice.h: Rename audiovoice to audiokaraoke and add it to the docs. 2008-05-28 Stefan Kost * REQUIREMENTS: * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/gst-plugins-good-plugins.prerequisites: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gamma.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-goom2k1.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-monoscope.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multifile.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-soup.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: * ext/aalib/gstaasink.c: * ext/libcaca/gstcacasink.c: Document aasink and cacasink. 2008-05-28 Sebastian Dröge * 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. 2008-05-27 Edward Hervey * gst/videomixer/videomixer.c: (gst_videomixer_reset), (gst_videomixer_init), (gst_videomixer_request_new_pad), (gst_videomixer_fill_queues), (forward_event_func), (forward_event), (gst_videomixer_src_event), (gst_videomixer_sink_event): * gst/videomixer/videomixer.h: Implement proper seek/newsegment handling. Based on adder's implementation. Fixes #535121 2008-05-26 Wim Taymans Patch by: Jan Gerber * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add caps for DVCPRO50 and DVCPRO HD PAL/NTSC. See #526481. 2008-05-26 Wim Taymans * gst/audiofx/Makefile.am: * gst/audiofx/audiofx.c: (plugin_init): * gst/audiofx/audiovoice.c: (gst_audio_voice_base_init), (gst_audio_voice_class_init), (gst_audio_voice_init), (update_filter), (gst_audio_voice_set_property), (gst_audio_voice_get_property), (gst_audio_voice_setup), (gst_audio_voice_transform_int), (gst_audio_voice_transform_float), (gst_audio_voice_transform_ip): * gst/audiofx/audiovoice.h: Add simple voice removal element. Yay karaoke. 2008-05-26 Wim Taymans Patch by: William M. Brack * 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. 2008-05-26 Wim Taymans Patch by: William M. Brack * 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. 2008-05-26 Wim Taymans Patch by: William M. Brack * sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure), (gst_v4l2_get_caps_info): Add NV12, NV21 and bayer support. See #520092. 2008-05-26 Wim Taymans * gst/qtdemux/qtdemux.c: (gst_qtdemux_find_segment), (gst_qtdemux_activate_segment): Unbreak segment activation again. Fixes #531672. 2008-05-25 Sebastian Dröge * 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. 2008-05-24 Tim-Philipp Müller * configure.ac: We need -base CVS (rtsp). 2008-05-22 Tim-Philipp Müller * 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. 2008-05-22 Julien Moutte * 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. 2008-05-21 Wim Taymans * tests/check/elements/avimux.c: (setup_src_pad), (teardown_src_pad): * tests/check/elements/icydemux.c: (icydemux_found_pad), (GST_START_TEST): * tests/check/elements/matroskamux.c: (setup_src_pad), (teardown_src_pad), (setup_sink_pad), (teardown_sink_pad): * tests/check/elements/videocrop.c: (video_crop_get_test_caps), (GST_START_TEST): * tests/check/elements/wavpackparse.c: (wavpackparse_found_pad), (setup_wavpackparse), (cleanup_wavpackparse): Don't use gst_element_get_pad(), it's a bad, bad method. 2008-05-21 Wim Taymans * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_reset), (do_toggle_element): * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset), (do_toggle_element): * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_reset), (do_toggle_element): * ext/gconf/gstswitchsink.c: (gst_switch_commit_new_kid): * ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_reset), (do_toggle_element): * ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_reset), (do_toggle_element): * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_reset), (gst_auto_audio_sink_detect): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_reset), (gst_auto_video_sink_detect): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_stream_free), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_stream_configure_udp_sink), (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): * tests/icles/videocrop-test.c: (test_with_caps), (video_crop_get_test_caps): Don't use gst_element_get_pad(), it's a bad method. 2008-05-21 Wim Taymans * 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. 2008-05-21 Stefan Kost * gst/avi/gstavimux.c: Also support alaw/mulaw. 2008-05-21 Wim Taymans * 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. 2008-05-21 Wim Taymans Patch by: Gustaf Räntilä * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render): Ignore EPERM errors from sendto. Fixes #533619. 2008-05-21 Wim Taymans Patch by: Henrik Eriksson * 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. Fixes #469917. 2008-05-21 Wim Taymans * gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_process): Improve debugging of the ident. 2008-05-21 Wim Taymans Patch by: Bruno Santos * 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. 2008-05-21 Wim Taymans Patch by: Patrick Radizi * 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. 2008-05-20 Wim Taymans * 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. 2008-05-20 Stefan Kost * gst/videomixer/videomixer.c: Add missing incudes. 2008-05-20 Peter Kjellerstedt * gst/rtp/gstrtph264pay.c: (gst_h264_scan_mode_get_type), (gst_rtp_h264_pay_handle_buffer): * gst/rtp/gstrtph264pay.h: Correct a typo (sinle -> single). 2008-05-20 Wim Taymans * 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. 2008-05-20 Sebastian Dröge * 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. 2008-05-20 Jan Schmidt * 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. 2008-05-20 Wim Taymans * 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. 2008-05-19 Stefan Kost * 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. 2008-05-18 Mark Nauwelaerts * 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. 2008-05-17 Sebastian Dröge * 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. 2008-05-17 Sebastian Dröge reviewed by: * gst/matroska/ebml-write.c: (gst_ebml_write_finalize), (gst_ebml_write_set_cache): * 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_audio_pad_setcaps), (gst_matroska_mux_start), (gst_matroska_mux_finish), (gst_matroska_mux_collected): * sys/v4l2/gstv4l2src.c: * tests/check/pipelines/wavpack.c: (bus_handler): * win32/common/config.h: 2008-05-16 Jan Schmidt * ext/wavpack/gstwavpackstreamreader.c: * tests/examples/spectrum/demo-audiotest.c: * tests/examples/spectrum/demo-osssrc.c: Fix some compiler warnings. 2008-05-14 Wim Taymans * 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. 2008-05-14 Peter Kjellerstedt * 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. 2008-05-14 Stefan Kost * 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. 2008-05-13 Mark Nauwelaerts * 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. 2008-05-13 Wim Taymans * gst/rtp/gstrtpg729depay.c: (gst_rtp_g729_depay_setcaps): Fix wrong caps string. 2008-05-13 Wim Taymans Based on patch by: Olivier Crete * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpg729depay.c: (gst_rtp_g729_depay_base_init), (gst_rtp_g729_depay_class_init), (gst_rtp_g729_depay_init), (gst_rtp_g729_depay_setcaps), (gst_rtp_g729_depay_process), (gst_rtp_g729_depay_plugin_init): * gst/rtp/gstrtpg729depay.h: * gst/rtp/gstrtpg729pay.c: (gst_rtpg729pay_base_init), (gst_rtpg729pay_class_init), (gst_rtpg729pay_init), (gst_rtpg729pay_setcaps), (gst_rtp_g729_pay_plugin_init): * gst/rtp/gstrtpg729pay.h: Added G729 pay and depayloaders. Fixes #532409. 2008-05-13 Wim Taymans * ext/speex/gstspeexdec.c: (speex_dec_sink_event): Fix the calculation of the duration of the concealment packets. 2008-05-12 Wim Taymans Based on patch by: Olivier Crete * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpdvdepay.c: (gst_rtp_dv_depay_base_init), (gst_rtp_dv_depay_class_init), (gst_rtp_dv_depay_init), (parse_encode), (gst_rtp_dv_depay_setcaps), (calculate_difblock_location), (gst_rtp_dv_depay_process), (gst_rtp_dv_depay_reset), (gst_rtp_dv_depay_change_state), (gst_rtp_dv_depay_plugin_init): * gst/rtp/gstrtpdvdepay.h: * gst/rtp/gstrtpdvpay.c: (gst_dv_pay_mode_get_type), (gst_rtp_dv_pay_base_init), (gst_rtp_dv_pay_class_init), (gst_rtp_dv_pay_init), (gst_dv_pay_set_property), (gst_dv_pay_get_property), (gst_rtp_dv_pay_setcaps), (gst_dv_pay_negotiate), (include_dif), (gst_rtp_dv_pay_handle_buffer), (gst_rtp_dv_pay_plugin_init): * gst/rtp/gstrtpdvpay.h: Add DV pay and depayloaders. Fixes #532423. 2008-05-12 Mark Nauwelaerts * 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. 2008-05-12 Mark Nauwelaerts * gst/avi/gstavimux.c: (gst_avi_mux_pad_reset): Do not leave fourcc stream header field empty upon reset. Fixes #519301. 2008-05-11 Jan Schmidt * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-goom2k1.xml: * gst/goom/gstgoom.c: * gst/goom2k1/gstgoom.c: Add goom2k1 into the docs. 2008-05-08 Wim Taymans Based on patch by: Wouter Cloetens * 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. 2008-05-08 Stefan Kost * 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. 2008-05-08 Sebastian Dröge Patch by: Sjoerd Simons * gst/matroska/matroska-mux.c: (gst_matroska_mux_collected): Update the track duration if the old one was invalid. Fixes bug #532117. 2008-05-07 Ole André Vadla Ravnås * 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. 2008-05-07 Ole André Vadla Ravnås patch by: Haakon Sporsheim * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_setup_ddraw): Do IDirectDrawClipper_SetHWnd() if the window ID has already been set after creating the clipper. 2008-05-07 Ole André Vadla Ravnås patch by: Haakon Sporsheim * 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. 2008-05-07 Ole André Vadla Ravnås patch by: Haakon Sporsheim * 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. 2008-05-07 Ole André Vadla Ravnås patch by: Haakon Sporsheim * 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. 2008-05-07 Ole André Vadla Ravnås * 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. 2008-05-07 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc): Clear the flags on recycled buffers from buffer_alloc. Partially fixes #520885. 2008-05-07 Ole André Vadla Ravnås * gst/rtp/gstrtpilbcpay.c: Added missing stdlib.h include for strtol(), and made include ordering and style consistent with the corresponding depayloader. 2008-05-07 Tim-Philipp Müller * configure.ac: Error out if we don't have the required core/base versions. 2008-05-06 Sebastian Dröge Patch by: Thijs Vermeir * sys/osxvideo/cocoawindow.m: Fix compiler warnings on PPC64. Fixes bug #499318. 2008-05-05 Wim Taymans Patch by: Sjoerd Simons * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_open): Don't leak file descriptors on error. Fixes #531532. 2008-05-03 Sebastian Dröge * 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. 2008-05-02 Wim Taymans * 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. 2008-05-02 Wim Taymans Patch by: Olivier Crete * 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. 2008-05-02 Wim Taymans Patch by: Olivier Crete * gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_class_init), (gst_rtp_speex_pay_getcaps): Add negotiation for the speex channels and rate. See #465146. 2008-05-02 Wim Taymans Patch by: Olivier Crete * gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_class_init), (gst_rtpilbcpay_sink_setcaps), (gst_rtpilbcpay_sink_getcaps): Add negotiation for the ILBC mode. See #465146. 2008-05-02 Stefan Kost * ext/soup/gstsouphttpsrc.c: Include stdlib to fix the build. Use g_free instead of free, libsoup uses glib. 2008-05-02 Wim Taymans Patch by: j^ * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add more mpeg2 variants. Fixes #530886. 2008-05-01 Tim-Philipp Müller Patch by: Youness Alaoui * 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). 2008-04-30 Tim-Philipp Müller * configure.ac: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Use new error code for encrypted streams (which requires core CVS). 2008-04-30 Tim-Philipp Müller * gst/qtdemux/qtdemux.c: (gst_qtdemux_videosrc_template), (gst_qtdemux_audiosrc_template): Fix swapped pad template names, spotted by Thiago Sousa Santos. 2008-04-30 Wim Taymans * ext/speex/gstspeexdec.c: (speex_dec_sink_event), (speex_dec_chain_parse_data): Produce concealment data when time progresses in a segment update. 2008-04-29 Wim Taymans * 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. 2008-04-28 Michael Smith * gst/debug/gstnavigationtest.c: MSVC doesn't provide rint(), define an adequate replacement locally as elsewhere. 2008-04-28 Julien Moutte * gst/debug/rndbuffersize.c: (gst_rnd_buffer_size_loop): Fix printf format to pacify Mac OSX's gcc. 2008-04-25 Tim-Philipp Müller * 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. 2008-04-25 Tim-Philipp Müller * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/gst-plugins-good-plugins.prerequisites: * docs/plugins/inspect/plugin-1394.xml: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gamma.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-monoscope.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multifile.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: Add docs for gdkpixbufsink; update docs to CVS version. 2008-04-25 Wim Taymans * tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh: Remove test sync-offset by default. 2008-04-25 Tim-Philipp Müller * 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). 2008-04-25 Tim-Philipp Müller Patch by: Jesús Corrius * 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. 2008-04-25 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_combine_flows): Fix typo in comments. * tests/examples/rtp/client-H263p-PCMA.sdp: * tests/examples/rtp/client-H263p-PCMA.sh: * tests/examples/rtp/client-H264-PCMA.sdp: * tests/examples/rtp/client-H264-PCMA.sh: * tests/examples/rtp/client-H264.sdp: * tests/examples/rtp/client-H264.sh: * tests/examples/rtp/client-PCMA.sdp: * tests/examples/rtp/client-PCMA.sh: * tests/examples/rtp/server-alsasrc-PCMA.sh: * tests/examples/rtp/server-v4l2-H263p-alsasrc-AMR.sh: * tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh: Add some more docs and fix examples. 2008-04-25 Sebastian Dröge * 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. 2008-04-24 Sebastian Dröge * ext/cairo/gsttextoverlay.c: (gst_text_overlay_set_property): * gst/debug/tests.c: (md5_get_value): * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps): * gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_setcaps): * gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps): * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps): Stop using deprecated GLib functions. 2008-04-24 Jan Schmidt * configure.ac: Back to development -> 0.10.8.1 === release 0.10.8 === 2008-04-23 Jan Schmidt * configure.ac: releasing 0.10.8, "One For The Money" 2008-04-22 Jan Schmidt * configure.ac: 0.10.7.4 pre-release 2008-04-22 Jan Schmidt * gst/goom/config_param.c: (goom_plugin_parameters_free): * gst/goom/convolve_fx.c: (convolve_init), (convolve_free): * gst/goom/filters.c: (zoomFilterVisualFXWrapper_free): * gst/goom/flying_stars_fx.c: (fs_free): * gst/goom/goom_config_param.h: * gst/goom/goom_core.c: (goom_init), (goom_close): * gst/goom/goom_plugin_info.h: * gst/goom/gstgoom.c: (gst_goom_finalize): * gst/goom/lines.c: (goom_lines_free): * gst/goom/plugin_info.c: (plugin_info_init), (plugin_info_free): * gst/goom/surf3d.c: (grid3d_free): * gst/goom/surf3d.h: * gst/goom/tentacle3d.c: (tentacle_free): Free a bunch of stuff, and initialise things to fix leaks and valgrind warnings in the testsuite. Fixes: #529268 2008-04-21 Wim Taymans * 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. 2008-04-18 Tim-Philipp Müller * tests/icles/gdkpixbufsink-test.c: Add cast to placate gcc 4.1.2. 2008-04-16 Jan Schmidt * configure.ac: 0.10.7.3 pre-release 2008-04-16 Jan Schmidt * 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. 2008-04-17 Jan Schmidt * gst/goom/convolve_fx.c: (convolve_apply): Don't ever draw the GOOM logo. Fixes: #528615 2008-04-17 Edward Hervey * ext/cdio/gstcdiocddasrc.c: * ext/dv/gstdvdemux.c: gst_atomic_int_set ==> g_atomic_int_set 2008-04-16 Tim-Philipp Müller * configure.ac: * gst/goom/Makefile.am: * gst/goom/convolve_fx.c: * gst/goom/default_scripts.h: * gst/goom/goom.h: * gst/goom/goom_core.c: (choose_a_goom_line): * gst/goom/goom_plugin_info.h: * gst/goom/goomsl.c: * gst/goom/goomsl.h: * gst/goom/goomsl_hash.c: * gst/goom/goomsl_hash.h: * gst/goom/goomsl_heap.c: * gst/goom/goomsl_heap.h: * gst/goom/goomsl_private.h: * gst/goom/plugin_info.c: Strip out the config/script parsing stuff, we don't need it. Fixes #527999. 2008-04-15 Tim-Philipp Müller * 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 2008-04-14 Tim-Philipp Müller * gst-plugins-good.spec.in: Update for souphttpsrc plugin which has moved to -good. 2008-04-14 Jan Schmidt * gst/matroska/matroska-demux.c: (gst_matroska_demux_handle_seek_event): Fix open-ended seeks in matroskademux Patch by: Mark Nauwelaerts Fixes: #526557 2008-04-14 Jan Schmidt * tests/check/Makefile.am: Add soup test certificates to the dist. 2008-04-13 Jan Schmidt * ext/Makefile.am: Remove LADSPA reference I missed. 2008-04-13 Sebastian Dröge * 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. 2008-04-13 Jan Schmidt * configure.ac: * ext/Makefile.am: Remove LADSPA plugin. Fixes: #515978 2008-04-13 Jan Schmidt * configure.ac: * 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-soup.xml: * ext/Makefile.am: * tests/check/Makefile.am: Move soup plugin from -bad (Fixes: #523124) 2008-04-11 Jan Schmidt * 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 2008-04-09 Tim-Philipp Müller * gst/goom/Makefile.am: * gst/goom/gfontlib.c: * gst/goom/gfontlib.h: * gst/goom/gfontrle.c: * gst/goom/gfontrle.h: * gst/goom/goom.h: * gst/goom/goom_core.c: (goom_update): * gst/goom/goom_plugin_info.h: * gst/goom/gstgoom.c: (gst_goom_chain): * gst/goom/plugin_info.c: Remove a bunch of font/text related code that we don't need. 2008-04-09 Tim-Philipp Müller * 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. 2008-04-09 Stefan Kost * 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. 2008-04-09 Jan Schmidt * 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. 2008-04-08 Tim-Philipp Müller * 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(). 2008-04-07 Julien Moutte * gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_setcaps): Fix build because of a bad argument number. 2008-04-06 Tim-Philipp Müller * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/gdkpixbufsink-test.c: Interactive test app for gdkpixbufsink. 2008-04-06 Sebastian Dröge Patch by: Damien Lespiau * configure.ac: Actually build dlls when cross-compiling with mingw32. Fixes bug #526247. 2008-04-05 Tim-Philipp Müller * ext/hal/hal.c: (gst_hal_get_alsa_element): Don't munge device string to 'default:x' for capture devices. Fixes #525833. 2008-04-04 Sebastian Dröge * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_index_entry_free): Always use GSlice as we actually depend on GLib 2.12 already. 2008-04-04 Tim-Philipp Müller * 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). 2008-04-04 Wim Taymans * 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. 2008-04-04 Tim-Philipp Müller * 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. 2008-04-03 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/gdkpixbufsink.c: Add unit test for gdkpixbufsink element. 2008-04-03 Tim-Philipp Müller * ext/gdk_pixbuf/Makefile.am: * ext/gdk_pixbuf/gstgdkpixbuf.c: (plugin_init): * ext/gdk_pixbuf/gstgdkpixbufsink.c: (gst_gdk_pixbuf_sink_base_init), (gst_gdk_pixbuf_sink_class_init), (gst_gdk_pixbuf_sink_init), (gst_gdk_pixbuf_sink_start), (gst_gdk_pixbuf_sink_stop), (gst_gdk_pixbuf_sink_set_caps), (gst_gdk_pixbuf_sink_pixbuf_destroy_notify), (gst_gdk_pixbuf_sink_get_pixbuf_from_buffer), (gst_gdk_pixbuf_sink_handle_buffer), (gst_gdk_pixbuf_sink_preroll), (gst_gdk_pixbuf_sink_render), (gst_gdk_pixbuf_sink_set_property), (gst_gdk_pixbuf_sink_get_property): * ext/gdk_pixbuf/gstgdkpixbufsink.h: Add gdkpixbufsink element for easy snapshotting (#525946). 2008-04-03 Sebastian Dröge * tests/check/pipelines/wavpack.c: (wavpack_suite): Bump timeout from 3 to 60 seconds. 2008-04-03 Sebastian Dröge * tests/check/pipelines/.cvignore: Remove useless file. * tests/check/pipelines/.cvsignore: Add new test to .cvsignore. 2008-04-03 Sebastian Dröge * 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. 2008-04-03 Sebastian Dröge * 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(). 2008-04-02 Tim-Philipp Müller Patch by: Brian Cameron * sys/sunaudio/gstsunaudio.c: * sys/sunaudio/gstsunaudiomixer.c: * sys/sunaudio/gstsunaudiomixer.h: * sys/sunaudio/gstsunaudiomixerctrl.c: * sys/sunaudio/gstsunaudiomixerctrl.h: * sys/sunaudio/gstsunaudiomixertrack.c: * sys/sunaudio/gstsunaudiomixertrack.h: * sys/sunaudio/gstsunaudiosink.c: * sys/sunaudio/gstsunaudiosink.h: * sys/sunaudio/gstsunaudiosrc.c: * sys/sunaudio/gstsunaudiosrc.h: Fix up copyrights (#525860). 2008-04-02 Tim-Philipp Müller * gst/goom/goomsl.c: (gsl_read_file): Check return value of fread() to avoid compiler warnings. 2008-04-01 Wim Taymans Based on patch by: Mersad Jelacic * 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. 2008-03-31 David Schleef * gst/goom/xmmx.c: Fix constraints on asm code so that it compiles consistently. Fixes #522278. 2008-03-27 Tim-Philipp Müller Patch by: Brian Cameron * 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. 2008-03-26 Edgard Lima * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2object.h: Add device-fd property to make it possible to apps to call ioctl's. 2008-03-25 Wim Taymans * gst/qtdemux/qtdemux.c: (next_entry_size): Unbreak streaming mode again. 2008-03-25 Tim-Philipp Müller * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture): Remove superfluous DEBUG macro. 2008-03-25 Tim-Philipp Müller Based on patch by: William M. Brack * 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. 2008-03-23 Tim-Philipp Müller * gst/goom/Makefile.am: Remove ppc assembler optimisations from the build until they actually build (they also seem to have GPL headers). 2008-03-23 Tim-Philipp Müller * m4/Makefile.am: Better not dist files that don't exist any longer (lrint*m4). 2008-03-21 Sebastian Dröge * configure.ac: * m4/lrint.m4: * m4/lrintf.m4: Remove lrint/lrintf checks. We don't use it anywhere. 2008-03-18 Andy Wingo * 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. 2008-03-18 Andy Wingo * 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. 2008-03-17 Tim-Philipp Müller Patch by: William M. Brack * 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) 2008-03-17 Wim Taymans Patch by: Ole André Vadla Ravnås * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize): Call WSAStartup() and WSACleanup before using the Winsock API. See #520808. 2008-03-16 Stefan Kost * gst/avi/gstavidemux.c: Erm, the buffer-size is just guint, no need for the special format specifier. 2008-03-16 Tim-Philipp Müller * 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. 2008-03-16 Stefan Kost * 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. 2008-03-16 Stefan Kost * gst/avi/gstavidemux.c: Chunksize is uint32. Fix format specifier. 2008-03-14 Christian Schaller * gst/rtsp/COPYING.MIT: Remove extra line that got copied over by mistake. Return file to pure MIT text. 2008-03-13 Sebastian Dröge * gst/audiofx/audiofx.c: Use GST_LICENSE, GST_PACKAGE_NAME and GST_PACKAGE_ORIGIN instead of hardcoding values. 2008-03-11 Tim-Philipp Müller Patch by: Mark Nauwelaerts * 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). 2008-03-11 Wim Taymans * 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. 2008-03-11 Tim-Philipp Müller * gst/avi/gstavisubtitle.h: (GST_IS_AVI_SUBTITLE), (GST_IS_AVI_SUBTITLE_CLASS): Fix up IS_FOO macros, which makes gtk-doc much happier. 2008-03-08 Tim-Philipp Müller * tests/icles/Makefile.am: Move the -lgstfoo where it belongs. 2008-03-08 Sebastian Dröge * 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. 2008-03-08 Sebastian Dröge Patch by: Olivier Crete * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_process): Check that a buffer is large enough before reading from it. Fixes bug #521102. 2008-03-07 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_start): Fix compilation after removing the GstPollMode from the constructor. 2008-03-07 Sebastian Dröge * 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. 2008-03-07 Sebastian Dröge Patch by: Olivier Crete * ext/speex/gstspeexenc.c: (gst_speex_enc_chain): Unref the buffers only once when handling not-negotiated errors. Fixes bug #520764. 2008-03-07 Wim Taymans Patch by: Ole André Vadla Ravnås * 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. 2008-03-06 Wim Taymans * gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes), (gst_ebml_read_pull_bytes), (gst_ebml_read_element_id), (gst_ebml_read_element_length), (gst_ebml_peek_id), (gst_ebml_read_skip), (gst_ebml_read_buffer), (gst_ebml_read_bytes), (gst_ebml_read_uint), (gst_ebml_read_sint), (gst_ebml_read_float), (gst_ebml_read_ascii), (gst_ebml_read_utf8), (gst_ebml_read_date), (gst_ebml_read_master), (gst_ebml_read_binary), (gst_ebml_read_header): * gst/matroska/ebml-read.h: * gst/matroska/matroska-demux.c: (gst_matroska_demux_combine_flows), (gst_matroska_demux_reset), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_demux_handle_src_query), (gst_matroska_demux_handle_seek_event), (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_sync_streams), (gst_matroska_demux_push_hdr_buf), (gst_matroska_demux_push_flac_codec_priv_data), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_add_wvpk_header), (gst_matroska_demux_check_subtitle_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_stream), (gst_matroska_demux_loop): * gst/matroska/matroska-demux.h: * gst/matroska/matroska-ids.h: Handle return values from pull_range in a more granular way to properly shut down on seeks. Combine return values from push. Implement proper error handling. Prepare for handling seeking correctly. 2008-03-03 Jan Schmidt * 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 2008-03-03 Peter Kjellerstedt * 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. 2008-03-03 Peter Kjellerstedt * configure.ac: Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which plug-ins are included/excluded. (#498222) 2008-02-29 Michael Smith * gst/videomixer/videomixer.c: (gst_videomixer_blend_buffers): Don't call gst_object_sync_values() unless we have a valid timestamp. 2008-02-28 David Schleef * 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. 2008-02-28 David Schleef * gst/avi/gstavimux.c: Add Dirac encoding 2008-02-28 Wim Taymans Patch by: Peter Kjellerstedt * 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. 2008-02-28 Sebastian Dröge * 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. 2008-02-26 Jan Schmidt * 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. 2008-02-25 Stefan Kost * gst/goom/xmmx.c: Use 'emms' instead of 'femms' to not crash on cpus that do not implement this 3dnow specific instruction. 2008-02-25 Sebastian Dröge * gst/goom/plugin_info.c: (setOptimizedMethods): Use extended MMX for draw_line() too if available, not only normal MMX. 2008-02-25 Sebastian Dröge * ext/jpeg/gstjpeg.c: (plugin_init): Remove (commented out) smoke typefinder. This is in base now. 2008-02-23 Jan Schmidt * gst/goom2k1/Makefile.am: * gst/goom2k1/gstgoom.c: Rename the installed library, and don't register the same GType name as the new goom. 2008-02-23 Tim-Philipp Müller * configure.ac: * ext/taglib/Makefile.am: Check for and define ERROR_CXXFLAGS and GST_CXXFLAGS and use them when building C++ code (#516509). 2008-02-23 Tim-Philipp Müller * 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. 2008-02-23 Tim-Philipp Müller * gst/goom/goomsl_heap.c: (align_it): * gst/goom/plugin_info.c: (setOptimizedMethods): Compile fixes for x86-64. 2008-02-23 Bastien Nocera * 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 2008-02-23 Bastien Nocera * gst/goom/Makefile.am: Remove the warnings being disabled, fix linkage on x86, spotted by Sebastian Dröge * 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) 2008-02-23 Bastien Nocera * 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 2008-02-22 Wim Taymans * 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. 2008-02-22 Sebastian Dröge * 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. 2008-02-22 Sebastian Dröge * 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. 2008-02-22 Sebastian Dröge Patch by: Jens Granseuer * tests/examples/equalizer/demo.c: (main): C89 fix, moving variable declarations to the beginning of the block. Fixes bug #517933. 2008-02-21 Jan Schmidt * configure.ac: Back to development... === release 0.10.7 === 2008-02-20 Jan Schmidt * configure.ac: releasing 0.10.7, "Red Door Black" 2008-02-19 Sebastian Dröge * gst/alpha/Makefile.am: Link alpha plugin with libgstbase. Fixes bug #517386. 2008-02-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream): Init values to -1 instead of the default 0 value. Fixes #516524. 2008-02-14 Stefan Kost * tests/examples/spectrum/spectrum-example.c: Add missing include to fix compilation when libxml usage is disabled. Fixes: #516371 2008-02-12 Jan Schmidt patch by: Wim Taymans 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 2008-02-12 Sebastien Moutte * win32/MANIFEST: Add libgstpng.dsp to MANIFEST. * win32/vs6/libgstaudiofx.dsp: Add new source files to VS project file. 2008-02-12 Jan Schmidt * 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 2008-02-12 Sebastian Dröge * sys/directdraw/gstdirectdrawsink.c: (gst_ddrawsurface_class_init), (gst_ddrawsurface_finalize), (gst_directdraw_sink_finalize): Properly chain up finalize functions. Fixes bug #515980. 2008-02-12 Sebastian Dröge * 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. 2008-02-12 Jan Schmidt * sys/ximage/ximageutil.c: Chain up in the finalize function for our custom buffer sub-class. Patch by: Sebastian Dröge Fixes: #515706 2008-02-12 Sebastian Dröge * gst/debug/efence.c: (gst_fenced_buffer_finalize), (gst_fenced_buffer_class_init): Properly chain up finalize method. Fixes bug #515979. 2008-02-12 Jan Schmidt * sys/ximage/gstximagesrc.c: Free allocated Damage memory before closing our connection to the X server. Partially fixes: #515706 2008-02-12 Sebastian Dröge * 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. 2008-02-11 Jan Schmidt * gst/avi/gstavidemux.c: Revert patch which sends timestamps only on keyframes, as it breaks playback with current gst-ffmpeg. Fixes: #515562 2008-02-11 Sebastian Dröge * 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. 2008-02-11 Sebastian Dröge * 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. 2008-02-10 Sebastian Dröge * gst/audiofx/audioamplify.c: * gst/audiofx/audiochebband.c: * gst/audiofx/audiocheblimit.c: * gst/audiofx/audiodynamic.c: * gst/audiofx/audioinvert.c: * gst/audiofx/audiopanorama.c: * gst/audiofx/audiowsincband.c: * gst/audiofx/audiowsinclimit.c: Fix long description of audiofx elements. Fixes bug #515457. 2008-02-09 Jan Schmidt * 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 2008-02-08 Jan Schmidt * 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 2008-02-08 Christian Schaller * gst/audiofix/Makefile.am: add missing header files 2008-02-08 Julien Moutte * 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 2008-02-08 Jan Schmidt * tests/check/elements/.cvsignore: Spell the new tests correctly in .cvsignore 2008-02-08 Tim-Philipp Müller * 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. 2008-02-08 Jan Schmidt * configure.ac: * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-multifile.xml: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: Move multifile plugin from -bad. Fixes: #490283 2008-02-08 Jan Schmidt * configure.ac: * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-spectrum.xml: * gst/spectrum/Makefile.am: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/examples/Makefile.am: Move spectrum plugin from -bad. Move examples into tests/examples/spectrum. 2008-02-08 Jan Schmidt * configure.ac: * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.interfaces: * docs/plugins/inspect/plugin-equalizer.xml: * gst/equalizer/Makefile.am: * tests/check/Makefile.am: * tests/examples/Makefile.am: Move the equalizer plugin across from -bad * tests/check/elements/.cvsignore: Add equalizer, audiosincwband and audiosincwlimit * tests/check/elements/equalizer.c: Fix compiler warnings Fixes: #415627 2008-02-07 Jan Schmidt * configure.ac: Only build with DISABLE_DEPRECATED during the CVS cycle. Pre-releases are treated like releases and build without it. 2008-02-07 Jan Schmidt * 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 2008-02-07 Tim-Philipp Müller * 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. 2008-02-07 Sebastien Moutte * 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 2008-02-07 Sebastian Dröge Patch by: Bjarne Rosengren * gst/matroska/ebml-write.c: (gst_ebml_write_element_push): Don't leak buffers when we don't push them downstream. Fixes bug #514965. 2008-02-07 Tim-Philipp Müller * configure.ac: Bump requirements to (good) released versions to avoid confusion and make implicit core requirement explicit. 2008-02-06 Jan Schmidt * 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/audiochebband.c: * gst/audiofx/audiochebband.h: * gst/audiofx/audiocheblimit.c: * gst/audiofx/audiocheblimit.h: * gst/audiofx/audiochebyshevfreqband.c: * gst/audiofx/audiochebyshevfreqband.h: * gst/audiofx/audiochebyshevfreqlimit.c: * gst/audiofx/audiochebyshevfreqlimit.h: * gst/audiofx/audiofx.c: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/audiochebband.c: * tests/check/elements/audiocheblimit.c: * tests/check/elements/audiochebyshevfreqband.c: * tests/check/elements/audiochebyshevfreqlimit.c: Rename audiochebyshevfreqband -> audiochebband and audiochebyshevfreqlimit -> audiocheblimit and do the requisite CVS surgery. Closes: #491811 2008-02-05 Wim Taymans Patch by: Orjan Friberg * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): Fix caps memory leak. Fixes #514573. 2008-02-04 Edward Hervey * 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. 2008-02-02 Tim-Philipp Müller Patch by: John Millikin * 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). 2008-02-02 Tim-Philipp Müller * 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). 2008-02-01 Thijs Vermeir * 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 2008-01-31 Jan Schmidt * 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. 2008-01-31 Jan Schmidt * configure.ac: Bump plugins-base requirement to 0.10.16 for the gst_video_format_* API. 2008-01-31 Jan Schmidt * configure.ac: Fix typo. 2008-01-30 Jan Schmidt * 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. 2008-01-29 Wim Taymans Patch by: Alessandro Decina * 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. 2008-01-29 Wim Taymans * 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. 2008-01-29 Stefan Kost * 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. 2008-01-29 Stefan Kost * tests/check/elements/alphacolor.c: Remove two unused variables. 2008-01-28 Tim-Philipp Müller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpinfo): Use g_ascii_strtoll() instead of atoll, which is only available in C99. 2008-01-25 Thijs Vermeir * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: * gst/rtp/gstrtpmpvpay.c: * gst/rtp/gstrtpmpvpay.h: Add MPEG2 video payloader 2008-01-23 Sebastian Dröge * gst/level/gstlevel.c: Use #include instead of #include "math.h". 2008-01-21 Jan Schmidt * 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. 2008-01-21 Jan Schmidt * 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 Fixes: #510505 2008-01-21 Stefan Kost * docs/plugins/gst-plugins-good-plugins-docs.sgml: Update list from (still local) scanning script. 2008-01-19 Sebastian Dröge Based on a patch by: Victor STINNER * 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. Fixes bug #510592. 2008-01-18 Thijs Vermeir * gst/udp/gstmultiudpsink.c: use GST_WARNING for logging 2008-01-18 Thijs Vermeir * gst/udp/gstmultiudpsink.c: Don't try to leave a multicast group with an invalid socket 2008-01-17 Tim-Philipp Müller * 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. 2008-01-17 Wim Taymans Patch by: Olivier Crete * 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. 2008-01-16 Stefan Kost * gst/videomixer/Makefile.am: Add controller flags. 2008-01-16 Stefan Kost * gst/videomixer/videomixer.c: Also commit the missing gst_object_sync_values(). 2008-01-16 Stefan Kost * docs/plugins/Makefile.am: Remove duplicate entry. 2008-01-15 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-gamma.xml: * docs/plugins/inspect/plugin-monoscope.xml: * docs/plugins/inspect/plugin-video4linux2.xml: Add 3 more plugins to docs. 2008-01-15 Stefan Kost * 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. 2008-01-15 Stefan Kost * 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. 2008-01-15 Stefan Kost * 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. 2008-01-15 Stefan Kost * docs/plugins/gst-plugins-good-plugins-sections.txt: Cleanup section file. 2008-01-15 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/gst-plugins-good-plugins.signals: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-wavparse.xml: Update plugin docs. * gst/videomixer/Makefile.am: * gst/videomixer/videomixer.c: * gst/videomixer/videomixer.h: * gst/videomixer/videomixerpad.h: Split out header to fix warnings from the doc-build. 2008-01-14 Wim Taymans As found by: Tommi Myöhänen * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpinfo): Use atoll to parse the rtptime with enough precision. Fixes #509329. 2008-01-14 Tim-Philipp Müller * 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). 2008-01-11 David Schleef * docs/plugins/.cvsignore: * tests/check/pipelines/.cvsignore: Ignore more files for the buildbot. 2008-01-11 Jan Schmidt * 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. 2008-01-11 Wim Taymans Patch by: Olivier Crete * 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. 2008-01-11 Tim-Philipp Müller * tests/check/elements/icydemux.c: (GST_START_TEST), (icydemux_suite): Don't use deprecated GST_PLUGIN_DEFINE_STATIC. 2008-01-10 Sebastian Dröge * 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. 2008-01-09 Edward Hervey * gst/videomixer/videomixer.c: (gst_videomixer_init): Fix error from my last commit. 2008-01-09 Tim-Philipp Müller Based on patch by: Tommi Myöhänen * 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. 2008-01-09 Stefan Kost * ChangeLog: Fix ChangeLog typo. 2008-01-09 Stefan Kost * Makefile.am: Include lcov.mak to allow building coverage reports. Guard check-torture target like in the other packages. 2008-01-09 Sameer Naik reviewed by: Edward Hervey * 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 2008-01-09 Edward Hervey * 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. 2008-01-09 Stefan Kost * gst/rtp/gstasteriskh263.c: * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpac3depay.c: * gst/rtp/gstrtpamrpay.c: * gst/rtp/gstrtpdepay.c: * gst/rtp/gstrtpgsmdepay.c: * gst/rtp/gstrtph263depay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtph264depay.c: * gst/rtp/gstrtph264pay.c: * gst/rtp/gstrtpmp2tdepay.c: * gst/rtp/gstrtpmp4adepay.c: * gst/rtp/gstrtpmp4gdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vdepay.c: * gst/rtp/gstrtpmpadepay.c: * gst/rtp/gstrtpmpvdepay.c: * gst/rtp/gstrtpsv3vdepay.c: * gst/rtp/gstrtptheoradepay.c: * gst/rtp/gstrtptheorapay.c: * gst/rtp/gstrtpvorbisdepay.c: * gst/rtp/gstrtpvorbispay.c: Remove copy/paste unused code (property setters and getter) found by the coverage suite (yay, saves ~20k on disk). 2008-01-08 Tim-Philipp Müller * 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). 2008-01-08 Tim-Philipp Müller Based on patch by: Wouter Cloetens * 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. 2008-01-08 Sebastian Dröge * 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. 2008-01-07 Tim-Philipp Müller * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_window_thread): FALSE is not a gpointer. 2008-01-05 Julien Moutte * 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. 2008-01-04 Sebastian Dröge * ext/taglib/gstapev2mux.h: * ext/taglib/gstid3v2mux.h: Remove useless typedefs without new type name. Fixes a warning with gcc 4.3. 2008-01-03 Wim Taymans Patch by: John Millikin * 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. 2008-01-02 Thijs Vermeir * gst/avi/gstavi.c: increase rank because no known issues anymore ... * gst/avi/gstavisubtitle.c: send subtitle name to the srcpad 2007-12-31 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_open): * gst/rtsp/gstrtspsrc.h: Implement redirect for the DESCRIBE reply. Fixes #506025. 2007-12-29 Sebastian Dröge * 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. 2007-12-26 Tim-Philipp Müller * 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. 2007-12-18 Tim-Philipp Müller * 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). 2007-12-18 Thijs Vermeir * gst/avi/gstavisubtitle.c: * tests/check/elements/avisubtitle.c: Add seeking support for avi subtitle 2007-12-18 Wim Taymans * 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. 2007-12-18 Tim-Philipp Müller * 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. 2007-12-18 Tim-Philipp Müller * 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). 2007-12-18 Thijs Vermeir * 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. 2007-12-18 Tim-Philipp Müller * 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. 2007-12-17 Edward Hervey * 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. 2007-12-14 Wim Taymans * 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. 2007-12-14 Tim-Philipp Müller * 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. 2007-12-11 Tim-Philipp Müller * configure.ac: We need core/base 0.10.15 or later. 2007-12-11 Wim Taymans Patch by: Mark Nauwelaerts * gst/avi/gstavimux.c: (gst_avi_mux_start_file): Fix regression in stream numbering. Fixes #502655. 2007-12-11 Wim Taymans Patch by: Wai-Ming Ho * 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. 2007-12-11 Tim-Philipp Müller * 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. 2007-12-11 Wim Taymans Patch by: Wouter Cloetens * gst/multipart/multipartdemux.c: (gst_multipart_demux_chain): Copy timestamp from input to output. Not very perfect yet but better than nothing. Fixes #503023. 2007-12-09 Sebastian Dröge * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): Also print a useful error message with the old Wavpack API if possible. 2007-12-09 Tim-Philipp Müller * 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. 2007-12-09 Sebastian Dröge * 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. 2007-12-09 Sebastian Dröge * configure.ac: And now do it right for real... 2007-12-09 Sebastian Dröge * configure.ac: Correctly reset $LIBS to not contain -lm. 2007-12-09 Sebastian Dröge Based on a patch by: Kwang Yul Seo * 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. Fixes #497293. 2007-12-09 Sebastian Dröge * configure.ac: Don't define GST_DISABLE_DEPRECATED for releases. Fixes #498181. 2007-12-08 Jan Schmidt * 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. 2007-12-07 Tim-Philipp Müller * 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. 2007-12-07 Jan Schmidt * 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). 2007-12-06 Sebastian Dröge * 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. 2007-12-06 Tim-Philipp Müller * 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. 2007-12-05 Wim Taymans * 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 2007-12-05 Wim Taymans Patch by: Tommi Myöhänen * 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 2007-11-29 Michael Smith Patch by: Arek Korbik * gst/videobox/gstvideobox.c: (plugin_init): Initialise liboil in plugin_init() 2007-11-29 Wim Taymans * ext/libpng/gstpngdec.c: (gst_pngdec_task): Post error before sending EOS. Fixes #499178. 2007-11-28 Sebastien Moutte * win32/vs6/gst_plugins_good.dsw: * win32/vs6/libgstpng.dsp: Add a project file for libgstpng 2007-11-28 Edward Hervey * 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. 2007-11-27 Wim Taymans Patch by: Jayarama S. Santana * gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_process): Fix wrong comparison in overrun check. Fixes #499239 some more. 2007-11-27 Edward Hervey * 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. 2007-11-26 Wim Taymans Based on Path by: Jayarama S. Santana * 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. 2007-11-26 Stefan Kost * gst/level/gstlevel.c: Add GAP-flag support. 2007-11-26 Edward Hervey * 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 2007-11-26 Stefan Kost * gst/level/gstlevel.c: Remove some dead code and do cleanups. 2007-11-26 Stefan Kost * tests/check/pipelines/simple-launch-lines.c: Improve the tests by allowing to set a target state. 2007-11-26 Sebastian Dröge * tests/check/elements/wavpackenc.c: (GST_START_TEST): Don't check the caps of the output buffer if they're equal some other caps. The caps can change in a backward compatible way and did at this point. 2007-11-24 Julien MOUTTE * gst/qtdemux/qtdemux.c: (gst_qtdemux_find_segment), (gst_qtdemux_move_stream), (gst_qtdemux_do_seek), (gst_qtdemux_seek_to_previous_keyframe), (gst_qtdemux_activate_segment), (gst_qtdemux_advance_sample), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop): Implement reverse playback support. 2007-11-20 Sebastian Dröge * ext/wavpack/gstwavpackcommon.c: (gst_wavpack_set_channel_layout): Also set the channel layout on the Wavpack caps if we're having a mono layout. Of course only do it for "audio/x-wavpack". 2007-11-20 Sebastian Dröge * ext/wavpack/gstwavpackcommon.c: (gst_wavpack_get_default_channel_mask), (gst_wavpack_set_channel_layout), (gst_wavpack_get_default_channel_positions), (gst_wavpack_get_channel_mask_from_positions), (gst_wavpack_set_channel_mapping): * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset), (gst_wavpack_dec_sink_set_caps), (gst_wavpack_dec_chain): * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset), (gst_wavpack_enc_init), (gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_push_block), (gst_wavpack_enc_fix_channel_order), (gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block), (gst_wavpack_enc_sink_event): * ext/wavpack/gstwavpackenc.h: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset), (gst_wavpack_parse_scan_to_find_sample), (gst_wavpack_parse_sink_event), (gst_wavpack_parse_create_src_pad), (gst_wavpack_parse_push_buffer), (gst_wavpack_parse_loop): * ext/wavpack/gstwavpackparse.h: Add support for encoding, parsing and decoding multichannel files with up to 8 channels. This also improves the robustness of parsing quite a bit. * ext/wavpack/gstwavpackstreamreader.c: (gst_wavpack_stream_reader_read_bytes), (gst_wavpack_stream_reader_get_pos), (gst_wavpack_stream_reader_set_pos_abs), (gst_wavpack_stream_reader_set_pos_rel), (gst_wavpack_stream_reader_push_back_byte), (gst_wavpack_stream_reader_get_length), (gst_wavpack_stream_reader_can_seek), (gst_wavpack_stream_reader_write_bytes): Improve debugging. 2007-11-20 Stefan Kost * ext/libpng/gstpngdec.c: * ext/libpng/gstpngdec.h: Don't release the png-memory from within the callback. 2007-11-20 Stefan Kost Patch by: René Stadler * ext/libpng/gstpngenc.c: Don't leak buffer data memory. Fixes #498395. 2007-11-20 Stefan Kost Patch by: René Stadler * tests/check/pipelines/simple-launch-lines.c: Tests for #498395. 2007-11-20 Julien MOUTTE * ext/taglib/gsttaglibmux.c: (gst_tag_lib_mux_render_tag), (gst_tag_lib_mux_adjust_event_offsets): * gst/qtdemux/qtdemux.c: (qtdemux_parse_theora_extension): * sys/osxaudio/Makefile.am: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: Fix build on Mac OS X 10.5 2007-11-15 David Schleef * ext/cairo/gsttextoverlay.c: Change strcasecmp() to g_strcasecmp(). Fixes #497292. 2007-11-15 Wim Taymans Patch by: Jordi Jaen Pallares * gst/rtp/gstrtpmp2tpay.c: (gst_rtp_mp2t_pay_class_init), (gst_rtp_mp2t_pay_init), (gst_rtp_mp2t_pay_finalize), (gst_rtp_mp2t_pay_flush), (gst_rtp_mp2t_pay_handle_buffer): * gst/rtp/gstrtpmp2tpay.h: Fill the MTU with as many packets as possible. Fixes #491323. 2007-11-15 Wim Taymans Patch by: Tommi Myöhänen * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams): Fix some more leaks. Fixes #497007. 2007-11-15 Wim Taymans Patch by: Tommi Myöhänen * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_free), (gst_rtspsrc_stream_configure_tcp): Fix 3 pad leaks. Fixes #496983. 2007-11-15 Wim Taymans Patch by: Tommi Myöhänen * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_setcaps): Fix small leak. Fixes #497017. 2007-11-15 Wim Taymans * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state), (gst_qtdemux_prepare_current_sample), (gst_qtdemux_loop_state_movie), (qtdemux_parse_theora_extension), (qtdemux_parse_node), (qtdemux_parse_trak), (qtdemux_video_caps): * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: Add suppport for theora in quicktime according to XiphQT. 2007-11-15 Edgard Lima * sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init), (gst_v4l2src_init), (gst_v4l2src_set_property), (gst_v4l2src_get_property): * sys/v4l2/gstv4l2src.h: * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame): Always copy buffers by default (handle safer with bugged drivers) and added a property to make it possible to use mmap effectively (no copy if possible) when application wants to. Fixes: #480557. 2007-11-14 Tim-Philipp Müller * gst/id3demux/id3tags.c: * gst/id3demux/id3tags.h: * gst/id3demux/id3v2frames.c: (id3v2_tag_to_taglist): We don't want the same string multiple times in a tag list for the same tag ever, for any tag, not just for GST_TAG_GENRE, so make sure this doesn't happen and remove special-case code for GST_TAG_GENRE. 2007-11-14 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: (add_musicbrainz_tag), (add_funcs): Write GST_TAG_MUSICBRAINZ_DISCID and GST_TAG_CDDA_CDDB_DISCID into ID3v2 TXXX frames (fixes #347848). 2007-11-14 Tim-Philipp Müller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): Don't leak sdp message contents (fixes #496773). * gst/udp/gstudpsink.c: (gst_udpsink_finalize): Don't leak URI string. 2007-11-14 Tim-Philipp Müller Patch by: Julien Puydt * ext/raw1394/Makefile.am: * ext/raw1394/gst1394probe.c: (gst_1394_get_guid_array), (gst_1394_property_probe_get_properties), (gst_1394_property_probe_probe_property), (gst_1394_property_probe_needs_probe), (gst_1394_property_probe_get_values), (gst_1394_property_probe_interface_init), (gst_1394_type_add_property_probe_interface): * ext/raw1394/gst1394probe.h: (GST_1394_PROBE_H): * ext/raw1394/gstdv1394src.c: (_do_init), (gst_dv1394src_class_init), (gst_dv1394src_init), (gst_dv1394src_dispose), (gst_dv1394src_set_property), (gst_dv1394src_get_property), (gst_dv1394src_discover_avc_node), (gst_dv1394src_query), (gst_dv1394src_update_device_name): * ext/raw1394/gstdv1394src.h: Implement GstPropertyProbe interface and add "device-name" property, so applications can use this to probe for available devices in the same way they can already with v4lsrc and v4l2src (however horrible this property probe interface may be). Fixes #358841. 2007-11-14 Tim-Philipp Müller Patch by: Tommi Myöhänen * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_event), (gst_rtspsrc_parse_range): Don't leak event, don't leak range (fixes #496752). 2007-11-14 Michael Smith Patch by: Arek Korbik * gst/alpha/gstalphacolor.c: (gst_alpha_color_set_caps): Detect RGBA/BGRA correctly on little endian systems. 2007-11-13 Tim-Philipp Müller * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format): If VIDIOC_ENUM_FRAMESIZES is defined (= recent kernel), but the corresponding ioctl() call fails even though the driver claims to support this format, just fall back to the pre-2.6.19 kernel routine that creates caps with suitable height and width ranges (see #448278). 2007-11-13 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_dvd_clut_change_event), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.h: Extract palette data for dvd subpicture streams and send it downstream as custom gstreamer dvd event (fixes #453417). 2007-11-13 Tim-Philipp Müller * ext/cairo/gsttextoverlay.c: (gst_text_overlay_font_init): Implement minimal parsing of the passed pango font description string, so passing a font size works the same as with the pango textoverlay plugin; fixes #455086. (Maybe we could just use pangocairo here at some point). 2007-11-13 Stefan Kost * gst/avi/gstavidemux.c: * gst/wavparse/gstwavparse.c: Return the result in _activate_pull(). Don't ref element there. 2007-11-13 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers), (gst_wavparse_pad_convert), (gst_wavparse_pad_query), (gst_wavparse_srcpad_event): Ref the element when we should, but not when we its not needed. Reflow the event_handling to not leak the event. 2007-11-12 Edward Hervey * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state), (qtdemux_parse_samples): Properly free QTDemuxSamples array. Protect table write with a sensible check, some files apparently DO contain stts values starting with 0 :( 2007-11-12 Stefan Kost * gst/avi/gstavidemux.c: * gst/qtdemux/qtdemux.c: Drop QOS in _handle_src_event(). Fix the refcount in qtdemux that previous commit messed up. 2007-11-12 Stefan Kost * gst/avi/gstavidemux.c: * gst/qtdemux/qtdemux.c: Sync _handle_src_event() with oggdemux. In avidemux also ref the element when we should, but not when we its not needed. 2007-11-08 Stefan Kost * gst/wavparse/gstwavparse.c: Return FALSE if we can't handle a query instead of changing the format. Ignore fact when dealing with mpeg audio. 2007-11-02 Tim-Philipp Müller Patch by: Ole André Vadla Ravnås * configure.ac: * gst/udp/gstdynudpsink.c: * gst/udp/gstdynudpsink.h: * gst/udp/gstmultiudpsink.c: * gst/udp/gstmultiudpsink.h: * gst/udp/gstudpsink.c: * gst/udp/gstudpsink.h: Fix includes for MSVC and GLib-2.14.0 (#492388). * gst/udp/gstudpsrc.c: (gst_udpsrc_start): No more pipe define since GLib-2.14.0, need to use _pipe() directly. 2007-11-02 Edward Hervey * gst/law/mulaw-decode.c: (mulawdec_sink_setcaps), (gst_mulawdec_chain): * gst/law/mulaw-decode.h: Calculate outgoing buffer duration if incoming buffer didn't have a valid duration. 2007-10-30 Wim Taymans * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment), (gst_qtdemux_combine_flows), (gst_qtdemux_loop_state_movie): Smarter combine_flow code that also deals with downstream elements returning UNEXPECTED when they receive data out of the segment boundaries. Fixes #491305. 2007-10-26 Tim-Philipp Müller * sys/v4l2/v4l2src_calls.c: Fix 'unused variable' compiler warning when compiling against older kernel headers. 2007-10-25 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc (add_funcs): Map new SORTNAME tags to ID3v2 TSOP, TSOA and TSOT frames (#414539). 2007-10-24 Stefan Kost * tests/check/pipelines/simple-launch-lines.c: Improve the tests a little more. 2007-10-23 Zaheer Abbas Merali patch by: Yun Zheng Hu * sys/osxaudio/gstosxaudiosrc.c: Use default input device instead of default output device and only memcpy actual available bytes. 2007-10-22 Edgard Lima * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame): Fixes "v4l2src ! queue ! xvimagesink". The queue ask for buffer too early. It is temporary until we find something better. 2007-10-22 Wim Taymans Patch by: Tommi Myöhänen * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_interleaved): Fix race when pausing a RTSP stream in interleaved. Fixes #475784. 2007-10-22 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_finalize): Use correct unref function for buffers. #488844. 2007-10-19 Stefan Kost * gst/avi/gstavimux.c: * tests/check/elements/avimux.c: Add some debug and sync tests with the fix. 2007-10-18 Wim Taymans Based on patch by: Laurent Glayal * gst/udp/gstudpsrc.c: (gst_udpsrc_create): When the socket is used by the app for other purposes, don't generate an error if there is activaty on the socket that is not data related. Fixes #487488. 2007-10-18 Wim Taymans * sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize), (gst_v4l2src_grab_frame): Add some more debug info. Generate an error when we run out of buffers for some reason. See #480557. 2007-10-18 Wim Taymans Patch by: Anders Skargren * gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_handle_buffer): Set marker bit correctly. 2007-10-17 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): Use allowed name for the GstStructure. 2007-10-17 Tim-Philipp Müller * ext/gconf/gstswitchsink.c: * gst/autodetect/gstautoaudiosink.c: Use new gst_bus_pop_filtered(). 2007-10-13 Tim-Philipp Müller * sys/v4l2/gstv4l2src.c: * sys/v4l2/v4l2src_calls.c: When probing the formats and sizes a camera supports, make sure the best ones (highest resolution, prefered format) end up at the beginning of the probed caps and the less desirable ones at the end. This is important because the order within the caps matters for things like fixation and negotiation, ie. what format is chosen in the end. With recent kernels, the current probing code will end up querying the supported sizes from lowest resolution to highest resolution, adding them to the probed caps in that order, resulting to v4l2src fixating to the lowest possible resolution if downstream does not express a size preference. Also make up a somewhat random ranking of prefered output formats for the same reason. Fixes #485828. 2007-10-11 Tim-Philipp Müller Based on patch by: Jason Kivlighn * gst/id3demux/id3v2frames.c: Extract license/copyright URIs from ID3v2 WCOP frames (Fixes #447000). * tests/check/elements/id3demux.c: * tests/files/Makefile.am: * tests/files/id3-447000-wcop.tag: Add simple unit test. 2007-10-11 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: Add support for license/copyright URI tags (ID3v2 WCOP frame). Prerequisite for #447000. 2007-10-08 Jan Schmidt * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush): Fix compiler warning by using GST_CLOCK_TIME_NONE to initialise a GstClockTime. 2007-10-08 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush), (gst_rtspsrc_do_seek), (gst_rtspsrc_perform_seek), (gst_rtspsrc_configure_caps), (gst_rtspsrc_loop_udp), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_play), (gst_rtspsrc_change_state): More seeking fixes, mostly passing around the new playback segment in order to configure it properly. Also reset base_time of udp sources when setting them back to PLAYING as a temporary hack until core supports seek in live sources properly. 2007-10-08 Wim Taymans * gst/rtp/gstrtpmp4adepay.c: Fix caps as to not confuse autopluggers. 2007-10-06 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: * gst/id3demux/gstid3demux.h: * gst/id3demux/id3tags.c: * gst/id3demux/id3tags.h: * gst/id3demux/id3v2frames.c: Port ID3 tag demuxer over to the new GstTagDemux in -base (now would be a good time to test re-importing your music collection). 2007-10-06 Tim-Philipp Müller * gst/apetag/Makefile.am: * gst/apetag/gstapedemux.c: * gst/apetag/gstapedemux.h: * gst/apetag/gsttagdemux.c: * gst/apetag/gsttagdemux.h: Port APE tag demuxer over to the new GstTagDemux in -base. 2007-10-05 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush), (gst_rtspsrc_perform_seek), (gst_rtspsrc_handle_src_event), (gst_rtspsrc_handle_internal_src_query), (gst_rtspsrc_handle_src_query), (new_session_pad), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_loop_send_cmd): Improve flushing behaviour. Set state of the udp sources to PAUSE/PLAYING correctly. Handle events and queries for UDP and TCP transport now. 2007-10-04 Stefan Kost * gst/rtp/gstrtpgsmdepay.c: * gst/rtp/gstrtpgsmpay.c: Add log category. 2007-10-04 Stefan Kost Patch by: Timo Hotti * tests/check/Makefile.am: * tests/check/pipelines/simple-launch-lines.c: Add unit tests for payloaders/depayloaders. 2007-10-02 Stefan Kost * gst/avi/gstavimux.c: * gst/avi/gstavimux.h: Also save codec data for audio streams. Fixes #482495. 2007-10-02 Stefan Kost * gst/avi/gstavimux.c: Fix "Index entry has invalid stream nr 1". Add support for muxing aac - work in progress (see #482495). 2007-10-01 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_get_bandwidth), (gst_rtspsrc_collect_bandwidth), (gst_rtspsrc_create_stream), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_loop_interleaved): * gst/rtsp/gstrtspsrc.h: Parse bandwidth modifiers, they are not yet configured in the session manager because we don't have an API for that yet. 2007-10-01 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_loop_interleaved): Use shiny new function in -base to get the default clock-rate. Update some docs. 2007-09-29 Sebastien Moutte * win32/MANIFEST: Add files to win32 manifest. * win32/vs6/libgstaudiofx.dsp: * win32/vs6/libgstqtdemux.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: Update project files. 2007-09-28 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: In TCP mode, only timestamp the first buffer. TCP is not real time and it does not make sense to try to skew compensate, also some servers send the first batch of data in a burst. 2007-09-27 Tim-Philipp Müller * gst/matroska/matroska-demux.c: Fix setting the discont flag on the first buffer pushed downstream for formats with private codec data that needs to be deserialised into buffers (such as vorbis and FLAC when in a matroska container). 2007-09-27 Wim Taymans Patch by: Antoine Tremblay * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_init), (gst_rtp_mp4v_pay_finalize), (gst_rtp_mp4v_pay_flush), (gst_rtp_mp4v_pay_handle_buffer): * gst/rtp/gstrtpmp4vpay.h: Free the config string. Fixes #480707. Clean up the timestamp code a little. 2007-09-26 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (gst_rtspsrc_handle_src_query), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_close): * gst/rtsp/gstrtspsrc.h: Set timestamps on RTP buffers in interleaved mode. Mark first buffers with a DISCONT. Remove flush hack now that sync for live sources has been figured out. 2007-09-26 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Update documentation. 2007-09-26 Wim Taymans * gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_process), (gst_rtp_xqt_depay_change_state): * gst/qtdemux/gstrtpxqtdepay.h: Fail if we don't know the quicktime format. 2007-09-26 Tim-Philipp Müller * ext/flac/gstflacenc.c: * ext/flac/gstflacenc.h: Save the flow return from the last gst_pad_push() and make sure we pass the right flow return value upstream in the case of failure; minor clean-ups. 2007-09-25 Tim-Philipp Müller * ext/taglib/gstapev2mux.cc: * ext/taglib/gstid3v2mux.cc: * gst/apetag/gstapedemux.c: Add support for the new GST_TAG_COMPOSER (#459809). 2007-09-25 Tim-Philipp Müller * gst/law/alaw-decode.c: * gst/law/alaw-decode.h: * gst/law/alaw-encode.c: * gst/law/alaw-encode.h: * gst/law/alaw.c: * gst/law/mulaw-conversion.h: Compulsive clean-ups: use boilerplate macros, add debug categories, fix up things to conform to symbol nomenklatura, etc. 2007-09-25 Tim-Philipp Müller Based on patch by: Laurent Glayal * gst/law/alaw-decode.c: * gst/law/alaw-encode.c: Use static tables for A-Law decoding and encoding; this makes A-Law decoding and encoding less CPU-intensive, but increases the binary size a bit. Leaving old code around for now, selectable by a define in the code. Fixes #435435. 2007-09-25 Sebastian Dröge * configure.ac: Use AG_GST_ARG_WITH_PLUGINS, AG_GST_ARG_ENABLE_EXTERNAL and AG_GST_ARG_ENABLE_EXPERIMENTAL instead of duplicating those macros in configure.ac. 2007-09-25 Sebastian Dröge Patch by: Jan Gerber * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add fourccs for MPEG2 HDV streams. Fixes #479960. 2007-09-23 Stefan Kost * sys/oss/gstosshelper.c: Use GST_WARNING instead of a g_critical. This situation is not caused by the application. 2007-09-22 Thomas Vander Stichele * po/LINGUAS: * po/nl.po: Updated translations. 2007-09-22 Thomas Vander Stichele translated by: Mikel Olasagasti * po/eu.po: Added Basque translation. 2007-09-22 Thomas Vander Stichele translated by: Abel Cheung * po/zh_HK.po: * po/zh_TW.po: Added Chinese (traditional and Hong Kong) translation. 2007-09-22 Thomas Vander Stichele translated by: Jakub Bogusz * po/pl.po: Added Polish translation. 2007-09-22 Thomas Vander Stichele translated by: Ilkka Tuohela * po/fi.po: Added Finnish translation. 2007-09-22 Thomas Vander Stichele translated by: Jorge González González * po/es.po: Added Spanish translation. 2007-09-22 Thomas Vander Stichele translated by: Mogens Jaeger * po/da.po: Added Danish translation. 2007-09-22 Thomas Vander Stichele translated by: Funda Wang * po/zh_CN.po: Added Chinese (simplified) translation. 2007-09-22 Thomas Vander Stichele translated by: Alexander Shopov * po/bg.po: Added Bulgarian translation. 2007-09-21 Wim Taymans * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_process): Set outgoing packet duration because we can. Fixes #478244 some more. 2007-09-20 Stefan Kost * ext/cairo/gsttextoverlay.c: Add info about static leak. * tests/check/Makefile.am: * tests/check/generic/states.c: Improved state change unit test. 2007-09-19 Stefan Kost * docs/plugins/.cvsignore: * tests/check/.cvsignore: Ignore registries in any format. 2007-09-19 Wim Taymans * gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_handle_buffer): Removed some unused code. * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_handle_buffer): * gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_handle_buffer): * gst/rtp/gstrtpmp2tpay.c: (gst_rtp_mp2t_pay_handle_buffer): * gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_handle_buffer): * gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_init_packet), (gst_rtp_theora_pay_flush_packet): * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_flush_packet): Try to preserve the incomming buffer duration on the outgoing packets. Fixes #478244. 2007-09-18 Tim-Philipp Müller * ext/taglib/gstapev2mux.cc: * ext/taglib/gstid3v2mux.cc: Work around compiler warnings with g++-4.2 when assigning a string constant to a gchar * (partially fixes #478092). 2007-09-18 Tim-Philipp Müller * configure.ac: We require core CVS now for gst_base_src_set_do_timestamp(). 2007-09-17 Jan Schmidt * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_class_init): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (new_session_pad), (request_pt_map), (gst_rtspsrc_do_stream_eos), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_handle_message): Fix compiler warnings shown with Forte. 2007-09-16 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams), (gst_rtspsrc_dup_printf): Give meaningfull error when all streams failed to configure for some reason. 2007-09-16 Wim Taymans * gst/rtp/README: Update README with the design for synchronisation rules of RTP on sender and receiver. 2007-09-14 Sebastian Dröge * gst/wavparse/gstwavparse.c: (gst_wavparse_loop), (gst_wavparse_chain): Don't push EOS from the chain function, the element driving the pipeline is responsible for this. The bug this was meant to fix seems to be queue not forwarding EOS in all cases (see #476514). 2007-09-13 Wim Taymans * gst/level/gstlevel.c: (gst_level_class_init), (gst_level_start), (gst_level_transform_ip): * gst/level/gstlevel.h: Use basetransform segment so that it is correctly managed on flushes and start/stop. Report message timestamp as stream time, which is what an application can understand. 2007-09-13 Sebastian Dröge * ext/taglib/gstapev2mux.cc: * ext/taglib/gstapev2mux.h: * ext/taglib/gsttaglibmux.c: * tests/check/elements/apev2mux.c: Update my mail address. 2007-09-13 Sebastian Dröge * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_eos), (gst_wavparse_loop), (gst_wavparse_chain): Add EOS logic for the push-based mode too. Fixes #476514. 2007-09-12 Wim Taymans * gst/law/alaw-encode.c: (gst_alawenc_init), (gst_alawenc_chain): * gst/law/alaw-encode.h: * gst/law/mulaw-encode.c: (gst_mulawenc_init), (gst_mulawenc_chain): * gst/law/mulaw-encode.h: Fix law encoder timestamps. 2007-09-12 Stefan Kost * ext/gconf/gstgconfaudiosink.c: Fix warning when building without debug. * sys/oss/gstossmixertrack.c: Use const like in alsamixertrack.c (fixes warnings). 2007-09-11 Wim Taymans * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format_and_size): Fix framerate detection code some more. Handle the case where there is a weird step in the stepwise framerates. Don't overwrite the min interval with the framerate, use a temp variable instead. Use max in the Continuous framerate intervals instead of step, which is 1 according to the docs. Fixes #475424. 2007-09-10 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_init), (gst_udpsrc_create): Make udpsrc timestamp outgoing buffers based on when they were received. Also make it output a segment in time. 2007-09-10 Stefan Kost * gst/avi/gstavidemux.c: Plug a little leak. Little code cleanups. 2007-09-09 Tim-Philipp Müller * configure.ac: Use AC_TRY_COMPILE instead of AC_TRY_RUN to check for old flac versions, 's good for cross-compilation karma. 2007-09-07 Tim-Philipp Müller Patch by: Haakon Sporsheim * gst/rtp/gstrtph263pay.c: Fix up header structure so that compilers don't add padding between the structure fields, since that would lead to us sending RTP packets with broken headers (as is currently the case when compiling with MSVC). Also see similar fixes in libgstrtp in gst-plugins-base. (#474616; #471194) 2007-09-07 Wim Taymans * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format_and_size): Don't overwrite our GValue with 0 but instead use the previously computed value. Fixes #471823 some more. 2007-09-06 Tim-Philipp Müller * docs/plugins/gst-plugins-good-plugins.hierarchy: No tabs in this file please, or gtk-doc will end up documenting rather absurd class hierarchies. 2007-09-06 Tim-Philipp Müller * ext/gconf/gstswitchsink.c: If the new kid element fails to change state for some reason (e.g. esdsink not being able to connect to the sound server), forward the error message it posted on the bus instead of just posting a generic 'Internal state change error: please file a bug' error message. Fixes #471364. 2007-09-05 Tim-Philipp Müller * gst/qtdemux/Makefile.am: * gst/qtdemux/qtdemux.c: Don't assume tags are encoded as UTF-8 (#473670). 2007-09-05 Tim-Philipp Müller * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/v4l2src_calls.c: Implement LATENCY queries in the crudest way possible so I don't have to use sync=false any longer when testing with videosinks. 2007-09-05 Tim-Philipp Müller * configure.ac: Fix build. 2007-09-04 Wim Taymans * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format_and_size): Add some more debugging in the framerate function. Iterate stepwise framerate up to and _including_ the max and if nothing was added to the list, add a dummy 0/1 to 100/1 framerate so that we don't end up with an empty list. Fixes #471823 2007-09-04 Wim Taymans * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init), (gst_multiudpsink_set_clients_string), (gst_multiudpsink_get_clients_string), (gst_multiudpsink_set_property), (gst_multiudpsink_get_property), (gst_multiudpsink_init_send), (gst_multiudpsink_add_internal), (gst_multiudpsink_add), (gst_multiudpsink_clear_internal), (gst_multiudpsink_clear): Add property do configure destination address/port pairs API:GstMultiUDPSink::clients 2007-09-04 Wim Taymans * tests/examples/Makefile.am: * tests/examples/rtp/Makefile.am: * tests/examples/rtp/client-H263p-AMR.sh: * tests/examples/rtp/client-H263p-PCMA.sdp: * tests/examples/rtp/client-H263p-PCMA.sh: * tests/examples/rtp/client-H264-PCMA.sdp: * tests/examples/rtp/client-H264-PCMA.sh: * tests/examples/rtp/client-PCMA.sh: * tests/examples/rtp/server-VTS-H263p-ATS-PCMA.sh: * tests/examples/rtp/server-alsasrc-PCMA.sh: * tests/examples/rtp/server-v4l2-H263p-alsasrc-AMR.sh: * tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh: Added some RTP example scripts for sending and receiving RTP streams. 2007-09-04 Wim Taymans * sys/v4l2/gstv4l2src.c: (gst_v4l2_get_caps_info), (gst_v4l2src_set_caps), (gst_v4l2src_get_mmap): Restructure the setcaps function so that we can also compute the expected GStreamer output size of the video frames. Set frame_byte_size correctly so that read-based devices have a chance of working correctly. When grabbing a frame, discard frames that are not of the expected size. Some cameras don't output the right framesize for the first buffer. Try only a couple of times to get a valid frame, else error out. * sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities), (gst_v4l2_fill_lists), (gst_v4l2_get_input): Add some more debug info when scanning the device. * sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_new), (gst_v4l2_buffer_pool_new), (gst_v4l2_buffer_pool_activate), (gst_v4l2src_fill_format_list), (gst_v4l2src_grab_frame), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init): Add some more debug info when dequeing a frame. 2007-09-04 Stefan Kost * gst/wavparse/gstwavparse.c: More code cleanups. Add some more comment and improve debugs logs. 2007-09-04 Stefan Kost * gst/wavparse/gstwavparse.c: * gst/wavparse/gstwavparse.h: Implement seek-query. Refactor duration calculations. Appropriate use of uint64_scale_int and uint64_scale. Move repeadedly calculated stuff out of loops. 2007-09-03 Stefan Kost * gst/avi/gstavidemux.c: Implement seek-query. 2007-08-29 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_dup_printf): Use new basesink async property to make sparse RTCP packet not wait for preroll. 2007-08-27 Jan Schmidt * gst/audiofx/Makefile.am: Dist the right file. 2007-08-23 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_dup_printf), (gst_rtspsrc_get_float), (gst_rtspsrc_play): Make sure we generate and parse floating point values in the POSIX locale instead of the current locale. 2007-08-22 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_do_seek), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: Fix method detection again. Keep track of when we must send a Range header. Use segment values for Range, Speed and Scale headers. Parse Speed and Scale headers to update the segment values. 2007-08-22 Stefan Kost patch by: Mark Nauwelaerts * sys/v4l2/v4l2src_calls.c: Handle optional v4l2 ioctls gracefully. 2007-08-20 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_base_init), (gst_rtp_h263_depay_class_init), (gst_rtp_h263_depay_init), (gst_rtp_h263_depay_finalize), (gst_rtp_h263_depay_setcaps), (gst_rtp_h263_depay_process), (gst_rtp_h263_depay_set_property), (gst_rtp_h263_depay_get_property), (gst_rtp_h263_depay_change_state), (gst_rtp_h263_depay_plugin_init): * gst/rtp/gstrtph263depay.h: Added an H263 depayloader. Fixes #369392. * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps), (gst_rtp_h263p_depay_process): * gst/rtp/gstrtph263ppay.c: (gst_fragmentation_mode_get_type), (gst_rtp_h263p_pay_class_init), (gst_rtp_h263p_pay_flush): Make the H263+ pay/depayloader support H263-1998 and H263-2000 payloads. Also alow plain H263 on the h263p payloaders. Fixes #465040. 2007-08-19 Sebastian Dröge * gst/audiofx/audiochebyshevfreqband.c: * gst/audiofx/audiochebyshevfreqlimit.c: Add small comparision with the windowed sinc filters in the docs. 2007-08-19 Sebastian Dröge * tests/check/elements/audiochebyshevfreqband.c: (GST_START_TEST), (audiochebyshevfreqband_suite): * tests/check/elements/audiochebyshevfreqlimit.c: (GST_START_TEST), (audiochebyshevfreqlimit_suite): Also test 32 bit float mode and the type 2 variants of the filters. 2007-08-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_loop): Refactor the udp and interleaved loop function a bit. 2007-08-17 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_connection_send), (gst_rtspsrc_connection_receive), (gst_rtspsrc_sink_chain), (gst_rtspsrc_handle_request), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_try_send), (gst_rtspsrc_pause): * gst/rtsp/gstrtspsrc.h: Protect connection activity with a new lock, avoids deadlocks when going to PAUSED. Fixes #455808. 2007-08-17 Wim Taymans * gst/debug/rndbuffersize.c: (gst_rnd_buffer_size_loop): Fix debug statement. 2007-08-17 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_do_stream_eos): Fix stray %u in debug line as spotted by Saur on IRC. 2007-08-17 Sebastian Dröge * gst/audiofx/audiochebyshevfreqband.c: (gst_audio_chebyshev_freq_band_class_init): * gst/audiofx/audiochebyshevfreqlimit.c: (gst_audio_chebyshev_freq_limit_class_init): Use generator macros for the process functions for the different sample types, add lower upper boundaries for the GObject properties so automatically generated UIs can use sliders and add a note about the number of poles as a too high number of poles combined with very low or very high frequencies will produce only noise. * docs/plugins/gst-plugins-good-plugins.args: Regenerated for the property changes. 2007-08-17 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_set_property), (gst_rtspsrc_flush), (gst_rtspsrc_sink_chain), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_pause), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Improve timeout handling. Use the same socket for sending and receiving RTCP packets so that some servers can track clients better. Improve connection closed handling. Try to reconnect. Don't overwrite our content base with NULL. Improve debugging. Improve range parsing and handling. Remove flushing hack now that core does the right thing. 2007-08-17 Wim Taymans * 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_close), (gst_multiudpsink_add): * gst/udp/gstmultiudpsink.h: Add support for getting and setting the socket to use. * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init), (gst_udpsrc_create), (gst_udpsrc_get_property): Add support for getting the currently used socket. 2007-08-16 Sebastian Dröge reviewed by: Stefan Kost * gst/audiofx/Makefile.am: * gst/audiofx/audiochebyshevfreqband.c: (gst_audio_chebyshev_freq_band_mode_get_type), (gst_audio_chebyshev_freq_band_base_init), (gst_audio_chebyshev_freq_band_dispose), (gst_audio_chebyshev_freq_band_class_init), (gst_audio_chebyshev_freq_band_init), (generate_biquad_coefficients), (calculate_gain), (generate_coefficients), (gst_audio_chebyshev_freq_band_set_property), (gst_audio_chebyshev_freq_band_get_property), (gst_audio_chebyshev_freq_band_setup), (process), (process_64), (process_32), (gst_audio_chebyshev_freq_band_transform_ip), (gst_audio_chebyshev_freq_band_start): * gst/audiofx/audiochebyshevfreqband.h: * gst/audiofx/audiochebyshevfreqlimit.c: (gst_audio_chebyshev_freq_limit_mode_get_type), (gst_audio_chebyshev_freq_limit_base_init), (gst_audio_chebyshev_freq_limit_dispose), (gst_audio_chebyshev_freq_limit_class_init), (gst_audio_chebyshev_freq_limit_init), (generate_biquad_coefficients), (calculate_gain), (generate_coefficients), (gst_audio_chebyshev_freq_limit_set_property), (gst_audio_chebyshev_freq_limit_get_property), (gst_audio_chebyshev_freq_limit_setup), (process), (process_64), (process_32), (gst_audio_chebyshev_freq_limit_transform_ip), (gst_audio_chebyshev_freq_limit_start): * gst/audiofx/audiochebyshevfreqlimit.h: * gst/audiofx/audiofx.c: (plugin_init): Add Chebyshev lowpass/highpass and bandpass/bandreject elements. Fixes #464800. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/audiochebyshevfreqband.c: (setup_audiochebyshevfreqband), (cleanup_audiochebyshevfreqband), (GST_START_TEST), (audiochebyshevfreqband_suite), (main): * tests/check/elements/audiochebyshevfreqlimit.c: (setup_audiochebyshevfreqlimit), (cleanup_audiochebyshevfreqlimit), (GST_START_TEST), (audiochebyshevfreqlimit_suite), (main): Add unit tests for the chebyshev filters. * 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-1394.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-wavpack.xml: And add docs for the chebyshev filters. While doing that also run make update in docs/plugins. 2007-08-16 Stefan Kost * ext/annodex/gstcmmltag.c: * gst/rtp/gstrtpvorbispay.c: Make ro memory to share. 2007-08-16 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Improve UDP performance by avoiding a select() when we have data available immediatly. 2007-08-16 Wim Taymans * gst/rtsp/gstrtpdec.c: (gst_rtp_dec_marshal_VOID__UINT_UINT), (gst_rtp_dec_class_init): * gst/rtsp/gstrtpdec.h: Add (dummy) SSRC management signals. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_set_property), (gst_rtspsrc_get_property), (find_stream), (gst_rtspsrc_create_stream), (new_session_pad), (request_pt_map), (gst_rtspsrc_do_stream_eos), (on_bye_ssrc), (on_timeout), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_push_event), (gst_rtspsrc_push_event), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Add connection-speed property. Add find_stream helper functions. Handle stream EOS based on BYE messages or SSRC timeout. Returns SUCCESS from the state change function as we hide our async elements from the parent. 2007-08-16 Stefan Kost * gst/debug/rndbuffersize.c: Fix da leak. 2007-08-14 Stefan Kost * gst/debug/Makefile.am: * gst/debug/breakmydata.c: * gst/debug/gstdebug.c: * gst/debug/negotiation.c: * gst/debug/progressreport.c: * gst/debug/rndbuffersize.c: * gst/debug/testplugin.c: Add new test element and clean-up the others a little. 2007-08-12 Wim Taymans * gst/qtdemux/qtdemux.c: (qtdemux_parse_node): Fix parsing of mp4a version 0 atoms. Fixes #465774. 2007-08-10 Stefan Kost * gst/rtp/gstrtpilbcdepay.c: Include stdlib. 2007-08-10 Wim Taymans * gst/rtp/gstrtpmpvdepay.c: Set the mpegversion in the caps so that autoplugging does not get confused. 2007-08-09 Thomas Vander Stichele * po/hu.po: * po/uk.po: * po/vi.po: Updated translations. 2007-08-08 Michael Smith * gst/videobox/gstvideobox.c: (gst_video_box_ayuv_i420): Render right border in the correct location. 2007-08-08 Wim Taymans Patch by: Olivier Crete * gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_setcaps): * gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_setcaps): Make mode property a string. Fixes #464475. 2007-08-05 Stefan Kost * ext/flac/gstflacenc.c: Widen caps to match decoder a bit and add more FIXMEs. 2007-08-05 Stefan Kost patch by: Mark Nauwelaerts * gst/avi/gstavimux.c: Fix ODML index tag numbering. Fixes #463624. 2007-08-03 Wim Taymans * gst/rtsp/gstrtspsrc.c: (get_default_rate_for_pt), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_udp_sink): Fix default clock-rate for realmedia. Fix parsing of transport. Don't try to link NULL pads. 2007-07-30 Tim-Philipp Müller * po/POTFILES.skip: Add POTFILES.skip with list of source files that aren't disted at the moment but contain translatable strings. Should hopefully pacify broken tools and make it clearer that these files are left out intentionally (#461600). 2007-07-30 Edward Hervey * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_movie): If the buffer was entirely clipped ... don't try sending it :) 2007-07-27 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_methods), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_prepare_transports): If we don't hav a session manager, set the caps on outgoing buffers ourselves. Force PAUSE/PLAY methods for now until the extensions can overwrite. Append final bit of the transport string even when it does not contain a placeholder. 2007-07-27 Wim Taymans * gst/rtsp/gstrtspext.c: (gst_rtsp_ext_list_free), (gst_rtsp_ext_list_connect): * gst/rtsp/gstrtspext.h: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_send_cb): Clean up the interface list. Allow connecting to interface signals for the extensions. Remove old extension code. Free list on cleanup. Allow extensions to send additional RTSP messages. 2007-07-27 Jan Schmidt * ext/gconf/gconf.c: (gst_gconf_render_bin_with_default): Handle a NULL gconf key gracefully by rendering the default element. 2007-07-27 Wim Taymans * gst/rtsp/gstrtspext.h: Fix include path for extension interface. 2007-07-26 Sebastian Dröge * gst/audiofx/audioamplify.h: Also remove a now unecessary variable here. 2007-07-26 Sebastian Dröge * gst/audiofx/audioamplify.c: (gst_audio_amplify_init), (gst_audio_amplify_setup), (gst_audio_amplify_transform_ip): * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_set_process_function), (gst_audio_dynamic_init), (gst_audio_dynamic_setup), (gst_audio_dynamic_transform_ip): * gst/audiofx/audiodynamic.h: * gst/audiofx/audioinvert.c: (gst_audio_invert_init), (gst_audio_invert_setup), (gst_audio_invert_transform_ip): * gst/audiofx/audioinvert.h: Don't save format information ourselves, this is already saved in GstAudioFilter. 2007-07-26 Wim Taymans * gst/rtsp/gstrtspext.c: (gst_rtsp_ext_list_filter), (gst_rtsp_ext_list_stream_select): * gst/rtsp/gstrtspext.h: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams): Use rank to filter out extensions. Add url to stream_select interface call. 2007-07-25 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/base64.c: * gst/rtsp/base64.h: * gst/rtsp/gstrtspext.c: (gst_rtsp_ext_list_filter), (gst_rtsp_ext_list_init), (gst_rtsp_ext_list_get), (gst_rtsp_ext_list_detect_server), (gst_rtsp_ext_list_before_send), (gst_rtsp_ext_list_after_send), (gst_rtsp_ext_list_parse_sdp), (gst_rtsp_ext_list_setup_media), (gst_rtsp_ext_list_configure_stream), (gst_rtsp_ext_list_get_transports), (gst_rtsp_ext_list_stream_select): * gst/rtsp/gstrtspext.h: * gst/rtsp/gstrtspsrc.c: (gst_rtsp_lower_trans_get_type), (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_create_stream), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_flush), (gst_rtspsrc_do_seek), (gst_rtspsrc_sink_chain), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_mcast), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_handle_request), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtsp_auth_method_to_string), (gst_rtspsrc_parse_auth_hdr), (gst_rtspsrc_setup_auth), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_prepare_transports), (gst_rtspsrc_setup_streams), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause), (gst_rtspsrc_change_state), (gst_rtspsrc_uri_set_uri): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtsp.h: * gst/rtsp/rtspconnection.c: * gst/rtsp/rtspconnection.h: * gst/rtsp/rtspdefs.c: * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspext.h: * gst/rtsp/rtspextwms.c: * gst/rtsp/rtspextwms.h: * gst/rtsp/rtspmessage.c: * gst/rtsp/rtspmessage.h: * gst/rtsp/rtsprange.c: * gst/rtsp/rtsprange.h: * gst/rtsp/rtsptransport.c: * gst/rtsp/rtsptransport.h: * gst/rtsp/rtspurl.c: * gst/rtsp/rtspurl.h: * gst/rtsp/sdp.h: * gst/rtsp/sdpmessage.c: * gst/rtsp/sdpmessage.h: * gst/rtsp/test.c: Use shiny new RTSP and SDP library. Implement RTSP extensions using the new interface. Remove a lot of old code. 2007-07-24 Edward Hervey * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add codec mapping for '2vuy' (Raw YUV produced by FCP) and 'divx'. 2007-07-24 Sebastian Dröge * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): Don't unref the outgoing buffer twice when dropping it because it's outside of the segment. 2007-07-24 Sebastian Dröge * configure.ac: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset), (gst_wavpack_dec_chain), (gst_wavpack_dec_sink_event): Use the new buffer clipping function from gstaudio here and require gst-plugins-base CVS. * tests/check/elements/wavpackdec.c: (GST_START_TEST): For framed Wavpack buffers we require a valid timestamp. 2007-07-23 Wim Taymans * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment), (gst_qtdemux_clip_buffer), (gst_qtdemux_loop_state_movie), (qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps): Clip raw audio and video when we can, keep track of current output segment. Don't leak buffers and events when there is no output pad. Improve debugging here and there. 2007-07-23 Stefan Kost * configure.ac: Sync liboil check with plugins-base. 2007-07-20 Stefan Kost * ext/annodex/Makefile.am: Fix CFLAGS/LIBS. * ext/cdio/gstcdiocddasrc.c: * ext/libpng/gstpngdec.c: (gst_pngdec_task): Include stdlib * ext/cairo/Makefile.am: * gst/videofilter/Makefile.am: * tests/examples/level/Makefile.am: Use $(LIBM) instead of -lm 2007-07-18 Stefan Kost * sys/v4l2/gstv4l2src.c: Add another example pipeline. 2007-07-18 Stefan Kost Patch by: Alexander Eichner * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init): Use define here. * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_set_frequency_and_notify): Don't touch the property - its still disabled. * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format), (gst_v4l2src_grab_frame), (gst_v4l2src_get_size_limits): * sys/v4l2/v4l2src_calls.h: Improve fallback format negotionation. Fixes #451388 2007-07-18 Stefan Kost * tests/check/elements/videocrop.c: (GST_START_TEST): Fix the test. 2007-07-18 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-png.xml: * ext/jpeg/gstjpegdec.c: * ext/libpng/gstpngdec.c: (gst_pngdec_task), (gst_pngdec_sink_setcaps): More docs. More logs in pngdec. 2007-07-17 Stefan Kost * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init): Initialize num_buffers with minimum value. * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_probe_caps_for_format), (gst_v4l2src_grab_frame): Handle frame-size query failure gracefully. 2007-07-16 Wim Taymans * gst/qtdemux/qtdemux.c: (qtdemux_parse_node): Fix parsing of esds atoms inside mp4a atoms so that we can set correct codec_info for AAC audio. Fixes #457097 along with a whole other bunch of qt/aac files. 2007-07-16 Sebastian Dröge * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_clip_outgoing_buffer): Fix buffer clipping to correctly clip to the segment stop. 2007-07-13 Jan Schmidt * configure.ac: * tests/Makefile.am: Remove bogus check for libcheck, since we check for gstreamer-check and it pulls in the required info from there, and we weren't actually _using_ the information for libcheck ourselves anyway. 2007-07-12 Stefan Kost * configure.ac: Use pkg-config to locate check. 2007-07-11 Tim-Philipp Müller * ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_transform): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain): * ext/libpng/gstpngenc.c: (gst_pngenc_chain): * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): * gst/debug/gstnavigationtest.c: (gst_navigationtest_transform): * gst/effectv/gstaging.c: (gst_agingtv_transform): * gst/effectv/gstdice.c: (gst_dicetv_transform): * gst/effectv/gstedge.c: (gst_edgetv_transform): * gst/effectv/gstquark.c: (gst_quarktv_transform): * gst/effectv/gstrev.c: (gst_revtv_transform): * gst/effectv/gstshagadelic.c: (gst_shagadelictv_transform): * gst/effectv/gstvertigo.c: (gst_vertigotv_transform): * gst/effectv/gstwarp.c: (gst_warptv_transform): * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_wvpk_header), (gst_matroska_demux_check_subtitle_buffer), (gst_matroska_decode_buffer): * gst/videofilter/gstvideoflip.c: (gst_video_flip_transform): Fix build against core CVS. 2007-07-10 Edward Hervey * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): Don't return GST_FLOW_ERROR when pushing an event returns FALSE. We don't have enough granularity to convert that boolean into a GstFlowReturn. 2007-07-06 Michael Smith * gst/law/alaw-decode.c: (alawdec_sink_setcaps), (gst_alawdec_class_init), (gst_alawdec_init), (gst_alawdec_chain), (gst_alawdec_change_state): * gst/law/alaw-decode.h: * gst/law/mulaw-decode.c: (mulawdec_sink_setcaps), (gst_mulawdec_class_init), (gst_mulawdec_init), (gst_mulawdec_chain), (gst_mulawdec_change_state): * gst/law/mulaw-decode.h: Fix capsnego bogosity in *law decoders. 2007-07-06 Michael Smith * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_init), (gst_smokeenc_setcaps), (gst_smokeenc_chain), (gst_smokeenc_change_state): * ext/jpeg/gstsmokeenc.h: Remove stupidity in get/set caps functions. Fix some refcounting problems. 2007-07-06 Jan Schmidt * ext/libpng/gstpngdec.c: (gst_pngdec_caps_create_and_set): Remove endianness-flipping hack that seems to have been required only because of a bug in ffmpegcolorspace. Partially Fixes: #451908 2007-07-05 Stefan Kost * docs/plugins/Makefile.am: Simplify --extra-dir as gtkdoc scans recursively. 2007-07-03 Wim Taymans Patch by: Tommi Myöhänen * gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_setcaps): Set the encoding-name in the rtp caps to all uppercase, as required by the caps spec. Some small cleanups in the error paths. Fixes #453037. 2007-06-28 Sebastian Dröge * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_index_get_last_entry), (gst_wavpack_parse_index_get_entry_from_sample), (gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset), (gst_wavpack_parse_scan_to_find_sample): * ext/wavpack/gstwavpackparse.h: Use a GSList for the GArray that is used like a list anyway. 2007-06-28 Tim-Philipp Müller * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_setcaps), (gst_gdk_pixbuf_class_init), (gst_gdk_pixbuf_flush), (gst_gdk_pixbuf_sink_event), (gst_gdk_pixbuf_change_state): Add state change function where we set 0/1 as default framerate in case our setcaps function isn't called, like it might not in a filesrc ! gdkpixbufdec scenario. Fixes assertion triggered by gdkpixbufdec trying to create caps with a 0/0 framerate. Also post an error message on the bus if gst_pad_push() fails when called from our sink event handler (+1 for flow returns for event functions in 0.11) instead of failing silently. 2007-06-27 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_configure_caps): Cast stack args to the proper types. Fixes #451249. 2007-06-27 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (new_session_pad), (gst_rtspsrc_setup_streams): * gst/rtsp/gstrtspsrc.h: For container formats we only need to activate one of the streams so that we correctly signal no-more-pads. Fixes #451015. 2007-06-25 Stefan Kost * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: Update docs with caps info. 2007-06-25 Tim-Philipp Müller * po/POTFILES.in: Add more files with translatable strings (#450878). 2007-06-22 Jan Schmidt * MAINTAINERS: Updating all the maintainers files 2007-06-22 Edward Hervey * ext/flac/gstflactag.c: (gst_flac_tag_init): * gst/interleave/deinterleave.c: (deinterleave_init), (deinterleave_sink_link): * gst/interleave/interleave.c: (interleave_init): * gst/median/gstmedian.c: (gst_median_init): * gst/oldcore/gstmultifilesrc.c: (gst_multifilesrc_init): Fix memory leaks. * tests/check/elements/id3demux.c: (pad_added_cb): Remove unused variable. 2007-06-21 Jan Schmidt * ext/gconf/gconf.h: Make the prototype of gst_gconf_get_key_for_sink_profile match the implementation. Patch by: Damien Carbery Fixes: #449747 2007-06-20 Michael Smith * gst/rtp/gstrtpdepay.c: Fix description - rtpdepay is not a payloader. 2007-06-20 Stefan Kost * gst/qtdemux/qtdemux.c: (qtdemux_parse_samples), (qtdemux_video_caps): * gst/qtdemux/qtdemux_fourcc.h: Add MJPG to the variants of motion jpeg. 2007-06-19 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/audiopanorama.c: (GST_START_TEST): * tests/check/elements/videocrop.c: (GST_START_TEST): * tests/check/elements/videofilter.c: * tests/check/elements/wavpackdec.c: (GST_START_TEST): * tests/check/elements/wavpackparse.c: (GST_START_TEST): Add GST_OPTION_CFLAGS to CFLAGS when building unit tests, so the error flags are included and it errors out on compiler warnings for CVS builds; remove unused variables in various unit tests. 2007-06-19 Wim Taymans * gst/rtsp/rtspconnection.c: (rtsp_connection_connect), (rtsp_connection_close), (rtsp_connection_free): Use threadsafe inet_ntop to convert an ip number to a string. Fixes #447961. Don't leak fd (and ip) when freeing a connection without first closing it. 2007-06-19 Jan Schmidt * configure.ac: Back to CVS * gst-plugins-good.doap: Add 0.10.6 to the doap file. === release 0.10.6 === 2007-06-18 Jan Schmidt * configure.ac: releasing 0.10.6, "Wobble Board" 2007-06-17 Tim-Philipp Müller * gst/rtsp/rtspconnection.c: (rtsp_connection_connect), (rtsp_connection_free): Revert previous commit again, since we are frozen (sorry). 2007-06-17 Tim-Philipp Müller Patch by: Peter Kjellerstedt * gst/rtsp/rtspconnection.c: (rtsp_connection_connect), (rtsp_connection_free): inet_ntoa() uses a static buffer internally, so we need to copy the returned string if we want to store it for later (#447961). 2007-06-15 Jan Schmidt * win32/vs6/autogen.dsp: * win32/vs6/gst_plugins_good.dsw: * win32/vs6/libgstalaw.dsp: * win32/vs6/libgstalpha.dsp: * win32/vs6/libgstalphacolor.dsp: * win32/vs6/libgstapetag.dsp: * win32/vs6/libgstaudiofx.dsp: * win32/vs6/libgstauparse.dsp: * win32/vs6/libgstautodetect.dsp: * win32/vs6/libgstavi.dsp: * win32/vs6/libgstcutter.dsp: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgsteffectv.dsp: * win32/vs6/libgstflx.dsp: * win32/vs6/libgstgoom.dsp: * win32/vs6/libgsticydemux.dsp: * win32/vs6/libgstid3demux.dsp: * win32/vs6/libgstinterleave.dsp: * win32/vs6/libgstjpeg.dsp: * win32/vs6/libgstlevel.dsp: * win32/vs6/libgstmatroska.dsp: * win32/vs6/libgstmedian.dsp: * win32/vs6/libgstmonoscope.dsp: * win32/vs6/libgstmulaw.dsp: * win32/vs6/libgstmultipart.dsp: * win32/vs6/libgstqtdemux.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: * win32/vs6/libgstsmpte.dsp: * win32/vs6/libgstspeex.dsp: * win32/vs6/libgstudp.dsp: * win32/vs6/libgstvideobalance.dsp: * win32/vs6/libgstvideobox.dsp: * win32/vs6/libgstvideocrop.dsp: * win32/vs6/libgstvideoflip.dsp: * win32/vs6/libgstvideomixer.dsp: * win32/vs6/libgstwaveform.dsp: * win32/vs6/libgstwavenc.dsp: * win32/vs6/libgstwavparse.dsp: Mark *.dsp & *.dsw as binary files and convert to DOS line endings, as they don't load into VS6 correctly otherwise. 2007-06-15 Jan Schmidt * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_connect): Fix the MingW build. Patch By: Vincent Torri Fixes: #446981 2007-06-14 Jan Schmidt * tests/check/elements/.cvsignore: * tests/icles/.cvsignore: Hush the buildbots up 2007-06-14 Jan Schmidt * configure.ac: * sys/Makefile.am: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/waveform/Makefile.am: Make sure to dist everything needed for win32 builds. 2007-06-14 Edward Hervey * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): For AMR-NB streams, export the AMRSpecificBox as codec_data on the caps. Fixes #447458 2007-06-13 Wim Taymans * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_setcaps): Make sure we allocate enough memory for the codec_data. Fixes #447210. 2007-06-12 Sebastien Moutte * win32/MANIFEST: Add videocrop project file to the win32 manifest. * win32/vs6/gst_plugins_good.dsw: Add qtdemux,videocrop and waveform projects to the workspace. * win32/vs6/libgstqtdemux.dsp: Add zlib to the link list of qtdemux. * win32/vs6/libgstvideocrop.dsp: Add a project file for videocrop. 2007-06-12 Jan Schmidt * po/POTFILES.in: Add qtdemux for translation 2007-06-12 Jan Schmidt * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-videocrop.xml: * gst-plugins-good.spec.in: * sys/Makefile.am: * tests/check/Makefile.am: * tests/icles/Makefile.am: * tests/icles/videocrop-test.c: Move videocrop and osxvideo from -bad. 2007-06-12 Jan Schmidt * configure.ac: * 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-qtdemux.xml: * docs/plugins/inspect/plugin-quicktime.xml: * win32/MANIFEST: Move qtdemux from -bad. * gst-plugins-good.spec.in: Update spec file to reflect moving of qtdemux and wavpack 2007-06-12 Jan Schmidt * win32/MANIFEST: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-directdraw.xml: * docs/plugins/inspect/plugin-directsound.xml: * docs/plugins/inspect/plugin-waveform.xml: Move the waveform plugin from -bad too. Update the inspect xml files to mention Plugins Good instead of Plugins Bad. 2007-06-12 Andy Wingo * sys/v4l2/v4l2src_calls.c (gst_v4l2_buffer_finalize) (gst_v4l2_buffer_class_init, gst_v4l2_buffer_get_type) (gst_v4l2_buffer_new): Behave more like ximagesink's buffers, with finalization and resuscitation. No longer public. (gst_v4l2_buffer_pool_finalize, gst_v4l2_buffer_pool_init) (gst_v4l2_buffer_pool_class_init, gst_v4l2_buffer_pool_get_type) (gst_v4l2_buffer_pool_new, gst_v4l2_buffer_pool_activate) (gst_v4l2_buffer_pool_destroy): Make the pool follow common miniobject semantics, and be threadsafe. (gst_v4l2src_queue_frame): Remove this function, as we just call the ioctls directly in the two places where we queue buffers. (gst_v4l2src_grab_frame): Return a flowreturn and fill the buffer directly. (gst_v4l2src_capture_init): Use the new buffer_pool_new function to allocate the pool, which also preallocates the GstBuffers. (gst_v4l2src_capture_start): Call buffer_pool_activate instead of queueing the frames directly. (gst_v4l2src_grab_frame): Return a copy of the pool buffer if all mmap buffers have been dequeued. * sys/v4l2/gstv4l2src.h (struct _GstV4l2BufferPool): Make this a real MiniObject instead of rolling our own refcounting and finalizing. Give it a lock. (struct _GstV4l2Buffer): Remove one intermediary object, having the buffers hold the struct v4l2_buffer directly. * sys/v4l2/gstv4l2src.c (gst_v4l2src_set_caps): Pass the caps to capture_init so that it can set them on the buffers that it will create. (gst_v4l2src_get_read): For better or for worse, include the timestamping and offsetting code here; really we should be using bufferalloc though. (gst_v4l2src_get_mmap): Just make grab_frame return one of our preallocated, mmap'd buffers. 2007-06-11 Wim Taymans Patch by: daniel fischer * sys/ximage/gstximagesrc.c: (gst_ximage_src_start), (gst_ximage_src_get_caps): Actually use the display_name property so that we can dump any available X display. Fixes #445905. 2007-06-11 Wim Taymans Patch by: Tommi Myöhänen * gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_setcaps): * gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_setcaps): Add missing rate fields to caps. Fixes #441118. 2007-06-10 Sebastien Moutte * win32/vs6/gst_plugins_good.dsw: * win32/vs8/gst-plugins-good.sln: Add DirectSound and DirectDraw sinks project files to workspace and solution files. 2007-06-10 Sebastian Dröge Patch by: Josh Coalson , updated by Alexis Ballier : * configure.ac: * ext/flac/gstflacdec.c: (gst_flac_dec_reset_decoders), (gst_flac_dec_setup_seekable_decoder), (gst_flac_dec_setup_stream_decoder), (gst_flac_dec_seek), (gst_flac_dec_tell), (gst_flac_dec_length), (gst_flac_dec_eof), (gst_flac_dec_read_seekable), (gst_flac_dec_read_stream): * ext/flac/gstflacdec.h: * ext/flac/gstflacenc.c: (gst_flac_enc_init), (gst_flac_enc_finalize), (gst_flac_enc_set_metadata), (gst_flac_enc_sink_setcaps), (gst_flac_enc_update_quality), (gst_flac_enc_seek_callback), (gst_flac_enc_write_callback), (gst_flac_enc_tell_callback), (gst_flac_enc_sink_event), (gst_flac_enc_chain), (gst_flac_enc_set_property), (gst_flac_enc_get_property), (gst_flac_enc_change_state): * ext/flac/gstflacenc.h: Add support for flac >= 1.1.3 which changed the API. Fixes bug #385887. 2007-06-09 Sebastian Dröge * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_sink_set_caps): Remove workaround for bug #421543. This is fixed in core 0.10.13 and not necessary anymore as we need at least that core version. 2007-06-09 Sebastian Dröge * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset), (gst_wavpack_dec_chain): * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset), (gst_wavpack_parse_push_buffer): * ext/wavpack/gstwavpackparse.h: Improve discont handling by checking if the next Wavpack block has the expected, following block index. 2007-06-08 Thomas Vander Stichele * gst/rtp/gstrtpmp4vpay.c (gst_rtp_mp4vpay_details): Fix element description. 2007-06-08 Thomas Vander Stichele * configure.ac: * 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/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.signals: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-wavpack.xml: * ext/Makefile.am: * tests/check/Makefile.am: move wavpack plugin. See #352605. 2007-06-08 Jan Schmidt * configure.ac: * 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: * sys/Makefile.am: * win32/MANIFEST: Add DirectDraw & DirectSound plugins to the build and docs. 2007-06-08 Tim-Philipp Müller * ext/dv/gstdvdemux.c: (gst_dvdemux_loop): * ext/libpng/gstpngdec.c: (user_read_data), (gst_pngdec_task): When operating in pull mode, error out correct on not-linked. 2007-06-06 Andy Wingo * sys/v4l2/v4l2src_calls.c (gst_v4l2src_probe_caps_for_format) (gst_v4l2src_probe_caps_for_format_and_size): Only probe for format and size if the ioctls are defined; should fix compilation on Linux < 2.16.19. 2007-06-06 Tim-Philipp Müller * gst/videobox/gstvideobox.c: (gst_video_box_ayuv_i420): Printf fixes in debug statements; use LOG level for debug statements that are printed for each and every frame; convert c++ comments to C-style comments; not much point using g_try_malloc() if we then not even check the return value. 2007-06-05 Tim-Philipp Müller * configure.ac: Bump requirements to released versions (core and base 0.10.13). * gst/icydemux/gsticydemux.c: (gst_icydemux_unicodify): Use gst_tag_utf8_from_freeform_string() from libgsttag instead of own implementation. 2007-06-05 Andy Wingo * sys/v4l2/gstv4l2src.c (gst_v4l2src_start, gst_v4l2src_stop): Add some useless comments. * sys/v4l2/v4l2src_calls.c (gst_v4l2src_capture_init): Don't queue frames before calling STREAMON, that might leave them in a state where they can't be dequeued if we go back to NULL without calling STREAMON, according to the docs. (gst_v4l2src_capture_start): Enqueue buffers here instead, right before we call STREAMON. (gst_v4l2src_capture_deinit): Remove crack to work around dequeue failures. (For me this code hung.) The pool refcounting is still crack; added a note to that effect. 2007-06-05 Wim Taymans * gst/multipart/multipartmux.c: (gst_multipart_mux_class_init), (gst_multipart_mux_get_mime), (gst_multipart_mux_collected): Add support for mapping gst structure names to the MIME type equivalent. Implemented for audio/x-mulaw->audio/basic. Fixes #442874. 2007-06-03 Sebastian Dröge * gst/wavenc/gstwavenc.c: (gst_wavenc_create_header_buf), (gst_wavenc_sink_setcaps), (gst_wavenc_format_samples), (gst_wavenc_chain), (gst_wavenc_change_state): * gst/wavenc/gstwavenc.h: Properly write wav files with width!=depth by having the depth most significant bytes set and all others zero. Fixes #442535. 2007-06-01 Wim Taymans * gst/rtsp/rtspconnection.c: Add include to make buildbot happy. 2007-06-01 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_connect), (add_date_header), (rtsp_connection_send), (parse_response_status), (parse_request_line), (parse_line), (rtsp_connection_receive): * gst/rtsp/rtspdefs.c: (rtsp_version_as_text): * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspmessage.c: (key_value_foreach), (rtsp_message_init_request), (rtsp_message_init_response), (rtsp_message_remove_header), (rtsp_message_append_headers), (rtsp_message_dump): * gst/rtsp/rtspmessage.h: Improves version checking, allowing an RTSP server to reply with "505 RTSP Version not supported. Adds a Date header to all messages. Replies with RTSP_EPARSE rather than RTSP_EINVALID in cases where we want to be able to send a response even if something in the request was invalid. EINVAL is only used when passing wrong arguments to functions. Do not handle an invalid method in parse_request_line(). Defer this to the caller so it can respond with "405 Method Not Allowed". Improves parsing of the timeout parameter to the Session header, allowing whitespace after the semicolon. Avoids a compiler warning due to variables shadowing a function argument. 2007-06-01 Wim Taymans Based on Patch by: Daniel Charles * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_setcaps), (gst_rtp_amr_depay_process): * gst/rtp/gstrtpamrdepay.h: * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_base_init), (gst_rtp_amr_pay_class_init), (gst_rtp_amr_pay_init), (gst_rtp_amr_pay_setcaps), (gst_rtp_amr_pay_handle_buffer): * gst/rtp/gstrtpamrpay.h: Add support for AMR-WB. Small cleanups such as using BOILERPLATE. 2007-05-31 Wim Taymans * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_configure_stream): Fix compile warning when debug is disabled as spotted bu Saur on IRC. 2007-05-30 Andy Wingo * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2object.c (gst_v4l2_object_new): Revert some unintended changes. * sys/v4l2/v4l2src_calls.h: * sys/v4l2/v4l2src_calls.c (gst_v4l2src_fill_format_list): Store the format list in the order that the driver gives it to us. (gst_v4l2src_probe_caps_for_format_and_size) (gst_v4l2src_probe_caps_for_format): New functions, fill GstCaps based on the capabilities of the device. (gst_v4l2src_grab_frame): Update for object variable renaming. (gst_v4l2src_set_capture): Update to be strict in its parameters, as in the set_caps below. (gst_v4l2src_capture_init): Update for object variable renaming, and reflow. (gst_v4l2src_capture_start, gst_v4l2src_capture_stop) (gst_v4l2src_capture_deinit): Update for object variable renaming. (gst_v4l2src_update_fps, gst_v4l2src_set_fps) (gst_v4l2src_get_fps): Remove; these functions don't have much meaning outside of an atomic set_caps method. (gst_v4l2src_buffer_new): Don't set buffer duration, it is not known. * sys/v4l2/gstv4l2tuner.c (gst_v4l2_tuner_set_channel): Remove call to update_fps; not sure about this change. (gst_v4l2_tuner_set_norm): Work around the fact that for the moment we don't have an update_fps_func. * sys/v4l2/gstv4l2src.h (struct _GstV4l2Src): Don't put v4l2 structures in the object, just store what we need. Do store the probed caps of the device. Don't store the current frame rate. * sys/v4l2/gstv4l2src.c (gst_v4l2src_init): Remove the update_fps_function, for now. Update for new object variable naming. (gst_v4l2src_set_property, gst_v4l2src_get_property): Update for new object variable naming. (gst_v4l2src_v4l2fourcc_to_structure): Rename from ..._to_caps. (gst_v4l2_structure_to_v4l2fourcc): Rename from ...caps_to_.... (gst_v4l2src_get_caps): Rework to probe the device for supported frame sizes and frame rates. (gst_v4l2src_set_caps): Rework to be strict in the given parameters: if someone asks us to have a certain size and rate, that is what we configure. (gst_v4l2src_get_read): Update for object variable naming. Don't leak buffers on short reads. (gst_v4l2src_get_mmap): Update for object variable naming, and add comments. (gst_v4l2src_create): Update for object variable naming. 2007-05-30 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_base_init), (gst_avi_demux_reset), (gst_avi_demux_parse_stream): * gst/avi/gstavidemux.h: Parse subtitle text streams instead of erroring out (#442034). Still needs a parser for the subtitles to actually show up. 2007-05-30 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_push_event), (gst_avi_demux_loop): Make _push_event() return TRUE if the event could be pushed on at least one pad and not only if it could be pushed on all pads, otherwise we'll end up posting an error message on EOS if one or more source pads are not connected. 2007-05-28 Wim Taymans * gst/rtsp/rtsptransport.c: Use renamed RTP bin. 2007-05-28 Wim Taymans Based on patch by: Dejan Sakelšak * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_set_property), (gst_video_box_transform_caps), (video_box_recalc_transform), (gst_video_box_set_caps), (gst_video_box_get_unit_size), (gst_video_box_apply_alpha), (gst_video_box_ayuv_ayuv), (gst_video_box_clear), (UVfloor), (UVceil), (gst_video_box_ayuv_i420), (gst_video_box_i420_ayuv), (gst_video_box_i420_i420), (gst_video_box_transform), (plugin_init): Add AYUV->AYUV and AYUV->I420 formats. Fix negotiation and I420->AYUV conversion. Fixes #429329. 2007-05-26 Wim Taymans * ext/speex/gstspeexdec.c: (speex_dec_chain_parse_data): Use different variables for nested for loops so that the outer loop functions properly and speex files with multiple frames per buffer work properly. Fixes #441408. 2007-05-25 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (gst_id3demux_sink_event): Don't leak newsegment events. 2007-05-25 Tim-Philipp Müller * gst/wavparse/Makefile.am: Add '-lm' to LIBS for ceil(), don't assume one of our dependencies drags it in. 2007-05-25 Tim-Philipp Müller * ext/flac/gstflacenc.c: (gst_flac_enc_init), (notgst_value_array_append_buffer), (gst_flac_enc_process_stream_headers), (gst_flac_enc_write_callback), (gst_flac_enc_chain), (gst_flac_enc_change_state): * ext/flac/gstflacenc.h: Collect headers, add "streamheader" field to output caps and set BUFFER_IN_CAPS flag on pushed header buffers. That way oggmux produces output according to the official FLAC-to-Ogg mapping instead of completely broken files. Fixes #426044. 2007-05-25 Jan Schmidt * gst/id3demux/gstid3demux.c: (gst_id3demux_reset), (gst_id3demux_send_new_segment), (gst_id3demux_chain), (gst_id3demux_sink_event): * gst/id3demux/gstid3demux.h: * gst/apetag/gsttagdemux.c: (gst_tag_demux_reset), (gst_tag_demux_chain), (gst_tag_demux_sink_event), (gst_tag_demux_send_new_segment): Handle and adjust new-segment events so that downstream really sees a stream with the tag pieces stripped off the front and back. Fixes strangeness in seeking when mp3 decoders use the new-segment byte position to estimate their current playback position timestamp and then the arriving buffers don't match up. 2007-05-25 Jan Schmidt * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_detect): Don't unnecessarily perform a READY->NULL->READY transition on the detected audio sink when starting up. Fixes: #440127 2007-05-24 Tim-Philipp Müller * ext/flac/gstflacenc.c: (gst_flac_enc_sink_setcaps), (gst_flac_enc_chain): Don't crash in chain function if setcaps hasn't been called. 2007-05-24 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_methods): Init value to avoid infinte loops. 2007-05-24 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_auth), (gst_rtspsrc_try_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open), (gst_rtspsrc_play): (rtsp_connection_send), (rtsp_connection_receive): * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_after_send): Fix for new API. * gst/rtsp/rtspconnection.c: (add_auth_header), Only add authorisation and session headers when sending messages. * gst/rtsp/rtspmessage.c: (key_value_foreach), (rtsp_message_init), (rtsp_message_init_request), (rtsp_message_init_response), (rtsp_message_unset), (rtsp_message_add_header), (rtsp_message_remove_header), (rtsp_message_get_header), (rtsp_message_append_headers), (dump_key_value), (rtsp_message_dump): * gst/rtsp/rtspmessage.h: Add support for multiple headers of the same type by storing the parsed headers in a GArray instaed of a hashtable. 2007-05-21 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_create), (gst_udpsrc_unlock), (gst_udpsrc_unlock_stop): Since we depend on 0.10.13 -core, override the unlock_stop vmethod for safer shutdown. 2007-05-21 Wim Taymans * gst/rtsp/gstrtpdec.c: (gst_rtp_dec_class_init): * gst/rtsp/gstrtpdec.h: Added signal for backwards compat. 2007-05-21 Sebastian Dröge Patch by: René Stadler * configure.ac: * gst/auparse/gstauparse.c: (gst_au_parse_reset), (gst_au_parse_parse_header), (gst_au_parse_chain): * gst/auparse/gstauparse.h: Use audioconvert for converting from non-native endianness floats in auparse instead of doing it ourself. Fixes #424527. This needs the audioconvert from plugins-base CVS. 2007-05-21 Wim Taymans * gst/rtp/gstrtph263ppay.c: (gst_fragmentation_mode_get_type), (gst_rtp_h263p_pay_flush): Fix enum registration. 2007-05-21 Wim Taymans Patch by: Antoine Tremblay * gst/rtp/gstrtph263ppay.c: (gst_fragmentation_mode_get_type), (gst_rtp_h263p_pay_class_init), (gst_rtp_h263p_pay_init), (gst_rtp_h263p_pay_set_property), (gst_rtp_h263p_pay_get_property), (gst_rtp_h263p_pay_flush): * gst/rtp/gstrtph263ppay.h: Add new fragmentation mode base on GOB headers. Fixes #438940. 2007-05-20 Tim-Philipp Müller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_udp): Printf format fix. 2007-05-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams): Don't crash when an unsupported transport error was returned by the server, just try to configure the next stream. Fixes #439255. 2007-05-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_set_property), (gst_rtspsrc_get_property), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open): * gst/rtsp/gstrtspsrc.h: Add TCP timeout property and use it for all TCP connection. * gst/rtsp/rtspconnection.c: (rtsp_connection_connect), (rtsp_connection_write), (rtsp_connection_next_timeout), (rtsp_connection_reset_timeout): Make connect and writes cancelable and make them use the timeout. 2007-05-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_setup_streams): Refactor timeout handling. Also send keep-alive when dealing with TCP transport. * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_free), (rtsp_connection_next_timeout), (rtsp_connection_reset_timeout): * gst/rtsp/rtspconnection.h: Use a timer to handle the session timeouts, add some methods to deal with timeouts. 2007-05-17 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_setup_streams): Ignore streams that fail the setup command, we will retry with a different transport later on. * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_parse_sdp), (rtsp_ext_wms_configure_stream): Fix encoding name case. 2007-05-16 Edward Hervey * ext/libpng/gstpngdec.c: (user_endrow_callback), (user_read_data): Fix build on macosx. 2007-05-16 Sebastian Dröge * ext/raw1394/gstdv1394src.c: (gst_dv1394src_uri_set_uri): Replace direct comparison of a string with the string literal "" with a comparison of the first character with '\0'. Fixes #438926. 2007-05-15 Stefan Kost * gst/debug/breakmydata.c (gst_break_my_data_init): One more try. This should be the proper fix now. 2007-05-15 Stefan Kost * gst/debug/breakmydata.c: Ooops, no // comments please. 2007-05-15 Stefan Kost * gst/debug/breakmydata.c: (gst_break_my_data_class_init), (gst_break_my_data_init): Fix gst_buffer_is_writable() assertion. 2007-05-14 David Schleef * sys/v4l2/gstv4l2src.c: Add support for Bayer images as video/x-raw-bayer. Fixes #314160. 2007-05-14 Wim Taymans * gst/rtp/gstrtptheoradepay.c: (decode_base64), (gst_rtp_theora_depay_parse_configuration): * gst/rtp/gstrtptheorapay.c: (encode_base64), (gst_rtp_theora_pay_finish_headers), (gst_rtp_theora_pay_handle_buffer): Update theora pay/depayloader in a similar to vorbis. * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_parse_configuration): Update docs. 2007-05-14 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send): When we try to execute a method that is not supported by the server, don't error out but remove the method from the accepted methods so that we never try to perform this method again. 2007-05-14 Wim Taymans * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_process): Remove annoying _dump_mem. 2007-05-14 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_range): Parse range correctly. * gst/rtsp/rtspurl.c: (rtsp_url_get_request_uri): The baseurl now always has a '/' at the start. 2007-05-14 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_configure_caps), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play): Factor out caps configuration and configure more stuff such as the time ranges and speed/scale values. * gst/rtsp/rtsptransport.c: Add Copyright after non-trival fixes. 2007-05-12 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspconnection.c: (rtsp_connection_receive): * gst/rtsp/rtspmessage.c: (rtsp_message_init_data), (rtsp_message_get_header): * gst/rtsp/rtspmessage.h: Make channel guint8 where possible. Make rtsp_message_init_data() take the channel as a guint8. * gst/rtsp/rtspdefs.c: Fixed a typo: Timout -> Timeout * gst/rtsp/rtspdefs.h: Make RTSP_CHECK() behave as a statement. * gst/rtsp/sdpmessage.c: Avoid a compiler warning in INIT_ARRAY(). Fixes #437692. 2007-05-12 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtsp/rtspurl.c: (rtsp_url_parse), (rtsp_url_free), (rtsp_url_get_request_uri): * gst/rtsp/rtspurl.h: Add support for query parameters to RTSP URLs. 2007-05-12 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtsp/rtsptransport.c: (rtsp_transport_init), (parse_mode), (parse_range), (range_as_text), (rtsp_transport_mode_as_text), (rtsp_transport_profile_as_text), (rtsp_transport_ltrans_as_text), (rtsp_transport_parse), (rtsp_transport_as_text): * gst/rtsp/rtsptransport.h: Add validation to rtsp_transport_parse(). Add rtsp_transport_as_text() to generate an RTSP header from an RTSPTransport. Change ssrc to guint (was a string) since that is what it is, even though it is sent as a hex string. Correctly identify PLAY|RECORD mode parameters (the syntax in the RFC is incorrect, which can be seen when looking at the examples in the RFC). Fixes #437670. 2007-05-11 Zaheer Abbas Merali <> Patch by: Eric Anholt * sys/ximage/gstximagesrc.c (gst_ximage_src_open_display, gst_ximage_src_ximage_get): Use union of all damage between frames to make it faster. Fixes bug #342463. Also fix crasher when cursor is at bottom right of window. 2007-05-11 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): Skip LIST chunks before the fmt chunk (fixes #437499). Also fix streaming mode regression for file from #343837 with 'bext' chunk before the 'fmt' chunk. 2007-05-11 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush), (gst_rtspsrc_do_seek), (gst_rtspsrc_perform_seek), (gst_rtspsrc_handle_src_event), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_open), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspdefs.h: Preliminary seek support. Activate internal pads so that we can receive events on them. Don't try to parse a range string when it's NULL. 2007-05-11 Wim Taymans * gst/rtp/README: Update README with new RTP variables that will be used for synchronisation. * gst/rtp/gstrtpvorbisdepay.c: (decode_base64), (gst_rtp_vorbis_depay_parse_configuration), (gst_rtp_vorbis_depay_process): * gst/rtp/gstrtpvorbispay.c: (encode_base64), (gst_rtp_vorbis_pay_finish_headers), (gst_rtp_vorbis_pay_handle_buffer): Update vorbis pay and depayloader to draft-04. 2007-05-11 Wim Taymans * gst/rtsp/rtsptransport.c: UDP MCAST is actually the default for RTP/AVP. 2007-05-13 Sebastien Moutte * gst/level/gstlevel.c: (gst_level_transform_ip): Use guint8 * instead of gpointer then vs6 can build in_data += (filter->width / 8). 2007-05-11 Zaheer Abbas Merali <> * sys/ximage/gstximagesrc.c (gst_ximage_src_start, gst_ximage_src_ximage_get): * sys/ximage/gstximagesrc.h (last_ximage): When using Damage actually keep the last frame, and not assume that the buffer we get already has the last frame on it. Copy the cursor over if we specify a non-zero start x and start y. 2007-05-11 Wim Taymans * gst/rtsp/rtsptransport.c: Make UDP the default transport when not specified. 2007-05-09 David Schleef * gst/level/gstlevel.c: Revert last change. 2007-05-09 Sebastien Moutte * gst/level/gstlevel.c: (gst_level_calculate_##TYPE), (gst_level_transform_ip): Use guint8 * instead of gpointer then vs6 know the size of data pointed when moving the pointer. * gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_handle_buffer): Move instructions after variables declaration. * win32/vs6/autogen.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: Update vs6 project files. 2007-05-09 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_query), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_open): * gst/rtsp/rtsprange.c: (parse_npt_time), (parse_npt_range), (parse_clock_range), (parse_smpte_range), (rtsp_range_parse), (rtsp_range_free): * gst/rtsp/rtsprange.h: Add code to parse time ranges. Report DURATION on the stream when possible. 2007-05-08 Tim-Philipp Müller * gst/videomixer/videomixer.c: (gst_videomixer_blend_ayuv_ayuv), (gst_videomixer_fill_checker), (gst_videomixer_fill_color), (gst_videomixer_collected): Fix strides calculation for AYUV (it's just width*4) (#436910). 2007-05-06 Sebastian Dröge * gst/audiofx/audioamplify.c: (gst_audio_amplify_transform_ip): * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_transform_ip): * gst/audiofx/audioinvert.c: (gst_audio_invert_transform_ip): Sync the GObject properties before each processing step to properly work with the controller. 2007-05-04 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_udp), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause), (gst_rtspsrc_change_state): Let more error state trickle down so that we can catch more error cases. Handle keep-alive a little smarter by selecting a method the server actually supports. Fix a race in UDP streaming shutdown. 2007-05-04 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send_keep_alive): Ignore errors when trying to use the keep-alive messages. 2007-05-04 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_event), (gst_rtspsrc_handle_src_query), (gst_rtspsrc_sink_chain), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_free_udp), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_mcast), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_stream_configure_transport): Send RTCP messages back to the server over the TCP connection. * gst/rtsp/rtspconnection.c: (rtsp_connection_write), (rtsp_connection_send), (rtsp_connection_read), (read_body), (rtsp_connection_receive): * gst/rtsp/rtspconnection.h: Factor out and expose lowlevel _write and _read methods. Implement sending data messages to the server. 2007-05-03 Wim Taymans * gst/multipart/multipartmux.c: (gst_multipart_mux_queue_pads), (gst_multipart_mux_collected): Fix timestamps on outgoing buffers. 2007-05-03 Wim Taymans * gst/multipart/multipartmux.c: (gst_multipart_mux_request_new_pad), (gst_multipart_mux_collected), (gst_multipart_mux_change_state): Emit NEWSEGMENT events before pushing the first buffer. 2007-05-03 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_finalize), (gst_rtspsrc_alloc_udp_ports), (gst_rtspsrc_handle_src_event), (gst_rtspsrc_handle_src_query), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_free_udp), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_mcast), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_push_event), (gst_rtspsrc_loop_udp), (gst_rtspsrc_open), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play), (gst_rtspsrc_pause): Refactor transport configuration code. Create internal pads for TCP transport so that we can implement events and queries. Handle events and queries. Parse range from the SDP. Fix race in pause handler where the connection could still be flushing. 2007-05-02 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (new_session_pad), (request_pt_map), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_async_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Fix race when multiple udp sources post timeouts, just act on the first received timeout. Protect stream list with a recursive lock to fix some races. Flush connection when we need to do a reconnect or stop. Make state lock recursive. * gst/rtsp/rtspconnection.c: (rtsp_connection_connect), (rtsp_connection_close): Some small cleanups. 2007-05-02 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data): Only set DISCONT when there actually is a discont or when we just started. 2007-05-02 Sebastian Dröge * ext/flac/gstflac.c: (plugin_init): Call bindtextdomain() to get localized strings. 2007-05-02 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data): * gst/wavparse/gstwavparse.h: Be a bit more clever when dealing with VBR files with FACT tags, we don't want to timestamp buffers in that case but the estimated BPS can be used for seeking. Only send close segment in the streaming thread. 2007-05-02 Sebastian Dröge * ext/flac/gstflacdec.c: (gst_flac_dec_loop): Correctly post an error on the bus if something went wrong in the loop function. This fixes a few cases where the task was paused and nothing happened anymore. 2007-05-02 Wim Taymans * gst/rtsp/test.c: (main): Fix compilation of deprecated test just because I'm too lazy to delete it. 2007-05-02 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_handle_request), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_try_send), (gst_rtspsrc_open), (gst_rtspsrc_handle_message): * gst/rtsp/gstrtspsrc.h: Fix sending RTCP to the right place. Fix bug in reffing the wrong UDP element. Use new pad names for the session manager. Implement handling server requests in interleaved and UDP modes. Handle session keep-alive in UDP modes. Remove GCond for handling UDP timeouts. * gst/rtsp/rtspconnection.c: (rtsp_connection_connect), (rtsp_connection_send), (rtsp_connection_read), (read_body), (rtsp_connection_receive), (rtsp_connection_close): * gst/rtsp/rtspconnection.h: Store connection IP address for later. Add timeout args to all operations that might block forever. Parse session timeout. Only close sockets when not already closed. * gst/rtsp/rtspdefs.c: * gst/rtsp/rtspdefs.h: Add timeout return value and error string. * gst/rtsp/rtspmessage.c: (rtsp_message_init_response): Add small comment. 2007-05-01 Wim Taymans Patch by: Sjoerd Simons * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_init), (gst_rtp_mp4v_pay_empty), (gst_rtp_mp4v_pay_event): * gst/rtp/gstrtpmp4vpay.h: Handle NEWSEGMENT and FLUSH events. Fixes #434824. 2007-04-30 Tim-Philipp Müller * docs/plugins/gst-plugins-good-plugins-docs.sgml: Remove v4l2src from docs, since it breaks the docs build, and the plugin is only built if --enable-experimental is used anyway. * docs/plugins/Makefile.am: Spaces => tab. 2007-04-29 Wim Taymans * gst/udp/gstmultiudpsink.c: (leave_multicast), (gst_multiudpsink_add), (gst_multiudpsink_remove): Add code to drop membership of a multicast group. * gst/udp/gstudpsink.c: (gst_udpsink_update_uri), (gst_udpsink_set_uri): Implement URI handler. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_parse_rtpinfo): Use URI handler to make udpsink instace. Improve code to configure port and destination. 2007-04-29 Wim Taymans * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_add): Fix multicast detection. Don't try to join a multicast group if the address is not multicast. * gst/udp/gstudpsrc.c: (gst_udpsrc_update_uri): Small debug improvement. 2007-04-27 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play), (gst_rtspsrc_handle_message): Ignore ASYNC state messages from the udpsink, it's irrelevant for the parent. 2007-04-27 Wim Taymans * gst/rtp/gstrtpilbcdepay.h: Fix mode property when specified as an arg. 2007-04-26 Edward Hervey * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-osxaudio.xml: Add documentation for osxaudio plugin. 2007-04-26 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play), (gst_rtspsrc_pause): * gst/rtsp/gstrtspsrc.h: Protect state changes with a lock. * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (parse_line): * gst/rtsp/rtspconnection.h: Remove some unused stuff. 2007-04-26 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Handle the case where there are exactly 0 bytes to read and the ioctl did not report an error. Fixes #433530. 2007-04-26 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data): * gst/wavparse/gstwavparse.h: Apply DISCONT to buffers. Only apply timestamp to the first sample after a DISCONT, too many VBR files cause random jitter in the timestamps. Fixes #433119. 2007-04-25 Wim Taymans * gst/rtsp/gstrtpdec.c: (gst_rtp_dec_class_init), (gst_rtp_dec_init), (gst_rtp_dec_set_property), (gst_rtp_dec_get_property): * gst/rtsp/gstrtpdec.h: Add dummy latency property to be backwards compat with rtpbin. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_set_property), (gst_rtspsrc_get_property), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_parse_rtpinfo): * gst/rtsp/gstrtspsrc.h: Add latency property and configure in the session manager. Don't set invalid clock-base and seqnum-base on caps, some servers sometimes don't send them. 2007-04-25 Tim-Philipp Müller * gst/alpha/gstalphacolor.c: (gst_alpha_color_base_init), (gst_alpha_color_transform_caps), (gst_alpha_color_set_caps): Double-check that RGB input caps are really RGBA caps (apparently the core doesn't always catch it if those caps aren't a subset of our template caps, also see #421543). Fixes #429319 in a way. Also, don't leak the pad template in the transform_caps function. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/alphacolor.c: (setup_alphacolor), (cleanup_alphacolor), (create_caps_rgb24), (create_caps_rgba32), (create_buffer_rgb24_3x4), (create_buffer_rgba32_3x4), (GST_START_TEST), (alphacolor_suite): Add some basic unit tests for alphacolor. 2007-04-25 Tim-Philipp Müller * ext/libpng/gstpngdec.c: (gst_pngdec_task): If we get a fatal flow return in the loop function, first post the error message and only then send the EOS event downstream, otherwise applications might get an eos message before the error message and think everything was ok (related to #429319). 2007-04-25 Wim Taymans * gst/rtsp/rtspconnection.c: (rtsp_connection_receive): Read the channel byte as an unsigned byte. 2007-04-25 Wim Taymans * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_set_property): * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_init), (gst_rtp_amr_depay_setcaps), (gst_rtp_amr_depay_process): * gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_init), (gst_rtp_gsm_depay_setcaps): * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps): * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_setcaps): * gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_class_init), (gst_rtp_ilbc_depay_init), (gst_rtp_ilbc_depay_setcaps), (gst_rtp_ilbc_depay_process), (gst_ilbc_depay_set_property), (gst_ilbc_depay_get_property): * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps): * gst/rtp/gstrtpmp4adepay.c: * gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_init), (gst_rtp_pcma_depay_setcaps): * gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_init), (gst_rtp_pcmu_depay_setcaps): Make sure we configure the clock_rate in the baseclass in the setcaps function. Fixes #431282. 2007-04-25 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_finalize), (gst_rtspsrc_stream_free), (request_pt_map), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_open): * gst/rtsp/gstrtspsrc.h: Parse server address from SDP. Hook up a udpsink to send RTCP back to the server. * docs/plugins/gst-plugins-good-plugins-sections.txt: * gst/rtsp/rtsptransport.h: Add some docs. 2007-04-25 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): Make header field check conditional. Fixes #433135 2007-04-24 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-alphacolor.xml: * gst/alpha/Makefile.am: * gst/alpha/gstalphacolor.c: * gst/alpha/gstalphacolor.h: Add minimal docs blurb to alphacolor; split out headers into separate header file for gtk-doc. 2007-04-20 Tim-Philipp Müller * gst/debug/progressreport.c: (gst_progress_report_report): Don't try to post NULL message (in case we can't query upstream position or duration). 2007-04-18 Michael Smith * gst/cutter/gstcutter.c: (gst_cutter_init), (gst_cutter_chain), (gst_cutter_get_caps): * gst/cutter/gstcutter.h: Fix some of the most obvious bugs in cutter. Now doesn't leak everything if input is silent. 2007-04-18 Sebastian Dröge * gst/wavenc/gstwavenc.c: (gst_wavenc_create_header_buf), (gst_wavenc_sink_setcaps), (gst_wavenc_change_state): * gst/wavenc/gstwavenc.h: Wav apparently only supports width==GST_ROUND_UP(depth), everything else results in a invalid block align and invalid files. 2007-04-17 Tim-Philipp Müller Patch by: Snaik * gst/smpte/barboxwipes.c: (gst_wipe_boxes_draw): Add missing break statement for BOX_HORIZONTAL case. 2007-04-17 Sebastian Dröge Patch by: Vincent Torri * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): Use correct format strings for integer types. 2007-04-17 Sebastian Dröge * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init), (gst_wavparse_create_sourcepad): Use gst_riff_create_audio_template_caps () instead of the local caps. This makes updates of the local caps unecessary whenever libgstriff gets support for new formats. 2007-04-16 Tim-Philipp Müller Patch by: Brian Cameron * sys/sunaudio/gstsunaudio.c: * sys/sunaudio/gstsunaudiomixer.c: * sys/sunaudio/gstsunaudiomixer.h: * sys/sunaudio/gstsunaudiomixerctrl.c: * sys/sunaudio/gstsunaudiomixerctrl.h: * sys/sunaudio/gstsunaudiomixertrack.h: * sys/sunaudio/gstsunaudiosink.c: * sys/sunaudio/gstsunaudiosink.h: * sys/sunaudio/gstsunaudiosrc.c: * sys/sunaudio/gstsunaudiosrc.h: Fix and/or update copyright attributions (#430228). 2007-04-13 Wim Taymans * docs/plugins/gst-plugins-good-plugins-sections.txt: Fix docs. * gst/rtsp/URLS: Add some more example urls. * gst/rtsp/gstrtpdec.c: (gst_rtp_dec_marshal_BOXED__UINT_UINT), (gst_rtp_dec_chain_rtp): Better debugging. * gst/rtsp/gstrtspsrc.c: (request_pt_map), (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_rtpinfo): Remove unused code. 2007-04-13 Stefan Kost * gst/wavparse/gstwavparse.c: (uint64_ceiling_scale_int), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data): Relax the audio/mpeg caps again and add FIXME: comment. 2007-04-13 Stefan Kost * gst/wavparse/gstwavparse.c: (uint64_ceiling_scale_int), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data): * gst/wavparse/gstwavparse.h: More sanity check for the header fields. Fix type for 'rate' header field. 2007-04-12 Tim-Philipp Müller * gst/icydemux/gsticydemux.c: (notgst_tag_freeform_string_to_utf8), (gst_icydemux_unicodify): If the metadata strings we get in the stream are not UTF-8, try to interpret them according to the character encodings specified in the GST_ICY_TAG_ENCODING and GST_TAG_ENCODING environment variables, and only fall back to locale/ISO-8859-1 if those aren't set or don't work. Should fix #428901. 2007-04-12 Wim Taymans * gst/rtp/gstrtph264depay.c: Use the proper sync word for SPS and PPS. 2007-04-12 Thomas Vander Stichele * gst/rtp/Makefile.am: * gst/rtp/fnv1hash.c (MASK_24, FNV1_HASH_32_INIT, FNV1_HASH_32_PRIME, fnv1_hash_32_new, fnv1_hash_32_update, fnv1_hash_32_to_24): * gst/rtp/fnv1hash.h (__GST_FNV1_HASH_H__): Add a simple hashing implementation that we can use to generate a 24-bit ident value based on the codebooks for vorbis and theora. * gst/rtp/gstrtptheorapay.c (gst_rtp_theora_pay_finish_headers, gst_rtp_theora_pay_handle_buffer): * gst/rtp/gstrtpvorbisdepay.c (gst_rtp_vorbis_depay_parse_configuration, gst_rtp_vorbis_depay_switch_codebook, gst_rtp_vorbis_depay_process): * gst/rtp/gstrtpvorbispay.c (gst_rtp_vorbis_pay_reset_packet, gst_rtp_vorbis_pay_init_packet, gst_rtp_vorbis_pay_flush_packet, gst_rtp_vorbis_pay_finish_headers, gst_rtp_vorbis_pay_handle_buffer): Use the hashing function, ensuring that the same codebooks result in the same ident and thus the same SDP description. Various log fixes/changes. 2007-04-12 Wim Taymans Patch by: jerry tan * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open): remove the call of ioctl (fd, AUDIO_MIXER_MULTIPLE_OPEN), it is the application's responsibility to make sure it open the device once. Remove a careless error if AUDIODEV is set. Fixes #392620. 2007-04-12 Wim Taymans * gst/rtsp/gstrtpdec.c: (gst_rtp_dec_marshal_BOXED__UINT_UINT), (gst_rtp_dec_class_init), (gst_rtp_dec_chain_rtp): * gst/rtsp/gstrtpdec.h: Make backward compat with rtpbin by adding the request-pt-map signals. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (new_session_pad), (request_pt_map), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_stream_configure_caps), (gst_rtspsrc_activate_streams): * gst/rtsp/gstrtspsrc.h: Implement request-pt-map signals instead of setting caps on the buffers for the session manager. 2007-04-11 Wim Taymans * gst/udp/gstudp.c: (plugin_init): Register GstNetBuffer in plugin_init so that the type can be used from multiple threads without races. 2007-04-10 Wim Taymans * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_setcaps), (gst_rtp_amr_depay_process): Fix depayloader clock_rate and some cleanups. * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_finalize), (gst_rtp_h264_depay_setcaps), (gst_rtp_h264_depay_process): * gst/rtp/gstrtph264depay.h: Don't push codec_data in the adapter because it might get flushed when we get a discont. * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_process): Handle multiple AU per packet. * gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_process), (gst_rtp_sv3v_depay_plugin_init): Disable rank, this one does not work. Remove timestamping, base class does that. 2007-04-10 Stefan Kost * gst/auparse/gstauparse.c: (gst_au_parse_parse_header): limit caps to the formats we announce in the template * gst/wavparse/gstwavparse.c: (uint64_ceiling_scale_int), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data): fix some crashers/asserts when dealing with broken files 2007-04-10 Wim Taymans Patch by: Peter Kjellerstedt * gst/avi/gstavidemux.c: (gst_avi_demux_massage_index): * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_process): * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_get_mode), (gst_rtp_speex_depay_setcaps): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_loop_udp): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init_send): Fix some compiler warnings. Fixes #428182. 2007-04-06 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/gstrtpdec.c: (find_session_by_id), (create_session), (free_session), (gst_rtp_dec_base_init), (gst_rtp_dec_class_init), (gst_rtp_dec_init), (gst_rtp_dec_finalize), (gst_rtp_dec_query_src), (gst_rtp_dec_chain_rtp), (gst_rtp_dec_chain_rtcp), (gst_rtp_dec_set_property), (gst_rtp_dec_get_property), (gst_rtp_dec_provide_clock), (gst_rtp_dec_change_state), (create_recv_rtp), (create_recv_rtcp), (create_rtcp), (gst_rtp_dec_request_new_pad), (gst_rtp_dec_release_pad): * gst/rtsp/gstrtpdec.h: * gst/rtsp/gstrtsp.c: (plugin_init): Morph RTPDec into something compatible with RTPBin as a fallback. Various other style fixes. * gst/rtsp/gstrtspsrc.c: (find_stream_by_id), (find_stream_by_udpsrc), (gst_rtspsrc_stream_free), (gst_rtspsrc_cleanup), (gst_rtspsrc_media_to_caps), (new_session_pad), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_setup_auth), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Implement RTPBin session manager handling. Don't try to add empty properties to caps. Implement fallback session manager, handling. Don't combine errors from RTCP streams, just ignore them. * gst/rtsp/rtsptransport.c: (rtsp_transport_get_manager): * gst/rtsp/rtsptransport.h: Implement fallback session manager. Make RTPBin the default one when available. 2007-04-05 Wim Taymans * gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_class_init), (gst_rtp_mp4a_depay_setcaps), (gst_rtp_mp4a_depay_plugin_init): This element is ready to be autoplugged. 2007-04-05 Julien MOUTTE * gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry): Don't leave the offsets defined by upstream element on the compressed data buffer we are pushing downstream. Make them GST_BUFFER_OFFSET_NONE. 2007-04-04 Stefan Kost * gst/avi/README: * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_header_pull), (gst_avi_demux_combine_flows), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data): Don't abort on out-of-memory. Use stream-nr as unsigned integer only. 2007-04-03 Wim Taymans * gst/smpte/barboxwipes.c: Fix error as spotted by Snaik 2007-03-30 Sebastian Dröge * gst/wavparse/gstwavparse.c: Support audio/x-raw-float in wav files. This only works with plugins-base CVS, using an older version doesn't have any disadvantages though. 2007-03-30 Sebastian Dröge * configure.ac: * gst/auparse/gstauparse.c: (gst_au_parse_reset), (gst_au_parse_parse_header), (gst_au_parse_chain): * gst/auparse/gstauparse.h: Revert last change as we don't want plugins-good to depend on plugins-base CVS now. 2007-03-29 Sebastian Dröge * configure.ac: Require gst-plugins-base CVS for audioconvert with non-native float support and width/depth fix in libgstriff. Patch by: René Stadler * gst/auparse/gstauparse.c: (gst_au_parse_reset), (gst_au_parse_parse_header), (gst_au_parse_chain): * gst/auparse/gstauparse.h: Don't swap the floats ourself if they're not in native endianness. Instead let audioconvert handle this. Fixes #339838. 2007-03-29 Wim Taymans * gst/rtp/gstasteriskh263.h: * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_process), (gst_rtp_h263p_depay_change_state): * gst/rtp/gstrtph263pdepay.h: * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_class_init), (gst_rtp_h264_depay_setcaps), (gst_rtp_h264_depay_process), (gst_rtp_h264_depay_change_state): * gst/rtp/gstrtph264depay.h: * gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_class_init), (gst_rtp_mp4a_depay_setcaps), (gst_rtp_mp4a_depay_process): * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_process): Flush adapter on disconts. 2007-03-29 Wim Taymans * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_process): * gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_process): * gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_process): * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_process): * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_process): * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_flush): * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps), (gst_rtp_mp4v_depay_process): * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_flush): * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_process): * gst/rtp/gstrtpmpapay.c: (gst_rtp_mpa_pay_flush): * gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_process): * gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_process): * gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_process): * gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_process): Use more efficient adapter and rtpbuffer methods when possible. 2007-03-29 Sebastian Dröge * gst/wavenc/gstwavenc.c: (gst_wavenc_create_header_buf), (gst_wavenc_sink_setcaps): Correctly handle width!=depth input. * gst/wavparse/gstwavparse.c: Already export in the caps that width==8 uses unsigned samples and everything else uses signed samples. 2007-03-29 Wim Taymans Patch by: Laurent Glayal * gst/udp/gstdynudpsink.c: (gst_dynudpsink_class_init), (gst_dynudpsink_init), (gst_dynudpsink_set_property), (gst_dynudpsink_get_property), (gst_dynudpsink_init_send), (gst_dynudpsink_close): * gst/udp/gstdynudpsink.h: * 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: Rework the socket allocation a bit based on the sockfd argument so that it becomes usable. Add a closefd property to instruct the udp elements to close the custom file descriptors when going to READY. Fixes #423304. API:GstUDPSrc::closefd property API:GstDynUDPSink::closefd property 2007-03-29 Wim Taymans Patch by: Laurent Glayal * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_base_init), (gst_rtp_h264_pay_class_init), (gst_rtp_h264_pay_init), (gst_rtp_h264_pay_finalize), (gst_rtp_h264_pay_setcaps), (gst_rtp_h264_pay_handle_buffer), (gst_rtp_h264_pay_set_property), (gst_rtp_h264_pay_get_property), (gst_rtp_h264_pay_change_state), (gst_rtp_h264_pay_plugin_init): * gst/rtp/gstrtph264pay.h: Added H264 payloader. Fixes #423782. * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_class_init), (gst_rtp_h264_depay_setcaps), (gst_rtp_h264_depay_process): Small fixes. 2007-03-29 Sebastian Dröge * gst/wavparse/gstwavparse.c: Actually support depths from 1 to 32, not only 8 to 32. 2007-03-29 Sebastian Dröge * gst/wavparse/gstwavparse.c: Add support for wav files containing audio/x-raw-int with random depths between 1 and 32 bits. 2007-03-28 Wim Taymans Based on patch by: Stefan Kost * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_base_init), (gst_rtp_mp4a_depay_class_init), (gst_rtp_mp4a_depay_init), (gst_rtp_mp4a_depay_finalize), (gst_rtp_mp4a_depay_setcaps), (gst_rtp_mp4a_depay_process), (gst_rtp_mp4a_depay_set_property), (gst_rtp_mp4a_depay_get_property), (gst_rtp_mp4a_depay_change_state), (gst_rtp_mp4a_depay_plugin_init): * gst/rtp/gstrtpmp4adepay.h: Added MP4A-LATM depayloader. Fixes #417792. * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps), (gst_rtp_mp4v_depay_process): Fixup depayloader, setting codec_data, using more efficient adaptor and rtpbuffer handling. * gst/rtsp/URLS: Add url to test above. 2007-03-25 Wim Taymans * gst/rtsp/gstrtspsrc.c: (find_stream_by_setup), (gst_rtspsrc_create_stream), (gst_rtspsrc_stream_free), (get_default_rate_for_pt), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_stream_configure_caps), (gst_rtspsrc_activate_streams), (gst_rtspsrc_parse_rtpinfo): * gst/rtsp/gstrtspsrc.h: Handle default clock-rates for static payload types, rearrange stuff so that the rtpmap field in the sdp can override the defaults. Parse RTP-Info field to get the seqnum and timebase fields that should go in the caps. Delay configuring caps after we got the RTP-Info from the PLAY reply from the server. 2007-03-22 Wim Taymans Patch by: Christophe Dehais * ext/gconf/gconf.c: (gst_gconf_render_bin_with_default): Accept complex pipeline descriptions as an audio profile instead of just a single element. Fixes #420658. 2007-03-21 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_get_type): Rename registered type in preparation of GstTagDemux moving to -base at some point in the future. 2007-03-19 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): Streaming mode fixes: don't unref buffer we don't own any longer; remove bogus adapter flush. Fixes #419338. 2007-03-17 David Schleef * REQUIREMENTS: Change the format to key/value, add a bunch of information, remove a bunch of requirements that are for other GStreamer packages. 2007-03-17 David Schleef * REQUIREMENTS: Fix a few things. This file really needs a good once-over. 2007-03-15 Edward Hervey * sys/Makefile.am: Don't forget to distribute the sys/osxaudio/ directory. 2007-03-15 Edward Hervey * configure.ac: * sys/Makefile.am: * sys/osxaudio/Makefile.am: * sys/osxaudio/gstosxaudio.c: * sys/osxaudio/gstosxaudiosink.c: (gst_osx_audio_sink_osxelement_do_init), (gst_osx_audio_sink_init), (gst_osx_audio_sink_getcaps), (gst_osx_audio_sink_create_ringbuffer), (plugin_init): * sys/osxaudio/gstosxaudiosrc.c: (gst_osx_audio_src_osxelement_do_init), (gst_osx_audio_src_init), (gst_osx_audio_src_create_ringbuffer): * sys/osxaudio/gstosxringbuffer.c: (gst_osx_ring_buffer_get_type), (gst_osx_ring_buffer_class_init), (gst_osx_ring_buffer_init), (gst_osx_ring_buffer_acquire), (gst_osx_ring_buffer_start), (gst_osx_ring_buffer_pause), (gst_osx_ring_buffer_stop): * sys/osxaudio/gstosxringbuffer.h: Activate osxaudio in gst-plugins-good with proper build setup. Add inlined documentation. Fix debug statements Fix ringbuffer when pausing. Fixes #323471 2007-03-14 Philippe Kalaf * gst/rtp/gstrtppcmapay.c: * gst/rtp/gstrtppcmapay.h: * gst/rtp/gstrtppcmupay.c: * gst/rtp/gstrtppcmupay.h: Ported mulaw and alaw payloaders to use new base class 2007-03-14 Thomas Vander Stichele * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/it.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update translations. 2007-03-14 Tim-Philipp Müller * configure.ac: Fix string replace error (AG_AG_GST_* => AG_GST_*). 2007-03-12 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_srcpad_event): Fix handling of -1 values for start and stop values when seeking, and SEEK_CUR+SEEK_END here as well. 2007-03-12 Jan Schmidt * gst/id3demux/gstid3demux.c: (gst_id3demux_srcpad_event): Fix handling of -1 values for start and stop values when seeking, and SEEK_CUR+SEEK_END. 2007-03-12 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (parse_picture_frame): Fix parsing of ID3 v2.2.0 PIC frames. Only in version >= 2.3.0 is the image format a variable-length NUL-terminated string; in versions before that the image format is a fixed-length string of 3 characters (see #348644 for a sample tag). Also make supplied mime type lower-case and fix up 'jpg' to 'jpeg'. 2007-03-10 Sebastien Moutte * win32/MANIFEST: Add new project files to MANIFEST. * win32/vs6/libgstaudiofx.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: Update project files. 2007-03-10 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_index): * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame): Printf format fixes; also add some missing quotes in translated strings. Fixes #416728 and #416727. 2007-03-09 Jan Schmidt * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_find_best): Tim and I can't think of any reason the child audio sink needs to be set back to NULL after successfully determining that it can reach READY - it gets immediately set back to READY by the caller anyway, causing an unnecessary close/open of any audio devices involved. 2007-03-09 Tim-Philipp Müller * po/LINGUAS: * po/ja.po: Add ja.po file from #377306. 2007-03-09 Tim-Philipp Müller * sys/sunaudio/gstsunaudio.c: (plugin_init): * sys/sunaudio/gstsunaudiomixertrack.c: (gst_sunaudiomixer_track_new): Actually translate sunaudio mixer track labels instead of just marking the strings as translatable (#377306); clean up weird label string mapping code that serves no apparent purpose. Also set the 'untranslated-label' property when creating mixer tracks if the GstMixerTrack base class supports this. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/sunaudio.c: (GST_START_TEST), (sunaudio_suite): Very minimalistic unit test for sunaudiomixer element (compiles, but not actually tested on a system where sunaudiomixer is available). 2007-03-09 Jan Schmidt * tests/check/Makefile.am: Re-enable the states test and see if it works on the buildbots. 2007-03-09 Jan Schmidt * ext/dv/gstdvdec.c: (gst_dvdec_init), (gst_dvdec_sink_setcaps), (gst_dvdec_src_negotiate), (gst_dvdec_chain), (gst_dvdec_change_state): * ext/dv/gstdvdec.h: Infer pixel-aspect-ratio from the video frame format if it isn't provided by the container, as happens when playing DV from AVI or Quicktime containers. Patch by: Wim Taymans Fixes #380944 2007-03-09 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_activate_streams): When activated, remove the udpsrc timeout, we have dataflow and timeouts will later be handled by the jitterbuffer. 2007-03-09 Wim Taymans * ext/taglib/gstid3v2mux.cc: Add write support for GST_TAG_MUSICBRAINZ_SORTNAME (TSOP) tag. Fixes #414496. Patch by: Alex Lancaster 2007-03-09 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_push_event), (gst_avi_demux_do_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_chain): Fix stream position reporting after a seek. Fixes #416445. 2007-03-08 Wim Taymans Patch by: René Stadler * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_push_event), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_chain): Make avidemux accept optional header chunks in any order. Fixes #415446. 2007-03-08 Jan Schmidt * tests/check/Makefile.am: Disable the states check until the remaining Valgrind errors are fixed or suppressed. 2007-03-08 Sebastian Dröge * tests/check/elements/.cvsignore: Add audiodynamic check to .cvsignore 2007-03-08 Sebastian Dröge reviewed by: Stefan Kost * gst/audiofx/Makefile.am: * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_characteristics_get_type), (gst_audio_dynamic_mode_get_type), (gst_audio_dynamic_set_process_function), (gst_audio_dynamic_base_init), (gst_audio_dynamic_class_init), (gst_audio_dynamic_init), (gst_audio_dynamic_set_property), (gst_audio_dynamic_get_property), (gst_audio_dynamic_setup), (gst_audio_dynamic_transform_hard_knee_compressor_int), (gst_audio_dynamic_transform_hard_knee_compressor_float), (gst_audio_dynamic_transform_soft_knee_compressor_int), (gst_audio_dynamic_transform_soft_knee_compressor_float), (gst_audio_dynamic_transform_hard_knee_expander_int), (gst_audio_dynamic_transform_hard_knee_expander_float), (gst_audio_dynamic_transform_soft_knee_expander_int), (gst_audio_dynamic_transform_soft_knee_expander_float), (gst_audio_dynamic_transform_ip): * gst/audiofx/audiodynamic.h: * gst/audiofx/audiofx.c: (plugin_init): Add new audiodynamic element which can act as a compressor or expander. Supported are hard-knee and soft-knee operation modes with user-specified ratio and threshold. Attack and release parameters are not yet implemented but will follow. * 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: Integrate audiodynamic into the docs. * tests/check/Makefile.am: * tests/check/elements/audiodynamic.c: (setup_dynamic), (cleanup_dynamic), (GST_START_TEST), (dynamic_suite), (main): Add unit test for audiodynamic. 2007-03-07 Jan Schmidt * ext/raw1394/gstdv1394src.c: (gst_dv1394src_start): Free handles that we allocated when exiting via the error paths. 2007-03-07 Stefan Kost * gst/level/gstlevel.c: (gst_level_class_init), (gst_level_set_caps), (gst_level_start), (gst_level_event), (gst_level_transform_ip): * gst/level/gstlevel.h: Resolve message timestamps against the playback segment. 2007-03-06 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (gst_id3demux_add_srcpad), (gst_id3demux_sink_activate): Don't leak caps: make gst_id3demux_add_srcpad() not take ownership of the caps passed to it (previously one code path assumed it took ownership while another one assumed it didn't, while in fact it sometimes did and sometimes didn't ...). * configure.ac: * tests/files/Makefile.am: * tests/files/id3-407349-1.tag: * tests/files/id3-407349-2.tag: Add directory where data for unit tests can be stored. * tests/Makefile.am: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/id3demux.c: (pad_added_cb), (error_cb), (read_tags_from_file), (run_check_for_file), (check_date_1977_06_23), (GST_START_TEST), (id3demux_suite): Add unit test for id3demux, and in particular for bug #407349. Only testing pull-mode for now; push mode doesn't work yet because the test files are smaller than ID3_TYPE_FIND_MIN_SIZE. 2007-03-06 Tim-Philipp Müller * tests/check/Makefile.am: Add missing backslash at end of line. 2007-03-06 Jan Schmidt Trigger rebuild. 2007-03-06 Tim-Philipp Müller * gst/id3demux/id3tags.c: (id3demux_id3v2_frames_to_tag_list): * gst/id3demux/id3tags.h: * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_obsolete_tdat_frame): Do not convert obsolete TDA/TDAT frames to TDRC frames, otherwise the four-digit number will be interpreted as a year, whereas it is month and day in DDMM format. Instead, parse TDAT frames and fix up the date in the GST_TAG_DATE tag later if we also extracted a year. Fixes #407349. 2007-03-06 Jan Schmidt * ext/gconf/gstswitchsink.c: (gst_switch_sink_dispose), (gst_switch_commit_new_kid): Fix up the dispose logic so it doesn't leak, and fix setting of the child state so that we don't set a child to our current state just as we are changing it to something else. 2007-03-06 Wim Taymans * gst/goom/gstgoom.c: (gst_goom_src_setcaps), (get_buffer), (gst_goom_chain): * gst/goom/gstgoom.h: Document, fix and improve goom adapter behaviour. Fixes #407006. 2007-03-05 Jan Schmidt * ext/esd/esdsink.c: (gst_esdsink_open): Unref static pad template after using it. 2007-03-05 Jan Schmidt * ext/gconf/gstswitchsink.c: (gst_switch_sink_dispose), (gst_switch_commit_new_kid): Fix up the reference counting of the child elements. 2007-03-05 Wim Taymans * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_setcaps): * gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_finish_headers): * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers): Fix encoding-name case. 2007-03-05 Wim Taymans * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_class_init), (gst_rtp_speex_depay_get_mode), (gst_rtp_speex_depay_setcaps), (gst_rtp_speex_depay_process): * gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_base_init), (gst_rtp_speex_pay_class_init), (gst_rtp_speex_pay_setcaps), (gst_rtp_speex_pay_parse_ident), (gst_rtp_speex_pay_handle_buffer), (gst_rtp_speex_pay_change_state): * gst/rtp/gstrtpspeexpay.h: Fix speex (de)payloader. Fixes #358040. 2007-03-05 Jan Schmidt * ext/gconf/gstswitchsink.c: (gst_switch_sink_reset), (gst_switch_commit_new_kid), (gst_switch_sink_set_child): Install fakesink in NULL by fixing some broken logic. This obviates the need to manually set _IS_SINK. Add some comments and remove a little cruft while I'm at it. 2007-03-05 Wim Taymans * ext/gconf/gstswitchsink.c: (gst_switch_sink_reset): Mark us as a sink when we have no fakesink in NULL. Fixes #414887. 2007-03-04 Tim-Philipp Müller * po/POTFILES.in: Update. 2007-03-04 Jan Schmidt * tests/check/Makefile.am: Gah! Also disable gconfvideosink from the tests, otherwise it will instantiate autovideosink, and dfbvideosink and leak on the buildbots. 2007-03-04 Jan Schmidt * ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_open), (gst_cdio_cdda_src_finalize): Make sure we always destroy our libcdio handle. 2007-03-04 Jan Schmidt * tests/check/Makefile.am: Disable autovideosink so the buildbots don't barf over memory leaked in the directfb sink. 2007-03-04 Jan Schmidt * sys/ximage/gstximagesrc.c: (gst_ximage_src_dispose): Chain up in dispose 2007-03-04 Jan Schmidt * gst/multipart/multipartdemux.c: (gst_multipart_demux_init), (gst_multipart_find_pad_by_mime): Use gst_pad_new_from_static_template instead of static_pad_template_get+pad_new. 2007-03-04 Jan Schmidt * sys/ximage/gstximagesrc.c: (gst_ximage_src_create): Catch the case where no clock has been set. 2007-03-04 Jan Schmidt * ext/flac/gstflacenc.c: (gst_flac_enc_finalize): * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_class_init), (gst_gconf_audio_sink_dispose), (gst_gconf_audio_sink_finalize): * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_base_init), (gst_gconf_audio_src_class_init), (gst_gconf_audio_src_dispose), (gst_gconf_audio_src_finalize), (do_toggle_element): * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_base_init), (gst_gconf_video_sink_class_init), (gst_gconf_video_sink_finalize), (do_toggle_element): * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_base_init), (gst_gconf_video_src_class_init), (gst_gconf_video_src_dispose), (gst_gconf_video_src_finalize), (do_toggle_element): * ext/gconf/gstswitchsink.c: (gst_switch_sink_class_init), (gst_switch_sink_reset), (gst_switch_sink_set_child): * ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_base_init): * ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_base_init): * ext/shout2/gstshout2.c: (gst_shout2send_class_init), (gst_shout2send_init), (gst_shout2send_finalize): * gst/debug/testplugin.c: (gst_test_class_init), (gst_test_finalize): * gst/flx/gstflxdec.c: (gst_flxdec_class_init), (gst_flxdec_dispose): * gst/multipart/multipartmux.c: (gst_multipart_mux_finalize): * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_finalize): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize): * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_free_context): * gst/rtsp/rtspextwms.h: * gst/smpte/gstsmpte.c: (gst_smpte_class_init), (gst_smpte_finalize): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_finalize): * gst/udp/gstudpsink.c: (gst_udpsink_class_init), (gst_udpsink_finalize): * gst/wavparse/gstwavparse.c: (gst_wavparse_dispose), (gst_wavparse_sink_activate): * sys/oss/gstosssink.c: (gst_oss_sink_finalise): * sys/oss/gstosssrc.c: (gst_oss_src_class_init), (gst_oss_src_finalize): * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_destroy): * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init), (gst_v4l2src_finalize): * sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get): Fix a bunch of leaks shown by the newly-added states test. 2007-03-04 Jan Schmidt * ext/dv/gstdvdec.c: (gst_dvdec_init): Use gst_pad_new_from_static_template instead of static_pad_template_get+pad_new. 2007-03-03 Tim-Philipp Müller Patch by: Loïc Minier * ext/libcaca/Makefile.am: * gst/debug/Makefile.am: Don't mix tabs and spaces (#414168). 2007-03-02 Stefan Kost * tests/check/generic/.cvsignore: Ignore files to please buildbot. 2007-03-02 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers), (gst_wavparse_stream_data): Unbreak my previous commit (swapped nominator & denominator). Tim, thanks for spotting. 2007-03-02 Wim Taymans * ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_probe_devices), (gst_cdio_cdda_src_read_sector), (gst_cdio_cdda_src_open), (gst_cdio_cdda_src_finalize): Small code cleanups. Don't use pad_alloc as the base class cannot deal with the error codes. 2007-03-02 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_create): Fix doc. 2007-03-02 Stefan Kost Patch by: René Stadler * gst/wavparse/gstwavparse.c: (uint64_ceiling_scale_int), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data): Handle rounding better to not drop last sample frame. Fixes #356692 2007-03-02 Jan Schmidt * tests/check/Makefile.am: Disable cacasink from the states check too - it also calls exit(1) on us when it can't find a terminal to talk to. 2007-03-02 Wim Taymans Patch by: Thijs Vermeir * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init), (gst_udpsrc_create), (gst_udpsrc_set_property), (gst_udpsrc_get_property): * gst/udp/gstudpsrc.h: Add support to strip proprietary headers. Fixes #350296. 2007-03-02 Wim Taymans * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_process): Fix compilation. 2007-03-02 Wim Taymans Patch by: Thijs Vermeir * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_class_init), (gst_rtp_mp2t_depay_init), (gst_rtp_mp2t_depay_process), (gst_rtp_mp2t_depay_set_property), (gst_rtp_mp2t_depay_get_property): * gst/rtp/gstrtpmp2tdepay.h: Add support to strip off proprietary headers. Fixes #350278. 2007-03-02 Wim Taymans * ext/hal/hal.c: Fix compilation. 2007-03-02 Wim Taymans * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_class_init), (gst_sunaudiosrc_init), (gst_sunaudiosrc_get_property), (gst_sunaudiosrc_open): * sys/sunaudio/gstsunaudiosrc.h: Remove device-name from GstSunAudioSrc. Fixes #412597. 2007-03-01 Sebastian Dröge * ext/hal/gsthalaudiosink.c: (do_toggle_element): * ext/hal/gsthalaudiosrc.c: (do_toggle_element): Having NULL as UDI previously selected the default sink/src. Change this back but mention it in the debug output. * ext/hal/hal.c: (gst_hal_get_alsa_element), (gst_hal_get_oss_element), (gst_hal_get_string), (gst_hal_render_bin_from_udi), (gst_hal_get_audio_sink), (gst_hal_get_audio_src): * ext/hal/hal.h: Refactor a bit, check all error conditions, greatly improve debugging and fix some possible memory leaks. Also implement OSS support and allow specifying an UDI that points to a real device. For this the child device which supports ALSA (preferred) or OSS is used. As a side effect this makes it impossible now to get a alsasink in halaudiosrc and a alsasrc in halaudiosink. 2007-03-01 Wim Taymans * gst/rtsp/gstrtspsrc.c: (find_stream_by_channel), (find_stream_by_udpsrc), (gst_rtspsrc_handle_message): Errors from the udp sources are not fatal unless all of them are in error. 2007-03-01 Jan Schmidt * tests/check/Makefile.am: Disable aasink in the states test. I suspect this is the element that is calling exit(1) when it can't proceed. 2007-03-01 Jan Schmidt * tests/check/Makefile.am: Draw plugins in from the build tree sys/ dir, rather than picking up the already installed versions. 2007-03-01 Zaheer Abbas Merali * sys/ximage/gstximagesrc.c: (gst_ximage_src_open_display): Error out correctly when getting xcontext fails. 2007-03-01 Wim Taymans * gst/rtsp/gstrtpdec.c: (gst_rtpdec_change_state): Make state change to PAUSED NO_PREROLL because that's what it will be in the future and rtspsrc relies on it. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_change_state): Don't error out when we don't get an error from the state change function. 2007-03-01 Sebastian Dröge * ext/hal/gsthalaudiosink.c: (do_toggle_element): * ext/hal/gsthalaudiosrc.c: (do_toggle_element): Check if the device UDI is set before trying to query HAL about it and give a useful error message if it wasn't set. * ext/hal/hal.c: (gst_hal_get_string): Don't query HAL for NULL UDIs. Passing NULL as UDI to HAL gives an assertion failure in D-Bus when running with DBUS_FATAL_WARNINGS=1. 2007-02-28 Thomas Vander Stichele * configure.ac: Convert to new AG_GST style. 2007-02-28 Thomas Vander Stichele * tests/check/Makefile.am: * tests/check/generic/states.c: (GST_START_TEST), (states_suite): add test for states 2007-02-28 Wim Taymans * tests/check/elements/.cvsignore: Add new videofilter check to .cvsignore. 2007-02-28 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_combine_flows), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop), (gst_avi_demux_chain): Fix combined flow return. Fixes #412608. 2007-02-28 Wim Taymans * gst/videofilter/Makefile.am: Dist header.. 2007-02-28 Wim Taymans * gst/videofilter/gstgamma.h: Add header too. 2007-02-28 Wim Taymans Patch by: Mark Nauwelaerts * gst/videofilter/Makefile.am: * gst/videofilter/gstgamma.c: (gst_gamma_base_init), (gst_gamma_class_init), (gst_gamma_init), (gst_gamma_set_property), (gst_gamma_get_property), (gst_gamma_calculate_tables), (oil_tablelookup_u8), (gst_gamma_set_caps), (gst_gamma_planar411_ip), (gst_gamma_transform_ip), (plugin_init): Port gamma filter to 0.10. Fixes #412704. * tests/check/Makefile.am: * tests/check/elements/videofilter.c: (setup_filter), (cleanup_filter), (check_filter), (GST_START_TEST), (videobalance_suite), (videoflip_suite), (gamma_suite), (main): Add unit tests for videofilters. 2007-02-28 Wim Taymans * gst/rtsp/URLS: Add another interesting test url. * gst/rtsp/rtspmessage.c: (rtsp_message_get_header): Don't allow getting header fields from data packets. 2007-02-28 Michael Smith * ext/shout2/gstshout2.c: (gst_shout2send_class_init), (gst_shout2send_init), (gst_shout2send_start), (gst_shout2send_set_property), (gst_shout2send_get_property): * ext/shout2/gstshout2.h: Add a property for username. 2007-02-27 Christian Schallerr * sys/osxaudio: Add Pioneers of the inevitable to the copyright list 2007-02-26 Jan Schmidt * gst/rtsp/Makefile.am: Fix make check too. 2007-02-26 Jan Schmidt * gst/rtsp/base64.c: (util_base64_encode): * gst/rtsp/base64.h: Commit missing files for base64 encoding. 2007-02-24 Tim-Philipp Müller Patch by: Loïc Minier * configure.ac: * ext/annodex/Makefile.am: * ext/jpeg/Makefile.am: * ext/speex/Makefile.am: * gst/alpha/Makefile.am: * gst/cutter/Makefile.am: * gst/debug/Makefile.am: * gst/effectv/Makefile.am: * gst/goom/Makefile.am: * gst/level/Makefile.am: * gst/smpte/Makefile.am: * gst/videofilter/Makefile.am: Fix build with LDFLAGS='-Wl,-z,defs' (#410997) 2007-02-23 Jan Schmidt * gst/rtsp/Makefile.am: * gst/rtsp/rtspconnection.c: (append_auth_header), (rtsp_connection_send), (rtsp_connection_set_auth): g_base64_encode is a GLib 2.12 function. Use an equivalent taken from icecast to replace it. Relicensed from GPL courtesy of Mike Smith. 2007-02-23 Jan Schmidt * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_finalize), (gst_rtspsrc_create_stream), (rtsp_auth_method_to_string), (gst_rtspsrc_parse_auth_hdr), (gst_rtspsrc_setup_auth), (gst_rtspsrc_send), (gst_rtspsrc_try_send), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause), (gst_rtspsrc_uri_set_uri): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (append_auth_header), (rtsp_connection_send), (rtsp_connection_free), (rtsp_connection_set_auth): * gst/rtsp/rtspconnection.h: * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspurl.c: (rtsp_url_get_request_uri): * gst/rtsp/rtspurl.h: Implement simple Basic Authentication support so that urls like rtsp://user:pass@hostname/rtspstream work on hosts that require authentication. 2007-02-22 Edgard Lima * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/v4l2_calls.c: Fix segfault when oppening a radio device. 2007-02-22 Stefan Kost * gst/level/gstlevel.c: (gst_level_set_caps), (gst_level_transform_ip): * sys/v4l2/README: * tests/check/elements/level.c: (GST_START_TEST): Fix level for multi-channel case. 2007-02-21 Stefan Kost * gst/level/gstlevel.c: (gst_level_init), (gst_level_set_caps), (gst_level_transform_ip): * gst/level/gstlevel.h: Use function pointer for process function and add process functions for float audio. 2007-02-19 Stefan Kost * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_grab_frame), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init): Readd GST_ELEMENT_ERROR if we can't reenque buffers after EIO, fixes #407369 2007-02-18 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp2tpay.c: (gst_rtp_mp2t_pay_base_init), (gst_rtp_mp2t_pay_class_init), (gst_rtp_mp2t_pay_init), (gst_rtp_mp2t_pay_setcaps), (gst_rtp_mp2t_pay_handle_buffer), (gst_rtp_mp2t_pay_plugin_init): * gst/rtp/gstrtpmp2tpay.h: Added simple mpeg transport stream payloader. 2007-02-16 Wim Taymans * gst/rtsp/URLS: Add example H264 rtsp url. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_media_to_caps), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): Don't convert values to lowercase or we might mess up base64 encoded properties. 2007-02-16 Wim Taymans * gst/rtp/README: Fix case of string params. * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_class_init), (gst_rtp_h264_depay_setcaps), (gst_rtp_h264_depay_process): Fix depayloader, support more packet types. Add sync codes to make sure the packetizer can do its job. * gst/rtp/gstrtpmp4gdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_process): Fix caps case again. 2007-02-15 Wim Taymans * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_process): Set right caps on output buffers. 2007-02-14 Wim Taymans * gst/rtsp/sdpmessage.c: (sdp_parse_line): As spotted by: Peter Kjellerstedt : Clear stack allocated SDPMedia struct before calling _init() on it. Clarify this in the docs as well. 2007-02-14 Jan Schmidt * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_reset), (do_change_child): Don't reset the profile when going switching states, as it makes the element non-reusable. 2007-02-14 Wim Taymans * gst/rtsp/sdpmessage.c: (sdp_origin_init), (sdp_connection_init), (sdp_bandwidth_init), (sdp_time_init), (sdp_zone_init), (sdp_key_init), (sdp_attribute_init), (sdp_message_init), (sdp_message_uninit), (sdp_message_free), (sdp_media_init), (sdp_media_uninit), (sdp_media_free), (sdp_message_add_media), (sdp_parse_line): * gst/rtsp/sdpmessage.h: Based on patch by: jp.liu Fix memory management of SDP messages. Fixes #407793. 2007-02-14 Stefan Kost Patch by: zhangfei gao * gst/avi/gstavimux.c: (gst_avi_mux_vidsink_set_caps): Allow muxing video/x-h264 (was already in the caps). Fixes #407780. 2007-02-14 Wim Taymans Patch by: jp.liu * gst/rtsp/rtspurl.c: (rtsp_url_parse): Fix parsing of password field in url. Fixes #407797. 2007-02-14 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_class_init), (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_destroy_sourcepad), (gst_wavparse_fmt), (gst_wavparse_parse_file_header), (gst_wavparse_stream_init), (gst_wavparse_perform_seek), (gst_wavparse_peek_chunk_info), (gst_wavparse_stream_headers), (gst_wavparse_parse_stream_init), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_chain), (gst_wavparse_pad_convert), (gst_wavparse_pad_query), (gst_wavparse_srcpad_event), (gst_wavparse_change_state), (plugin_init): * gst/wavparse/gstwavparse.h: Update docs. Use boilerplate. Various code cleanups. When the bitrate is not known (bps == 0 or compressed formats) let downstream element guestimate the duration and position and don't generate timestamps or durations. Fixes #405213. Fix EOS and ERROR conditions in chain mode, we just need to forward the error flowreturn upstream. 2007-02-13 Jan Schmidt * ext/gconf/Makefile.am: * ext/gconf/gconf.c: (gst_gconf_get_string), (gst_gconf_get_key_for_sink_profile), (gst_gconf_set_string), (gst_gconf_render_bin_with_default): * ext/gconf/gconf.h: * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_base_init), (gst_gconf_audio_sink_reset), (gst_gconf_audio_sink_init), (gst_gconf_audio_sink_dispose), (do_change_child), (gst_gconf_switch_profile), (gst_gconf_audio_sink_set_property), (cb_change_child), (gst_gconf_audio_sink_change_state): * ext/gconf/gstgconfaudiosink.h: * ext/gconf/gstswitchsink.c: (gst_switch_sink_base_init), (gst_switch_sink_class_init), (gst_switch_sink_reset), (gst_switch_sink_init), (gst_switch_sink_dispose), (gst_switch_commit_new_kid), (gst_switch_sink_set_child), (gst_switch_sink_set_property), (gst_switch_sink_handle_event), (gst_switch_sink_get_property), (gst_switch_sink_change_state): * ext/gconf/gstswitchsink.h: * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_class_init), (gst_auto_audio_sink_dispose), (gst_auto_audio_sink_clear_kid), (gst_auto_audio_sink_reset), (gst_auto_audio_sink_detect): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_class_init), (gst_auto_video_sink_dispose), (gst_auto_video_sink_clear_kid), (gst_auto_video_sink_reset), (gst_auto_video_sink_detect): Re-factor the gconfaudiosink into a "GstSwitchSink" base class and a child that implements the GConf key monitoring. The end goal of this is an audio sink that can be changed on the fly, but at the moment it still only changes on the next READY transition. 2007-02-13 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_push_event), (gst_avi_demux_stream_header_pull), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): Put debug stuff into #ifndef GST_DISABLE_DEBUG #endif 2007-02-13 Stefan Kost * configure.ac: * docs/plugins/Makefile.am: Add crossreferences to glib/gobject/gstream docs. 2007-02-12 Tim-Philipp Müller * gst/monoscope/Makefile.am: * gst/monoscope/gstmonoscope.c: Fix copy'n'paste-o in docs chunk. Also add some missing CFLAGS (but no LIBS, since we only use defines from the headers). 2007-02-12 Tim-Philipp Müller Based on patch by: Jonathan Matthew * gst/wavparse/gstwavparse.c: (gst_wavparse_parse_stream_init), (gst_wavparse_stream_data): Fix massive memory leak when operating in streaming mode due to GST_BUFFER_MALLOCDATA() not being set on newly-created buffers. Fixes #407057. 2007-02-12 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_class_init), (gst_avi_demux_reset), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_push_event), (gst_avi_demux_stream_header_pull), (gst_avi_demux_do_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): * gst/avi/gstavidemux.h: Save some memory (8%) by repacking the index entry structure (more to come). Add more FIXMEs to questionable parts. 2007-02-12 Stefan Kost * sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_caps), (gst_v4l2src_get_caps): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_grab_frame), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init): More FIXME comments and messaging changes. 2007-02-12 Stefan Kost * gst/goom/gstgoom.c: (gst_goom_class_init), (gst_goom_init), (gst_goom_change_state): * gst/goom/gstgoom.h: Improved docs and use GST_DEBUG_FUNCPTR. * gst/level/gstlevel.c: (gst_level_class_init): Use GST_DEBUG_FUNCPTR. * gst/monoscope/gstmonoscope.c: (gst_monoscope_init), (gst_monoscope_chain), (gst_monoscope_change_state): Improved docs source cleanups. 2007-02-12 Tim-Philipp Müller * gst/debug/Makefile.am: * gst/debug/gstdebug.c: (plugin_init): * gst/debug/gstpushfilesrc.c: * gst/debug/gstpushfilesrc.h: Add code for a pushfilesrc element that implements a pushfile:// URI handler, to make debugging push-mode operation of demuxer/decoders that support both easier in connection with seek/playbin/etc. The element isn't registered at the moment. 2007-02-11 Sébastien Moutte * gst/avi/gstavimux.c: Comment a #if 0 in caps template definition as VS6 seems to do not support it. * gst/rtsp/gstrtspsrc.c:(gst_rtspsrc_loop_udp): Use gst_guint64_to_gdouble for conversion. * gst/rtsp/rtspconnection.c:(rtsp_connection_send): Move variables declaration before the first instruction. * gst/rtsp/rtspdefs.c:(rtsp_strresult): Don't use hstrerror for error log on G_OS_WIN32 build as it's not supported. And don't include netdb.h for G_OS_WIN32 * gst/rtsp/sdpmessage.c:(sdp_parse_line): This initialization SDPMedia nmedia = {.media = NULL }; is not supported by VS6 then use an other way to initialize SDPMedia structure. * gst/udp/gstdynudpsink.h: * gst/udp/gstdynudpnetutils.h: Do not include for G_OS_WIN32 * gst/udp/gstudpsrc.c: Define socklen_t as int for G_OS_WIN32 * win/common/config.h.in: Undef HAVE_NETINET_IN_H * win32/vs6/gst_plugins_good.dsw: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: * win32/vs6/libgstautogen.dsp: * win32/vs6/libgstaudiofx.dsp: * win32/vs6/libgstudp.dsp: Add and update project files. * win32/common/gstudp-enumtypes.c: * win32/common/gstudp-enumtypes.h: Add a copy of udp enumtypes to win32/common as in core and base. 2007-02-11 Stefan Kost * configure.ac: Activate monoscope when building with --enable-experimental. Fix --enable-external configure switch description. * sys/sunaudio/gstsunaudiomixer.c: (gst_sunaudiomixer_base_init): * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_dispose): Help gst-indent. 2007-02-09 Tim-Philipp Müller * gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header): Explicitly cast result of pointer arithmetic to integer in order to avoid compiler warnings on some 64-bit systems. Should fix #406018. 2007-02-08 Tim-Philipp Müller * gst/debug/progressreport.c: Some more docs. 2007-02-07 Tim-Philipp Müller * docs/plugins/inspect/plugin-rtp.xml: Update for new elements. * gst/debug/progressreport.h: Commit newly-created header file as well. 2007-02-07 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * gst/debug/Makefile.am: * gst/debug/progressreport.c: (gst_progress_report_post_progress), (gst_progress_report_do_query), (gst_progress_report_report): Make progressreport element post messages with the current progress on the bus. Also add some basic docs for it. 2007-01-30 Tim-Philipp Müller * ext/hal/hal.c: (gst_hal_get_string): * ext/hal/hal.h: Some small cleanups; deal with errors when parsing the HAL ALSA capabilities a bit better. 2007-02-06 Tim-Philipp Müller * gst/smpte/gstsmpte.c: (gst_smpte_transition_type_get_type): Let's try this again and use the right cast this time. 2007-02-06 Tim-Philipp Müller * gst/smpte/gstsmpte.c: (gst_smpte_transition_type_get_type): Add cast to avoid compiler warnings with older GLib versions where the nick/name members in GEnumValue are not declared as constant strings. 2007-02-06 Tim-Philipp Müller * ext/gconf/gconf.c: (gst_gconf_get_key_for_sink_profile), (gst_gconf_render_bin_from_key), (gst_gconf_get_default_audio_sink): * ext/gconf/gconf.h: * ext/gconf/gstgconfaudiosink.c: (get_gconf_key_for_profile), (do_toggle_element), (gst_gconf_audio_sink_set_property), (gst_gconf_audio_sink_get_property): In gconfaudiosink, get the right key as the old key in do_toggle (ie. one dependent on the profile selected). Log some more stuff so we can see what's actually going on. 2007-02-06 Sebastian Dröge * gst/audiofx/audioamplify.c: (gst_audio_amplify_base_init), (gst_audio_amplify_class_init), (gst_audio_amplify_init), (gst_audio_amplify_set_process_function), (gst_audio_amplify_setup): * gst/audiofx/audioamplify.h: * gst/audiofx/audioinvert.c: (gst_audio_invert_base_init), (gst_audio_invert_class_init), (gst_audio_invert_setup): * gst/audiofx/audioinvert.h: Some small cleanups and port both elements to the new GstAudioFilter base class to save a few lines of common code. * gst/audiofx/Makefile.am: Link against libgstaudio for the above changes 2007-01-29 Wim Taymans * tests/check/elements/.cvsignore: Some more ignores. 2007-01-26 Wim Taymans Patch by: charles * ext/shout2/gstshout2.c: (gst_shout2send_init), (set_shout_metadata), (gst_shout2send_event): * ext/shout2/gstshout2.h: Properly handle tags in shout2send. Fixes #399825. 2007-01-25 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_media_to_caps), (gst_rtspsrc_activate_streams): Convert SDP fields to upper/lowercase following the rules in the SDP to caps document. 2007-01-25 Wim Taymans * gst/rtp/README: * gst/rtp/gstrtpilbcdepay.c: * gst/rtp/gstrtpilbcpay.c: * gst/rtp/gstrtpmp4gdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: * gst/rtp/gstrtpsv3vdepay.c: * gst/rtp/gstrtptheoradepay.c: * gst/rtp/gstrtptheorapay.c: * gst/rtp/gstrtpvorbisdepay.c: * gst/rtp/gstrtpvorbispay.c: Fix case of encoding-name and key/value pairs to match the document. This is to make interoperation with SDP case-insensitive as required by the relevant RFCs. 2007-01-25 Wim Taymans * configure.ac: Bump required -core/-base to CVS 2007-01-25 Wim Taymans * gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_setcaps), (gst_rtp_L16_pay_flush), (gst_rtp_L16_pay_handle_buffer): * gst/rtp/gstrtpL16pay.h: Fill up to MTU using adapter. Timestamp rtp packets. 2007-01-25 Edward Hervey * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): * sys/ximage/ximageutil.c: (ximageutil_check_xshm_calls): Use G_GSIZE_FORMAT in print statements for portability. Fixes build on macosx. 2007-01-24 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_base_init), (gst_rtp_L16_depay_class_init), (gst_rtp_L16_depay_init), (gst_rtp_L16_depay_parse_int), (gst_rtp_L16_depay_setcaps), (gst_rtp_L16_depay_process), (gst_rtp_L16_depay_set_property), (gst_rtp_L16_depay_get_property), (gst_rtp_L16_depay_change_state), (gst_rtp_L16_depay_plugin_init): * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_get_type), (gst_rtp_L16_pay_base_init), (gst_rtp_L16_pay_class_init), (gst_rtp_L16_pay_init), (gst_rtp_L16_pay_finalize), (gst_rtp_L16_pay_setcaps), (gst_rtp_L16_pay_handle_buffer), (gst_rtp_L16_pay_plugin_init): * gst/rtp/gstrtpL16pay.h: Port and enable raw audio payloader/depayloader. Needs a bit more work on the payloader side. 2007-01-24 Wim Taymans * gst/rtsp/gstrtspsrc.c: (pad_blocked), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_udp): * gst/rtsp/gstrtspsrc.h: Only unblock the udp pads when we linked and activated them all. Fixes #395688. 2007-01-24 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpac3depay.c: (gst_rtp_ac3_depay_base_init), (gst_rtp_ac3_depay_class_init), (gst_rtp_ac3_depay_init), (gst_rtp_ac3_depay_setcaps), (gst_rtp_ac3_depay_process), (gst_rtp_ac3_depay_set_property), (gst_rtp_ac3_depay_get_property), (gst_rtp_ac3_depay_change_state), (gst_rtp_ac3_depay_plugin_init): * gst/rtp/gstrtpac3depay.h: Added simple AC3 depayloader (RFC 4184). * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps): Fix a leak. 2007-01-24 Sebastian Dröge reviewed by: Stefan Kost * gst/audiofx/Makefile.am: * gst/audiofx/audioamplify.c: (gst_audio_amplify_clipping_method_get_type), (gst_audio_amplify_base_init), (gst_audio_amplify_class_init), (gst_audio_amplify_init), (gst_audio_amplify_set_process_function), (gst_audio_amplify_set_property), (gst_audio_amplify_get_property), (gst_audio_amplify_set_caps), (gst_audio_amplify_transform_int_clip), (gst_audio_amplify_transform_int_wrap_negative), (gst_audio_amplify_transform_int_wrap_positive), (gst_audio_amplify_transform_float_clip), (gst_audio_amplify_transform_float_wrap_negative), (gst_audio_amplify_transform_float_wrap_positive), (gst_audio_amplify_transform_ip): * gst/audiofx/audioamplify.h: * gst/audiofx/audiofx.c: (plugin_init): Add new element "audioamplify". This allows scaling of raw audio samples, similar to the "volume" element, but provides different modes for clipping and allows unlimited amplification. It's mainly targeted for creative sound design and not as a replacement of the "volume" element. Fixes #397162 * 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: Add docs for audioamplify and integrate them into the build system * tests/check/Makefile.am: * tests/check/elements/audioamplify.c: (setup_amplify), (cleanup_amplify), (GST_START_TEST), (amplify_suite), (main): Add fairly extensive unit test suite for audioamplify 2007-01-24 Wim Taymans * gst/rtsp/gstrtspsrc.c: (pad_unblocked), (pad_blocked): Unblock pads after adding the pads to the element so that autopluggers get a change to link something. Possibly fixes #395688. 2007-01-24 Wim Taymans * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpgsmdepay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtph264depay.c: * gst/rtp/gstrtpilbcdepay.c: * gst/rtp/gstrtpmp2tdepay.c: * gst/rtp/gstrtpmp4gdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init): * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_class_init), (gst_rtp_mpa_depay_init), (gst_rtp_mpa_depay_setcaps), (gst_rtp_mpa_depay_process): * gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_class_init), (gst_rtp_mpv_depay_init), (gst_rtp_mpv_depay_process): * gst/rtp/gstrtppcmadepay.c: * gst/rtp/gstrtppcmudepay.c: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: * gst/rtp/gstrtpsv3vdepay.c: * gst/rtp/gstrtptheoradepay.c: * gst/rtp/gstrtptheorapay.c: * gst/rtp/gstrtpvorbisdepay.c: * gst/rtp/gstrtpvorbispay.c: Fix caps with payload numbers. Add some fixed payload numbers to caps when possible. 2007-01-23 Sebastian Dröge reviewed by: Stefan Kost * gst/audiofx/Makefile.am: * gst/audiofx/audiofx.c: (plugin_init): * gst/audiofx/audioinvert.c: (gst_audio_invert_base_init), (gst_audio_invert_class_init), (gst_audio_invert_init), (gst_audio_invert_set_property), (gst_audio_invert_get_property), (gst_audio_invert_set_caps), (gst_audio_invert_transform_int), (gst_audio_invert_transform_float), (gst_audio_invert_transform_ip): * gst/audiofx/audioinvert.h: Add new audiofx element "audioinvert". This element swaps the upper and lower half of samples and can be used for example for a wide-stereo effect. Fixes #396057 * 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: Add docs for the audioinvert element and add them to the build system. * tests/check/Makefile.am: * tests/check/elements/audioinvert.c: (setup_invert), (cleanup_invert), (GST_START_TEST), (invert_suite), (main): Add unit test suite for the audioinvert element. 2007-01-23 Wim Taymans * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_parse_int), (gst_rtp_mp4g_depay_setcaps), (gst_rtp_mp4g_depay_process): Parse config params as string and int. Parse and use AU header length 2007-01-23 Wim Taymans * gst/smpte/barboxwipes.c: (gst_wipe_boxes_draw), (gst_wipe_triangles_clock_draw), (gst_wipe_triangles_draw): * gst/smpte/gstmask.c: (_gst_mask_register): * gst/smpte/gstmask.h: * gst/smpte/gstsmpte.c: (gst_smpte_update_mask): * gst/smpte/paint.c: (gst_smpte_paint_hbox), (draw_bresenham_line), (gst_smpte_paint_triangle_clock): constify some static structs. Don't update the mask if nothing changed to the params. Make sure we never draw outside of the picture. Fixes #398325. 2007-01-22 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_stream_header_pull): Error out properly when pull_range fails while we're reading the headers, instead of just pausing the task silently. Fixes #399338. 2007-01-19 Tim-Philipp Müller * gst/smpte/gstsmpte.c: (gst_smpte_collected): Some more sanity checks to make sure the input formats match and the input pads are actually negotiated, in case someone tries to feed buffers from fakesrc or filesrc. Fixes #398299. Also const-ify an array, just because we can. 2007-01-19 Edward Hervey * gst/smpte/gstsmpte.c: (fill_i420), (gst_smpte_collected): Ignore previous commit, that was only valid for widths and heights that are multiples of 4. Copy over size/stride macros from jpegdec. This allows the element to work with any width,height... ... but puts in evidence that the actual transformations only work with width/height that are multiples of 4. 2007-01-19 Edward Hervey * gst/smpte/gstsmpte.c: (gst_smpte_collected): Allocate buffers of the right size. The proper size of a I420 buffer in bytes is: width * height * 3 ------------------ 2 2007-01-18 Tim-Philipp Müller * gst/smpte/gstsmpte.c: (gst_smpte_init): Proxy getcaps on sink pads too, so that we either end up with the same dimensions on all pads or error out if that's not possible (seems to work even!). Fixes #398086, I think. 2007-01-18 Tim-Philipp Müller * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/gst-plugins-good-plugins.hierarchy: Remove ladspa from docs; add hierarchy info for GstAudioPanorama; fix integer properties with -1 as minimum value. * docs/plugins/inspect/plugin-1394.xml: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: Update to CVS. 2007-01-18 Stefan Kost Patch by: Sebastian Dröge * gst/audiofx/audiopanorama.c: Fix doc section name (Fixes #397946) 2007-01-17 Stefan Kost * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_install_properties_helper), (gst_v4l2_object_set_property_helper), (gst_v4l2_object_get_property_helper), (gst_v4l2_set_defaults): * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init), (gst_v4l2src_init), (gst_v4l2src_set_property), (gst_v4l2src_get_property), (gst_v4l2src_set_caps): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_grab_frame), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init), (gst_v4l2src_capture_start), (gst_v4l2src_capture_deinit): Fix EIO handing when capturing. Add new property to specify the number of buffers to enque (and remove the borked num-buffers usage). 2007-01-16 Stefan Kost Patch by: Sebastian Dröge * gst/audiofx/audiopanorama.c: (gst_audio_panorama_class_init), (gst_audio_panorama_set_process_function): Use a function array for process methods, add more docs and define the startindex of enums. 2007-01-14 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/avi/gstavimux.c: (gst_avi_mux_finalize), (gst_avi_mux_pad_reset), (gst_avi_mux_reset), (gst_avi_mux_init), (gst_avi_mux_vidsink_set_caps), (gst_avi_mux_audsink_set_caps), (gst_avi_mux_request_new_pad), (gst_avi_mux_release_pad), (gst_avi_mux_riff_get_avi_header), (gst_avi_mux_riff_get_avix_header), (gst_avi_mux_riff_get_header), (gst_avi_mux_write_avix_index), (gst_avi_mux_add_index), (gst_avi_mux_bigfile), (gst_avi_mux_start_file), (gst_avi_mux_stop_file), (gst_avi_mux_handle_event), (gst_avi_mux_do_buffer), (gst_avi_mux_do_one_buffer), (gst_avi_mux_change_state): * gst/avi/gstavimux.h: * tests/check/elements/avimux.c: (teardown_src_pad): Add support for more than one audio stream; write better AVIX header; refactor code a bit; don't announce vorbis caps on our audio sink pads since we don't support it anyway. Closes #379298. 2007-01-13 Tim-Philipp Müller Patch by: Sebastian Dröge * gst/audiofx/audiopanorama.c: (gst_audio_panorama_method_get_type), (gst_audio_panorama_class_init), (gst_audio_panorama_init), (gst_audio_panorama_set_process_function), (gst_audio_panorama_set_property), (gst_audio_panorama_get_property), (gst_audio_panorama_set_caps), (gst_audio_panorama_transform_m2s_int_simple), (gst_audio_panorama_transform_s2s_int_simple), (gst_audio_panorama_transform_m2s_float_simple), (gst_audio_panorama_transform_s2s_float_simple): * gst/audiofx/audiopanorama.h: Add 'method' property and provide a simple (non-psychoacustic) processing method (#394859). * tests/check/elements/audiopanorama.c: (GST_START_TEST), (panorama_suite): Tests for new method. 2007-01-11 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_read_range): * gst/id3demux/gstid3demux.c: (gst_id3demux_read_range): Set correct caps on outgoing pulled buffers, or things blow up after recent core changes. 2007-01-11 Wim Taymans Based on patch by: Jonas Holmberg * gst/multipart/multipartmux.c: (gst_multipart_mux_init), (gst_multipart_mux_request_new_pad), (gst_multipart_mux_queue_pads), (gst_multipart_mux_collected), (gst_multipart_mux_change_state): Return FLOW errors ASAP. Fixes #394977. Misc cleanups. 2007-01-11 Wim Taymans Patch by: Lutz Mueller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_activate_streams): Check for stream pad before activating. 2007-01-10 Wim Taymans Patch by: Peter Kjellerstedt * gst/rtsp/COPYING.MIT: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (gst_rtspsrc_stream_free), (gst_rtspsrc_cleanup), (gst_rtspsrc_alloc_udp_ports), (pad_unblocked), (pad_blocked), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_prepare_transports), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open), (gst_rtspsrc_close): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_connect), (rtsp_connection_send), (read_line), (parse_request_line), (parse_line), (rtsp_connection_read), (rtsp_connection_close): * gst/rtsp/rtspdefs.c: (rtsp_init_status), (rtsp_strresult), (rtsp_method_as_text), (rtsp_header_as_text), (rtsp_status_as_text), (rtsp_find_header_field), (rtsp_find_method): * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_after_send), (rtsp_ext_wms_configure_stream): * gst/rtsp/rtspmessage.c: (rtsp_message_new), (rtsp_message_init), (rtsp_message_new_request), (rtsp_message_init_request), (rtsp_message_new_response), (rtsp_message_init_response), (rtsp_message_init_data), (rtsp_message_unset), (rtsp_message_free), (rtsp_message_add_header), (rtsp_message_get_header), (rtsp_message_set_body), (rtsp_message_get_body), (dump_mem), (rtsp_message_dump): * gst/rtsp/rtspmessage.h: * gst/rtsp/sdpmessage.c: (sdp_message_get_attribute_val_n), (sdp_media_get_attribute_val_n), (read_string), (read_string_del), (sdp_parse_line), (sdp_message_parse_buffer), (print_media), (sdp_message_dump): Allow url to be NULL to be able to use it for server connections. Can now send responses as well as requests. No longer hangs in an endless loop if EOF is received. Can now convert a status code to a text string. Return RTSP_HDR_INVALID for unknown headers. Return RTSP_INVALID for unknown methods. Copy CSeq and Session headers from the request. Only free memory corresponding to the currently set message type. Added const to function arguments as appropriate. Avoid a compiler warning when initializing nmedia. Use guint rather than gint to avoid compiler warnings. Fix crasher in wms extension. Factor out stream setup from open_connection. Delay activation of streams when actual data is received from the server, this prepares us to do proper protocol switching. Added new license. Fixes #380895. 2007-01-10 Tim-Philipp Müller Patch by: Sebastian Dröge * docs/plugins/Makefile.am: * gst/audiofx/audiopanorama.c: Some small docs fixes (#394851). 2007-01-09 Wim Taymans * gst/avi/gstavidemux.c: Fix docs. 2007-01-09 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_base_init), (gst_rtp_mpv_depay_class_init), (gst_rtp_mpv_depay_init), (gst_rtp_mpv_depay_setcaps), (gst_rtp_mpv_depay_process), (gst_rtp_mpv_depay_set_property), (gst_rtp_mpv_depay_get_property), (gst_rtp_mpv_depay_change_state), (gst_rtp_mpv_depay_plugin_init): * gst/rtp/gstrtpmpvdepay.h: Added RFC 2250 MPEG Video Depayloader. * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps), (gst_rtp_h263p_depay_process): Fix Header file. Small cleanups. * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_class_init), (gst_rtp_mp4g_depay_init), (gst_rtp_mp4g_depay_finalize), (gst_rtp_mp4g_depay_process), (gst_rtp_mp4g_depay_change_state): * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init), (gst_rtp_mp4v_depay_init), (gst_rtp_mp4v_depay_finalize), (gst_rtp_mp4v_depay_setcaps), (gst_rtp_mp4v_depay_process), (gst_rtp_mp4v_depay_change_state): Remove usused code. Remove Adapter from state Change. Added debug. * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_base_init), (gst_rtp_mpa_depay_class_init), (gst_rtp_mpa_depay_init), (gst_rtp_mpa_depay_setcaps), (gst_rtp_mpa_depay_process): * gst/rtp/gstrtpmpadepay.h: Subclass base depayloader. Added debug. Support static payload type assignment as well. * gst/rtp/gstrtpmpapay.c: Fix caps. 2007-01-08 Tim-Philipp Müller Patch by: Vincent Torri * ext/jpeg/gstjpegdec.c: * ext/jpeg/gstjpegenc.c: * ext/jpeg/smokecodec.c: These libjpeg callbacks should return a 'boolean' (unsigned char apparently) and not a 'gboolean' (which maps to gint). Fixes warnings when compiling with MingW (#393427). * gst/rtsp/rtspconnection.c: (rtsp_connection_read): Use ioctlsocket on win32. * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Some printf format fixes for win32. 2007-01-07 Sébastien Moutte * gst/cutter/gstcutter.c: (gst_cutter_chain): Use gst_guint64_to_gdouble for conversion. * win32/vs6/libgstmatroska.dsp: Add zlib to the link. * win32/vs6/libgstvideobox.dsp: Update liboil library name (project is linked to liboil-0.3-0.lib now). 2007-01-05 Tim-Philipp Müller * gst/matroska/Makefile.am: If zlib is available and used, we must link it explicitly for things to work on MingW (fixes #392855). 2007-01-04 Tim-Philipp Müller * ext/esd/esdsink.c: (gst_esdsink_delay): Don't return bogus values when esd_get_delay() fails for some reason (#392189). 2006-12-24 Tim-Philipp Müller * sys/ximage/gstximagesrc.c: (composite_pixel): Fix presumably copy'n'pasto for 16bpp depth. 2006-12-24 Tim-Philipp Müller * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_setcaps): The "signed" field in audio caps is of boolean type, trying to use gst_structure_get_int() to extract it will fail. Fixing this makes matroskamux accept raw audio input (#387121) (use at your own risk though, due to the matroska spec being not entirely useful in this respect). Also fix up raw audio structures in template caps so that they represent what our setcaps function will actually accept, so that converters know what to convert to. Finally, don't fail if there isn't an "endianness" field in 8-bit PCM caps. 2006-12-22 Stefan Kost * tests/check/elements/audiopanorama.c: (cleanup_panorama): * tests/check/elements/avimux.c: (setup_avimux), (cleanup_avimux): * tests/check/elements/cmmldec.c: (setup_cmmldec), (teardown_cmmldec): * tests/check/elements/cmmlenc.c: (setup_cmmlenc), (teardown_cmmlenc): * tests/check/elements/level.c: (setup_level), (cleanup_level): reapply consistent pad (de)activation 2006-12-21 Jan Schmidt * configure.ac: Back to CVS * gst-plugins-good.doap: Add 0.10.5 doap entry === release 0.10.5 === 2006-12-21 Jan Schmidt * configure.ac: releasing 0.10.5, "The Path of Thorns" 2006-12-21 Stefan Kost * tests/check/elements/audiopanorama.c: (cleanup_panorama): * tests/check/elements/avimux.c: (setup_avimux), (cleanup_avimux): * tests/check/elements/cmmldec.c: (setup_cmmldec), (teardown_cmmldec): * tests/check/elements/cmmlenc.c: (setup_cmmlenc), (teardown_cmmlenc): * tests/check/elements/level.c: (setup_level), (cleanup_level): revert my freeze breakage 2006-12-21 Stefan Kost * tests/check/elements/audiopanorama.c: (cleanup_panorama): * tests/check/elements/avimux.c: (setup_avimux), (cleanup_avimux): * tests/check/elements/cmmldec.c: (setup_cmmldec), (teardown_cmmldec): * tests/check/elements/cmmlenc.c: (setup_cmmlenc), (teardown_cmmlenc): * tests/check/elements/level.c: (setup_level), (cleanup_level): consistent pad (de)activation 2006-12-18 Jan Schmidt * configure.ac: * ext/Makefile.am: Disable LADPSA, as it has moved to the -bad module for the duration. 2006-12-18 Wim Taymans * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_setcaps), (gst_signal_processor_event): Reset flow_state back to _OK after a flush stop so that we exit our error state after the flush. Fixes #374213 2006-12-16 David Schleef * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Decent effort at porting to 0.10. Needs cleanup on OS/X. 2006-12-16 David Schleef Patch by: Vijay Santhanam * sys/osxvideo/Makefile.am: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Preliminary patch for porting osxvideosink 2006-12-16 Wim Taymans Patch by: Sjoerd Simons * gst/videomixer/videomixer.c: (gst_videomixer_pad_set_property), (gst_videomixer_set_master_geometry), (gst_videomixer_pad_sink_setcaps), (gst_videomixer_collect_free), (gst_videomixer_reset), (gst_videomixer_init), (gst_videomixer_finalize), (gst_videomixer_request_new_pad), (gst_videomixer_release_pad), (gst_videomixer_collected), (gst_videomixer_change_state): Introduce some locking around the videomixer state so that it does not crash when adding/removing pads. Fixes #383043. 2006-12-16 Tim-Philipp Müller * configure.ac: Make sure libcaca can actually be used instead of just checking for /usr/bin/caca-config, so we don't wrongly try to build cacasink when cross-compiling (fixes #384587). 2006-12-15 Thomas Vander Stichele * Makefile.am: * gst-plugins-good.doap: * gst-plugins-good.spec.in: adding doap file 2006-12-14 Tim-Philipp Müller * configure.ac: libflac-1.1.3 changed API again, but we can't build against it yet, so make sure our check doesn't use libflac-1.1.3 and add a comment to this effect. 2006-12-14 Tim-Philipp Müller * gst/effectv/gstquark.c: (gst_quarktv_transform), (gst_quarktv_planetable_clear): Add some NULL pointer checks (possibly related to #385623). 2006-12-12 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain_parse_tag), (gst_tag_demux_chain): * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): In streaming mode, if the first buffer we get doesn't have an offset, fix it up to be 0, otherwise trimming won't work later on and we'll be typefinding application/x-id3, which may result in decodebin plugging an endless number of id3demux elements as a consequence. Fixes #385031. 2006-12-08 Jan Schmidt * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_prepare): Ignore the buffer_time the sound device reports. Turns out it is sometimes completely bogus and we're better off without it. 2006-12-11 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_video_caps): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_video_context): * gst/matroska/matroska-ids.h: Try harder to extract the framerate for video tracks correctly and save it directly instead of converting it back and forth a few times. Mostly makes a difference for very small framerates (<1). Fixes #380199. 2006-12-11 Tim-Philipp Müller * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_init), (gst_gconf_audio_src_dispose), (do_toggle_element): * ext/gconf/gstgconfaudiosrc.h: Remove gconf notify hook when the gconfaudiosrc element is destroyed, otherwise the callback may be called on an already-destroyed instance and bad things happen. Should fix #378184. Also ignore gconf key changes when the source is already running. 2006-12-09 Tim-Philipp Müller Patch by: Sebastian Dröge * gst/apetag/gstapedemux.c: (ape_demux_parse_tags): We need to be able to read and parse any possible floating point string format ("1,234" or "1.234") irrespective of the current locale. g_strod() will parse the former only in certain locales though, so we really need to canonicalise the separator to '.' and then use g_ascii_strtod() to make sure we can parse either version at all times. Fixes #382982 for real. 2006-12-08 Jan Schmidt * sys/sunaudio/gstsunaudiomixerctrl.c: * sys/sunaudio/gstsunaudiosrc.c: Use the sunaudio debug category. * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_finalize), (gst_sunaudiosink_class_init), (gst_sunaudiosink_init), (gst_sunaudiosink_set_property), (gst_sunaudiosink_get_property), (gst_sunaudiosink_open), (gst_sunaudiosink_close), (gst_sunaudiosink_prepare), (gst_sunaudio_sink_do_delay), (gst_sunaudiosink_write), (gst_sunaudiosink_delay), (gst_sunaudiosink_reset): * sys/sunaudio/gstsunaudiosink.h: Uses the sunaudio debug category for all debug output Implements the _delay() callback to synchronise video playback better Change the segtotal and segsize values back to the parent class defaults (taken from buffer_time and latency_times of 200ms and 10ms respectively) Measure the samples written to the device vs. played. Keep track of segments in the device by writing empty eof frames, and sleep using a GCond when we get too far ahead and risk overrunning the sink's ringbuffer. Fixes: #360673 2006-12-08 Wim Taymans Patch by: Sebastian Dröge * gst/audiofx/audiopanorama.c: (gst_audio_panorama_init), (gst_audio_panorama_set_caps), (gst_audio_panorama_transform): * gst/audiofx/audiopanorama.h: Fix audiopanorame with float samples. Fixes #383726. 2006-12-08 Jan Schmidt * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_reset): * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open), (gst_sunaudiosrc_reset): Implement reset functions to unblock the src/sink more quickly on state change requests. Patch by: Brian Cameron 2006-12-08 Jan Schmidt * sys/sunaudio/gstsunaudiomixer.c: (gst_sunaudiomixer_change_state): Construct the correct mixer device name when the AUDIODEV env var is set. Patch by: Jerry Tan Fixes: #383596 2006-12-08 Jan Schmidt * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open): Apply patch to open the mixer control and set the MULTIPLE_OPEN ioctl. On solaris, the mixer device doesn't need opening non-blocking - it can be opened by multiple processes by default, but needs the ioctl for multiple opens within 1 process. Patch by: Jerry Tan Fixes: #349015 2006-12-07 Wim Taymans * gst/smpte/gstmask.h: * gst/smpte/gstsmpte.c: (gst_smpte_class_init), (gst_smpte_setcaps), (gst_smpte_init), (gst_smpte_reset), (gst_smpte_collected), (gst_smpte_set_property), (gst_smpte_get_property), (gst_smpte_change_state), (plugin_init): * gst/smpte/gstsmpte.h: Port to 0.10 some more. Added duration property to specify the duration of the transition. Make framerate a fraction. Deprecate fps property, we only use negotiated fps. Added docs. Fix collectpad usage. Reset state in READY. Send NEWSEGMENT event. Fix racy updates of object properties. Added debug category. Fixes #383323. 2006-12-06 Wim Taymans Patch by: Sjoerd Simons * gst/videomixer/videomixer.c: (gst_videomixer_set_master_geometry), (gst_videomixer_pad_sink_setcaps), (gst_videomixer_collect_free): Don't reset xpos and ypos in the setcaps function because causes unexpected behaviour. Fixes #382179. 2006-12-06 Wim Taymans * gst/multipart/multipartmux.c: (gst_multipart_mux_compare_pads), (gst_multipart_mux_queue_pads), (gst_multipart_mux_collected): Keep track of the buffer timestamp in the collectdata member instead of modifying the buffer without making the metadata writable first. Fixes #382277. 2006-12-06 Wim Taymans Patch by: Rob Taylor * gst/udp/gstudpsrc.c: (gst_udpsrc_start): If using multicast in udpsrc, bind to the multicast address rather than IN_ADDR_ANY. This allows the simultanous use of multiple udpsrcs listening on different multicat addresses. Without this all udpsrcs will receive all packets from all subscribed multicast addresses. Fixes #383001. 2006-12-06 Jan Schmidt * ext/taglib/gstid3v2mux.cc: Don't attempt to write a NULL frame into the ID3 tag set when the createFrame method returned NULL. Fixes: #381857 Patch by: Jonathan Matthew 2006-12-06 Jan Schmidt * gst/apetag/gstapedemux.c: (ape_demux_parse_tags): Use g_strtod() instead of sscanf to parse doubles, so that it will try parsing in the C locale if the current locale fails. Fixes: #382982 Patch by: Sebastian Dröge 2006-12-01 Jan Schmidt * win32/MANIFEST: Fix compilation on win32 under VS8 Patch by: Sergey Scobich Partially fixes #381175 2006-11-30 Stefan Kost * gst/avi/gstavimux.c: accept all mpegversions,fixes #380825 spotted by: Jerome Alet 2006-11-30 Stefan Kost * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_queue_frame), (gst_v4l2src_grab_frame), (gst_v4l2src_get_capture), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init), (gst_v4l2src_buffer_finalize): cleanup the error message a bit more 2006-11-28 Wim Taymans * ext/libcaca/gstcacasink.c: (gst_cacasink_class_init): Fix width and height properties. * ext/libcaca/gstcacasink.h: Fix compilation on newer libcaca that require us to include a new header. Fixes #379918. 2006-11-28 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspext.h: * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_configure_stream), (rtsp_ext_wms_get_context): Add method so that extensions can choose to disable the setup of a stream. Make the WMS extension skip setup of x-wms-rtx streams. Fixes #377792. 2006-11-27 Wim Taymans Patch by: Jonas Holmberg * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): Push header in a separate buffer instead of memcpy:ing all data. Change LF => CRLF in headers. Move trailing LF to header. Fixes #379792. 2006-11-27 Wim Taymans * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_chain): Small buffer overflow fix and improve debugging. 2006-11-24 Stefan Kost * ext/esd/esdmon.h: * ext/esd/esdsink.h: remove obsolete _factory_init protos 2006-11-24 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_index_entry_for_time), (gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query), (gst_avi_demux_peek_chunk), (gst_avi_demux_parse_subindex), (gst_avi_demux_read_subindexes_push), (gst_avi_demux_read_subindexes_pull), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_next_data_buffer), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_pull), (gst_avi_demux_do_seek), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): remove dead code, tweak debugs statements, add comments, use _uint64_scale instead _uint64_scale_int when using guint64 values, small optimizations, reflow some error handling 2006-11-22 Edward Hervey * po/.cvsignore: We never put .pot files in cvs. Let's ignore them all. 2006-11-19 Tim-Philipp Müller * po/POTFILES.in: ... but better exclude files that aren't disted. 2006-11-19 Tim-Philipp Müller * po/POTFILES.in: Add v4l2 source files to list of files with translations, so the strings are actually extracted (however bad they still may be). 2006-11-19 Tim-Philipp Müller * gst/videobox/gstvideobox.c: (gst_video_box_class_init): Minor clean-ups: const-ify static array, remove trailing comma from last enum (gcc-2.9x trips over that), use GST_DEBUG_FUNCPTR. 2006-11-19 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame): Make sure that g_free always gets called on the same pointer that was returned by g_malloc. Fixes #376594. Do not leak memory if decompressed size is wrong. Remove unneeded check of return value of g_malloc. Patch by: René Stadler 2006-11-18 Tim-Philipp Müller * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_capture_deinit): Add missing curly brackets. 2006-11-17 Edgard Lima * sys/v4l2/v4l2src_calls.c: Fix capture_deinit. 2006-11-16 Tim-Philipp Müller * gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init), (gst_matroska_mux_request_new_pad): Use GST_DEBUG_FUNCPTR; activate request pad before returning it. * tests/check/elements/matroskamux.c: (setup_src_pad), (setup_sink_pad), (GST_START_TEST): Activate pads before using them. 2006-11-16 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan): Initialise variable to get rid of bogus compiler warning. 2006-11-16 Stefan Kost Patch by: Ville Syrjala * gst/rtp/gstrtph263pay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: Specify H.263 variant and version in the caps (fixes #361637) 2006-11-15 Wim Taymans * gst/rtsp/rtspconnection.c: (read_body): Don't set a data pointer to NULL and a size > 0 when we deal with empty packets. * gst/rtsp/rtspmessage.c: (rtsp_message_new_response), (rtsp_message_init_response), (rtsp_message_init_data), (rtsp_message_unset), (rtsp_message_free), (rtsp_message_take_body): Check that we can't create invalid empty packets. 2006-11-15 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/matroska/matroska-mux.c: (gst_matroska_mux_add_interfaces), (gst_matroska_mux_class_init), (gst_matroska_pad_free), (gst_matroska_mux_reset), (gst_matroska_mux_handle_sink_event), (gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad), (gst_matroska_mux_track_header), (gst_matroska_mux_start), (gst_matroska_mux_write_simple_tag), (gst_matroska_mux_finish): * gst/matroska/matroska-mux.h: Add basic tag writing support; implement releasing pads (#374658). 2006-11-15 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_audio_caps): Handle opaque/unspecified A_AAC audio codec ID (fixes #374737). 2006-11-14 David Schleef * gst/matroska/matroska-mux.c: Add Dirac fourcc. 2006-11-14 Tim-Philipp Müller Patch by: Sergey Scobich * win32/vs8/gst-plugins-good.sln: * win32/vs8/libgst1394.vcproj: * win32/vs8/libgstaasink.vcproj: * win32/vs8/libgstalaw.vcproj: * win32/vs8/libgstalpha.vcproj: * win32/vs8/libgstalphacolor.vcproj: * win32/vs8/libgstannodex.vcproj: * win32/vs8/libgstapetag.vcproj: * win32/vs8/libgstaudiofx.vcproj: * win32/vs8/libgstauparse.vcproj: * win32/vs8/libgstautodetect.vcproj: * win32/vs8/libgstavi.vcproj: * win32/vs8/libgstcacasink.vcproj: * win32/vs8/libgstcdio.vcproj: * win32/vs8/libgstcutter.vcproj: * win32/vs8/libgstdv.vcproj: * win32/vs8/libgsteffectv.vcproj: * win32/vs8/libgstflac.vcproj: * win32/vs8/libgstflxdec.vcproj: * win32/vs8/libgstgoom.vcproj: * win32/vs8/libgsticydemux.vcproj: * win32/vs8/libgstid3demux.vcproj: * win32/vs8/libgstjpeg.vcproj: * win32/vs8/libgstladspa.vcproj: * win32/vs8/libgstlevel.vcproj: * win32/vs8/libgstmatroska.vcproj: * win32/vs8/libgstmikmod.vcproj: * win32/vs8/libgstmng.vcproj: * win32/vs8/libgstmonoscope.vcproj: * win32/vs8/libgstmulaw.vcproj: * win32/vs8/libgstmultipart.vcproj: * win32/vs8/libgstpng.vcproj: * win32/vs8/libgstrtp.vcproj: * win32/vs8/libgstrtsp.vcproj: * win32/vs8/libgstshout2.vcproj: * win32/vs8/libgstsmpte.vcproj: * win32/vs8/libgstspeex.vcproj: * win32/vs8/libgsttaglib.vcproj: * win32/vs8/libgstudp.vcproj: * win32/vs8/libgstvideobalance.vcproj: * win32/vs8/libgstvideobox.vcproj: * win32/vs8/libgstvideoflip.vcproj: * win32/vs8/libgstvideomixer.vcproj: * win32/vs8/libgstwavenc.vcproj: * win32/vs8/libgstwavparse.vcproj: Make end-of-line returns unixy, so that when the files are checked out on win32 the line returns will be 0d 0a and not 0d 0d 0a. Hopefully fixes #366492. 2006-11-14 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_massage_index): Disable init_frames delay timestamp adjustment, it does not seem to be needed at all. Fixes #369621. 2006-11-13 Wim Taymans Patch by: Mark Nauwelaerts * gst/videomixer/videomixer.c: (gst_videomixer_set_master_geometry), (gst_videomixer_pad_sink_setcaps), (gst_videomixer_class_init), (gst_videomixer_collect_free), (gst_videomixer_reset), (gst_videomixer_init), (gst_videomixer_finalize), (gst_videomixer_request_new_pad), (gst_videomixer_release_pad), (gst_videomixer_collected), (gst_videomixer_change_state): Fix memleak by unref'ing collectpads instance (when finalizing) Implement releasing a request pad. Fixes #374479. 2006-11-10 Tim-Philipp Müller Patch by: Sergey Scobich * win32/vs8/gst-plugins-good.sln: * win32/vs8/libgst1394.vcproj: * win32/vs8/libgstaasink.vcproj: * win32/vs8/libgstalaw.vcproj: * win32/vs8/libgstalpha.vcproj: * win32/vs8/libgstalphacolor.vcproj: * win32/vs8/libgstannodex.vcproj: * win32/vs8/libgstapetag.vcproj: * win32/vs8/libgstaudiofx.vcproj: * win32/vs8/libgstauparse.vcproj: * win32/vs8/libgstautodetect.vcproj: * win32/vs8/libgstavi.vcproj: * win32/vs8/libgstcacasink.vcproj: * win32/vs8/libgstcdio.vcproj: * win32/vs8/libgstcutter.vcproj: * win32/vs8/libgstdv.vcproj: * win32/vs8/libgsteffectv.vcproj: * win32/vs8/libgstflac.vcproj: * win32/vs8/libgstflxdec.vcproj: * win32/vs8/libgstgoom.vcproj: * win32/vs8/libgsticydemux.vcproj: * win32/vs8/libgstid3demux.vcproj: * win32/vs8/libgstjpeg.vcproj: * win32/vs8/libgstladspa.vcproj: * win32/vs8/libgstlevel.vcproj: * win32/vs8/libgstmatroska.vcproj: * win32/vs8/libgstmikmod.vcproj: * win32/vs8/libgstmng.vcproj: * win32/vs8/libgstmonoscope.vcproj: * win32/vs8/libgstmulaw.vcproj: * win32/vs8/libgstmultipart.vcproj: * win32/vs8/libgstpng.vcproj: * win32/vs8/libgstrtp.vcproj: * win32/vs8/libgstrtsp.vcproj: * win32/vs8/libgstshout2.vcproj: * win32/vs8/libgstsmpte.vcproj: * win32/vs8/libgstspeex.vcproj: * win32/vs8/libgsttaglib.vcproj: * win32/vs8/libgstudp.vcproj: * win32/vs8/libgstvideobalance.vcproj: * win32/vs8/libgstvideobox.vcproj: * win32/vs8/libgstvideoflip.vcproj: * win32/vs8/libgstvideomixer.vcproj: * win32/vs8/libgstwavenc.vcproj: * win32/vs8/libgstwavparse.vcproj: Add VS8 project files (note that many of the plugins in ext are disabled by default). Fixes #366492. 2006-11-10 Stefan Kost * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame): we do not translate debug messages 2006-11-08 Stefan Kost * gst/flx/gstflxdec.c: (gst_flxdec_class_init): fix categorisation, make short desc more explicit, remove unused code Fixes #372021 2006-11-08 Wim Taymans * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpamrpay.c: * gst/rtp/gstrtpgsmdepay.c: * gst/rtp/gstrtph263pay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtph264depay.c: * gst/rtp/gstrtpmp2tdepay.c: * gst/rtp/gstrtpmp4gdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vdepay.c: * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmpadepay.c: * gst/rtp/gstrtpmpapay.c: * gst/rtp/gstrtppcmadepay.c: * gst/rtp/gstrtppcmapay.c: * gst/rtp/gstrtppcmudepay.c: * gst/rtp/gstrtppcmupay.c: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: * gst/rtp/gstrtpsv3vdepay.c: Fix element descriptions. 2006-11-08 Wim Taymans * gst/rtp/gstrtpvorbisdepay.c: * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_handle_buffer): Fix description. Small cleanup in the payloader. 2006-11-08 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_base_init), (gst_rtp_theora_depay_class_init), (gst_rtp_theora_depay_init), (gst_rtp_theora_depay_finalize), (gst_rtp_theora_depay_parse_configuration), (gst_rtp_theora_depay_setcaps), (gst_rtp_theora_depay_switch_codebook), (gst_rtp_theora_depay_process), (gst_rtp_theora_depay_set_property), (gst_rtp_theora_depay_get_property), (gst_rtp_theora_depay_change_state), (gst_rtp_theora_depay_plugin_init): * gst/rtp/gstrtptheoradepay.h: * gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_base_init), (gst_rtp_theora_pay_class_init), (gst_rtp_theora_pay_init), (gst_rtp_theora_pay_setcaps), (gst_rtp_theora_pay_reset_packet), (gst_rtp_theora_pay_init_packet), (gst_rtp_theora_pay_flush_packet), (gst_rtp_theora_pay_finish_headers), (gst_rtp_theora_pay_parse_id), (gst_rtp_theora_pay_handle_buffer), (gst_rtp_theora_pay_plugin_init): * gst/rtp/gstrtptheorapay.h: Add theora pay/depayloaders. 2006-11-06 Wim Taymans * gst/rtp/Makefile.am: We depend on gsttag to generate the vorbis comments. * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_parse_configuration), (gst_rtp_vorbis_depay_setcaps), (gst_rtp_vorbis_depay_switch_codebook), (gst_rtp_vorbis_depay_process): * gst/rtp/gstrtpvorbisdepay.h: Parse configuration string in the depayloader. Implement selecting and switching to a new codebook. Receiving vorbis over RTP now works. * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_reset_packet), (gst_rtp_vorbis_pay_init_packet), (gst_rtp_vorbis_pay_finish_headers), (gst_rtp_vorbis_pay_handle_buffer): * gst/rtp/gstrtpvorbispay.h: Set timestamps on outgoing buffers and RTP packets. Fix configuration string, prepend number of Packet headers. Fix encoding of ident string. Add delivery-method to caps. Streaming vorbis over RTP now works. 2006-11-06 Wim Taymans * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_setcaps), (gst_rtp_vorbis_pay_finish_headers), (gst_rtp_vorbis_pay_parse_id), (gst_rtp_vorbis_pay_handle_buffer): * gst/rtp/gstrtpvorbispay.h: Generate a valid configuration string in the caps based on the vorbis headers. 2006-11-02 Tim-Philipp Müller * ext/cdio/gstcdio.c: (gst_cdio_get_cdtext): * ext/cdio/gstcdio.h: * ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_open): Move CD-TEXT utility function into common file so it can also be used by a future cdioparanoiasrc. 2006-11-01 Edgard Lima * sys/v4l2/Makefile.am: * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2src_calls.c: Improved comments in ELEMENT_ERROR/WARNING and added "#if 0" to xoverlay code that is still not implemented. 2006-11-01 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (parse_picture_frame): We require a -base more recent than 0.10.9, so it's safe to use GST_TYPE_TAG_IMAGE_TYPE unconditionally now. * ext/dv/gstdvdec.c: (gst_dvdec_sink_event): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_sink_event): Use _newsegment_full() now that we depend on a recent enough core. * gst/wavparse/gstwavparse.c: Remove cruft that we don't need any longer now that we depend on a recent enough -base. 2006-10-31 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_init), (gst_rtpilbcpay_setcaps): Fix and activate ILBC pay and depayloaders. Fixes #368162. 2006-10-31 Wim Taymans * ext/speex/gstspeexdec.c: (speex_dec_convert), (speex_dec_sink_event), (speex_dec_chain_parse_header): Some small cleanups, use _scale. 2006-10-31 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query): Use higher precision scale function. 2006-10-30 Tim-Philipp Müller Patch by: Michal Benes * gst/matroska/matroska-demux.c: (gst_matroska_demux_encoding_cmp), (gst_matroska_demux_read_track_encodings), (gst_matroska_decode_buffer): Fix several issues with encoded/compressed/encrypted/signed tracks; also, remove superfluous newline characters from some debug statements. (#366155) 2006-10-30 Wim Taymans * ext/jpeg/gstjpegenc.c: (gst_jpegenc_getcaps): * ext/jpeg/gstsmokedec.c: (gst_smokedec_class_init), (gst_smokedec_init), (gst_smokedec_finalize), (gst_smokedec_chain), (gst_smokedec_change_state): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_class_init), (gst_smokeenc_init), (gst_smokeenc_finalize), (gst_smokeenc_getcaps), (gst_smokeenc_setcaps), (gst_smokeenc_resync), (gst_smokeenc_chain), (gst_smokeenc_set_property), (gst_smokeenc_get_property), (gst_smokeenc_change_state): Various cleanups, capsnego and leak fixes. 2006-10-30 Wim Taymans Patch by: Mark Nauwelaerts * gst/videomixer/videomixer.c: (gst_videomixer_update_queues): Fix videomixer so that it can handle any combination of framerates. Fixes #367221. 2006-10-28 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_file_header), (gst_avi_demux_stream_init_push), (gst_avi_demux_parse_stream), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_data), (gst_avi_demux_chain): Fix position query for audio. also fixes timestamps in streaming mode and bug #364958. Small cleanups. 2006-10-27 Wim Taymans * ext/libpng/gstpngenc.c: (gst_pngenc_setcaps), (gst_pngenc_chain): * ext/libpng/gstpngenc.h: Fix strides. Fixes #364856. Cleanup capsnego. Set caps on outgoing buffers. 2006-10-18 Wim Taymans Patch by: Ville Syrjala * gst/rtp/gstrtpgsmpay.c: * gst/rtp/gstrtph263pay.c: * gst/rtp/gstrtpmpapay.c: * gst/rtp/gstrtppcmapay.c: (gst_rtp_pcma_pay_flush), (gst_rtp_pcma_pay_handle_buffer): * gst/rtp/gstrtppcmupay.c: (gst_rtp_pcmu_pay_flush): Add static payload numbers in addition to the dynamic ones. Fixes #361639. 2006-10-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtsp_lower_trans_get_type), (gst_rtspsrc_class_init), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_open), (gst_rtspsrc_uri_get_protocols), (gst_rtspsrc_uri_set_uri): * gst/rtsp/rtspconnection.c: (rtsp_connection_create): * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspurl.c: (rtsp_url_parse): * gst/rtsp/rtspurl.h: Reuse already existing enum for lower transport. Add rtspt and rtspu protocols. Send redirect to rtspt when udp times out. 2006-10-18 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_data): Fix seeking some more, mostly for speed changes. 2006-10-18 Tim-Philipp Müller Patch by: Fredrik Persson * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/gstv4l2tuner.h: Fix _set_channel(): remove useless g_object_notify() for "channel" property that doesn't exist any longer and therefore now also useless redirect (#338818). 2006-10-17 Wim Taymans * sys/oss/gstosssink.c: (gst_oss_sink_prepare): Some drivers do not support unsetting the non-blocking flag once the device is opened. In those cases, close/open the device in non-blocking mode. Fixes #362673. 2006-10-17 Stefan Kost * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_fps), (gst_v4l2src_get_fps): dear stefan, framespersecond is not frameperiod, reverting but adding comment 2006-10-17 Stefan Kost * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_fps), (gst_v4l2src_get_fps): Numerator is numerator and denominator is denominator. Say that aloud 5 times and retry after next beer. 2006-10-16 Tim-Philipp Müller Patch by: Josep Torra Valles * ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_transform): * ext/esd/esdsink.c: (gst_esdsink_write): * ext/flac/gstflacdec.c: (gst_flac_dec_length), (gst_flac_dec_read_seekable), (gst_flac_dec_chain), (gst_flac_dec_send_newsegment): * ext/flac/gstflacenc.c: (gst_flac_enc_seek_callback), (gst_flac_enc_tell_callback): * ext/jpeg/smokecodec.c: (find_best_size), (smokecodec_encode), (smokecodec_parse_header), (smokecodec_decode): * gst/avi/gstavimux.c: (gst_avi_mux_write_avix_index): * gst/debug/efence.c: (gst_fenced_buffer_alloc): * gst/goom/Makefile.am: * gst/goom/gstgoom.c: * gst/icydemux/gsticydemux.c: (gst_icydemux_typefind_or_forward): * gst/rtsp/gstrtspsrc.c: * gst/rtsp/rtspconnection.c: (rtsp_connection_read): * gst/udp/gstudpsink.c: * gst/udp/gstudpsrc.c: * gst/wavparse/gstwavparse.c: (gst_wavparse_change_state): * sys/sunaudio/gstsunaudiomixertrack.h: Fix a bunch of problems discovered by the Forte compiler, mostly type mixups and pointer arithmetics with void pointers. Fixes #362603. 2006-10-12 Tim-Philipp Müller * ext/speex/gstspeex.c: (plugin_init): * ext/speex/gstspeexenc.c: (gst_speex_enc_get_formats), (gst_speex_enc_setup_interfaces), (gst_speex_enc_base_init), (gst_speex_enc_class_init), (gst_speex_enc_finalize), (gst_speex_enc_sink_setcaps), (gst_speex_enc_convert_src), (gst_speex_enc_convert_sink), (gst_speex_enc_get_query_types), (gst_speex_enc_src_query), (gst_speex_enc_sink_query), (gst_speex_enc_init), (gst_speex_enc_create_metadata_buffer), (gst_speex_enc_set_last_msg), (gst_speex_enc_setup), (gst_speex_enc_buffer_from_data), (gst_speex_enc_push_buffer), (gst_speex_enc_set_header_on_caps), (gst_speex_enc_sinkevent), (gst_speex_enc_chain), (gst_speex_enc_get_property), (gst_speex_enc_set_property), (gst_speex_enc_change_state): * ext/speex/gstspeexenc.h: Miscellaneous clean-ups, among other things: speexenc => enc to enhance code readability; change speexenc => speex_enc; in chain function unref input buffer in case of error; take reference in event function; use boilerplate macro; use gst_pad_query_peer_* convenience functions. 2006-10-12 Tim-Philipp Müller * ext/speex/gstspeexenc.c: (gst_speexenc_finalize), (gst_speexenc_set_last_msg), (gst_speexenc_setup), (gst_speexenc_set_header_on_caps): Fix some mem leaks. 2006-10-11 Wim Taymans * gst/rtsp/URLS: Added some other URL. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_udp), (gst_rtspsrc_handle_request), (gst_rtspsrc_send), (gst_rtspsrc_open), (gst_rtspsrc_play), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Work on fallback to TCP connection when the UDP socket times out. Handler server requests, just reply with OK for now. * gst/rtsp/rtspdefs.c: (rtsp_strresult): * gst/rtsp/rtspdefs.h: Added some more Real extension headers. * gst/rtsp/rtspurl.c: (rtsp_url_parse): Fix parsing of urls with a ':' that is not part of the hostname:port part of the url. 2006-10-11 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_add_srcpad): * gst/icydemux/gsticydemux.c: (gst_icydemux_add_srcpad): * gst/id3demux/gstid3demux.c: (gst_id3demux_add_srcpad): Activate pad before adding it to the already-running element. * tests/check/elements/icydemux.c: (icydemux_found_pad): Activate newly-created pad too. 2006-10-11 Wim Taymans Patch by: Sebastien Cote * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_finalize), (gst_udpsrc_create), (gst_udpsrc_set_uri), (gst_udpsrc_start): Fix some leaks in caps and uris. Fixes #361252. 2006-10-10 Tim-Philipp Müller * gst/wavparse/Makefile.am: Fix copy'n'paste-o (spotted by Mark Nauwelaerts, #341489). 2006-10-09 Jan Schmidt * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/gstv4l2xoverlay.h: Fix build as per the patch in #338818 comment 36. 2006-10-07 Tim-Philipp Müller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_transport): Activate pads before adding them to the source. 2006-10-06 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_add_pads), (gst_dvdemux_chain): * gst/auparse/gstauparse.c: (gst_au_parse_add_srcpad): Activate pads before adding. 2006-10-06 Wim Taymans * gst/multipart/multipartdemux.c: (gst_multipart_demux_init), (gst_multipart_find_pad_by_mime): Activate pads before adding. * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init): BOILERPLATE sets parent_class for us. 2006-10-06 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtsp_proto_get_type), (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_create_stream), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_alloc_udp_ports), (gst_rtspsrc_stream_configure_transport), (find_stream_by_channel), (gst_rtspsrc_push_event), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_configure_transports), (gst_rtspsrc_open), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Rework how the transport string is constructed, try to share channels and udp ports. Make most of the stuff less dependant on RTP as we are also going to use it for RDT. Add support for transport specific session managers. * gst/rtsp/rtspconnection.c: (rtsp_connection_flush): Implement _flush(). * gst/rtsp/rtspdefs.c: (rtsp_strresult): * gst/rtsp/rtspdefs.h: Add generic error return code. * gst/rtsp/rtspext.h: Add support for pluggable tranport strings. * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_before_send), (rtsp_ext_wms_after_send), (rtsp_ext_wms_parse_sdp), (rtsp_ext_wms_get_context): Detect WMServer and activate the extension. * gst/rtsp/rtsptransport.c: (rtsp_transport_get_mime), (rtsp_transport_get_manager), (rtsp_transport_parse): * gst/rtsp/rtsptransport.h: Added methods to get mime/manager for certain transports. 2006-10-05 Tim-Philipp Müller * ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_update_font_height): * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_transform_caps): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_parse_image_data): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain): * ext/jpeg/gstsmokedec.c: (gst_smokedec_chain): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain): * ext/libpng/gstpngdec.c: (user_endrow_callback): * gst/auparse/gstauparse.c: (gst_au_parse_parse_header): * gst/avi/gstavidemux.c: (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_stream_data): * gst/cutter/gstcutter.c: (gst_cutter_chain): * gst/debug/efence.c: (gst_efence_buffer_alloc), (gst_fenced_buffer_copy): * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame): * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): * gst/matroska/matroska-mux.c: (gst_matroska_mux_start): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_handle_message): * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): * sys/ximage/ximageutil.c: (ximageutil_xcontext_get): Printf format fixes. 2006-10-04 Wim Taymans * gst/rtsp/Makefile.am: Dist new .h file too. 2006-10-04 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/gstrtpdec.c: (gst_rtpdec_getcaps), (gst_rtpdec_chain_rtp), (gst_rtpdec_chain_rtcp): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_create_stream), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_play), (gst_rtspsrc_handle_message): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspdefs.c: (rtsp_strresult): * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspext.h: * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_parse_sdp), (rtsp_ext_wms_get_context): * gst/rtsp/rtspextwms.h: * gst/rtsp/rtsptransport.c: (rtsp_transport_init), (parse_mode), (rtsp_transport_parse): * gst/rtsp/rtsptransport.h: Factor out extension in separate module. Fix getcaps to filter against the padtemplate. Use Content-Base if the server gives one. Rework the transport parsing a bit for future extensions. Added some Real Header field definitions. 2006-10-04 Thomas Vander Stichele * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: added v4l2 stubs * gst-plugins-good.spec.in: add v4l2 2006-10-04 Tim-Philipp Müller * gst/apetag/gstapedemux.c: (ape_demux_parse_tags): Extract disc/album/medium number and count and try harder to extract track number/count. 2006-10-03 Thomas Vander Stichele * configure.ac: * sys/Makefile.am: add build stuff for v4l2, needs --enable-experimental until the last bits are resolved 2006-09-29 Tim-Philipp Müller * tests/check/Makefile.am: Disable autodetect test temporarily, so that the build bots update -bad and the ranks of unreliable video sinks in there. * tests/check/elements/autodetect.c: (GST_START_TEST): Skip test if no usable videosink is found. 2006-09-29 Wim Taymans * gst/rtsp/URLS: Add some more URLs. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_set_property), (gst_rtspsrc_get_property), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_loop), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Add timeout property to control UDP timeouts. Fix error messages. Also start a loop function when operating in UDP mode so that we can do some more stuff async. Handle element messages from udpsrc to detect timeouts. If a timeout happens we currently generate an error. API: rtspsrc::timeout property. * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_create): Really implement the timeout in microseconds and not milliseconds. 2006-09-29 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init), (gst_udpsrc_create), (gst_udpsrc_set_property), (gst_udpsrc_get_property), (gst_udpsrc_unlock), (gst_udpsrc_stop): * gst/udp/gstudpsrc.h: Added property to post a message on timeout. Updated docs. When restarting the select, initialize the fdsets again. Init control sockets so we don't accidentally close a random socket. API: GstUDPSrc::timeout property 2006-09-29 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtsp_proto_get_type): Fix flag registration. * gst/rtsp/rtspconnection.c: (rtsp_connection_read): Reading 0 also means 'no more commands' 2006-09-29 Wim Taymans Patch by: Antoine Tremblay * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Fix possible infinite loop when shutting down, a read can also return 0 to indicate no more messages are available. Fixes #358156. 2006-09-25 Wim Taymans * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_base_init), (gst_auto_audio_sink_class_init), (gst_auto_audio_sink_find_best): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_detect): Small cleanups. don't try to set "sync" property when it is not available. 2006-09-25 Tim-Philipp Müller Patch by: Peter Kjellerstedt * gst/alpha/gstalpha.c: * gst/rtp/gstrtpamrdepay.c: * gst/rtsp/gstrtspsrc.c: * gst/udp/gstudpsrc.c: * gst/videomixer/videomixer.c: Include stdlib.h in some more places, makes things compile with uClibc and -Werror (#357592). 2006-09-25 Tim-Philipp Müller * ext/jpeg/gstjpegdec.c: Set minimum height to 8 (from 16), our code should handle that fine. Some of the buttons on the apple trailer site are apparently only 15 pixels high (see #357470). 2006-09-23 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop), (gst_rtspsrc_send), (gst_rtspsrc_open): * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_connect), (rtsp_connection_read), (read_body), (rtsp_connection_receive): * gst/rtsp/rtspdefs.c: (rtsp_strresult): * gst/rtsp/rtspdefs.h: Improve error reporting. 2006-09-23 Wim Taymans * gst/rtp/gstasteriskh263.c: (gst_asteriskh263_plugin_init): * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16depay_plugin_init): * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_plugin_init): * gst/rtp/gstrtpdepay.c: * gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_plugin_init): * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_plugin_init): * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_plugin_init): * gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_plugin_init): * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps), (gst_rtp_mp2t_depay_plugin_init): * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_plugin_init): * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_plugin_init): * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_plugin_init): * gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_plugin_init): * gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_plugin_init): * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_plugin_init): * gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_plugin_init): * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_plugin_init): Fix klass typos. Mark RANK_MARGINAL, decodebin can handle the depayloaders fine. 2006-09-22 Tim-Philipp Müller * configure.ac: Need -base CVS for gst_base_rtp_depayload_push_ts(). 2006-09-22 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_stream_index): Don't check for a tag that is never there and check if we read the correct tag. Fixes seeking again. We must post an error when all pads are unlinked. 2006-09-22 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_process): * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_setcaps), (gst_rtp_vorbis_pay_reset_packet), (gst_rtp_vorbis_pay_init_packet), (gst_rtp_vorbis_pay_flush_packet), (gst_rtp_vorbis_pay_parse_id), (gst_rtp_vorbis_pay_handle_buffer): More fixage, set endoder-params correctly in the payloader. 2006-09-22 Tim-Philipp Müller * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_base_init): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_base_init): Make static pad templates static to appease valgrind's leak detector. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/autodetect.c: (GST_START_TEST), (autodetect_suite): Add simple test for the ghostpad lockup on shutdown fixed in core CVS (audio bit disabled because it would need dozens of alsa suppressions and I'm too lazy to add those now). 2006-09-22 Wim Taymans * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16depay_change_state): * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_class_init): Small cleanups. * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_base_init), (gst_rtp_vorbis_depay_class_init), (gst_rtp_vorbis_depay_init), (gst_rtp_vorbis_depay_finalize), (gst_rtp_vorbis_depay_setcaps), (gst_rtp_vorbis_depay_process), (gst_rtp_vorbis_depay_set_property), (gst_rtp_vorbis_depay_get_property), (gst_rtp_vorbis_depay_change_state), (gst_rtp_vorbis_depay_plugin_init): * gst/rtp/gstrtpvorbisdepay.h: * gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_base_init), (gst_rtp_vorbis_pay_class_init), (gst_rtp_vorbis_pay_init), (gst_rtp_vorbis_pay_setcaps), (gst_rtp_vorbis_pay_init_packet), (gst_rtp_vorbis_pay_flush_packet), (gst_rtp_vorbis_pay_append_buffer), (gst_rtp_vorbis_pay_handle_buffer), (gst_rtp_vorbis_pay_plugin_init): * gst/rtp/gstrtpvorbispay.h: Add experimental vorbis pay and depayloaders. 2006-09-21 Wim Taymans * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_parse_audio_config): Fix profile-level-id parsing and setup. 2006-09-21 Wim Taymans * gst/udp/README: * gst/udp/gstudpsrc.c: (gst_udpsrc_set_property): Update README, simple cleanup. 2006-09-21 Wim Taymans * gst/rtp/README: Update README with some examples. * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_init), (gst_rtp_mp4g_pay_finalize), (gst_rtp_mp4g_pay_parse_audio_config), (gst_rtp_mp4g_pay_parse_video_config), (gst_rtp_mp4g_pay_new_caps), (gst_rtp_mp4g_pay_setcaps): * gst/rtp/gstrtpmp4gpay.h: Make optional RTP parameters of type STRING, as required by the application/x-rtp caps specification. 2006-09-20 Philippe Kalaf * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: Correctly calculate size of each H263+ RTP buffer taking into account MTU and RTP header. 2006-09-20 Wim Taymans * gst/rtp/Makefile.am: And makefile too. 2006-09-20 Wim Taymans * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpasfdepay.c: (gst_rtp_asf_depay_base_init), (gst_rtp_asf_depay_class_init), (gst_rtp_asf_depay_init), (decode_base64), (gst_rtp_asf_depay_setcaps), (gst_rtp_asf_depay_process), (gst_rtp_asf_depay_set_property), (gst_rtp_asf_depay_get_property), (gst_rtp_asf_depay_change_state), (gst_rtp_asf_depay_plugin_init): * gst/rtp/gstrtpasfdepay.h: Added preliminary ASF depayloader. * gst/rtp/gstrtph264depay.c: (decode_base64): Fix base64 decoding. 2006-09-20 Wim Taymans * gst/rtsp/URLS: Added some test URLS. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (gst_rtspsrc_loop), (gst_rtspsrc_open): * gst/rtsp/gstrtspsrc.h: When creating streams, give access to the complete SDP. Fix some leaks. Collect and merge global stream properties in stream caps. Preliminary support for WMServer. * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_connect), (rtsp_connection_read), (read_body), (rtsp_connection_receive): * gst/rtsp/rtspconnection.h: Make connection interruptable. Refactor to make it reconnectable. Don't fail on short reads when reading data packets. * gst/rtsp/rtspurl.c: (rtsp_url_parse), (rtsp_url_set_port), (rtsp_url_get_port): * gst/rtsp/rtspurl.h: Add methods for getting/setting the port. * gst/rtsp/sdpmessage.c: (sdp_message_get_attribute_val_n), (sdp_message_get_attribute_val), (sdp_media_get_attribute), (sdp_media_get_attribute_val_n), (sdp_media_get_attribute_val), (sdp_media_get_format), (sdp_parse_line), (sdp_message_parse_buffer): Fix headers. Add methods for getting multiple attributes with the same name. Increase buffer size when parsing. Fix parsing of a=foo fields. * gst/rtsp/test.c: (main): Update to new connection API. * gst/rtsp/rtspmessage.c: (rtsp_message_new_response), (rtsp_message_init_response), (rtsp_message_init_data), (rtsp_message_unset), (rtsp_message_free), (rtsp_message_dump): * gst/rtsp/rtspmessage.h: * gst/rtsp/rtsptransport.c: (rtsp_transport_free): * gst/rtsp/rtsptransport.h: * gst/rtsp/sdp.h: * gst/rtsp/sdpmessage.h: * gst/rtsp/gstrtsp.c: * gst/rtsp/gstrtsp.h: * gst/rtsp/gstrtpdec.c: * gst/rtsp/gstrtpdec.h: * gst/rtsp/rtsp.h: * gst/rtsp/rtspdefs.c: * gst/rtsp/rtspdefs.h: Dual licensed under MIT and LGPL now. 2006-09-19 Wim Taymans * gst/rtsp/gstrtspsrc.c: (find_stream_by_pt), (gst_rtspsrc_create_stream), (gst_rtspsrc_free_stream), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_stream_configure_transport), (find_stream_by_channel), (gst_rtspsrc_push_event), (gst_rtspsrc_loop), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: Reorganize stream parsing and creation. Detect container formats in interleaved mode. Keep more state about the streams. Assume a server also supports PLAY if it does not say. Add unicast and interleaved properties to TCP transport requests to make some servers happy (WMServer). * gst/rtsp/sdpmessage.h: Add some defines for the standard Bandwidth types. 2006-09-19 Wim Taymans * gst/rtsp/test.c: (main): Fix build. 2006-09-19 Wim Taymans * gst/wavparse/gstwavparse.c: Add ms-gsm to the src template. 2006-09-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_media_to_caps), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause), (gst_rtspsrc_change_state), (gst_rtspsrc_uri_get_uri), (gst_rtspsrc_uri_set_uri): * gst/rtsp/gstrtspsrc.h: Small cleanups, added documentation. Try to clean up the requests and responses. Refactor parsing the supported methods. * gst/rtsp/rtspconnection.c: (rtsp_connection_open), (rtsp_connection_create), (rtsp_connection_send), (parse_response_status), (parse_request_line), (rtsp_connection_receive), (rtsp_connection_close), (rtsp_connection_free): * gst/rtsp/rtsptransport.c: (rtsp_transport_new), (rtsp_transport_init), (rtsp_transport_parse), (rtsp_transport_free): * gst/rtsp/rtspurl.c: (rtsp_url_parse): * gst/rtsp/sdpmessage.c: (sdp_message_new), (sdp_message_init), (sdp_message_clean), (sdp_message_free), (sdp_media_new), (sdp_media_init), (sdp_message_parse_buffer), (sdp_message_dump): Use g_return_val some more. * gst/rtsp/rtspdefs.h: Add more enum values to track initial states. * gst/rtsp/rtspmessage.c: (rtsp_message_new_request), (rtsp_message_init_request), (rtsp_message_new_response), (rtsp_message_init_response), (rtsp_message_init_data), (rtsp_message_unset), (rtsp_message_free), (rtsp_message_add_header), (rtsp_message_remove_header), (rtsp_message_get_header), (rtsp_message_set_body), (rtsp_message_take_body), (rtsp_message_get_body), (rtsp_message_steal_body), (rtsp_message_dump): * gst/rtsp/rtspmessage.h: Reorder arguments, object goes as the first one. Use g_return_val some more. 2006-09-18 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_base_init), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_push_event), (gst_rtspsrc_loop), (gst_rtspsrc_uri_set_uri): * gst/rtsp/gstrtspsrc.h: Export sometimes source pad with correct caps on the template, create the ghostpad from the template. Remove RTCP template as we never expose RTCP. Protect against invalid body size. Avoid memcpy when creating the output buffer. Properly post an error and send EOS when the loop function is shut down. 2006-09-18 Wim Taymans Based on patch by: Lutz Mueller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_set_property), (gst_rtspsrc_open), (gst_rtspsrc_uri_get_uri), (gst_rtspsrc_uri_set_uri): * gst/rtsp/gstrtspsrc.h: Make sure we can never set an invalid location. * gst/rtsp/rtspmessage.c: (rtsp_message_steal_body): * gst/rtsp/rtspmessage.h: Added _steal_body method for future use. * gst/rtsp/rtspurl.c: (rtsp_url_parse), (rtsp_url_free): Make freeing of NULL url return immediatly. 2006-09-18 Wim Taymans Based on patch by: Lutz Mueller * gst/rtsp/gstrtspsrc.c: (_do_init), (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_play), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Use boilerplate. Make rtspsrc subclass GstBin to make state changes easier. Add Range header field on the PLAY request. 2006-09-18 Wim Taymans Based on patch by: Thijs Vermeir * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_set_state), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause): * gst/rtsp/rtspconnection.c: (inet_aton): Small cleanups. when multicast is selected as the transport, create UDP sources and connect to the multicast group. Move parsing and setting of caps to a common place. Fixes #349894. 2006-09-17 Stefan Kost * ext/flac/gstflactag.c: * gst/alpha/gstalpha.c: * gst/debug/breakmydata.c: * gst/debug/negotiation.c: * gst/debug/testplugin.c: * gst/effectv/gstaging.c: * gst/effectv/gstdice.c: * gst/effectv/gstedge.c: * gst/effectv/gstquark.c: * gst/effectv/gstrev.c: * gst/effectv/gstshagadelic.c: * gst/effectv/gstvertigo.c: * gst/effectv/gstwarp.c: * gst/multipart/multipartdemux.c: * gst/multipart/multipartmux.c: * gst/videobox/gstvideobox.c: * gst/videofilter/gstgamma.c: * gst/videofilter/gstvideotemplate.c: * gst/videomixer/videomixer.c: * sys/sunaudio/gstsunaudiosrc.h: More G_OBJECT macro fixing. 2006-09-16 Wim Taymans Patch by: Yves Lefebvre * gst/avi/gstavimux.c: (gst_avi_mux_stop_file): Correctly set the dwLength in strh. With this patch, the file duration is now displayed correctly in window media player and the AVI plays completely. Fixes #356147 2006-09-15 Wim Taymans Patch by: Darren Kenny * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_build_list): Set the output track as the MASTER so that the gnome-settings-daemon keybindings for changing the volume using the keyboard works. Fixes #356142. 2006-09-15 Wim Taymans * gst/multipart/multipartdemux.c: (gst_multipart_demux_chain): Fix documentation, it is not possible to control the framerate of jpegdec using filtered caps yet. Fixes #355210. Return the downstream GstFlowReturn instead of GST_FLOW_OK so that we stop when there is an error. 2006-09-14 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain_parse_tag): * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): Don't interpret a first buffer with an offset of NONE as 'from the middle of the stream', but only a first buffer that has a valid buffer offset that's non-zero (see #345449). 2006-09-14 Tim-Philipp Müller * gst/icydemux/gsticydemux.c: (gst_icydemux_reset), (gst_icydemux_typefind_or_forward): * gst/icydemux/gsticydemux.h: When we merge/collect multiple incoming buffers for typefinding purposes, keep an initial 0 offset on the first outgoing buffer as well (otherwise id3demux won't work right). Fixes #345449. Also Make buffer metadata writable before setting buffer caps. * tests/check/elements/icydemux.c: (typefind_succeed), (cleanup_icydemux), (push_data), (GST_START_TEST), (icydemux_suite): Small test case for the above. 2006-09-13 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_peek_chunk), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_stream_header_push), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): More code reuse and better logging in _peek_chunk(). Reintroduce check for chunk sizes before reading them (avoid oom). Better handling for invalid chunksizes when streaming. 2006-09-11 Stefan Kost * gst/level/gstlevel.c: (gst_level_set_property): * gst/level/gstlevel.h: Fix type mixup in level->interval (gdouble<->guint64). Spotted by René Stadler 2006-09-06 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_read_subindexes_pull), (gst_avi_demux_sync), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_data): Revert one change to fix streaming avi (adapter size != data size). 2006-09-04 Tim-Philipp Müller Patch by: Frédéric Riss * gst/matroska/matroska-demux.c: (gst_matroska_track_free), (gst_matroska_demux_reset), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_decode_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.h: Add support for VOBSUB subtitle tracks and zlib-compressed tracks. Make sure we start on a keyframe after a seek. (#343348) 2006-09-04 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_hdr_buf), (gst_matroska_demux_push_flac_codec_priv_data), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps): * gst/matroska/matroska-ids.h: Add basic FLAC support (#311586), not perfect yet though, needs some tweaking in flacdec; also, seeking could be better. Do better bounds checking when deserialising vorbis stream headers to make sure we don't read beyond the end of the buffer on bad input. 2006-09-04 Wim Taymans Patch by: Alessandro Decina * ext/annodex/gstcmmldec.c: (gst_cmml_dec_chain): Seeking back in a file containing a CMML stream errors out if the seek goes back up to the CMML headers. This is because after the seek the xml processing instruction is submitted to the xml parser again, which results in an error. The attached patch fixes the problem. Fixes #353908. * ext/annodex/gstcmmlenc.h: Fix authors name. 2006-08-28 Andy Wingo * ext/raw1394/gstdv1394src.c (gst_dv1394src_from_raw1394handle): New helper function to lessen the ifdefs. (GST_INFO_OBJECT): (gst_dv1394src_iso_receive): Use it. (gst_dv1394src_create): Also use the control sockets in iec61883 mode. (gst_dv1394src_start, gst_dv1394src_stop): Always use a separate handle for AVC operations; fixes #348233. 2006-08-27 Stefan Kost * configure.ac: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-audiofxgood.xml: * gst/audiofx/Makefile.am: * gst/audiofx/audiofx.c: * gst/audiofxgood/.cvsignore: * gst/audiofxgood/Makefile.am: * gst/audiofxgood/audiofx.c: * gst/audiofxgood/audiopanorama.c: * gst/audiofxgood/audiopanorama.h: Rename again (audiofxgood -> audiofx). 2006-08-27 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan): Initialze variables. 2006-08-25 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_class_init), (gst_avi_demux_init), (gst_avi_demux_finalize), (gst_avi_demux_reset), (gst_avi_demux_index_last), (gst_avi_demux_index_next), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_peek_tag), (gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_pull), (gst_avi_demux_do_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_loop), (gst_avi_demux_chain), (gst_avi_demux_sink_activate), (gst_avi_demux_change_state): * gst/avi/gstavidemux.h: More attempts to turn this into readable code. Don't leak adapters. Calculate duration according to index more efficiently. Don't try to act like we drive the pipeline in chain mode. 2006-08-25 Wim Taymans * ext/annodex/gstcmmlutils.c: (gst_cmml_clock_time_from_npt): Fix build. 2006-08-25 Wim Taymans Patch by: Alessandro Decina * ext/annodex/gstannodex.c: (gst_annodex_granule_to_time): Do some extra sanity checks. Fixes #350340. * ext/annodex/gstcmmlenc.c: (gst_cmml_enc_change_state), (gst_cmml_enc_parse_tag_head), (gst_cmml_enc_parse_tag_clip), (gst_cmml_enc_push_clip), (gst_cmml_enc_push): Check if clip->start_time is valid before adding the clip to the track list. Reset enc->preamble going from PAUSED to READY. Don't use GST_FLOW_UNEXPECTED for wrong usage of the element, it is only used for EOS. Only post an error message if we were the one that created the fatal GstFlowReturn value. * ext/annodex/gstcmmlutils.c: (gst_cmml_clock_time_from_npt), (gst_cmml_clock_time_to_granule), (gst_cmml_track_list_has_clip): Parse the seconds field of the npt-sec time format using %llu rather than %d and check that the value scaled by GST_SECOND doesn't overflow. Use guint64(s) to represent the keyindex and keyoffset fields of a granulepos. Lookup a clip's track with clip->track rather than clip->id which makes no sense. Identify a clip by its track and start time and not its xml id. do some more input checking and make sure we don't do undefined shifts. * tests/check/elements/cmmldec.c: (setup_cmmldec), (teardown_cmmldec), (check_output_buffer_is_equal), (push_data), (cmml_tag_message_pop), (check_headers), (push_clip_full), (push_clip), (push_empty_clip), (check_output_clip), (GST_START_TEST), (cmmldec_suite): * tests/check/elements/cmmlenc.c: (setup_cmmlenc), (teardown_cmmlenc), (check_output_buffer_is_equal), (push_data), (check_headers), (push_clip), (check_clip_times), (check_clip), (check_empty_clip), (GST_START_TEST), (cmmlenc_suite): Added some more checks. 2006-08-24 Stefan Kost * gst/audiofxgood/audiopanorama.c: (gst_audio_panorama_class_init), (gst_audio_panorama_set_property), (gst_audio_panorama_get_property), (gst_audio_panorama_transform_m2s_int), (gst_audio_panorama_transform_s2s_int), (gst_audio_panorama_transform_m2s_float), (gst_audio_panorama_transform_s2s_float): * gst/audiofxgood/audiopanorama.h: * tests/check/elements/audiopanorama.c: (GST_START_TEST): Make also the pan-property float (saves scaling and yields better resolution) 2006-08-24 Stefan Kost * gst/audiofxgood/audiopanorama.c: (gst_audio_panorama_set_caps), (gst_audio_panorama_transform_m2s_float), (gst_audio_panorama_transform_s2s_float): ChangeLog surgery to add cymax's real name 2006-08-24 Stefan Kost Patch by: René Stadler * gst/audiofxgood/audiopanorama.c: (gst_audio_panorama_set_caps), (gst_audio_panorama_transform_m2s_int), (gst_audio_panorama_transform_s2s_int), (gst_audio_panorama_transform_m2s_float), (gst_audio_panorama_transform_s2s_float), (gst_audio_panorama_transform): * gst/audiofxgood/audiopanorama.h: Added float support 2006-08-24 Stefan Kost * gst/audiofxgood/audiopanorama.c: (gst_audio_panorama_transform_m2s): Fix docs & debug category. Add Fixme for volume pan levels. 2006-08-24 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_read_subindexes_pull), (gst_avi_demux_sync), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_header_pull), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_chain): unbreak AVI index handling, some more debug, remove an obsolete adapter_flush that caused streaming to wander off in the wild 2006-08-24 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_odml), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_header_pull): * gst/avi/gstavidemux.h: Some more cleanups. Fix totalFrames parsing in ODML. Disable use of index for length calculation in case of ODML as this is broken now. 2006-08-24 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_update_metadata): Use libgsttag helper function here too. 2006-08-23 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_class_init), (gst_avi_demux_init), (gst_avi_demux_dispose), (gst_avi_demux_reset), (gst_avi_demux_index_next), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query), (gst_avi_demux_handle_src_event), (gst_avi_demux_peek_chunk_info), (gst_avi_demux_peek_chunk), (gst_avi_demux_stream_init_push), (gst_avi_demux_stream_init_pull), (gst_avi_demux_parse_subindex), (gst_avi_demux_read_subindexes_push), (gst_avi_demux_read_subindexes_pull), (gst_avi_demux_parse_stream), (sort), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_peek_tag), (gst_avi_demux_massage_index), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_header_pull), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (push_tag_lists), (gst_avi_demux_loop), (gst_avi_demux_chain), (gst_avi_demux_sink_activate), (gst_avi_demux_activate_push), (gst_avi_demux_change_state): * gst/avi/gstavidemux.h: Initial streaming support for avidemux (fixes #336465) 2006-08-22 Tim-Philipp Müller * docs/plugins/gst-plugins-good-plugins-docs.sgml: There is no taglibmux element ... * gst/rtsp/gstrtspsrc.c: Use '%' rather than '&perc;' in gtk-doc blurb, docs build was complaining about unknown entity here. 2006-08-22 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_do_seek), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry): * gst/avi/gstavidemux.h: Mark DISCONT. Remove old unused fields and reorder the struct a bit. 2006-08-22 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_media_to_caps), (gst_rtspsrc_send), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause): * gst/rtsp/gstrtspsrc.h: * sys/oss/gstosssink.c: (gst_oss_sink_open), (gst_oss_sink_prepare), (gst_oss_sink_unprepare): Small documentation updates. 2006-08-22 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_handle_src_query), (gst_avi_demux_handle_src_event), (gst_avi_demux_stream_init), (gst_avi_demux_parse_stream), (gst_avi_demux_stream_index), (gst_avi_demux_peek_tag), (gst_avi_demux_next_data_buffer), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header), (gst_avi_demux_do_seek), (gst_avi_demux_handle_seek), (gst_avi_demux_aggregated_flow), (gst_avi_demux_process_next_entry), (gst_avi_demux_loop), (gst_avi_demux_sink_activate_pull), (gst_avi_demux_change_state): * gst/avi/gstavidemux.h: Precalc most of the duration query for each stream. Make seeking more correct. Use GstSegment to track position and duration. Code cleanups and leak fixes. Calculate correct total duration based on index length. 2006-08-22 Jan Schmidt * gst/id3demux/id3v2frames.c: (parse_text_identification_frame), (parse_insert_string_field): If strings in text fields are marked ISO8859-1, but contain valid UTF-8 already, then handle them as UTF-8 and ignore the encoding. (#351794) 2006-08-22 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_scan_got_frame), (gst_flac_dec_write), (gst_flac_dec_loop), (gst_flac_dec_sink_event), (gst_flac_dec_chain), (gst_flac_dec_src_query): * ext/flac/gstflacdec.h: Make flac-in-ogg work (#352100). 2006-08-22 Tim-Philipp Müller * gst/monoscope/gstmonoscope.c: (gst_monoscope_chain): Don't unref buffers of which we've already given away ownership to the adapter. 2006-08-22 Tim-Philipp Müller * ext/speex/gstspeexdec.c: (speex_dec_chain_parse_comments): Make metadata extraction actually work. * ext/speex/gstspeexenc.c: (gst_speexenc_base_init), (gst_speexenc_init), (gst_speexenc_create_metadata_buffer), (gst_speexenc_chain): Fix metadata writing: replace old code which wrote completely broken tags with libgsttag-based code. Plus miscellaneous code cleanups (use static pad templates etc.) and a bunch of leak fixes. 2006-08-21 Stefan Kost * gst/audiopanorama/.cvsignore: * gst/audiopanorama/Makefile.am: * gst/audiopanorama/audiofx.c: * gst/audiopanorama/audiopanorama.c: * gst/audiopanorama/audiopanorama.h: die! die! die! you should never have been there 2006-08-21 Jan Schmidt * tests/check/elements/audiopanorama.c: (GST_START_TEST): Fix invalid memory access in audiopanorama test suite. 2006-08-21 Edward Hervey * tests/check/elements/.cvsignore: ignore built file 2006-08-21 Wim Taymans * gst/rtp/Makefile.am: Fix the build again. 2006-08-21 Stefan Kost * gst/audiofxgood/.cvsignore: * gst/audiofxgood/Makefile.am: * gst/audiofxgood/audiofx.c: (plugin_init): * gst/audiofxgood/audiopanorama.c: (gst_audio_panorama_base_init), (gst_audio_panorama_class_init), (gst_audio_panorama_init), (gst_audio_panorama_set_property), (gst_audio_panorama_get_property), (gst_audio_panorama_get_unit_size), (gst_audio_panorama_transform_caps), (gst_audio_panorama_set_caps), (gst_audio_panorama_transform_m2s), (gst_audio_panorama_transform_s2s), (gst_audio_panorama_transform): * gst/audiofxgood/audiopanorama.h: resubmit with the desired name *again* 2006-08-20 Stefan Kost * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_get_unit_size): * gst/videobox/gstvideobox.c: (gst_video_box_get_unit_size): use g_assert in _get_unit_size 2006-08-20 Stefan Kost * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-audiofxgood.xml: cleanup -unused.txt to make it useful, add previously missing docs * ext/Makefile.am: Quietly (accidentally) enable LADSPA for building by default, despite the fact that it doesn't meet the plugin checklist. -- Added by Jan Schmidt 18 Dec 2006 * ext/esd/esdmon.c: * ext/esd/esdsink.c: * ext/esd/gstesd.c: (plugin_init): reflow to get rid of two external symbols * gst/audiofxgood/audiofx.c: (plugin_init): re-add 2006-08-20 Stefan Kost * configure.ac: * gst/audiofxgood/.cvsignore: * gst/audiofxgood/Makefile.am: * gst/audiofxgood/audiofx.c * gst/audiofxgood/audiopanorama.c: (gst_audio_panorama_base_init), (gst_audio_panorama_class_init), (gst_audio_panorama_init), (gst_audio_panorama_set_property), (gst_audio_panorama_get_property), (gst_audio_panorama_get_unit_size), (gst_audio_panorama_transform_caps), (gst_audio_panorama_set_caps), (gst_audio_panorama_transform_m2s), (gst_audio_panorama_transform_s2s), (gst_audio_panorama_transform): * gst/audiofxgood/audiopanorama.h: * tests/check/Makefile.am: * tests/check/elements/audiopanorama.c: (setup_panorama_m), (setup_panorama_s), (cleanup_panorama), (GST_START_TEST), (panorama_suite), (main): Add audiofxgood plugin with audiopanorama element 2006-08-18 Wim Taymans * docs/plugins/Makefile.am: More Oss docs fixage. 2006-08-18 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_base_init), (gst_rtp_sv3v_depay_class_init), (gst_rtp_sv3v_depay_init), (gst_rtp_sv3v_depay_finalize), (gst_rtp_sv3v_depay_setcaps), (gst_rtp_sv3v_depay_process), (gst_rtp_sv3v_depay_set_property), (gst_rtp_sv3v_depay_get_property), (gst_rtp_sv3v_depay_change_state), (gst_rtp_sv3v_depay_plugin_init): * gst/rtp/gstrtpsv3vdepay.h: Added experimental SVQ3 depayloader. 2006-08-18 Edward Hervey * ext/dv/gstdvdemux.c: (gst_dvdemux_handle_pull_seek), (gst_dvdemux_loop), (gst_dvdemux_change_state): * ext/dv/gstdvdemux.h: When handling seek requests, don't send the newsegment event from the calling thread. Instead save it so it can be sent from the streaming thread. 2006-08-17 Wim Taymans Patch by: Sjoerd Simons * gst/multipart/multipartdemux.c: (multipart_parse_header): Accept leading whitespace before the boundary This patch makes the demuxer allow some whitespace before the actual boundary. This makes the demuxer work with the ``old'' gstreamer multipartmuxer again (which placed an extra \n before the start of the stream) Fixes #349068. 2006-08-17 Wim Taymans * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_process): Error out on non-implemented stuff. 2006-08-16 Wim Taymans Patch by: Andy Wingo * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_setup), (gst_signal_processor_start), (gst_signal_processor_stop), (gst_signal_processor_cleanup), (gst_signal_processor_setcaps), (gst_signal_processor_pen_buffer), (gst_signal_processor_flush), (gst_signal_processor_do_pulls), (gst_signal_processor_do_pushes), (gst_signal_processor_change_state): Make ladspa elements reusable. Fixes #350006. 2006-08-16 Wim Taymans * ext/ladspa/gstladspa.c: (gst_ladspa_base_init): Convert ' ' into '_'. Try to keep as many characters in the padtemplate names as possible. Fixes #349901. 2006-08-16 Wim Taymans * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_flush), (gst_signal_processor_do_pushes): A push() gives away our refcount so we should not use the buffer on the pen anymore. 2006-08-16 Tim-Philipp Müller * sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init), (gst_oss_mixer_element_finalize): Don't leak device string. 2006-08-16 Tim-Philipp Müller * configure.ac: Require CVS of GStreamer core and -base (for GST_TAG_EXTENDED_COMMENT and gst_tag_parse_extended_comment()). * ext/taglib/gstid3v2mux.cc: Write extended comment tags properly (#348762). * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_comment_frame): Extract COMM frames into extended comments, which makes it easier to properly retain the description bit of the tag and maintain this information when re-tagging (#348762). 2006-08-16 Tim-Philipp Müller * tests/check/Makefile.am: Don't try to run annodex unit tests if the annodex plugin has not been built (Fixes #351116). 2006-08-16 Tim-Philipp Müller * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_find_best): When we can't find a usable audiosink, don't error out, but use a fake sink instead and post a warning message on the bus (#341278). 2006-08-16 Tim-Philipp Müller * sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init): * sys/oss/gstosssink.c: * sys/oss/gstosssrc.c: Document OSS elements; add gtk-doc blurb with 'Since 0.10.5' for ossmixer's new device property. * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: Add docs for OSS elements. * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: Update to CVS version. 2006-08-16 Wim Taymans * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpmp4gdepay.c: Caps extra properties must be defined as strings for depayloaders because they are generated from an SDP. * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_base_init), (gst_rtp_h264_depay_class_init), (gst_rtp_h264_depay_init), (gst_rtp_h264_depay_finalize), (decode_base64), (gst_rtp_h264_depay_setcaps), (gst_rtp_h264_depay_process), (gst_rtp_h264_depay_set_property), (gst_rtp_h264_depay_get_property), (gst_rtp_h264_depay_change_state), (gst_rtp_h264_depay_plugin_init): * gst/rtp/gstrtph264depay.h: Added basic, not completely functional RFC 3984 H264 depayloader. 2006-08-16 Wim Taymans * gst/rtsp/gstrtpdec.c: (gst_rtpdec_init), (gst_rtpdec_getcaps): Add pads after setting them up. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_free_stream), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_combine_flows), (gst_rtspsrc_loop), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause): * gst/rtsp/gstrtspsrc.h: Fix interleaved mode. - Protect streaming with lock. - Combine flows - set caps on outgoing buffers. - strip trailing \0 from data packets. - Configure RTP/RTCP in stream. Use DEBUG_OBJECT more. 2006-08-16 Wim Taymans * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_add): Turn a g_print into a DEBUG line. 2006-08-13 Wim Taymans * sys/oss/gstossmixer.c: (gst_ossmixer_open), (gst_ossmixer_new): * sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init), (gst_oss_mixer_element_init), (gst_oss_mixer_element_set_property), (gst_oss_mixer_element_get_property), (gst_oss_mixer_element_change_state): * sys/oss/gstossmixerelement.h: Small cleanups. Better error reporting. Add device property for the mixer instead of the hardcoded /dev/mixer. Fixes #350785. API: GstOssMixerElement::device property 2006-08-15 Tim-Philipp Müller Patch by: Jens Granseuer * gconf/Makefile.am: Make --disable-schemas work right (they still need to be copied to the installation directory, just not applied). Fixes #351347 (also #344100). 2006-08-14 Thomas Vander Stichele * configure.ac: back to HEAD === release 0.10.4 === 2006-08-14 Thomas Vander Stichele * configure.ac: releasing 0.10.4, "Dear Leader" 2006-08-10 Thomas Vander Stichele Patch by: Edward Hervey * configure.ac: * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_data): Send the newsegment event in the streaming thread. Fixes #347529 2006-08-08 Tim-Philipp Müller * ext/jpeg/gstsmokedec.c: (gst_smokedec_chain): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_setcaps), (gst_smokeenc_resync), (gst_smokeenc_chain): Refuse sink caps in the encoder if width or height is not a multiple of 16, the encoder does not support that yet (#349939); along the same lines, check the return value of the encoder setup function; also remove some debug log clutter. 2006-08-04 Andy Wingo * ext/ladspa/gstsignalprocessor.h: Add infrastructure for storing whether a processor can work in place or not, and for keeping track of its state. Change the FlowReturn instance variable from "state" to "flow_state", all callers changed. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_setup) (gst_signal_processor_start, gst_signal_processor_stop) (gst_signal_processor_cleanup): New functions to manage the processor's state. (gst_signal_processor_setcaps): start() as well as setup() here. (gst_signal_processor_prepare): Respect CAN_PROCESS_IN_PLACE. (gst_signal_processor_change_state): Stop and cleanup the processor as we go to NULL. * ext/ladspa/gstladspa.c (gst_ladspa_base_init): Reuse buffers if INPLACE_BROKEN is not set. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_prepare): Do the alloc_buffer in bytes, not frames. 2006-08-04 Zaheer Abbas Merali * sys/ximage/ximageutil.c: (ximageutil_xcontext_get): Fix rgb masks when recording in < 24bpp. 2006-08-04 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_setcaps) (gst_signal_processor_prepare) (gst_signal_processor_update_inputs) (gst_signal_processor_process, gst_signal_processor_pen_buffer) (gst_signal_processor_flush) (gst_signal_processor_sink_activate_push) (gst_signal_processor_src_activate_pull) (gst_signal_processor_change_state): Remove the last of the code that assumes that we process whole buffers at a time. Fix some debugging. Seems to work now in some cases. (gst_signal_processor_src_activate_pull): BPB 2006-08-01 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_process): Fix nframes-choosing. (gst_signal_processor_init): Init pending_in and pending_out. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_init): No more default sample rate, although we never check that the sample rate actually gets set. Something for the future. (gst_signal_processor_setcaps): Some refcount fixes, flow fixes. (gst_signal_processor_event): Refcount fixen. (gst_signal_processor_process): Pull the number of frames to process from the sizes of the buffers in the input pens. (gst_signal_processor_pen_buffer): Remove an incorrect FIXME :) (gst_signal_processor_do_pulls): Add an nframes argument, and use it instead of buffer_frames. (gst_signal_processor_getrange): Refcount fixen, pass nframes on to do_pulls. (gst_signal_processor_chain) (gst_signal_processor_sink_activate_push) (gst_signal_processor_src_activate_pull): Refcount fixen. * ext/ladspa/gstsignalprocessor.h: No more buffer_frames, yay. 2006-07-31 Stefan Kost * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_setcaps), (gst_signal_processor_process): don't query buffer-frames from caps, add lots of debug-log, try fix for assert (#349189) 2006-07-31 Wim Taymans * gst/udp/gstudpsrc.c: Fix docs. 2006-07-29 Stefan Kost * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_add_pad_from_template), (gst_signal_processor_init), (gst_signal_processor_setcaps), (gst_signal_processor_process), (gst_signal_processor_pen_buffer), (gst_signal_processor_do_pulls), (gst_signal_processor_getrange), (gst_signal_processor_sink_activate_push), (gst_signal_processor_src_activate_pull), (gst_signal_processor_change_state): Add debugs logs here and there, add more error handling, add some FIXME comments, filed #349189 2006-07-29 Zaheer Abbas Merali * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_getcaps), (gst_smokeenc_setcaps), (gst_smokeenc_chain): Set caps on buffer correctly. Fixes bug #349155. 2006-07-28 Wim Taymans Patch by: Sjoerd Simons * gst/multipart/multipartdemux.c: (gst_multipart_demux_base_init), (gst_multipart_demux_class_init), (gst_multipart_demux_init), (gst_multipart_demux_finalize), (get_line_end), (multipart_parse_header), (multipart_find_boundary), (gst_multipart_demux_chain), (gst_multipart_demux_change_state), (gst_multipart_set_property), (gst_multipart_get_property): Uses GstAdapter instead of own buffering. Actually parses the mime-type correctly (In tests the mime-type was always "" with the old version). Uses the Content-length header if available to speed up things. Reliably autoscans the boundary name by default. Fixes #349068. * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): Don't start the stream with a \n. 2006-07-28 Tim-Philipp Müller Patch by: Brian Cameron * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open): Open source with O_NONBLOCK (#349015). 2006-07-28 Stefan Kost,,, * gst/avi/gstavidemux.c: (gst_avi_demux_stream_index), (gst_avi_demux_massage_index): * gst/avi/gstavidemux.h: Whitespace fixes and more debug 2006-07-27 Tim-Philipp Müller * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_create_element_with_pretty_name), (gst_auto_audio_sink_find_best), (gst_auto_audio_sink_change_state): Get rid of old and unused magic sound-server properties stuff. Add suffix to child sink's name that makes it easy to see from the name alone which type it actually is (alsa, oss, esd, etc.). 2006-07-27 Wim Taymans * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init), (gst_udpsrc_set_property), (gst_udpsrc_get_property), (gst_udpsrc_start): * gst/udp/gstudpsrc.h: Rename "buffer" to "buffer-size" to make clear it is a size we set and not some sort of feature we enable. 2006-07-27 Tim-Philipp Müller * gst/udp/gstudpsrc.c: (gst_udpsrc_start): Use CLOSE_SOCKET() here instead of close() to maintain win32 workiness. 2006-07-27 Wim Taymans Patch by: Thijs Vermeir * 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/udp/gstudpsrc.h: Added "buffer-size" property to control the kernel receive buffer size. Update documentation. Small cleanups. Fixes #348752. API: buffer-size property 2006-07-26 Wim Taymans Patch by: Kai Vehmanen * gst/rtp/gstrtppcmapay.c: (gst_rtp_pcma_pay_flush), (gst_rtp_pcma_pay_handle_buffer): * gst/rtp/gstrtppcmupay.c: (gst_rtp_pcmu_pay_flush), (gst_rtp_pcmu_pay_handle_buffer): Fix timestamp calculation on outgoing RTP packets. Fixes #348675. 2006-07-26 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: Fix writing of comment frames (should be COMM not TCOM), is still sub-optimal though, since we don't retain or extract the comment descriptions properly (#334375, also see #334375). 2006-07-26 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: #define 'fact' RIFF chunk if we are not compiling against -base CVS (we don't want to depend on -base CVS for this one define only, and also not for release order reasons). 2006-07-26 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: Handle multiple tags of the same type properly. Re-inject unparsed ID3v2 frames that we get as binary blobs from id3demux into the tag again so we don't lose information when retagging (#334375). 2006-07-25 Tim-Philipp Müller * sys/ximage/gstximagesrc.c: (gst_ximage_src_class_init): Document newly-added properties properly, so that there is a 'Since: 0.10.4' in the plugin docs. Convert some property names into canonical GObject style (GObject will do that internally anyway). 2006-07-25 Tim-Philipp Müller * gst/id3demux/id3tags.c: (id3demux_add_id3v2_frame_blob_to_taglist): Extract frames for ID3v2 versions prior to ID3v2.3.0 properly as well, and add the version to the blob's buffer caps, since that information will be needed for deserialisation later on (#348644). 2006-07-25 Stefan Kost * gst/avi/gstavidemux.c: (gst_avi_demux_read_subindexes), (gst_avi_demux_parse_stream): Moved win32 variant of GST_DEBUG_CATEGORY_EXTERN to gstinfo.h. Fixed indentation and spacing. 2006-07-24 Tim-Philipp Müller * 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-1394.xml: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-annodex.xml: * docs/plugins/inspect/plugin-apetag.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cdio.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-gdkpixbuf.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-halelements.xml: * docs/plugins/inspect/plugin-icydemux.xml: * docs/plugins/inspect/plugin-id3demux.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobalance.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavparse.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: Update files to CVS/Prerelease version, add esdsink docs. * ext/esd/esdsink.c: Add gtk-doc blurb. * gst/rtp/gstrtpmp4vpay.c: Fix typo in element description. 2006-07-24 Tim-Philipp Müller * ext/esd/esdsink.c: (gst_esdsink_open), (gst_esdsink_factory_init): Prevent libesd from auto-spawning a sound daemon if it is not already running. Now that we don't do evil stuff like that any longer we can give esdsink a rank so that autoaudiosink will try it as well if all other audio sinks fail (#343051). 2006-07-24 Tim-Philipp Müller * ext/esd/Makefile.am: Oops, need to remove README from EXTRA_DIST as well. 2006-07-24 Tim-Philipp Müller * ext/esd/README: Remove, it contains nothing useful anyway. * ext/esd/esdsink.c: (gst_esdsink_init), (gst_esdsink_prepare), (gst_esdsink_delay): Some small clean-ups; use GST_BOILERPLATE etc. 2006-07-24 Wim Taymans * gst/law/alaw-decode.c: (alawdec_getcaps): * gst/law/alaw-encode.c: (alawenc_getcaps), (gst_alawenc_chain): * gst/law/mulaw-decode.c: (mulawdec_getcaps): * gst/law/mulaw-encode.c: (mulawenc_getcaps): Fix negotiation to deal with ANY/EMPTY caps instead of leaking. 2006-07-24 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_reset), (gst_wavparse_other), (gst_wavparse_perform_seek), (gst_wavparse_get_upstream_size), (gst_wavparse_stream_headers), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data), (gst_wavparse_pad_query): * gst/wavparse/gstwavparse.h: Use information from 'fact' chunk for length calculation of compressed samples. Calculate bps if bogus value is found in wav header (embeded mp2/mp3). 2006-07-24 Tim-Philipp Müller Based on patch by: Joni Valtanen * configure.ac: * gst/udp/Makefile.am: * gst/udp/gstdynudpsink.c: (gst_dynudpsink_init), (gst_dynudpsink_finalize), (gst_dynudpsink_close): * gst/udp/gstdynudpsink.h: * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init), (gst_multiudpsink_finalize), (gst_multiudpsink_close): * gst/udp/gstmultiudpsink.h: * gst/udp/gstudp.c: (plugin_init): * gst/udp/gstudpsink.h: * gst/udp/gstudpsrc.c: (gst_udpsrc_init), (gst_udpsrc_create), (gst_udpsrc_start), (gst_udpsrc_stop): * gst/udp/gstudpsrc.h: * gst/udp/gstudpnetutils.c: (gst_udp_net_utils_win32_inet_aton), (gst_udp_net_utils_win32_wsa_startup): * gst/udp/gstudpnetutils.h: Port udp plugin to win32 (#345288). 2006-07-24 Wim Taymans * gst/rtsp/rtspconnection.c: (rtsp_connection_send): Remove unwanted DEBUG line. 2006-07-23 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (plugin_init): * gst/id3demux/id3tags.c: (id3demux_add_id3v2_frame_blob_to_taglist): * gst/id3demux/id3tags.h: On second thought, it might be wiser and more efficient not to do tag registration from a streaming thread. 2006-07-23 Tim-Philipp Müller * gst/id3demux/id3tags.c: (id3demux_add_id3v2_frame_blob_to_taglist), (id3demux_id3v2_frames_to_tag_list): Put ID3v2 frames we can't parse as binary blobs into private tags, so that they are not lost when retagging, at least once id3v2mux has been taught to re-inject those frames again. See bug #334375. 2006-07-21 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_process_next_entry): Fix some leaks. * gst/id3demux/id3tags.c: (id3demux_id3v2_frames_to_tag_list): Don't use \n in debug lines. 2006-07-20 Stefan Kost * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: Add annodex and icydemux, cleanup the sections a bit 2006-07-19 Tim-Philipp Müller Patch by: Alex Lancaster * ext/taglib/gstid3v2mux.cc: Write GST_TAG_ENCODER and GST_TAG_ENCODER_VERSION as ID3v2 TSSE frames (#347898). 2006-07-18 Stefan Kost * gst/avi/gstavimux.c: (gst_avi_mux_vidsink_set_caps): Respect mpegversion for "video/mpeg" and give message in case of unhandled versions. 2006-07-17 Wim Taymans * ext/libpng/gstpngdec.c: (gst_pngdec_init), (buffer_clip), (gst_pngdec_caps_create_and_set), (gst_pngdec_task), (gst_pngdec_chain), (gst_pngdec_sink_event), (gst_pngdec_libpng_init), (gst_pngdec_change_state), (gst_pngdec_sink_activate_push): * ext/libpng/gstpngdec.h: Use statically allocated segment instead of leaking. Various cleanups. Fix flush and seek handling. 2006-07-16 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_base_init), (gst_rtp_mp4g_depay_class_init), (gst_rtp_mp4g_depay_init), (gst_rtp_mp4g_depay_setcaps), (gst_rtp_mp4g_depay_process), (gst_rtp_mp4g_depay_set_property), (gst_rtp_mp4g_depay_get_property), (gst_rtp_mp4g_depay_change_state), (gst_rtp_mp4g_depay_plugin_init): * gst/rtp/gstrtpmp4gdepay.h: * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_class_init), (gst_rtp_mp4g_pay_parse_audio_config), (gst_rtp_mp4g_pay_setcaps), (gst_rtp_mp4g_pay_flush): Added simple generic mpeg4 depayloader. Fix generic mpeg4 payloader. 2006-07-15 Tim-Philipp Müller * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_set_state): Don't try doing state changes on a NULL pointer. 2006-07-14 Wim Taymans Patch by: Sebastien Cote * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_base_init), (gst_rtp_amr_depay_class_init), (gst_rtp_amr_depay_init), (gst_rtp_amr_depay_setcaps), (gst_rtp_amr_depay_process): * gst/rtp/gstrtpamrdepay.h: rtpamrdec isn't a subclass of GstBaseRtpDepayload. Fixes #321191 2006-07-14 Zaheer Abbas Merali * sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get), (gst_ximage_src_get_caps), (gst_ximage_src_class_init): Fix segfault when moving mouse pointer to the bottom right corner. 2006-07-12 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_base_init), (gst_rtp_mp2t_depay_class_init), (gst_rtp_mp2t_depay_init), (gst_rtp_mp2t_depay_setcaps), (gst_rtp_mp2t_depay_process), (gst_rtp_mp2t_depay_set_property), (gst_rtp_mp2t_depay_get_property), (gst_rtp_mp2t_depay_change_state), (gst_rtp_mp2t_depay_plugin_init): * gst/rtp/gstrtpmp2tdepay.h: Added mpeg2 TS depayloader. Closing #347234. 2006-07-11 Tim-Philipp Müller * ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_close): Remove g_assert that shouldn't be there and was triggered after trying to open a device that doesn't exist or can't be opened for some other reason (#347972). 2006-07-10 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_stream_header), (push_tag_lists): * gst/avi/gstavidemux.h: Don't push tag events found by gst_riff_parse_info() before outputting GST_EVENT_NEWSEGMENT. 2006-07-10 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/rtspconnection.c: (rtsp_connection_send), (rtsp_connection_close): * gst/rtsp/rtspdefs.h: replaced closesocket and close in code with one CLOSE_SOCKET. Some more cleanups. Fixes #345301. 2006-07-10 Tim-Philipp Müller * gst/autodetect/gstautoaudiosink.c: Fix example pipeline in docs. 2006-07-10 Wim Taymans Patch by: Rob Taylor * gst/udp/gstmultiudpsink.c: (join_multicast), (gst_multiudpsink_init_send), (gst_multiudpsink_add): If a destination is added before the stream is set to PAUSED, the multicast group is not joined as the socket is not created yet. Also TTL and LOOP should also be set. Fixes #346921. 2006-07-09 Zaheer Abbas Merali * sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get), (gst_ximage_src_set_property), (gst_ximage_src_get_property), (gst_ximage_src_get_caps), (gst_ximage_src_class_init), (gst_ximage_src_init): * sys/ximage/gstximagesrc.h: Fix use-damage property to actually work :) Add startx, starty, endx, endy properties so screencasts other than full screen ones can work. 2006-07-08 Zaheer Abbas Merali * sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get), (gst_ximage_src_set_property), (gst_ximage_src_get_property), (gst_ximage_src_class_init), (gst_ximage_src_init): * sys/ximage/gstximagesrc.h: Add use_damage property to offer ability to choose whether to use XDamage or not. 2006-07-07 Wim Taymans * gst/goom/filters.c: (zoomFilterSetResolution): Avoid goom coredumping by clearing memory. Fixes 345679. 2006-07-05 Sebastien Moutte * win32/vs6/libgstid3demux.dsp: Add a link to libgsttag-0.10.lib. 2006-07-05 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_trim_buffer), (gst_tag_demux_read_range): * gst/id3demux/gstid3demux.c: (gst_id3demux_trim_buffer), (gst_id3demux_read_range): Don't return FLOW_UNEXPECTED when a buffer is before the start of the stream (which might happen with large ID3v2 tags if the tag reading was done pullrange based and we then switched to push mode later on). Fixes regression introduced by commit from June 29th. 2006-07-05 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: Make UTF-8 the default encoding when writing string tags (before, our UTF-8 strings would automatically be converted to ISO-8859-1 by taglib and written as ISO-8859-1 fields if that was possible). * tests/check/elements/id3v2mux.c: (utf8_string_in_buf), (test_taglib_id3mux_check_tag_buffer), (identity_cb), (test_taglib_id3mux_with_tags): Add test case that makes sure our UTF-8 strings have actually been written into the tag as UTF-8. 2006-07-04 Tim-Philipp Müller * configure.ac: Let's try that again. 2006-07-04 Tim-Philipp Müller * configure.ac: Disable monoscope plugin for now until it fulfills all the requirements. 2006-07-03 Tim-Philipp Müller * configure.ac: * gst/monoscope/Makefile.am: * gst/monoscope/gstmonoscope.c: (gst_monoscope_base_init), (gst_monoscope_class_init), (gst_monoscope_init), (gst_monoscope_finalize), (gst_monoscope_reset), (gst_monoscope_sink_setcaps), (gst_monoscope_src_setcaps), (gst_monoscope_src_negotiate), (get_buffer), (gst_monoscope_chain), (gst_monoscope_sink_event), (gst_monoscope_src_event), (gst_monoscope_change_state), (plugin_init): * gst/monoscope/gstmonoscope.h: Port monoscope visualisation to 0.10. 2006-07-03 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain): * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): Return FLOW_UNEXPECTED when at the end of the file, not FLOW_ERROR. Fixes 'internal stream error' errors that would sometimes occur in totem when scrubbing to the end of an ID3v1 tagged mp3 file. 2006-07-03 Edward Hervey * ext/libpng/gstpngdec.c: (gst_pngdec_init), (user_info_callback), (buffer_clip), (user_end_callback), (gst_pngdec_chain), (gst_pngdec_sink_event), (gst_pngdec_change_state): * ext/libpng/gstpngdec.h: Implement buffer clipping/dropping using GstSegment. This provides accurate seeking. 2006-07-03 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_read_subindexes), (gst_avi_demux_parse_stream), (gst_avi_demux_handle_seek), (gst_avi_demux_aggregated_flow), (gst_avi_demux_process_next_entry), (push_tag_lists), (gst_avi_demux_stream_data), (gst_avi_demux_loop): * gst/avi/gstavidemux.h: Proper aggregation of each stream's GstFlowReturn in order to figure out whether the task should stop or not. Don't send inline events before pushing out a NEW_SEGMENT, more specifically for GST_TAG_EVENT. Change a GST_ERROR to a GST_WARNING for a non-fatal situation in reading sub-indexes. 2006-06-30 Tim-Philipp Müller Patch by: Brian Cameron * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_build_list): Move "Monitor" slider to input tab so it works more like sdtaudiocontrol, which is what people on Solaris are used to using for their mixer program (#346259). 2006-06-29 Thomas Vander Stichele * tests/check/elements/level.c: (GST_START_TEST): fix a leak, clean up at the end 2006-06-29 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_send_event), (gst_matroska_demux_loop_stream_parse_id): * gst/matroska/matroska-ids.h: Send tag event after newsegment event. 2006-06-29 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (gst_id3demux_trim_buffer), (gst_id3demux_read_range): Make sure we don't return GST_FLOW_OK with a NULL buffer in certain cases where a read beyond the end of the file is requested. Fixes #345930. * gst/apetag/gsttagdemux.c: (gst_tag_demux_trim_buffer), (gst_tag_demux_read_range): Fix same issue here as well. 2006-06-29 Zaheer Abbas Merali * sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get): Fix hypothetical crash. 2006-06-28 Tim-Philipp Müller Patch by: Brian Cameron * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_prepare): Do not modify the ports value. If the user has turned off the built-in speakers, then we should not reset it in the prepare function, since this causes the built-in speakers to turn back on anytime the user changes a track in totem, rhythmbox, etc. (#346066). 2006-06-23 Wim Taymans * gst/goom/gstgoom.c: (gst_goom_src_negotiate): Fix double caps unref when negotiation fails. 2006-06-22 Tim-Philipp Müller * ext/annodex/gstcmmldec.c: * ext/annodex/gstcmmlenc.c: * ext/annodex/gstcmmlparser.c: * ext/dv/gstdvdec.c: * ext/dv/gstdvdemux.c: * ext/gdk_pixbuf/pixbufscale.c: * ext/jpeg/gstjpegenc.c: * ext/jpeg/gstsmokedec.c: * ext/jpeg/gstsmokeenc.c: * ext/libpng/gstpngdec.c: * ext/libpng/gstpngenc.c: * ext/speex/gstspeexenc.c: * gst/alpha/gstalphacolor.c: * gst/cutter/gstcutter.c: * gst/debug/gstnavigationtest.c: * gst/icydemux/gsticydemux.c: * gst/level/gstlevel.c: * gst/multipart/multipart.c: * gst/rtp/gstrtpamrpay.c: * gst/rtp/gstrtpdepay.c: * gst/rtp/gstrtpilbcpay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vpay.c: * gst/rtsp/gstrtpdec.c: * gst/rtsp/gstrtspsrc.c: * gst/udp/gstdynudpsink.c: * gst/udp/gstmultiudpsink.c: * gst/udp/gstudpsrc.c: * gst/videobox/gstvideobox.c: * gst/videofilter/gstvideoflip.c: Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) plus two minor macro fixes. 2006-06-22 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_check_subtitle_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_subtitle_context): * gst/matroska/matroska-ids.h: Try to fix up broken matroska files containing subtitle streams with non-UTF8 character encodings (courtesy of mkvmerge) using either the encoding specified in the GST_SUBTITLE_ENCODING environment variable or the current locale's character set if it is non-UTF8. Fixes #337076. 2006-06-22 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (parse_picture_frame): Set image type from APIC frame as "image-type" field of GST_TAG_IMAGE buffer caps (#344605). 2006-06-20 Tim-Philipp Müller * ext/flac/Makefile.am: * ext/flac/gstflacdec.c: (gst_flac_dec_init), (gst_flac_dec_reset_decoders), (gst_flac_dec_setup_seekable_decoder), (gst_flac_dec_setup_stream_decoder), (gst_flac_dec_finalize), (gst_flac_dec_metadata_callback), (gst_flac_dec_metadata_callback_seekable), (gst_flac_dec_metadata_callback_stream), (gst_flac_dec_error_callback), (gst_flac_dec_error_callback_seekable), (gst_flac_dec_error_callback_stream), (gst_flac_dec_read_seekable), (gst_flac_dec_read_stream), (gst_flac_dec_write), (gst_flac_dec_write_seekable), (gst_flac_dec_write_stream), (gst_flac_dec_loop), (gst_flac_dec_sink_event), (gst_flac_dec_chain), (gst_flac_dec_convert_sink), (gst_flac_dec_get_sink_query_types), (gst_flac_dec_sink_query), (gst_flac_dec_get_src_query_types), (gst_flac_dec_src_query), (gst_flac_dec_handle_seek_event), (gst_flac_dec_sink_activate), (gst_flac_dec_sink_activate_push), (gst_flac_dec_sink_activate_pull), (gst_flac_dec_change_state): * ext/flac/gstflacdec.h: Support chain-based operation, should make flac-over-DAAP work (#340492). 2006-06-20 Wim Taymans * docs/plugins/gst-plugins-good-plugins-sections.txt: Doc updates, merge some unused symbols. 2006-06-20 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * gst/rtsp/gstrtpdec.c: (gst_rtpdec_class_init): * gst/rtsp/gstrtspsrc.c: * gst/rtsp/gstrtspsrc.h: Added documentation for the rtsp plugin. Fixes #345393. 2006-06-20 Wim Taymans * gst/rtsp/rtspconnection.c: (inet_aton), (rtsp_connection_send), (rtsp_connection_close), (rtsp_connection_free): Use better G_OS_* macros. Fixes #345301 some more. 2006-06-20 Wim Taymans Patch by: Brian Cameron * sys/sunaudio/Makefile.am: * sys/sunaudio/gstsunaudio.c: (plugin_init): * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_build_list), (gst_sunaudiomixer_ctrl_new), (gst_sunaudiomixer_ctrl_list_tracks), (gst_sunaudiomixer_ctrl_get_volume), (gst_sunaudiomixer_ctrl_set_volume), (gst_sunaudiomixer_ctrl_set_mute), (gst_sunaudiomixer_ctrl_set_record): * sys/sunaudio/gstsunaudiomixerctrl.h: * sys/sunaudio/gstsunaudiomixertrack.c: (gst_sunaudiomixer_track_init), (gst_sunaudiomixer_track_new): * sys/sunaudio/gstsunaudiomixertrack.h: * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_dispose), (gst_sunaudiosrc_base_init), (gst_sunaudiosrc_class_init), (gst_sunaudiosrc_init), (gst_sunaudiosrc_set_property), (gst_sunaudiosrc_get_property), (gst_sunaudiosrc_getcaps), (gst_sunaudiosrc_open), (gst_sunaudiosrc_close), (gst_sunaudiosrc_prepare), (gst_sunaudiosrc_unprepare), (gst_sunaudiosrc_read), (gst_sunaudiosrc_delay), (gst_sunaudiosrc_reset): * sys/sunaudio/gstsunaudiosrc.h: Add a SunAudio source plugin. Support stereo and right/left channel gain in the mixer plugin. Support the RECORD flag so that you can switch between line-input and microphone in gnome-volume-control. Code cleanups like using an enumerator for track number instead of an integer. Fixes #344923. 2006-06-20 Wim Taymans Patch by: Joni Valtanen * gst/rtsp/rtspconnection.c: (inet_aton), (rtsp_connection_send), (rtsp_connection_close): Make RTSP plugin compile on windows. Fixes #345301. Some changes to original patch to catch errors better. use ifdef WIN32 instead of ifndef. 2006-06-19 Zaheer Abbas Merali * configure.ac: If we have libraw1394 >= 1.2.1, then we need libiec61883. 2006-06-18 Edward Hervey * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): After a failed buffer alloc, we need to abort the jpeg decoding (it started when parsing headers to figure out how many bytes we need to request downstream). 2006-06-18 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek): Make sure we don't read beyond the end of the file (#345232). 2006-06-17 Tim-Philipp Müller * configure.ac: Fix --disable-external (can't set conditionals conditionally, #343602). 2006-06-16 Tim-Philipp Müller * autogen.sh: * configure.ac: * docs/Makefile.am: Use GST_PLUGIN_DOCS, --enable-plugin-docs etc. * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/inspect/plugin-taglib.xml: Add/fix apev2mux docs. 2006-06-14 Wim Taymans * ext/dv/gstdvdec.c: (gst_dvdec_class_init), (gst_dvdec_init), (gst_dvdec_finalize), (gst_dvdec_sink_event), (gst_dvdec_change_state): Reset segment info on flush. Alloc segment in _init, free in _finalize. * ext/dv/gstdvdemux.c: (gst_dvdemux_handle_pull_seek): Don't send segments twice. 2006-06-14 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame): Respect segment.stop. Fixes #342592. 2006-06-14 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): No language specified means the implied language is English according to the matroska spec (partially fixes #344708); add some more debug output. 2006-06-14 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_peek_chunk_info), (gst_wavparse_peek_chunk), (gst_wavparse_stream_headers), (gst_wavparse_chain): When operating chain-based, don't make any assumptions about the chunking of the incoming data and make streaming work on days other than the second Thursday after a full moon. Also fix up debug messages here and there and make use of the most excellent new gst_pad_query_peer_duration() utility function. Skip any 'bext' chunks in front of the 'fmt ' chunk. Fixes #343837. * gst/wavparse/gstwavparse.h: Remove trailing comma after last enum value, some compilers don't like that. 2006-06-13 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_data): Handle premature EOS gracefully. 2006-06-13 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek): Prevent out of bounds array access when scrubbing towards the end of the file between the last index entry and the end. Fixes occasional 'start <= stop' newsegment event assertions when scrubbing in MJPEG files. 2006-06-12 Tim-Philipp Müller * tests/check/elements/.cvsignore: And another one. 2006-06-11 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (scan_encoded_string), (parse_picture_frame): Extract images from ID3v2 tags (APIC frames). Fixes #339704. * configure.ac: Require core >= 0.10.8 (for GST_TAG_IMAGE and GST_TAG_PPEVIEW_IMAGE used in the patch above). 2006-06-11 Thomas Vander Stichele * ext/raw1394/gstdv1394src.c: (gst_dv1394src_discover_avc_node): gratuitous comment changes * tests/check/elements/level.c: (GST_START_TEST): fix level test leaks 2006-06-11 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_get_upstream_size): * gst/id3demux/gstid3demux.c: (id3demux_get_upstream_size): Use gst_pad_query_peer_duration() utility function here. 2006-06-11 Thomas Vander Stichele * autogen.sh: require am17 * configure.ac: * ext/annodex/Makefile.am: * ext/cdio/Makefile.am: * ext/dv/Makefile.am: * ext/esd/Makefile.am: * ext/flac/Makefile.am: * ext/gdk_pixbuf/Makefile.am: * ext/ladspa/Makefile.am: * ext/libcaca/Makefile.am: * ext/speex/Makefile.am: * ext/taglib/Makefile.am: * sys/oss/Makefile.am: * sys/sunaudio/Makefile.am: * sys/ximage/Makefile.am: clean up build further 2006-06-09 Tim-Philipp Müller * gconf/Makefile.am: Honour --disable-schemas-install configure option. Fixes #344100. 2006-06-09 Tim-Philipp Müller * tests/examples/level/Makefile.am: Add -lm to LIBS for pow() function, don't assume one of our dependencies (such as libxml-2.0) drags it in automatically (#343603). 2006-06-09 Tim-Philipp Müller Patch by: Peter Kjellerstedt * configure.ac: We should use $SED and not $(SED) in configure.ac (#343678). 2006-06-09 Wim Taymans Patch by: Brian Cameron * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_open), (gst_sunaudiomixer_ctrl_build_list), (gst_sunaudiomixer_ctrl_new), (gst_sunaudiomixer_ctrl_set_volume), (gst_sunaudiomixer_ctrl_set_mute): * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_class_init), (gst_sunaudiosink_init), (gst_sunaudiosink_prepare), (gst_sunaudiosink_write): Attached find a patch that fixes a number of bugs with the SunAudio mixer plugin and fixes #344101: 1. The gst_sunaudiomixer_ctrl_build_list kept appending the same 3 tracks onto the tracklist causing gnome-volume-control's preferences dialog to be messed up and would core dump if you checked/unchecked any item. 2. We weren't previously setting the MUTE flag properly. Fixing this makes gnome-volume-control work better. 3. Now we properly define the input track to be GST_MIXER_TRACK_INPUT and the monitor to be GST_MIXER_TRACK_OUTPUT, so that makes gnome-volume-control look better. Also some minor cleanup in gstsunaudiosink.c. 2006-06-09 Wim Taymans * ext/jpeg/gstjpegdec.c: (gst_idct_method_get_type), (gst_jpeg_dec_class_init), (gst_jpeg_dec_init), (gst_jpeg_dec_decode_indirect), (gst_jpeg_dec_decode_direct), (gst_jpeg_dec_chain), (gst_jpeg_dec_sink_event), (gst_jpeg_dec_set_property), (gst_jpeg_dec_get_property): * ext/jpeg/gstjpegdec.h: API: Added IDCT method property Small cleanups. Avoid dynamic allocation of trivial fixed structure. Allocate enough space for temp 4:4:4 YUV buffers. Fixes #343661. 2006-06-07 Zaheer Abbas Merali * configure.ac: We now require libraw1394 >= 1.1.0 and that version onwards all have .pc files. 2006-06-02 Edward Hervey * gst/law/alaw-decode.c: (alawdec_getcaps): Trying to get items from an ANY or EMPTY caps is ... stupid. 2006-06-02 Edward Hervey * ext/dv/gstdvdec.c: (gst_dvdec_init), (gst_dvdec_sink_event), (gst_dvdec_chain), (gst_dvdec_change_state): * ext/dv/gstdvdec.h: Added GstSegment handling, now implements dropping/clipping. 2006-06-01 Stefan Kost * ext/aalib/gstaasink.h: * ext/annodex/gstcmmldec.h: * ext/cairo/gsttimeoverlay.h: * ext/dv/gstdvdec.h: * ext/dv/gstdvdemux.h: * ext/esd/esdmon.h: * ext/esd/esdsink.h: * ext/flac/gstflacenc.h: * ext/gconf/gstgconfaudiosink.h: * ext/gconf/gstgconfaudiosrc.h: * ext/gconf/gstgconfvideosink.h: * ext/gconf/gstgconfvideosrc.h: * ext/gdk_pixbuf/gstgdkanimation.h: * ext/gdk_pixbuf/pixbufscale.h: * ext/hal/gsthalaudiosink.h: * ext/hal/gsthalaudiosrc.h: * ext/jpeg/gstjpegenc.h: * ext/jpeg/gstsmokedec.h: * ext/jpeg/gstsmokeenc.h: * ext/libcaca/gstcacasink.h: * ext/libmng/gstmngdec.h: * ext/libmng/gstmngenc.h: * ext/libpng/gstpngdec.h: * ext/libpng/gstpngenc.h: * ext/raw1394/gstdv1394src.h: * ext/speex/gstspeexenc.h: * gst/autodetect/gstautoaudiosink.h: * gst/autodetect/gstautovideosink.h: * gst/avi/gstavidemux.h: * gst/cutter/gstcutter.h: * gst/debug/efence.h: * gst/debug/gstnavigationtest.h: * gst/debug/gstnavseek.h: * gst/flx/gstflxdec.h: * gst/goom/gstgoom.h: * gst/icydemux/gsticydemux.h: * gst/id3demux/gstid3demux.h: * gst/law/alaw-decode.h: * gst/law/alaw-encode.h: * gst/law/mulaw-decode.h: * gst/law/mulaw-encode.h: * gst/matroska/matroska-mux.h: * gst/median/gstmedian.h: * gst/oldcore/gstaggregator.h: * gst/oldcore/gstfdsink.h: * gst/oldcore/gstmd5sink.h: * gst/oldcore/gstmultifilesrc.h: * gst/oldcore/gstpipefilter.h: * gst/oldcore/gstshaper.h: * gst/oldcore/gststatistics.h: * gst/rtp/gstasteriskh263.h: * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtpL16pay.h: * gst/rtp/gstrtpamrdepay.h: * gst/rtp/gstrtpamrpay.h: * gst/rtp/gstrtpdepay.h: * gst/rtp/gstrtpgsmdepay.h: * gst/rtp/gstrtpgsmpay.h: * gst/rtp/gstrtph263pay.h: * gst/rtp/gstrtph263pdepay.h: * gst/rtp/gstrtph263ppay.h: * gst/rtp/gstrtpmp4gpay.h: * gst/rtp/gstrtpmp4vdepay.h: * gst/rtp/gstrtpmp4vpay.h: * gst/rtp/gstrtpmpadepay.h: * gst/rtp/gstrtpmpapay.h: * gst/rtp/gstrtppcmadepay.h: * gst/rtp/gstrtppcmapay.h: * gst/rtp/gstrtppcmudepay.h: * gst/rtp/gstrtppcmupay.h: * gst/rtp/gstrtpspeexdepay.h: * gst/rtp/gstrtpspeexpay.h: * gst/rtsp/gstrtpdec.h: * gst/rtsp/gstrtspsrc.h: * gst/smpte/gstsmpte.h: * gst/udp/gstdynudpsink.h: * gst/udp/gstmultiudpsink.h: * gst/udp/gstudpsink.h: * gst/udp/gstudpsrc.h: * gst/videofilter/gstvideobalance.h: * gst/videofilter/gstvideoflip.h: * sys/oss/gstossdmabuffer.h: * sys/oss/gstossmixerelement.h: * sys/oss/gstosssink.h: * sys/oss/gstosssrc.h: * sys/osxvideo/osxvideosink.h: * sys/sunaudio/gstsunaudiomixer.h: * sys/sunaudio/gstsunaudiosink.h: * sys/ximage/gstximagesrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-05-31 Wim Taymans * gst/goom/gstgoom.c: (gst_goom_class_init), (gst_goom_init), (gst_goom_finalize), (gst_goom_reset), (gst_goom_sink_setcaps), (gst_goom_src_setcaps), (gst_goom_src_event), (gst_goom_sink_event), (get_buffer), (gst_goom_chain), (gst_goom_change_state): * gst/goom/gstgoom.h: Handle QoS. Handle flushing, discont and events. Fix timestamps and various other cleanups. 2006-05-31 Zaheer Abbas Merali * ext/raw1394/gstdv1394src.c: (gst_dv1394src_bus_reset): Fix bus reset when using libiec61883 2006-05-31 Zaheer Abbas Merali * configure.ac: Detect libiec61883 and set necessary CFLAGS and LIBS for dv1394. * ext/raw1394/Makefile.am: Add CFLAGS. * ext/raw1394/gstdv1394src.c: (gst_dv1394src_iec61883_receive), New method, to receive using libiec61883. (gst_dv1394src_iso_receive), #ifdef'd out if libiec61883 is present. (gst_dv1394src_bus_reset), Get userdata correctly if using libiec61883. (gst_dv1394src_create), When using libiec61883, only poll one fd and no need to read. (gst_dv1394src_discover_avc_node), Replace g_warnings. (gst_dv1394src_start), Create new handle when we know which dv port. More reliable than setting port on an existing handle. Initialise libiec61883. (gst_dv1394src_stop): If using libiec61883, then cleanup its handle properly. * ext/raw1394/gstdv1394src.h: Add libiec61883 handle. 2006-05-30 Sebastien Moutte * gst/avi/gstavidemux.c: add an explicit dll imported declaration for GST_CAT_EVENT+WIN32 * win32/MANIFEST: sort file listing * win32/vs6/libgstavi.dsp: add gstavimux.c to the project * win32/vs6/libgstid3demux.dsp: add link to zlib library * win32/vs6/libgstmatroska.dsp: add matroska-ids.c to the project 2006-05-30 Tim-Philipp Müller Patch by: Sebastian Dröge * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * ext/taglib/Makefile.am: * ext/taglib/gstapev2mux.cc: * ext/taglib/gstapev2mux.h: * ext/taglib/gstid3v2mux.cc: * ext/taglib/gsttaglibmux.c: (plugin_init): * ext/taglib/gsttaglibmux.h: Add apev2mux element (#343122). * tests/check/Makefile.am: * tests/check/elements/apev2mux.c: (test_taglib_apev2mux_create_tags), (test_taglib_apev2mux_check_tags), (fill_mp3_buffer), (got_buffer), (demux_pad_added), (test_taglib_apev2mux_check_output_buffer), (test_taglib_apev2mux_with_tags), (GST_START_TEST), (apev2mux_suite), (main): Add unit test for apev2mux element. 2006-05-28 Tim-Philipp Müller * gst/alpha/gstalphacolor.c: (gst_alpha_color_transform_caps): * gst/debug/negotiation.c: (gst_negotiation_update_caps): * gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_setcaps): GST_PTR_FORMAT should be used to print caps in debug statements. 2006-05-28 Tim-Philipp Müller Patch by: Sebastian Dröge * gst/apetag/gstapedemux.c: (ape_demux_get_gst_tag_from_tag), (ape_demux_parse_tags): Some clean-ups and additions: map APE 'file' tag to GST_TAG_LOCATION (#343123); add support for extracting the track count and clean up parsing a bit (#343127). 2006-05-28 Edward Hervey * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_change_state): Initialize segment to GST_FORMAT_UNDEFINED in READY->PAUSED. 2006-05-28 Edward Hervey * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_finalize), (gst_jpeg_dec_init), (gst_jpeg_dec_chain), (gst_jpeg_dec_sink_event), (gst_jpeg_dec_change_state): * ext/jpeg/gstjpegdec.h: Clip outgoing buffers according to currently configured segment. 2006-05-28 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: Handle writing of track-count or album-volume-count without track-number or albume-volume-number (in this case the number will just be set to 0). * tests/check/elements/id3v2mux.c: (test_taglib_id3mux_check_tags): It would be nice if we actually checked the values received for track/album-volume number/count in _check_tags(), rather than setting them again ... 2006-05-28 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (id3v2_tag_to_taglist): A track/volume number or count of 0 does not make sense, just ignore it along with negative numbers (a tag might only contain a track count without a track number). 2006-05-27 Edward Hervey * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_init), (gst_jpeg_dec_sink_event): Abort decompression when receiving FLUSH_STOP. This should avoid issues when interrupting decoding with flushes. 2006-05-27 Tim-Philipp Müller * ext/flac/gstflac.c: Don't #include file we don't dist any longer. 2006-05-27 Tim-Philipp Müller * README: Replace current README (containing the release notes from some 0.9.x version) with a proper README taken from the core. 2006-05-24 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_loop): Implement EOS correctly by either posting SEGMENT_DONE or pushing an EOS message depending on the seek type. Fixes #342592 2006-05-24 Wim Taymans * gst/law/alaw-decode.c: (gst_alawdec_chain): * gst/law/alaw-decode.h: * gst/law/alaw-encode.c: (gst_alawenc_chain): * gst/law/alaw-encode.h: * gst/law/mulaw-decode.c: (gst_mulawdec_chain): * gst/law/mulaw-decode.h: * gst/law/mulaw-encode.c: (gst_mulawenc_chain): * gst/law/mulaw-encode.h: Some cleanups in the chain functions. Remove some GStreamer 0.0.2 bits. 2006-05-23 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/matroska/matroska-mux.c: (gst_matroska_mux_change_state): gst_collect_pads_stop() needs to be called before chaining up to the parent class (#342734). 2006-05-23 Tim-Philipp Müller * ext/flac/Makefile.am: * ext/flac/flac_compat.h: * ext/flac/gstflac.c: * ext/flac/gstflacdec.c: (gst_flac_dec_init): * ext/flac/gstflacenc.c: Remove backwards compatibility cruft for dealing with FLAC API changes in the 1.0.x series - we require 1.1.1 or newer these days. 2006-05-23 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init), (gst_matroska_mux_video_pad_setcaps), (xiph3_streamheader_to_codecdata), (vorbis_streamheader_to_codecdata), (theora_streamheader_to_codecdata), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_write_data): Add support for muxing/demuxing theora video (#342448; too bad none of the usual linux players can actually play this). Playback in GStreamer will require additional changes to theoradec in -base. Refactor streamheaders <=> CodecPrivateData code a bit; some small cleanups. 2006-05-22 Tim-Philipp Müller * ext/jpeg/gstjpegdec.c: (hresamplecpy1), (gst_jpeg_dec_decode_indirect), (gst_jpeg_dec_chain): Fix crashes when the horizontal subsampling is 1. Fixes #342097. 2006-05-22 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/avi/gstavimux.c: (gst_avi_mux_finalize), (gst_avi_mux_init), (gst_avi_mux_vidsink_set_caps), (gst_avi_mux_audsink_set_caps), (gst_avi_mux_write_tag), (gst_avi_mux_riff_get_avi_header), (gst_avi_mux_riff_get_avix_header), (gst_avi_mux_write_avix_index), (gst_avi_mux_add_index), (gst_avi_mux_bigfile), (gst_avi_mux_start_file), (gst_avi_mux_stop_file), (gst_avi_mux_handle_event), (gst_avi_mux_do_audio_buffer), (gst_avi_mux_do_video_buffer), (gst_avi_mux_do_one_buffer), (gst_avi_mux_change_state): * gst/avi/gstavimux.h: Some enhancements for avimux (#342526): - add odml (large file) index support - store codec init data (e.g. huffyuv) - miscellaneous other fixes/cleanups 2006-05-19 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3v2_tag_to_taglist): Don't output any tag when we encounter a negative track number - the tag type is uint, so we end up outputting huge positive numbers instead. (Fixes: #342029) 2006-05-19 Thomas Vander Stichele * configure.ac: update for new GSTPB_PLUGINS_DIR 2006-05-18 Philippe Kalaf * rtp/gst/gstrtph263pay.c: Properly set static caps for H263 at 34. 2006-05-18 Tim-Philipp Müller Patch by: James "Doc" Livingston * ext/taglib/gsttaglibmux.c: (gst_tag_lib_mux_render_tag): Merge event tags and tag setter tags correctly (#339918). Also, don't leak taglist in case of an error. 2006-05-17 Edward Hervey * gst/law/mulaw-decode.c: (mulawdec_getcaps): We can only do caps intersection if the othercaps are non-empty and not ANY. Else we return the pad template (base_caps). 2006-05-17 Tim-Philipp Müller * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): Fix crash when outputting debugging information for certain pictures (always good to use the right struct member for the number of records in an array). 2006-05-16 Tim-Philipp Müller Patch by: Jindrich Makovicka * gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes), (gst_ebml_read_pull_bytes), (gst_ebml_read_element_id), (gst_ebml_read_element_length), (gst_ebml_read_buffer), (gst_ebml_read_bytes), (gst_ebml_read_uint), (gst_ebml_read_sint), (gst_ebml_read_float), (gst_ebml_read_ascii), (gst_ebml_read_binary): Don't create unnecessary sub-buffers all the time. Dramatically improves performance with multiple concurrently running matroskademux instances (#341818) (and avoids doing unnecessarily inefficient things in the general case). 2006-05-16 Edward Hervey * ext/libpng/gstpngenc.c: (gst_pngenc_chain): In snapshot mode, we always return GST_FLOW_UNEXPECTED whatever the return value of gst_pad_push_event(). 2006-05-16 Jan Schmidt * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_find_best): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_find_best): Make the name of the child element be based on the name of the parent, so that debug output is more useful. * gst/id3demux/id3v2frames.c: (find_utf16_bom), (parse_insert_string_field), (parse_split_strings): Rework string parsing to always walk over BOM markers in UTF16 strings, using the endianness indicated by the innermost one, then trying the opposite endianness if that fails to convert to valid UTF-8. Fixes #341774 2006-05-16 Zaheer Abbas Merali Patch from: Matthieu * ext/libpng/Makefile.am: Add LIBPNG_CFLAGS. 2006-05-15 Tim-Philipp Müller * ext/taglib/gstid3v2mux.cc: Add support for writing images (APIC frames) into ID3v2 tags (picture type always set to 'other' for now though). 2006-05-14 Michael Smith * gst/wavparse/gstwavparse.c: Update docs; wavparse implements push and pull modes. 2006-05-12 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_index_next), (gst_avi_demux_parse_index), (gst_avi_demux_massage_index), (gst_avi_demux_handle_seek), (gst_avi_demux_loop): Ooops, bitten by the copy-and-paste design paradigm, fixes seek again. 2006-05-12 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_index_next), (gst_avi_demux_handle_src_query), (gst_avi_demux_handle_src_event), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_push_event), (gst_avi_demux_stream_header), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_loop): * gst/avi/gstavidemux.h: Some cleanups, prepare to use GstSegment. Fix error in entry walking code. Fix VBR detection. Smarter timestamp calculation code. Uniform error/eos handling. 2006-05-12 Michael Smith * gst/wavparse/gstwavparse.c: (gst_wavparse_fmt), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers): Fix use of uninitialised values if we're NOT seeking in ready. Fix typos. 2006-05-12 Tim-Philipp Müller * gst/wavparse/Makefile.am: Add CFLAGS and LIBS for libgstbase, fixes build on Cygwin (#341489). 2006-05-10 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (parse_insert_string_field): Some more debug info. No need to check whether the string returned by g_convert() is really UTF-8 - either it is or we get NULL returned. 2006-05-10 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3v2_genre_fields_to_taglist): Fix parsing of numeric genre strings some more, by ensuring that we only try and parse strings that a) Start with '(' and b) Consist only of digits. Also, when finding an escaping '((' sequence, bust it back to '(' by swallowing the first parenthesis 2006-05-10 Tim-Philipp Müller * ext/esd/esdsink.c: (gst_esdsink_finalize), (gst_esdsink_getcaps), (gst_esdsink_open), (gst_esdsink_close): * ext/esd/esdsink.h: Move the esd_get_server_info() into gst_esdsink_open() and fail with a decent error message on errors. 2006-05-09 Tim-Philipp Müller * ext/esd/esdmon.c: (gst_esdmon_depths_get_type), (gst_esdmon_channels_get_type): * ext/gconf/gstgconfaudiosink.c: (gst_gconf_profile_get_type): * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_method_get_type): * ext/libcaca/gstcacasink.c: (gst_cacasink_dither_get_type): * ext/shout2/gstshout2.c: (gst_shout2send_protocol_get_type): * gst/alpha/gstalpha.c: (gst_alpha_method_get_type): * gst/rtp/gstrtpilbcdepay.c: (gst_ilbc_mode_get_type): * gst/rtsp/gstrtspsrc.c: (gst_rtsp_proto_get_type): * gst/videobox/gstvideobox.c: (gst_video_box_fill_get_type): * gst/videofilter/gstvideoflip.c: (gst_video_flip_method_get_type): * gst/videomixer/videomixer.c: (gst_video_mixer_background_get_type): Const-ify GEnumValue arrays. 2006-05-09 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/avi/gstavimux.c: (gst_avi_mux_do_audio_buffer), (gst_avi_mux_do_video_buffer): Work around gst_buffer_make_metadata_writable() bug that results in avimux marking all frames in the index as keyframes (#340859). 2006-05-08 Wim Taymans * gst/rtsp/rtspurl.c: (rtsp_url_parse): Make parsing of urls suck slightly less. 2006-05-08 Edward Hervey * autogen.sh: (CONFIGURE_DEF_OPT): libtoolize on Darwin/MacOSX is called glibtoolize. 2006-05-08 Wim Taymans Patch by: Jens Granseuer * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_init): * gst/wavparse/gstwavparse.c: (gst_wavparse_dispose): C89 compliance fixes. Fixes #340980 2006-05-06 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_loop): * ext/flac/gstflacdec.h: Handle segment seeks that include the end of the file as stop point properly: when the decoder hits EOS we want to send a SEGMENT_DONE message instead of an EOS event in case we're in segment seek mode (fixes #340699). 2006-05-05 Maciej Katafiasz * ext/cairo/gsttextoverlay.c: * ext/flac/gstflacdec.c: * ext/gdk_pixbuf/pixbufscale.c: * gst/apetag/gstapedemux.c: * gst/debug/breakmydata.c: * gst/debug/testplugin.c: * gst/matroska/ebml-write.c: * gst/multipart/multipartdemux.c: * sys/osxaudio/gstosxaudiosink.c: * sys/osxaudio/gstosxaudiosrc.c: Add semicolons after GST_BOILERPLATE[_FULL] so that indent doesn't mess up following lines. 2006-05-04 Tim-Philipp Müller Patch by: Michal Benes * gst/matroska/matroska-demux.c: (gst_matroska_demux_reset): Don't leak caps when freeing the stream context (#340623). 2006-05-04 Jan Schmidt * configure.ac: Back to CVS === release 0.10.3 === 2006-05-04 Jan Schmidt * configure.ac: releasing 0.10.3, "Desplazado" 2006-05-03 Tim-Philipp Müller * gst/matroska/matroska-mux.c: (gst_matroska_mux_stream_is_vorbis_header), (gst_matroska_mux_write_data): Don't strcmp() NULL strings. Only start new clusters on video keyframes, not on any random audio buffer that doesn't have the DELTA_UNIT flag set (fixes 'make check' again). 2006-05-03 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/matroska/matroska-mux.c: (gst_matroska_mux_best_pad), (gst_matroska_mux_stream_is_vorbis_header), (gst_matroska_mux_write_data): Don't misinterpret GST_CLOCK_TIME_NONE as very high timestamp value and then dead-lock when muxing vorbis audio streams (the three vorbis header buffers carry no timestamp, and it would try to mux these after all video buffers). Fixes #340346. Improve clustering: start a new cluster also whenever we get a keyframe. 2006-05-03 Thomas Vander Stichele * win32/common/config.h: * win32/MANIFEST add the generated file as well 2006-05-03 Thomas Vander Stichele * Makefile.am: * configure.ac: * win32/common/config.h.in: add win32 stuff 2006-05-03 Michael Smith * ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_transform): Fix timeoverlay for non-multiple-of-4 widths. This fourcc crap SUCKS. 2006-05-02 Stefan Kost * gst/alpha/gstalphacolor.c: (gst_alpha_color_transform_caps): * gst/debug/negotiation.c: (gst_negotiation_update_caps): * gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_setcaps): don't leak caps-string 2006-05-02 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (gst_id3demux_chain), (gst_id3demux_sink_activate): Let core insert default error message for TYPE_NOT_FOUND errors, it's just as good as our own and has the added bonus of being translated. 2006-05-02 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_init), (gst_tag_demux_sink_event): * gst/id3demux/gstid3demux.c: (gst_id3demux_init), (gst_id3demux_sink_event): Post an error message when we get an EOS event and were not able to find out the type of stream. * tests/check/elements/id3v2mux.c: (fill_mp3_buffer), (got_buffer), (test_taglib_id3mux_with_tags): Decrease num-buffers to 16 per iteration again, otherwise the many memcpy()s and reallocations in the test will hammer slow CPUs completely and make the test timeout. 2006-05-02 Thomas Vander Stichele * configure.ac: figure out where plugins-base plugins are * tests/check/Makefile.am: use plugins-base plugins, so we have typefind functions * tests/check/elements/id3v2mux.c: (test_taglib_id3mux_with_tags): increase num-buffers, this makes sure the test errors out instead of timing out when no typefind functions are present 2006-05-01 Thomas Vander Stichele * docs/plugins/Makefile.am: also check .cc files for gtk-doc markup * configure.ac: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * tests/check/Makefile.am: * tests/check/elements/id3v2mux.c: (id3v2mux_suite), (main): * ext/Makefile.am: * ext/taglib/Makefile.am: * ext/taglib/gstid3v2mux.h: * ext/taglib/gsttaglibmux.c: * ext/taglib/gsttaglibmux.h: move taglib-based id3v2muxer to -good. Fixes #336110. 2006-04-29 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): ... and fix multichannel/WAVFORMATEX support again. 2006-04-29 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init), (gst_wavparse_class_init), (gst_wavparse_dispose), (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_create_sourcepad), (gst_wavparse_parse_adtl), (gst_wavparse_parse_cues), (gst_wavparse_parse_file_header), (gst_wavparse_stream_init), (gst_wavparse_perform_seek), (gst_wavparse_peek_chunk_info), (gst_wavparse_peek_chunk), (gst_wavparse_stream_headers), (gst_wavparse_parse_stream_init), (gst_wavparse_send_event), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_chain), (gst_wavparse_srcpad_event), (gst_wavparse_sink_activate), (gst_wavparse_sink_activate_pull), (gst_wavparse_change_state), (plugin_init): * gst/wavparse/gstwavparse.h: Add push (streaming) mode to wavparse (fixes #337625) 2006-04-28 Thomas Vander Stichele * configure.ac: * tests/Makefile.am: add ximagesrc icles test 2006-04-28 Thomas Vander Stichele * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * ext/annodex/gstcmmlenc.c: (gst_cmml_enc_class_init), (gst_cmml_enc_push_clip): * sys/Makefile.am: * sys/ximage/Makefile.am: * sys/ximage/gstximagesrc.c: Move ximagesrc plug-in to good after review. Fixes #336756. 2006-04-28 Michael Smith * gst/icydemux/gsticydemux.c: (gst_icydemux_reset), (gst_icydemux_init), (gst_icydemux_sink_setcaps), (gst_icydemux_add_srcpad), (gst_icydemux_parse_and_send_tags), (gst_icydemux_handle_event), (gst_icydemux_send_cached_events), (gst_icydemux_typefind_or_forward), (gst_icydemux_add_meta), (gst_icydemux_chain), (gst_icydemux_send_tag_event): * gst/icydemux/gsticydemux.h: Fix event handling: cache events when typefinding and forward later. 2006-04-28 Zaheer Abbas Merali * sys/osxaudio/gstosxaudiosink.c: (plugin_init): Register osxaudiosrc to the plugin. * sys/osxaudio/gstosxaudiosrc.c: (gst_osx_audio_src_osxelement_do_init), (gst_osx_audio_src_base_init), (gst_osx_audio_src_class_init), (gst_osx_audio_src_init), (gst_osx_audio_src_set_property), (gst_osx_audio_src_get_property), (gst_osx_audio_src_create_ringbuffer), (gst_osx_audio_src_io_proc), (gst_osx_audio_src_osxelement_init): * sys/osxaudio/gstosxaudiosrc.h: Port of osxaudiosrc to 0.10. * sys/osxaudio/Makefile.am: Add osxaudiosrc 2006-04-26 Zaheer Abbas Merali * sys/osxaudio/gstosxringbuffer.c: * sys/osxaudio/gstosxringbuffer.h: Forgot to commit earlier, part of the OSX audio plugin port 2006-04-28 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (has_utf16_bom), (parse_split_strings): Recognise and skip any byte order marker (BOM) in UTF-16 strings. 2006-04-27 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-avi.xml: * gst/avi/gstavidemux.c: * gst/avi/gstavimux.c: Add docs for both avidemux and avimux. 2006-04-27 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/avi/Makefile.am: * gst/avi/gstavi.c: (plugin_init): * gst/avi/gstavimux.c: (gst_avi_mux_get_type), (gst_avi_mux_base_init), (gst_avi_mux_finalize), (gst_avi_mux_class_init), (gst_avi_mux_init), (gst_avi_mux_vidsink_set_caps), (gst_avi_mux_audsink_set_caps), (gst_avi_mux_pad_link), (gst_avi_mux_pad_unlink), (gst_avi_mux_request_new_pad), (gst_avi_mux_release_pad), (gst_avi_mux_write_tag), (gst_avi_mux_riff_get_avi_header), (gst_avi_mux_riff_get_avix_header), (gst_avi_mux_riff_get_video_header), (gst_avi_mux_riff_get_audio_header), (gst_avi_mux_add_index), (gst_avi_mux_write_index), (gst_avi_mux_bigfile), (gst_avi_mux_start_file), (gst_avi_mux_stop_file), (gst_avi_mux_restart_file), (gst_avi_mux_handle_event), (gst_avi_mux_fill_queue), (gst_avi_mux_send_pad_data), (gst_avi_mux_strip_buffer), (gst_avi_mux_do_audio_buffer), (gst_avi_mux_do_video_buffer), (gst_avi_mux_do_one_buffer), (gst_avi_mux_loop), (gst_avi_mux_collect_pads), (gst_avi_mux_get_property), (gst_avi_mux_set_property), (gst_avi_mux_change_state): * gst/avi/gstavimux.h: Port AVI muxer to GStreamer-0.10 (#332031). * tests/check/Makefile.am: * tests/check/elements/avimux.c: * tests/check/elements/.cvsignore: Add unit test for AVI muxer. 2006-04-27 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init), (gst_wavparse_class_init), (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_create_sourcepad), (gst_wavparse_parse_file_header), (gst_wavparse_stream_init), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_send_event), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_srcpad_event), (gst_wavparse_sink_activate), (gst_wavparse_sink_activate_pull), (gst_wavparse_change_state), (plugin_init): * gst/wavparse/gstwavparse.h: reverted patch #337625 for the price of 1 hour sleep 2006-04-26 Stefan Kost * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init), (gst_wavparse_class_init), (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_create_sourcepad), (gst_wavparse_parse_adtl), (gst_wavparse_parse_cues), (gst_wavparse_parse_file_header), (gst_wavparse_stream_init), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_chain), (plugin_init): * gst/wavparse/gstwavparse.h: correct partial implementation of push mode (from my last commit) 2006-04-26 Wim Taymans * ext/esd/esdsink.c: Fix compile problem by defining ESD_MAX_WRITE_SIZE if it is not in esd.h 2006-04-26 Tim-Philipp Müller * gst/auparse/gstauparse.c: (gst_au_parse_base_init), (gst_au_parse_class_init), (gst_au_parse_init), (gst_au_parse_reset), (gst_au_parse_add_srcpad), (gst_au_parse_remove_srcpad), (gst_au_parse_parse_header), (gst_au_parse_chain), (gst_au_parse_src_convert), (gst_au_parse_src_query), (gst_au_parse_handle_seek), (gst_au_parse_sink_event), (gst_au_parse_src_event), (gst_au_parse_change_state): * gst/auparse/gstauparse.h: Rewrite auparse to suck a little bit less: make source pad dynamic, so decodebin/playbin work with non-raw formats like alaw/mulaw; add query function for duration/position queries; check whether we have enough data before attempting to parse the header (instead of crashing when that is not the case); work around audioconvert sucking by swapping endianness to the native endianness ourselves for float formats; send initial newsegment event. Fixes #161712. 2006-04-26 Zaheer Abbas Merali * sys/osxaudio/Makefile.am: * sys/osxaudio/gstosxaudioelement.c: (gst_osx_audio_element_get_type), (gst_osx_audio_element_class_init): * sys/osxaudio/gstosxaudioelement.h: * sys/osxaudio/gstosxaudiosink.c: (gst_osx_audio_sink_osxelement_do_init), (gst_osx_audio_sink_base_init), (gst_osx_audio_sink_class_init), (gst_osx_audio_sink_init), (gst_osx_audio_sink_set_property), (gst_osx_audio_sink_get_property), (gst_osx_audio_sink_getcaps), (gst_osx_audio_sink_create_ringbuffer), (gst_osx_audio_sink_io_proc), (gst_osx_audio_sink_osxelement_init), (plugin_init): * sys/osxaudio/gstosxaudiosink.h: Port of osxaudiosink to 0.10 2006-04-26 Wim Taymans * ext/esd/esdsink.c: (gst_esdsink_prepare), (gst_esdsink_delay): Always write ESD_BUF_SIZE bytes and use ESD_MAX_WRITE_SIZE as the size of the ringbuffer. This should fix hangs with older esd sound servers. 2006-04-26 Stefan Kost * ext/aalib/gstaasink.c: * ext/annodex/gstcmmldec.c: * ext/annodex/gstcmmlenc.c: * ext/cairo/gsttextoverlay.c: * ext/cairo/gsttimeoverlay.c: * ext/cdio/gstcdiocddasrc.c: * ext/dv/gstdvdec.c: * ext/dv/gstdvdemux.c: * ext/esd/esdmon.c: * ext/esd/esdsink.c: * ext/flac/gstflacenc.c: * ext/flac/gstflactag.c: * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_base_init): * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_base_init): * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_base_init): * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_base_init): * ext/gdk_pixbuf/pixbufscale.c: * ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_base_init): * ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_base_init): * ext/jpeg/gstjpegdec.c: * ext/jpeg/gstjpegenc.c: * ext/jpeg/gstsmokedec.c: * ext/jpeg/gstsmokeenc.c: * ext/libcaca/gstcacasink.c: * ext/libmng/gstmngdec.c: * ext/libmng/gstmngenc.c: * ext/libpng/gstpngdec.c: * ext/libpng/gstpngenc.c: * ext/mikmod/gstmikmod.c: * ext/raw1394/gstdv1394src.c: * ext/shout2/gstshout2.c: (gst_shout2send_init): * ext/shout2/gstshout2.h: * ext/speex/gstspeexdec.c: * ext/speex/gstspeexenc.c: * gst/alpha/gstalpha.c: * gst/alpha/gstalphacolor.c: * gst/apetag/gstapedemux.c: * gst/auparse/gstauparse.c: * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_base_init): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_base_init): * gst/avi/gstavidemux.c: (gst_avi_demux_base_init): * gst/avi/gstavimux.c: (gst_avimux_base_init): * gst/cutter/gstcutter.c: * gst/debug/breakmydata.c: * gst/debug/efence.c: * gst/debug/gstnavigationtest.c: * gst/debug/gstnavseek.c: * gst/debug/negotiation.c: * gst/debug/progressreport.c: * gst/debug/testplugin.c: * gst/effectv/gstaging.c: * gst/effectv/gstdice.c: * gst/effectv/gstedge.c: * gst/effectv/gstquark.c: * gst/effectv/gstrev.c: * gst/effectv/gstshagadelic.c: * gst/effectv/gstvertigo.c: * gst/effectv/gstwarp.c: * gst/flx/gstflxdec.c: * gst/goom/gstgoom.c: * gst/icydemux/gsticydemux.c: * gst/id3demux/gstid3demux.c: * gst/interleave/deinterleave.c: * gst/interleave/interleave.c: * gst/law/alaw-decode.c: (gst_alawdec_base_init): * gst/law/alaw-encode.c: (gst_alawenc_base_init): * gst/law/mulaw-decode.c: (gst_mulawdec_base_init): * gst/law/mulaw-encode.c: (gst_mulawenc_base_init): * gst/level/gstlevel.c: * gst/matroska/matroska-demux.c: (gst_matroska_demux_base_init): * gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init): * gst/median/gstmedian.c: * gst/monoscope/gstmonoscope.c: * gst/multipart/multipartdemux.c: * gst/multipart/multipartmux.c: * gst/oldcore/gstaggregator.c: * gst/oldcore/gstfdsink.c: * gst/oldcore/gstmd5sink.c: * gst/oldcore/gstmultifilesrc.c: * gst/oldcore/gstpipefilter.c: * gst/oldcore/gstshaper.c: * gst/oldcore/gststatistics.c: * gst/rtp/gstasteriskh263.c: * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpL16pay.c: * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpamrpay.c: * gst/rtp/gstrtpdepay.c: * gst/rtp/gstrtpgsmpay.c: * gst/rtp/gstrtph263pay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtpilbcdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vdepay.c: * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmpadepay.c: * gst/rtp/gstrtpmpapay.c: * gst/rtp/gstrtppcmadepay.c: * gst/rtp/gstrtppcmapay.c: * gst/rtp/gstrtppcmudepay.c: * gst/rtp/gstrtppcmupay.c: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: * gst/rtsp/gstrtpdec.c: * gst/rtsp/gstrtspsrc.c: * gst/smpte/gstsmpte.c: * gst/udp/gstdynudpsink.c: * gst/udp/gstmultiudpsink.c: * gst/udp/gstudpsink.c: * gst/udp/gstudpsrc.c: * gst/videobox/gstvideobox.c: * gst/videofilter/gstgamma.c: (gst_gamma_base_init): * gst/videofilter/gstvideobalance.c: * gst/videofilter/gstvideoflip.c: * gst/videofilter/gstvideotemplate.c: (gst_videotemplate_base_init): * gst/videomixer/videomixer.c: * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init), (gst_wavparse_class_init), (gst_wavparse_dispose), (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_perform_seek), (gst_wavparse_peek_chunk_info), (gst_wavparse_peek_chunk), (gst_wavparse_stream_headers), (gst_wavparse_parse_stream_init), (gst_wavparse_send_event), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data), (gst_wavparse_chain), (gst_wavparse_srcpad_event), (gst_wavparse_sink_activate), (gst_wavparse_sink_activate_pull), (gst_wavparse_change_state): * gst/wavparse/gstwavparse.h: * sys/oss/gstossmixerelement.c: * sys/oss/gstosssink.c: * sys/oss/gstosssrc.c: * sys/osxaudio/gstosxaudioelement.c: * sys/osxaudio/gstosxaudiosink.c: * sys/osxaudio/gstosxaudiosrc.c: * sys/sunaudio/gstsunaudiomixer.c: * sys/sunaudio/gstsunaudiosink.c: Define GstElementDetails as const and also static (when defined as global) 2006-04-25 Tim-Philipp Müller * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): Source pad has fixed caps. If we don't set this, bad things happen when the window is resized. 2006-04-25 Tim-Philipp Müller * gst/matroska/Makefile.am: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_handle_src_event): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_video_context), (gst_matroska_track_init_audio_context), (gst_matroska_track_init_subtitle_context), (gst_matroska_track_init_complex_context): * gst/matroska/matroska-ids.h: Handle case where the TrackType ebml chunk does not come before the TrackInfoAudio or TrackInfoVideo ebml chunk (#339446). Ignore QoS events. 2006-04-25 Wim Taymans * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_setcaps): * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_setcaps): It's codec_data, not codec_info. 2006-04-25 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps): Handle codec_data for VfW compatibility codec IDs (#339451) * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): Same here, handle codec_data and add additional caps we can handle now to the pad template (huffyuv, dv and h263 video) (#339451) 2006-04-25 Tim-Philipp Müller Patch by: Josef Zlomek * gst/matroska/matroska-mux.c: (gst_matroska_mux_create_buffer_header), (gst_matroska_mux_write_data): Fix timestamping of B-frames, use signed integers, do some rounding (#339678). 2006-04-24 Edgard Lima * ext/annodex/gstcmmlparser.c: (gst_cmml_parser_generic_error): just make it compile with --disable-gst-debug. 2006-04-23 Sebastien Moutte * gst/matroska/matroska-demux.c: (gst_matroskademux_do_index_seek): Fix a bad conversion using gst_guint64_to_gdouble. fabs ((gdouble) demux->index[entry].time - (gdouble) seek_pos) can not be replaced by fabs (gst_guint64_to_gdouble (demux->index[entry].time - seek_pos)) as the difference could be negative. fabs (gst_guint64_to_gdouble (demux->index[entry].time) - gst_guint64_to_gdouble (seek_pos)) is the good solution. Thanks to Tim who has seen my mistake. 2006-04-21 Sebastien Moutte * gst/matroska/matroska-demux.c: (gst_matroskademux_do_index_seek): Use gst_guint64_to_gdouble for conversions * win32/vs6/gst_plugins_good.dsw: * win32/vs6/libgsticydemux.dsp: Add a project file for icydemux 2006-04-21 Wim Taymans Patch by: Fabrizio Gennari * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_massage_index): When splitting audio chunks, the block alignment is not taken in consideration, so the smaller chunks could be of size which is not a multiple of the block alignment. Fixes #336904 2006-04-21 Wim Taymans * ext/raw1394/gstdv1394src.c: (gst_dv1394src_convert): Use scale functions 2006-04-21 Tim-Philipp Müller * ext/dv/gstdv.c: (plugin_init): Fix build. 2006-04-21 Tim-Philipp Müller * gst/debug/progressreport.c: (gst_progress_report_finalize), (gst_progress_report_class_init), (gst_progress_report_init), (gst_progress_report_do_query), (gst_progress_report_report), (gst_progress_report_set_property), (gst_progress_report_get_property): Add 'format' property to force querying to a particular format. 2006-04-21 Andy Wingo * ext/dv/gstdv.c (plugin_init): libdv is a marginal decoder, at best, on big endian systems. Drop its rank in that case. OTOH on x86 it's quite fine. See changes from today in gst-ffmpeg as well. 2006-04-21 Michael Smith * configure.ac: * gst/icydemux/Makefile.am: * gst/icydemux/gsticydemux.c: (gst_icydemux_get_type), (gst_icydemux_base_init), (gst_icydemux_class_init), (gst_icydemux_reset), (gst_icydemux_init), (gst_icydemux_sink_setcaps), (gst_icydemux_dispose), (gst_icydemux_add_srcpad), (gst_icydemux_remove_srcpad), (unicodify), (gst_icydemux_unicodify), (gst_icydemux_parse_and_send_tags), (gst_icydemux_typefind_or_forward), (gst_icydemux_add_meta), (gst_icydemux_chain), (gst_icydemux_change_state), (gst_icydemux_send_tag_event), (plugin_init): * gst/icydemux/gsticydemux.h: * tests/check/Makefile.am: * tests/check/elements/icydemux.c: (typefind_succeed), (plugin_init), (icydemux_found_pad), (create_icydemux), (cleanup_icydemux), (push_data), (GST_START_TEST), (icydemux_suite), (main): Add icydemux, and tests. 2006-04-20 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_loop): Post SEGMENT_DONE message in TIME format. 2006-04-20 Tim-Philipp Müller Patch by: Fabrizio Gennari * gst/avi/gstavidemux.c: (gst_avi_demux_peek_tag), (gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan): Fix index creation when we have to scan the file to create an index. There may be other types of RIFF 'LIST' chunks than 'movi' and we need to skip them properly as well or we'll end up reading garbage (#336889). Some other cosmetic changes. 2006-04-20 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_loop), (gst_flac_dec_handle_seek_event): Add support for segment seeks (fixes #338290). Also demote some recurring debug message from DEBUG to LOG level. 2006-04-20 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroskademux_do_index_seek), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_parse_blockgroup_or_simpleblock): * gst/matroska/matroska-ids.h: Set DISCONT flag on first buffer after a discontinuity. Fix newsegment events sent when seeking and honour KEY_UNIT seek flag. Create pad with bogus caps if we don't recognise the stream codec id. * gst/matroska/matroska-demux.h: Fix GObject macros. 2006-04-20 Tim-Philipp Müller Patch by: Mark Nauwelaerts * gst/matroska/matroska-demux.c: (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_loop): Handle end of segment properly when set; don't dead-lock when posting start of segment message when doing a segment seek. Fixes #338810. 2006-04-20 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_audio_caps), (gst_matroska_demux_plugin_init): Make mpeg2 aac audio work: create artificial private codec data chunk which faad2 seems to require, just as we do for mpeg4 aac. Also call gst_riff_init(). Partially fixes #338767. 2006-04-19 Tim-Philipp Müller * gst/wavenc/gstwavenc.c: (gst_wavenc_base_init), (gst_wavenc_class_init), (gst_wavenc_init), (gst_wavenc_create_header_buf), (gst_wavenc_push_header), (gst_wavenc_sink_setcaps), (get_id_from_name), (gst_wavenc_event), (gst_wavenc_chain), (gst_wavenc_change_state): * gst/wavenc/gstwavenc.h: Set caps on first outgoing buffer, so that it doesn't error out immediately with a non-negotiated error (#338716). Rewrite and clean up a bit; fix setcaps function to parse things properly; fix sink caps (8bit audio is unsigned and doesn't have depth); use boilerplate macros; remove unused properties stuff. 2006-04-18 Tim-Philipp Müller * ext/gdk_pixbuf/gstgdkpixbuf.c: Leave JPEG decoding to our jpegdec plugin. gdkpixbufdec cannot handle MJPEG streams and might be autoplugged for those if the user doesn't have jpegdec installed (resulting in a cryptic error message about huffman tables). Better to disable JPEG decoding here and let the user figure out that she needs to install jpegdec. 2006-04-18 Tim-Philipp Müller * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_setcaps), (gst_gdk_pixbuf_class_init), (gst_gdk_pixbuf_init), (gst_gdk_pixbuf_flush), (gst_gdk_pixbuf_chain): * ext/gdk_pixbuf/gstgdkpixbuf.h: Make work with packetised/framed input (e.g. png-in-quicktime). Use GST_ELEMENT_ERROR when we return GST_FLOW_ERROR. Add some GST_DEBUG_FUNCPTR here and there. Use GST_LOG for recurring debug messages. Fix boilerplate macros. 2006-04-18 Tim-Philipp Müller * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_get_capslist), (gst_gdk_pixbuf_set_property), (gst_gdk_pixbuf_get_property): No need to special-case for Gdk-2.0 any longer, we require Gdk 2.2 or newer; minor clean-ups. 2006-04-18 Tim-Philipp Müller * ext/shout2/gstshout2.c: (gst_shout2send_base_init), (gst_shout2send_class_init), (gst_shout2send_init), (set_shout_metadata), (gst_shout2send_set_metadata), (gst_shout2send_event), (gst_shout2send_start), (gst_shout2send_connect), (gst_shout2send_stop), (gst_shout2send_render), (gst_shout2send_set_property), (gst_shout2send_get_property), (gst_shout2send_setcaps), (plugin_init): * ext/shout2/gstshout2.h: * po/POTFILES.in: Rewrite a bit: use GstBaseSink::start and stop instead of a state change function; use GST_ELEMENT_ERROR for error reporting, not g_error() or GST_ERROR(); don't unref caps in setcaps function, will cause crashes or assertion failures; remove (unused) "sync" property, basesink already has such a property; misc. other minor fixes and cleanups. 2006-04-18 Tim-Philipp Müller * ext/esd/esdsink.c: (gst_esdsink_open), (gst_esdsink_prepare): * ext/esd/gstesd.c: (plugin_init): * po/POTFILES.in: Add translatable error message for when we cannot connect to the sound server, as "Cannot open resource for writing" isn't really an acceptable message to show to the user in this case. 2006-04-18 Tim-Philipp Müller * sys/oss/gst-i18n-plugin.h: Remove bogus file that doesn't belong here. 2006-04-17 Tim-Philipp Müller Patch by: Philippe Valembois * ext/shout2/gstshout2.c: (gst_shout2send_init), (gst_shout2send_set_metadata), (gst_shout2send_event), (gst_shout2send_render), (gst_shout2send_change_state): * ext/shout2/gstshout2.h: Handle tags being received before the connection to the server is established properly (see #338636). 2006-04-17 Tim-Philipp Müller * ext/shout2/gstshout2.c: (gst_shout2send_render): Don't crash in case the connection to the server fails: don't set pointer to NULL by assigning FALSE; error out properly by using GST_ELEMENT_ERROR and returning GST_FLOW_ERROR (fixes #338636). Lastly, free connection before resetting the pointer. 2006-04-17 Jan Schmidt * gst/id3demux/id3tags.c: Recognise TCO (Genre) tags in ID3v2.2. Patch by Alex Lancaster (Fixes #338713) 2006-04-12 Wim Taymans * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_setcaps), (gst_gdk_pixbuf_get_capslist), (gst_gdk_pixbuf_sink_getcaps), (gst_gdk_pixbuf_class_init), (gst_gdk_pixbuf_init), (gst_gdk_pixbuf_flush), (gst_gdk_pixbuf_sink_event), (gst_gdk_pixbuf_chain): Some cleanups. Added RGBA as a possible output format. Correctly free the supported mimetypes. deprecate silent arg, it's not used. Return result from _alloc_buffer to peer. 2006-04-11 Tim-Philipp Müller * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_process): Don't leak memory allocated by gst_buffer_new_and_alloc() by overwriting GST_BUFFER_MALLOCDATA. 2006-04-11 Tim-Philipp Müller * ext/libpng/gstpngdec.c: (gst_pngdec_init), (user_endrow_callback), (user_end_callback), (gst_pngdec_caps_create_and_set), (gst_pngdec_chain), (gst_pngdec_sink_setcaps), (gst_pngdec_sink_event), (gst_pngdec_libpng_clear), (gst_pngdec_change_state): * ext/libpng/gstpngdec.h: Handle more than one frame if the content is framed, like with png-in-quicktime (#331917). 2006-04-10 Thomas Vander Stichele * sys/oss/Makefile.am: * sys/oss/common.h: * sys/oss/gstosssink.c: (gst_oss_sink_init), (gst_oss_sink_open), (gst_oss_sink_prepare), (gst_oss_sink_unprepare): * sys/oss/gstosssrc.c: (gst_oss_src_prepare), (gst_oss_src_unprepare): - the user-visible error strings were in the wrong category - and the messages were not marked for translation - which is actually a good thing, because they were exactly the kind of message you would never want anyone to see - the macros were using variables that didn't exist in the macro arguments - and they were obviously copied from each other and then modified - so a common header makes sense 2006-04-10 Tim-Philipp Müller * gst/matroska/ebml-read.c: (gst_ebml_read_sint): Don't try to modify read-only data. * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup_or_simpleblock): Fix comment (won't crash any longer now). 2006-04-10 Michael Smith * ext/annodex/gstcmmlenc.c: (gst_cmml_enc_set_header_on_caps): Use copies of header buffers for caps to avoid circular refcounting problems (as in theoradec, vorbisdec). * tests/check/elements/cmmldec.c: (GST_START_TEST): Fix a typo in test that meant it was testing the wrong thing. * tests/check/elements/cmmlenc.c: (check_headers): Fix refcount checks now that we use buffer-copies for caps. 2006-04-10 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_base_init), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps), (gst_matroska_demux_subtitle_caps), (gst_matroska_demux_plugin_init): Use static pad templates with ANY caps for audio and video source pads and get rid of a lot of unnecessary (and partially broken) code for the template caps. Clean up caps finding functions. Fixes playback of audio files/streams that do not contain the sample rate and/or number of channels in the audio context (happens a lot with vorbis/mp3 .mka files it seems). Fixes #337183. Also add myself to copyright holders. 2006-04-10 Michael Smith * ext/annodex/gstcmmlutils.c: (gst_cmml_track_list_del_clip): Use g_list_delete_link () instead of g_list_remove_link () so that we free the link as well as the contained data. 2006-04-10 Wim Taymans Patch by: Ryan Lortie (desrt) * gst/avi/gstavidemux.c: (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_header): Fix some crashers with empty chunks. (Fixes #337749) 2006-04-09 Sebastien Moutte * gst/level/gstlevel.c: (gst_level_set_caps),(gst_level_transform_ip): use G_GINT64_CONSTANT for INT64 constants * gst/videofilter/gstvideobalance.c: define rint for WIN32 #define rint(x) (floor((x)+0.5)) * win32/vs6/libgstavi.dsp: add missing libraries for the link and remove avimux.c from the project as it isn't ported to 0.10 yet 2006-04-09 Tim-Philipp Müller * gst/matroska/ebml-read.c: (gst_ebml_read_sint): Even better would be if we actually did the right thing here (also, G_GUINT64_CONSTANT only exists since GLib-2.10). 2006-04-08 Tim-Philipp Müller * gst/matroska/ebml-read.c: (gst_ebml_read_sint): Can't just replace 1LL with 1L here just because MSVC doesn't support it, as it might lead to incorrect results when doing the bitshifting here. Using GLib's G_GUINT64_CONSTANT() macro to force a 64-bit constant in a way that all compilers are happy with. 2006-04-08 Stefan Kost * ext/aalib/gstaasink.c: (gst_aasink_class_init): * ext/esd/esdsink.c: (gst_esdsink_class_init): * ext/flac/gstflactag.c: (gst_flac_tag_class_init): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_class_init): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_class_init): * ext/jpeg/gstsmokedec.c: (gst_smokedec_class_init): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_class_init): * ext/libcaca/gstcacasink.c: (gst_cacasink_class_init): * ext/libmng/gstmngdec.c: (gst_mngdec_class_init): * ext/libmng/gstmngenc.c: (gst_mngenc_class_init): * ext/libpng/gstpngdec.c: (gst_pngdec_class_init): * ext/libpng/gstpngenc.c: (gst_pngenc_class_init): * ext/mikmod/gstmikmod.c: (gst_mikmod_class_init): * ext/shout2/gstshout2.c: (gst_shout2send_class_init): * ext/speex/gstspeexenc.c: (gst_speexenc_class_init): * gst/alpha/gstalpha.c: (gst_alpha_class_init): * gst/avi/gstavimux.c: (gst_avimux_class_init): * gst/debug/efence.c: (gst_efence_class_init): * gst/debug/negotiation.c: (gst_negotiation_class_init): * gst/flx/gstflxdec.c: (gst_flxdec_class_init): * gst/goom/gstgoom.c: (gst_goom_class_init): * gst/id3demux/gstid3demux.c: (gst_id3demux_class_init): * gst/interleave/deinterleave.c: (deinterleave_class_init): * gst/interleave/interleave.c: (interleave_class_init): * gst/law/alaw-decode.c: (gst_alawdec_class_init): * gst/law/alaw-encode.c: (gst_alawenc_class_init): * gst/law/mulaw-encode.c: (gst_mulawenc_class_init): * gst/median/gstmedian.c: (gst_median_class_init): * gst/monoscope/gstmonoscope.c: (gst_monoscope_class_init): * gst/multipart/multipartmux.c: (gst_multipart_mux_class_init): * gst/rtp/gstasteriskh263.c: (gst_asteriskh263_class_init): * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16depay_class_init): * gst/rtp/gstrtpL16pay.c: (gst_rtpL16pay_class_init): * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_class_init): * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_class_init): * gst/rtp/gstrtpdepay.c: (gst_rtp_depay_class_init): * gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_class_init): * gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_class_init): * gst/rtp/gstrtph263pay.c: (gst_rtp_h263_pay_class_init): * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_class_init): * gst/rtp/gstrtph263ppay.c: (gst_rtp_h263p_pay_class_init): * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_class_init): * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init): * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_class_init): * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_class_init): * gst/rtp/gstrtpmpapay.c: (gst_rtp_mpa_pay_class_init): * gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_class_init): * gst/rtp/gstrtppcmapay.c: (gst_rtp_pcma_pay_class_init): * gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_class_init): * gst/rtp/gstrtppcmupay.c: (gst_rtp_pcmu_pay_class_init): * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_class_init): * gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_class_init): * gst/rtsp/gstrtpdec.c: (gst_rtpdec_class_init): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init): * gst/smpte/gstsmpte.c: (gst_smpte_class_init): * gst/udp/gstdynudpsink.c: (gst_dynudpsink_class_init): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init): * gst/udp/gstudpsink.c: (gst_udpsink_class_init): * gst/videomixer/videomixer.c: (gst_videomixer_class_init): * gst/wavenc/gstwavenc.c: (gst_wavenc_class_init): * sys/oss/gstossdmabuffer.c: (gst_ossdmabuffer_class_init): * sys/oss/gstosssink.c: (gst_oss_sink_class_init): * sys/osxaudio/gstosxaudioelement.c: (gst_osxaudioelement_class_init): * sys/osxaudio/gstosxaudiosink.c: (gst_osxaudiosink_class_init): * sys/osxaudio/gstosxaudiosrc.c: (gst_osxaudiosrc_class_init): * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_class_init): Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) 2006-04-08 Stefan Kost * ext/mikmod/gstmikmod.h: * gst/level/gstlevel.h: Fix more broken GObject macros 2006-04-08 Stefan Kost * ext/annodex/gstcmmldec.h: * ext/annodex/gstcmmlenc.h: * ext/annodex/gstcmmltag.h: * ext/cairo/gsttextoverlay.h: * ext/ladspa/gstsignalprocessor.h: * gst/matroska/ebml-read.h: * gst/matroska/ebml-write.h: * sys/osxaudio/gstosxaudioelement.h: Fix broken GObject macros 2006-04-08 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_handle_seek_event): Don't try to seek beyond the end of the file (would occasionally display error dialogs in totem when seeking to the end) (#335869). Will still throw an error though if the file is truncated and the total_samples value in the stream header is wrong. 2006-04-07 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_calculate_crc8), (gst_flac_dec_scan_got_frame), (gst_flac_dec_scan_for_last_block), (gst_flac_dec_metadata_callback): * ext/flac/gstflacdec.h: If the stream header doesn't contain the total number of samples, search for the last flac frame at the end of the file and calculate the total duration from that frame's offset (fixes #337609). 2006-04-07 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream): Don't unref the GstPadTemplate returned by gst_element_class_get_pad_template(). 2006-04-06 Tim-Philipp Müller Patch by: Brian Cameron * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_init), (gst_sunaudiosink_prepare), (gst_sunaudiosink_write): * sys/sunaudio/gstsunaudiosink.h: Use spec->segsize and spec->segtotal in the prepare function to initialise the ring buffer instead of using the buffer-time property (#337421). 2006-04-06 Tim-Philipp Müller * configure.ac: Bump core requirements to CVS for gst_pad_query_peer_duration() which is used by speexdec. 2006-04-05 Tim-Philipp Müller * ext/speex/gstspeex.c: (plugin_init): * ext/speex/gstspeexdec.c: (gst_speex_dec_class_init), (gst_speex_dec_reset), (gst_speex_dec_init), (speex_dec_convert), (speex_get_sink_query_types), (speex_dec_sink_query), (speex_get_src_query_types), (speex_dec_src_query), (speex_dec_src_event), (speex_dec_sink_event), (speex_dec_chain_parse_header), (speex_dec_chain_parse_comments), (speex_dec_chain_parse_data), (speex_dec_chain), (gst_speex_dec_get_property), (gst_speex_dec_set_property), (speex_dec_change_state): * ext/speex/gstspeexdec.h: Fix seeking and duration queries (#337033); clean up and refactor a bit. 2006-04-05 Thomas Vander Stichele * ext/raw1394/gstdv1394src.c: distinguish between device not found and could not open for reading 2006-04-03 Thomas Vander Stichele * Makefile.am: * configure.ac: * pkgconfig/.cvsignore: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-good-uninstalled.pc.in: add a .pc file so other modules can use good plugins in tests 2006-04-01 Thomas Vander Stichele * configure.ac: clean up, use AS_VERSION and AS_NANO * gst/matroska/matroska-mux.c: (gst_matroska_mux_start): use PACKAGE_VERSION define * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: updated 2006-03-31 Sebastien Moutte * ext\jpeg\smokecodec.c: use of GST_DEBUG instead of DEBUG(a...) for WIN32 * ext\speex\gstspeexenc.c: (gst_speexenc_set_header_on_caps): move first instruction after all variables declarations * gst\alpha\gstalpha.c: * gst\effectv\gstshagadelic.c: * gst\smpte\paint.c: * gst\videofilter\gstvideobalance.c: define M_PI if it's not defined (it's not defined on WIN32) * gst\cutter\gstcutter.c: (gst_cutter_chain): * gst\id3demux\id3v2frames.c: (parse_relative_volume_adjustment_two): * gst\level\gstlevel.c: (gst_level_set_property), (gst_level_transform_ip): * gst\matroska\matroska-demux.c: (gst_matroska_demux_parse_info), (gst_matroska_demux_video_caps): * gst\matroska\matroska-mux.c: (gst_matroska_mux_start), (gst_matroska_mux_finish): * gst\wavparse\gstwavparse.c: (gst_wavparse_stream_data): use gst_guint64_to_gdouble for conversions * gst\goom\filters.c: (setPixelRGB_): fix a debug which was using undefined variable * gst\level\gstlevel.c: (gst_level_set_caps), (gst_level_transform_ip): * gst\matroska\ebml-read.c: (gst_ebml_read_sint): replace LL suffix with L suffix (LL isn't supported by MSVC6.0) * win32/vs6: add vs6 projects files for most of plugins-good 2006-03-30 j^ * ext/aalib/gstaasink.c: * ext/annodex/gstcmmldec.c: * ext/annodex/gstcmmlenc.c: * ext/cairo/gsttextoverlay.c: * ext/cairo/gsttimeoverlay.c: * ext/cdio/gstcdiocddasrc.c: * ext/dv/gstdvdec.c: * ext/esd/esdmon.c: * ext/esd/esdsink.c: * ext/flac/gstflacdec.c: * ext/flac/gstflacenc.c: * ext/flac/gstflactag.c: * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_base_init): * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_base_init): * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_base_init): * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_base_init): * ext/gdk_pixbuf/gstgdkpixbuf.c: * ext/gdk_pixbuf/pixbufscale.c: * ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_base_init): * ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_base_init): * ext/jpeg/gstjpegdec.c: * ext/jpeg/gstjpegenc.c: * ext/jpeg/gstsmokedec.c: * ext/jpeg/gstsmokeenc.c: * ext/libcaca/gstcacasink.c: * ext/libmng/gstmngdec.c: * ext/libmng/gstmngenc.c: * ext/libpng/gstpngdec.c: * ext/libpng/gstpngenc.c: * ext/mikmod/gstmikmod.c: * ext/raw1394/gstdv1394src.c: * ext/shout2/gstshout2.c: * ext/speex/gstspeexdec.c: * ext/speex/gstspeexenc.c: * gst/alpha/gstalpha.c: * gst/alpha/gstalphacolor.c: * gst/auparse/gstauparse.c: * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_base_init): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_base_init): * gst/avi/gstavimux.c: (gst_avimux_base_init): * gst/cutter/gstcutter.c: * gst/debug/breakmydata.c: * gst/debug/efence.c: * gst/debug/gstnavigationtest.c: * gst/debug/negotiation.c: * gst/debug/progressreport.c: * gst/debug/testplugin.c: * gst/effectv/gstaging.c: * gst/effectv/gstdice.c: * gst/effectv/gstedge.c: * gst/effectv/gstquark.c: * gst/effectv/gstrev.c: * gst/effectv/gstvertigo.c: * gst/effectv/gstwarp.c: * gst/flx/gstflxdec.c: * gst/goom/gstgoom.c: * gst/interleave/deinterleave.c: * gst/interleave/interleave.c: * gst/law/alaw-decode.c: (gst_alawdec_base_init): * gst/law/alaw-encode.c: (gst_alawenc_base_init): * gst/law/mulaw-decode.c: (gst_mulawdec_base_init): * gst/law/mulaw-encode.c: (gst_mulawenc_base_init): * gst/level/gstlevel.c: * gst/matroska/matroska-demux.c: (gst_matroska_demux_base_init): * gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init): * gst/median/gstmedian.c: * gst/monoscope/gstmonoscope.c: * gst/multipart/multipartdemux.c: * gst/multipart/multipartmux.c: * gst/oldcore/gstmd5sink.c: * gst/oldcore/gstmultifilesrc.c: * gst/oldcore/gstpipefilter.c: * gst/oldcore/gstshaper.c: * gst/oldcore/gststatistics.c: * gst/rtp/gstasteriskh263.c: * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpL16pay.c: * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpamrpay.c: * gst/rtp/gstrtpdepay.c: * gst/rtp/gstrtpgsmpay.c: * gst/rtp/gstrtph263pay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vdepay.c: * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmpadepay.c: * gst/rtp/gstrtpmpapay.c: * gst/rtp/gstrtppcmadepay.c: * gst/rtp/gstrtppcmapay.c: * gst/rtp/gstrtppcmudepay.c: * gst/rtp/gstrtppcmupay.c: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: * gst/rtsp/gstrtpdec.c: * gst/smpte/gstsmpte.c: * gst/videobox/gstvideobox.c: * gst/videofilter/gstgamma.c: (gst_gamma_base_init): * gst/videofilter/gstvideobalance.c: * gst/videofilter/gstvideoflip.c: * gst/videofilter/gstvideotemplate.c: (gst_videotemplate_base_init): * gst/videomixer/videomixer.c: * gst/wavenc/gstwavenc.c: * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init): better/unified long descriptions Fixed #336602 Some cleanups to auparse, don't send multiple newsegments. 2006-03-29 Wim Taymans From a patch by: Michael Dominic K. * ext/dv/gstdvdemux.c: (gst_dvdemux_class_init), (gst_dvdemux_reset), (gst_dvdemux_src_convert), (gst_dvdemux_send_event), (gst_dvdemux_flush), (gst_dvdemux_loop), (gst_dvdemux_sink_activate_pull), (gst_dvdemux_change_state): * ext/dv/gstdvdemux.h: Seek in READY patch. Only works for pull based mode. Fixes #323880 2006-03-27 Tim-Philipp Müller * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_flush), (gst_gdk_pixbuf_event): Fix two crashers: don't unref the same caps twice, and set pixbuf loader to NULL after freeing it. 2006-03-27 Wim Taymans * ext/speex/gstspeexenc.c: (gst_speexenc_class_init), (gst_speexenc_finalize), (gst_speexenc_sink_setcaps), (gst_speexenc_chain): * ext/speex/gstspeexenc.h: Don't leak adapter. A push *always* takes ownership of the buffer, even on errors. Small cleanups. 2006-03-26 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (gst_id3demux_add_srcpad): Create source pad without leaking. 2006-03-24 Wim Taymans * ext/flac/gstflacdec.c: (gst_flac_dec_handle_seek_event): * ext/flac/gstflacdec.h: * ext/flac/gstflacenc.h: Spifify a bit. Fix deadly lock order error in seeking code, STREAM_LOCK cannot be taken within LOCK and the streaming variables are protected with the STREAM_LOCK anyway. 2006-03-24 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_handle_seek): this patch combines the global init_frames with the stream init_frames. Rationale being that the global delay should be subtracted from any stream delay. Fixes #335858. 2006-03-24 Stefan Kost * gst/matroska/matroska-mux.c: (gst_matroska_mux_init): * gst/multipart/multipartmux.c: (gst_multipart_mux_init): * gst/smpte/gstsmpte.c: (gst_smpte_init): * gst/videomixer/videomixer.c: (gst_videomixer_init): use DEBUG_FUNCPTR for collectpads 2006-03-24 Tim-Philipp Müller * ext/jpeg/gstjpegenc.c: (gst_jpegenc_init), (gst_jpegenc_chain): Don't crash when encoding images where the number of rows isn't a multiple of 2*DCTSIZE. Add some GST_DEBUG_FUNCPTR. 2006-03-23 Tim-Philipp Müller * ext/speex/gstspeexdec.c: (speex_dec_change_state): * gst/interleave/deinterleave.c: (deinterleave_change_state): * gst/interleave/interleave.c: (interleave_change_state): * gst/wavenc/gstwavenc.c: (gst_wavenc_change_state): More state change function fixes. 2006-03-23 Wim Taymans * ext/esd/esdsink.c: (gst_esdsink_class_init), (gst_esdsink_getcaps), (gst_esdsink_open), (gst_esdsink_close), (gst_esdsink_prepare), (gst_esdsink_unprepare), (gst_esdsink_delay), (gst_esdsink_reset): * ext/esd/esdsink.h: Fix esd choppy playback by configuring audiosink correctly. Fixes #325191 2006-03-23 Tim-Philipp Müller * ext/libpng/gstpngdec.c: (gst_pngdec_change_state): Make state change function thread-safe. 2006-03-23 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_get_upstream_size), (gst_wavparse_stream_headers), (gst_wavparse_stream_data): Don't try to read beyond the end of the file just because the header claims a bigger size (like with truncated files). 2006-03-23 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_add_src_pad), (gst_wavparse_stream_data), (gst_wavparse_loop): * gst/wavparse/gstwavparse.h: Delay source pad creation until we have the first chunk of media data, so the we can examine the data and adjust the caps accordingly if required. This makes playback of .wav files with DTS-declared-as-PCM content work (#313266). 2006-03-22 Jan Schmidt * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain): * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): Don't attempt typefinding on too-short buffers that have been completely trimmed away. (Fixes #330239) * gst/id3demux/id3tags.c: (id3demux_read_id3v2_tag): Improve the debug output 2006-03-21 Wim Taymans * ext/esd/esdsink.c: (gst_esdsink_class_init), (gst_esdsink_init), (gst_esdsink_finalize), (gst_esdsink_getcaps), (gst_esdsink_open), (gst_esdsink_close), (gst_esdsink_prepare), (gst_esdsink_write), (gst_esdsink_set_property), (gst_esdsink_get_property): Some cleanups. Reset fd to -1 when we close them. 2006-03-21 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): the OPTIONS request result is optional so don't fail on it. 2006-03-21 Edward Hervey * gst/apetag/gsttagdemux.c: (gst_tag_demux_reset): * gst/id3demux/gstid3demux.c: (gst_id3demux_reset): * gst/wavparse/gstwavparse.c: (gst_wavparse_create_sourcepad), (gst_wavparse_stream_headers), (gst_wavparse_send_event), (gst_wavparse_change_state): gcc 4.1 unreferenced pointer fixes. 2006-03-21 Tim-Philipp Müller Patch by: Tommi Myöhänen * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek): Fix block alignment calculation. Alignment should be done before adding the byte offset where the data starts (#335231). 2006-03-20 Jan Schmidt * gst/matroska/ebml-write.c: (gst_ebml_write_element_push): Ensure that we set correct caps on buffers that are transferred direct from the input. 2006-03-20 Jan Schmidt * gst/goom/filters.c: (zoomFilterDestroy): * gst/goom/goom_core.c: (goom_close): Free filter data when cleaning up. (Fixes: #334995) 2006-03-17 Tim-Philipp Müller * configure.ac: Don't compile udp and rtsp plugins on win32 (mingw) or other systems that don't have for some reason (#316203). 2006-03-16 Zaheer Abbas Merali * ext/raw1394/gstdv1394src.c: (gst_dv1394src_bus_reset), (gst_dv1394src_discover_avc_node), (gst_dv1394src_start): * ext/raw1394/gstdv1394src.h: Change bus reset handler so it reports useful information such as whether the device being used connected or disconnected 2006-03-16 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (parse_relative_volume_adjustment_two): We only care about gain and peak data for the master volume. 2006-03-16 Tim-Philipp Müller * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_id_string), (parse_unique_file_identifier), (parse_relative_volume_adjustment_two), (id3v2_tag_to_taglist): Read replay gain tags (#323721). 2006-03-15 Tim-Philipp Müller * configure.ac: Bump requirements to gst-plugins-base CVS because of buggy gst_tag_from_id3_user_tag() in 0.10.5. 2006-03-15 Philippe Kalaf * rtp/gst/gstrtppcmadepay.c: Fixed one of the caps in the code from mulaw to alaw. 2006-03-15 Jan Schmidt * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain): Ensure that we set caps on the buffers we pass. * gst/id3demux/gstid3demux.c: (gst_id3demux_chain), (gst_id3demux_sink_activate): Ensure that we set caps on the buffers we pass. Use STREAM, TYPE_NOT_FOUND as the error class when typefinding fails. 2006-03-15 Edward Hervey * ext/cairo/gsttextoverlay.c: (gst_text_overlay_init): * ext/dv/gstdvdemux.c: (gst_dvdemux_init), (gst_dvdemux_add_pads): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_init): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_init), (gst_jpeg_dec_setcaps): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_init): * ext/jpeg/gstsmokedec.c: (gst_smokedec_init): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_init): * ext/libmng/gstmngdec.c: (gst_mngdec_init), (gst_mngdec_src_getcaps): * ext/libpng/gstpngdec.c: (gst_pngdec_init), (gst_pngdec_caps_create_and_set): * ext/libpng/gstpngenc.c: (gst_pngenc_init): * ext/mikmod/gstmikmod.c: (gst_mikmod_init): * ext/speex/gstspeexdec.c: (gst_speex_dec_init): * gst/alpha/gstalpha.c: (gst_alpha_init): * gst/auparse/gstauparse.c: (gst_au_parse_init): * gst/avi/gstavidemux.c: (gst_avi_demux_init), (gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream): * gst/cutter/gstcutter.c: (gst_cutter_init): * gst/debug/efence.c: (gst_efence_init), (gst_efence_getrange), (gst_efence_checkgetrange): * gst/debug/negotiation.c: (gst_negotiation_init): * gst/flx/gstflxdec.c: (gst_flxdec_init): * gst/goom/gstgoom.c: (gst_goom_init): * gst/rtp/gstasteriskh263.c: (gst_asteriskh263_init): * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16depay_init): * gst/rtp/gstrtpL16pay.c: (gst_rtpL16pay_init): * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_init): * gst/rtp/gstrtpdepay.c: (gst_rtp_depay_init): * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_init): * gst/rtsp/gstrtpdec.c: (gst_rtpdec_init): * gst/smpte/gstsmpte.c: (gst_smpte_init): * gst/wavparse/gstwavparse.c: (gst_wavparse_init), (gst_wavparse_create_sourcepad): Fix memleak with gst_static_pad_template_get(). This uses gst_pad_new_from_static_template() instead. Fixes #333512 2006-03-14 Tim-Philipp Müller * configure.ac: Bump -base requirement to 0.10.5 for gst_tag_from_id3_user_tag(), used by id3demux. * gst/id3demux/gstid3demux.c: (plugin_init): * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_user_text_identification_frame), (parse_unique_file_identifier): Add support for UFID and TXXX frames and extract musicbrainz tags. 2006-03-14 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry): Catch short reads, like they might happen with truncated files (see #305279); remove unnecessary indentation. 2006-03-14 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_invert): Fix DIB image inversion for pictures with a depth != 8 (#305279). 2006-03-14 Tim-Philipp Müller * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_class_init), (gst_jpeg_dec_chain), (gst_jpeg_dec_change_state): * ext/jpeg/gstjpegdec.h: Fix durations on outgoing buffers after seeking in MJPEG files (#334083); some minor clean-ups. 2006-03-13 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_reset), (gst_wavparse_change_state): Implement seek in READY (re-fixes #327658) 2006-03-13 Wim Taymans * ext/cairo/gsttextoverlay.c: (gst_text_overlay_setcaps): * ext/esd/esdmon.c: (gst_esdmon_get): * ext/flac/gstflactag.c: (gst_flac_tag_chain): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_setcaps), (gst_gdk_pixbuf_sink_getcaps): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_getcaps), (gst_jpegenc_setcaps): * ext/jpeg/gstsmokedec.c: (gst_smokedec_chain): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_getcaps), (gst_smokeenc_setcaps): * ext/libmng/gstmngdec.c: (gst_mngdec_sinklink), (gst_mngdec_src_getcaps): * ext/libmng/gstmngenc.c: (gst_mngenc_sinklink), (gst_mngenc_chain): * ext/libpng/gstpngenc.c: (gst_pngenc_setcaps): * ext/mikmod/gstmikmod.c: (gst_mikmod_srclink): * ext/speex/gstspeexdec.c: (speex_dec_convert), (speex_dec_src_event), (speex_dec_chain): * gst/avi/gstavimux.c: (gst_avimux_vidsinkconnect), (gst_avimux_audsinkconnect), (gst_avimux_handle_event): * gst/debug/negotiation.c: (gst_negotiation_getcaps), (gst_negotiation_pad_link), (gst_negotiation_chain): * gst/flx/gstflxdec.c: (gst_flxdec_src_query_handler), (gst_flxdec_chain): * gst/interleave/deinterleave.c: (deinterleave_sink_link), (deinterleave_chain): * gst/law/mulaw-encode.c: (mulawenc_setcaps): * gst/median/gstmedian.c: (gst_median_link): * gst/monoscope/gstmonoscope.c: (gst_monoscope_srcconnect), (gst_monoscope_chain): * gst/rtp/gstrtpL16pay.c: (gst_rtpL16pay_sinkconnect): * gst/wavenc/gstwavenc.c: (gst_wavenc_sink_setcaps): * sys/osxaudio/gstosxaudiosink.c: (gst_osxaudiosink_chain): * sys/osxaudio/gstosxaudiosrc.c: (gst_osxaudiosrc_get): close #333784 unref the result of gst_pad_get_parent() by: Christophe Fergeau. 2006-03-09 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_handle_sink_event), (gst_dvdemux_convert_segment), (gst_dvdemux_demux_frame): Handle events in push mode better, can now do non-flushing seeks in push mode as well. 2006-03-07 Wim Taymans * gst/udp/gstdynudpsink.c: (gst_dynudpsink_class_init): Applied patch from Kai Vehmanen, fixes #333624. 2006-03-06 Julien MOUTTE * ext/libpng/gstpngdec.c: (gst_pngdec_caps_create_and_set): Implement paletted and grayscale png files handling. (#150363). 2006-03-06 Thomas Vander Stichele * ext/speex/gstspeexenc.c: (gst_speexenc_set_header_on_caps), (gst_speexenc_chain): fix a tag list assert follow gst-plugins-base/ext/ogg/README; set OFFSET and OFFSET_END. Muxes correctly with gst-plugins-base > 0.9.3 2006-03-04 Tim-Philipp Müller * gst/id3demux/Makefile.am: * gst/id3demux/gstid3demux.c: (gst_id3demux_add_srcpad), (gst_id3demux_chain), (gst_id3demux_sink_activate): Use new typefind helper functions here as well, and do typefinding in pull-mode if upstream supports that. 2006-03-04 Tim-Philipp Müller * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_get_volume), (gst_sunaudiomixer_ctrl_set_volume): * sys/sunaudio/gstsunaudiomixertrack.c: (gst_sunaudiomixer_track_new): Remove unused variables, breaks build from CVS with -Werror (#333392, patch by: Benjamin Pineau) 2006-03-03 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: Added wavparse docs. * gst/wavparse/gstwavparse.c: (gst_wavparse_class_init), (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_create_sourcepad), (gst_wavparse_parse_file_header), (gst_wavparse_stream_init), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_send_event), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_srcpad_event), (gst_wavparse_sink_activate_pull), (gst_wavparse_change_state): * gst/wavparse/gstwavparse.h: Implement seek in READY (fixes #327658) Added docs and did some cleanups. 2006-03-03 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header): * gst/avi/gstavidemux.h: If we have an index, use a duration based on the index instead of blindly trusting the information in the stream headers (fixes #331817). 2006-03-03 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: Added smoke and jpeg to the docs. * ext/jpeg/Makefile.am: * ext/jpeg/gstjpeg.c: (plugin_init): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): * ext/jpeg/gstjpegenc.h: * ext/jpeg/gstsmokedec.c: (gst_smokedec_init), (gst_smokedec_chain): * ext/jpeg/gstsmokedec.h: * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain): * ext/jpeg/gstsmokeenc.h: * ext/jpeg/smokecodec.h: Port smokedec (fixes #331905). Added some docs. Some cleanups. 2006-03-03 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: Added videobalance and videoflip to the docs. * gst/videofilter/Makefile.am: * gst/videofilter/gstvideobalance.c: (gst_video_balance_update_tables_planar411), (gst_video_balance_is_passthrough), (gst_video_balance_update_properties), (oil_tablelookup_u8), (gst_video_balance_planar411_ip), (gst_video_balance_set_caps), (gst_video_balance_transform_ip), (gst_video_balance_base_init), (gst_video_balance_finalize), (gst_video_balance_class_init), (gst_video_balance_init), (gst_video_balance_interface_supported), (gst_video_balance_interface_init), (gst_video_balance_colorbalance_list_channels), (gst_video_balance_colorbalance_set_value), (gst_video_balance_colorbalance_get_value), (gst_video_balance_colorbalance_init), (gst_video_balance_set_property), (gst_video_balance_get_property), (gst_video_balance_get_type), (plugin_init): * gst/videofilter/gstvideobalance.h: Ported to 0.10. (Fixes #326160) Added docs. * gst/videofilter/gstvideoflip.c: * gst/videofilter/gstvideoflip.h: Added docs. 2006-03-02 Tim-Philipp Müller * configure.ac: Bump requirements to current core and -base CVS (core for new typefind helper API, and -base for the WAVFORMATEX support that was added to libgstriff and is needed by wavparse). * gst/apetag/Makefile.am: * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain), (gst_tag_demux_sink_activate): Use new typefind helpers for typefinding instead of our home-grown stuff; also, do typefinding in pull-mode if upstream supports that. 2006-02-28 Jürg Billeter Reviewed by: Christian Schaller This patch fixes bug: 329107 This Changelog entry is for a commit done on February 17 * ext/gconf/gconf.c * ext/gconf/gconf.h * ext/gconf/gstgconfaudiosink.c * ext/gconf/gstgconfaudiosink.h * gconf/gstreamer.schemas.in 2006-02-28 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_pad_convert), (gst_wavparse_srcpad_event), (gst_wavparse_sink_activate), (gst_wavparse_sink_activate_pull): Use DEBUG_OBJECT more. 2006-02-28 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: Added dvdec and dvdemux to docs. * ext/dv/gstdvdec.c: (gst_dvdec_base_init), (gst_dvdec_chain): Added docs. Check frame sizes so we don't crash when don't have enough data. Send nice error messages on error. * ext/dv/gstdvdemux.c: (gst_dvdemux_base_init), (gst_dvdemux_class_init), (gst_dvdemux_init), (gst_dvdemux_finalize), (gst_dvdemux_reset), (gst_dvdemux_src_convert), (gst_dvdemux_sink_convert), (gst_dvdemux_src_query), (gst_dvdemux_sink_query), (gst_dvdemux_push_event), (gst_dvdemux_handle_sink_event), (gst_dvdemux_convert_src_pair), (gst_dvdemux_convert_sink_pair), (gst_dvdemux_convert_src_to_sink), (gst_dvdemux_handle_push_seek), (gst_dvdemux_do_seek), (gst_dvdemux_handle_pull_seek), (gst_dvdemux_handle_src_event), (gst_dvdemux_demux_audio), (gst_dvdemux_demux_video), (gst_dvdemux_demux_frame), (gst_dvdemux_flush), (gst_dvdemux_chain), (gst_dvdemux_loop), (gst_dvdemux_sink_activate_push), (gst_dvdemux_sink_activate_pull), (gst_dvdemux_sink_activate), (gst_dvdemux_change_state): * ext/dv/gstdvdemux.h: Added docs. Implement pull mode. Fix memleaks. Reduce memcpy for the video demuxing. 2006-02-28 Jan Schmidt * ext/annodex/gstcmmldec.c: (gst_cmml_dec_sink_event), (gst_cmml_dec_new_buffer), (gst_cmml_dec_parse_preamble), (gst_cmml_dec_parse_head), (gst_cmml_dec_push_clip): * ext/annodex/gstcmmlparser.c: (gst_cmml_parser_parse_chunk): Add a little extra debug. Make the decoder not return NOT_LINKED, as we want to continue decoding all CMML and emitting tags. 2006-02-27 Michael Smith * ext/annodex/gstskeltag.c: * ext/annodex/gstskeltag.h: Deleted; these files aren't used any more either. 2006-02-25 Julien MOUTTE * ext/Makefile.am: Fix dist-check. 2006-02-25 Julien MOUTTE * ext/annodex/gstcmmlenc.c: (gst_cmml_enc_push_clip): Fix another memleak. 2006-02-25 Alessandro Decina * ext/annodex/Makefile.am: * ext/annodex/gstannodex.c: * ext/annodex/gstcmmldec.c: * ext/annodex/gstcmmlenc.c: * ext/annodex/gstcmmlparser.c: * ext/annodex/gstcmmlparser.h: * ext/annodex/gstcmmlutils.c: * tests/check/elements/cmmldec.c: * tests/check/elements/cmmlenc.c: Fix a memleak in gst_cmml_track_list_add_clip. Handle overflows in clip's start and end times. Add the "encoded" parameter to cmmldec and cmmlenc caps. Do not parse junk at the end of a CMML preamble buffer. Register a libxml error handler to not print stuff on stderr. Check for bad clip start and end times in the testsuites. 2006-02-25 Julien MOUTTE * ext/annodex/gstcmmldec.c: (gst_cmml_dec_class_init), (gst_cmml_dec_finalize), (gst_cmml_dec_change_state): * ext/annodex/gstcmmlenc.c: (gst_cmml_enc_class_init), (gst_cmml_enc_finalize), (gst_cmml_enc_change_state): * ext/annodex/gstcmmlutils.c: (gst_cmml_track_list_destroy): Fix possible memleaks. 2006-02-25 Julien MOUTTE * tests/check/Makefile.am: * tests/check/elements/cmmldec.c: * tests/check/elements/cmmlenc.c: Fix tests so that they use the plugins-base tags. 2006-02-25 Julien MOUTTE * ext/Makefile.am: Re-enable module. 2006-02-25 Julien MOUTTE * tests/check/Makefile.am: Forgot to remove that test. 2006-02-25 Julien MOUTTE * ext/annodex/Makefile.am: * ext/annodex/gstannodex.c: (plugin_init): * ext/annodex/gstcmmldec.c: * ext/annodex/gstskeldec.c: * ext/annodex/gstskeldec.h: * tests/check/Makefile.am: * tests/check/elements/skeldec.c: Try to fix Annodex plugin. 2006-02-25 Julien MOUTTE * tests/check/Makefile.am: Disable those checks as well. 2006-02-24 Julien MOUTTE * ext/Makefile.am: Disable annodex for now until we figure out how to make it build. * ext/gdk_pixbuf/Makefile.am: Note for Thomas : Add a rule to your checklist : "please try to at least build what you are going to commit into -good, or if you are too lazy to do that, please check that the buildbots are not crying because of your commit." 2006-02-24 Edgard Lima * configure.ac: * ext/Makefile.am: * ext/gdk_pixbuf/Makefile.am: * ext/gdk_pixbuf/gstgdkpixbuf.c: * ext/gdk_pixbuf/gstgdkpixbuf.h: * ext/gdk_pixbuf/pixbufscale.c: * ext/gdk_pixbuf/pixbufscale.h: Gdkpixbuf ported from 0.8 to 0.10 by Renato Filho . gst_loader and gdkpixbufanimation still need port. 2006-02-24 Michael Smith * configure.ac: * docs/plugins/gst-plugins-good-plugins-sections.txt: * ext/Makefile.am: * ext/annodex/Makefile.am: * ext/annodex/gstannodex.c: * ext/annodex/gstannodex.h: * ext/annodex/gstcmmldec.c: * ext/annodex/gstcmmldec.h: * ext/annodex/gstcmmlenc.c: * ext/annodex/gstcmmlenc.h: * ext/annodex/gstcmmlparser.c: * ext/annodex/gstcmmlparser.h: * ext/annodex/gstcmmltag.c: * ext/annodex/gstcmmltag.h: * ext/annodex/gstcmmlutils.c: * ext/annodex/gstcmmlutils.h: * ext/annodex/gstskeldec.c: * ext/annodex/gstskeldec.h: * ext/annodex/gstskeltag.c: * ext/annodex/gstskeltag.h: * tests/check/Makefile.am: * tests/check/elements/cmmldec.c: * tests/check/elements/cmmlenc.c: * tests/check/elements/skeldec.c: Add Annodex elements from Alessendro Decina: skeleton and CMML. Includes tests & docs, oh my! Passes Thomas's -good checklist entirely. Wow. 2006-02-24 Michael Smith * autogen.sh: Check for automake 1.9 as well. 2006-02-24 Tim-Philipp Müller * ext/flac/gstflacenc.c: Change min. sample rate to 8kHz to match flacdec's. 2006-02-23 Tim-Philipp Müller * ext/cdio/Makefile.am: Add GST_BASE_CFLAGS and GST_BASE_LIBS (seems to be required for Cygwin, see #317048) * gst/rtp/gstasteriskh263.c: Cygwin has includes for both the unix network socket API and the windows API, but only one can be included, so fix includes to only use one or the other, prefering the unxi one (#317048). 2006-02-23 Philippe Kalaf * rtp/gst/gstrtppcmadepay.c: * rtp/gst/gstrtppcmadepay.h: * rtp/gst/gstgstrtppcmapay.c: * rtp/gst/gstgstrtppcmapay.h: * rtp/gst/gstrtppcmudepay.c: * rtp/gst/gstrtppcmudepay.h: * rtp/gst/gstrtppcmupay.c: * rtp/gst/gstrtppcmupay.h: * rtp/gst/Makefile.am: * rtp/gst/gstrtp.c: * rtp/gst/README: Separated the G711 payloaders/depayloaders into separate elements for mulaw/alaw. Also removed the old g711 payloaders/depayloaders. 2006-02-22 Wim Taymans * ext/dv/gstdvdec.c: (gst_dvdec_base_init), (gst_dvdec_init), (gst_dvdec_change_state): * ext/dv/gstdvdec.h: * ext/dv/gstdvdemux.c: (gst_dvdemux_base_init), (gst_dvdemux_init), (gst_dvdemux_src_convert), (gst_dvdemux_sink_convert), (gst_dvdemux_src_query), (gst_dvdemux_sink_query), (gst_dvdemux_handle_sink_event), (gst_dvdemux_demux_frame), (gst_dvdemux_flush), (gst_dvdemux_chain), (gst_dvdemux_change_state): * ext/dv/gstdvdemux.h: Ueber spiffify some more, added debug category. Use _scale. Use segments, respect playback rate from newsegment. Fix refcount issue. 2006-02-20 Jan Schmidt * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_event), (gst_signal_processor_process): Fix compilation of LADPSA. It doesn't seem to work, and isn't enabled for the build, but it helps me win the feature-count competitions ooh yeah. 2006-02-19 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query), (gst_avi_demux_handle_src_event), (gst_avi_demux_parse_file_header), (gst_avi_demux_stream_init), (gst_avi_demux_parse_avih), (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_stream_header), (gst_avi_demux_change_state): Use scaling code for added precission and more correct stop position in case scale==0. 2006-02-19 Wim Taymans * gst/flx/gstflxdec.c: (gst_flxdec_src_query_handler), (gst_flxdec_chain): * gst/flx/gstflxdec.h: Implement DURATION query. 2006-02-19 Wim Taymans * gst/flx/flx_color.h: * gst/flx/flx_fmt.h: * gst/flx/gstflxdec.c: (gst_flxdec_init), (gst_flxdec_src_query_handler), (flx_decode_color), (gst_flxdec_chain): * gst/flx/gstflxdec.h: Set MALLOCDATA for the temp buffers so we don't leak. Some debug cleanups. Consume all data in the adapter before leaving the chain function. Fixes #330678. 2006-02-18 Jan Schmidt * gst/id3demux/id3tags.c: (id3demux_id3v2_frames_to_tag_list): * gst/id3demux/id3v2frames.c: (id3v2_genre_fields_to_taglist): Handle 0 data size in otherwise valid frames. Handle numeric strings in 2.4.0 even when not in parentheses 2006-02-18 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_subtitle_caps), (gst_matroska_demux_plugin_init): * gst/matroska/matroska-ids.h: Recognise SSA/ASS and USF subtitle formats and set proper caps when they are found. 2006-02-17 Tim-Philipp Müller * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_decode_direct), (gst_jpeg_dec_chain): Fix invalid memory access for some odd-sized images (see image contained in quicktime stream in #327083); use g_malloc() instead of g_alloca(). 2006-02-17 Wim Taymans * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_chain): Patch from Sebastien Cote, fixes #319884 2006-02-17 Tim-Philipp Müller * ext/cdio/gstcdio.c: (plugin_init): Init debug category (#331253). 2006-02-16 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): Pass extra_data to gst_riff_create_audio_caps(), so that WAVEFORMATEX stuff works. Post audio codec name and post it as taglist on the bus. Allow up to 8 channesl for raw PCM in the source pad template caps. 2006-02-16 Wim Taymans * gst/multipart/multipartdemux.c: (gst_multipart_demux_base_init), (gst_multipart_demux_class_init), (gst_multipart_demux_init), (gst_multipart_demux_finalize), (gst_multipart_find_pad_by_mime), (gst_multipart_demux_chain), (gst_multipart_demux_change_state), (gst_multipart_set_property), (gst_multipart_get_property): Applied #318663. Gives quite a few false positives in autoscan mode, but it's better than nothing. Not closing yet. 2006-02-16 Wim Taymans * 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-udp.xml: * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init), (gst_udpsrc_start): Update documentation. Fix args. 2006-02-16 Jan Schmidt * gst/id3demux/id3tags.c: (id3demux_id3v2_frames_to_tag_list): ID3 2.3.0 used synch-safe integers for the tag size, but not for the frame size. (Fixes #331368) 2006-02-16 Wim Taymans * gst/rtsp/README: Updated README. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_get_type), (gst_rtspsrc_class_init), (gst_rtspsrc_set_property), (gst_rtspsrc_get_property), (gst_rtspsrc_stream_setup_rtp): * gst/rtsp/gstrtspsrc.h: Make sure the RTP port is an even port an try to allocate another if not. Added retry property to control max retries for port allocation. Make sure RTCP port is RTP port+1. Cleanup when port allocation fails. Fixes #319183. 2006-02-16 Tim-Philipp Müller * gst/alpha/gstalpha.c: (gst_alpha_change_state): Don't ignore return value of the parent class's state change function (#331385, patch by: Wouter Paesen). 2006-02-15 Wim Taymans * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * ext/Makefile.am: * ext/hal/Makefile.am: * ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_base_init), (gst_hal_audio_sink_class_init), (gst_hal_audio_sink_reset), (gst_hal_audio_sink_init), (gst_hal_audio_sink_dispose), (do_toggle_element), (gst_hal_audio_sink_set_property), (gst_hal_audio_sink_get_property), (gst_hal_audio_sink_change_state): * ext/hal/gsthalaudiosink.h: * ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_base_init), (gst_hal_audio_src_class_init), (gst_hal_audio_src_reset), (gst_hal_audio_src_init), (gst_hal_audio_src_dispose), (do_toggle_element), (gst_hal_audio_src_set_property), (gst_hal_audio_src_get_property), (gst_hal_audio_src_change_state): * ext/hal/gsthalaudiosrc.h: * ext/hal/gsthalelements.c: (plugin_init): * ext/hal/gsthalelements.h: * ext/hal/hal.c: (gst_hal_get_string), (gst_hal_render_bin_from_udi), (gst_hal_get_audio_sink), (gst_hal_get_audio_src): * ext/hal/hal.h: Add HAL sound device wrapper plugins. Closes #329106 2006-02-15 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event): Add comment in a fultile attempt to stop the copy-and-paste paradigm leading to duplication of bad code. * gst/rtsp/rtsptransport.c: (rtsp_transport_parse): Mime parameters have to be checked case insensitive 2006-02-14 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_sync_streams): Advance stream time for lagging subtitle streams by sending newsegment events with the update flag set. 2006-02-14 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_stream_header): There can be bogus data before the hdrl LIST tag in the RIFF header. It's hard to say if it's not respecting the AVI specifications or not, but since Google Video is producing AVIs like that and the other player don't seem to complain, I guess we should do the same. 2006-02-13 Jan Schmidt * gst/id3demux/id3v2frames.c: (parse_insert_string_field), (parse_split_strings): Add more validation to ensure that a char encoding conversion produced a valid UTF-8 string. 2006-02-13 Mark Nauwelaerts Reviewed by: Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry): Properly handle end of segment. Closes #330885. 2006-02-13 Wim Taymans * gst/rtp/gstrtpmp4gpay.h: For got to commit this one. 2006-02-12 Wim Taymans * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_class_init), (gst_rtp_mp4g_pay_init), (gst_rtp_mp4g_pay_parse_audio_config), (gst_rtp_mp4g_pay_parse_video_config), (gst_rtp_mp4g_pay_new_caps), (gst_rtp_mp4g_pay_setcaps), (gst_rtp_mp4g_pay_flush): * gst/rtp/gstrtpmp4gpay.h: Make more things work. Handle ACC config strings. 2006-02-12 Thomas Vander Stichele * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_handle_buffer): set timestamps if no incoming timestamps set 2006-02-11 Tim-Philipp Müller * gst/apetag/gsttagdemux.c: (gst_tag_demux_get_upstream_size), (gst_tag_demux_do_typefind): ... and fix the very same leaks in GstTagDemux. 2006-02-11 Jan Schmidt * gst/id3demux/gstid3demux.c: (id3demux_get_upstream_size), (gst_id3demux_do_typefind): Fix a couple of mem leaks. (Patch by Jonathan Matthew ) 2006-02-10 Wim Taymans * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_setcaps): First set options, then set caps or else the baseclass will not know about the options, duh. 2006-02-10 Wim Taymans * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_class_init), (gst_rtp_mp4v_pay_setcaps): Don't waste time looking for a config string if we have codec_info on the incomming caps. 2006-02-10 Wim Taymans * gst/rtp/README: Say something about case-sensitivity of caps vs mime-attributes. * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_class_init), (gst_rtp_amr_pay_handle_buffer): * gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_get_type), (gst_rtp_mp4g_pay_base_init), (gst_rtp_mp4g_pay_class_init), (gst_rtp_mp4g_pay_init), (gst_rtp_mp4g_pay_finalize), (gst_rtp_mp4g_pay_new_caps), (gst_rtp_mp4g_pay_setcaps), (gst_rtp_mp4g_pay_flush), (gst_rtp_mp4g_pay_handle_buffer), (gst_rtp_mp4g_pay_set_property), (gst_rtp_mp4g_pay_get_property), (gst_rtp_mp4g_pay_plugin_init): * gst/rtp/gstrtpmp4gpay.h: Added beginnings of mpeg4-generic payloader (RFC 3640) 2006-02-09 Wim Taymans * gst/rtsp/Makefile.am: * gst/rtsp/gstrtpdec.c: (gst_rtpdec_get_type), (gst_rtpdec_class_init), (gst_rtpdec_init), (gst_rtpdec_getcaps), (gst_rtpdec_chain_rtp), (gst_rtpdec_chain_rtcp), (gst_rtpdec_set_property), (gst_rtpdec_get_property), (gst_rtpdec_change_state): * gst/rtsp/gstrtpdec.h: * gst/rtsp/gstrtsp.c: (plugin_init): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_transport): * gst/rtsp/rtspconnection.c: (read_body), (rtsp_connection_receive): * gst/rtsp/rtspmessage.c: (rtsp_message_dump): Resurected rtpdec to make rtspsrc happy again. Skip attributes from the session id. Don't crash when dumping a message with an empty body. 2006-02-09 Wim Taymans * gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_chain): Added more meaningfull warnings when something goes wrong. Clear F bit on outgoing AMR packets. * gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_class_init), (gst_rtp_amr_pay_handle_buffer): Added debugging category Support payloading of multiple AMR frames. * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_depay_data): Added some debugging. 2006-02-09 Jan Schmidt * configure.ac: Back to CVS === release 0.10.2 === 2006-02-09 Jan Schmidt * configure.ac: releasing 0.10.2, "Papa was a rolling stone" 2006-02-08 Jan Schmidt * configure.ac: Bump core and plugins-base requirement to 0.10.2.2 for API additions (and 1 migration of gst_bin_find_unconnected_pad) 2006-02-07 Tim-Philipp Müller * ext/flac/gstflac.c: (plugin_init): * ext/speex/gstspeex.c: (plugin_init): Register musicbrainz tags. 2006-02-07 Tim-Philipp Müller * ext/gconf/gconf.h: Remove declaration of function that no longer exists. 2006-02-07 Zaheer Abbas Merali * ext/shout2/gstshout2.c: (gst_shout2send_render), (gst_shout2send_setcaps), (gst_shout2send_change_state): Make shout2 work for non ogg streams 2006-02-06 Wim Taymans * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init), (gst_multiudpsink_render), (gst_multiudpsink_get_property), (gst_multiudpsink_init_send), (gst_multiudpsink_add), (gst_multiudpsink_remove), (gst_multiudpsink_clear), (gst_multiudpsink_get_stats), (gst_multiudpsink_change_state): * gst/udp/gstmultiudpsink.h: Updated docs. Added properties bytes-served, bytes_to_serve. Post proper error messages, Emit client added signal too. 2006-02-06 Thomas Vander Stichele * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init), (gst_multiudpsink_get_stats): adding docs for multiudpsink 2006-02-06 Thomas Vander Stichele * gst/level/gstlevel.c: (gst_level_transform_ip): peak below decay is not necessarily an error, so don't ERROR log 2006-02-06 Tim-Philipp Müller * gst/matroska/ebml-write.c: (gst_ebml_write_reset), (gst_ebml_write_flush_cache), (gst_ebml_write_element_push), (gst_ebml_write_seek): * gst/matroska/ebml-write.h: Make sure we send a newsegment event in BYTES format before sending buffers (#328531). 2006-02-06 Tim-Philipp Müller * ext/dv/gstdvdemux.c: (gst_dvdemux_src_query), (gst_dvdemux_sink_query): * ext/flac/gstflacdec.c: (gst_flac_dec_src_query): * ext/speex/gstspeexdec.c: (speex_get_query_types), (speex_dec_src_query): * ext/speex/gstspeexenc.c: (gst_speexenc_src_query), (gst_speexenc_sink_query): * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query): * gst/matroska/matroska-demux.c: (gst_matroska_demux_get_src_query_types), (gst_matroska_demux_handle_src_query): * gst/wavparse/gstwavparse.c: (gst_wavparse_get_query_types), (gst_wavparse_pad_query): Pass unhandled queries upstream instead of just dropping them (#326446). Update query type arrays here and there. 2006-02-06 Tim-Philipp Müller * tests/check/elements/matroskamux.c: (setup_src_pad): Collectpads in core got changed and now also holds a reference to any pad that is part of it. Fix refcount checks in test case accordingly. 2006-02-06 Tim-Philipp Müller * gst/apetag/gstapedemux.h: Fix include, for now GstTagDemux is in the apetag dir. 2006-02-06 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-cdio.xml: Add cdio plugin to docs. * ext/cdio/gstcdiocddasrc.c: Add gtk-doc blurb. * ext/cdio/gstcdio.c: The plugin is called 'cdio' not 'cddio'. 2006-02-06 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-apetag.xml: * gst/apetag/Makefile.am: * gst/apetag/gstapedemux.c: * gst/apetag/gstapedemux.h: * gst/apetag/gsttagdemux.c: * gst/apetag/gsttagdemux.h: Add APE tag demuxer (#325649). 2006-02-05 Jan Schmidt * ext/gconf/gconf.c: (gst_gconf_get_default_audio_sink), (gst_gconf_get_default_video_sink), (gst_gconf_get_default_audio_src), (gst_gconf_get_default_video_src): * ext/gconf/gconf.h: * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_reset), (gst_gconf_audio_sink_init), (gst_gconf_audio_sink_dispose), (do_toggle_element): * ext/gconf/gstgconfaudiosink.h: * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_reset), (gst_gconf_audio_src_init), (gst_gconf_audio_src_dispose), (do_toggle_element): * ext/gconf/gstgconfaudiosrc.h: * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset), (gst_gconf_video_sink_init), (gst_gconf_video_sink_dispose), (do_toggle_element): * ext/gconf/gstgconfvideosink.h: * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_reset), (gst_gconf_video_src_init), (gst_gconf_video_src_dispose), (do_toggle_element): * ext/gconf/gstgconfvideosrc.h: Ignore changing the GConf key to "". Ignore GConf key updates that don't actually change the string. For now, ignore the GConf key when the state is > READY, as it breaks streaming. Sometime it will be nice to bring the new sink online even mid-stream, by sending NEWSEGMENT info and possibly prerolling. (Fixes #326736) 2006-02-05 Jan Schmidt * gst/goom/filters.c: (zoomFilterNew), (calculatePXandPY), (setPixelRGB), (setPixelRGB_), (getPixelRGB), (getPixelRGB_), (zoomFilterSetResolution), (zoomFilterDestroy), (zoomFilterFastRGB), (pointFilter): * gst/goom/filters.h: * gst/goom/goom_core.c: (goom_init), (goom_set_resolution), (goom_update), (goom_close): * gst/goom/goom_core.h: * gst/goom/goom_tools.h: * gst/goom/graphic.c: * gst/goom/gstgoom.c: (gst_goom_class_init), (gst_goom_init), (gst_goom_dispose), (gst_goom_src_setcaps), (gst_goom_chain): * gst/goom/gstgoom.h: * gst/goom/lines.c: (goom_lines): * gst/goom/lines.h: Make goom reentrant by moving all important static variables into instance structures. (Fixes #329181) 2006-02-04 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_all_source_pads_unlinked), (gst_avi_demux_process_next_entry): * gst/avi/gstavidemux.h: Third attempt, use gst_pad_is_linked() this time. 2006-02-04 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_split_strings): Adjust for data length indicators when parsing (Fixes #329810) Fix stupid bug parsing UTF-8 tag text. Output tag strings with multiple fields as multiple tags, so the app gets all the data. 2006-02-03 Edgard Lima * ext/flac/gstflacenc.c: Fixed a bug add in last commit, where no event is send. Thanks Tim to show me. 2006-02-03 Edgard Lima * ext/flac/gstflacenc.c: * gst/matroska/ebml-read.c: Just make it compile with --disable-gst-debug. 2006-02-03 Jan Schmidt * gst/id3demux/id3v2frames.c: (parse_text_identification_frame), (id3v2_tag_to_taglist), (id3v2_genre_string_to_taglist), (id3v2_genre_fields_to_taglist): Never output a tag with a null contents string. 2006-02-02 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_all_source_pads_unlinked): Only pause if all pads are unlinked AND we've tried to send data on all of them at least once. 2006-02-02 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_all_source_pads_unlinked), (gst_avi_demux_process_next_entry), (gst_avi_demux_loop): Make loop function/task pause itself when all source pads are unlinked. 2006-02-02 Tim-Philipp Müller * configure.ac: * ext/gconf/gconf.c: (gst_gconf_render_bin_from_key): Use new functions from core to render a bin from a string. Fixes build. Up requirements to core CVS. 2006-02-01 Tim-Philipp Müller * gst/auparse/gstauparse.c: (gst_au_parse_chain): Don't push buffers into the adapter that we are going to push downstream again without framing anyway. Also, the adaptor takes ownership of buffers put into it (fixes auparse pushing invalid buffers for .au files with ADPCM contents). Finally, set caps on all outgoing buffers. 2006-01-31 Jan Schmidt * gst/id3demux/gstid3demux.c: (gst_id3demux_chain), (gst_id3demux_read_id3v1), (gst_id3demux_sink_activate), (gst_id3demux_send_tag_event): * gst/id3demux/id3tags.c: (id3demux_read_id3v1_tag): Someone should kick my butt. Remove ID3v1 tags from the end of the file. Improve error messages. Send the TAG message as soon as we complete typefinding, instead of waiting until we send the first buffer. Downstream tag event is still sent before the first buffer. 2006-01-27 Jan Gerber Reviewed by: Andy Wingo * ext/dv/gstdvdec.c (gst_dvdec_change_state): * ext/dv/gstdvdemux.c (gst_dvdemux_change_state): Call dv_set_error_log (dv_decoder_t *, NULL); after dv_decoder_new to not have warings flooding stderr. this is the suggested way also used in dvgrab and kino. (#328336) 2006-01-27 Jan Schmidt * sys/oss/gstosssink.c: (gst_oss_sink_class_init), (gst_oss_sink_init), (gst_oss_sink_finalise): Free the device name string when finalised. 2006-01-25 Tim-Philipp Müller * gst/id3demux/gstid3demux.c: (gst_id3demux_remove_srcpad): Don't put function calls in g_return_if_fail() statements, or they'll be replaced with NOOPs if someone compiles with G_DISABLE_CHECKS defined. 2006-01-25 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame): Never trust ANY information encoded in a media file, especially when it's giving you sizes. (Fixes #328452) 2006-01-24 Edgard Lima * gst/rtp/gstrtpg711pay.c: Patch written by Kai Vehmanen applied. See bug #325148. 2006-01-23 Edward Hervey * gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps), (gst_matroska_demux_plugin_init): * gst/matroska/matroska-ids.h: Added recognition of Real Audio and Video streams in matroska demuxer. 2006-01-23 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3v2_tag_to_taglist): Remove errant break statement, and fix compilation with older GCC. 2006-01-23 Brian Cameron Reviewed by: Tim-Philipp Müller * sys/sunaudio/gstsunaudiomixerctrl.c: * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_init): Export functions that are needed in other parts of the code, makes the mixer actually work; adjust magic minimum buffer-time value from 3ms to 5ms to work around stuttering during mp3 playback (#327765). 2006-01-23 Michal Benes Reviewed by: Tim-Philipp Müller * gst/matroska/matroska-mux.c: (gst_matroska_mux_best_pad), (gst_matroska_mux_write_data), (gst_matroska_mux_collected): Fix possible deadlock in matroska muxer (#327825). 2006-01-23 Tim-Philipp Müller * ext/libpng/gstpngenc.c: (gst_pngenc_chain): * gst/avi/gstavidemux.c: (gst_avi_demux_invert): * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps): * gst/rtsp/sdpmessage.h: * gst/udp/gstdynudpsink.c: (gst_dynudpsink_render): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_get_stats): C89 fixes: declare variables at the beginning of a block and make gcc-2.9x happy (#328264; patch by: Jens Granseuer ). 2006-01-23 Jan Schmidt * gst/id3demux/id3tags.c: (id3demux_read_id3v2_tag): * gst/id3demux/id3tags.h: * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_comment_frame), (parse_text_identification_frame), (id3v2_tag_to_taglist), (id3v2_are_digits), (id3v2_genre_string_to_taglist), (id3v2_genre_fields_to_taglist), (parse_split_strings), (free_tag_strings): Rewrite parsing of text tags to handle multiple NULL terminated strings. Parse numeric genre strings and ID3v2 type "(3)(6)Alternative" style genre strings. Parse dates that are only YYYY or YYYY-mm format. (Fixes #328241 and #322154) 2006-01-20 Tim-Philipp Müller * gst/videobox/gstvideobox.c: (gst_video_box_class_init): Don't forget to initialize liboil, otherwise our oil functions will crash (fixes #327871; patch by: Christoph Burghardt ). 2006-01-19 Tim-Philipp Müller * configure.ac: Use plain AS_LIBTOOL_TAGS instead of AS_LIBTOOL_TAGS([CXX]), just like in the core and gst-plugins-base. Fixes #324367 and #326683; patch by: Brian Cameron 2006-01-19 Tim-Philipp Müller * ext/cdio/gstcdio.c: (gst_cdio_add_cdtext_field), (plugin_init): * ext/cdio/gstcdio.h: * ext/cdio/gstcdiocddasrc.c: (gst_cdio_cdda_src_get_cdtext): Fix build for libcdio versions >= 76; give slightly lower rank than cdparanoia. 2006-01-18 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/cdio/Makefile.am: * ext/cdio/gstcdio.c: * ext/cdio/gstcdio.h: * ext/cdio/gstcdiocddasrc.c: * ext/cdio/gstcdiocddasrc.h: Port libcdio cdda source, formerly known as cddasrc, now known as cdiocddasrc (fixes #323327). Should also read CD-TEXT if available, but that's not tested (fixes #317658). 2006-01-18 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_pad_convert): Fix conversion from TIME to BYTES format (fixes #326864; patch by: Tommi Myöhänen ) 2006-01-15 Jan Schmidt * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame): Fix compilation of id3demux when zlib is not present. (Fixes #326602; patch by: Sergey Scobich) 2006-01-15 Tim-Philipp Müller * ext/esd/Makefile.am: Add $(ESD_CFLAGS), otherwise build will fail for folks with libesd in a non-standard prefix (#327009). 2006-01-13 Thomas Vander Stichele * configure.ac: back to HEAD === release 0.10.1 === 2006-01-13 Thomas Vander Stichele * configure.ac: releasing 0.10.1, "Li" 2006-01-13 Thomas Vander Stichele patch by: Wim Taymans * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain): fix memleak. Fixes #326618 2006-01-13 Thomas Vander Stichele patch by: Mike Smith * gst/level/gstlevel.c: (gst_level_message_new), (gst_level_message_append_channel): Fix memleak. Fixes #326612 2006-01-11 Thomas Vander Stichele * configure.ac: prereleasing * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: update translations 2006-01-10 Michael Smith * gst/level/gstlevel.c: (gst_level_class_init), (gst_level_dispose): Don't leak filter arrays. 2006-01-09 Brian Cameron reviewed by: Christian Schaller * configure.ac: * gst-plugins-good.spec.in: * sys/Makefile.am: * sys/sunaudio/Makefile.am: * sys/sunaudio/gstsunaudio.c: (plugin_init): * sys/sunaudio/gstsunaudiomixer.c: (gst_sunaudiomixer_base_init), (gst_sunaudiomixer_class_init), (gst_sunaudiomixer_init), (gst_sunaudiomixer_change_state): * sys/sunaudio/gstsunaudiomixer.h: * sys/sunaudio/gstsunaudiomixerctrl.c: (gst_sunaudiomixer_ctrl_open), (gst_sunaudiomixer_ctrl_build_list), (gst_sunaudiomixer_ctrl_new), (gst_sunaudiomixer_ctrl_free), (gst_sunaudiomixer_ctrl_list_tracks), (gst_sunaudiomixer_ctrl_get_volume), (gst_sunaudiomixer_ctrl_set_volume), (gst_sunaudiomixer_ctrl_set_mute), (gst_sunaudiomixer_ctrl_set_record): * sys/sunaudio/gstsunaudiomixerctrl.h: * sys/sunaudio/gstsunaudiomixertrack.c: (gst_sunaudiomixer_track_class_init), (gst_sunaudiomixer_track_init), (fill_labels), (gst_sunaudiomixer_track_new): * sys/sunaudio/gstsunaudiomixertrack.h: * sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_get_type), (gst_sunaudiosink_dispose), (gst_sunaudiosink_base_init), (gst_sunaudiosink_set_property), (gst_sunaudiosink_get_property), (gst_sunaudiosink_getcaps), (gst_sunaudiosink_open), (gst_sunaudiosink_close), (gst_sunaudiosink_prepare), (gst_sunaudiosink_unprepare), (gst_sunaudiosink_write), (gst_sunaudiosink_delay), (gst_sunaudiosink_reset): * sys/sunaudio/gstsunaudiosink.h: Add SunAudio plugin - tested to make sure it doesn't break the build under GNU/Linux. 2005-01-07 Philippe Khalaf * gst-plugins-good/gst/udp/gstdynudpsink.c: * gst-plugins-good/gst/udp/gstudpsrc.c: Allow udpsrc and dynudpsink to take a sockfd as a parameter. For udpsrc, overrides the port or multicast parameters. Fixes bugs #323021. API addition: adds GstUDPSrc::sockfd property 2006-01-06 Tim-Philipp Müller * ext/gconf/Makefile.am: * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_base_init), (gst_gconf_audio_src_class_init), (gst_gconf_audio_src_reset), (gst_gconf_audio_src_init), (gst_gconf_audio_src_dispose), (do_toggle_element), (cb_toggle_element), (gst_gconf_audio_src_change_state): * ext/gconf/gstgconfaudiosrc.h: * ext/gconf/gstgconfelements.c: (plugin_init): * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_base_init), (gst_gconf_video_src_class_init), (gst_gconf_video_src_reset), (gst_gconf_video_src_init), (gst_gconf_video_src_dispose), (do_toggle_element), (cb_toggle_element), (gst_gconf_video_src_change_state): * ext/gconf/gstgconfvideosrc.h: Add new gconfaudiosrc and gconfvideosrc elements (needed for gnome-sound-recorder). 2006-01-06 Edward Hervey * gst/id3demux/gstid3demux.c: (gst_id3demux_add_srcpad): Add gst_element_no_more_pads() for proper decodebin behaviour. * gst/id3demux/id3v2frames.c: (parse_comment_frame), (parse_text_identification_frame), (parse_split_strings): Failure to decode some tags is not a GST_ERROR() but a GST_WARNING() When iterating over a chunk of text, check that we haven't gone too far. 2006-01-05 Stefan Kost * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (plugin_init): call oil_init() when using liboil 2006-01-04 Wim Taymans * ext/jpeg/gstsmokedec.c: (gst_smokedec_chain): * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain): Fix leaks. 2006-01-02 Alessandro Decina Reviewed by: Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_write), (gst_flac_dec_convert_src), (gst_flac_dec_src_query), (gst_flac_dec_change_state): Don't g_assert() where we should just return FALSE; remove unnecessary g_assert(); initialize some fields properly in state change function (fixes #325504). Also, use GST_DEBUG_OBJECT in two more places. 2005-12-30 Stefan Kost * configure.ac: also remove smoothwave's Makefile.am * docs/plugins/Makefile.am: fix plugin docs 2005-12-30 Stefan Kost * tests/examples/Makefile.am: added missing Makefile.am 2005-12-30 Stefan Kost * configure.ac: * gst/level/Makefile.am: * gst/level/level-example.c: * tests/Makefile.am: * tests/examples/level/Makefile.am: * tests/examples/level/level-example.c: (message_handler), (main): moved level-example to tests/examples/level-example * tests/old/examples/level/demo.c: (main): * tests/old/examples/level/plot.c: (main): some initial fixes 2005-12-29 Michael Smith * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render), (gst_multiudpsink_remove), (gst_multiudpsink_get_stats): * gst/udp/gstmultiudpsink.h: Track packets sent per client in addition to bytes sent; provide this info through get-stats signal 2005-12-29 Tim-Philipp Müller * gst/auparse/gstauparse.c: (gst_au_parse_dispose): Can't use gst_object_unref() on a GstAdapter (#325191). 2005-12-28 Jan Schmidt * gst/id3demux/id3tags.c: (id3demux_read_id3v2_tag): If a broken tag has 0 bytes payload, at least still skip the 10 byte header 2005-12-22 Philippe Khalaf * gst-plugins-good/gst/rtp/gstrtph263pdepay.h: * gst-plugins-good/gst/rtp/gstrtph263pdepay.c: * gst-plugins-good/gst/rtp/gstrtpmp4vdepay.h: * gst-plugins-good/gst/rtp/gstrtpmp4vdepay.c: Making these depayloaders (H263+ and mpeg4 video) inherit from RtpBaseDepayloaderClass. Fixes bugs #323922 and #323908. 2005-12-21 Jan Schmidt * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/gst-plugins-good-plugins.hierarchy: Regenerate the plugin hiearchy. 2005-12-21 Jan Schmidt * 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: * gst/id3demux/gstid3demux.c: (gst_id3demux_get_type), (gst_id3demux_base_init), (gst_id3demux_class_init), (gst_id3demux_chain): * gst/id3demux/gstid3demux.h: Add documentation for id3demux. Don't fail if the first buffer is not at offset 0, just attempt to typefind and do pass through Rename the gst_type function from gst_gst_id3demux.. 2005-12-20 Michael Smith * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render), (gst_multiudpsink_add), (gst_multiudpsink_remove), (gst_multiudpsink_get_stats): * gst/udp/gstmultiudpsink.h: Collect statistics; return them from get_stats. 2005-12-19 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan): Stupid signedness issue... 2005-12-19 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_odml), (gst_avi_demux_peek_tag), (gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan), (gst_avi_demux_stream_header), (gst_avi_demux_loop): Construct index for indexless files. Make sure pad/buffers are correctly reset to NULL once we don't need them anymore, else we get lovely segfaults/assertions. * gst/wavparse/gstwavparse.c: Yes, you can have 96KHz audio and wma in wav :( 2005-12-18 Jan Schmidt * configure.ac: Check for optional dependency on zlib for id3demux * gst/id3demux/Makefile.am: * gst/id3demux/gstid3demux.c: (gst_gst_id3demux_get_type), (gst_id3demux_base_init), (gst_id3demux_class_init), (gst_id3demux_reset), (gst_id3demux_init), (gst_id3demux_dispose), (gst_id3demux_add_srcpad), (gst_id3demux_remove_srcpad), (gst_id3demux_trim_buffer), (gst_id3demux_chain), (gst_id3demux_set_property), (gst_id3demux_get_property), (id3demux_get_upstream_size), (gst_id3demux_srcpad_event), (gst_id3demux_read_id3v1), (gst_id3demux_read_id3v2), (gst_id3demux_sink_activate), (gst_id3demux_src_activate_pull), (gst_id3demux_src_checkgetrange), (gst_id3demux_read_range), (gst_id3demux_src_getrange), (gst_id3demux_change_state), (gst_id3demux_pad_query), (gst_id3demux_get_query_types), (simple_find_peek), (simple_find_suggest), (gst_id3demux_do_typefind), (gst_id3demux_send_tag_event), (plugin_init): * gst/id3demux/gstid3demux.h: * gst/id3demux/id3tags.c: (read_synch_uint), (id3demux_read_id3v1_tag), (id3demux_read_id3v2_tag), (id3demux_id3v2_frame_hdr_size), (convert_fid_to_v240), (id3demux_id3v2_frames_to_tag_list): * gst/id3demux/id3tags.h: * gst/id3demux/id3v2.4.0-frames.txt: * gst/id3demux/id3v2.4.0-structure.txt: * gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame), (parse_comment_frame), (parse_text_identification_frame), (id3v2_tag_to_taglist), (parse_split_strings): All new LGPL id3 demuxer. Can use zlib for compressed frames, otherwise it discards them. Works on my test files. * gst/wavparse/gstwavparse.c: (gst_wavparse_loop): Don't send EOS to a non-existing srcpad The debug category can be static 2005-12-16 Stefan Kost * ext/esd/esdmon.c: (gst_esdmon_open_audio): * ext/esd/esdsink.c: (gst_esdsink_prepare): * gst/multipart/multipartdemux.c: change some char* into char[] 2005-12-16 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_reset), (gst_wavparse_other), (gst_wavparse_perform_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_pad_convert), (gst_wavparse_srcpad_event), (gst_wavparse_sink_activate_pull): * gst/wavparse/gstwavparse.h: Use GstSegment to implement more seeking features. 2005-12-16 Tim-Philipp Müller * gst/rtsp/rtspconnection.c: Add include and move include to make things work on OpenBSD as well (fixes #323717; patch by: Benjamin Pineau) 2005-12-14 Edgard Lima * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: Set clock rate to be fixed in 8000. It fixes bug #324012. 2005-12-14 Philippe Khalaf * gst-plugins-good/gst/rtp/gstasteriskh263.c: * gst-plugins-good/gst/rtp/gstrtpamrdepay.c: * gst-plugins-good/gst/rtp/gstrtpamrpay.c: * gst-plugins-good/gst/rtp/gstrtpg711depay.c: * gst-plugins-good/gst/rtp/gstrtpg711depay.c: * gst-plugins-good/gst/rtp/gstrtpgsmdepay.c: * gst-plugins-good/gst/rtp/gstrtph263pay.c: * gst-plugins-good/gst/rtp/gstrtph263pdepay.c: * gst-plugins-good/gst/rtp/gstrtph263ppay.c: * gst-plugins-good/gst/rtp/gstrtpmp4vdepay.c: * gst-plugins-good/gst/rtp/gstrtpmp4vpay.c: * gst-plugins-good/gst/rtp/gstrtpmpadepay.c: * gst-plugins-good/gst/rtp/gstrtpmpapay.c: * gst-plugins-good/gst/rtp/README: Fixed payload range in payloder caps. Removed payload range completely from depayloaders as they don't require payload type in their caps. In effect, there isn't any specific payload type for any given codec, only suggestions. Fixes bug #324011. 2005-12-13 Julien MOUTTE * gst/videomixer/videomixer.c: (gst_videomixer_init), (gst_videomixer_fill_queues), (gst_videomixer_blend_buffers), (gst_videomixer_collected): Code cleanup and re-enabling queued time validity check for correct EOS handling. 2005-12-13 Tim-Philipp Müller * sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init), (gst_oss_mixer_element_get_property), (gst_oss_mixer_element_change_state): Add 'device-name' property and fix state change function. 2005-12-13 Edward Hervey * gst/flx/gstflxdec.c: (gst_flxdec_chain): If the speed of the file is null in the header, set the frame_time to the default setting of GST_SECOND / 70. Which is the default frame_delay for .fli files as stated in this document : http://www.compuphase.com/flic.htm Would be nice to have the time conversion done properly too (duration = flxh->frames * flxdec->frame_time) 2005-12-12 Julien MOUTTE * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * gst/videomixer/videomixer.c: (gst_videomixer_pad_sink_setcaps), (gst_videomixer_getcaps), (gst_videomixer_fill_queues), (gst_videomixer_update_queues), (gst_videomixer_collected): Adding documentation for videomixer on my way with a funny sample pipeline. 2005-12-12 Julien MOUTTE * gst/videomixer/videomixer.c: (gst_videomixer_pad_sink_setcaps), (gst_videomixer_getcaps), (gst_videomixer_fill_queues), (gst_videomixer_update_queues), (gst_videomixer_collected): Fix caps negotiation. (#323896) 2005-12-12 Arwed v. Merkatz * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup_or_simpleblock): Set correct timestamps on audio laces, fixes playback of mp3 from matroska. 2005-12-12 Tim-Philipp Müller * gst/auparse/gstauparse.c: (gst_au_parse_base_init), (gst_au_parse_class_init), (gst_au_parse_init), (gst_au_parse_dispose), (gst_au_parse_chain), (gst_au_parse_change_state), (plugin_init): * gst/auparse/gstauparse.h: Use gst_object_unref() for GstObjects instead of g_object_unref() and fix a mem leak in a debug statement; while we're at it, also borgify, use boilerplate macros and clean up a little bit. 2005-12-11 Edward Hervey * gst/debug/efence.c: (gst_efence_init), (gst_efence_getrange), (gst_efence_checkgetrange), (gst_efence_activate_src_pull): Added pull mode. 2005-12-11 Tim-Philipp Müller * gst/goom/gstgoom.c: * gst/level/level-example.c: (main): * gst/smoothwave/demo-osssrc.c: (main): Use audiotestsrc instead of sinesrc (#323798). 2005-12-11 Stefan Kost * sys/oss/gstosssink.c: (gst_oss_sink_class_init): more debug-func-ptr usage 2005-12-11 Zeeshan Ali * gst/flx/flx_color.c: (flx_colorspace_convert): * gst/flx/flx_color.h: * gst/flx/flx_fmt.h: * gst/flx/gstflxdec.c: (flx_decode_chunks), (gst_flxdec_chain): * gst/flx/gstflxdec.h: Now flxdec works on big-endian machines as well. 2005-12-11 Tim-Philipp Müller * gst/debug/efence.c: (gst_efence_init), (gst_efence_chain), (gst_fenced_buffer_copy): Make sure GST_BUFFER_DATA is set on fenced copied buffers; fix GST_DEBUG crasher where GST_TIME_FORMAT was not used in conjunction with GST_TIME_ARGS. Also, don't leak pad templates and use GST_DEBUG_FUNCPTR for pad functions. 2005-12-10 Tim-Philipp Müller * ext/flac/gstflacdec.c: (gst_flac_dec_base_init), (gst_flac_dec_class_init), (gst_flac_dec_init), (gst_flac_dec_metadata_callback), (gst_flac_dec_error_callback), (gst_flac_dec_eof), (gst_flac_dec_write), (gst_flac_dec_loop), (gst_flac_dec_convert_src), (gst_flac_dec_get_src_query_types), (gst_flac_dec_src_query), (gst_flac_dec_send_newsegment), (gst_flac_dec_handle_seek_event), (gst_flac_dec_src_event), (gst_flac_dec_change_state): * ext/flac/gstflacdec.h: Rewrite flacdec a bit, so that even seeking might work now. Most importantly, don't act upon any flow return values we get, just tell the decoder everything's dandy and act on the flow return values later on in the loop function. We don't want to mess up the internal decoder state for non-fatal things like flushing pads etc. Other than that, use GstSegment (segment seeks don't work yet though, but should be easy to add), use boilerplate macros, drop the superfluous 'flacdec:' from debug messages, use gst_util_uint64_scale_int, and lots of other things. 2005-12-10 Tim-Philipp Müller * configure.ac: Update comment in OSS includes check. * sys/oss/gstossdmabuffer.c: * sys/oss/gstosshelper.c: * sys/oss/gstossmixer.c: * sys/oss/gstossmixertrack.c: * sys/oss/gstosssink.c: * sys/oss/gstosssrc.c: * sys/oss/oss_probe.c: Don't assume the OSS soundcard.h include is always in the sys/ directory. Instead, use the existing defines from config.h to include the right file. Fixes compilation on OpenBSD 3.8 (#323718). 2005-12-09 Thomas Vander Stichele * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-1394.xml: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavparse.xml: * ext/flac/gstflac.c: (plugin_init): * ext/flac/gstflacdec.c: (flacdec_get_type), (gst_flac_dec_base_init), (gst_flac_dec_class_init), (gst_flac_dec_init), (gst_flac_dec_finalize), (gst_flac_dec_update_metadata), (gst_flac_dec_metadata_callback), (gst_flac_dec_error_callback), (gst_flac_dec_seek), (gst_flac_dec_tell), (gst_flac_dec_length), (gst_flac_dec_eof), (gst_flac_dec_read), (gst_flac_dec_write), (gst_flac_dec_loop), (gst_flac_dec_get_src_formats), (gst_flac_dec_convert_src), (gst_flac_dec_get_src_query_types), (gst_flac_dec_src_query), (gst_flac_dec_src_event), (gst_flac_dec_sink_activate), (gst_flac_dec_sink_activate_pull), (gst_flac_dec_change_state): * ext/flac/gstflacdec.h: * ext/flac/gstflacenc.c: (gst_flac_enc_quality_get_type), (gst_flac_enc_base_init), (gst_flac_enc_class_init), (gst_flac_enc_init), (gst_flac_enc_finalize), (add_one_tag), (gst_flac_enc_set_metadata), (gst_flac_enc_sink_setcaps), (gst_flac_enc_update_quality), (gst_flac_enc_seek_callback), (gst_flac_enc_write_callback), (gst_flac_enc_tell_callback), (gst_flac_enc_sink_event), (gst_flac_enc_chain), (gst_flac_enc_set_property), (gst_flac_enc_get_property), (gst_flac_enc_change_state): * ext/flac/gstflacenc.h: borgify and fix up documentation 2005-12-09 Michael Smith * ext/flac/gstflacdec.c: (raw_caps_factory), (gst_flacdec_write): Accept a wider range of flac files, more closely matching flac spec. 2005-12-08 Julien MOUTTE * docs/plugins/Makefile.am: Add multipart elements. * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: Fix flac. * docs/plugins/gst-plugins-good-plugins.hierarchy: * gst/multipart/multipartdemux.c: * gst/multipart/multipartmux.c: Add docs. 2005-12-07 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream), (gst_avi_demux_stream_header), (gst_avi_demux_invert): Memleak and crasher fixes. * gst/wavparse/gstwavparse.c: (gst_wavparse_base_init), (gst_wavparse_create_sourcepad), (gst_wavparse_stream_headers): Memleak fixes 2005-12-06 Thomas Vander Stichele * ext/aalib/gstaasink.h: * ext/cairo/gsttextoverlay.h: * ext/dv/gstdvdec.h: * ext/dv/gstdvdemux.c: * ext/dv/gstdvdemux.h: * ext/esd/esdsink.h: * ext/flac/flac_compat.h: * ext/flac/gstflacdec.h: * ext/flac/gstflacenc.h: * ext/gconf/gconf.h: * ext/gconf/gstgconfaudiosink.h: * ext/gconf/gstgconfvideosink.h: * ext/gdk_pixbuf/gstgdkanimation.h: * ext/jpeg/gstjpegdec.h: * ext/jpeg/smokecodec.h: * ext/jpeg/smokeformat.h: * ext/ladspa/gstsignalprocessor.h: * ext/ladspa/search.c: (LADSPAPluginSearch): * ext/ladspa/utils.h: * ext/libmng/gstmng.c: * ext/libmng/gstmngdec.h: * ext/libmng/gstmngenc.c: * ext/libmng/gstmngenc.h: * ext/libpng/gstpng.c: * ext/libpng/gstpngenc.c: * ext/libpng/gstpngenc.h: * ext/shout2/gstshout2.h: * ext/speex/gstspeexdec.h: * ext/speex/gstspeexenc.c: * ext/speex/gstspeexenc.h: * gst/auparse/gstauparse.c: (gst_auparse_chain): * gst/autodetect/gstautoaudiosink.h: * gst/autodetect/gstautovideosink.h: * gst/avi/gstavidemux.h: * gst/cutter/gstcutter.c: (gst_cutter_chain), (gst_cutter_set_property), (gst_cutter_get_caps): * gst/cutter/gstcutter.h: * gst/debug/tests.c: (md5_process_block): * gst/debug/tests.h: * gst/effectv/gstwarp.c: * gst/flx/flx_fmt.h: * gst/flx/gstflxdec.h: * gst/goom/filters.c: (setPixelRGB), (getPixelRGB), (getPixelRGB_), (zoomFilterFastRGB): * gst/goom/filters.h: * gst/goom/goom_tools.h: * gst/law/alaw-encode.c: * gst/level/gstlevel.c: * gst/level/gstlevel.h: * gst/matroska/ebml-write.h: * gst/matroska/matroska-demux.h: * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.h: * gst/monoscope/convolve.c: (convolve_match): * gst/monoscope/convolve.h: * gst/multipart/multipartmux.c: * gst/oldcore/gstaggregator.c: * gst/oldcore/gstaggregator.h: * gst/oldcore/gstmd5sink.c: (md5_process_block): * gst/oldcore/gstmd5sink.h: * gst/oldcore/gstmultifilesrc.c: * gst/oldcore/gstmultifilesrc.h: * gst/oldcore/gstpipefilter.h: * gst/oldcore/gstshaper.h: * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtpL16pay.h: * gst/rtp/gstrtpdepay.h: * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmp4vpay.h: * gst/rtsp/gstrtspsrc.c: * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspconnection.h: * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspmessage.h: * gst/rtsp/rtsptransport.h: * gst/rtsp/rtspurl.c: * gst/rtsp/rtspurl.h: * gst/rtsp/sdpmessage.c: * gst/rtsp/sdpmessage.h: * gst/smpte/barboxwipes.c: * gst/smpte/gstmask.h: * gst/smpte/gstsmpte.h: * gst/smpte/paint.c: * gst/smpte/paint.h: * gst/udp/gstdynudpsink.h: * gst/udp/gstmultiudpsink.h: * gst/udp/gstudpsink.c: * gst/udp/gstudpsink.h: * gst/udp/gstudpsrc.c: * gst/videomixer/videomixer.c: * gst/wavenc/riff.h: * gst/wavparse/gstwavparse.h: * sys/oss/gstossdmabuffer.h: * sys/oss/gstossmixer.h: * sys/oss/gstossmixerelement.h: * sys/oss/gstossmixertrack.h: * sys/oss/gstosssink.c: * sys/oss/gstosssink.h: * sys/oss/gstosssrc.c: * sys/oss/gstosssrc.h: * sys/osxaudio/gstosxaudioelement.h: * sys/osxaudio/gstosxaudiosink.h: * sys/osxaudio/gstosxaudiosrc.h: expand tabs === release 0.10.0 === 2005-12-05 * configure.ac: releasing 0.10.0, "Abondance" 2005-12-05 Andy Wingo * ext/dv/gstdvdec.c: (gst_dvdec_chain): * ext/flac/gstflacdec.c: (gst_flacdec_write): * ext/flac/gstflacenc.c: (gst_flacenc_write_callback): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_chain): * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_chain): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain): * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_process): * ext/libpng/gstpngdec.c: (user_info_callback), (gst_pngdec_task): * ext/speex/gstspeexdec.c: (speex_dec_chain): * ext/speex/gstspeexenc.c: (gst_speexenc_chain): * gst/auparse/gstauparse.c: (gst_auparse_chain): * gst/flx/gstflxdec.c: (gst_flxdec_chain): * gst/goom/gstgoom.c: (gst_goom_chain): * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_vorbis_codec_priv_data), (gst_matroska_demux_add_wvpk_header): * gst/multipart/multipartdemux.c: (gst_multipart_demux_chain): * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): * gst/videomixer/videomixer.c: (gst_videomixer_collected): * gst/wavenc/gstwavenc.c: (gst_wavenc_chain): Update for alloc_buffer changes. 2005-12-05 Michael Smith * docs/plugins/gst-plugins-good-plugins.args: Remove args for plugins that aren't in -good. === release 0.9.7 === 2005-12-01 * configure.ac: releasing 0.9.7, "Mijn Hond Heeft Geen Neus" 2005-12-01 Thomas Vander Stichele * docs/plugins/.cvsignore: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/inspect/plugin-multipart.xml: * docs/plugins/inspect/plugin-rtp.xml: add multipart plugin to docs 2005-12-01 Thomas Vander Stichele * configure.ac: * ext/Makefile.am: * ext/pango/Makefile.am: * ext/pango/gstclockoverlay.c: * ext/pango/gstclockoverlay.h: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextoverlay.h: * ext/pango/gsttextrender.c: * ext/pango/gsttextrender.h: * ext/pango/gsttimeoverlay.c: * ext/pango/gsttimeoverlay.h: move pango to base 2005-12-01 Thomas Vander Stichele * gst/rtp/Makefile.am: * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtpL16parse.c: * gst/rtp/gstrtpL16parse.h: * gst/rtp/gstrtpgsmdepay.c: * gst/rtp/gstrtpgsmdepay.h: * gst/rtp/gstrtpgsmparse.c: * gst/rtp/gstrtpgsmparse.h: parsers are depayers 2005-12-01 Thomas Vander Stichele * gst/rtp/Makefile.am: * gst/rtp/gstasteriskh263.c: * gst/rtp/gstrtp.c: * gst/rtp/gstrtpL16enc.c: * gst/rtp/gstrtpL16enc.h: * gst/rtp/gstrtpL16parse.c: * gst/rtp/gstrtpL16parse.h: * gst/rtp/gstrtpL16pay.c: * gst/rtp/gstrtpL16pay.h: * gst/rtp/gstrtpamrdec.c: * gst/rtp/gstrtpamrdec.h: * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpamrdepay.h: * gst/rtp/gstrtpamrenc.c: * gst/rtp/gstrtpamrenc.h: * gst/rtp/gstrtpamrpay.c: * gst/rtp/gstrtpamrpay.h: * gst/rtp/gstrtpdec.c: * gst/rtp/gstrtpdec.h: * gst/rtp/gstrtpdepay.c: * gst/rtp/gstrtpdepay.h: * gst/rtp/gstrtpg711dec.c: * gst/rtp/gstrtpg711dec.h: * gst/rtp/gstrtpg711depay.c: * gst/rtp/gstrtpg711depay.h: * gst/rtp/gstrtpg711enc.c: * gst/rtp/gstrtpg711enc.h: * gst/rtp/gstrtpg711pay.c: * gst/rtp/gstrtpg711pay.h: * gst/rtp/gstrtpgsmenc.c: * gst/rtp/gstrtpgsmenc.h: * gst/rtp/gstrtpgsmparse.c: * gst/rtp/gstrtpgsmparse.h: * gst/rtp/gstrtpgsmpay.c: * gst/rtp/gstrtpgsmpay.h: * gst/rtp/gstrtph263enc.c: * gst/rtp/gstrtph263enc.h: * gst/rtp/gstrtph263pay.c: * gst/rtp/gstrtph263pay.h: * gst/rtp/gstrtph263pdec.c: * gst/rtp/gstrtph263pdec.h: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263pdepay.h: * gst/rtp/gstrtph263penc.c: * gst/rtp/gstrtph263penc.h: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtph263ppay.h: * gst/rtp/gstrtpmp4vdec.c: * gst/rtp/gstrtpmp4vdec.h: * gst/rtp/gstrtpmp4vdepay.c: * gst/rtp/gstrtpmp4vdepay.h: * gst/rtp/gstrtpmp4venc.c: * gst/rtp/gstrtpmp4venc.h: * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmp4vpay.h: * gst/rtp/gstrtpmpadec.c: * gst/rtp/gstrtpmpadec.h: * gst/rtp/gstrtpmpadepay.c: * gst/rtp/gstrtpmpadepay.h: * gst/rtp/gstrtpmpaenc.c: * gst/rtp/gstrtpmpaenc.h: * gst/rtp/gstrtpmpapay.c: * gst/rtp/gstrtpmpapay.h: * gst/rtp/gstrtpspeexdec.c: * gst/rtp/gstrtpspeexdec.h: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexdepay.h: * gst/rtp/gstrtpspeexenc.c: * gst/rtp/gstrtpspeexenc.h: * gst/rtp/gstrtpspeexpay.c: * gst/rtp/gstrtpspeexpay.h: Do burger's rename for rtp payloaders and depayloaders 2005-11-30 Wim Taymans * ext/dv/gstdvdec.c: (gst_dvdec_chain): * ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame): * ext/dv/gstdvdemux.h: Fix seeking in dvdemux again, add some more debug info. 2005-11-30 Thomas Vander Stichele * configure.ac: fix tests 2005-11-30 Thomas Vander Stichele * PORTED_09: * docs/random/PORTED_09: move * tests/Makefile.am: add * win32/gst.sln: remove 2005-11-30 Thomas Vander Stichele * Makefile.am: * check/.cvsignore: * check/Makefile.am: * check/elements/.cvsignore: * check/elements/level.c: * check/elements/matroskamux.c: * configure.ac: * examples/Makefile.am: * examples/capsfilter/Makefile.am: * examples/capsfilter/capsfilter1.c: * examples/gob/Makefile.am: * examples/gob/gst-identity2.gob: * examples/gstplay/.cvsignore: * examples/gstplay/Makefile.am: * examples/gstplay/player.c: * examples/indexing/.cvsignore: * examples/indexing/Makefile.am: * examples/indexing/indexmpeg.c: * examples/level/Makefile.am: * examples/level/README: * examples/level/demo.c: * examples/level/plot.c: * examples/stats/Makefile.am: * examples/stats/mp2ogg.c: * examples/switch/.cvsignore: * examples/switch/Makefile.am: * examples/switch/switcher.c: move under tests/ 2005-11-30 Tim-Philipp Müller * ext/pango/gsttextrender.c: (gst_text_render_base_init), (gst_text_render_class_init), (resize_bitmap), (gst_text_render_render_text), (gst_text_render_setcaps), (gst_text_render_fixate_caps), (gst_text_renderer_bitmap_to_ayuv), (gst_text_render_chain), (gst_text_render_finalize), (gst_text_render_init), (gst_text_render_set_property): * ext/pango/gsttextrender.h: Add missing files. 2005-11-30 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/pango/Makefile.am: * ext/pango/gstclockoverlay.c: (gst_clock_overlay_base_init), (gst_clock_overlay_render_time), (gst_clock_overlay_get_text), (gst_clock_overlay_class_init), (gst_clock_overlay_init): * ext/pango/gstclockoverlay.h: * ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_get_text), (gst_text_overlay_class_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_update_wrap_mode), (gst_text_overlay_setcaps), (gst_text_overlay_text_pad_linked), (gst_text_overlay_text_pad_unlinked), (gst_text_overlay_set_property), (gst_text_overlay_getcaps), (gst_text_overlay_shade_y), (gst_text_overlay_blit_yuv420), (gst_text_overlay_resize_bitmap), (gst_text_overlay_render_text), (gst_text_overlay_push_frame), (gst_text_overlay_pop_video), (gst_text_overlay_pop_text), (gst_text_overlay_collected), (gst_text_overlay_change_state), (plugin_init): * ext/pango/gsttextoverlay.h: * ext/pango/gsttimeoverlay.c: (gst_time_overlay_base_init), (gst_time_overlay_render_time), (gst_time_overlay_get_text), (gst_time_overlay_class_init), (gst_time_overlay_init): * ext/pango/gsttimeoverlay.h: Port pango-based textoverlay, timeoverlay and textrender to 0.9 and add background shading and text wrapping modes. Make timoverlay derive from textoverlay. Also add new clockoverlay element. 2005-11-30 Julien MOUTTE * gst/udp/Makefile.am: Moved to netbuffer. 2005-11-30 Julien MOUTTE * configure.ac: * PORTED_O9: * gst/multipart/Makefile.am: * gst/multipart/multipartdemux.c: (gst_multipart_demux_base_init), (gst_multipart_demux_class_init), (gst_multipart_demux_init), (gst_multipart_find_pad_by_mime), (gst_multipart_demux_chain), (gst_multipart_demux_change_state), (gst_multipart_demux_plugin_init): * gst/multipart/multipartmux.c: (gst_multipart_mux_class_init), (gst_multipart_mux_init), (gst_multipart_mux_finalize), (gst_multipart_mux_sinkconnect), (gst_multipart_mux_request_new_pad), (gst_multipart_mux_handle_src_event), (gst_multipart_mux_queue_pads), (gst_multipart_mux_collected), (gst_multipart_mux_change_state): Ported multipart mux/demux to 0.9. 2005-11-30 Thomas Vander Stichele * gst/debug/gstnavigationtest.c: (gst_navigationtest_get_type): * gst/debug/gstnavigationtest.h: * gst/effectv/gstaging.c: (gst_agingtv_get_type): * gst/effectv/gstdice.c: (gst_dicetv_get_type): * gst/effectv/gstedge.c: (gst_edgetv_get_type): * gst/effectv/gstquark.c: (gst_quarktv_get_type): * gst/effectv/gstrev.c: (gst_revtv_get_type): * gst/effectv/gstshagadelic.c: (gst_shagadelictv_get_type): * gst/effectv/gstvertigo.c: (gst_vertigotv_get_type): * gst/effectv/gstwarp.c: (gst_warptv_get_type): * gst/videofilter/gstvideoflip.c: (gst_video_flip_set_property), (gst_video_flip_get_type): * gst/videofilter/gstvideoflip.h: update for symbols change 2005-11-29 Thomas Vander Stichele * gst/udp/gstdynudpsink.c: * gst/udp/gstudpsrc.c: the old gstnet lib was renamed gstnetbuffer (#322257) 2005-11-29 Tim-Philipp Müller * ext/cairo/gsttextoverlay.c: (gst_text_overlay_render_text), (gst_text_overlay_collected): Actually render the text from the text pad. 2005-11-29 Edward Hervey * gst/debug/gstnavseek.c: (gst_navseek_event): * gst/debug/progressreport.c: (gst_progress_report_event): Update for GstBaseTransform event virtual method 2005-11-29 Thomas Vander Stichele * ext/cairo/Makefile.am: no need to link to videofilter 2005-11-29 Thomas Vander Stichele * gst/debug/Makefile.am: * gst/debug/gstnavigationtest.h: * gst/effectv/Makefile.am: * gst/effectv/gstaging.c: * gst/effectv/gstdice.c: * gst/effectv/gstedge.c: * gst/effectv/gstquark.c: * gst/effectv/gstrev.c: * gst/effectv/gstshagadelic.c: * gst/effectv/gstvertigo.c: * gst/effectv/gstwarp.c: * gst/videofilter/Makefile.am: * gst/videofilter/gstvideofilter.c: * gst/videofilter/gstvideofilter.h: * gst/videofilter/gstvideoflip.h: remove the videofilter library and link to the one in base 2005-11-28 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry): Useless check now we're setting the current entry correctly. 2005-11-28 Tim-Philipp Müller * ext/jpeg/gstjpegenc.c: (gst_jpegenc_resync), (gst_jpegenc_chain), (gst_jpegenc_set_property), (gst_jpegenc_get_property), (gst_jpegenc_change_state): Don't leak input buffer in chain function (fixes #322667); make state change function thread-safe; don't repeat the current function name in GST_DEBUG statements; use GST_ROUND_UP_* macros; use gst_pad_alloc_buffer(); misc. minor cleanups. 2005-11-28 Jan Schmidt * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): Look for pixel-aspect-ratio in caps, not pixel_width and pixel_height (Fixes: #322645) 2005-11-28 Jan Schmidt * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): From Michal Benes: frame duration should be GST_SECOND / framerate, not GST_SECOND * framerate. (Fixes: #322643) 2005-11-27 Thomas Vander Stichele * configure.ac: fix up GST_PLUGIN_LDFLAGS * gst/rtsp/rtspconnection.c: fix includes (see #317043) * gst/videofilter/Makefile.am: stop installing this library 2005-11-26 Edward Hervey * ext/dv/gstdvdec.c: (gst_dvdec_sink_setcaps): Handle the case where the incoming Video dv stream doesn't have a pixel aspect ratio set. 2005-11-25 Thomas Vander Stichele * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * ext/flac/gstflacdec.c: document flacdec 2005-11-25 Thomas Vander Stichele * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-autodetect.xml: * ext/cairo/gstcairo.c: (plugin_init): * ext/cairo/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_class_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_font_init), (gst_text_overlay_set_property), (gst_text_overlay_render_text), (gst_text_overlay_getcaps), (gst_text_overlay_setcaps), (gst_text_overlay_text_pad_linked), (gst_text_overlay_text_pad_unlinked), (gst_text_overlay_shade_y), (gst_text_overlay_blit_1), (gst_text_overlay_blit_sub2x2), (gst_text_overlay_push_frame), (gst_text_overlay_pop_video), (gst_text_overlay_pop_text), (gst_text_overlay_collected), (gst_text_overlay_change_state): * ext/cairo/gsttextoverlay.h: * ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_update_font_height), (gst_cairo_time_overlay_set_caps), (gst_cairo_time_overlay_get_unit_size), (gst_cairo_time_overlay_print_smpte_time), (gst_cairo_time_overlay_transform), (gst_cairo_time_overlay_base_init), (gst_cairo_time_overlay_class_init), (gst_cairo_time_overlay_init), (gst_cairo_time_overlay_get_type): * ext/cairo/gsttimeoverlay.h: do some name borgifying document 2005-11-25 Thomas Vander Stichele * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_base_init): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_base_init), (gst_auto_video_sink_factory_filter): documenting auto*sink using strstr for the video sink lookup, class field is not ordered * docs/plugins/inspect/plugin-1394.xml: * docs/plugins/inspect/plugin-aasink.xml: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-alphacolor.xml: * docs/plugins/inspect/plugin-auparse.xml: * docs/plugins/inspect/plugin-autodetect.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-cacasink.xml: * docs/plugins/inspect/plugin-cairo.xml: * docs/plugins/inspect/plugin-cutter.xml: * docs/plugins/inspect/plugin-debug.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-efence.xml: * docs/plugins/inspect/plugin-effectv.xml: * docs/plugins/inspect/plugin-esdsink.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-flxdec.xml: * docs/plugins/inspect/plugin-gconfelements.xml: * docs/plugins/inspect/plugin-goom.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-level.xml: * docs/plugins/inspect/plugin-matroska.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-navigationtest.xml: * docs/plugins/inspect/plugin-ossaudio.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-rtsp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-smpte.xml: * docs/plugins/inspect/plugin-speex.xml: * docs/plugins/inspect/plugin-udp.xml: * docs/plugins/inspect/plugin-videobox.xml: * docs/plugins/inspect/plugin-videoflip.xml: * docs/plugins/inspect/plugin-videomixer.xml: * docs/plugins/inspect/plugin-wavenc.xml: * docs/plugins/inspect/plugin-wavparse.xml: update for HEAD version 2005-11-25 Michael Smith * gst/udp/gstudpsrc.c: (gst_udpsrc_stop): Patch from Sebastien Cote to close control sockets in udpsrc. 2005-11-24 Julien MOUTTE * gst/effectv/gstquark.c: (gst_quarktv_set_caps), (gst_quarktv_get_unit_size), (gst_quarktv_transform), (gst_quarktv_planetable_clear), (gst_quarktv_change_state), (gst_quarktv_base_init), (gst_quarktv_class_init), (gst_quarktv_init): Flush the planes list on reverse caps negotiation. This was crashing because of differently sized buffers. 2005-11-24 Julien MOUTTE * gst/debug/gstnavigationtest.c: (draw_box_planar411): * gst/videofilter/gstvideoflip.c: (gst_videoflip_method_get_type), (gst_videoflip_set_caps), (gst_videoflip_transform_caps), (gst_videoflip_get_unit_size), (gst_videoflip_flip), (gst_videoflip_transform), (gst_videoflip_handle_src_event), (gst_videoflip_set_property), (gst_videoflip_base_init), (gst_videoflip_class_init), (gst_videoflip_init): Handle strides correctly, fix identity flipping, convert navigation event correctly again. 2005-11-23 Thomas Vander Stichele * configure.ac: back to HEAD === release 0.9.6 === 2005-11-23 Thomas Vander Stichele * configure.ac: releasing 0.9.6, "Everything's Not Lost" 2005-11-23 Jan Schmidt * gst/debug/gstnavigationtest.c: (gst_navigationtest_init): Oops, initialise the framerate GValue 2005-11-23 Julien MOUTTE * ext/cairo/gsttimeoverlay.c: (gst_timeoverlay_update_font_height), (gst_timeoverlay_set_caps), (gst_timeoverlay_get_unit_size), (gst_timeoverlay_transform), (gst_timeoverlay_base_init), (gst_timeoverlay_class_init), (gst_timeoverlay_init), (gst_timeoverlay_get_type): * ext/cairo/gsttimeoverlay.h: * gst/debug/Makefile.am: * gst/debug/gstnavigationtest.c: (gst_navigationtest_handle_src_event), (gst_navigationtest_get_unit_size), (gst_navigationtest_set_caps), (gst_navigationtest_transform), (gst_navigationtest_change_state), (gst_navigationtest_base_init), (gst_navigationtest_class_init), (gst_navigationtest_init), (gst_navigationtest_get_type), (plugin_init): * gst/debug/gstnavigationtest.h: * gst/effectv/Makefile.am: * gst/effectv/gstaging.c: (gst_agingtv_set_caps), (gst_agingtv_get_unit_size), (gst_agingtv_transform), (gst_agingtv_base_init), (gst_agingtv_class_init), (gst_agingtv_init), (gst_agingtv_get_type): * gst/effectv/gstdice.c: (gst_dicetv_set_caps), (gst_dicetv_get_unit_size), (gst_dicetv_transform), (gst_dicetv_base_init), (gst_dicetv_class_init), (gst_dicetv_init), (gst_dicetv_get_type): * gst/effectv/gstedge.c: (gst_edgetv_set_caps), (gst_edgetv_get_unit_size), (gst_edgetv_transform), (gst_edgetv_base_init), (gst_edgetv_class_init), (gst_edgetv_init), (gst_edgetv_get_type): * gst/effectv/gsteffectv.c: * gst/effectv/gsteffectv.h: * gst/effectv/gstquark.c: (gst_quarktv_set_caps), (gst_quarktv_get_unit_size), (fastrand), (gst_quarktv_transform), (gst_quarktv_change_state), (gst_quarktv_base_init), (gst_quarktv_class_init), (gst_quarktv_init), (gst_quarktv_get_type): * gst/effectv/gstrev.c: (gst_revtv_set_caps), (gst_revtv_get_unit_size), (gst_revtv_transform), (gst_revtv_base_init), (gst_revtv_class_init), (gst_revtv_init), (gst_revtv_get_type): * gst/effectv/gstshagadelic.c: (gst_shagadelictv_set_caps), (gst_shagadelictv_get_unit_size), (gst_shagadelictv_transform), (gst_shagadelictv_base_init), (gst_shagadelictv_class_init), (gst_shagadelictv_init), (gst_shagadelictv_get_type): * gst/effectv/gstvertigo.c: (gst_vertigotv_set_caps), (gst_vertigotv_get_unit_size), (gst_vertigotv_transform), (gst_vertigotv_base_init), (gst_vertigotv_class_init), (gst_vertigotv_init), (gst_vertigotv_get_type): * gst/effectv/gstwarp.c: (gst_warptv_set_caps), (gst_warptv_get_unit_size), (gst_warptv_transform), (gst_warptv_base_init), (gst_warptv_class_init), (gst_warptv_init), (gst_warptv_get_type): * gst/videofilter/Makefile.am: * gst/videofilter/gstvideobalance.c: * gst/videofilter/gstvideobalance.h: * gst/videofilter/gstvideofilter.c: (gst_videofilter_get_type), (gst_videofilter_class_init), (gst_videofilter_init): * gst/videofilter/gstvideofilter.h: * gst/videofilter/gstvideoflip.c: (gst_videoflip_set_caps), (gst_videoflip_transform_caps), (gst_videoflip_get_unit_size), (gst_videoflip_flip), (gst_videoflip_transform), (gst_videoflip_handle_src_event), (gst_videoflip_set_property), (gst_videoflip_base_init), (gst_videoflip_class_init), (gst_videoflip_init), (plugin_init), (gst_videoflip_get_type): * gst/videofilter/gstvideoflip.h: VideoFilter inherits from BaseTransform, it's just a place holder for now and every video effect plugin has been ported to use BaseTransform features directly. QuarkTV was fixed too (was broken), navigationtest works and best for the end, videoflip converts navigation events depending on flip method ! Fixes #320953 2005-11-23 Jan Schmidt * ext/aalib/gstaasink.c: (gst_aasink_fixate): * ext/cairo/gsttextoverlay.c: (gst_text_overlay_collected): * gst/goom/gstgoom.c: (gst_goom_init), (gst_goom_src_setcaps), (gst_goom_src_negotiate), (gst_goom_chain): * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): * sys/osxvideo/osxvideosink.m: Fixes for API changes 2005-11-23 Michael Smith * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_setcaps), (gst_jpeg_dec_chain), (gst_jpeg_dec_change_state): * ext/jpeg/gstjpegdec.h: * ext/jpeg/gstjpegenc.c: (gst_jpegenc_setcaps): * ext/jpeg/gstjpegenc.h: * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_setcaps), (gst_smokeenc_resync): * ext/jpeg/gstsmokeenc.h: JPEG fractiony goodness. 2005-11-22 Michael Smith * gst/goom/filters.c: * gst/goom/graphic.h: Fix compilation by making some functions static inline instead of extern inline, matching the way they're used. 2005-11-22 Jan Schmidt * ext/cairo/gsttextoverlay.c: (gst_text_overlay_init), (gst_text_overlay_setcaps), (gst_text_overlay_collected): * ext/cairo/gsttextoverlay.h: * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_link): * ext/gdk_pixbuf/gstgdkpixbuf.h: * ext/libpng/gstpngdec.c: (gst_pngdec_init), (gst_pngdec_caps_create_and_set): * ext/libpng/gstpngdec.h: * ext/libpng/gstpngenc.c: (gst_pngenc_setcaps): * gst/alpha/gstalphacolor.c: (gst_alpha_color_set_caps): * gst/avi/gstavimux.c: (gst_avimux_init), (gst_avimux_vidsinkconnect): * gst/flx/gstflxdec.c: (gst_flxdec_chain): * gst/goom/gstgoom.c: (gst_goom_init), (gst_goom_src_setcaps), (gst_goom_src_negotiate), (gst_goom_chain): * gst/goom/gstgoom.h: * gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps): * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: More fractional framerate conversions 2005-11-22 Jan Schmidt * ext/aalib/gstaasink.c: (gst_aasink_fixate): * gst/debug/gstnavigationtest.c: (gst_navigationtest_handle_src_event): * gst/videofilter/gstvideofilter.c: (gst_videofilter_format_get_structure), (gst_videofilter_setcaps), (gst_videofilter_init): * gst/videofilter/gstvideofilter.h: Convert to fractional framerates. 2005-11-22 Thomas Vander Stichele * ext/aalib/gstaasink.c: * ext/dv/gstdvdec.c: * ext/esd/esdmon.c: * ext/flac/gstflacenc.c: * ext/gdk_pixbuf/pixbufscale.c: * ext/libcaca/gstcacasink.c: * ext/shout2/gstshout2.c: * gst/alpha/gstalpha.c: * gst/oldcore/gstaggregator.c: * gst/oldcore/gstshaper.c: * gst/smpte/barboxwipes.c: * gst/smpte/gstsmpte.c: * gst/videobox/gstvideobox.c: * gst/videofilter/gstvideoflip.c: * gst/videomixer/videomixer.c: fix up more enums 2005-11-22 Michael Smith * gst/videomixer/videomixer.c: (gst_videomixer_pad_sink_setcaps), (gst_videomixer_getcaps), (gst_videomixer_fill_queues), (gst_videomixer_update_queues): Fractional framerates, videomixer. 2005-11-22 Michael Smith * ext/dv/gstdvdec.c: (gst_dvdec_init), (gst_dvdec_sink_setcaps): * ext/dv/gstdvdec.h: * ext/dv/gstdvdemux.c: (gst_dvdemux_init), (gst_dvdemux_src_convert), (gst_dvdemux_sink_convert), (gst_dvdemux_demux_video), (gst_dvdemux_demux_frame), (gst_dvdemux_flush): * ext/dv/gstdvdemux.h: Fractional framerates for DV. 2005-11-22 Tim-Philipp Müller * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_find_best), (gst_auto_audio_sink_detect): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_find_best), (gst_auto_video_sink_detect): Use gst_plugin_feature_list_free() to free feature list and in the case of autovideosink free the list at all. Also miscellaneous cosmetic fixes. 2005-11-22 Thomas Vander Stichele * gst/cutter/gstcutter.c: (gst_cutter_chain), (gst_cutter_set_property), (gst_cutter_get_caps): copy calculation code from level; remove use of some audio functions 2005-11-22 Andy Wingo * Update for gst_tag_setter API changes. 2005-11-22 Andy Wingo * ext/dv/gstdvdemux.c (gst_dvdemux_handle_sink_event) (gst_dvdemux_demux_frame) * ext/flac/gstflacdec.c (gst_flacdec_write) * ext/flac/gstflacenc.c (gst_flacenc_seek_callback) (gst_flacenc_sink_event) * ext/gconf/gstgconfaudiosink.c (gst_gconf_audio_sink_init) * ext/gconf/gstgconfvideosink.c (gst_gconf_video_sink_init) * ext/libpng/gstpngdec.c (gst_pngdec_caps_create_and_set) * ext/speex/gstspeexdec.c (speex_dec_event, speex_dec_chain) * gst/auparse/gstauparse.c (gst_auparse_chain) * gst/autodetect/gstautoaudiosink.c (gst_auto_audio_sink_init) * gst/autodetect/gstautovideosink.c (gst_auto_video_sink_init) * gst/avi/gstavidemux.c (gst_avi_demux_stream_header) (gst_avi_demux_handle_seek) * gst/goom/gstgoom.c (gst_goom_event) * gst/matroska/ebml-write.c (gst_ebml_write_seek) * gst/matroska/matroska-demux.c (gst_matroska_demux_handle_seek_event) (gst_matroska_demux_loop_stream_parse_id) * gst/wavenc/gstwavenc.c (gst_wavenc_stop_file) * gst/wavparse/gstwavparse.c (gst_wavparse_handle_seek) (gst_wavparse_stream_headers): Run update-funcnames. 2005-11-22 Edward Hervey * ext/raw1394/gstdv1394src.c: (gst_dv1394src_class_init), (gst_dv1394src_init), (gst_dv1394src_dispose), (gst_dv1394src_set_property), (gst_dv1394src_discover_avc_node), (gst_dv1394src_uri_set_uri): * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_update_uri), (gst_udpsrc_set_uri), (gst_udpsrc_set_property), (gst_udpsrc_uri_get_uri): URIHandler interface and element properties are now properly synchronized for DV1394src and UDPSrc 2005-11-22 Tim-Philipp Müller * ext/flac/Makefile.am: * ext/speex/Makefile.am: libgsttagedit has been renamed to libgsttag. 2005-11-21 Wim Taymans * gst/rtsp/rtspconnection.c: (read_body): Apply patch from Sebastien Cote to fix #319184. 2005-11-21 Thomas Vander Stichele * configure.ac: * gst/cutter/Makefile.am: * gst/cutter/gstcutter.c: (gst_cutter_class_init), (gst_cutter_init), (gst_cutter_message_new), (gst_cutter_chain), (gst_cutter_set_property), (gst_cutter_get_property), (plugin_init), (gst_cutter_get_caps): port cutter * gst/level/gstlevel.c: fix up plugin details 2005-11-21 Tim-Philipp Müller * ext/dv/gstdvdemux.c: (gst_dvdemux_handle_sink_event): * ext/flac/gstflacdec.c: (gst_flacdec_loop), (gst_flacdec_src_event): * ext/flac/gstflacenc.c: (gst_flacenc_sink_event): * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_event), (gst_signal_processor_getrange), (gst_signal_processor_chain): * gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek): * gst/flx/gstflxdec.c: (gst_flxdec_src_event_handler), (gst_flxdec_sink_event_handler): * gst/matroska/matroska-demux.c: (gst_matroska_demux_handle_seek_event): * gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek): Update for stream lock API changes: don't take stream log in sink event handlers any longer and change GST_STREAM_LOCK to GST_PAD_STREAM_LOCK. Don't leak references in flxdec event functions. 2005-11-21 Michael Smith * gst/auparse/gstauparse.c: (gst_auparse_dispose): gst_object_unref, not g_object_unref 2005-11-21 Tim-Philipp Müller * gst/wavparse/gstwavparse.c: (gst_wavparse_init), (gst_wavparse_create_sourcepad), (gst_wavparse_sink_activate): Use GST_DEBUG_FUNCPTR; add debug message in pad activate function. 2005-11-21 Michael Smith * gst/auparse/Makefile.am: * gst/auparse/gstauparse.c: (gst_auparse_class_init), (gst_auparse_init), (gst_auparse_dispose), (gst_auparse_chain), (gst_auparse_change_state): * gst/auparse/gstauparse.h: Partially fix #161712. playbin still doesn't work on these files, (on the bug report, Andy says we aren't typefinding it for some reason?) but at least auparse isn't totally busted like it was before. 2005-11-21 Andy Wingo * *.h: * *.c: Ran scripts/update-macros. Oh yes. 2005-11-21 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_sync_streams): Filler events are gone for now, comment out section generating them. 2005-11-21 Jan Schmidt * ext/aalib/gstaasink.c: (gst_aasink_fixate): * ext/mikmod/gstmikmod.c: (gst_mikmod_srcfixate): * gst/goom/gstgoom.c: (gst_goom_src_negotiate): * sys/osxvideo/osxvideosink.m: Rename gst_caps_structure_fixate_* to gst_structure_fixate_* (#322027) 2005-11-21 Tim-Philipp Müller * ext/aalib/gstaasink.c: (gst_aasink_setcaps): * gst/avi/gstavidemux.c: (gst_avi_demux_parse_file_header), (gst_avi_demux_read_subindexes), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_odml), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_stream_header), (gst_avi_demux_stream_data): * gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps): * gst/wavenc/gstwavenc.c: (write_metadata): * gst/wavparse/gstwavparse.c: (gst_wavparse_parse_adtl), (gst_wavparse_parse_file_header), (gst_wavparse_stream_headers): Fixes for GST_FOURCC_FORMAT API change. 2005-11-21 Tim-Philipp Müller * ext/cairo/gsttextoverlay.c: (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_text_pad_linked), (gst_text_overlay_text_pad_unlinked), (gst_text_overlay_pop_video), (gst_text_overlay_pop_text), (gst_text_overlay_collected), (gst_text_overlay_change_state): * gst/matroska/matroska-mux.c: (gst_matroska_mux_init), (gst_matroska_mux_reset), (gst_matroska_mux_request_new_pad), (gst_matroska_mux_best_pad), (gst_matroska_mux_change_state): * gst/smpte/gstsmpte.c: (gst_smpte_init), (gst_smpte_collected): * gst/videomixer/videomixer.c: (gst_videomixer_init), (gst_videomixer_request_new_pad), (gst_videomixer_fill_queues), (gst_videomixer_change_state): Fix for collect pads API change. Also fix textoverlay state change function. 2005-11-20 Julien MOUTTE * gst/matroska/matroska-mux.c: (gst_matroska_mux_start): Replace GST_PAD_IS_USABLE by something approaching it. 2005-11-20 Julien MOUTTE * gst/matroska/matroska-mux.c: (gst_matroska_mux_start): Fix for API changes. * gst/wavenc/gstwavenc.c: (gst_wavenc_chain): Fix for API changes, but also fix the code that was not checking return values from pad_push neither using pad_alloc_buffer. 2005-11-18 Edward Hervey * ext/libpng/gstpngenc.c: (gst_pngenc_class_init), (gst_pngenc_chain): Added debug category Return GST_FLOW_UNEXPECTED when sending an EOS, so the whole pipeline goes to EOS. 2005-11-17 Edgard Lima * gst/rtp/Makefile.am * gst/rtp/gstrtp.c * gst/rtp/gstrtpg711enc.c: (gst_rtpg711enc_src_template), (gst_rtpg711enc_class_init), (gst_rtpg711enc_init), (gst_rtpg711enc_finalize), (gst_rtpg711enc_setcaps), (gst_rtpg711enc_flush), (gst_rtpg711enc_handle_buffer): * gst/rtp/gstrtpg711enc.h: * gst/rtp/gstrtpg711dec.c: (gst_rtpg711dec_sink_template): * gst/rtp/gstrtpspeexenc.c: * gst/rtp/gstrtpspeexenc.h: * gst/rtp/gstrtpspeexdec.c: * gst/rtp/gstrtpspeexdec.h: Created Speex payloader and depayloader; Optimize G711 payloader to use adapter and send packets until MTU size. 2005-11-16 Wim Taymans * check/elements/matroskamux.c: (setup_src_pad), (setup_sink_pad): Fix leak in check. 2005-11-16 Wim Taymans * gst/flx/gstflxdec.c: (gst_flxdec_change_state): Fix state change. 2005-11-16 Andy Wingo * gst/udp/gstudpsrc.c: Clean up with the boilerplate macro. (gst_udpsrc_create): Move comment. 2005-11-15 Vincent Torri Reviewed by: Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroskademux_do_index_seek): When seeking, seek to closest index entry at or before the requested seek position, not just the closest one (#321001). 2005-11-15 Tim-Philipp Müller * gst/avi/gstavidemux.c: (swap_line), (gst_avi_demux_invert), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data): Invert DIB images again (see #132341). 2005-11-14 Thomas Vander Stichele * configure.ac: rework configure.ac file * ext/aalib/gstaasink.c: * ext/cairo/gstcairo.c: * ext/dv/gstdv.c: * ext/esd/gstesd.c: * ext/flac/gstflac.c: * ext/gconf/gstgconfelements.c: * ext/gdk_pixbuf/gstgdkpixbuf.c: * ext/jpeg/gstjpeg.c: * ext/ladspa/gstladspa.c: * ext/libcaca/gstcacasink.c: * ext/libmng/gstmng.c: * ext/libpng/gstpng.c: * ext/mikmod/gstmikmod.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttimeoverlay.c: * ext/raw1394/gst1394.c: * ext/speex/gstspeex.c: * gst/alpha/Makefile.am: * gst/alpha/gstalpha.c: * gst/alpha/gstalphacolor.c: * gst/auparse/gstauparse.c: * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_factory_filter), (gst_auto_audio_sink_find_best), (gst_auto_audio_sink_detect): * gst/autodetect/gstautodetect.c: * gst/avi/gstavi.c: * gst/cutter/gstcutter.c: * gst/debug/efence.c: * gst/debug/gstdebug.c: * gst/debug/gstnavigationtest.c: * gst/effectv/gsteffectv.c: * gst/flx/gstflxdec.c: * gst/goom/gstgoom.c: * gst/interleave/plugin.c: * gst/law/alaw.c: * gst/law/mulaw.c: * gst/level/gstlevel.c: * gst/matroska/ebml-write.c: (gst_ebml_write_seek): * gst/matroska/matroska.c: * gst/median/gstmedian.c: * gst/monoscope/gstmonoscope.c: * gst/multipart/multipart.c: * gst/oldcore/gstelements.c: * gst/rtp/gstrtp.c: * gst/rtsp/gstrtsp.c: * gst/smoothwave/gstsmoothwave.c: * gst/smpte/gstsmpte.c: * gst/udp/gstudp.c: * gst/videobox/gstvideobox.c: * gst/videofilter/gstgamma.c: * gst/videofilter/gstvideobalance.c: * gst/videofilter/gstvideoflip.c: * gst/videofilter/gstvideotemplate.c: * gst/videomixer/videomixer.c: * gst/wavenc/gstwavenc.c: * gst/wavparse/gstwavparse.c: * sys/oss/gstossaudio.c: * sys/osxaudio/gstosxaudio.c: update GST_PLUGIN_DEFINE * gst/rtp/Makefile.am: * gst/rtp/gstasteriskh263.c: check for htons/htonl headers and possibly link to winsock2 lib 2005-11-12 Edward Hervey * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): Only GST_DEBUG() information on the valid components. 2005-11-11 Thomas Vander Stichele * configure.ac: back to HEAD === release 0.9.5 === 2005-11-11 Thomas Vander Stichele * configure.ac: releasing 0.9.5, "Phone Alarm" 2005-11-11 Edward Hervey * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_src_convert), (gst_avi_demux_handle_src_event), (gst_avi_demux_stream_header), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): * gst/avi/gstavidemux.h: Yeah, implement proper seeking. Exact seeking and segment seeking. Still need to do some checks for segment_stop. 2005-11-10 Josef Zlomek Reviewed by: Tim-Philipp Müller * gst/matroska/matroska-mux.c: (gst_matroska_mux_write_data): Don't try to ready buffer duration from buffer that we don't own any longer and that might already have been unreffed. (#321136) 2005-11-09 Zeeshan Ali * gst/flx/gstflxdec.c: (flx_decode_delta_fli), (flx_decode_delta_flc), (gst_flxdec_chain): Attempting to optimize the code for embedded systems. 2005-11-08 Alessandro Decina Reviewed by: Tim-Philipp Müller * sys/oss/gstosssink.c: (gst_oss_sink_close): Don't re-use already closed file descriptor. (#320920) 2005-11-07 Tim-Philipp Müller * sys/oss/gstosssink.c: (gst_oss_sink_dispose), (gst_oss_sink_set_property), (gst_oss_sink_getcaps), (gst_oss_sink_prepare): * sys/oss/gstosssink.h: Cache probed caps; fix debug output for SET_PARAM macros. 2005-11-07 Tim-Philipp Müller * ext/cairo/Makefile.am: * ext/cairo/gstcairo.c: (plugin_init): * ext/cairo/gsttextoverlay.c: (gst_text_overlay_base_init), (gst_text_overlay_class_init), (gst_text_overlay_finalize), (gst_text_overlay_init), (gst_text_overlay_font_init), (gst_text_overlay_set_property), (gst_text_overlay_render_text), (gst_text_overlay_getcaps), (gst_text_overlay_setcaps), (gst_text_overlay_text_pad_linked), (gst_text_overlay_text_pad_unlinked), (gst_text_overlay_shade_y), (gst_text_overlay_blit_1), (gst_text_overlay_blit_sub2x2), (gst_text_overlay_push_frame), (gst_text_overlay_pop_video), (gst_text_overlay_pop_text), (gst_text_overlay_collected), (gst_text_overlay_change_state): * ext/cairo/gsttextoverlay.h: Port cairo textoverlay plugin to 0.9. Add 'shaded-background' property and redo positioning. Doesn't handle upstream renegotiation yet though. 2005-11-07 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): No need to take the STREAM_LOCK in the loop function. Improve some debug messages. Don't leak pad names in debug messages. 2005-11-07 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_vorbis_codec_priv_data), (gst_matroska_demux_add_wvpk_header): Don't error out when the source pad isn't linked. 2005-11-02 Tim-Philipp Müller * ext/gconf/gstgconfaudiosink.c: (do_toggle_element), (gst_gconf_audio_sink_change_state): * ext/gconf/gstgconfvideosink.c: (do_toggle_element), (gst_gconf_video_sink_change_state): Fix state change functions here as well and set kid to NULL state before removing it. 2005-11-01 Edward Hervey * gst/wavenc/gstwavenc.c: (gst_wavenc_stop_file), (gst_wavenc_init), (gst_wavenc_event), (gst_wavenc_chain): Added proper event handlind, made downstream newsegment event use GST_FORMAT_BYTES (otherwise it's ignored), and don't set a duration of 0 for buffers otherwise they are discarded by GstBaseSink. GstWavEnc needs some serious loving, after going through the code I'm really wondering how this can stay in -good ... 2005-11-01 Thomas Vander Stichele * check/elements/matroskamux.c: (setup_src_pad), (setup_sink_pad), (setup_matroskamux), (check_buffer_data), (GST_START_TEST): * gst/matroska/matroska-mux.c: (gst_matroska_mux_finalize), (gst_matroska_mux_reset), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_start), (gst_matroska_mux_write_data), (gst_matroska_mux_collected): Fix leaks and invalid memory access as reported by valgrind 2005-11-01 Thomas Vander Stichele Patch by: Michal Benes * check/Makefile.am: * gst/matroska/ebml-write.c: (gst_ebml_write_seek): * gst/matroska/matroska-mux.c: (gst_matroska_mux_handle_src_event), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_start): add a unit test for matroskamux fix the bugs that the unit test exposed 2005-11-01 Tim-Philipp Müller * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_class_init), (gst_auto_audio_sink_change_state): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_class_init), (gst_auto_video_sink_change_state): Fix state change function and use GST_DEBUG_FUNCPTR in class_init. 2005-11-01 Josef Zlomek Reviewed by: Tim-Philipp Müller * gst/matroska/ebml-write.c: (gst_ebml_write_new), (gst_ebml_write_reset), (gst_ebml_write_element_new): * gst/matroska/ebml-write.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_write_data): Set timestamps on outgoing ebml headers as well, so that the element after matroskamux can get the timestamp already when reading the first ebml element and doesn't have to wait for the actual data buffer for that (#320308). 2005-10-31 Andy Wingo * gst/videomixer/videomixer.c (gst_videomixer_pad_unlink) (gst_videomixer_pad_link): Kill some memleaks. (gst_videomixer_pad_get_property): Style fix. (gst_videomixer_pad_set_property): Style fix. (gst_videomixer_pad_init): Style fix. (gst_videomixer_update_queues): Kill memleak. (gst_videomixer_loop): Kill memleak. (gst_videomixer_collected): Kill memleak. 2005-10-31 Edgard Lima * gst/auparse/gstauparse.c: gst_auparse_init, gst_auparse_chain, gst_auparse_change_state: Just some cleanup. 2005-10-31 Edgard Lima * ext/speex/gstspeexenc.c: (gst_speexenc_chain) Add checks to GST_FLOW_NOT_LINKED for values returned from gst_pad_push. 2005-10-31 Zeeshan Ali * gst/rtp/gstrtpg711dec.c: (gst_rtpg711dec_setcaps), (gst_rtpg711dec_process): * gst/rtp/gstrtpgsmenc.c: Payloader now sets some default caps on the srcpad if caps on the sinkpad are never set. This is important for the g711 to work with burger's rtpbin element. 2005-10-28 Edgard Lima * ext/speex/gstspeexenc.c: (gst_speexenc_chain), (gst_speexenc_push_buffer): Add checks for return values from gst_pad_push and gst_pad_alloc_buffer. 2005-10-28 Michal Benes Reviewed by: Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_init_stream), (gst_matroska_demux_parse_info), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_parse_cluster): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init), (gst_matroska_mux_init), (gst_matroska_mux_start), (gst_matroska_mux_create_buffer_header), (gst_matroska_mux_write_data), (gst_matroska_mux_set_property), (gst_matroska_mux_get_property): * gst/matroska/matroska-mux.h: Add SimpleBlock support to matroska demuxer and muxer (part of Matroska v2). (#319731) 2005-10-28 Wim Taymans * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_init), (gst_jpeg_dec_chain), (gst_jpeg_dec_change_state): * ext/jpeg/gstjpegdec.h: Cleanups. Don't create caps for every chain. 2005-10-27 Edgard Lima Edgard Lima * gst/law/alaw-encode.c: (gst_alawenc_init), (alawenc_setcaps), (gst_alawenc_chain) * gst/law/alaw-encode.h: * gst/law/mulaw-encode.c: (gst_mulawenc_init), (mulawenc_setcaps), (gst_mulawenc_chain) * gst/law/mulaw-encode.h: Set timestamp on buffer and it allows RTP G711 elements work properly. 2005-10-27 Wim Taymans * sys/oss/gstosssrc.c: (gst_oss_src_prepare): Set correct format on oss instead of a silly value. 2005-10-27 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_transform_caps), (gst_video_box_set_caps), (gst_video_box_get_unit_size), (gst_video_box_copy_plane_i420), (gst_video_box_i420), (gst_video_box_ayuv): Use liboil for I420 rendering as well, doesn't bring much for my platform. Might help on some other platforms. 2005-10-27 Zeeshan Ali * gst/rtp/gstrtpgsmenc.c: * gst/rtp/gstrtpgsmparse.c: Declaring the padtemplate correctly. 2005-10-26 Zeeshan Ali * gst/rtp/gstrtpg711dec.c: * gst/rtp/gstrtpg711enc.c: * gst/rtp/gstrtpgsmenc.c: * gst/rtp/gstrtpgsmparse.c: Setting the proper copyright notice. 2005-10-26 Julien MOUTTE * gst/videobox/Makefile.am: Use liboil. * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_set_property), (gst_video_box_transform_caps), (gst_video_box_set_caps), (gst_video_box_get_unit_size), (gst_video_box_ayuv): Lot of optimization in AYUV rendering using liboil. Will dot the same to I420 border generation tomorrow. 2005-10-26 Zeeshan Ali * gst/rtp/gstrtpg711dec.c: (gst_rtpg711dec_base_init), (gst_rtpg711dec_class_init), (gst_rtpg711dec_init), (gst_rtpg711dec_setcaps), (gst_rtpg711dec_process): * gst/rtp/gstrtpg711dec.h: * gst/rtp/gstrtpg711enc.c: (gst_rtpg711enc_base_init), (gst_rtpg711enc_init), (gst_rtpg711enc_handle_buffer): * gst/rtp/gstrtpgsmenc.c: (gst_rtpgsmenc_base_init), (gst_rtpgsmenc_init), (gst_rtpgsmenc_setcaps), (gst_rtpgsmenc_handle_buffer): * gst/rtp/gstrtpgsmparse.c: (gst_rtpgsmparse_base_init), (gst_rtpgsmparse_class_init), (gst_rtpgsmparse_init), (gst_rtpgsmparse_setcaps), (gst_rtpgsmparse_process): * gst/rtp/gstrtpgsmparse.h: Hacked the G711 (de)payloader to try to make things right. rtpg711dec now inherits from the basertpdepayloader. 2005-10-26 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_transform_caps), (gst_video_box_get_unit_size), (gst_video_box_ayuv): Removing this forgotten debug. 2005-10-26 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_transform_caps), (gst_video_box_get_unit_size), (gst_video_box_ayuv): Fix the stride issue when boxing to AYUV. 2005-10-26 Tim-Philipp Müller * sys/oss/gstossaudio.c: * sys/oss/gstossdmabuffer.c: * sys/oss/gstosshelper.c: * sys/oss/gstossmixer.c: * sys/oss/gstossmixerelement.c: * sys/oss/gstossmixertrack.c: * sys/oss/gstosssink.c: * sys/oss/gstosssrc.c: Actually use the 'oss' debug category we register. 2005-10-26 Julien MOUTTE * gst/videomixer/videomixer.c: (gst_videomixer_pad_set_property), (gst_videomixer_pad_sink_setcaps), (gst_videomixer_getcaps): Use gst_pad_get_parent and drop the ref that was added through that call. 2005-10-26 Thomas Vander Stichele * gst/rtp/gstrtpgsmenc.c: Fix compilation 2005-10-25 Edgard Lima * gst/rtp/gstrtpg711dec.c Just removed a couple of lines of weird code used during development/test time. 2005-10-25 Edgard Lima * gst/rtp/Makefile.am * gst/rtp/gstrtp.c * gst/rtp/gstrtpg711enc.c * gst/rtp/gstrtpg711enc.h * gst/rtp/gstrtpg711dec.c * gst/rtp/gstrtpg711dec.h Created G711 payloader and depayloader (it supports mulaw and alaw (dec)encoders) 2005-10-25 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_transform_caps), (gst_video_box_get_unit_size): Doh ! I introduced wingo's bug again ! Sorry... 2005-10-25 Christian Schaller * gst/rtp/Makefile.am: add missing header files for disting 2005-10-25 Zeeshan Ali * gst/rtp/gstrtpgsmenc.c: (gst_rtpgsmenc_get_type), (gst_rtpgsmenc_base_init), (gst_rtpgsmenc_class_init), (gst_rtpgsmenc_init), (gst_rtpgsmenc_setcaps), (gst_rtpgsmenc_handle_buffer): * gst/rtp/gstrtpgsmenc.h: * gst/rtp/gstrtpgsmparse.c: (gst_rtpgsmparse_get_type), (gst_rtpgsmparse_base_init), (gst_rtpgsmparse_class_init), (gst_rtpgsmparse_init), (gst_rtpgsmparse_setcaps), (gst_rtpgsmparse_finalize), (gst_rtpgsmparse_process): * gst/rtp/gstrtpgsmparse.h: Getting the GSM (de)payloader working and compatible with our plans for RTP. 2005-10-25 Julien MOUTTE * ext/libpng/gstpngdec.c: (user_info_callback), (gst_pngdec_caps_create_and_set), (gst_pngdec_task): Push a newsegment event, move some redundant code in a single place. 2005-10-25 Julien MOUTTE * ext/libpng/gstpngdec.c: (user_info_callback), (gst_pngdec_caps_create_and_set), (gst_pngdec_task): Temporary hack to get correct colors order when we have a png image with alpha channel. 2005-10-24 Edward Hervey * ext/dv/gstdvdemux.c: (gst_dvdemux_add_pads): Call gst_element_no_more_pads when there will be no more pads. 2005-10-24 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstasteriskh263.c: (gst_asteriskh263_get_type), (gst_asteriskh263_base_init), (gst_asteriskh263_class_init), (gst_asteriskh263_init), (gst_asteriskh263_finalize), (gst_asteriskh263_chain), (gst_asteriskh263_set_property), (gst_asteriskh263_get_property), (gst_asteriskh263_change_state), (gst_asteriskh263_plugin_init): * gst/rtp/gstasteriskh263.h: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtph263enc.c: (gst_rtph263enc_get_type), (gst_rtph263enc_base_init), (gst_rtph263enc_class_init), (gst_rtph263enc_init), (gst_rtph263enc_finalize), (gst_rtph263enc_setcaps), (gst_rtph263enc_gobfiner), (gst_rtph263enc_flush), (gst_rtph263enc_handle_buffer), (gst_rtph263enc_plugin_init): * gst/rtp/gstrtph263enc.h: Added two new payloaders, an RFC 2190 payloader for h263 and a payload convertor for an asterisk server. 2005-10-24 Tim-Philipp Müller * sys/oss/gstosssrc.c: (gst_oss_src_prepare): Set bytes_per_sample correctly (is not always 4, but depends on width and number of channels). 2005-10-24 Tim-Philipp Müller * ext/flac/gstflacenc.c: (gst_flacenc_base_init), (gst_flacenc_init), (gst_flacenc_sink_setcaps), (gst_flacenc_seek_callback), (gst_flacenc_write_callback), (gst_flacenc_sink_event), (gst_flacenc_chain), (gst_flacenc_set_property), (gst_flacenc_get_property), (gst_flacenc_change_state): * ext/flac/gstflacenc.h: Fix seeking, so that flacenc can rewrite the header with the correct duration and amount of samples and all that at EOS; also set timestamps and granulepos on outgoing buffers; add debug category; fix state change function. 2005-10-24 Julien MOUTTE * gst/videomixer/videomixer.c: Don't restrict video geometry from 16 to 4096. 2005-10-24 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_class_init), (gst_video_box_transform_caps), (gst_video_box_get_unit_size): Fix caps negotiation correctly, add debugging category. 2005-10-24 Christian Schaller * configure.ac: Port over Thomas's change from base listing all plugins 2005-10-24 Julien MOUTTE * ext/libpng/gstpngdec.c: (gst_pngdec_init): Don't use fixed caps on a sink pad. 2005-10-24 Thomas Vander Stichele * configure.ac: * docs/upload.mak: back to HEAD === release 0.9.4 === 2005-10-24 Thomas Vander Stichele * configure.ac: Releasing 0.9.4, "Dromiceiomimus" 2005-10-21 Tim-Philipp Müller * ext/speex/gstspeexenc.c: (gst_speexenc_get_query_types), (gst_speexenc_src_query): Add position and duration query, fix query type function. * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps): Let's not set non-fixed caps on source pads. 2005-10-21 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame): * gst/avi/gstavidemux.c: (gst_avi_demux_get_src_query_types), (gst_avi_demux_handle_seek): Set correct stream_time in newsegment event. avi can also handle a duration query now. 2005-10-20 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_handle_src_query), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_loop_stream_parse_id): Fix duration query; fix basetime in newsegment event after seek; fix duration in initial newsegment event. * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_start): Extract number of channels and samplerate from vorbis headers; add some debug messages when querying the durations of the input streams. 2005-10-20 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_pad_convert), (gst_wavparse_srcpad_event): Set stream time correctly in newsegment. 2005-10-20 Wim Taymans * gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek): Correctly fill in the stream time. 2005-10-19 Thomas Vander Stichele * check/elements/level.c: (GST_START_TEST): * gst/level/gstlevel.c: (gst_level_message_new): * gst/level/level-example.c: (message_handler): use ELEMENT messages instead 2005-10-19 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_get_src_query_types), (gst_dvdemux_src_query): * ext/flac/gstflacdec.c: (gst_flacdec_length), (gst_flacdec_src_query): * ext/raw1394/gstdv1394src.c: (gst_dv1394src_query): * ext/speex/gstspeexdec.c: (speex_dec_src_query): * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query): * gst/debug/gstnavseek.c: (gst_navseek_seek): * gst/debug/progressreport.c: (gst_progress_report_report): * gst/matroska/ebml-read.c: (gst_ebml_read_get_length): * gst/matroska/matroska-demux.c: (gst_matroska_demux_handle_src_query): * gst/matroska/matroska-mux.c: (gst_matroska_mux_start): * gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_pad_convert), (gst_wavparse_pad_query), (gst_wavparse_srcpad_event): API change fix. 2005-10-19 Tim-Philipp Müller * gst/goom/filters.c: * gst/goom/graphic.h: * gst/goom/lines.c: Make inline functions either 'static inline' or 'extern inline', otherwise the Forte compiler apparently won't inline them (#317300). 2005-10-19 Julien MOUTTE * ext/libpng/gstpngdec.c: (gst_pngdec_class_init), (gst_pngdec_init), (user_error_fn), (user_warning_fn), (user_info_callback), (user_endrow_callback), (user_end_callback), (user_read_data), (gst_pngdec_caps_create_and_set), (gst_pngdec_task), (gst_pngdec_chain), (gst_pngdec_sink_event), (gst_pngdec_libpng_clear), (gst_pngdec_libpng_init), (gst_pngdec_change_state), (gst_pngdec_sink_activate_push), (gst_pngdec_sink_activate_pull), (gst_pngdec_sink_activate): * ext/libpng/gstpngdec.h: Complete rewrite of pngdec. It's now very nice and handle push/pull based model. if you have filesrc connected to it, it will do random access to load the png file. If you have a network source that can't do _getrange, it does progressive loading through the chain function. * gst/alpha/gstalphacolor.c: (gst_alpha_color_transform_caps), (transform_rgb), (transform_bgr): Fix caps negotiation correctly thanks to Master Wim Taymans ;-) 2005-10-18 Tim-Philipp Müller * gst/matroska/Makefile.am: * gst/matroska/ebml-read.c: * gst/matroska/ebml-read.h: * gst/matroska/matroska-demux.c: * gst/matroska/matroska-demux.h: * gst/matroska/matroska.c: (plugin_init): Ported matroska demuxer to 0.9. 2005-10-18 Michal Benes Reviewed by: Tim-Philipp Müller * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps), (gst_matroska_mux_audio_pad_setcaps): Fix mpeg4 input handling (#318847); also, while we're at it, fix media type for Motion-JPEG: should be image/jpeg. 2005-10-18 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_pad_convert), (gst_wavparse_srcpad_event): Fix for segment-start/stop API change. 2005-10-17 Julien MOUTTE * gst/alpha/gstalphacolor.c: (gst_alpha_color_transform_caps), (transform_rgb), (transform_bgr): Handle caps negotiation in a better way. 2005-10-17 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_transform_caps), (gst_video_box_get_unit_size): Fix caps nego some more to get AYUV output declared in transform_caps. 2005-10-17 Julien MOUTTE * ext/libpng/gstpngdec.c: (gst_pngdec_init): We use fixed caps. 2005-10-17 Julien MOUTTE * gst/videobox/gstvideobox.c: (gst_video_box_transform_caps), (gst_video_box_get_unit_size): Fix wrong size calculations and implement get_unit_size correctly. 2005-10-17 Tim-Philipp Müller * configure.ac: Enable flx plugin. * gst/flx/gstflxdec.c: (flx_decode_chunks): Fix gcc4 signedness issue. 2005-10-17 Julien MOUTTE * configure.ac: Adding videomixer. * ext/libpng/gstpngdec.c: (gst_pngdec_class_init), (user_read_data), (gst_pngdec_chain): More debugging. * gst/alpha/Makefile.am: Adding alphacolor * gst/alpha/gstalphacolor.c: (gst_alpha_color_base_init), (gst_alpha_color_class_init), (gst_alpha_color_init), (gst_alpha_color_transform_caps), (gst_alpha_color_set_caps), (transform_rgb), (transform_bgr), (gst_alpha_color_transform_ip), (plugin_init): Ported to 0.9 using in place base tranform. * gst/videomixer/Makefile.am: * gst/videomixer/videomixer.c: (gst_videomixer_pad_get_type), (gst_videomixer_pad_class_init), (gst_videomixer_pad_sink_setcaps), (gst_videomixer_pad_link), (gst_videomixer_pad_unlink), (gst_videomixer_pad_init), (gst_videomixer_class_init), (gst_videomixer_init), (gst_videomixer_getcaps), (gst_videomixer_request_new_pad), (gst_videomixer_fill_queues), (gst_videomixer_blend_buffers), (gst_videomixer_update_queues), (gst_videomixer_collected), (gst_videomixer_change_state): Ported to 0.9 using collectpads. 2005-10-17 Zeeshan Ali * configure.ac: * gst/flx/Makefile.am: * gst/flx/gstflxdec.c: (gst_flxdec_init), (gst_flxdec_src_event_handler), (gst_flxdec_sink_event_handler), (gst_flxdec_chain), (gst_flxdec_change_state), (plugin_init): * gst/flx/gstflxdec.h: flx plugin ported to 0.9 2005-10-16 Thomas Vander Stichele * ext/shout2/gstshout2.c: (gst_shout2send_change_state): use new gst_version_string() 2005-10-16 Andy Wingo * configure.ac: GLIB_CHECK. 2005-10-15 Julien MOUTTE * ext/libpng/Makefile.am: * ext/libpng/gstpng.c: (plugin_init): * ext/libpng/gstpngdec.c: (gst_pngdec_class_init), (gst_pngdec_init), (user_read_data), (gst_pngdec_chain): * ext/libpng/gstpngdec.h: Ported pngdec to 0.9 2005-10-14 Michal Benes Reviewed by: Tim-Philipp Müller * configure.ac: * gst/matroska/Makefile.am: * gst/matroska/ebml-ids.h: * gst/matroska/ebml-write.c: * gst/matroska/ebml-write.h: * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: * gst/matroska/matroska-mux.h: * gst/matroska/matroska.c: (plugin_init): Port matroska muxer to 0.9 (#318847). 2005-10-13 Tim-Philipp Müller * ext/speex/gstspeexenc.c: (gst_speexenc_get_tag_value), (comment_init), (comment_add): Fix handling of GST_TAG_DATE, which is now of GST_TYPE_DATE; use GST_READ_UINT32_LE() and friends rather than the private implementation of those same macros. 2005-10-13 Stefan Kost * examples/stats/mp2ogg.c: more typo fixes 2005-10-12 Stefan Kost * examples/indexing/indexmpeg.c: (main): * ext/esd/esdmon.c: (gst_esdmon_open_audio), (gst_esdmon_close_audio), (gst_esdmon_change_state): * ext/esd/esdmon.h: * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_init): * ext/pango/gsttextoverlay.c: (gst_textoverlay_init): * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_init): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_init): * gst/avi/gstavimux.c: (gst_avimux_init): * gst/matroska/matroska-demux.c: (gst_matroska_demux_init): * gst/multipart/multipartdemux.c: (gst_multipart_demux_init): * gst/multipart/multipartmux.c: (gst_multipart_mux_init): * gst/oldcore/gstmultifilesrc.c: (gst_multifilesrc_init), (gst_multifilesrc_get), (gst_multifilesrc_open_file), (gst_multifilesrc_close_file), (gst_multifilesrc_change_state): * gst/oldcore/gstmultifilesrc.h: * gst/oldcore/gstpipefilter.c: (gst_pipefilter_init), (gst_pipefilter_open_file), (gst_pipefilter_close_file), (gst_pipefilter_change_state): * gst/oldcore/gstpipefilter.h: * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_init): * gst/videomixer/videomixer.c: (gst_videomixer_init): * sys/osxaudio/gstosxaudiosink.c: (gst_osxaudiosink_init): * sys/osxaudio/gstosxaudiosink.h: * sys/osxaudio/gstosxaudiosrc.h: renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition 2005-10-12 Thomas Vander Stichele * ext/Makefile.am: * ext/cairo/Makefile.am: * ext/cairo/gstcairo.c: (plugin_init): * ext/cairo/gsttextoverlay.c: (gst_textoverlay_change_state): * ext/cairo/gsttimeoverlay.c: (gst_timeoverlay_update_font_height), (gst_timeoverlay_setup), (gst_timeoverlay_planar411): * ext/cairo/gsttimeoverlay.h: update of cairo-based timeoverlay to 1.0 Cairo API doesn't work yet for resizing of output sink 2005-10-11 Wim Taymans * ext/speex/gstspeexdec.c: (speex_dec_event), (speex_dec_chain): newsegment API fix. 2005-10-11 Wim Taymans * ext/dv/gstdvdemux.c: (gst_dvdemux_handle_sink_event), (gst_dvdemux_demux_frame): * ext/flac/gstflacdec.c: (gst_flacdec_write): * gst/auparse/gstauparse.c: (gst_auparse_chain): * gst/avi/gstavidemux.c: (gst_avi_demux_stream_header), (gst_avi_demux_handle_seek): * gst/goom/gstgoom.c: (gst_goom_event): * gst/wavenc/gstwavenc.c: (gst_wavenc_stop_file): * gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_pad_convert), (gst_wavparse_srcpad_event): newsegment API update. 2005-10-11 Andy Wingo * ext/speex/gstspeexenc.c: Signedness cleanups. 2005-10-10 Edgard Lima * PORTED_09: * ext/speex/Makefile.am: * ext/speex/gstspeex.c: * ext/speex/gstspeexenc.c: Speexenc ported to 0.9 2005-10-10 Wim Taymans * sys/oss/gstosssink.c: (gst_oss_sink_class_init), (gst_oss_sink_init), (gst_oss_sink_set_property), (gst_oss_sink_get_property), (gst_oss_sink_open), (gst_oss_sink_prepare), (gst_oss_sink_reset): * sys/oss/gstosssink.h: * sys/oss/gstosssrc.c: (gst_oss_src_class_init), (gst_oss_src_set_property), (gst_oss_src_init), (gst_oss_src_open), (gst_oss_src_prepare): Cleanups, make device configurable in the sink, handle and report errors. 2005-10-10 Wim Taymans * ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_reset): * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset): Make sure element is NULL before removing from the bin. 2005-10-07 Andy Wingo * ext/raw1394/gstdv1394src.c: Make interruptible, so it won't block forever in a read(). (gst_dv1394src_bus_reset): Post a message when the cable is unplugged. (gst_dv1394src_create, gst_dv1394src_unlock): Remove some prints. (gst_dv1394src_bus_reset): Don't unref the message. * ext/raw1394/gstdv1394src.c: Clean up for style before doing some hacking. The only change should be that the state change stuff was put into basesrc's start() and stop() routines, which coalesces some steps. 2005-10-07 Tim-Philipp Müller * configure.ac: Add check for mmap * gst/debug/Makefile.am: Only compile efence plugin on systems that have mmap. 2005-10-05 Tim-Philipp Müller * gst/debug/Makefile.am: * gst/debug/breakmydata.c: * gst/debug/gstdebug.c: * gst/debug/gstnavigationtest.c: * gst/debug/gstnavseek.c: * gst/debug/gstnavseek.h: * gst/debug/progressreport.c: * gst/debug/testplugin.c: Port progressreport, navseek, navigationtest, testsink and breakmydata. 2005-10-05 Edward Hervey * ext/dv/gstdvdemux.c: (gst_dvdemux_src_convert), (gst_dvdemux_src_query): Fixes for better conversion 2005-10-04 Michael Smith * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_reset), (gst_auto_audio_sink_find_best), (gst_auto_audio_sink_detect): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_reset), (gst_auto_video_sink_find_best), (gst_auto_video_sink_detect): Set state of elements to NULL before removing from bins. Set state of test element to NULL if we failed to move it to READY 2005-10-04 Edward Hervey * ext/dv/Makefile.am: * ext/dv/gstdvdemux.c: (gst_dvdemux_src_query), (gst_dvdemux_src_conver): Added DEFAULT <==> BYTES, TIME conversions on srcpad, Corrected the query function for position so it doesn't forget what format was asked, and calls the conversion functions on the correct pad. 2005-10-03 Thomas Vander Stichele * configure.ac: back to development === release 0.9.3 === 2005-10-03 Thomas Vander Stichele * configure.ac: Releasing 0.9.3, "Aramis" 2005-10-03 Andy Wingo * ext/flac/gstflacdec.c (gst_flacdec_write): Deal with pad_alloc error returns. 2005-10-02 Andy Wingo * configure.ac (GST_PLUGIN_LDFLAGS): Change to be like -base. * ext/flac/gstflacenc.c: Ported to 0.9. * ext/flac/gstflacdec.c (gst_flacdec_loop): Handle errors better. * ext/flac/Makefile.am: Add the GST_PLUGINS_BASE cflags and libs, and link to gsttagedit. Enable flacenc. * ext/flac/gstflacdec.c: Re-enable tag reading. 2005-09-30 Wim Taymans * gst/rtp/gstrtpamrenc.c: (gst_rtpamrenc_setcaps): * gst/rtp/gstrtpgsmparse.c: * gst/rtp/gstrtph263penc.c: * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_class_init), (gst_rtpmp4venc_parse_data), (gst_rtpmp4venc_handle_buffer), (gst_rtpmp4venc_set_property): * gst/rtp/gstrtpmpaenc.c: (gst_rtpmpaenc_handle_buffer): Various class and caps fixes from Andre Magalhaes (andrunko) 2005-09-29 Wim Taymans * gst/level/level-example.c: (main): Update for new bus API. 2005-09-28 Tim-Philipp Müller * configure.ac: Fix unexpanded autoconf macro GST_DOC, which has been renamed to GST_DOCBOOK_CHECK (see common/m4/gst-doc.m4) (#316202). 2005-09-27 Tim-Philipp Müller * sys/oss/gstosssink.c: (gst_oss_sink_prepare): Fix playback of mono streams (bytes_per_sample should be set from the sample width and the number of channels negotiated, and not just be set to 4) (#317338) 2005-09-26 Wim Taymans * gst/rtp/gstrtpmpaenc.c: (gst_rtpmpaenc_flush), (gst_rtpmpaenc_handle_buffer): Set buffer duration correctly. 2005-09-26 Tim-Philipp Müller * gst/avi/gstavidemux.c: (gst_avi_demux_base_init), (gst_avi_demux_class_init), (gst_avi_demux_parse_stream), (gst_avi_demux_change_state): Don't crash when encountering a stream with an unknown fourcc or codec id. Instead, create a pad of type video/x-avi-unknown or audio/x-avi-unknown, which as a side-effect also results in less confusing error messages in players ('no decoder' vs. 'no streams'); minor fixes to state change function and class_init function. 2005-09-24 Wim Taymans * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_init): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_init): These are sinks. 2005-09-24 Thomas Vander Stichele * check/elements/level.c: (GST_START_TEST): fix test for new GstClockTime use * gst/level/gstlevel.c: (gst_level_init), (gst_level_set_caps), (gst_level_transform_ip): * gst/level/gstlevel.h: fix up the decay peak, ensuring the decay peak is never lower than the peak for that interval 2005-09-23 Thomas Vander Stichele * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/inspect/plugin-alpha.xml: * docs/plugins/inspect/plugin-rtp.xml: * gst/level/gstlevel.c: (gst_level_set_caps), (gst_level_transform_ip): updating docs 2005-09-23 Thomas Vander Stichele * Makefile.am: * check/elements/level.c: (GST_START_TEST): * gst/level/Makefile.am: * gst/level/gstlevel.c: (gst_level_class_init), (gst_level_init), (gst_level_set_property), (gst_level_get_property), (gst_level_set_caps), (gst_level_message_new), (gst_level_transform_ip): * gst/level/gstlevel.h: * gst/level/level-example.c: (message_handler), (main): convert to using GstClockTime for all time values, finally. 2005-09-23 Thomas Vander Stichele * gst/auparse/Makefile.am: * gst/auparse/gstauparse.c: (gst_auparse_chain): fix up build * configure.ac: * ext/cairo/Makefile.am: * ext/dv/Makefile.am: * ext/esd/Makefile.am: * ext/flac/Makefile.am: * ext/gconf/Makefile.am: * ext/gdk_pixbuf/Makefile.am: * ext/jpeg/Makefile.am: * ext/ladspa/Makefile.am: * ext/libcaca/Makefile.am: * ext/libmng/Makefile.am: * ext/libpng/Makefile.am: * ext/mikmod/Makefile.am: * ext/pango/Makefile.am: * ext/raw1394/Makefile.am: * ext/shout2/Makefile.am: * ext/speex/Makefile.am: * gst/alpha/Makefile.am: * gst/autodetect/Makefile.am: * gst/avi/Makefile.am: * gst/cutter/Makefile.am: * gst/debug/Makefile.am: * gst/effectv/Makefile.am: * gst/flx/Makefile.am: * gst/goom/Makefile.am: * gst/interleave/Makefile.am: * gst/law/Makefile.am: * gst/matroska/Makefile.am: * gst/median/Makefile.am: * gst/monoscope/Makefile.am: * gst/multipart/Makefile.am: * gst/oldcore/Makefile.am: * gst/rtp/Makefile.am: * gst/rtsp/Makefile.am: * gst/smoothwave/Makefile.am: * gst/smpte/Makefile.am: * gst/videobox/Makefile.am: * gst/videofilter/Makefile.am: * gst/videomixer/Makefile.am: * gst/wavenc/Makefile.am: * gst/wavparse/Makefile.am: * sys/oss/Makefile.am: * sys/osxaudio/Makefile.am: * sys/osxvideo/Makefile.am: fix up GST_LIBS use 2005-09-23 Thomas Vander Stichele * gst/auparse/Makefile.am: * gst/auparse/gstauparse.c: (gst_auparse_chain): fix build of auparse 2005-09-22 Edgard Lima (edgard.lima@indt.org.br) * configure.ac: * PORTED_09: * gst/auparse/gstauparse.c: * gst/auparse/gstauparse.h: Auparse ported to 0.9. 2005-09-22 Wim Taymans * gst/rtp/TODO: * gst/rtp/gstrtpdec.c: (gst_rtpdec_getcaps): * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_class_init), (gst_rtpmp4venc_parse_data), (gst_rtpmp4venc_handle_buffer), (gst_rtpmp4venc_set_property): * gst/rtp/gstrtpmp4venc.h: * gst/rtp/gstrtpmpaenc.c: (gst_rtpmpaenc_handle_buffer): * gst/rtp/gstrtpmpaenc.h: Use is_filled to both check MTU and max-ptime of base class. 2005-09-22 Wim Taymans * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_class_init), (gst_rtpmp4venc_parse_data), (gst_rtpmp4venc_handle_buffer), (gst_rtpmp4venc_set_property): Don't fragment packets with multiple frames. 2005-09-22 Wim Taymans * gst/rtp/TODO: * gst/rtp/gstrtpmp4vdec.c: (gst_rtpmp4vdec_setcaps): * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_class_init), (gst_rtpmp4venc_init), (gst_rtpmp4venc_parse_data), (gst_rtpmp4venc_handle_buffer), (gst_rtpmp4venc_set_property), (gst_rtpmp4venc_get_property): * gst/rtp/gstrtpmp4venc.h: Remove g_print. Update TODO Make payload encoder a bit smarter and more correct with timestamps. Added option in payloader to include config string in-band. 2005-09-21 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_send): Strip spaces for key/value pairs. 2005-09-21 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_send), (gst_rtspsrc_change_state): More SDP parsing and caps setting. Do NO_PREROLL differently. add pads only after negotiated. * gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_getcaps): Implement the getcaps function. 2005-09-21 Wim Taymans * gst/rtp/gstrtpamrdec.c: (gst_rtpamrdec_sink_setcaps), (gst_rtpamrdec_chain): Handle multiple AMr packets per payload. Handle CRC and parse ILL/ILP. * gst/rtp/gstrtpamrenc.c: (gst_rtpamrenc_setcaps): Make caps params strings for easy SDP mapping. * gst/rtp/gstrtpdec.c: (gst_rtpdec_init), (gst_rtpdec_getcaps): Handle capsnego better. * gst/rtp/gstrtpmp4vdec.c: (gst_rtpmp4vdec_setcaps): * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_new_caps): Generate and parse config string in the caps. 2005-09-21 Wim Taymans * gst/rtp/README: Update README * gst/rtp/gstrtpamrdec.c: (gst_rtpamrdec_sink_setcaps): Make extra params as strings. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_set_state), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_send): Make state change return NO_PREROLL as this is a live source. * gst/udp/gstudpsrc.c: (gst_udpsrc_set_property): Don't unref old caps when NULL. 2005-09-20 Wim Taymans * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_get_type), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_send), (gst_rtspsrc_open), (gst_rtspsrc_uri_get_type), (gst_rtspsrc_uri_get_protocols), (gst_rtspsrc_uri_get_uri), (gst_rtspsrc_uri_set_uri), (gst_rtspsrc_uri_handler_init): * gst/rtsp/sdpmessage.c: (sdp_media_get_format): * gst/rtsp/sdpmessage.h: Add URI handler. Parse SDP and create caps. 2005-09-20 Stefan Kost * gst/alpha/gstalpha.c: fix element description 2005-09-19 Wim Taymans * gst/rtp/gstrtph263pdec.c: (gst_rtph263pdec_chain): Don't check payload for now. 2005-09-19 Wim Taymans * gst/wavparse/gstwavparse.c: (gst_wavparse_reset), (gst_wavparse_init), (gst_wavparse_parse_file_header), (gst_wavparse_stream_init), (gst_wavparse_handle_seek), (gst_wavparse_stream_headers), (gst_wavparse_stream_data), (gst_wavparse_loop), (gst_wavparse_pad_convert), (gst_wavparse_pad_query), (gst_wavparse_srcpad_event), (gst_wavparse_change_state): * gst/wavparse/gstwavparse.h: Fix wavparse some more. 2005-09-19 Wim Taymans * check/elements/level.c: (GST_START_TEST): Fix for bus API change. 2005-09-19 Wim Taymans * gst/level/level-example.c: (main): Fix for new bus API. * gst/udp/gstudpsrc.c: (gst_udpsrc_set_property): Set caps on pads. 2005-09-15 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/README: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpamrdec.c: (gst_rtpamrdec_init), (gst_rtpamrdec_sink_setcaps), (gst_rtpamrdec_chain), (gst_rtpamrdec_change_state): * gst/rtp/gstrtpamrenc.c: (gst_rtpamrenc_get_type), (gst_rtpamrenc_class_init), (gst_rtpamrenc_init), (gst_rtpamrenc_setcaps), (gst_rtpamrenc_handle_buffer): * gst/rtp/gstrtpamrenc.h: * gst/rtp/gstrtpgsmenc.c: (gst_rtpgsmenc_get_type), (gst_rtpgsmenc_class_init), (gst_rtpgsmenc_init), (gst_rtpgsmenc_setcaps), (gst_rtpgsmenc_handle_buffer): * gst/rtp/gstrtpgsmenc.h: * gst/rtp/gstrtpgsmparse.c: (gst_rtpgsmparse_class_init), (gst_rtpgsm_caps_nego), (gst_rtpgsmparse_chain), (gst_rtpgsmparse_set_property), (gst_rtpgsmparse_get_property), (gst_rtpgsmparse_change_state): * gst/rtp/gstrtpgsmparse.h: * gst/rtp/gstrtph263pdec.c: (gst_rtph263pdec_class_init), (gst_rtph263pdec_finalize), (gst_rtph263pdec_change_state): * gst/rtp/gstrtph263penc.c: (gst_rtph263penc_get_type), (gst_rtph263penc_class_init), (gst_rtph263penc_init), (gst_rtph263penc_finalize), (gst_rtph263penc_setcaps), (gst_rtph263penc_flush), (gst_rtph263penc_handle_buffer): * gst/rtp/gstrtph263penc.h: * gst/rtp/gstrtpmp4vdec.c: (gst_rtpmp4vdec_setcaps), (gst_rtpmp4vdec_chain), (gst_rtpmp4vdec_change_state): * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_get_type), (gst_rtpmp4venc_class_init), (gst_rtpmp4venc_init), (gst_rtpmp4venc_finalize), (gst_rtpmp4venc_new_caps), (gst_rtpmp4venc_setcaps), (gst_rtpmp4venc_flush), (gst_rtpmp4venc_parse_data), (gst_rtpmp4venc_handle_buffer): * gst/rtp/gstrtpmp4venc.h: * gst/rtp/gstrtpmpadec.c: * gst/rtp/gstrtpmpaenc.c: (gst_rtpmpaenc_get_type), (gst_rtpmpaenc_class_init), (gst_rtpmpaenc_init), (gst_rtpmpaenc_finalize), (gst_rtpmpaenc_setcaps), (gst_rtpmpaenc_flush), (gst_rtpmpaenc_handle_buffer): * gst/rtp/gstrtpmpaenc.h: Updates to payloader/depayloaders, make payloaders use the base classes. Updated README with suggested RTP caps and how to convert to/from SDP. Added config descriptor in mp4v payloader. 2005-09-15 Andy Wingo * gst/autodetect/gstautoaudiosink.c (gst_auto_audio_sink_find_best): * gst/autodetect/gstautovideosink.c (gst_auto_video_sink_find_best): Update for new registry API. 2005-09-14 Thomas Vander Stichele * common/c-to-xml.py: * common/gtk-doc-plugins.mak: a simple py script to generate valid xml from a C example probably also need to strip an MIT license when we decide * docs/plugins/Makefile.am: * gst/level/Makefile.am: * gst/level/gstlevel.c: (gst_level_init): * gst/level/level-example.c: (message_handler), (main): add an example to level that will show up in the docs * gst/rtp/TODO: add a note for the future 2005-09-14 Michael Smith * gst/wavenc/gstwavenc.c: (gst_wavenc_class_init): Actually define the debug object being used in wavenc. Fixes #316205 2005-09-14 Michael Smith * gst/smpte/Makefile.am: Link against GST_BASE_LIBS, to get it linked against libgstbase; needed to build on windows (bug 316204) 2005-09-12 Andy Wingo * autogen.sh (package): Now type 'make' to build gst-plugins-good. 2005-09-09 Jan Schmidt * configure.ac: * gst/fdsrc/Makefile.am: * gst/fdsrc/gstfdsrc.c: * gst/fdsrc/gstfdsrc.h: Move fdsrc back into gstreamer core elements. * gst/level/gstlevel.c: (gst_level_class_init), (gst_level_transform_ip): * gst/videobox/gstvideobox.c: (gst_video_box_set_property): Basetransform changes. 2005-09-09 Thomas Vander Stichele * ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain): * ext/jpeg/smokecodec.c: (find_best_size): fix compiler warnings 2005-09-09 Thomas Vander Stichele * gst-plugins-good.spec.in: spec file fixes * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init), (gst_multiudpsink_render), (gst_multiudpsink_add), (gst_multiudpsink_clear): it actually helps to actually stream if we hook up the "add" signal to an actual implementation * gst/udp/gstudpsrc.c: (gst_udpsrc_start): some debugging 2005-09-08 Flavio Oliveira * ext/jpeg/Makefile.am: * ext/jpeg/gstjpeg.c * ext/jpeg/gstjpegenc.c: * ext/jpeg/gstsmokeenc.c: 2005-09-07 Stefan Kost * ext/flac/gstflacdec.c: * ext/flac/gstflacenc.c: * ext/flac/gstflactag.c: * ext/speex/gstspeexenc.c: gsttaginterface.h -> gsttagsetter.h 2005-09-07 Jan Schmidt * configure.ac: * gst/debug/Makefile.am: * gst/debug/efence.c: (gst_efence_class_init), (gst_efence_init), (gst_efence_chain), (gst_efence_buffer_alloc), (plugin_init), (gst_fenced_buffer_finalize), (gst_fenced_buffer_copy), (gst_fenced_buffer_alloc), (gst_fenced_buffer_class_init), (gst_fenced_buffer_init), (gst_fenced_buffer_get_type): Port to 0.9 and re-enable efence plugin. 2005-09-06 Tim-Philipp Müller * ext/flac/gstflacdec.c: (flac_caps_factory), (raw_caps_factory), (gst_flacdec_write), (gst_flacdec_convert_src): * ext/flac/gstflacdec.h: Add support for flac files with 24/32 bits per sample; and misc. minor clean-ups. Seeking is still partly broken (for me at least). 2005-09-06 Wim Taymans * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmp4vdec.c: (gst_rtpmp4vdec_get_type), (gst_rtpmp4vdec_base_init), (gst_rtpmp4vdec_class_init), (gst_rtpmp4vdec_init), (gst_rtpmp4vdec_setcaps), (gst_rtpmp4vdec_chain), (gst_rtpmp4vdec_set_property), (gst_rtpmp4vdec_get_property), (gst_rtpmp4vdec_change_state), (gst_rtpmp4vdec_plugin_init): * gst/rtp/gstrtpmp4vdec.h: * gst/rtp/gstrtpmp4venc.c: (gst_rtpmp4venc_get_type), (gst_rtpmp4venc_base_init), (gst_rtpmp4venc_class_init), (gst_rtpmp4venc_init), (gst_rtpmp4venc_setcaps), (gst_rtpmp4venc_flush), (gst_rtpmp4venc_chain), (gst_rtpmp4venc_set_property), (gst_rtpmp4venc_get_property), (gst_rtpmp4venc_change_state), (gst_rtpmp4venc_plugin_init): * gst/rtp/gstrtpmp4venc.h: * gst/rtp/gstrtpmpadec.c: (gst_rtpmpadec_chain): * gst/rtp/gstrtpmpaenc.c: (gst_rtpmpaenc_flush): Added mpeg4 video payload encoder/decoder. Added some docs in mpa payloader. === release 0.9.1 === 2005-09-06 Thomas Vander Stichele * NEWS: * README: * RELEASE: * autogen.sh: * configure.ac: releasing 0.9.1, "Blondie" 2005-09-05 Andy Wingo * ext/dv/gstdvdemux.c (gst_dvdemux_chain): Move the pad adding here from the state change handler, so we fire signals without holding the state lock. 2005-09-02 Andy Wingo * All plugins updated for element state changes. 2005-09-01 Thomas Vander Stichele * Makefile.am: * check/.cvsignore: * check/Makefile.am: * check/elements/.cvsignore: * check/elements/level.c: (setup_level), (cleanup_level), (GST_START_TEST), (level_suite), (main): add a test for level * common/release.mak: move the enum checking to release.mak * configure.ac: add valgrind and check checking * gst/level/gstlevel.c: (gst_level_transform): * gst/level/gstlevel.h: fix Andy's cast bug convert a field to int fix the arithmetic to int when checking for emit so that a 100-sample buffer of a 1000Hz stream triggers after 0.1 sec 2005-09-01 Thomas Vander Stichele * Makefile.am: * configure.ac: add docs to build * common/plugins.xsl: wrap Description into a refsect2 * docs/Makefile.am: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * gst/goom/Makefile.am: * gst/goom/gstgoom.c: (gst_goom_get_type), (gst_goom_base_init), (gst_goom_class_init), (gst_goom_init), (gst_goom_dispose), (gst_goom_sink_setcaps), (gst_goom_src_setcaps), (gst_goom_src_negotiate), (gst_goom_event), (gst_goom_chain), (gst_goom_change_state): * gst/goom/gstgoom.h: GstGOOM -> GstGoom add an example launch line * gst/level/gstlevel.h: * gst/monoscope/gstmonoscope.c: cleanups 2005-08-30 Thomas Vander Stichele * configure.ac: * 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.types: document elements and plugins. Shazam ! 2005-08-30 Thomas Vander Stichele * split off gst-plugins-good from gst-plugins. Old ChangeLog can be found under doc/random/ChangeLog-0.8