Commit graph

151 commits

Author SHA1 Message Date
Mathieu Duponchelle
0243810e1e x264enc: Don't unref future state but the old one
Being silly will lead us nowhere.
2013-09-05 22:56:48 +02:00
Sebastian Dröge
55037ab411 x264enc: Check if we have an input state before using it
Flushing might happen before caps were set on the encoder,
which would lead to crashes here.

Thanks to Matej Knopp for analyzing this.

https://bugzilla.gnome.org/show_bug.cgi?id=707414
2013-09-04 16:33:18 +02:00
Matej Knopp
ae45623450 x264enc: fix unsigned comparison warning 2013-09-04 10:47:55 +02:00
Tim-Philipp Müller
6572393629 x264enc: log when we output a lower profile than requested 2013-08-27 14:13:06 +01:00
Sebastian Dröge
aab5534573 x264enc: Consider subset relations of profiles when setting srcpad caps
constrained-baseline is a subset of baseline, is a subset of main,
is a subset of high profile.

https://bugzilla.gnome.org/show_bug.cgi?id=705425
2013-08-21 18:35:09 +02:00
Tim-Philipp Müller
e0ae81ebac x264enc: propagate flow return back to base class and upstream
https://bugzilla.gnome.org/show_bug.cgi?id=705425
2013-08-21 12:35:32 +01:00
Tim-Philipp Müller
71ce5136d1 x264enc: minor clean-up
We requires x264 build >= 120 now.
2013-08-17 23:09:15 +01:00
Sebastian Dröge
f541f94262 ext: Use new flush vfunc of video codec base classes and remove reset implementations 2013-08-15 15:27:48 +02:00
Edward Hervey
767005d8c0 x264: Fix dts comparision
We were assigning to a guint64 value (frame->dts) the sum of a unsigned
and signed value... resulting it the result never being < 0.

Instead just check if it is smaller before assigning to frame->dts.
2013-07-26 16:47:30 +02:00
Sebastian Dröge
a4a89275f8 x264enc: React properly to flushing/resetting the encoder
https://bugzilla.gnome.org/show_bug.cgi?id=656007
2013-07-25 12:48:55 +02:00
Tim-Philipp Müller
62ac56668a x264enc: output byte-stream if downstream has ANY caps
It's what people expect when they pipe the output to
filesink or into a tcp connection or pipe.
2013-04-30 10:04:23 +01:00
Sebastian Dröge
ef182de45f gst: Add better support for static plugins 2013-04-15 15:56:02 +02:00
Tom Greenwood
2e38f24b56 x264enc: Fix for 0/1 framerate - now uses VFR in this case
Previously did a division by zero.

https://bugzilla.gnome.org/show_bug.cgi?id=695728
2013-03-25 10:08:44 +01:00
Tim-Philipp Müller
5f83e4101f x264enc: simplify template caps
No need to make an array for one single element.
2013-02-08 00:15:01 +00:00
Tim-Philipp Müller
201e3f74be x264enc: put all theoretically possible formats in template caps
and decide at runtime which subset of these (8-bit or 10-bit video
formats) is supported. libx264 will be compiled for one of these
two options, and it is possible to switch by pointing the dynamic
linker to a different libx264 build at runtime. If we want our
template caps to be correct, they should contain all then, with
the actually supported ones determined at runtime.

