Commit graph

408 commits

Author SHA1 Message Date
Sebastian Dröge
4a58fd4be4 Merge remote-tracking branch 'origin/0.10'
Conflicts:
	common
	ext/ffmpeg/Makefile.am
	ext/ffmpeg/gstffmpegcfg.c
	ext/ffmpeg/gstffmpegcodecmap.c
	ext/ffmpeg/gstffmpegcodecmap.h
	ext/ffmpeg/gstffmpegdec.c
	ext/ffmpeg/gstffmpegenc.c
	ext/ffmpeg/gstffmpegenc.h
	tests/check/Makefile.am

Porting of the new video elements to 0.11 still pending.
2012-06-14 15:42:06 +02:00
Matej Knopp
a3c7cd4643 gstffmpegdec: only drain on EOS
See https://bugzilla.gnome.org/show_bug.cgi?id=675359
2012-06-11 16:27:35 +02:00
Wim Taymans
c44eff6afb avdec: fix paletted formats
Pass the palette as the side data for AVPacket so that it is written in the
second plane of output AVFrame.
2012-05-31 13:55:44 +02:00
Edward Hervey
bdf7ebf411 ffmpegenc/dec: Remove audio/video specific code
Makes each file more manageable, second step to porting to base classes
2012-04-24 11:36:31 +02:00
Wim Taymans
cd2e53aa9f Merge remote-tracking branch 'origin/0.10' 2012-04-20 16:23:41 +02:00
Wim Taymans
630790f50d ffdec: don't flush buffers on DISCONT
Don't flush the buffers that ffmpeg has on DISCONT but instead let it recover.
This gives a much better image in the case of packet loss.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=635020
2012-04-20 16:16:25 +02:00
Sebastian Dröge
e49c069995 Rename everything from gst-ffmpeg to gst-libav
Also change elements factory names to avenc_*, avdec_*,
avmux_* and avdemux_*. The actual filenames, type names,
function/variable names are not touched to make merging
with 0.10 easier at this point. Once 0.10 is not supported
anymore everything should be renamed.
2012-04-12 19:41:52 +02:00
Tim-Philipp Müller
c1ae78ecea ffmpeg: use set_metadata() for generated strings
Reverts parts of previous commit.
2012-04-10 01:01:00 +01:00
Tim-Philipp Müller
b06b11809b Use new gst_element_class_set_static_metadata() 2012-04-10 00:53:43 +01:00
Wim Taymans
e438f20c93 ffdec: handle DTS/PTS
Now that we can know about PTS and DTS on incomming buffers, track them and set
the correct output timestamps.
We can remove the code to estimate if input buffers have pts or dts.
2012-04-03 11:52:05 +02:00
Wim Taymans
2c881eb752 update for buffer changes 2012-03-28 12:50:19 +02:00
Wim Taymans
b0cc0cf55d Merge branch 'master' into 0.11
Conflicts:
	gst-libs/ext/libav
