Nicolas Dufresne
189c291805
vpxdec: Use GstMemory to avoid copies
...
With the VPX decoders it's not simple to use downstream buffer pool,
because we don't know the image size and alignment when buffers get
allocated. We can though use GstAllocator (for downstream, or the system
allocator) to avoid a copy before pushing if downstream supports
GstVideoMeta. This would still cause a copy for sink that requires
specialized memory and does not have a GstAllocator for that, though
it will greatly improve performance for sink like glimagesink and
cluttersink. To avoid allocating for every buffer, we also use a
internal buffer pool.
https://bugzilla.gnome.org/show_bug.cgi?id=745372
2015-12-04 17:29:15 -05:00
Nicolas Dufresne
b848c1b6ff
vpxdec: Use threads on multi-core systems
...
This adds an automatic mode to the threads property of vpxdec in order to
use as many threads as there is CPU on the platform. This brings back
GStreamer VPX decoding performance closer to what is achieved by other
players, including Chromium.
https://bugzilla.gnome.org/show_bug.cgi?id=758195
2015-11-17 12:27:31 -05:00
Thiago Santos
16fbd4f86f
videodecoders: use default pad accept-caps handling
...
Avoids useless check of downstream caps when handling an
accept-caps query
Elements: jpegdec, pngdec, vp8dec, vp9dec
2015-08-15 11:46:32 -03:00
Tim-Philipp Müller
2e412a447a
docs: update example pipelines in element docs
...
Mostly gst-launch -> gst-launch-1.0
Use autovideosink/autoaudiosink more often.
Sprinkle some converters here and there.
2015-05-10 11:05:00 +01:00
Thiago Santos
5c7c90ff2c
vp8dec: optimize vpx image to gstbuffer copy when strides match
...
Solving this FIXME. Copy the full plane when strides are the same
2015-04-17 14:27:27 -03:00
Sebastian Dröge
627e492b7e
vp[89]dec: Drop frames that have no output buffer because of errors
...
finish_frame() assumes that there is an output buffer.
2015-03-05 10:01:09 +01:00
Nicolas Dufresne
501a53b26d
vpxdec: Fix calculation of width in bytes
...
Right now we only support I420, but vpx seems to support more formats.
This will prevent hard to find bug in the future.
2015-03-01 14:03:05 -05:00
Nicolas Dufresne
1521f65e8d
vpxdec: Don't memcpy in frame map failed
...
This avoid a crash if mapping the frame failed.
2015-03-01 14:03:04 -05:00
Tom Greenwood
5430b6c351
vp8dec: Fix for handling resolution changes when decoding VP8
...
If the resolution changes in the bitstream without the input caps changing we
would previously output corrupted video or crash.
https://bugzilla.gnome.org/show_bug.cgi?id=719359
2014-09-02 08:42:24 +03:00
Jose Antonio Santos Cadenas
f22b91dad5
vp8dec: Reset output and input states when changing format
...
https://bugzilla.gnome.org/show_bug.cgi?id=734266
2014-09-01 23:56:51 -03:00
Sebastian Dröge
5c8163a685
vpx: Use new gst_video_decoder_set_needs_format() API
2013-12-05 11:42:34 +01:00
Sebastian Dröge
b1e442236f
ext: Use new flush vfunc of video codec base classes and remove reset implementations
2013-08-15 15:08:05 +02:00
Sebastian Dröge
943520382f
vp8dec: Error out gracefully if we get an unsupported color format
...
In theory we can only get I420 though, just to be on the safe side.
2013-06-22 10:59:17 +02:00
Tom Greenwood
3d335cb1ed
vp8dec: Improve logging when vpx_codec_peek_stream_info fails
...
Decode failures and missing keyframes should get different debug
output.
https://bugzilla.gnome.org/show_bug.cgi?id=697232
2013-04-04 11:48:53 +02:00
Sebastian Dröge
dc5db0e980
vp8dec: Fix last commit
2012-11-12 10:31:59 +01:00
Sebastian Dröge
ef2cc91eb9
vp8dec: Also destroy decoder in set_format() if it was created already
...
Fixes a memory leak.
2012-11-12 10:11:32 +01:00
Sebastian Dröge
bd0ef7fec3
vp8dec: Don't clear input state in reset()
...
The input state is still valid after flushing until
new caps arrive.
Fixes bug #688092 .
2012-11-12 10:11:32 +01:00
Debarshi Ray
8a4a6b770f
vp8dec: Don't give up so easily if failed to decode a frame
...
https://bugzilla.gnome.org/show_bug.cgi?id=687436
2012-11-09 16:43:58 +01:00
Tim-Philipp Müller
230cf41cc9
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Sebastian Dröge
f0640f205c
vp8dec: Immediately return if opening the decoder failed
...
Instead of ignoring any errors.
2012-11-02 09:34:25 +01:00
Debarshi Ray
3c216600f5
vp8dec: Short circuit gst_vp8_dec_handle_frame if keyframe is missing
...
https://bugzilla.gnome.org/show_bug.cgi?id=687376
2012-11-02 09:34:08 +01:00
Tim-Philipp Müller
9dcdc413a7
jpeg, png, vpx: use gst_element_class_set_static_metadata()
...
Avoids some string copies.
2012-10-17 17:03:39 +01:00
Sebastian Dröge
2a4e3d2110
vpx: Rename vp8 plugin to vpx
...
This is using libvpx, which can support more codecs than just VP8
and will likely support future codecs.
2012-09-16 15:33:57 +02:00