2006-04-13 Wim Taymans * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_base_init), (gst_ffmpegdemux_class_init), (gst_ffmpegdemux_init), (gst_ffmpegdemux_close), (gst_ffmpegdemux_push_event), (gst_ffmpegdemux_set_flags), (gst_ffmpegdemux_is_eos), (gst_ffmpegdemux_do_seek), (gst_ffmpegdemux_perform_seek), (gst_ffmpegdemux_src_event), (gst_ffmpegdemux_send_event), (gst_ffmpegdemux_src_query), (gst_ffmpegdemux_src_convert), (gst_ffmpegdemux_get_stream), (my_safe_copy), (gst_ffmpegdemux_read_tags), (gst_ffmpegdemux_open), (gst_ffmpegdemux_loop), (gst_ffmpegdemux_sink_activate), (gst_ffmpegdemux_sink_activate_pull), (gst_ffmpegdemux_change_state), (gst_ffmpegdemux_register): Rework the demuxer, implement all seeking stuff including seek in ready. * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_peek), (gst_ffmpegdata_close): Handle some more cases. 2006-04-11 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_sink_event): Actually convert to time instead of pretending.. Also the bitrate of the context is mostly wrong so don't bother calculating a stop position. Closing (#331323) 2006-04-10 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): When we see a keyframe don't wait for another one. 2006-04-08 Stefan Kost * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_class_init): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_class_init): * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_class_init): Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) 2006-04-08 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_do_qos): Too bad we can't use gst_private.h.. 2006-04-08 Wim Taymans * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_avpicture_fill): Some other formats, still commented out, though. 2006-04-08 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_class_init), (gst_ffmpegdec_init), (gst_ffmpegdec_finalize), (gst_ffmpegdec_query), (gst_ffmpegdec_update_qos), (gst_ffmpegdec_reset_qos), (gst_ffmpegdec_read_qos), (gst_ffmpegdec_src_event), (gst_ffmpegdec_open), (gst_ffmpegdec_setcaps), (gst_ffmpegdec_get_buffer), (gst_ffmpegdec_release_buffer), (gst_ffmpegdec_add_pixel_aspect_ratio), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_do_qos), (gst_ffmpegdec_frame), (gst_ffmpegdec_flush_pcache), (gst_ffmpegdec_sink_event), (gst_ffmpegdec_chain): Cleanups. Fix refcounting here and there. use DEBUG_OBJECT, refactor some functions. Use GstSegment. Implement simple QOS by using the ffmpeg hurry_up field. 2006-04-06 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): Register id3 demuxer, avi demuxer and ogg demuxer with a rank of GST_RANK_NONE so that they don't get autoplugged accidentally. We want people to install the demuxers that are known to work well rather than mostly untested stuff like ffdemux_*. 2006-04-01 Thomas Vander Stichele * ext/ffmpeg/gstffmpeg.c: * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_add_pixel_aspect_ratio), (gst_ffmpegdec_frame): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_seek): * ext/ffmpeg/gstffmpegscale.c: (gst_ffmpegscale_transform_caps), (gst_ffmpegscale_handle_src_event): various compiler fixes * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_src_event), (my_safe_copy), (gst_ffmpegdemux_open), (gst_ffmpegdemux_change_state): actually return the result. Tee hee. 2006-03-31 Thomas Vander Stichele * configure.ac: back to HEAD === release 0.10.1 === 2006-03-31 Thomas Vander Stichele * configure.ac: releasing 0.10.1, "Late Train" 2006-03-22 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close), (gst_ffmpegdec_setcaps), (gst_ffmpegdec_change_state): make _open and _close as functions that should be called with the object lock instead of them taking a lock themselves. This fixes a deadlock when _open fails. 2006-03-14 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Don't use gst_pad_alloc_buffer() for frames with palette, as we'll artificially shorten the size of buffers in that case and GstBaseTransform will complain about unit size issues if we use _alloc_buffer() with the full size. 2006-03-01 Michal Benes Reviewed by : Edward Hervey * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpeg.c: (plugin_init): * ext/ffmpeg/gstffmpegscale.c: (gst_ffmpegscale_base_init), (gst_ffmpegscale_class_init), (gst_ffmpegscale_init), (gst_ffmpegscale_finalize), (gst_ffmpegscale_transform_caps), (gst_ffmpegscale_fixate_caps), (gst_ffmpegscale_get_unit_size), (gst_ffmpegscale_set_caps), (gst_ffmpegscale_transform), (gst_ffmpegscale_handle_src_event), (gst_ffmpegscale_register): Port of ffvideoscale to 0.10. Closes #332557 2006-03-01 Josef Zlomek Reviewed by : Edward Hervey * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_chain_audio): Fix segmentation fault and memleak. Fixes #332995 and #333001 2006-02-24 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): ... can't adjust buffer size of NULL buffers though (as happens when seeking in video from #327075). 2006-02-24 Michael Smith * autogen.sh: * gst-libs/ext/ffmpeg/autogen.sh: Allow automake 1.9 2006-02-24 Tim-Philipp Müller * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_get_palette), (gst_ffmpeg_set_palette): Use AVPALETTE_SIZE macro instead of magic value for clarity. Based on patch by: Fabrizio Gennari * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): In GStreamer, the size of the palette is not part of GST_BUFFER_SIZE, so adjust buffer size of outgoing buffers accordingly if there's a palette (fixes #327028) 2006-02-21 Edward Hervey * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_formatid_to_caps): Added proper formatid to caps conversion for ogg, gif, yuv4mpeg and quicktime formats. 2006-02-21 Jan Schmidt * configure.ac: Apply patch from Sebastien Cote to handle --with-pkg-config-path before looking for GStreamer patches. (Re-closes #319248) 2006-02-19 Jan Schmidt * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid): Add extra detail to the Real format caps. With this info, filesrc ! ffdemux_rm ! ffdec_cook ! ... works, but using rmdemux doesn't. The order of the data the demuxers output appears to be different. 2006-02-19 Jan Schmidt * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_formatid_to_caps), (gst_ffmpeg_get_codecid_longname): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): Add new codec ids and fix up some of the codec->mime type mappings 2006-02-19 Jan Schmidt * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname): Add codec mapping for RealAudio G2 (Cook) codec. 2006-02-19 Jan Schmidt * HACKING: Mention ffmpeg snapshot update * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname): Add new codec types from FFMpeg snapshot update to 2006-02-17 4:00 GMT 2006-02-17 Wim Taymans * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_sink_activate): Post nice error message when we cannot activate in pull mode. 2006-02-14 Edward Hervey * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_open): If the duration returned by ffmpeg is 0, it doesn't mean the file has no duration, but that it doesn't know the end. Fixed accordingly for segment_stop. 2006-02-13 Edward Hervey * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_release_buffer), (gst_ffmpegdec_frame): More fixes for keyframe detection in ffmpeg decoders... 2006-02-12 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_pixfmt): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_getcaps): respect pixel-aspect-ratio when encoding. 2006-02-12 Edward Hervey * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_init), (gst_ffmpegdemux_close), (gst_ffmpegdemux_handle_seek), (gst_ffmpegdemux_add), (my_safe_copy), (gst_ffmpegdemux_read_tags), (gst_ffmpegdemux_open), (gst_ffmpegdemux_loop): Add Tag support and keyframe seeking (for those formats where ffmpeg actually fills in the index). * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_peek), (gst_ffmpegdata_read), (gst_ffmpegdata_seek): Add support for size querying. 2006-02-11 Thomas Vander Stichele * ext/ffmpeg/gstffmpeg.c: set correct version on the plug-in - the GStreamer FFMpeg version. I could swear I had already done this before. 2006-02-11 Thomas Vander Stichele * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_class_init), (gst_ffmpegenc_init), (gst_ffmpegenc_setcaps): debug and magic number fixes 2006-02-10 Edward Hervey * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpeg.c: (plugin_init): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_base_init), (gst_ffmpegdemux_init), (gst_ffmpegdemux_stream_from_pad), (gst_ffmpegdemux_handle_seek), (gst_ffmpegdemux_src_event), (gst_ffmpegdemux_src_query_list), (gst_ffmpegdemux_src_query), (gst_ffmpegdemux_add), (gst_ffmpegdemux_open), (gst_ffmpegdemux_loop), (gst_ffmpegdemux_sink_activate), (gst_ffmpegdemux_sink_activate_pull), (gst_ffmpegdemux_change_state), (gst_ffmpegdemux_register): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open), (gst_ffmpegdata_peek), (gst_ffmpegdata_read), (gst_ffmpegdata_write), (gst_ffmpegdata_seek), (gst_ffmpegdata_close): Welcome the demuxers to 0.10 :) For the time being the demuxers work only pull-based. Seeking, querying works. 2006-02-10 Edward Hervey * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): added CODEC_ID_FLV1 <==> 'video/x-flash-video,flvversion=1' conversion. 2006-02-06 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_smpfmt_to_caps): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_setcaps), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_frame), (gst_ffmpegdec_chain): debug recurring events at LOG level do some timestamp setting heuristics on the pcache, with the net result of having more buffers have approximately correct timestamps. This allows playback of h263/3gp files taking fps from the demuxer, which before always set GST_CLOCK_TIME_NONE as timestamp. 2006-02-04 Tim-Philipp Müller * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_get_palette): Buffers aren't boxed types any longer. 2006-02-03 Edgard Lima * ext/ffmpeg/gstffmpegenc.c: Just make it compile with --disable-gst-debug. 2006-02-02 Andy Wingo * ext/ffmpeg/gstffmpegdec.c (gst_ffmpegdec_register): Reorder case statements to make control flow more clear. 2006-02-02 Christian Schaller * Set rank NONE for mp3 and mpeg2video: They don't work properly and having them autoplugged gives people a bad impression and leads them to not grab mad or fluendo mp3. Fixes #162833 2006-01-31 Thomas Vander Stichele * configure.ac: fix build of deinterlace 2006-01-31 Thomas Vander Stichele * docs/plugins/Makefile.am: * docs/plugins/gst-ffmpeg-plugins-docs.sgml: first stab at documenting ffmpeg elements. Needs work. 2006-01-31 Thomas Vander Stichele * configure.ac: * docs/Makefile.am: * docs/plugins/.cvsignore: * docs/plugins/gst-ffmpeg-plugins-docs.sgml: * docs/plugins/gst-ffmpeg-plugins.args: * docs/plugins/gst-ffmpeg-plugins.hierarchy: * docs/plugins/gst-ffmpeg-plugins.interfaces: * docs/plugins/gst-ffmpeg-plugins.prerequisites: * docs/plugins/gst-ffmpeg-plugins.types: * docs/plugins/inspect.stamp: * docs/plugins/inspect/plugin-ffmpeg.xml: * docs/version.entities.in: First step at adding docs 2006-01-26 Tim-Philipp Müller * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid): Pad codec data buffer to a size that is a multiple of 16, which ffmpeg apparently needs for optimized/unchecked access to the data. Fixes crashes with HD h264 video. 2006-01-23 Edward Hervey * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Added CODEC_ID_SMC <==> video/x-smc caps * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): I hate ffmpeg... no keyframe information at all for VP3, so we have to assume they're all keyframes :( 2006-01-20 Martin Zlomek from Itonis (michael.benes@xeris.cz) reviewed by: Edward Hervey * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpeg.c: (plugin_init): * ext/ffmpeg/gstffmpegdeinterlace.c: (gst_ffmpegdeinterlace_base_init), (gst_ffmpegdeinterlace_class_init), (gst_ffmpegdeinterlace_sink_setcaps), (gst_ffmpegdeinterlace_init), (gst_ffmpegdeinterlace_chain), (gst_ffmpegdeinterlace_register): ffdeinterlace port to 0.10. Could be made a subclass of GstBaseTransform later on... 2006-01-20 Michal Benes Reviewed by : Edward Hervey * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_chain_audio): Caps weren't set on outgoing audio buffers. Closes #327861 2006-01-17 Edward Hervey * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Memleak fix. Closes #326704 2006-01-17 Edward Hervey * configure.ac: Add --with-pkg-config-path argument. Closes #319248 2006-01-12 Andy Wingo * libavcodec/utils.c: Fix for CVE-2005-4048 (bugzilla bug #324209), buffer overflow with small PNG images with palettes. Patch by: Loïc Minier * libavutil/Makefile.am (INCLUDES): Add ALTIVEC_CFLAGS here, fixes compilation on ppc (#320238). 2006-01-11 Edward Hervey * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Add exception for Indeo3 keyframe detection until upstream ffmpeg behaves properly. 2005-12-19 Edward Hervey * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Update ffmpeg_codec_id <=> mimetype conversions * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Finer grained keyframe detection 2005-12-16 Tim-Philipp Müller Patch by: Sebastien Cote Patch by: Luca Ognibene * ext/ffmpeg/gstffmpeg.c: (gst_ffmpeg_avcodec_open), (gst_ffmpeg_avcodec_close): * ext/ffmpeg/gstffmpeg.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close), (gst_ffmpegdec_open): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_dispose), (gst_ffmpegenc_getcaps), (gst_ffmpegenc_setcaps), (gst_ffmpegenc_change_state): Do proper locking around avcodec_open() and avcodec_close() (fixes #322254) 2005-12-10 Tim-Philipp Müller * gst-libs/ext/Makefile.am: We need to use $(MAKE) here instead of 'make' (on some systems it's gmake that needs to be called, for example) 2005-12-07 Edward Hervey * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): So, stupid ffmpeg.... Not all [en|de]coders set AVFrame->type. This should handle the case where AVFrame->reference is set to 1 (which is the equivalent of a keyframe). Also fixes #323286. I tried a truckload of other files with this modification and it didn't seem to break playback. 2005-12-06 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdeinterlace.c: (gst_ffmpegdeinterlace_pad_link), (gst_ffmpegdeinterlace_init), (gst_ffmpegdeinterlace_chain): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_class_init), (gst_ffmpegenc_chain_audio): * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_loop): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_write): * ext/ffmpeg/gstffmpegscale.c: (gst_ffmpegscale_pad_link), (gst_ffmpegscale_init), (gst_ffmpegscale_chain), (gst_ffmpegscale_change_state): * ext/libpostproc/gstpostproc.c: (change_context), (change_mode), (gst_postproc_base_init), (gst_postproc_class_init), (gst_postproc_init), (gst_postproc_link), (gst_postproc_chain), (gst_postproc_change_state), (gst_postproc_set_property), (gst_postproc_get_property), (gst_postproc_register): expand tabs === release 0.10.0 === 2005-12-05 * configure.ac: releasing 0.10.0, "Rocamadour" 2005-12-05 Andy Wingo * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_get_buffer), (gst_ffmpegdec_frame): * ext/ffmpeg/gstffmpegdeinterlace.c: (gst_ffmpegdeinterlace_chain): * ext/ffmpeg/gstffmpegscale.c: (gst_ffmpegscale_chain): Update for alloc_buffer changes. === release 0.9.7 === 2005-12-01 * configure.ac: releasing 0.9.7, "Mein Hund Hat Keine Nase" 2005-11-28 Julien MOUTTE * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_class_init), (gst_ffmpegenc_init), (gst_ffmpegenc_getcaps), (gst_ffmpegenc_setcaps), (gst_ffmpegenc_set_property), (gst_ffmpegenc_get_property): Add rtp-payload-size property. 2005-11-28 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close), (gst_ffmpegdec_setcaps), (gst_ffmpegdec_add_pixel_aspect_ratio), (gst_ffmpegdec_negotiate): Improve pixel aspect ratio handling when both the demuxer and the decoder provide a pixel aspect ratio: if one of the two ratios is 1:1, use the other one; if both are non-1:1, use the one provided by the decoder (fixes matroska starwars test files); also add some locking here and there. 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, "Cold Cat" 2005-11-23 Jan Schmidt * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Updated API 2005-11-23 Jan Schmidt * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_pixfmt): Whoops - handle input video caps that don't have a framerate 2005-11-23 Jan Schmidt * HACKING: * ext/ffmpeg/gstffmpegcolorspace.c: Remove mentions of ffmpegcolorspace now that it's in gst-plugins-base * ext/ffmpeg/Makefile.am: Link to gstreamer libraries * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_pixfmt): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_close), (gst_ffmpegdec_setcaps), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_frame): Convert to fractional framerate 2005-11-22 Andy Wingo * ext/ffmpeg/gstffmpegdec.c (gst_ffmpegdec_sink_event): Run update-funcnames. 2005-11-21 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_sink_event): Remove GST_STREAM_LOCK here, it is not needed any longer. 2005-11-16 Luca Ognibene * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_get_buffer): My previous commit was not completly correct.. I've disabled our _get_buffer function until we make it work 100%. I've opened a bug (#321662) for this issue. 2005-11-16 Luca Ognibene * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_release_buffer), (gst_ffmpegdec_frame): Fix some segfaults while seeking. When i have unreffed the buffer in _release_buffer i should also set picture->opaque to NULL otherwise sometimes it can be unreffed another time in _frame causing an invalid read/write. 2005-11-14 Andy Wingo * configure.ac (GST_PLUGIN_LDFLAGS): -no-undefined for better debugging, allows dll builds on windows. Fixes #316076. 2005-11-14 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame), (gst_ffmpegdec_sink_event): Don't crash in debug message by dereferencing the NULL buffer gst_ffmpegdec_frame() gets passed on EOS. Take STREAM_LOCK for EOS, TAG, NEWSEGMENT and FLUSH_STOP events. 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, "Sound Of Silence" 2005-11-11 Edward Hervey * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_get_buffer), (gst_ffmpegdec_release_buffer), (gst_ffmpegdec_frame), (gst_ffmpegdec_sink_event): Properly unref a buffer if we drop it. Esthetic fixes. 2005-11-08 Ronald S. Bultje * TODO: Add some TODO items for 0.9 cycle. 2005-10-26 Tim-Philipp Müller * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_close), (gst_ffmpegdec_open), (gst_ffmpegdec_setcaps), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_frame), (gst_ffmpegdec_sink_event), (gst_ffmpegdec_chain): Backported some fixes from 0.8. Most importantly, use demuxer's timestamping information if we use its framerate value. Makes divx play properly again among other things (#319616, #313970, #317596). Did not backport memory leak fix. 2005-10-24 Thomas Vander Stichele * configure.ac: back to HEAD === release 0.9.4 === 2005-10-24 Thomas Vander Stichele * configure.ac: releasing 0.9.4, "Triceratops" 2005-10-23 Julien MOUTTE * ext/ffmpeg/Makefile.am: Fix build. * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_register): Add QDM2 and TrueMotion 2. 2005-10-11 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_sink_event): newsegment API update. 2005-10-05 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): we have better ways of debugging caps * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_setcaps): ye gods. get_template_caps doesn't return a ref, so when the pad was not linked, crashes would ensue. Serves me right. 2005-10-03 Thomas Vander Stichele * configure.ac: back to development === release 0.9.3 === 2005-10-03 Thomas Vander Stichele * NEWS: * README: * configure.ac: Releasing 0.9.3, "D'Artagnan" 2005-09-30 Thomas Vander Stichele * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_setcaps): if no peer, use the src pad template caps as allowed caps 2005-09-22 Wim Taymans * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_setcaps): Do not limit quantizer values so we can get really low bitrates. 2005-09-22 Thomas Vander Stichele patch by: Wim Taymans * gst-libs/ext/ffmpeg/libavcodec/h263.c: (h263_encode_picture_header), (mpeg4_encode_vol_header): * gst-libs/ext/ffmpeg/patches/h263.patch: * gst-libs/ext/ffmpeg/patches/series: fix frame rate encoding for h263 2005-09-20 Wim Taymans * ext/ffmpeg/gstffmpegcodecmap.h: Avoid division by 0 errors. 2005-09-19 Wim Taymans * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_setcaps), (gst_ffmpegdec_frame): Don't blindly assume there is a codec. 2005-09-19 Wim Taymans * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_pixfmt): Better framerate setting. 2005-09-16 Thomas Vander Stichele * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_sink_event): fix up newsegment 2005-09-13 Thomas Vander Stichele * ext/ffmpeg/gstffmpeg.c: (gst_ffmpeg_log_callback), (plugin_init): * ext/ffmpeg/gstffmpeg.h: * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_getcaps): shut up the logging while it's probing for formats 2005-09-05 Andy Wingo * Update for state change type and macro changes. 2005-08-19 Wim Taymans * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_setcaps), (gst_ffmpegenc_chain_video), (gst_ffmpegenc_change_state): Fix return values from the setcaps function. 2005-08-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame), (gst_ffmpegdec_sink_event), (gst_ffmpegdec_chain): Handle return values of gst_pad_push(). 2005-08-15 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Forwardport from 0.8 to implement QT-RLE. 2005-08-15 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_sink_event): Flush buffers in flush-stop, not flush-start, since the task is not stopped yet in flush-stop, which may lead to odd crashes in random places inside libavcodec. 2005-08-09 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: Fix template to not allow fps=0. 2005-08-05 Ronald S. Bultje * configure.ac: * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpeg.c: (plugin_init): * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_class_init), (gst_ffmpegdec_init), (gst_ffmpegdec_query), (gst_ffmpegdec_event), (gst_ffmpegdec_open), (gst_ffmpegdec_setcaps), (gst_ffmpegdec_get_buffer), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_frame), (gst_ffmpegdec_sink_event), (gst_ffmpegdec_chain), (gst_ffmpegdec_change_state), (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_class_init), (gst_ffmpegenc_init), (gst_ffmpegenc_getcaps), (gst_ffmpegenc_setcaps), (gst_ffmpegenc_chain_video), (gst_ffmpegenc_chain_audio): * ext/libpostproc/Makefile.am: Backport BRANCH-THREADED to HEAD, fix a bit. === release 0.8.6 === 2005-08-05 Ronald S. Bultje * NEWS: * RELEASE: * configure.ac: Release gst-ffmpeg 0.8.6 "Vamoz a la Playa". 2005-07-28 daniel fischer Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.h: Actually initialize value (#311802). 2005-07-27 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect), (gst_ffmpegdec_frame), (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_link), (gst_ffmpegenc_chain_video): * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_loop): Use special functions for timestamp-conversion again, since we otherwise don't handle clocktimenone correctly (#311593). 2005-07-24 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_codecid): Add x264 to muxer (it was added to template, but I forgot to add h264 caps recognition for some reason). 2005-07-22 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: Make type explicit. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_release_buffer), (gst_ffmpegdec_frame), (gst_ffmpegdec_chain), (gst_ffmpegdec_change_state): When we provide a buffer and get a valid return value (data was read), but no output (have-data==0), then we need to reuse this same output buffer, because it may be used for caching output data. Fixes #307353. * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): Timestamp fix. 2005-07-20 Ronald S. Bultje * ext/ffmpeg/gstffmpeg.h: * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpeg_formatid_get_codecids), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname), (gst_ffmpeg_img_convert): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_negotiate), (gst_ffmpegdec_frame), (gst_ffmpegdec_chain), (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegdeinterlace.c: (gst_ffmpegdeinterlace_getcaps), (gst_ffmpegdeinterlace_pad_link): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_src_event), (gst_ffmpegdemux_src_format_list), (gst_ffmpegdemux_src_query), (gst_ffmpegdemux_src_convert), (gst_ffmpegdemux_add), (gst_ffmpegdemux_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_getcaps), (gst_ffmpegenc_link), (gst_ffmpegenc_chain_video), (gst_ffmpegenc_chain_audio): * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_request_new_pad), (gst_ffmpegmux_connect), (gst_ffmpegmux_loop), (gst_ffmpegmux_register): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_write): * ext/ffmpeg/gstffmpegscale.c: (gst_ffmpegscale_pad_link): * ext/libpostproc/gstpostproc.c: (gst_postproc_chain): Update to ffmpeg snapshot of Jul 20 2005 4:00 PM GMT. Mostly some added codecs, some API changes, etc. Also adds a VOB muxer for MPEG-2 video and adds h264 to .mp4 muxing. 2005-07-16 daniel fischer Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open): Strip off private flags from context value (#310054). 2005-07-11 Luca Ognibene * ext/ffmpeg/gstffmpegdec.c (struct _GstFFMpegDec) (gst_ffmpegdec_open, gst_ffmpegdec_negotiate): Cache the pixel format value and renegotiate the pipeline if this value changes. Fixes segfault when decoding a stream with different colorspaces like a sequence of jpeg. 2005-07-11 daniel fischer Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpeg.h: * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_loop): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open), (gst_ffmpegdata_write): Add a stream-header flag to set stream-header caps on some streams, such as (in this case) flv (fixes #309051). 2005-06-27 Luca Ognibene * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): timestamp is a GstClockTime, not a double.. fix #309149 and maybe others bug 2005-06-27 Daniel Fischer reviewed by: Luca Ognibene * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_chain_video): more DELTA_UNIT / KEY_UNIT fixes 2005-06-27 Daniel Fischer reviewed by: Luca Ognibene * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps), (gst_ffmpeg_formatid_get_codecids), (gst_ffmpeg_caps_to_codecid): add flv encoder * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): set both DELTA_UNIT and KEY_UNIT * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_loop): use DELTA_UNIT and not the deprecated KEY_UNIT 2005-06-25 Luca Ognibene * ext/libpostproc/gstpostproc.c: (gst_ffmpeg_log_callback), (plugin_init): * ext/libpostproc/gstpostproc.h: fix debug output 2005-06-25 Sebastien Cote Reviewed by: Luca Ognibene * ext/ffmpeg/gstffmpegenc.c (gst_ffmpegenc_chain_video): set the GST_BUFFER_DELTA_UNIT while encoding fix #308804 2005-06-20 Edward Hervey * ext/libpostproc/gstpostproc.c: (gst_postproc_register): It works better when filing the hash_table BEFORE registering the element. 2005-06-20 Edward Hervey * ext/Makefile.am: (SUBDIRS): * ext/libpostproc: * ext/libpostproc/Makefile.am: * ext/libpostproc/gstpostproc.c: * ext/libpostproc/gstpostproc.h: ffmpeg's libpostproc wrapper plugins * configure.ac: added --enable-pp to ffmpeg configure arguments 2005-06-11 Ronald S. Bultje * configure.ac: Dev mode. === release 0.8.5 === 2005-06-11 Ronald S. Bultje * NEWS: * RELEASE: * TODO: * configure.ac: Release 0.8.5 "For the better of the world". * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid): Stay backwards compatible a short while longer (SVQ3). 2005-06-09 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Only do timestamp interpolation for delayed streams (containing B-frames). Fixes stuttering playback of ASF files (#306770). 2005-06-09 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid): Remove weird flags from SVQ3 flags and just give full atom, like other files; fixes frame order problems (#306530). 2005-06-08 Luca Ognibene * ext/ffmpeg/gstffmpegdec.c (gst_ffmpegdec_change_state): First close the ffmpeg context than try to free last_buffer. fix #306893 2005-06-03 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_open), (gst_ffmpegdec_handle_event), (gst_ffmpegdec_register): Disable parsing on h264 for now, seems to break avc decoding. 2005-06-03 Ronald S. Bultje * configure.ac: scale requires -libs (video.h). * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_getcaps): Don't crash if open failed. 2005-05-24 Luca Ognibene * ext/ffmpeg/gstffmpegdeinterlace.c (gst_ffmpegdeinterlace_chain): Always stamp your buffers ! (ooops) 2005-05-24 Edward Hervey * ext/ffmpeg/gstffmpegscale.c: (gst_ffmpegscale_chain): Always stamp your buffers ! 2005-05-17 Luca Ognibene * ext/ffmpeg/gstffmpegcodecmap.c (gst_ffmpeg_pixfmt_to_caps): Add YUV444P format as Y444 2005-05-15 Luca Ognibene * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpegdeinterlace.c: * ext/ffmpeg/gstffmpeg.c (plugin_init): Add ffdeinterlace element * TODO: yo, another thing removed from the TODO 2005-05-14 Luca Ognibene * ext/ffmpeg/gstffmpegscale.c (gst_ffmpegscale_change_state): Don't segfault if using passthrough 2005-05-13 Luca Ognibene * ext/ffmpeg/gstffmpeg.c (plugin_init): * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpegscale.c: Add ffvideoscale element (#303727) * TODO: update TODO * ext/ffmpeg/gstffmpegcodecmap.c (gst_ffmpeg_pixfmt_to_caps): Add support for GRAY8 colorspace 2005-05-11 Luca Ognibene * ext/ffmpeg/gstffmpegenc.c (gst_ffmpegenc_chain_video): * ext/ffmpeg/gstffmpegdec.c (gst_ffmpegdec_chain): Makes ffmpegdec and ffmpegenc use these functions and remove a comment from a previuos patch * ext/ffmpeg/gstffmpegcodecmap.h: Add two utility functions to convert the pts from/to the ffmpeg format 2005-05-06 Luca Ognibene Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_open), (gst_ffmpegdec_connect), (gst_ffmpegdec_get_buffer), (gst_ffmpegdec_release_buffer), (gst_ffmpegdec_frame), (gst_ffmpegdec_change_state): Re-re-enable get_/release_buffer functions, removes a few more percent of our CPU usage (#301783). 2005-05-02 Luca Ognibene Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps): Add JPEG-formatted YUV enums. 2005-05-01 Ronald S. Bultje * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_class_init), (gst_ffmpegmux_finalize), (gst_ffmpegmux_loop), (gst_ffmpegmux_change_state): Fix possible segfaults (#302017). 2005-04-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_handle_event): Use CODEC_CAP_DELAY and remove max-10-delayed-frames hack. 2005-04-23 Luca Ognibene Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_getcaps): Don't crash if avcodec_open failed (#301717). 2005-04-21 Ronald S. Bultje * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): Re-disable mov typefinding which breaks mov playback. 2005-04-21 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname): Add ALAC, shorten and some more in new FFMPEG snapshot of 21/4, somewhere this afternoon. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_register): Add warnings to decoder registration to easier add new ones during snapshot updates. 2005-04-21 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_get_codecids): Enable MPEG muxer. 2005-04-18 Luca Ognibene Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Next try at using pad_alloc_buffer (#300923). 2005-04-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Revert previous, we cannot call pad_alloc_buffer() before being negotiated. 2005-04-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Use gst_pad_alloc_buffer(). 2005-04-14 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_handle_event): Safety bet to not completely crush the system on EOS. Fixes the bad behaviour of #300200 (doesn't fix the actual issue). 2005-04-02 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_open), (gst_ffmpegdec_handle_event): Fix breakage of testsuite by adding keyframe syncing; changed to sync only for some streamtypes (MPEG-2/-4, for now). * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_add): Add tags. 2005-04-01 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_open), (gst_ffmpegdec_frame), (gst_ffmpegdec_handle_event): Implement keyframe syncing. 2005-03-14 Ronald S. Bultje * ext/ffmpeg/gstffmpeg.c: (plugin_init): Enable muxers (only mp4 muxer for now). * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_get_codecids), (gst_ffmpeg_caps_to_codecid): * ext/ffmpeg/gstffmpegcodecmap.h: Fix a bunch of typos in codec-id lookup (false/true return value mixup), add a codec-id list retrieval function (because ffmpeg does not provide one). With that, we can make valid pad templates. * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_init), (gst_ffmpegmux_connect), (gst_ffmpegmux_loop), (gst_ffmpegmux_change_state), (gst_ffmpegmux_get_id_caps), (gst_ffmpegmux_register): Fix for whatever changed since I last tried this. Works for MP4 muxing. * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open), (gst_ffmpegdata_peek), (gst_ffmpegdata_write), (gst_ffmpegdata_seek), (gst_ffmpegdata_close): Update obviously-untested write code... 2005-03-13 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_chain_video): Fix crash on randomly sized input (#169082). 2005-03-11 Ronald S. Bultje * configure.ac: Dev. === release 0.8.4 === 2005-03-11 Ronald S. Bultje * NEWS: * RELEASE: * configure.ac: Release 0.8.4 "Mellow on my fingers". 2005-03-06 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Add MPEG-4 audio for debugging. 2005-02-05 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_link): Only free context if it was created (otherwise it crashes). 2005-02-04 Jan Schmidt * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame), (gst_ffmpegdec_chain), (gst_ffmpegdec_register): Reduce the rank of the mpeg2 decoder back below mpeg2dec Use the parser to reorder pts times. Fixes mpeg playback without changing any other files I tested. Use the repeat_pict flag to correctly set durations 2005-02-02 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid): Change caps of MJPEGB to not interfere with MJPEG/JPEG. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): Remove rank for SP5X, no clue what that is... 2005-02-01 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Don´t SIGFPE right away. 2005-01-31 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_lowres_get_type), (gst_ffmpegdec_skipframe_get_type), (gst_ffmpegdec_class_init), (gst_ffmpegdec_init), (gst_ffmpegdec_connect), (gst_ffmpegdec_frame), (gst_ffmpegdec_set_property), (gst_ffmpegdec_get_property): Implement B-frame skipping and low-resolution decoding (useful for very slow CPUs). 2005-01-28 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_register): Oops, unbreak audio. 2005-01-28 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid): Add AMR mimetypes (since those are recognized in ffmpeg). * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame), (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_register): Register law codecs too, add time debug. Use ANY for template caps since we don't necessarily have available decoders for recognized formats. 2005-01-27 Ronald S. Bultje * ext/ffmpeg/gstffmpeg.c: (plugin_init): Fix compile with debug disabled (#165250). 2005-01-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_peek): Yet Another Logic Error. 2005-01-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_negotiate): . 2005-01-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt): Add extradata to huffyuv, sync RGBA32 up with gst-plugins. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_query), (gst_ffmpegdec_event): Make somewhat clearer. 2005-01-19 Ronald S. Bultje * TODO: Update since some tasks are done. * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_type_find): Add correct mimetype for FLI video, restore correct typefind priority. 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect), (gst_ffmpegdec_frame), (gst_ffmpegdec_handle_event), (gst_ffmpegdec_chain): More debug, re-fix MPEG-2 (yes, I broke it already!). 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_handle_event), (gst_ffmpegdec_chain): Another fix for MPEG-4 movies... 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_open), (gst_ffmpegdec_connect), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_frame), (gst_ffmpegdec_handle_event): Add some more debug, fix for B-frame containing XviD movies. 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_handle_event): Only flush when the codec is opened. 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): Re-add H263I as intel-h263 (which is not h263-compliant...). Increase rank of mpeg2video since it plays more videos than its gst-plugins counterpart, with no regressions. 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame): Don't unref NULL data... 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_open), (gst_ffmpegdec_frame), (gst_ffmpegdec_handle_event), (gst_ffmpegdec_chain): Add B-frame timestamp smoothing. 2005-01-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_frame), (gst_ffmpegdec_chain): Separate buffer handling from actual decoding, handle pending frames (for B-frames and so on) so we catch the last frames before EOS, prepare for some timestamp changes to make playback of movies with B-frames smoother (not done yet). 2005-01-18 Ronald S. Bultje (gst_ffmpegdec_negotiate), (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_init), (gst_ffmpegdemux_close), (gst_ffmpegdemux_src_query), (gst_ffmpegdemux_loop): Add simple query functions. Seeking is only cosmetic, it's not actually filled in yet (in ffmpegdec). 2005-01-17 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_init), (gst_ffmpegenc_link), (gst_ffmpegenc_chain_video): Remove EMU_EDGE, since that really fixes #162905. Revert previous hacks. 2005-01-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_chain_video): Unref after encode (#162905). 2005-01-16 Luca Ognibene Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_link), (gst_ffmpegenc_chain_video): Workaround memory issues (#162905). 2005-01-10 Ronald S. Bultje * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_type_find): Decrease certainty a bit so we use flxdec for .flx videos. 2005-01-09 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_dispose): Call parent. 2005-01-09 Luca Ognibene Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Disable parsing for MJPEG input since that's already cut at frame-boundaries. Fixes #163340. 2005-01-06 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid): Set property incompatible with DV demuxer so that it won't infinitely plug demuxers to each other. Fixes playback of .dv streams in Totem. 2004-12-27 Ronald S. Bultje * configure.ac: Dev. === release 0.8.3 === 2004-12-27 Ronald S. Bultje * NEWS: * RELEASE: * configure.ac: Release 0.8.3 "Tiny Piece of Plastic". 2004-12-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): Don't cripple rank as a hack to not register typefind functions. Instead, just use a boolean for that. This makes ID3-tagged MP3 files play even if mad is not installed. 2004-12-20 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): Remove rank from ffdec_h263i until I know how it's different from ffdec_h263. Fixes #155163. 2004-12-18 David Schleef * autogen.sh: execute ffmpeg's autogen.sh directly * gst-libs/ext/ffmpeg/autogen.sh: Add a #! line. Specify bash, since there are bashisms ('local'). 2004-12-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open), (gst_ffmpegdata_peek), (gst_ffmpegdata_read), (gst_ffmpegdata_write), (gst_ffmpegdata_seek), (gst_ffmpegdata_close): Add debug. Don't EOS unless all data was read. 2004-12-19 Ronald S. Bultje * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_peek), (gst_ffmpegdata_read), (gst_ffmpegdata_seek): Some "seeking" hacks, and separate peek from read (read = peek + flush) so seek can use peek as well to workaround typefind. With this, I'm able to play several of the gaming format movies in Totem. 2004-12-18 Ronald S. Bultje * ext/ffmpeg/Makefile.am: * ext/ffmpeg/gstffmpeg.h: Add header. 2004-12-18 Ronald S. Bultje * ext/ffmpeg/gstffmpeg.c: * ext/ffmpeg/gstffmpegcodecmap.c: * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegcolorspace.c: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegdemux.c: * ext/ffmpeg/gstffmpegenc.c: * ext/ffmpeg/gstffmpegmux.c: * ext/ffmpeg/gstffmpegprotocol.c: Add debugging category everywhere (correctly this time). Don't parse mp3 data (the parser is a piece of crap). Fixes #155274 mostly. Seeking pending. 2004-12-18 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps): Add ID3 mime. Should partially fix #155274 (although raw mp3 sounds awful, it doesn't parse correctly in the decoder-only case). 2004-12-17 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_get_codecid_longname): Fix typo. 2004-12-17 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Small parsing fix in comb. with ffdemux_mpeg. 2004-12-17 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_close), (gst_ffmpegdec_open), (gst_ffmpegdec_chain): Include optional parser if supported (currently only MPEG-1/-2 video). This fixes playback of MPEG-1/-2 videos using ffdec_mpeg2video. 2004-12-17 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init), (gst_ffmpegenc_init), (gst_ffmpegenc_getcaps), (gst_ffmpegenc_link): Move setup of sink caps (accepted formats) to a separate function rather than doing it on initialization. 2004-12-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname), (gst_ffmpeg_avpicture_fill): Add new codecIDs from new snapshot (Thu Dec 16 11:27:18 2004). * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_src_event), (gst_ffmpegdemux_type_find), (gst_ffmpegdemux_loop): * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_loop): API updates. * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_read), (gst_ffmpegdata_seek): A slightly smarter approach, but it still needs lost of work to be reliable in any way... 2004-12-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_init), (gst_ffmpegdec_close), (gst_ffmpegdec_connect), (gst_ffmpegdec_negotiate), (gst_ffmpegdec_chain): Move negotiation outside the _chain function, and use the codec PAR if available and prefer it over demuxer PAR (since this is usually the right thing to do). Fixes #159755. 2004-12-16 Sebastien Cote Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link): Fix memleak (#154815). 2004-12-16 Ronald S. Bultje * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link), (gst_ffmpegcsp_init), (gst_ffmpegcsp_chain), (gst_ffmpegcsp_change_state): Some sync with ffmpegcolorspace (flatten AVFrame). 2004-11-05 Wim Taymans * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_avpicture_get_size), (gst_ffmpeg_avpicture_fill), (gst_ffmpeg_img_convert): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Fix strides and plane sizes when dealing with odd sized movies. 2004-10-29 Sebastien Cote Reviewed by: Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Prevent division by zero (#155212). 2004-10-29 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_avpicture_fill): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_get_buffer), (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_chain_video): Sync with gst-plugins ffmpegcolorspace, align-by-4. Ready to re-sync gst-plugins ffmpegcolorspace with ours and deprecate this one. 2004-10-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link): Backport changes from ffmpegcolorspace (gst-plugins) so we can then move the whole of this plugin back and deprecate this (no, I'm not insane). 2004-10-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_codectype_to_caps), (gst_ffmpeg_caps_with_codecid): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init), (gst_ffmpegenc_connect), (gst_ffmpegenc_register): Fix encoders. Fix if encoder supports >1 caps. 2004-10-25 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_get_codecid_longname): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_base_init), (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init), (gst_ffmpegenc_register): Hmm, fancy names... 2004-10-20 Thomas Vander Stichele * configure.ac: up req of GStreamer since we use fractions 2004-10-11 Ronald S. Bultje * gst-ffmpeg.spec.in: Remove unused 'versioning' variable. 2004-10-11 Ronald S. Bultje * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_init), (gst_ffmpegenc_chain_video): Set chain function before adding pad, fix memleak on error, error out on encode errors because none of subsequent frames will work any better (this is not input dependent). 2004-10-09 Ronald S. Bultje * configure.ac: CVS. === release 0.8.2 === 2004-10-09 Ronald S. Bultje * NEWS: * RELEASE: * configure.ac: Release 0.8.2. 2004-10-09 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Unref when not usable. 2004-10-04 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid): Negotiation fixes for real video codecs. 2004-10-02 Ronald S. Bultje * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): Fix timestamps. Quite some of the gaming formats work now. :). 2004-10-02 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid): Generalized palette functions, add actual mimetypes for wing commander formats. * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): Ffmpeg has internal palette functions, so I noticed. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Actually remove all palette code. 2004-10-02 Ronald S. Bultje * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): Signal no_more_pads. * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_read), (gst_ffmpegdata_seek): Handle events. 2004-10-02 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt): * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link), (gst_ffmpegcsp_init), (gst_ffmpegcsp_chain), (gst_ffmpegcsp_change_state), (gst_ffmpegcsp_register): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Move palette handling over from the decoder to the colorspace conversion plugin (where you would expect it). 2004-10-01 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid): Simplify codec_data handling. 2004-09-23 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Update timestamp for every new buffer that we output. Improves audio playback for several files that have multiple audio chunks per buffer. 2004-09-22 Ronald S. Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): msmpeg4v3 should be priority as well, else it will choose divxdec first (which we don't want). 2004-09-20 Ronald S. Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid): WMV extradata (make #152798 work). J-frames are only available in the bitstream if the J-frame bit has been set in the extradata. If not (or if extradata is not provided), the movie won't play. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close), (gst_ffmpegdec_connect), (gst_ffmpegdec_chain): Only close ffmpeg if privdata was allocated (else it segfaults). Autodetect encoding bugs and workaround it. Don't copy data if decoding failed. * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop): Use read_frame() instead of read_packet() which is obsolete. 2004-09-16 Iain * ext/ffmpeg/gstffmpegmux.c (gst_ffmpegmux_register): Free name fix leak. 2004-07-21 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): no point in doing any chaining if the pad we want to push from isn't usable. 2004-07-21 Thomas Vander Stichele * configure.ac: bump nano === gst-ffmpeg 0.8.1 === 2004-07-16 Thomas Vander Stichele * configure.ac: release 0.8.1, "Just Another Victim" 2004-07-08 Thomas Vander Stichele * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_base_init): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init): d'oh, put them back 2004-07-07 Thomas Vander Stichele * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): drop incoming buffers that generate decoding errors 2004-07-07 Thomas Vander Stichele * ext/ffmpeg/gstffmpeg.c: (gst_ffmpeg_log_callback), (plugin_init): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): hook up our debug handler to FFmpeg's. warn about getting negative have_data 2004-07-04 Thomas Vander Stichele * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_base_init): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init): bring category order in line with others 2004-06-13 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_to_codecid): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_read): Do some more random property setting. Fix for if there's less than ffmpeg-default-buffersize (32kB) data in a file _and_ there's an event pending. Partially fixes #142320. 2004-06-06 Ronald Bultje * ext/ffmpeg/gstffmpeg.c: (plugin_init): Remove redundant calls which are called internally already. * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid): Indenting... * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop), (gst_ffmpegdemux_register): Remove typefind functions and rank for demuxers for any demuxer that we already have in GStreamer. 2004-05-18 Benjamin Otte * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid): don't operate on undefined variables (fixes #135145) 2004-05-16 Benjamin Otte * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): Hi, I'm a memleak 2004-05-14 Ronald Bultje * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_src_event), (gst_ffmpegdemux_src_query), (gst_ffmpegdemux_src_convert), (gst_ffmpegdemux_open), (gst_ffmpegdemux_loop): * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open), (gst_ffmpegdata_read), (gst_ffmpegdata_write), (gst_ffmpegdata_seek): Fix up demuxer. Works now for all my files that I tried, even quicktime. I basically hack around the super-oversimplistic file I/O handling in ffmpeg in several ways together, and I also hack around the fairly annoying EOS-will-pause-the-source-element in GStreamer itself. This code is not pretty. 2004-05-11 Jeremy Simon * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid): block_align and bitrate caps property were lost for wma use codec_data instead of flag1 and flag2 2004-05-11 Benjamin Otte * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps): it's audio/x-wav, not video/x-wav 2004-05-10 Stephane Loeuillet * ext/ffmpeg/gstffmpegdec.c * ext/ffmpeg/gstffmpegenc.c change plugins category to meet our new standard : Codec/Encoder|Decoder/Audio|Video suggested by bilboed, approved by Company 2004-05-04 Thomas Vander Stichele * gst-libs/ext/ffmpeg/autogen.sh: * gst-libs/ext/ffmpeg/patches/autotools.patch: require am17 since AM_CONDITIONAL's are being done using variables which doesn't work with am16 2004-04-30 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_getcaps): revert previous patch 2004-04-29 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_getcaps): use GST_PAD_CAPS if they exist so we don't renegotiate needlessly 2004-04-22 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid): WAV/IMA-ADPCM -> DVI ADPCM. 2004-04-22 Benjamin Otte * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_caps_remove_format_info): use gst_caps_do_simplify 2004-04-19 Benjamin Otte * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_type_find): reduce maximum probability in typefinding to POSSIBLE. prevents misidentification of my mp3s as video/mpeg 2004-04-15 Ronald Bultje * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): NULL -> (NULL) inside GST_ELEMENT_ERROR(). 2004-04-15 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_get_palette), (gst_ffmpeg_set_palette), (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_smpfmt), (gst_ffmpeg_caps_to_pixfmt), (gst_ffmpeg_caps_with_codectype), (gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid): * ext/ffmpeg/gstffmpegcodecmap.h: Change some function names to reflect that they don't really _return_ something, but rather _use_ something to fill a AVCodecContext. s/to/with/. Restructure the extradata handling, it's now not picking up the type from the caps but rather using the type as provided in the function. This is a lot cleaner. Implement MS RLE palette pickup. * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect): Sync with the above function name changes. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close), (gst_ffmpegdec_open), (gst_ffmpegdec_connect), (gst_ffmpegdec_chain), (gst_ffmpegdec_change_state): Add some hacks to convert palette-based raw image formats to RGBA32. Ugly, but I don't know how else to handle palette-based RGB, since img_convert() (and thus ffcolorspace) doesn't accept a palette as argument. 2004-04-14 Thomas Vander Stichele * everything: updated upstream source to 2004-04-11 23:00 GMT and fixed up patches 2004-04-11 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Add MS Video v1 (video/x-msvideocodec, CODEC_ID_MSVIDEO1). 2004-04-08 David Schleef * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Change variadic macro to ISO form. (bug #139460) 2004-04-06 Benjamin Otte * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): fix memleaks 2004-04-05 Benjamin Otte * configure.ac: fix --export-symblos-regex to a working regex. 2004-04-03 Tim-Philipp Müller reviewed by: David Schleef * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): Fix memleaks (bug #138985) 2004-03-29 Thomas Vander Stichele * ext/ffmpeg/*.c: indent 2004-03-25 Ronald Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_base_init): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init): Fix category. * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_class_init), (gst_ffmpegdemux_init), (gst_ffmpegdemux_close): Slightly rewrite the init function, old one was ugly. Also remove dispose function since it's obsolete, the change_state function cleans up already. Also fixes segfault in test-app gstreamer/tests/instantiate/create 2004-03-24 Benjamin Otte * configure.ac: only export gst* symbols * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain): change g_warning to debugging message, that wasn't a programming error 2004-03-18 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): don't critical, throw error (#137588) 2004-03-16 Thomas Vander Stichele * configure.ac: bump nano to 1 === gst-ffmpeg 0.8.0 === 2004-03-16 Thomas Vander Stichele * configure.ac: release 0.8.0, "In Buildings" 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/.pc/cvsignore/doc/.cvsignore: * gst-libs/ext/ffmpeg/.pc/cvsignore/libavcodec/i386/.cvsignore: * gst-libs/ext/ffmpeg/configure: * gst-libs/ext/ffmpeg/libavformat/matroska.c: (ebml_read_float): * gst-libs/ext/ffmpeg/patches/matroska.patch: patch from Ronald to work on ppc 2004-03-15 Thomas Vander Stichele * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_type): fix name of static to be in line with code 2004-03-15 Thomas Vander Stichele * configure.ac: don't set ACLOCAL_FLAGS ! * gst-libs/ext/ffmpeg/.cvsignore: * gst-libs/ext/ffmpeg/patches/cvsignore.patch: trying to add configure to be ignored 2004-03-15 Thomas Vander Stichele reviewed by: * gst-libs/ext/ffmpeg/.cvsignore: * gst-libs/ext/ffmpeg/patches/cvsignore.patch: 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/m4/vorbis.m4: * gst-libs/ext/ffmpeg/patches/autotools.patch: adding vorbis.m4 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/m4/ogg.m4: * gst-libs/ext/ffmpeg/patches/autotools.patch: * gst-libs/ext/ffmpeg/patches/no-imlib.patch: adding ogg.m4 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/patches/autotools.patch: * gst-libs/ext/ffmpeg/.pc/no-imlib/configure.ac: * gst-libs/ext/ffmpeg/autogen.sh: fix aclocal invocation to include m4 dir * gst-libs/ext/ffmpeg/configure.ac: add line to fix maintainer mode with aclocal 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/m4/imlib.m4: * gst-libs/ext/ffmpeg/m4/sdl.m4: * gst-libs/ext/ffmpeg/m4/freetype2.m4: * gst-libs/ext/ffmpeg/patches/autotools.patch: fix underquotedness, add freetype2.m4 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/patches/autotools.patch: put in sdl.m4 and imlib.m4 2004-03-15 Thomas Vander Stichele * gst-libs/ext/ffmpeg/.pc/autotools/.pc: * gst-libs/ext/ffmpeg/.pc/no-imlib/configure.ac: * gst-libs/ext/ffmpeg/.pc/noinst-programs/Makefile.am: * gst-libs/ext/ffmpeg/autogen.sh: * gst-libs/ext/ffmpeg/configure: * gst-libs/ext/ffmpeg/configure.ac: * gst-libs/ext/ffmpeg/doc/.cvsignore: * gst-libs/ext/ffmpeg/libavcodec/i386/.cvsignore: * gst-libs/ext/ffmpeg/patches/autotools.patch: * gst-libs/ext/ffmpeg/patches/no-imlib.patch: fixing Makefile.am omission in autotools patch fix noinst-programs.patch 2004-03-14 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): * ext/ffmpeg/gstffmpegcodecmap.h: * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain), (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_add), (gst_ffmpegdemux_register): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect), (gst_ffmpegenc_register): * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_register): Add encode property to codec mapper, so we can get better-fitting caps. Also use this everywhere. ;). Lastly, add some new codecIDs to our list of recognized ones. 2004-03-12 Thomas Vander Stichele * gst-libs/ext/ffmpeg/.pc/applied-patches: * gst-libs/ext/ffmpeg/.pc/noinst-programs/.pc: * gst-libs/ext/ffmpeg/.pc/noinst-programs/Makefile.am: * gst-libs/ext/ffmpeg/Makefile.am: * gst-libs/ext/ffmpeg/patches/series: add patch to not install programs 2004-03-12 Thomas Vander Stichele * gst-libs/ext/ffmpeg/.pc/no-imlib/configure.ac: * gst-libs/ext/ffmpeg/.pc/autotools/.pc: * gst-libs/ext/ffmpeg/autogen.sh: * gst-libs/ext/ffmpeg/configure.ac: added m4 dir to autotools patch to fix imlib and sdl warnings 2004-03-12 Thomas Vander Stichele * gst-libs/ext/ffmpeg/.pc/no-imlib/configure.ac: * gst-libs/ext/ffmpeg/configure.ac: * gst-libs/ext/ffmpeg/patches/series: add patch to remove imlib completely 2004-03-11 Thomas Vander Stichele * configure.ac: use new setup with mirrored cvs tree 2004-03-10 David Schleef * gst-libs/ext/ffmpeg/patch/asm.diff: Add a patch that decreases register usage. (bug #136658) 2004-03-10 David Schleef * configure.ac: bump gstreamer API number to 0.8 2004-03-09 Ronald Bultje * ext/ffmpeg/Makefile.am: Prevent more symbol conflicts... * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): Up priority/rank for MPEG-4 decoder. Reason is simple: it's well- tested and by far outperforms xviddec/divxdec. They'll get some other, slightly lower, rank. * gst-libs/ext/ffmpeg/patch/autotools.diff: Tweaking... * gst-libs/ext/ffmpeg/patch/disableinstalllibs.diff: Prevent more symbol conflicts. I changed this (to pass 'make distcheck') in the one patch, so need to change it here too. * gst-libs/ext/ffmpeg/patch/disablemmx.diff: Re-enable MMX. :). * gst-libs/ext/ffmpeg/patch/functions.diff: Bla. 2004-03-09 Ronald Bultje * configure.ac: Patch properly. Update version. * gst-libs/ext/ffmpeg/Makefile.am: Comment out patching - all handled by configure. * gst-libs/ext/ffmpeg/Tag: Update version. * gst-libs/ext/ffmpeg/patch/autotools.diff: Some small updates to improve compiling. * gst-libs/ext/ffmpeg/patch/functions.diff: Update date. * gst-libs/ext/ffmpeg/patch/matroska.diff: Newer patch - see ffmpeg-devel mailinglists. * gst-libs/ext/ffmpeg/patch/function.patch: Remove old cruft. * gst-libs/ext/ffmpeg/patch/disabletools.diff: Now handled by --disable-... in configure. 2004-03-07 David Schleef * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps): Add cinepak format. (bug #136470) 2004-03-05 David Schleef * configure.ac: Call ffmpeg's configure with --disable-v4l, --disable-oss-audio, --disable-dv1394 (bug #127873) 2004-03-04 Ronald Bultje * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps): Fix quicktime type recognition in ffmpeg. We returned a bogus caps, which caused ffdemux_quicktime to be chosen over qtdemux. This fixes that. 2004-03-04 Ronald Bultje * configure.ac: Brackets cause autoconf errors. So remove them. * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_add): Actually use the event/convert/query functions. D'oh. 2004-03-02 Ronald Bultje * configure.ac: * gst-libs/ext/ffmpeg/Makefile.am: Slightly change the way we set this up. Ugly, but now it works again. This baby is looking for a proper fix. * gst-libs/ext/ffmpeg/Tag: Apparently CVS and me disagree on the tag... Ohwell, CVS wins. * gst-libs/ext/ffmpeg/patch/autotools.diff: * gst-libs/ext/ffmpeg/patch/disableinstalllibs.diff: Slight nag on a link between lavf/lavc in ffmpeg. Not really important for us since the code is the same in the end, but this is actually correct from a per-patch point-of-view... 2004-03-02 Ronald Bultje * gst-libs/ext/ffmpeg/Makefile.am: Fix patching. 2004-03-01 Ronald Bultje * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect): Fix B-frame DivX5/XviD display by removing the truncated flag when not needed. * gst-libs/ext/ffmpeg/patch/autotools.diff: Remove link to libavcodec - it causes symbol conflicts (why?). 2004-02-29 Ronald Bultje * HACKING: Add some basic documentation on how our wrapping works. * TODO: Add a list of things that could be worked on or that need doing. * configure.ac: Update snapshot. * ext/ffmpeg/Makefile.am: Changne .la links. See below (autotools patch). * ext/ffmpeg/gstffmpeg.c: (plugin_init): Enable demuxers. See below (gstffmpegdemux.c). * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps): Realmedia caused a crash - fix that. * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_averror), (gst_ffmpegdemux_base_init), (gst_ffmpegdemux_init), (gst_ffmpegdemux_close), (gst_ffmpegdemux_dispose), (gst_ffmpegdemux_stream_from_pad), (gst_ffmpegdemux_src_event_mask), (gst_ffmpegdemux_src_event), (gst_ffmpegdemux_src_format_list), (gst_ffmpegdemux_src_query_list), (gst_ffmpegdemux_src_query), (gst_ffmpegdemux_src_convert), (gst_ffmpegdemux_add), (gst_ffmpegdemux_open), (gst_ffmpegdemux_loop), (gst_ffmpegdemux_change_state), (gst_ffmpegdemux_register): Right. OK, so I fixed up the demuxing and have it basically-working, and the best way to get some more people to test it is to actually enable it. I'm not sure if we want this for 0.8.0, but we can at least give it a try. I've tested avi, matroska and mpeg, all appear to work. The cool thing is that this gives us instant support for several exotic formats that we'd never care about ourselves. Again, this needs more testing for it to still be enabled in 0.8.0, but I want to give it a try... * ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_base_init), (gst_ffmpegmux_init), (gst_ffmpegmux_request_new_pad), (gst_ffmpegmux_connect), (gst_ffmpegmux_loop), (gst_ffmpegmux_register): Add some fixups that I use locally. Make it work in the case of MPEG encoding, but the muxer is still not in shape to be enabled. * ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open), (gst_ffmpegdata_read), (gst_ffmpegdata_write), (gst_ffmpegdata_seek), (gst_ffmpegdata_close): Some small fixups that crept into it while it was disabled for the last few years. Basically works. * gst-libs/ext/ffmpeg/Makefile.am: Instead of having our local-autotoolized version, I patch the ffmpeg source to be fully autotoolized. That means a simple SUBDIRS here is now enough. * gst-libs/ext/ffmpeg/Tag: Version update. * gst-libs/ext/ffmpeg/patch/autotools.diff: Autotoolize ffmpeg. Needs to be sent to ffmpeg-devel@... * gst-libs/ext/ffmpeg/patch/disableinstalllibs.diff: Don't install their libs. * gst-libs/ext/ffmpeg/patch/disablemmx.diff: Don't use MMX. It cannot ocmpile using PIC. * gst-libs/ext/ffmpeg/patch/disabletools.diff: Don't compile/install their tools, we don't use them. * gst-libs/ext/ffmpeg/patch/functions.diff: Prevent symbol conflicts. * gst-libs/ext/ffmpeg/patch/matroska.diff: Add a matroska demuxer. Needs to be sent to ffmpeg-devel@... 2004-02-26 Thomas Vander Stichele * configure.ac: releasing 0.7.1 "True Colors" 2004-02-14 Thomas Vander Stichele * gst-ffmpeg.spec.in: fix spec file 2004-02-14 Christian Schaller * gst-ffmpeg.spec.in: add spec file 2004-02-13 Thomas Vander Stichele * creation