Commit graph

131 commits

Author SHA1 Message Date
Edward Hervey
508e4e7e9f vp8dec: Call gst_video_decoder_negotiate() 2012-08-14 19:07:47 +02:00
Sebastian Dröge
c6b16aed08 vp8dec: Add support for multiple decoding threads 2012-08-14 11:17:25 +02:00
Sebastian Dröge
14317a3408 vp8dec: Add support for the MFQE postprocessing flag
Which is enabled by default if postprocessing is enabled.
2012-08-14 11:09:46 +02:00
Sebastian Dröge
85e45a09e2 vp8: Use pkg-config file for getting the LIBS and CFLAGS 2012-08-09 13:37:22 +02:00
Sebastian Dröge
880359f32b vp8enc: Update the per-component strides for every frame too
This is necessary because of GstVideoAlignment
2012-08-08 17:41:42 +02:00
Oleksij Rempel
94337d05a5 vp8enc: initiate encoder to fix a crash.
Without this patch vp8enc send header before and after first
key frame. On second keyframe vp8dec will crash without getting
decoded frame. With this pipe it is easy to reproduce this issue:
gst-launch-1.0 videotestsrc ! vp8enc ! vp8dec ! fakesink

https://bugzilla.gnome.org/show_bug.cgi?id=680667
2012-08-05 19:35:32 +01:00
Sebastian Dröge
afd50a79f4 tag: Update for taglist/tag event API changes 2012-07-28 00:32:58 +02:00
Sebastian Dröge
b60da6223e ext: Update for video base classes API changes 2012-07-23 10:35:03 +02:00
Oleksij Rempel
c03cc692ef vp8enc: fix memory leak
unref frame. i hope it is correct place to do it.

Signed-off-by: Oleksij Rempel <bug-track@fisher-privat.net>
2012-07-23 08:31:11 +02:00
Wim Taymans
0fc94cd7b0 update for query api changes 2012-07-06 11:50:53 +02:00
Wim Taymans
9baf930a89 update for query api changes 2012-07-06 11:26:55 +02:00
Wim Taymans
dc4ad091aa update for allocation query changes 2012-07-06 11:05:15 +02:00
Vincent Penquerc'h
27486729d1 vp8: fix codec state leaks
I only tested that vp8enc ! vp8dec does not crash, as valgrind does not grok
at least one of the instructions used by vp8enc, preventing me from checking
a leak, and the lack of one after the patch.
2012-06-07 12:43:59 +01:00
Wim Taymans
b98ec32380 update for tag event change 2012-06-06 13:02:40 +02:00
Sebastian Dröge
1d3996325a vp8: Port to 0.11 again 2012-05-28 16:05:21 +02:00
Vincent Penquerc'h
34deb5b703 vp8enc: fix target bitrate config with libvpx 1.1.0
libvpx 1.1.0 disallows a bitrate of 0, which was used by
vp8enc as a default value.

Instead, we use the default libvpx bitrate, scaled to our
video size, if no bitrate was specified.

This fixes encoding VP8 video with libvpx 1.1.0.

https://bugzilla.gnome.org/show_bug.cgi?id=676245
2012-05-28 15:29:28 +02:00
Sebastian Dröge
f75a5ff893 vp8enc: Update for GstVideoCodecFrame API changes 2012-05-28 15:29:23 +02:00
Thiago Santos
1f34e79ffc vp8dec: Improve output_state handling
Avoid getting output_state for every buffer as that requires
getting the objectlock and doing reference counting. Store it locally
when it is created and use it.
2012-05-28 15:29:18 +02:00
Thiago Santos
44d22d3e82 vp8dec: Use outputstate when copying output buffer data
Using the input state was causing a crash because the strides/offsets
would be wrong. Fix it by using the output as we are dealing with
the decoded frame.
2012-05-28 15:29:13 +02:00
Edward Hervey
7fee866764 vp8: Port to -base video base classes
Conflicts:

	ext/vp8/Makefile.am
	ext/vp8/gstvp8dec.c
	ext/vp8/gstvp8enc.c

Back to 0.10 state for now, need to be ported again.
2012-05-28 15:28:53 +02:00
Vincent Penquerc'h
332f715208 vp8enc: fix target bitrate config with libvpx 1.1.0
libvpx 1.1.0 disallows a bitrate of 0, which was used by
vp8enc as a default value.

Instead, we use the default libvpx bitrate, scaled to our
video size, if no bitrate was specified.

This fixes encoding VP8 video with libvpx 1.1.0.