2012-03-22 15:31:40 +01:00
Wim Taymans
c9538928b6 ffdec: ensure padding is big enough 2012-03-19 11:06:40 +01:00
Wim Taymans
b7b587bce0 ffdec: check if input is already 0-padded
When the input buffer is already 0-padded we don't need to copy. This can happen
because in the ALLOCATION query we suggest this.
Only do temporary padding when we are using a parser.
2012-03-19 10:29:34 +01:00
Wim Taymans
3d2527c0a2 update for bufferpool changes 2012-03-15 22:11:54 +01:00
Wim Taymans
427ad305c5 update for allocation query changes 2012-03-15 20:39:10 +01:00
Wim Taymans
d9e16a498c ffdec: propose some padding in the allocation query
Hopefully upstream can add some padding and then we don't have to memcpy.
2012-03-14 20:04:53 +01:00
Wim Taymans
d606efc141 take padding into account 2012-03-14 19:53:06 +01:00
Wim Taymans
78e0187282 ffdec: remove unused crop property 2012-03-14 17:35:28 +01:00
Wim Taymans
dab06c0e5d ffdec: remove padding property
Users should not mess with this
2012-03-14 17:33:40 +01:00
Wim Taymans
75ba435552 ffdec: make bufferpool setup recalculate direct rendering
We need to recalculate if we can use direct rendering after we have setup the
bufferpool.
2012-03-14 12:58:38 +01:00
Wim Taymans
1ba905c031 ffdec: add some PERFORMANCE logging 2012-03-14 11:53:42 +01:00
Wim Taymans
575cb87091 ffdec: implement accept-caps
Implement a potentially faster accept-caps function
2012-03-12 13:50:46 +01:00
Wim Taymans
ecbbbe7fd2 ffmpegdec: enable alignment if videometa is allowed
Use the videobufferpool when downstream didn't suggest one.
Only enable video alignment in the bufferpool when downstream supports video
metadata.
2012-03-08 13:04:57 +01:00
Edward Hervey
57c7f59268 ffmpegdec: Use auto-threads if available, and only slice-threading
Slice threading causes less latency (and corruption)
2012-03-02 17:27:30 +01:00
Alessandro Decina
d48fc18065 Fix compiler warnings 2012-02-27 06:26:02 +01:00
Wim Taymans
05a44b7ac6 ffdec: disable multithreading
It causes refcounting problems.
2012-02-21 18:02:56 +01:00
Matej Knopp
a079886388 only reopen decoder when new caps are different 2012-02-20 16:23:57 +01:00
Wim Taymans
cf3d3fe00d ffmpeg: port to new memory API 2012-01-25 11:59:04 +01:00
Sebastian Dröge
3393095cd0 Merge branch 'master' into 0.11 2012-01-18 10:21:36 +01:00
Sebastian Dröge
99d4792014 ffdec: Only set get_buffer() function for video
Fixes bug #666435.
2012-01-18 10:11:49 +01:00
Sebastian Dröge
44a1dc0138 ffmpeg: Fix merge mistakes 2012-01-10 11:39:27 +01:00
Sebastian Dröge
bde3117e72 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	ext/ffmpeg/gstffmpegcodecmap.c
	ext/ffmpeg/gstffmpegdec.c
	ext/ffmpeg/gstffmpegdeinterlace.c
	ext/ffmpeg/gstffmpegmux.c
	ext/libswscale/gstffmpegscale.c
2012-01-10 11:35:55 +01:00
Sebastian Dröge
3d43013d4f ffdec: Give the (E)AC3/DTS decoders a rank of marginal
Even if they don't downmix to stereo, they're still working
correctly. The only advantage of dtsdec/a52dec is that they
downmix to stereo (using the special downmixing matrices) if
downstream prefers stereo but in every other case they should
be equivalent.
2012-01-10 11:06:53 +01:00
Sebastian Dröge
ad53e32665 ffdec: Revert accidentially committed rank change of the (E)AC3/DTS decoders 2012-01-10 10:59:57 +01:00
Sebastian Dröge
6931afe0ba ffmpegdec: Reorder audio channels after clipping the audio buffer 2012-01-10 10:45:42 +01:00
Sebastian Dröge
3d6c803917 ffmpegdec: Correctly reorder audio channels to the GStreamer order if necessary 2012-01-10 10:37:50 +01:00
Sebastian Dröge
42bc8f5ad7 ffmpeg: Use stack-allocated channel positions array 2012-01-10 10:01:26 +01:00
Wim Taymans
290d3120fb ffdec: fill in the stride alignment
Copy the stride alignment we got from ffmpeg to the alignment structure.
2011-12-21 18:06:32 +01:00
Wim Taymans
9ea5b22de6 ffmpegdec: update for new interlace fields 2011-12-19 18:14:27 +01:00
Edward Hervey
15ae52392e ffmpegdec: Report latency if B-frames are present
... and cleanup the query handler while we're at it

https://bugzilla.gnome.org/show_bug.cgi?id=663616
2011-12-01 19:29:24 +01:00
Wim Taymans
152e090891 add parent to pad functions 2011-11-17 12:49:33 +01:00
Wim Taymans
63a890a746 add parent to query function 2011-11-16 17:29:22 +01:00
Wim Taymans
f65f9938d0 _query_peer_*() -> _peer_query_*() 2011-11-15 17:55:29 +01:00
Wim Taymans
175a092331 ffmpeg: change getcaps to query 2011-11-15 16:35:17 +01:00
Wim Taymans
cbb41c36ff ffdec: get the pixfmt correctly
Use the pixfmt from the passed context, which can be different from our other
context and which might not have the pixfmt set correctly.
2011-11-04 16:23:32 +01:00
Edward Hervey
5264fd3c97 Merge remote-tracking branch 'origin/master' into 0.11 2011-10-17 16:29:10 +02:00
Edward Hervey
99e61c5f3b gstffmpegdec: Re-enable MT-decoding by default 2011-10-17 16:27:36 +02:00
Wim Taymans
3b230ce9b6 dec: remove interlaced update code 2011-10-03 11:34:34 +02:00
Wim Taymans
d4b2751c39 Merge branch 'master' into 0.11 2011-10-03 11:32:24 +02:00