2004-01-17 Christian Schaller * tools/gst-launch-ext.in - update for new plugins 2004-01-16 David Schleef * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect): Fix use of already-freed caps. 2994-01-16 Christian Schaller * Update spec for new colorspace plugin and libcaca plugin * Fix compilation of libcaca plugin (clock -> id) 2004-01-16 Julien MOUTTE * sys/xvimage/xvimagesink.c: (gst_xvimagesink_update_colorbalance), (gst_xvimagesink_xcontext_get), (gst_xvimagesink_change_state), (gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_colorbalance_set_value), (gst_xvimagesink_colorbalance_get_value), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_init), (gst_xvimagesink_class_init): Implementing correct colorbalance properties. They can now be set when the element is still in NULL state. The values will be committed to the Xv Port when xcontext is initialized. * sys/xvimage/xvimagesink.h: Added hue, saturation, contrast, brightness int values in the GstXvImagesink structure. 2004-01-16 Ronald Bultje * gst-libs/gst/Makefile.am: restructure so having local patches works easier. 2004-01-16 Ronald Bultje * ext/mpeg2enc/Makefile.am: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: Bugfix with respect to EOS handling. 2004-01-16 Ronald Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect): Link with right caps (else, it segfaults). * ext/mplex/gstmplexjob.cc: Fix for slight API change in 1.6.1.93 release of mjpegtools. 2004-01-15 David Schleef * gst-libs/gst/audio/Makefile.am: Add gstaudiofiltertemplate.c and building of gstaudiofilterexample.c from the template. * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofilter.h: Add bytes_per_sample and size and n_samples calculation. * gst-libs/gst/audio/gstaudiofilterexample.c: Remove, now autogenerated. * gst-libs/gst/audio/gstaudiofiltertemplate.c: Moved from gstaudiofilterexample, object name changed, code added so that it actually works. * gst-libs/gst/audio/make_filter: Script to build an audiofilter subclass from the template. * gst/colorspace/Makefile.am: * gst/colorspace/yuv2yuv.c: Remove file, since it's GPL, and we don't use it. 2004-01-15 Julien MOUTTE * sys/ximage/ximagesink.c: (gst_ximagesink_chain): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): Making both of them use the buffer free function to test how the buffer was allocated. 2004-01-15 David Schleef * ext/esd/esdsink.c: (gst_esdsink_class_init): Remove property that handles osssink fallback. * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_init), (gst_audio_convert_getcaps): * gst/qtdemux/qtdemux.c: (qtdemux_audio_caps): Add audio/x-qdm2 for QDM2 audio. * gst/sine/gstsinesrc.c: (gst_sinesrc_get): * gst/sine/gstsinesrc.h: Add example of how to implement tags. * gst/videoscale/gstvideoscale.c: (gst_videoscale_getcaps): Decrease minimum size to 16x16. * gst/wavparse/gstwavparse.c: Convert disabled pad template caps to new caps. * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get), (gst_xvimagesink_chain): Throw element error when display cannot be opened. Increase minimum framerate to 1.0. Check the data free function on a buffer to make sure it is the type we expect before manipulating it. 2004-01-15 Julien MOUTTE * gst/videofilter/gstvideobalance.c: (gst_videobalance_init), (gst_videobalance_colorbalance_set_value): Implement passthru if settings are in the middle. * tools/gst-launch-ext.in: Stop using xvideosink, use ximagesink. 2004-01-15 Ronald Bultje * gst/videofilter/Makefile.am: * gst/volume/Makefile.am: Since we use videofilter symbols, link to it. 2004-01-15 Julien MOUTTE * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_interface_init): Setting mixer interface type to HARDWARE. * gst-libs/gst/mixer/mixer.c: (gst_mixer_class_init): Adding a default type to SOFTWARE. * gst-libs/gst/mixer/mixer.h: Adding mixer interface type and macro. * gst-libs/gst/mixer/mixertrack.h: Adding mixertrack flag SOFTWARE. * gst/volume/gstvolume.c: (gst_volume_interface_supported), (gst_volume_interface_init), (gst_volume_list_tracks), (gst_volume_set_volume), (gst_volume_get_volume), (gst_volume_set_mute), (gst_volume_mixer_init), (gst_volume_dispose), (gst_volume_get_type), (volume_class_init), (volume_init): Implementing mixer interface. * gst/volume/gstvolume.h: Adding tracklist for mixer interface. * sys/oss/gstosselement.c: (gst_osselement_get_type), (gst_osselement_change_state): Removing some trailing commas in structures. * sys/oss/gstossmixer.c: (gst_ossmixer_interface_init): Setting mixer interface type to HARDWARE. * sys/v4l/gstv4lcolorbalance.c: (gst_v4l_color_balance_interface_init): Setting colorbalance interface type to HARDWARE. * sys/v4l2/gstv4l2colorbalance.c: (gst_v4l2_color_balance_interface_init): Setting colorbalance interface type to HARDWARE. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): use exactly the same code than ximagesink for event handling. 2004-01-15 Ronald Bultje * ext/snapshot/Makefile.am: * ext/snapshot/gstsnapshot.c: (gst_snapshot_sinkconnect), (gst_snapshot_chain): * ext/snapshot/gstsnapshot.h: This has to be a joke... Snapshot should be connected to a tee, colorspace element before it and EOS after that, where the other src of the tee receives normal data. The current way is *wrong*. 2004-01-15 Ronald Bultje * ext/hermes/gsthermescolorspace.c: Fix another compile error. Same as below. 2004-01-15 Ronald Bultje * gst/colorspace/gstcolorspace.c: * gst/colorspace/yuv2yuv.c: (gst_colorspace_yuy2_to_i420), (gst_colorspace_i420_to_yv12): Fix compiling... Didn't test if it actually works. 2004-01-15 David Schleef * configure.ac: * gst/colorspace/Makefile.am: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: Duplicate the ext/hermes colorspace plugin, and remove Hermes code and GPL code. Fix for new caps negotiation. Rewrite much of the format handling code, and some of the conversion code. Basically, rewrote almost everything. This element handles I420, YV12 to RGB conversions. * ext/hermes/Makefile.am: * ext/hermes/gsthermescolorspace.c: Rename colorspace to hermescolorspace. Fix negotiation issues. Remove non-Hermes related code. This element handles lots of RGB to RGB conversions, but no YUV. * ext/hermes/gstcolorspace.c: * ext/hermes/gstcolorspace.h: * ext/hermes/rgb2yuv.c: * ext/hermes/yuv2rgb.c: * ext/hermes/yuv2rgb.h: * ext/hermes/yuv2rgb_mmx16.s: * ext/hermes/yuv2yuv.c: * ext/hermes/yuv2yuv.h: Remove old code. 2004-01-14 Colin Walters * ext/mad/gstid3tag.c (gst_id3_tag_chain): Don't nego caps if they've already been. 2004-01-15 Benjamin Otte * ext/mad/gstid3tag.c: (gst_id3_tag_do_caps_nego): assume tag mode when pad is not connected 2004-01-15 Benjamin Otte * ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event): Don't update the time of the clock (gst_alsa_sink_loop): sync to the clock given to alsasink, not the own clock * sys/oss/gstosssink.c: (gst_osssink_chain): sync to the clock (gst_osssink_change_state): activate the clock * sys/ximage/ximagesink.c: (gst_ximagesink_chain): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): remove bogus code that made DISCONT events unhandled * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_video_caps): explicitly case to double in _set_simple. (fixes 2nd warning in bug #131502) * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_read_object_header), (gst_asf_demux_handle_sink_event), (gst_asf_demux_audio_caps), (gst_asf_demux_add_audio_stream), (gst_asf_demux_video_caps): convert g_warning because of wrong asf data to GST_WARNINGs (fixes 2nd warning in bug #131502) 2004-01-14 Julien MOUTTE * gst/videofilter/gstvideobalance.c: (gst_videobalance_init), (gst_videobalance_colorbalance_set_value), (gst_videobalance_colorbalance_get_value): Fixing videobalance ranges for colorbalance interface implementation. * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get), (gst_ximagesink_set_property), (gst_ximagesink_get_property), (gst_ximagesink_dispose), (gst_ximagesink_init), (gst_ximagesink_class_init): Adding DISPLAY property. * sys/ximage/ximagesink.h: Adding display_name to store display. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get), (gst_xvimagesink_set_property), (gst_xvimagesink_get_property), (gst_xvimagesink_dispose), (gst_xvimagesink_init), (gst_xvimagesink_class_init): Adding DISPLAY property and colorbalance properties (they still need polishing though for gst-launch use : no xcontext yet, i ll do that tomorrow). * sys/xvimage/xvimagesink.h: Adding display_name to store display. 2004-01-14 Julien MOUTTE * gst-libs/gst/play/gstplay.c: (gst_play_pipeline_setup), (gst_play_set_location), (gst_play_set_visualization): Preparing switch integration, adding videobalance in the pipeline. 2004-01-14 Julien MOUTTE * gst-libs/gst/colorbalance/colorbalance.c: (gst_color_balance_class_init): Adding a default type. * gst-libs/gst/colorbalance/colorbalance.h: Adding a macro to access the type. * gst/videofilter/gstvideobalance.c: (gst_videobalance_get_type), (gst_videobalance_dispose), (gst_videobalance_class_init), (gst_videobalance_init), (gst_videobalance_interface_supported), (gst_videobalance_interface_init), (gst_videobalance_colorbalance_list_channels), (gst_videobalance_colorbalance_set_value), (gst_videobalance_colorbalance_get_value), (gst_videobalance_colorbalance_init): Implementing colorbalance interface. * gst/videofilter/gstvideobalance.h: Adding colorbalance channels list. * sys/ximage/ximagesink.c: (gst_ximagesink_set_xwindow_id): Fixing a bug which was triggering a BadAccess X error when setting an overlay before pad was really negotiated. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_colorbalance_init): Using the colorbalance type macro. 2004-01-14 Benjamin Otte * ext/flac/gstflacenc.c: (gst_flacenc_set_metadata), (gst_flacenc_chain): handle tags correctly * gst/tags/gstid3tag.c: (gst_tag_list_new_from_id3v1): extract ID3v1 tags correctly 2004-01-14 Ronald Bultje * gst/typefind/gsttypefindfunctions.c: (matroska_type_find), (plugin_init): Improve matroska typefinding for odd-typed headers... 2004-01-14 Ronald Bultje * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): Fix for using incremental number on padnames. 2004-01-14 Ronald Bultje * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: Set category to divx4linux instead of divx (too generic). * gst/wavparse/gstwavparse.c: (gst_wavparse_init), (gst_wavparse_parse_fmt), (gst_wavparse_handle_sink_event), (gst_wavparse_loop), (gst_wavparse_change_state): * gst/wavparse/gstwavparse.h: fix parsing of WAV files with non-standard fmt-tag size and fix skipping of unrecognized chunks... Someone please fix this thing to use rifflib so all this is automated. * sys/v4l/Makefile.am: * sys/v4l2/Makefile.am: Add X_CFLAGS because we depend on X (for overlay). 2004-01-14 Jan Schmidt * ext/mpeg2dec/gstmpeg2dec.c: Don't issue a timestamp unless we tagged the frame with a PTS. 2004-01-14 Benjamin Otte * gst-libs/gst/play/gstplay.c: (gst_play_tick_callback): Query the audio element to get the time, not the clock. We're interested in the element's time here. 2004-01-14 Benjamin Otte * ext/aalib/gstaasink.c: (gst_aasink_chain): * ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event): * ext/esd/esdsink.c: (gst_esdsink_chain): * ext/libcaca/gstcacasink.c: (gst_cacasink_chain): * ext/mas/massink.c: (gst_massink_chain): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_chain): * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_index), (gst_matroska_demux_parse_metadata): * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_loop), (gst_mpeg_parse_release_locks): * gst/tcp/gsttcpsink.c: (gst_tcpsink_chain): * gst/udp/gstudpsink.c: (gst_udpsink_chain): * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get): * sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_chain), (gst_osssink_change_state): * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_chain): * sys/ximage/ximagesink.c: (gst_ximagesink_chain): * sys/xvideo/xvideosink.c: (gst_xvideosink_chain), (gst_xvideosink_release_locks): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): use element time. * ext/alsa/gstalsaclock.c: (gst_alsa_clock_start), (gst_alsa_clock_stop): * gst-libs/gst/audio/audioclock.c: (gst_audio_clock_set_active), (gst_audio_clock_get_internal_time): simplify for use with new clocking code. * testsuite/alsa/Makefile.am: * testsuite/alsa/sinesrc.c: (sinesrc_init), (sinesrc_force_caps): fix testsuite for new caps system 2004-01-14 Benjamin Otte * ext/flac/gstflacdec.c: (gst_flacdec_update_metadata): * ext/flac/gstflacenc.c: (add_one_tag): length is already host endian, no need to convert. Fixes playback of tagged files on PPC. (bug #128384) 2004-01-13 Julien MOUTTE * gst-libs/gst/colorbalance/colorbalance.h: Adding a type to the colorbalance interface stating if it is hardware based or software based. * gst/videofilter/gstvideobalance.c: (gst_videobalance_planar411): Removing a trailing comma. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get), (gst_xvimagesink_colorbalance_init): Integrating a patch from Jon Trowbridge querying Xv adaptor for min/max value as the documentation seems to be wrong on the -1000 to 1000 interval. 2004-01-12 David Schleef * gst/debug/efence.c: (gst_efence_init), (gst_efence_chain), (gst_efence_buffer_alloc), (gst_fenced_buffer_new), (gst_fenced_buffer_default_free), (gst_fenced_buffer_default_copy): Fix negotiation. Add a bufferalloc function for the sink pad, and generally clean up some of the code. 2004-01-12 Julien MOUTTE * gst-libs/gst/colorbalance/colorbalancechannel.c: (gst_color_balance_channel_dispose): Adding safety check in dispose method. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get), (gst_xvimagesink_xcontext_clear), (gst_xvimagesink_interface_supported), (gst_xvimagesink_colorbalance_list_channels), (gst_xvimagesink_colorbalance_set_value), (gst_xvimagesink_colorbalance_get_value), (gst_xvimagesink_colorbalance_init), (gst_xvimagesink_get_type): Adding colorbalance interface support to set XV parameters such as HUE, BRIGHTNESS, CONTRAST, SATURATION. * sys/xvimage/xvimagesink.h: Adding the channels list for colorbalance interface. 2004-01-12 Thomas Vander Stichele * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_get_type), (gst_audio_convert_class_init), (gst_audioconvert_getcaps), (gst_audio_convert_init), (gst_audio_convert_set_property), (gst_audio_convert_get_property), (gst_audio_convert_chain), (gst_audio_convert_link), (gst_audio_convert_buffer_to_default_format), (gst_audio_convert_buffer_from_default_format), (plugin_init): - implement _getcaps and use it - improve linking - remove float caps since no float conversion is actually done - remove properties and arguments that were to be used for rate conversion 2004-01-12 Thomas Vander Stichele * gst-libs/gst/audio/audio.c: (_gst_audio_structure_set_list), (gst_audio_structure_set_int): * gst-libs/gst/audio/audio.h: add helper functions for _getcaps matching the standard audio templates 2004-01-12 David Schleef * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link): Test that pad is negotiated before getting its caps. 2004-01-12 Julien MOUTTE * gst-libs/gst/play/gstplay.c: (gst_play_get_sink_element): When analyzing the pads of an element the bin is mostly in READY state so no caps were negotiated. This helper function needs to work with _get_caps directly then. I was not freeing them though, added that to fix the mem leak. 2004-01-12 Julien MOUTTE * sys/ximage/ximagesink.c: (gst_ximagesink_chain): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): Fixing the direct put buffers detection. I prefer checking GST_BUFFER_PRIVATE than the free_func. 2004-01-12 Thomas Vander Stichele * sys/oss/gstossaudio.c: (plugin_init): * sys/oss/gstosselement.c: (gst_osselement_sync_parms): * sys/oss/gstosselement.h: make an oss debugging category make failure more descriptive 2004-01-11 David Schleef * ext/ffmpeg/gstffmpeg.c: * ext/ffmpeg/gstffmpegcodecmap.c: * ext/ffmpeg/gstffmpegdec.c: * ext/ffmpeg/gstffmpegenc.c: * ext/ffmpeg/gstffmpegprotocol.c: * ext/gdk_pixbuf/gstgdkanimation.c: * ext/jpeg/gstjpeg.c: * ext/libpng/gstpng.c: * ext/mpeg2dec/perftest.c: * ext/speex/gstspeex.c: * gst-libs/gst/resample/dtos.c: * gst/intfloat/gstintfloatconvert.c: * gst/oneton/gstoneton.c: * gst/rtjpeg/RTjpeg.c: * gst/rtp/gstrtp.c: * sys/dxr3/dxr3init.c: * sys/glsink/gstgl_nvimage.c: * sys/glsink/gstgl_pdrimage.c: * sys/glsink/gstglsink.c: * testsuite/gst-lint: Make sure everybody wraps #include "config.h" in #ifdef HAVE_CONFIG_H 2004-01-11 David Schleef * ext/alsa/gstalsasrc.c: (gst_alsa_src_set_caps): * ext/faac/gstfaac.c: (gst_faac_sinkconnect): * ext/gdk_pixbuf/gstgdkanimation.c: (gst_gdk_animation_iter_create_pixbuf): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_link), (gst_gdk_pixbuf_chain): * ext/gdk_pixbuf/gstgdkpixbuf.h: * ext/jack/gstjack.c: (gst_jack_change_state): * ext/xvid/gstxviddec.c: (gst_xviddec_sink_link): * gst-libs/gst/play/gstplay.c: (gst_play_get_sink_element): * gst-libs/gst/play/play.c: (gst_play_get_sink_element): * gst/videofilter/gstvideofilter.c: (gst_videofilter_set_output_size): Remove all usage of gst_pad_get_caps(), and replace it with gst_pad_get_allowed_caps() or gst_pad_get_negotiated_cap(). 2004-01-11 David Schleef * configure.ac: * ext/Makefile.am: Fixes to make ext/libcaca compile. * ext/divx/gstdivxdec.c: * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_link), (gst_gdk_pixbuf_init), (gst_gdk_pixbuf_chain): Make gdkpixbufdec handle images that span multiple buffers. Now work with both filesrc ! gdkpixbufdec and qtdemux ! gdkpixbufdec. * ext/gdk_pixbuf/gstgdkpixbuf.h: * ext/libcaca/gstcacasink.h: Fixes needed due to recent video/video.h changes * ext/xvid/gstxvid.c: (gst_xvid_csp_to_caps): same * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_get), (gst_v4lmjpegsrc_buffer_free): Use buffer free function instead of GstData free function. * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get), (gst_v4lsrc_buffer_free): same. 2004-01-12 Benjamin Otte * sys/v4l2/gstv4l2element.c: (gst_v4l2element_class_init), (gst_v4l2element_dispose), (gst_v4l2element_set_property), (gst_v4l2element_get_property): * sys/v4l2/v4l2_calls.c: (gst_v4l2_set_defaults), (gst_v4l2_open): add norm, channel and frequency properties. * sys/v4l2/gstv4l2tuner.c: fixes for tuner interface changes * sys/v4l2/gstv4l2element.h: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: rework v4l2src to work with saa1734 cards and allow mmaped buffers. 2004-01-12 Benjamin Otte * gst-libs/gst/tuner/tuner.c: (gst_tuner_class_init), (gst_tuner_find_norm_by_name), (gst_v4l2_find_channel_by_name), (gst_tuner_channel_changed), (gst_tuner_norm_changed), (gst_tuner_frequency_changed), (gst_tuner_signal_changed): * gst-libs/gst/tuner/tuner.h: GObjects aren't const. Add find_by_name functions. Add checks to _changed functions. * sys/v4l/gstv4ltuner.c: (gst_v4l_tuner_get_channel), (gst_v4l_tuner_get_norm): Fixes for above. 2004-01-12 Benjamin Otte * gst-libs/gst/video/video.h: Fix caps template names to be understandable. Prefix everything with GST_VIDEO. * ext/aalib/gstaasink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/gdk_pixbuf/gstgdkpixbuf.c: * ext/hermes/gstcolorspace.c: (gst_colorspace_base_init): * ext/jpeg/gstjpegdec.c: (raw_caps_factory): * ext/jpeg/gstjpegenc.c: (raw_caps_factory): * ext/libcaca/gstcacasink.c: * ext/libpng/gstpngenc.c: (raw_caps_factory): * ext/snapshot/gstsnapshot.c: * ext/swfdec/gstswfdec.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/chart/gstchart.c: * gst/deinterlace/gstdeinterlace.c: * gst/effectv/gsteffectv.c: * gst/flx/gstflxdec.c: (gst_flxdec_loop): * gst/goom/gstgoom.c: * gst/median/gstmedian.c: * gst/monoscope/gstmonoscope.c: (gst_monoscope_init), (gst_monoscope_srcconnect), (gst_monoscope_chain): * gst/overlay/gstoverlay.c: * gst/smooth/gstsmooth.c: * gst/smpte/gstsmpte.c: * gst/synaesthesia/gstsynaesthesia.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/y4m/gsty4mencode.c: * sys/qcam/gstqcamsrc.c: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps): Make them work with new video.h file. * sys/ximage/ximagesink.c: (gst_ximagesink_chain), (gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain), (gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc): Make it work with new buffer allocation system. 2004-01-11 Julien MOUTTE * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): Fixing the pad_alloc_buffer implementation to use ->srcpad * ext/hermes/gstcolorspace.c: (gst_colorspace_chain): Fixing the pad_alloc_buffer implementation to use ->srcpad * gst/videoscale/gstvideoscale.c: (gst_videoscale_chain): Fixing the pad_alloc_buffer implementation to use ->srcpad * sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new), (gst_ximagesink_chain), (gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc): Now only use GST_BUFFER_PRIVATE to keep a reference to everything we need. * sys/ximage/ximagesink.h: adding a reference to the sink in the image. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new), (gst_xvimagesink_chain), (gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc): Now only use GST_BUFFER_PRIVATE to keep a reference to everything we need. * sys/xvimage/xvimagesink.h: adding a reference to the sink in the image 2004-01-11 David Schleef * ext/divx/gstdivxenc.c: remove bogus gst_caps_is_fixed() test * gst/debug/efence.c: (gst_efence_chain), (gst_fenced_buffer_new), (gst_fenced_buffer_default_copy): Fix for rename of buffer private structure members. * gst/effectv/gstwarp.c: (gst_warptv_setup): Don't reset the time value during a resize/renegotiation. * gst/videofilter/gstvideofilter.c: (gst_videofilter_chain): use gst_pad_alloc_buffer(); * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_get), (gst_v4lmjpegsrc_buffer_free): Fix for rename of buffer private structure members. * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get), (gst_v4lsrc_buffer_free): Fix for rename of buffer private structure members. * sys/ximage/ximagesink.c: (gst_ximagesink_chain), (gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc): Fix for rename of buffer private structure members. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain), (gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc): Fix for rename of buffer private structure members. 2004-01-11 Arwed v. Merkatz reviewed by: David Schleef * gst/videofilter/Makefile.am: * gst/videofilter/gstgamma.c: Gamma correction filter. Modified from the patch by ds to fit in with recent make_filter changes. 2004-01-11 Julien MOUTTE * configure.ac: Adding examples/switch/Makefile * examples/Makefile.am: Adding examples/switch * examples/switch/Makefile.am: Adding switcher example. * examples/switch/switcher.c: (got_eos), (idle_iterate), (switch_timer), (main): Adding an example demonstrating switch usage with 2 videotestsrc showing different patterns. * gst/switch/gstswitch.c: (gst_switch_request_new_pad), (gst_switch_init): Fixing switch with the new caps system. 2004-01-11 Benjamin Otte * gst-libs/gst/video/video.h: Fix 32bit caps. Issue remaining: The macro names are chosen poorly. They should probably be like GST_VIDEO_PAD_TEMPLATE_CAPS_{RGB,BGR,RGBx,BGRx}. 2004-01-11 Benjamin Otte * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (qtdemux_parse_trak): fix audio chunk size/timestamp calculation 2004-01-11 Benjamin Otte * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): fix SVQ3 caps 2004-01-11 Steve Baker * gst/effectv/gstaging.c: (gst_agingtv_get_type), (gst_agingtv_base_init), (gst_agingtv_class_init), (gst_agingtv_init), (gst_agingtv_setup), (gst_agingtv_rgb32), (gst_agingtv_set_property), (gst_agingtv_get_property): Port agingTV to videofilter 2004-01-09 Julien MOUTTE * ext/hermes/gstcolorspace.c: (gst_colorspace_chain): Implementing gst_pad_alloc_buffer to use optimized buffer allocation. 2004-01-09 Julien MOUTTE * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): Implementing gst_pad_alloc_buffer to use optimized buffer allocation. * gst-libs/gst/xoverlay/xoverlay.c: (gst_x_overlay_got_desired_size): Updating doc for the xid being 0. * gst/videoscale/gstvideoscale.c: (gst_videoscale_chain): Implementing gst_pad_alloc_buffer to use optimized buffer allocation. * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get): Implementing gst_pad_alloc_buffer to use optimized buffer allocation. * sys/ximage/ximagesink.c: (gst_ximagesink_chain), (gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc), (gst_ximagesink_set_xwindow_id), (gst_ximagesink_init): Implementing the bufferalloc_function to replace bufferpools, fixing the XOverlay interface implementation to handle xid being 0 and fix some bugs triggered by Benjamin's testcase. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain), (gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc), (gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_init): Implementing the bufferalloc_function to replace bufferpools, fixing the XOverlay interface implementation to handle xid being 0 and fix some bugs triggered by Benjamin's testcase. 2004-01-09 David Schleef * ext/librfb/gstrfbsrc.c: Hacking. Added actual decoding and mouse pointer events. It works. 2004-01-09 Ronald Bultje * ext/divx/gstdivxenc.c: (gst_divxenc_init): Use explicit caps - fix capsnego. * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: Remove macro-inside-macro which caused compile errors. * gst-libs/gst/riff/riff-read.c: (gst_riff_read_header): Error out if it's not a RIFF file. Else we error out without gst_element_error() which is not good... 2004-01-08 David Schleef * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect): Fix pad_link function to handle formats that ffmpeg returns as multiple caps structures. * gst/videofilter/gstvideofilter.c: (gst_videofilter_chain): Only complain if source buffer is _smaller_ than expected. * gst/videoscale/gstvideoscale.c: (gst_videoscale_init), (gst_videoscale_handle_src_event): Resize navigation events when passing them upstream. * gst/videotestsrc/gstvideotestsrc.c: * gst/videotestsrc/gstvideotestsrc.h: * gst/videotestsrc/videotestsrc.c: * gst/videotestsrc/videotestsrc.h: Rewrite many of the buffer painting functions to handle odd sizes (for many formats, size%4!=0 or size%8!=0). Most have been verified to work with my video card. * testsuite/gst-lint: Add check for elements calling gst_pad_get_caps() instead of gst_pad_get_allowed_caps(). 2004-01-08 David Schleef * gst/videodrop/gstvideodrop.c: (gst_videodrop_getcaps), (gst_videodrop_link), (gst_videodrop_init): Fix negotiation. 2004-01-08 Julien MOUTTE * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): A configure event is not emiting the desired size signal. That fixes aspect ratio issues with gst-player. 2004-01-08 Ronald Bultje * gst/median/gstmedian.c: (gst_median_link), (gst_median_init): Fix capsnego. 2004-01-08 Julien MOUTTE * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_create): Using XOverlay public method to fire size signal. 2004-01-07 Julien MOUTTE * examples/gstplay/Makefile.am: Adding the interface library. * gst-libs/gst/play/Makefile.am: Adding the interface library. * gst-libs/gst/play/gstplay.c: (gst_play_set_video_sink): Connecting to the XOverlay size signal instead of GstVideoSink. * gst-libs/gst/play/gstplay.h: Including the XOverlay interface to check GST_IS_X_OVERLAY before signal connect. * gst-libs/gst/video/gstvideosink.c: (gst_videosink_class_init): Removing the have_video_size signal. * gst-libs/gst/video/gstvideosink.h: Removing the have_video_size signal and associated public method. * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents), (gst_ximagesink_sinkconnect): Using XOverlay public method to fire size signal. * sys/xvideo/xvideosink.c: (gst_xvideosink_sinkconnect), (gst_xvideosink_xwindow_new): Using XOverlay public method to fire size signal. * sys/xvimage/xvimagesink.c: (gst_xvimagesink_sinkconnect): Using XOverlay public method to fire size signal. 2004-01-07 David Schleef * gst/videofilter/Makefile.am: * gst/videofilter/gstvideotemplate.c: * gst/videofilter/make_filter: Create gstvideoexample.c in a srcdir!=builddir friendly way. Convert make_filter to /bin/sh script. 2004-01-07 Thomas Vander Stichele * gst/modplug/gstmodplug.cc: fix element description 2004-01-07 Julien MOUTTE * examples/gstplay/player.c: (got_time_tick), (got_stream_length), (got_video_size): Adding some new lines in g_print calls. * sys/ximage/ximagesink.c: (gst_ximagesink_xwindow_new), (gst_ximagesink_xwindow_destroy), (gst_ximagesink_xwindow_resize), (gst_ximagesink_handle_xevents), (gst_ximagesink_fixate), (gst_ximagesink_sinkconnect), (gst_ximagesink_change_state), (gst_ximagesink_chain), (gst_ximagesink_buffer_new), (gst_ximagesink_set_xwindow_id), (gst_ximagesink_get_desired_size): Complete code review, reverting some stuff i disagree with, adding some fixes : time synchronization on invalid timestamps, renegotiation of private window. * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_destroy), (gst_xvimagesink_xwindow_resize), (gst_xvimagesink_handle_xevents), (gst_xvimagesink_get_xv_support), (gst_xvimagesink_xcontext_get), (gst_xvimagesink_fixate), (gst_xvimagesink_sinkconnect), (gst_xvimagesink_change_state), (gst_xvimagesink_chain), (gst_xvimagesink_buffer_new), (gst_xvimagesink_navigation_send_event), (gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_get_desired_size), (gst_xvimagesink_xoverlay_init): Complete code review, reverting some stuff i disagree with, adding some fixes : Renegotiation of private window, implementing get_desired_size. 2004-01-07 Ronald Bultje * ext/audiofile/gstafsink.c: (gst_afsink_init), (gst_afsink_chain), (gst_afsink_handle_event): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_init): * gst/avi/gstavimux.c: (gst_avimux_request_new_pad): * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_init): * sys/dxr3/dxr3spusink.c: (dxr3spusink_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_init): Fix for instantiate-test (see core). Also remove dead code from jpegenc (which still needs fixing, but that's lower on my TODO list...). * sys/v4l2/gstv4l2src.c: (gst_v4l2src_getcaps): Never return NULL as caps. 2004-01-07 David Schleef * configure.ac: * ext/Makefile.am: * ext/librfb/Makefile.am: * ext/librfb/gstrfbsrc.c: New source plugin based on librfb-0.1. RFB (remote framebuffer) is the protocol used by VNC. 2004-01-07 David Schleef * gst/videofilter/gstvideotemplate.c: * gst/videofilter/gstvideotemplate.h: * gst/videofilter/make_filter: Merge videotemplate header into source file. * gst/effectv/Makefile.am: * gst/effectv/gsteffectv.c: (plugin_init): * gst/effectv/gstwarp.c: Make warpTV a subclass of videofilter. 2004-01-07 Benjamin Otte * ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list): Add guard against invalid utf-8 conversions in mad. Just in case. 2004-01-07 Benjamin Otte * sys/oss/gstosssink.c: (gst_osssink_sink_fixate): Fix for bug shown by poisoning 2004-01-06 Ronald Bultje * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_get), (gst_v4lmjpegsrc_buffer_free): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps), (gst_v4lsrc_srcconnect), (gst_v4lsrc_getcaps), (gst_v4lsrc_get), (gst_v4lsrc_buffer_free): Fix for removed bufferpools. 2004-01-07 Jan Schmidt * ext/dv/gstdvdec.c: (gst_dvdec_loop): Fix caps negotiation. * ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_class_init), (dvdnavsrc_update_buttoninfo), (dvdnavsrc_get), (dvdnavsrc_get_event_mask), (dvdnav_handle_navigation_event), (dvdnavsrc_event): * ext/mpeg2dec/gstmpeg2dec.c: * gst-libs/gst/navigation/navigation.c: (gst_navigation_send_key_event), (gst_navigation_send_mouse_event): * gst-libs/gst/navigation/navigation.h: * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_handle_src_event): * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): Super-simple first version of mouse and keyboard events. Clicking on a DVD menu now works, although it may not take you where you expected. * gst/sine/gstsinesrc.c: (gst_sinesrc_src_fixate): * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_src_fixate): These fixate functions were broken - they never actually fixated :) 2004-01-06 Ronald Bultje * ext/shout/gstshout.c: (gst_icecastsend_base_init), (gst_icecastsend_init): fix for new caps system. * gst-libs/gst/mixer/mixertrack.h: * sys/oss/gstossmixer.c: (gst_ossmixer_build_list): Add 'master track' flag (for tools like ACME that only want to change the main volume). 2004-01-07 Jan Schmidt * ext/xvid/gstxvid.c: (gst_xvid_structure_to_csp), (gst_xvid_csp_to_caps): * ext/xvid/gstxviddec.c: (gst_xviddec_src_getcaps): * ext/xvid/gstxvidenc.c: ifdef out ARGB type when it isn't available in xvidcore 1.0.0beta2 2004-01-06 Ronald Bultje * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_loop): When we have received a new SCR right in the first buffer after a seek (so in the same cycle that handles the discont), we should handle the buffer instead of unreffing it, else we lose data. 2004-01-06 Iain * gst/intfloat/gstint2float.c (gst_int2float_link): Set the buffer-frames caps too. * gst/oneton/gstoneton.c (gst_oneton_sink_connect): Only create the new caps that we need, don't destroy them all and rebuild them. And when creating src pads, use the src pad template rather than the sink... 2004-01-05 Ronald Bultje * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead): Add pad to element *after* setting functions such as event handler. Without this, the scheduler (opt) will link pads, set the event handler from the default event function (dispatcher in gstpad.c) and *after* that, we will set our own event function, which will thus never be used (and thus mpegdemux doesn't handle events). 2004-01-04 David Schleef Fix the fixate functions to handle new prototype: * gst/sine/gstsinesrc.c: (gst_sinesrc_src_fixate): * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_src_fixate): * sys/oss/gstosssink.c: (gst_osssink_sink_fixate): * sys/ximage/ximagesink.c: (gst_ximagesink_fixate): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_fixate): 2004-01-04 Benjamin Otte * sys/ximage/ximagesink.h: * sys/ximage/ximagesink.c: (gst_ximagesink_xwindow_new), (gst_ximagesink_xwindow_destroy), (gst_ximagesink_sinkconnect), (gst_ximagesink_change_state), (gst_ximagesink_set_xwindow_id), (gst_ximagesink_xoverlay_init): assorted fixes to make (re)embedding work * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect), (gst_ximagesink_get_desired_size): implement desired size additions to XOverlay 2004-01-04 Benjamin Otte * gst-libs/gst/xoverlay/xoverlay.c: (gst_x_overlay_base_init), (gst_x_overlay_got_xwindow_id), (gst_x_overlay_get_desired_size), (gst_x_overlay_got_desired_size): * gst-libs/gst/xoverlay/xoverlay.h: Add optional "desired size" signal and querying. 2004-01-04 Ronald Bultje * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup): Fix EBML-laced block parsing. Diffs are relative to previous lace, not the first lace. Thanks to Mosu from the Matroska team for detecting this. * gst/wavparse/gstwavparse.c: (gst_wavparse_init), (gst_wavparse_parse_fmt), (gst_wavparse_getcaps), (gst_wavparse_handle_sink_event), (gst_wavparse_loop), (gst_wavparse_change_state): * gst/wavparse/gstwavparse.h: Quickfix for capsnego. 2004-01-04 Ronald Bultje * gst/wavenc/gstwavenc.c: (set_property), (gst_wavenc_init): Fix indenting, fix pad creation. 2004-01-04 Ronald Bultje * ext/xvid/gstxviddec.c: (gst_xviddec_init), (gst_xviddec_src_getcaps), (gst_xviddec_src_link), (gst_xviddec_sink_link): Implement src_getcaps() so proper size caps is negotiated. 2004-01-04 Ronald Bultje * ext/flac/gstflacdec.c: (gst_flacdec_loop): Finish flac decoder on EOS. See #116178. 2004-01-04 Ronald Bultje * gst/matroska/matroska-demux.c: (gst_matroska_demux_src_getcaps), (gst_matroska_demux_add_stream): * gst/matroska/matroska-ids.h: Add getcaps() function to fix capsnego... 2004-01-04 Ronald Bultje * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead), (gst_mpeg_demux_parse_packet), (gst_mpeg_demux_parse_pes): * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_parse_packhead): Fix more integer overflows. Again, see #126967. 2004-01-03 Ronald Bultje * ext/mpeg2dec/gstmpeg2dec.c: Add support for mpeg2dec-0.4.0 (released two weeks ago). See #130416. 2004-01-03 Ronald Bultje * configure.ac: * ext/xvid/gstxvid.c: (gst_xvid_init), (gst_xvid_error), (gst_xvid_structure_to_csp), (gst_xvid_csp_to_caps): * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: (gst_xviddec_class_init), (gst_xviddec_init), (gst_xviddec_setup), (gst_xviddec_chain), (gst_xviddec_src_link), (gst_xviddec_sink_link), (gst_xviddec_change_state): * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: (gst_xvidenc_profile_get_type), (gst_xvidenc_base_init), (gst_xvidenc_class_init), (gst_xvidenc_init), (gst_xvidenc_setup), (gst_xvidenc_chain), (gst_xvidenc_link), (gst_xvidenc_set_property), (gst_xvidenc_get_property), (gst_xvidenc_change_state): * ext/xvid/gstxvidenc.h: Update xvid plugin to latest xvid (1.0.0-beta3) API. 2004-01-03 Ronald Bultje * gst/rtp/rtp-packet.c: Add sys/types.h include, since OS X doesn't define in_addr_t in netinet/in.h, like it does on Linux (see #129600). 2004-01-03 Thomas Canty reviewed by: Ronald Bultje * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_dispose): Correct logic of dispose function (see #129306). 2004-01-03 Ronald Bultje * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_pes): * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_class_init), (gst_mpeg_parse_init): * gst/mpegstream/gstmpegparse.h: Remove clock (which was never provided, i.e. dead code), and also fix integer overflows at high PTS values (see #126967). 2004-01-03 Ronald Bultje * ext/flac/gstflacdec.c: * ext/libpng/gstpngenc.h: * ext/mikmod/gstmikmod.h: OS X fixes (see #126628). 2004-01-02 David Schleef * ext/alsa/gstalsasrc.c: (gst_alsa_src_pad_factory), (gst_alsa_src_base_init): Remove bogus "src" request pad. * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_base_init), (gst_mpeg_parse_class_init): Move pad template registration to class_init, since the derived class (mpegdemux) doesn't want them. 2004-01-03 Ronald Bultje * sys/ximage/Makefile.am: * sys/xvideo/Makefile.am: * sys/xvimage/Makefile.am: Move interface libs from LDFLAGS to LIBADD, fix relocation errors after installation (see #127664). 2004-01-02 David Schleef * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_init), (gst_ffmpegenc_connect): Negotiation fixes. * ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format): Remove inappropriate gst_caps_free(). * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect): Reenable Ronald's internal resize code, since the core handles it correctly now. 2004-01-02 Ronald Bultje * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_init): * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_base_init), (gst_v4lsrc_init): Fix pad template stuff. 2004-01-02 Ronald Bultje * gst/matroska/ebml-read.c: (gst_ebml_read_sint): * gst/matroska/ebml-write.c: (gst_ebml_write_sint): fix signed integer reading/writing. 2004-01-02 Benjamin Otte * ext/alsa/README: Remove outdated document 2004-01-03 Jan Schmidt * gst/cutter/gstcutter.c: (gst_cutter_init): src pad was being created twice - oops. 2004-01-02 Ronald Bultje * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect): Comment out internal resize. It doesn't handle the resulting XEvent internally, does another try_set_caps() which leads to a really nice loop. Real fix will come when Julien and Dave are awake. ;). 2004-01-02 Ronald Bultje * ext/mpeg2enc/gstmpeg2enc.cc: fix const/nonconst compile issue. 2004-01-02 David Schleef * sys/xvimage/xvimagesink.c: (gst_xvimagesink_fixate), (gst_xvimagesink_sinkconnect), (gst_xvimagesink_init): Add fixate function and a check for bad formats. 2004-01-01 David Schleef Negotiation fixes: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audiofilter_link), (gst_audiofilter_init): * gst/debug/efence.c: (gst_efence_init): * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_link), (gst_deinterlace_init): * gst/volume/gstvolume.c: (volume_connect): 2004-01-01 David Schleef Convert elements to use gst_pad_use_explicit_caps() where appropriate: * ext/a52dec/gsta52dec.c: (gst_a52dec_init), (gst_a52dec_reneg): * ext/audiofile/gstafparse.c: (gst_afparse_init), (gst_afparse_open_file): * ext/audiofile/gstafsrc.c: (gst_afsrc_init), (gst_afsrc_open_file): * ext/esd/esdmon.c: (gst_esdmon_init), (gst_esdmon_get): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): * ext/flac/gstflacdec.c: (gst_flacdec_init), (gst_flacdec_write): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_init), (gst_gdk_pixbuf_chain): * ext/jpeg/gstjpegdec.c: (gst_jpegdec_init), (gst_jpegdec_link), (gst_jpegdec_chain): * ext/mad/gstmad.c: (gst_mad_init), (gst_mad_chain): * ext/mikmod/gstmikmod.c: (gst_mikmod_init), (gst_mikmod_negotiate): * ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_init), (gst_mpeg2dec_negotiate_format): * ext/mpeg2enc/gstmpeg2enc.cc: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_push): * ext/speex/gstspeexdec.c: (gst_speexdec_init), (gst_speexdec_sinkconnect): * ext/swfdec/gstswfdec.c: (gst_swfdec_loop), (gst_swfdec_init): * ext/vorbis/vorbisfile.c: (gst_vorbisfile_init), (gst_vorbisfile_new_link): * gst/ac3parse/gstac3parse.c: (gst_ac3parse_init), (gst_ac3parse_chain): * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_add_audio_stream), (gst_asf_demux_setup_pad): * gst/auparse/gstauparse.c: (gst_auparse_init), (gst_auparse_chain): * gst/id3/gstid3types.c: (gst_id3types_loop): * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): * gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_init), (mp1videoparse_parse_seq): * gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_init), (bpf_from_header): * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead), (gst_mpeg_demux_parse_pes), (gst_mpeg_demux_lpcm_set_caps): * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_init), (gst_mpeg_parse_send_data): * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (gst_qtdemux_add_stream): * gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream): * gst/wavparse/gstwavparse.c: (gst_wavparse_init), (gst_wavparse_parse_fmt): 2004-01-01 Ronald Bultje * configure.ac: Fix configure check for mpeg2enc. We need 1.6.1.93 instead of 1.6.1.92, since the pkg-config file of 1.6.1.92 is borked and it therefore uses the wrong include paths. Too bad... Note that 1.6.1.93 is not release yet. ;). Also add a check for mplex, which is now using the lib'ified mplex from mjpegtools, too. * ext/ffmpeg/gstffmpegcodecmap.c: Add codec_tag for 3ivx/xvid. For xvid, this should fix playback issues. I don't think ffmpeg handles 3ivx correctly, so this probably won't work. But it won't hurt either. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect), (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect), (gst_ffmpegenc_chain_audio): Fix memleak in audio encoding. Close codec if open fails, this calls the cleanup routines so we can re-use the context. * ext/mpeg2enc/gstmpeg2enc.cc: Fix pad template names/types, fix memory issue with getcaps(). * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoder.hh: Fix compile issue with new caps system (const thingy). * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: We read a first frame right on initing, so that we have a caps when we init the output. This caps is cached in padprivate and read as first frame. * ext/mplex/Makefile.am: * ext/mplex/gstmplex.cc: * ext/mplex/gstmplex.h: * ext/mplex/gstmplex.hh: * ext/mplex/gstmplexibitstream.cc: * ext/mplex/gstmplexibitstream.hh: * ext/mplex/gstmplexjob.cc: * ext/mplex/gstmplexjob.hh: * ext/mplex/gstmplexoutputstream.cc: * ext/mplex/gstmplexoutputstream.hh: We wrap mjpegtools mplex. So I rewrote the plugin. The old plugin had issues, didn't do capsnego, supported only a subset of the mplex features and required a mplex fork in our local CVS. Plus that it worked agaist a very old mplex version. Rewriting was faster than updating it. * gst-libs/ext/Makefile.am: * gst-libs/ext/mplex/INSTRUCT: * gst-libs/ext/mplex/Makefile.am: * gst-libs/ext/mplex/README: * gst-libs/ext/mplex/TODO: * gst-libs/ext/mplex/ac3strm_in.cc: * gst-libs/ext/mplex/audiostrm.hh: * gst-libs/ext/mplex/audiostrm_out.cc: * gst-libs/ext/mplex/aunit.hh: * gst-libs/ext/mplex/bits.cc: * gst-libs/ext/mplex/bits.hh: * gst-libs/ext/mplex/buffer.cc: * gst-libs/ext/mplex/buffer.hh: * gst-libs/ext/mplex/fastintfns.h: * gst-libs/ext/mplex/format_codes.h: * gst-libs/ext/mplex/inputstrm.cc: * gst-libs/ext/mplex/inputstrm.hh: * gst-libs/ext/mplex/lpcmstrm_in.cc: * gst-libs/ext/mplex/mjpeg_logging.cc: * gst-libs/ext/mplex/mjpeg_logging.h: * gst-libs/ext/mplex/mjpeg_types.h: * gst-libs/ext/mplex/mpastrm_in.cc: * gst-libs/ext/mplex/mpegconsts.cc: * gst-libs/ext/mplex/mpegconsts.h: * gst-libs/ext/mplex/mplexconsts.hh: * gst-libs/ext/mplex/multplex.cc: * gst-libs/ext/mplex/outputstream.hh: * gst-libs/ext/mplex/padstrm.cc: * gst-libs/ext/mplex/padstrm.hh: * gst-libs/ext/mplex/stillsstream.cc: * gst-libs/ext/mplex/stillsstream.hh: * gst-libs/ext/mplex/systems.cc: * gst-libs/ext/mplex/systems.hh: * gst-libs/ext/mplex/vector.cc: * gst-libs/ext/mplex/vector.hh: * gst-libs/ext/mplex/videostrm.hh: * gst-libs/ext/mplex/videostrm_in.cc: * gst-libs/ext/mplex/videostrm_out.cc: * gst-libs/ext/mplex/yuv4mpeg.cc: * gst-libs/ext/mplex/yuv4mpeg.h: * gst-libs/ext/mplex/yuv4mpeg_intern.h: * gst-libs/ext/mplex/yuv4mpeg_ratio.cc: We don't fork mjpegtools' mplex in our CVS anymore. * gst/avi/gstavidemux.c: (gst_avi_demux_src_getcaps), (gst_avi_demux_add_stream): * gst/avi/gstavidemux.h: Add getcaps() function for proper caps nego. This makes some parts of AVI playback/reading work. * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect): Resize window on new capsnego. This is probably wrong, but I'm still committing it because with current capsnego, the first successfull capsnego is auto-fixated, therefore rounded down to the lowest values in the caps. this results in a 16x16 XWindow that is not reized when real capsnego finishes. Dave, I see more cases of this, do you know a proper solution? * tools/gst-launch-ext.in: Fix MPEG-4 AAC (Apple iPod/iTunes) file commandline. 2003-12-31 David Schleef * gst/tcp/gsttcpsrc.c: (gst_tcpsrc_get): * gst/udp/gstudpsrc.c: (gst_udpsrc_get): Change gst_pad_proxy_link() to gst_pad_try_set_caps() 2003-12-30 David Schleef * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_caps_remove_format_info), (gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_pad_link), (gst_ffmpegcsp_init), (gst_ffmpegcsp_chain): Negotiation fixes * ext/mad/gstmad.c: (gst_mad_chain): Negotiation fixes * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain), (gst_audio_convert_link), (gst_audio_convert_channels): * gst/audioscale/gstaudioscale.c: (gst_audioscale_getcaps), (gst_audioscale_link), (gst_audioscale_get_buffer), (gst_audioscale_chain): Negotiation fixes * gst/audioscale/gstaudioscale.h: * gst/videofilter/gstvideofilter.c: (gst_videofilter_format_get_structure), (gst_videofilter_getcaps), (gst_videofilter_link), (gst_videofilter_init), (gst_videofilter_set_output_size), (gst_videofilter_setup), (gst_videofilter_find_format_by_structure): * gst/videofilter/gstvideofilter.h: Negotiation fixes * gst/videoscale/gstvideoscale.c: (gst_videoscale_getcaps), (gst_videoscale_link): * gst/videoscale/videoscale.c: (videoscale_get_structure), (videoscale_find_by_structure), (gst_videoscale_setup): * gst/videoscale/videoscale.h: Negotiation fixes * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents), (gst_ximagesink_fixate), (gst_ximagesink_init): Add a fixate function, restrict resizing to a multiple of 4 (hack until everyone supports odd sizes correctly). 2003-12-29 Colin Walters * ext/esd/esdsink.c (gst_esdsink_link): Fix typo; get depth instead of signed. 2003-12-30 Jan Schmidt * ext/sndfile/gstsf.c: (gst_sf_loop): Fix warning about discarding const qualifier 2003-12-27 Jeremy Simon * gst/cutter/gstcutter.c: * gst/videoscale/gstvideoscale.c: * gst/volenv/gstvolenv.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/video/video.c: Fix warnings 2003-12-27 Benjamin Otte * ext/alsa/gstalsa.c: (gst_alsa_open_audio): Don't send ALSA debugging to stderr. * ext/alsa/gstalsa.h: Use GST_WARNING instead of g_warning when ALSA functions fail. 2003-12-27 Benjamin Otte * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): Free XVAdapterInfo correctly. 2003-12-27 Benjamin Otte * ext/mad/gstid3tag.c: (gst_id3_tag_add_src_pad), (gst_id3_tag_do_caps_nego), (gst_id3_tag_src_link): Make id3tag use correct caps nego. 2003-12-27 Amaury Jacquot * ext/ivorbis/vorbis.c: * ext/ivorbis/vorbisenc.h: * ext/ivorbis/vorbisfile.c: Modify so that it uses the new caps things 2003-12-27 Benjamin Otte * testsuite/spider/spider1.c: (main): * testsuite/spider/spider2.c: (main): * testsuite/spider/spider3.c: (main): Make tests compile again. They probably don't work. 2003-12-24 Colin Walters * sys/oss/gstosssink.c (gst_osssink_sink_fixate): Return NULL if we can't fixate the caps anymore. 2003-12-23 David Schleef * gst/volume/gstvolume.c: (volume_init): Proxy getcaps. * sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_sink_fixate): Add fixate function. 2003-12-24 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_srcconnect_func), (gst_ffmpegcsp_sinkconnect), (gst_ffmpegcsp_srcconnect), (gst_ffmpegcsp_get_type), (gst_ffmpegcsp_base_init), (gst_ffmpegcsp_class_init), (gst_ffmpegcsp_init), (gst_ffmpegcsp_chain), (gst_ffmpegcsp_change_state), (gst_ffmpegcsp_set_property), (gst_ffmpegcsp_get_property), (gst_ffmpegcsp_register): fix typo in RGB masks, and move back to "old" colorspace capsnego code until whoever wrote this new crap has actually tested it so that it works. And yes, this works, keep it that way please. 2003-12-23 Ronald Bultje * ext/divx/gstdivxdec.c: (gst_divxdec_base_init), (gst_divxdec_init), (gst_divxdec_negotiate): * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.c: (gst_divxenc_base_init), (gst_divxenc_init): * ext/faac/gstfaac.c: (gst_faac_base_init), (gst_faac_init), (gst_faac_sinkconnect), (gst_faac_srcconnect): * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_base_init), (dxr3audiosink_init), (dxr3audiosink_pcm_sinklink): * sys/dxr3/dxr3spusink.c: (dxr3spusink_base_init), (dxr3spusink_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_base_init), (dxr3videosink_init): Fix caps breakage after Dave's caps branch merge. 2003-12-23 Ronald Bultje * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get): Fix for 24bpp display. 2003-12-23 Colin Walters * ext/gnomevfs/gstgnomevfssink.c: Add ARG_HANDLE property that takes a GnomeVFSHandle directly. 2003-12-22 Benjamin Otte * gst/volume/Makefile.am: * gst/volume/gstvolume.c: (volume_connect), (volume_parse_caps), (volume_base_init), (volume_init): Reenable volume element and fix to work with new caps stuff. Rhythmbox needs this. 2003-12-22 Benjamin Otte * gst/qtdemux/qtdemux.c: (plugin_init): qtdemux requires bytestream 2003-12-22 Benjamin Otte * ext/alsa/gstalsa.c: (gst_alsa_get_caps), (gst_alsa_link): Fix remaining caps handling errors due to CAPS merge. 2003-12-22 Benjamin Otte * ext/faad/gstfaad.c: (gst_faad_base_init), (gst_faad_init), (gst_faad_sinkconnect), (gst_faad_srcgetcaps), (gst_faad_srcconnect): Port to new caps system. 2003-12-21 Julien MOUTTE * examples/gstplay/player.c: (got_time_tick), (got_stream_length), (got_video_size), (main): using g_print instead of g_message. * gst-libs/gst/play/gstplay.c: (gst_play_pipeline_setup): Fixing EOS signal which was not emitted because of "switch" element added to the bin but not connected. (Removing from the bin temporarily) 2003-12-21 Julien MOUTTE * configure.ac: X_DISPLAY_MISSING is set to 1 if AC_PATH_XTRA fails to find X development files. I don't understand the previous tests and they fail on my debian/ppc unstable. This one works. * examples/gstplay/player.c: (main): Set the pipeline to READY before exiting. * gst-libs/gst/play/gstplay.c: (gst_play_get_length_callback), (gst_play_set_video_sink), (gst_play_set_audio_sink), (gst_play_set_visualization): Add some safety checks in set_ methods and state_change. This was throwing some ugly CRITICAL messages when pipeline was getting disposed and casts were failing. 2003-12-21 Ronald Bultje * configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Also does object check for might there ever be ABI incompatibility. * ext/mpeg2enc/gstmpeg2enc.cc: Add Andrew as second maintainer (he's helping me), and also add an error if no caps was set. This happens if I pull before capsnego and that's something I should solve sometime else. * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup): Fix time parsing. * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_link), (gst_matroska_mux_track_header): Add caps to templates. * gst/mpegaudioparse/gstmpegaudioparse.c: (mp3_sink_factory): Add mpegversion=1 to prevent confusion with MPEG/AAC. * gst/mpegstream/gstmpegdemux.c: Remove layer since it causes warnings about unfixed caps. * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get): Fix obvious typo (we error out if caps were set, we should of course error out if *no* caps were set). * sys/oss/gstosselement.c: (gst_osselement_convert): Fix format conversion, we confused bits/bytes. * sys/oss/gstosselement.h: Improve documentation for 'bps'. * sys/v4l/TODO: Remove stuff about plugins that need removing - this was done ages ago. * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init), (gst_v4lmjpegsrc_src_convert), (gst_v4lmjpegsrc_src_query): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_src_convert), (gst_v4lsrc_src_query): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init), (gst_v4l2src_src_convert), (gst_v4l2src_src_query): Add get_query_types(), get_formats() and query() functions. 2003-12-21 Thomas Vander Stichele * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gst-plugins * moved CVS to freedesktop.org