https://bugzilla.gnome.org/show_bug.cgi?id=676245
2012-05-22 10:25:03 +01:00
Sebastian Dröge
cda192b3b7 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 18:02:56 +02:00
Sebastian Dröge
1318a97e0a gst: Update versioning 2012-04-04 14:44:34 +02:00
Sebastian Dröge
860ccd414d Merge remote-tracking branch 'origin/0.10'
Conflicts:
	NEWS
	RELEASE
	common
	configure.ac
	docs/libs/gst-plugins-bad-libs-sections.txt
	docs/plugins/gst-plugins-bad-plugins.args
	docs/plugins/gst-plugins-bad-plugins.hierarchy
	docs/plugins/gst-plugins-bad-plugins.interfaces
	docs/plugins/inspect/plugin-adpcmdec.xml
	docs/plugins/inspect/plugin-adpcmenc.xml
	docs/plugins/inspect/plugin-assrender.xml
	docs/plugins/inspect/plugin-audiovisualizers.xml
	docs/plugins/inspect/plugin-autoconvert.xml
	docs/plugins/inspect/plugin-bayer.xml
	docs/plugins/inspect/plugin-bz2.xml
	docs/plugins/inspect/plugin-camerabin2.xml
	docs/plugins/inspect/plugin-celt.xml
	docs/plugins/inspect/plugin-dataurisrc.xml
	docs/plugins/inspect/plugin-debugutilsbad.xml
	docs/plugins/inspect/plugin-dtmf.xml
	docs/plugins/inspect/plugin-dtsdec.xml
	docs/plugins/inspect/plugin-dvbsuboverlay.xml
	docs/plugins/inspect/plugin-dvdspu.xml
	docs/plugins/inspect/plugin-faac.xml
	docs/plugins/inspect/plugin-faad.xml
	docs/plugins/inspect/plugin-gsm.xml
	docs/plugins/inspect/plugin-h264parse.xml
	docs/plugins/inspect/plugin-mms.xml
	docs/plugins/inspect/plugin-modplug.xml
	docs/plugins/inspect/plugin-mpeg2enc.xml
	docs/plugins/inspect/plugin-mpegdemux2.xml
	docs/plugins/inspect/plugin-mpegtsdemux.xml
	docs/plugins/inspect/plugin-mpegvideoparse.xml
	docs/plugins/inspect/plugin-mplex.xml
	docs/plugins/inspect/plugin-pcapparse.xml
	docs/plugins/inspect/plugin-rawparse.xml
	docs/plugins/inspect/plugin-rtpmux.xml
	docs/plugins/inspect/plugin-rtpvp8.xml
	docs/plugins/inspect/plugin-scaletempo.xml
	docs/plugins/inspect/plugin-schro.xml
	docs/plugins/inspect/plugin-sdp.xml
	docs/plugins/inspect/plugin-segmentclip.xml
	docs/plugins/inspect/plugin-shm.xml
	docs/plugins/inspect/plugin-videomaxrate.xml
	docs/plugins/inspect/plugin-videoparsersbad.xml
	docs/plugins/inspect/plugin-vp8.xml
	docs/plugins/inspect/plugin-y4mdec.xml
	ext/celt/gstceltdec.c
	ext/dts/gstdtsdec.c
	ext/modplug/gstmodplug.cc
	ext/opus/gstopusenc.c
	gst-libs/gst/video/gstbasevideocodec.c
	gst-libs/gst/video/gstbasevideocodec.h
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideodecoder.h
	gst-libs/gst/video/gstbasevideoencoder.c
	gst-libs/gst/video/gstbasevideoencoder.h
	gst/adpcmdec/Makefile.am
	gst/audiovisualizers/gstbaseaudiovisualizer.c
	gst/h264parse/gsth264parse.c
	gst/mpegdemux/mpegtsparse.c
	gst/mpegtsdemux/mpegtsbase.c
	gst/mpegtsdemux/mpegtspacketizer.c
	gst/mpegtsdemux/mpegtsparse.c
	gst/mpegtsdemux/tsdemux.c
	gst/mpegtsdemux/tsdemux.h
	gst/mxf/mxfdemux.c
	gst/rawparse/gstaudioparse.c
	gst/videoparsers/gsth263parse.c
	gst/videoparsers/gsth264parse.c
	sys/d3dvideosink/d3dvideosink.c
	sys/decklink/gstdecklinksink.cpp
	sys/dvb/gstdvbsrc.c
	sys/shm/gstshmsrc.c
	sys/vdpau/h264/gstvdph264dec.c
	sys/vdpau/mpeg/gstvdpmpegdec.c
	tests/examples/opencv/gst_element_print_properties.c
	win32/common/config.h
2012-03-29 17:41:53 +02:00
Sebastian Dröge
837763fee8 vp8enc: Fix 'argument to 'sizeof' in 'memset' call is the same expression as the destination' compiler warning 2012-03-06 15:21:17 +01:00
Wim Taymans
3b74cca741 update for HEADER flag 2012-01-30 17:17:16 +01:00
Mark Nauwelaerts
12ee41829c port some more to new memory API
Fixes #668677.
2012-01-25 18:50:40 +01:00
Sebastian Dröge
a2a4300241 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	ext/kate/gstkateenc.c
	gst/colorspace/colorspace.c
	gst/mpegvideoparse/mpegvideoparse.c
