Tim-Philipp Müller [Tue, 30 Jun 2009 01:15:21 +0000 (02:15 +0100)]
ffmpegmux: don't leak caps if type already exists
We don't know if gst_element_register() will replace the known type
or reject it, so we really need to free the caps before.
Tim-Philipp Müller [Tue, 30 Jun 2009 01:11:14 +0000 (02:11 +0100)]
ffmpegdemux: post tags after the initial newsegment event
Jan Schmidt [Wed, 1 Jul 2009 09:06:26 +0000 (10:06 +0100)]
autogen.sh: Use printf instead of 'echo -n'. Check for automake-1.1[01]
Check for more automake command variants. Use printf instead of 'echo -n'
for portability
Jan Schmidt [Wed, 1 Jul 2009 09:05:05 +0000 (10:05 +0100)]
Back to development - 0.10.8.1
Wim Taymans [Wed, 1 Jul 2009 09:23:59 +0000 (11:23 +0200)]
ffdec: don't wait for keyframe after discont
After a DISCONT, mark the next frame with DISCONT but don't wait for a new
keyframe. This greatly improves performance on lossy networks or currupted
frames as the decoder can usually continue and conceil errors up to the next
keyframe.
Wim Taymans [Wed, 1 Jul 2009 09:21:46 +0000 (11:21 +0200)]
Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-ffmpeg
Jan Schmidt [Mon, 29 Jun 2009 21:42:00 +0000 (22:42 +0100)]
release 0.10.8
Edward Hervey [Mon, 29 Jun 2009 11:53:50 +0000 (13:53 +0200)]
gstffmpegdec: Fix debug arguments. Fixes #587297
Jan Schmidt [Fri, 26 Jun 2009 12:43:34 +0000 (13:43 +0100)]
Automatic update of common submodule
From f810030 to 5845b63
Jan Schmidt [Thu, 25 Jun 2009 14:53:52 +0000 (15:53 +0100)]
0.10.7.3 pre-release
Arnout Vandecappelle [Tue, 9 Jun 2009 14:34:04 +0000 (16:34 +0200)]
ffmpegdec: don't drop buffers when caps change.
Fixes #585257
Jan Schmidt [Wed, 24 Jun 2009 14:24:25 +0000 (15:24 +0100)]
docs: Fix a comment in the plugin docs Makefile
Jan Schmidt [Thu, 18 Jun 2009 00:11:25 +0000 (01:11 +0100)]
ffmpeg: Don't enter infinite loops in the timestamp tracking
Avoid an infinite loop consuming buffer timestamp info when
the video frames contain only GST_CLOCK_TIME_NONE timestamps.
Add some debug logging in the timestamp tracking paths.
Fixes: #585845
Jan Schmidt [Wed, 24 Jun 2009 14:15:53 +0000 (15:15 +0100)]
Automatic update of common submodule
From c572721 to f810030
Stefan Kost [Wed, 17 Jun 2009 06:22:14 +0000 (09:22 +0300)]
debug: fix unused variable when building with debug disabled
Jan Schmidt [Sat, 6 Jun 2009 14:14:45 +0000 (15:14 +0100)]
build: Fix the dist - libswscale isn't an external on the 0.5 branch
The 0.5 ffmpeg branch includes libswscale directly, not as an external,
breaking the dist (and warning in autogen.sh) about not being able to
update its revision.
Add some code to not update the svn external if the
FFMPEG_EXTERNALS_REVISION variable is empty.
Also, in autogen.sh check that the current FFmpeg checkout is from the
right branch according to ffmpegrev, and check it out again if
it's not.
Jan Schmidt [Fri, 5 Jun 2009 21:12:24 +0000 (22:12 +0100)]
0.10.7.2 pre-release
Wim Taymans [Fri, 5 Jun 2009 11:47:15 +0000 (13:47 +0200)]
ffmpegdec: don't do QoS on invalid timestamps
When we convert the timestamp to running_time, don't try to do QoS on invalid
times.
Fixes #580810
Jordi Mas [Fri, 5 Jun 2009 11:19:03 +0000 (13:19 +0200)]
ffmpeg: make elements reusable after registry rescan
If the same instance of the plugin is asked to be initialised more that once,
instances after the first one do not register the elements properly and the
elements become not usable.
For example, if you call gst_update_registry (), is not possible to create
elements after the call since the plugin is asked to be initialised again and
does not register the elements.
Fixes #584291
Wim Taymans [Fri, 5 Jun 2009 11:17:09 +0000 (13:17 +0200)]
check: add registry rescan test
Wim Taymans [Fri, 5 Jun 2009 10:32:25 +0000 (12:32 +0200)]
ffmpeg: properly integrate timestamp handling
The patch from Bug #580796 hacked around existing infrastructure to handle
timestamps as DTS (as in all AVI files) causing the logic to be disabled.
Properly hook the timestamp handling into the existing infrastructure to handle
these cases too, partially reverting
a26b94d92c2e9e9f6dac0cdb5fb44ba06ee089c8
and moving some stuff around.
Refixes #580796.
LRN [Mon, 1 Jun 2009 15:24:53 +0000 (17:24 +0200)]
ffmpeg: change library inclusion order
Fixes #584399
Sebastian Dröge [Fri, 29 May 2009 11:51:31 +0000 (13:51 +0200)]
Switch back to the ffmpeg 0.5 branch to allow us to release in the next weeks
Jan Schmidt [Tue, 26 May 2009 16:20:14 +0000 (17:20 +0100)]
Automatic update of common submodule
From 888e0a2 to c572721
Wim Taymans [Mon, 25 May 2009 10:36:06 +0000 (12:36 +0200)]
enc: use standard multipass-cache-file
Deprecate the old statsfile property and add a the new standard
mulitpass-cache-file property to match other encoders.
Fixes #583627
Jan Schmidt [Fri, 22 May 2009 09:21:02 +0000 (10:21 +0100)]
Automatic update of common submodule
From 6ab11d1 to 888e0a2
Jan Schmidt [Fri, 15 May 2009 14:48:35 +0000 (15:48 +0100)]
ffmpeg: Don't add sink pad template to the muxers when not needed.
If the set of caps for either audio or video is completely empty, skip
adding that pad template to the class. Some muxers only support audio-only
or video-only and otherwise end up with EMPTY caps in the pad template.
Wim Taymans [Wed, 13 May 2009 21:18:50 +0000 (23:18 +0200)]
ffenc: avoid malloc more for audio encoders
Use _adapter_peek() to retrieve data so that we can reuse previously
allocated memory.
Edward Hervey [Wed, 13 May 2009 17:35:32 +0000 (19:35 +0200)]
gstffmpegdec: demote mpeg2 video decoding back to MARGINAL. Fixes #574461
Sebastian Dröge [Wed, 13 May 2009 14:21:36 +0000 (16:21 +0200)]
Add mapping for VQF caps
Sebastian Dröge [Wed, 13 May 2009 14:19:21 +0000 (16:19 +0200)]
Update ffmpeg revision to latest trunk
Edward Hervey [Wed, 13 May 2009 11:47:58 +0000 (13:47 +0200)]
gstffmpegdec: Don't forget to copy over the reordered_opaque in our buffers.
This is to be on-par with the default get_buffer() implementation (which is
detailed in libavcodec/utils.c).
Vanista [Wed, 13 May 2009 10:37:42 +0000 (12:37 +0200)]
gstffmpegdec: Handle out-of-order frames. Fixes #580796
Wim Taymans [Wed, 13 May 2009 09:21:13 +0000 (11:21 +0200)]
ffenc: make the output buffer big enough
The ffmpeg docs say that the output buffer should at least be
FF_MIN_BUFFER_SIZE (which is overly large, but anyways).
Wim Taymans [Tue, 12 May 2009 23:04:30 +0000 (01:04 +0200)]
ffmpeg: rewrite audio encoders.
Rewrite the audio encoders to use the right API functions of ffmpeg. Also get
rid of the handrolled cache and use adapter instead for formats that require
fixed frame_size as input.
Wim Taymans [Tue, 12 May 2009 20:20:49 +0000 (22:20 +0200)]
codecmap: revert bogus commit.
We don't need to set a default frame_size, ffmpeg has set this value to 0 to
inform us that there is a fixed relation between the amount of input samples
and output samples. Now we only need to implement handling that fact.
Edward Hervey [Tue, 12 May 2009 16:13:16 +0000 (18:13 +0200)]
ffmpegcfg: Expose two more CODEC_FLAG.
Edward Hervey [Tue, 12 May 2009 13:30:10 +0000 (15:30 +0200)]
gstffmpegdec: No, really, we don't want the VDPAU decoders.
They've changed the names, keeping the old ones til we switch upstream
revision.
Sebastian Dröge [Tue, 12 May 2009 09:20:08 +0000 (11:20 +0200)]
ffdec: Update rank of ffdec_mpeg2video to SECONDARY to make it the default
ffdec_mpeg2video is much faster, fixes bug #574461.
Edward Hervey [Tue, 12 May 2009 09:16:43 +0000 (11:16 +0200)]
gstffmpegdec: Implement interlaced support.
ffmpeg only tells us on a per-decoded-buffer basis if the stream is
interlaced or not. When we see a change, we force negotiation.
We can't detect that in our get_buffer() (when doing downstream allocation),
because at that point the interlaced flags aren't set on the outgoing
buffer.
Marc-Andre Lureau [Sun, 10 May 2009 09:17:16 +0000 (11:17 +0200)]
Run libtoolize before aclocal
This unbreaks the build in some cases. Fixes bug #582021
Edward Hervey [Sat, 9 May 2009 08:57:55 +0000 (10:57 +0200)]
win32: Fix non-portable printf format.
David Hoyt [Thu, 7 May 2009 10:57:10 +0000 (12:57 +0200)]
Use av_{i,o}format_next instead of the private next field
This fixes compilation with MSVC where the initializer variables
are aliased to different names. Fixes bug #576126.
Christian Schaller [Tue, 5 May 2009 16:32:07 +0000 (17:32 +0100)]
Add videoscaler to spec file
Christian Schaller [Tue, 5 May 2009 16:27:27 +0000 (17:27 +0100)]
removing make flags in spec file to make things flow easy with
GCC 4.4.0
Sebastian Dröge [Mon, 4 May 2009 11:00:49 +0000 (13:00 +0200)]
ffenc: Implement preset interface
Thiago Santos [Thu, 23 Apr 2009 17:35:10 +0000 (14:35 -0300)]
ffenc: Send error upstream when gst_pad_push return is different from GST_FLOW_OK
Jan Schmidt [Tue, 21 Apr 2009 21:13:51 +0000 (22:13 +0100)]
Automatic update of common submodule
From b3941ea to 6ab11d1
Edward Hervey [Tue, 21 Apr 2009 16:38:03 +0000 (18:38 +0200)]
gstffmpegenc: Don't change properties once opened. Fixes #570815
Based on a patch by Tristan Matthews <le businessman at gmail dot com>
Janin Kolenc [Tue, 21 Apr 2009 16:34:22 +0000 (18:34 +0200)]
gstffmpegcfg: Add H263 to the list of mpeg property-compatible codecs.
Edward Hervey [Sun, 8 Mar 2009 10:31:35 +0000 (11:31 +0100)]
Make sure we provide ffmpeg with 128bit-aligned data.
Add a new function new_aligned_buffer() which creates a GstBuffer of
the requested size/caps, with the memory being allocated/freed by ffmpeg's
av_malloc/av_free which guarantees properly aligned memory.
Added a can_allocate_aligned internal property which we use to figure out
whether downstream can provide us with 128bit aligned buffers.
Edward Hervey [Sun, 19 Apr 2009 12:07:58 +0000 (14:07 +0200)]
Reverting Jan's fix-the-buildbot commit
This reverts commit
5465d40b8dcb7650c024bf8c6b6329d26df5a610.
Jan Schmidt [Sun, 19 Apr 2009 01:39:30 +0000 (02:39 +0100)]
build: Deliberately break the build, temporarily.
This is to force the buildbots to run autogen.sh one time. I can't
figure out a more elegant way.
Jan Schmidt [Sun, 19 Apr 2009 01:34:50 +0000 (02:34 +0100)]
build: Fix maintainer-mode and embedded FFmpeg configuration parameters
Don't use AC_CONFIG_SUBDIRS to call the FFmpeg configure script, as it
complains about all the unknown parameters autoconf gives it, and fiddling
with ac_configure_args makes maintainer-mode call our real configure script
with a bunch of bogus arguments.
Instead, use AC_CONFIG_COMMANDS to call the FFmpeg configure script
ourselves.
Remove autogen.sh code that modifies the FFmpeg configure script, as it's
not needed now that we only pass it arguments it understands, and move
the detection of flags like --disable-ffmpeg into the configure script,
otherwise they never get passed to FFmpeg if we call configure ourselves,
such as from a tarball.
Edward Hervey [Sat, 18 Apr 2009 07:08:39 +0000 (09:08 +0200)]
gstffmpegdec: Really fix the arguments this time.
I blame compilers who can't figure out there's the wrong number of arguments
for the given print format :)
Edward Hervey [Sat, 18 Apr 2009 06:50:12 +0000 (08:50 +0200)]
gstffmpegdec: Fix build on macosx.
The arguments were in the wrong order (and therefore the types were wrong).
Wim Taymans [Fri, 17 Apr 2009 17:07:26 +0000 (19:07 +0200)]
ffmpegdec: resize padding buffer when it's small
Only resize the padding buffer when the size is too small, when it's just right,
we don't need to call realloc.
Wim Taymans [Fri, 17 Apr 2009 14:25:12 +0000 (16:25 +0200)]
ffmpeg: add default frame_size for g726
Without a frame_size configured in the context, the ffmpeg encoders do nothing.
Since the G726 does not configure a size itself, we set ourselves a frame_size
that corresponds to 20ms of audio, which is a reasonable default.
Jan Schmidt [Fri, 17 Apr 2009 12:46:39 +0000 (13:46 +0100)]
check: Add a simple test that the FFmpeg plugin loads
Check that the ffmpeg plugin actually exists after building.
Edward Hervey [Thu, 16 Apr 2009 09:00:46 +0000 (11:00 +0200)]
gstffmpegutils: Add the files :)
Edward Hervey [Wed, 15 Apr 2009 20:33:16 +0000 (22:33 +0200)]
Move all non-codecmap-related methods to a new file.
We were starting to get too much unrelated code in there. This makes it
a bit easier to maintain.
Edward Hervey [Wed, 15 Apr 2009 20:14:09 +0000 (22:14 +0200)]
gstffmpeg.c: Fix the description of the plugin.
Edward Hervey [Wed, 15 Apr 2009 20:11:33 +0000 (22:11 +0200)]
gstffmpeg.c: Point to the new ffmpeg website (ffmpeg.org).
Edward Hervey [Wed, 15 Apr 2009 20:11:10 +0000 (22:11 +0200)]
The proper spelling is 'FFmpeg'.
Edward Hervey [Wed, 15 Apr 2009 20:04:02 +0000 (22:04 +0200)]
gstffmpegmux: Use the AVFormat long_name in our descriptions.
This is the same behaviour we use in the demuxers.
Edward Hervey [Wed, 15 Apr 2009 19:56:00 +0000 (21:56 +0200)]
Disable more fake codecs (raw audio).
LRN [Thu, 9 Apr 2009 22:19:50 +0000 (00:19 +0200)]
ffdec: copy input offsets to output buffers
Copy the incomming offsets to the outgoing buffers.
Fixes 578278.
Felipe Contreras [Sat, 4 Apr 2009 18:19:34 +0000 (21:19 +0300)]
Automatic update of common submodule
From d0ea89e to b3941ea
Edward Hervey [Sat, 4 Apr 2009 12:54:55 +0000 (14:54 +0200)]
Automatic update of common submodule
From f8b3d91 to d0ea89e
Branko Čibej [Sat, 4 Apr 2009 06:53:54 +0000 (08:53 +0200)]
ffmpeg: Fix handling of --with-ffmpeg-extra-configure
Fixes bug #577879.
Janin Kolenc [Wed, 25 Mar 2009 11:51:55 +0000 (12:51 +0100)]
ffenc: Add support for I-frame request.
Add request for I-frame request using GstForceKeyUnit event.
Fixes #575709.
Sebastian Dröge [Sun, 15 Mar 2009 09:19:53 +0000 (10:19 +0100)]
ffmux: Actually set caps on the srcpad instead of working with NULL caps
Jan Schmidt [Sun, 22 Mar 2009 20:16:24 +0000 (20:16 +0000)]
back to development -> 0.10.7.1
Jan Schmidt [Sat, 21 Mar 2009 01:02:05 +0000 (01:02 +0000)]
Release 0.10.7
Jan Schmidt [Wed, 18 Mar 2009 00:03:27 +0000 (00:03 +0000)]
0.10.6.4 pre-release
Edward Hervey [Tue, 17 Mar 2009 22:44:43 +0000 (23:44 +0100)]
Take into account ticks_per_frame for framerate calculation. Fixes #575759
Edward Hervey [Tue, 17 Mar 2009 10:51:28 +0000 (11:51 +0100)]
Re-enable amr muxer. It's a muxer after all. Fixes #575664
Jan Schmidt [Fri, 13 Mar 2009 23:52:01 +0000 (23:52 +0000)]
0.10.6.3 pre-release
Edward Hervey [Wed, 11 Mar 2009 12:25:40 +0000 (13:25 +0100)]
gstffmpegdec: Disable vdpau decoders. Fixes #573400
Edward Hervey [Wed, 11 Mar 2009 11:56:29 +0000 (12:56 +0100)]
pixfmt: Stop using PIX_FMT that were marked as deprecated 3 years ago.
It still worked... until the 0.5 ffmpeg release, which made those defines unused.
See the bottom of libavutil/pixfmt.h for more details.
Edward Hervey [Wed, 11 Mar 2009 09:16:46 +0000 (10:16 +0100)]
ffmpegrev: bump up upstream revision to the *exact* release revision.
This is only a one-commit svn-props change.. but we might as well keep
it accurate.
Edward Hervey [Tue, 10 Mar 2009 20:14:21 +0000 (21:14 +0100)]
codecmapping: Fix caps for ATRAC3. Fixes #574663
Edward Hervey [Tue, 10 Mar 2009 20:11:43 +0000 (21:11 +0100)]
Disable exposing decoder/encoder using external library. Fixes #574746
Edward Hervey [Tue, 10 Mar 2009 20:05:52 +0000 (21:05 +0100)]
blacklist bogus demuxer/muxer/typefind. Fixes #567336 and #574814
Jan Schmidt [Tue, 10 Mar 2009 00:22:10 +0000 (00:22 +0000)]
0.10.6.2 pre-release
Jan Schmidt [Mon, 9 Mar 2009 23:13:40 +0000 (23:13 +0000)]
Automatic update of common submodule
From 7032163 to f8b3d91
Edward Hervey [Mon, 9 Mar 2009 17:17:30 +0000 (18:17 +0100)]
gstffmpegdec: Use 64bit scaling function to avoid overflows detected in some situations.
Edward Hervey [Mon, 9 Mar 2009 14:09:10 +0000 (15:09 +0100)]
demux: If the demuxer isn't initialized yet, forward serialized events without waiting.
We do this, because the demuxer is initialized in the loop function. If it's not
initialized yet, that means the loop hasn't been entered... and therefore the
PIPE GCond will never be signalled.
Edward Hervey [Mon, 9 Mar 2009 12:46:06 +0000 (13:46 +0100)]
demuxers: Blacklist push-mode for avformat demuxers which aren't reliable in push-mode.
Currently, only one is blacklisted : ffdemux_ape. This has been confirmed by
ffmpeg developers.
Edward Hervey [Mon, 9 Mar 2009 12:45:22 +0000 (13:45 +0100)]
demuxers: Add more debugging
Edward Hervey [Fri, 6 Mar 2009 18:02:14 +0000 (19:02 +0100)]
ffmpegrev: and update once more for last-minute fixes to upstream release branch
Edward Hervey [Mon, 9 Mar 2009 09:05:04 +0000 (10:05 +0100)]
gstffmpegcodecmap: Add proper caps for Fraps video codec
Sebastian Dröge [Sun, 8 Mar 2009 11:06:11 +0000 (12:06 +0100)]
Automatic update of common submodule
From ffa738d to 7032163
Sebastian Dröge [Sun, 8 Mar 2009 10:21:48 +0000 (11:21 +0100)]
Automatic update of common submodule
From 3f13e4e to ffa738d
Sebastian Dröge [Sat, 7 Mar 2009 10:47:21 +0000 (11:47 +0100)]
Automatic update of common submodule
From 3c7456b to 3f13e4e
Sebastian Dröge [Sat, 7 Mar 2009 09:47:28 +0000 (10:47 +0100)]
Automatic update of common submodule
From 57c83f2 to 3c7456b
Tim-Philipp Müller [Fri, 6 Mar 2009 17:49:24 +0000 (17:49 +0000)]
configure: require a released version of gstreamer, to avoid confusion
Edward Hervey [Fri, 6 Mar 2009 16:37:51 +0000 (17:37 +0100)]
ffmpegdec: Make sure we provide 16 byte aligned data to ffmpeg. Fixes #572863
We simply allocate the memory using ffmpeg's av_malloc which provides us
with properly memalign'ed data.
This avoids write-outside-of-bounds when sse/altivec code is being used.
Edward Hervey [Fri, 6 Mar 2009 11:47:12 +0000 (12:47 +0100)]
ffaudioresample: Add padding to output buffer. Fixes #573649
The internal resampling functions seem to require a slightly bigger buffer
for output than what we require. Therefore we give it an extra 64bytes (although
16 should have been enough).
Tim-Philipp Müller [Fri, 6 Mar 2009 11:01:55 +0000 (11:01 +0000)]
ffmpegdec: post an error message on the bus when decoding fails
We should post a STREAM DECODE error message on the bus when we return
GST_FLOW_ERROR, otherwise the user ends up seeing an ugly internal flow
error message, which isn't very nice.