https://bugzilla.gnome.org/show_bug.cgi?id=691935
2013-02-08 00:11:03 +00:00
Tim-Philipp Müller
e765deb01b x264enc: detect supported bit depth and pixel formats at runtime
http://bugs.debian.org/667573
https://bugzilla.gnome.org/show_bug.cgi?id=691935
2013-02-07 13:37:44 +00:00
Sebastian Dröge
fcd55cfd12 x264enc: Add support for 10-bit color formats
Requires x264 to be built with 10-bit support, which disables
9-bit support. Also only advertise the color formats that were
compiled into x264.
2012-11-15 16:42:09 +01:00
Sebastian Dröge
d098eb0941 x264enc: Add support for Y444, Y42B and NV12 2012-11-15 16:21:49 +01:00
Tim-Philipp Müller
9c690b2018 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 20:40:37 +00:00
Tim-Philipp Müller
4935096912 x264enc: when setting fallback decoder latency, set valid min_latency
Min. latency needs to be a valid time, so pass 0 as default
value in the fallback case where we can't determine any latency,
and avoid nasty criticals at runtime.
2012-09-26 01:05:52 +01:00
Mark Nauwelaerts
b06e81b532 x264enc: clean up some debug statements 2012-09-09 16:04:56 +02:00
Mark Nauwelaerts
839e75d5d1 x264enc: handle possibly negative DTS provided by codec
... by arranging for an offset such that DTS == PTS for keyframes,
which is expected elsewhere to go along with semantics of PTS and DTS.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679443
2012-09-07 17:38:40 +02:00
Sebastian Dröge
9390195cfe x264enc: Use new video encoder base class API for handling tags 2012-08-09 16:30:10 +02:00
Sebastian Dröge
32857a7621 tag: Update for taglist/tag event API changes 2012-07-28 00:35:59 +02:00
Wim Taymans
f711750bba update for query api changes 2012-07-06 11:50:55 +02:00
Wim Taymans
ef07bb9d47 update for allocation query changes 2012-07-06 11:05:17 +02:00
Matej Knopp
711d2b18a7 x264enc: Fix unitialized variable and taglist event 2012-06-21 08:45:22 +01:00
Wim Taymans
e956902511 fix compilation 2012-06-20 10:39:24 +02:00
Sebastian Dröge
d424827283 x264enc: Fix compiler warning 2012-06-19 15:19:28 +01:00
Sebastian Dröge
f664108a6e x264enc: Port to 0.11 again 2012-06-19 09:26:02 +01:00
Nicolas Dufresne
3527ccc07e x264enc: Don't set latency while holding object lock
This reverts commit 30a0b50e9ca0d625e61f994d4f8acd022dcddf38.

https://bugzilla.gnome.org/show_bug.cgi?id=675762
2012-06-18 16:01:20 +01:00
Nicolas Dufresne
017bb86d82 x264enc: Use video encoder stream lock to avoid deadlock 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
43093dffea x264enc: Port to new way of passing frame reference 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
2656e42bb7 x264enc: Set default stream-format to avc as it's a better format 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
c3cc8d416c x264enc: Fix setting latency
Fixes setting latency when framerate is dynamic and round up the latency
to avoid rounding issues.
2012-06-18 16:01:20 +01:00
Nicolas Dufresne
6e920bc4aa x264enc: gst_video_encoder_get_frame() is now transfer full 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
31b5e86ebd x264enc: don't leak output state 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
565b21aefb x264enc: Remove x264 backward compatibility support 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
16ddcae4e3 x264enc: Report latency base on x264 buffer size 2012-06-18 16:01:20 +01:00
Nicolas Dufresne
4fbb1a042e x264enc: Port to GstVideoEncoder baseclass
Conflicts:

	configure.ac
	ext/x264/gstx264enc.c
	ext/x264/gstx264enc.h

Back to 0.10 state, needs to be ported to 0.11 again.
2012-06-18 16:00:53 +01:00
Tim-Philipp Müller
004abdaddf x264: bump x264 requirement to build 106 or later
Build 106 is from September 2010.

https://bugzilla.gnome.org/show_bug.cgi?id=676257
2012-05-17 21:16:08 +01:00
Tim-Philipp Müller
08d20e4da8 Use new gst_element_class_set_static_metadata() 2012-04-10 00:47:44 +01:00
Sebastian Dröge
29a893b494 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:40:12 +02:00
Sebastian Dröge
9e5a55a70f gst: Update versioning 2012-04-04 14:38:53 +02:00
Wim Taymans
6d371c89c1 x264enc: remove deprecated properties 2012-03-21 13:18:11 +01:00
Wim Taymans
7cd283ebc6 update for memory api changes 2012-03-15 13:38:16 +01:00
Wim Taymans
c65625be9e fix for caps api changes 2012-03-11 19:07:19 +01:00
Alessandro Decina
b09945ab27 x264enc: fix compiler warning 2012-02-27 06:33:48 +01:00
Wim Taymans
829301f1e4 x264: convert g_print to LOG 2012-02-22 02:17:55 +01:00
Wim Taymans
ca1c36a8b4 x264enc: handle pts and dts 2012-02-22 02:07:29 +01:00