2012-01-25 13:22:43 +01:00
Oleksij Rempel (Alexey Fisher)
44862ac067 vp8enc: trace outgoing timestamps
add info level prints for outgoing timestamps.

Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2012-01-24 11:21:26 +00:00
Sebastian Dröge
a01a4ea2d3 Merge branch 'master' into 0.11
Conflicts:
	gst/mpegtsdemux/tsdemux.c
	gst/videoparsers/gsth264parse.c
	tests/check/elements/camerabin2.c
2012-01-10 15:50:37 +01:00
Oleksij Rempel (Alexey Fisher)
3d34779e24 vp8dec: use is_alt_data option to prevent timestamp collisions
altref/invisible frames usually stored in container with same timestamp as
dependet frame. This make basevideodecoder to update timestamp for dependet
frame and couse TS colision on next frame:

                 ^- here is altref
time     : 1 2 3 4 5 6 7 8 9
webm ts  : 1   3 5 5   7   9
vp8dec ts: 1   3   7   7   9

Fix bug: https://bugzilla.gnome.org/show_bug.cgi?id=655245

Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2012-01-10 08:49:15 +01:00
Oleksij Rempel (Alexey Fisher)
53735eaa72 vp8: add initial preset file
This is initial preset file, currently with only one profile
for realtime encoding.

Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2012-01-06 08:47:07 +01:00
Vincent Penquerc'h
7521b597f4 various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Tim-Philipp Müller
77361e2919 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/opus/gstopusdec.c
	ext/opus/gstopusparse.c
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideodecoder.h
2011-11-26 15:37:25 +00:00
Tim-Philipp Müller
ca772ed321 vp8dec: use new basevideodecoder API to drop frames and get QoS messages posted 2011-11-25 11:37:57 +00:00
Wim Taymans
bc6ed0bf97 Merge branch 'master' into 0.11
Conflicts:
	ext/celt/gstceltdec.c
	ext/opus/gstopusdec.c
	ext/opus/gstopusdec.h
	ext/opus/gstopusenc.c
	ext/opus/gstopusenc.h
	ext/opus/gstopusparse.c
2011-11-17 17:32:42 +01:00
Mart Raudsepp
61cc352902 mimic, opencv, vp8, acmmp3dec, linsys: Don't build static plugins
Pass --tag=disable-static to libtool everywhere where it's been forgotten

https://bugzilla.gnome.org/show_bug.cgi?id=663768
2011-11-11 11:54:15 +00:00
Edward Hervey
9488a0356a vp8: Port to 0.11 2011-11-03 14:11:51 +01:00
David Schleef
cd35839e98 vp8enc: fix drop-frame property
Fixes #656929.
2011-09-01 17:04:52 -07:00
Vincent Penquerc'h
c24d052bb7 vp8: probe for the new tuning API to keep building with older libvpx
https://bugzilla.gnome.org/show_bug.cgi?id=656928
2011-08-23 10:23:21 +02:00
Sebastian Dröge
4476ca28df vp8enc: Remove unused and useless variable in tags handling 2011-08-18 10:39:26 +02:00
Sebastian Dröge
896a0edbdc vp8enc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:08:08 +02:00
David Schleef
6b78923330 vp8enc: Add more properties 2011-08-03 13:39:33 -07:00
Alexey Fisher
69c9b2d9c9 vp8enc: add min/maxsection-pct option
This options should be good to redeuce decode CPU load.
for lowend hardware:
minsection-pct=15 maxsection-pct=400

for hiend hw:
minsection-pct=5 maxsection-pct=800

see example:
http://www.webmproject.org/tools/encoder-parameters/#2-pass_vbr_encoding_for_smooth_playback_on_low-end_hardware

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Alexey Fisher
782af30aa2 vp8enc: add lag-in-frames option.
This option set maximum of frames codec should remember,
to make better prediktion for alt-ref frames.

See example:
http://www.webmproject.org/tools/encoder-parameters/#2-pass_best_quality_vbr_encoding

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Alexey Fisher
7770eb91aa vp8enc: use multipass.cache file name as default for multipass mode.
Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Sebastian Dröge
43e575319e vp8enc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 08:09:11 +02:00
Olivier Crête
eba9cf06d4 vp8: Fix set-but-unused warnings 2011-07-12 18:05:25 -04:00
Sebastian Dröge
b0d619855c vp8enc: Use destroy notify to free the coder hook 2011-07-09 11:31:02 +02:00
David Schleef
2a1d4c9b4a vp8enc: update for new libvpx api 2011-07-04 16:34:48 -07:00