Commit graph

1126 commits

Author SHA1 Message Date
Wim Taymans
ec48b24291 dec: scale the estimated duration by number of frames
When estimating the frame duration, the diff between two incomming timestamps
should be scaled by the amount of frames in the interval. Improves duration
estimation and DTS interpolation.
2010-12-12 12:38:55 +01:00
Wim Taymans
957c728b3d dec: use input timestamp diff for duration estimation
Use the diff between input timestamps to estimate the duration when no duration
is set on input buffers. Only do this when there are no reordered input
timestamps. Improves interpolation in DTS mode when no input duration is set.
2010-12-12 11:20:22 +01:00
Jan Schmidt
da5245865b Automatic update of common submodule
From 7bbd708 to 011bcc8
2010-10-27 13:17:43 +01:00
Mark Nauwelaerts
e837ec505d ffmpegenc: ensure proper clean state prior to (re-)negotiation
Fixes #632691.
2010-10-25 12:16:44 +02:00
Wim Taymans
d82633c4e3 ffdec: don't destroy the parser state
When we flush the parser cache, we only need to clear the bytes of the cache,
not the complete state of the cache. In the case of H264 this doesn't require
the parser to receive a new SPS/PPS after a DISCONT buffer.
2010-10-22 13:05:16 +02:00
Wim Taymans
cc2a6e493b ffdec: be more careful with DTS timestamp interpolation
Don't use -1 and 0 duration buffers to calculate next output timestamp as they
are very likely wrong.

Fixes #632877
2010-10-22 13:05:16 +02:00
Stefan Kost
07ce1d1906 various: add missing G_PARAM_STATIC_STRINGS flags 2010-10-19 17:26:08 +03:00
Sebastian Dröge
51fe1a04e6 ffmpeg: Add mapping for YUVA420P <-> A420
This is used by VP6a, which is used by Flash.

See bug #613901.
2010-10-15 11:23:26 +02:00
David Schleef
6a0e167c29 Automatic update of common submodule
From 5a668bf to 7bbd708
2010-10-14 12:32:28 -07:00
Edward Hervey
51a0e1270f ffmpegdec: Fix debug statements 2010-10-12 16:17:51 +02:00
David Schleef
c0a656726e Automatic update of common submodule
From c4a8adc to 5a668bf
2010-10-08 12:45:01 -07:00
Sebastian Dröge
cade95ff9b Automatic update of common submodule
From 5e3c9bf to c4a8adc
2010-10-08 12:56:28 +02:00
Wim Taymans
3f213c1b73 ffdec: use a better algorithm to detect DTS timestamps
Add function to reset the timestamp tracking.
Check for reordered timestamps on the input buffers and assume PTS input
timestamps when we see reordered timestamps.
Recover from an occasionally wrong input timestamp by also tracking the output
timestamps. When we detect a reordered output timestamp, assume DTS input
timestamps again.

Fixes #611500
2010-10-07 17:46:22 +02:00
Wim Taymans
a0bc6f6e9d ffdec: add debug line 2010-10-06 18:51:24 +02:00
Wim Taymans
48e612afda ffdec: add fixmes 2010-10-06 18:23:57 +02:00
Wim Taymans
b41aab3690 ffdec: add some comments 2010-10-06 18:15:03 +02:00
Wim Taymans
76d9685202 ffdec: Add timestamp tracking
Use ffmpeg reordered_opaque to track an id that combines all timing info we have
for a frame. The ids are kept in a 255 item cache.

Fixes #631075
2010-10-06 17:42:30 +02:00
Wim Taymans
edb79396f2 ffdec: remove broken TSHandler
Remove the TShandler code, it is broken when QoS is enabled and ffmpeg provides
much easier methods for tracking timestamps.
Simplify pcache joining.
2010-10-06 17:42:30 +02:00
Wim Taymans
4aa9b97d3f ffcodecmap: avoid setting large framerates
When the framerate is bigger than 1000/1, set it to 0/1 instead. This avoids
letting the videosink do QoS on these very small frame durations.
2010-10-06 16:58:52 +02:00
Wim Taymans
c330cdcc5d ffdec: rename time variable
Rename the time variable to avoid confusion with the time function.
Add some debug to the QoS update function.
2010-10-06 16:58:40 +02:00
Wim Taymans
7d531c06bb ffenc: pass the input size to the encoder
Pass the input buffer size to the encoder instead of the expected output size.
This is needed to make fixed input/output encoder work.
2010-10-06 16:58:34 +02:00
Edward Hervey
a0e36128c2 Automatic update of common submodule
From aa0d1d0 to 5e3c9bf
2010-09-21 18:34:43 +02:00
Tim-Philipp Müller
94d8666468 Automatic update of common submodule
From c2e10bf to aa0d1d0
2010-09-07 11:43:15 +01:00
David Schleef
2a0a0acf01 Automatic update of common submodule
From d3d9acf to c2e10bf
2010-09-05 18:58:59 -07:00
Sebastian Dröge
d4a999ca93 configure: Require orc >= 0.4.6 for --compat 2010-09-05 12:28:18 +02:00
Sebastian Dröge
a437c2c651 Automatic update of common submodule
From ec60217 to d3d9acf
2010-09-05 12:20:44 +02:00
Sebastian Dröge
37357063bf ffmpegdemux: Don't use GST_FLOW_IS_FATAL() and GST_FLOW_IS_SUCCESS() 2010-08-27 18:29:15 +02:00
Stefan Kost
d515696ae9 Automatic update of common submodule
From 3e8db1d to ec60217
2010-08-13 17:24:53 +03:00
Tim-Philipp Müller
aeb51020ea Automatic update of common submodule
From bd2054b to 3e8db1d
2010-08-10 10:59:24 +01:00
Stefan Kost
66602768bc Automatic update of common submodule
From a519571 to bd2054b
2010-08-05 13:57:39 +03:00
Sebastian Dröge
d3627ad44c configure: Use AC_PROG_CC_STDC instead of the automake variant 2010-08-04 19:41:06 +02:00
Sebastian Dröge
7ee6a15112 configure: Fix FIXME comment 2010-08-04 19:32:51 +02:00
Tim-Philipp Müller
e0984904c3 ffdeinterlace: some minor clean-ups
Don't use studlyCaps; gboolean != GstFlowReturn; use gst_caps_set_simple()
instead of creating a GValue just to set a boolean field on a caps structure.

See #622736.
2010-07-18 20:15:32 +01:00
Edward Hervey
1fade81e14 Back to development. 2010-07-16 12:45:18 +02:00
Edward Hervey
65cc6881a4 releasing 0.10.11, "Feeding trolls is strictly forbidden" 2010-07-15 21:28:30 +02:00
Edward Hervey
40466f939a configure.ac: 0.10.10.5 pre-release 2010-07-07 12:41:24 +02:00
Edward Hervey
f9c8fac537 ffmpegmux: Use "Formatter/Metadata" klass when needed
https://bugzilla.gnome.org/show_bug.cgi?id=623671
2010-07-06 14:02:09 +02:00
Edward Hervey
25db74ec41 ffmpegmux: Add more replacements
https://bugzilla.gnome.org/show_bug.cgi?id=623671
2010-07-06 14:02:09 +02:00
Edward Hervey
6191dbb7dd codecmap: Fix the caps of various mov/amr formats
https://bugzilla.gnome.org/show_bug.cgi?id=623671
2010-07-06 14:02:09 +02:00
Edward Hervey
38c2b3788e gstffmpegmux: Set rank of blacklisted muxers to GST_RANK_NONE
https://bugzilla.gnome.org/show_bug.cgi?id=623671
2010-07-06 14:02:09 +02:00
Edward Hervey
00e177458c ext: Fix CFLAGS order
We'd pick up system-wide ffmpeg headers otherwise
2010-07-05 15:48:41 +02:00
Mark Nauwelaerts
1d0b29414a ffmpegenc: fix timestamp resyncing some more
Convert bytes to samples in remaining occurrence.

See #623388.
2010-07-05 11:10:09 +02:00
Thiago Santos
b8f556a566 ffmpegenc: Fix timestamp resyncing
Properly convert bytes into time using sample size, sample rate
and channels number, instead of sample rate only.

This can cause huge timestamp discontinuities (even though the
durations remain correct) and might cause problems to muxers.

Fixes #623388
2010-07-03 11:57:09 -03:00
Edward Hervey
2f6086e495 ffmpegmux: Add rtp to the blacklisted muxers 2010-07-02 17:21:27 +02:00
Edward Hervey
edeb185374 codecmap: Specify the quicktime variant for mov and mp4 formats 2010-07-02 12:40:03 +02:00
Edward Hervey
a2ed45acc0 configure.ac: 0.10.10.4 pre-release 2010-06-30 10:32:25 +02:00
Tim-Philipp Müller
e90a2a7161 Bump automake requirement to 1.10, autoconf to 2.60 and libtool to 1.5
For maintainability reasons. These are the versions we require in
other modules.
2010-06-28 17:13:50 +01:00
Edward Hervey
1675f78222 0.10.10.3 pre-release 2010-06-27 12:52:39 +02:00
Edward Hervey
411138d734 gst-libs: Simplify make dist by a metric truckload
Just use svn export instead of trying to be smart about which files
we need.

This makes the resulting gst-ffmpeg tarball a bit bigger, but at least
we know we have everything needed to build gst-ffmpeg
2010-06-27 12:49:02 +02:00
Edward Hervey
65c5d814c2 0.10.10.2 pre-release 2010-06-27 10:51:48 +02:00