Robert Swain [Tue, 18 Sep 2012 22:39:01 +0000 (00:39 +0200)]
deinterlace: Remove incorrect logic
I don't understand why these lines were added, they don't make sense to
me now and both David and I agree that removing them moves closer to
related logic being correct, therefore, they're being removed.
I've tested a few progressive, interlaced and telecine clips and they
all behave properly timestamp-wise and visually after these changes.
Robert Swain [Tue, 18 Sep 2012 22:17:49 +0000 (00:17 +0200)]
deinterlace: Fix field duration
The frame rate fraction is correctly adjusted in the cases preceding the
field duration calculation and so the factor of 2 is incorrect.
Michael Smith [Tue, 18 Sep 2012 17:34:03 +0000 (10:34 -0700)]
videobox: Fix U/V strides for a number of cases.
Mark Nauwelaerts [Tue, 18 Sep 2012 10:13:21 +0000 (12:13 +0200)]
videomixer: init videoinfo
... to prevent random bogus caps fields.
Mark Nauwelaerts [Tue, 18 Sep 2012 10:12:39 +0000 (12:12 +0200)]
videomixer: chain up to collectpads query function
Nicolas Dufresne [Mon, 17 Sep 2012 17:17:00 +0000 (13:17 -0400)]
videomixer: Don't let GstCollectPad shadow custom sink pad query func
In the current implementation, the custom pad query function is not called.
This patch, set that query function on the GstCollectPads to avoid this
shadowing.
See https://bugzilla.gnome.org/show_bug.cgi?id=684237
Tim-Philipp Müller [Mon, 17 Sep 2012 17:23:11 +0000 (18:23 +0100)]
tests: dist image.jpg for jpeg test
Tim-Philipp Müller [Mon, 17 Sep 2012 16:57:58 +0000 (17:57 +0100)]
Release 0.11.99
Tim-Philipp Müller [Mon, 17 Sep 2012 15:53:04 +0000 (16:53 +0100)]
docs: update
Christian Fredrik Kalager Schaller [Mon, 17 Sep 2012 11:30:15 +0000 (13:30 +0200)]
Fix spec file for vp8 move
Sebastian Dröge [Mon, 17 Sep 2012 11:23:36 +0000 (13:23 +0200)]
annodex: Add to the CRUFT_DIRS
Tim-Philipp Müller [Mon, 17 Sep 2012 11:14:07 +0000 (12:14 +0100)]
docs: update
Sebastian Dröge [Mon, 17 Sep 2012 07:48:56 +0000 (09:48 +0200)]
vp8enc: Correctly finish frames
Previously we would always get the same frame if multiple frames are pending,
leaking memory of the previous frames and breaking timestamps.
Sebastian Dröge [Mon, 17 Sep 2012 07:40:41 +0000 (09:40 +0200)]
vp8enc: Allow changing bitrate and other parameters during playback
Fixes bug #648276.
Sebastian Dröge [Mon, 17 Sep 2012 07:16:39 +0000 (09:16 +0200)]
vp8enc: Store configuration in the vpx_codec_enc_cfg_t struct instead of duplicating all variables
Also protect encoder with a mutex.
Sebastian Dröge [Sun, 16 Sep 2012 14:03:06 +0000 (16:03 +0200)]
vp8enc: Update documentation to reflect new property names
...and also link to the WebM encoder parameters website.
Sebastian Dröge [Sun, 16 Sep 2012 13:57:58 +0000 (15:57 +0200)]
vp8enc: Make some property names more readable
Sebastian Dröge [Sun, 16 Sep 2012 13:47:16 +0000 (15:47 +0200)]
vp8: Add tests to .gitignore
Sebastian Dröge [Sun, 16 Sep 2012 13:46:31 +0000 (15:46 +0200)]
vp8enc: Update patch to the new property names
Sebastian Dröge [Sun, 16 Sep 2012 13:46:22 +0000 (15:46 +0200)]
vpx: Integrate test into the build system too
Wim Taymans [Tue, 7 Feb 2012 16:00:26 +0000 (17:00 +0100)]
[MOVED FROM BAD 6/6] tests: fix more unit tests
René Stadler [Thu, 24 Nov 2011 20:42:39 +0000 (21:42 +0100)]
[MOVED FROM BAD 5/6] tests: update for gstcheck API change
Sebastian Dröge [Sat, 10 Jul 2010 13:46:51 +0000 (15:46 +0200)]
[MOVED FROM BAD 4/6] vp8dec: Add simple unit test for vp8dec
Sebastian Dröge [Sat, 10 Jul 2010 13:46:43 +0000 (15:46 +0200)]
[MOVED FROM BAD 3/6] vp8enc: Improve unit test a bit
Sebastian Dröge [Sat, 10 Jul 2010 13:32:29 +0000 (15:32 +0200)]
[MOVED FROM BAD 2/6] vp8enc: Also check the output caps in the unit test
Sebastian Dröge [Sat, 10 Jul 2010 13:29:46 +0000 (15:29 +0200)]
[MOVED FROM BAD 1/6] vp8enc: Add simple unit test
Sebastian Dröge [Sun, 16 Sep 2012 13:43:39 +0000 (15:43 +0200)]
vpx: Integrate into the build system
Sebastian Dröge [Sun, 16 Sep 2012 13:33:57 +0000 (15:33 +0200)]
vpx: Rename vp8 plugin to vpx
This is using libvpx, which can support more codecs than just VP8
and will likely support future codecs.
Sebastian Dröge [Sun, 16 Sep 2012 13:32:24 +0000 (15:32 +0200)]
vp8: Apply remaining changes that got lost while moving the plugin via git am thanks to merges
Sebastian Dröge [Sun, 16 Sep 2012 13:25:08 +0000 (15:25 +0200)]
[MOVED FROM BAD 134/134] vp8dec: Unref input/output states when stopping the decoder
Sebastian Dröge [Sun, 16 Sep 2012 13:18:20 +0000 (15:18 +0200)]
[MOVED FROM BAD 133/134] vp8enc: Update realtime profile to the new properties
Sebastian Dröge [Sun, 16 Sep 2012 08:56:07 +0000 (10:56 +0200)]
[MOVED FROM BAD 132/134] vp8: Require latest libvpx release (1.1.0 from May 2012)
Fixes bug #684116 and simplifies configure checks.
Sebastian Dröge [Sat, 15 Sep 2012 18:23:13 +0000 (20:23 +0200)]
[MOVED FROM BAD 131/134] vp8enc: Use a string field for the profile in the caps
Just for consistency with all the other codecs.
Sebastian Dröge [Fri, 14 Sep 2012 22:04:07 +0000 (00:04 +0200)]
[MOVED FROM BAD 130/134] vp8enc: Correctly set profile in caps
Sebastian Dröge [Fri, 14 Sep 2012 21:41:48 +0000 (23:41 +0200)]
[MOVED FROM BAD 129/134] vp8: Update copyright and authors
Sebastian Dröge [Sat, 8 Sep 2012 13:38:40 +0000 (15:38 +0200)]
[MOVED FROM BAD 128/134] vp8enc: Rework encoder properties to be more in line with the libvpx tools and API
Also add all available properties.
Mark Nauwelaerts [Fri, 14 Sep 2012 15:08:49 +0000 (17:08 +0200)]
[MOVED FROM BAD 127/134] replace gst_element_class_set_details_simple with gst_element_class_set_metadata
Edward Hervey [Thu, 19 Jul 2012 07:05:28 +0000 (09:05 +0200)]
[MOVED FROM BAD 126/134] vp8dec: Call gst_video_decoder_negotiate()
Sebastian Dröge [Tue, 14 Aug 2012 09:17:25 +0000 (11:17 +0200)]
[MOVED FROM BAD 125/134] vp8dec: Add support for multiple decoding threads
Sebastian Dröge [Tue, 14 Aug 2012 09:09:46 +0000 (11:09 +0200)]
[MOVED FROM BAD 124/134] vp8dec: Add support for the MFQE postprocessing flag
Which is enabled by default if postprocessing is enabled.
Sebastian Dröge [Thu, 9 Aug 2012 11:37:22 +0000 (13:37 +0200)]
[MOVED FROM BAD 123/134] vp8: Use pkg-config file for getting the LIBS and CFLAGS
Sebastian Dröge [Wed, 8 Aug 2012 15:06:20 +0000 (17:06 +0200)]
[MOVED FROM BAD 122/134] vp8enc: Update the per-component strides for every frame too
This is necessary because of GstVideoAlignment
Oleksij Rempel [Thu, 26 Jul 2012 17:31:14 +0000 (19:31 +0200)]
[MOVED FROM BAD 121/134] 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
Sebastian Dröge [Fri, 27 Jul 2012 22:32:58 +0000 (00:32 +0200)]
[MOVED FROM BAD 120/134] tag: Update for taglist/tag event API changes
Sebastian Dröge [Mon, 23 Jul 2012 08:35:03 +0000 (10:35 +0200)]
[MOVED FROM BAD 119/134] ext: Update for video base classes API changes
Oleksij Rempel [Sat, 21 Jul 2012 17:59:21 +0000 (19:59 +0200)]
[MOVED FROM BAD 118/134] 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>
Wim Taymans [Fri, 6 Jul 2012 09:50:53 +0000 (11:50 +0200)]
[MOVED FROM BAD 117/134] update for query api changes
Wim Taymans [Fri, 6 Jul 2012 09:26:55 +0000 (11:26 +0200)]
[MOVED FROM BAD 116/134] update for query api changes
Wim Taymans [Fri, 6 Jul 2012 09:03:04 +0000 (11:03 +0200)]
[MOVED FROM BAD 115/134] update for allocation query changes
Vincent Penquerc'h [Thu, 7 Jun 2012 11:33:31 +0000 (12:33 +0100)]
[MOVED FROM BAD 114/134] 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.
Wim Taymans [Wed, 6 Jun 2012 11:02:40 +0000 (13:02 +0200)]
[MOVED FROM BAD 113/134] update for tag event change
Sebastian Dröge [Mon, 28 May 2012 14:05:21 +0000 (16:05 +0200)]
[MOVED FROM BAD 112/134] vp8: Port to 0.11 again
Vincent Penquerc'h [Fri, 18 May 2012 11:46:55 +0000 (12:46 +0100)]
[MOVED FROM BAD 111/134] 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
Sebastian Dröge [Wed, 16 May 2012 12:04:28 +0000 (14:04 +0200)]
[MOVED FROM BAD 110/134] vp8enc: Update for GstVideoCodecFrame API changes
Thiago Santos [Fri, 27 Apr 2012 21:22:42 +0000 (18:22 -0300)]
[MOVED FROM BAD 109/134] 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.
Thiago Santos [Fri, 27 Apr 2012 12:05:57 +0000 (09:05 -0300)]
[MOVED FROM BAD 108/134] 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.
Edward Hervey [Tue, 24 Apr 2012 09:08:41 +0000 (11:08 +0200)]
[MOVED FROM BAD 107/134] 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.
Vincent Penquerc'h [Fri, 18 May 2012 11:46:55 +0000 (12:46 +0100)]
[MOVED FROM BAD 106/134] 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
Sebastian Dröge [Thu, 5 Apr 2012 16:02:56 +0000 (18:02 +0200)]
[MOVED FROM BAD 105/134] gst: Update for GST_PLUGIN_DEFINE() API changes
Sebastian Dröge [Wed, 4 Apr 2012 12:41:22 +0000 (14:41 +0200)]
[MOVED FROM BAD 104/134] gst: Update versioning
Sebastian Dröge [Tue, 6 Mar 2012 14:21:17 +0000 (15:21 +0100)]
[MOVED FROM BAD 103/134] vp8enc: Fix 'argument to 'sizeof' in 'memset' call is the same expression as the destination' compiler warning
Wim Taymans [Mon, 30 Jan 2012 16:17:16 +0000 (17:17 +0100)]
[MOVED FROM BAD 102/134] update for HEADER flag
Mark Nauwelaerts [Wed, 25 Jan 2012 17:49:58 +0000 (18:49 +0100)]
[MOVED FROM BAD 101/134] port some more to new memory API
Fixes #668677.
Oleksij Rempel (Alexey Fisher) [Tue, 24 Jan 2012 10:22:46 +0000 (11:22 +0100)]
[MOVED FROM BAD 100/134] vp8enc: trace outgoing timestamps
add info level prints for outgoing timestamps.
Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
Oleksij Rempel (Alexey Fisher) [Wed, 4 Jan 2012 10:05:48 +0000 (11:05 +0100)]
[MOVED FROM BAD 099/134] 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>
Oleksij Rempel (Alexey Fisher) [Mon, 2 Jan 2012 07:28:13 +0000 (08:28 +0100)]
[MOVED FROM BAD 098/134] 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>
Vincent Penquerc'h [Mon, 28 Nov 2011 13:08:27 +0000 (13:08 +0000)]
[MOVED FROM BAD 097/134] various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
Tim-Philipp Müller [Fri, 25 Nov 2011 11:36:14 +0000 (11:36 +0000)]
[MOVED FROM BAD 096/134] vp8dec: use new basevideodecoder API to drop frames and get QoS messages posted
Mart Raudsepp [Thu, 10 Nov 2011 13:13:34 +0000 (15:13 +0200)]
[MOVED FROM BAD 095/134] 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
Edward Hervey [Thu, 3 Nov 2011 13:01:41 +0000 (14:01 +0100)]
[MOVED FROM BAD 094/134] vp8: Port to 0.11
David Schleef [Mon, 22 Aug 2011 03:15:25 +0000 (20:15 -0700)]
[MOVED FROM BAD 093/134] vp8enc: fix drop-frame property
Fixes #656929.
Vincent Penquerc'h [Fri, 19 Aug 2011 18:17:15 +0000 (19:17 +0100)]
[MOVED FROM BAD 092/134] vp8: probe for the new tuning API to keep building with older libvpx
https://bugzilla.gnome.org/show_bug.cgi?id=656928
Sebastian Dröge [Thu, 18 Aug 2011 08:39:26 +0000 (10:39 +0200)]
[MOVED FROM BAD 091/134] vp8enc: Remove unused and useless variable in tags handling
Sebastian Dröge [Fri, 12 Aug 2011 10:08:08 +0000 (12:08 +0200)]
[MOVED FROM BAD 090/134] vp8enc: Update for basevideoencoder ::get_caps() removal
David Schleef [Sun, 10 Jul 2011 01:53:24 +0000 (18:53 -0700)]
[MOVED FROM BAD 089/134] vp8enc: Add more properties
Alexey Fisher [Sun, 19 Jun 2011 14:06:46 +0000 (16:06 +0200)]
[MOVED FROM BAD 088/134] 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>
Alexey Fisher [Sun, 19 Jun 2011 09:05:36 +0000 (11:05 +0200)]
[MOVED FROM BAD 087/134] 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>
Alexey Fisher [Sun, 19 Jun 2011 05:16:57 +0000 (07:16 +0200)]
[MOVED FROM BAD 086/134] 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>
Sebastian Dröge [Thu, 21 Jul 2011 06:03:51 +0000 (08:03 +0200)]
[MOVED FROM BAD 085/134] vp8enc: Update for GstBaseVideoEncoder::finish() signature change
Olivier Crête [Tue, 12 Jul 2011 22:05:25 +0000 (18:05 -0400)]
[MOVED FROM BAD 084/134] vp8: Fix set-but-unused warnings
Sebastian Dröge [Sat, 9 Jul 2011 09:31:02 +0000 (11:31 +0200)]
[MOVED FROM BAD 083/134] vp8enc: Use destroy notify to free the coder hook
David Schleef [Sat, 18 Jun 2011 22:56:49 +0000 (15:56 -0700)]
[MOVED FROM BAD 082/134] vp8enc: update for new libvpx api
Alexey Fisher [Sun, 26 Jun 2011 13:15:54 +0000 (15:15 +0200)]
[MOVED FROM BAD 081/134] vp8enc: generate a timestamp for alt-ref frames.
It will fix handling of altref/invisible frames since matroska-mux
drop any fram with no timestamp.
see also:
http://www.webmproject.org/code/specs/container/
The encoder will currently set the AR's timestamp as close as possible
to the previous frame while attempting to provide a timestamp that is
strictly increasing. In cases where the time base given to the encoder
at configure time is not granular enough to allow for this the AR
will share the same timestamp as D, but should be
treated as having no duration.
Fixes bug #652951
Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Alexey Fisher [Sat, 18 Jun 2011 15:47:36 +0000 (17:47 +0200)]
[MOVED FROM BAD 080/134] vp8dec: add check if we have legal aspect-ratio before reset it.
the commit
f9b552f0494e (vp8dec: set par to 1/1)
will fix situation where no aspect-ratio is set, but it brake
stream with available aspect-ratio. This patch fix it.
Fixes: #652902.
Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
David Schleef [Sat, 4 Jun 2011 02:36:59 +0000 (19:36 -0700)]
[MOVED FROM BAD 079/134] vp8dec: set par to 1/1
Sebastian Dröge [Wed, 18 May 2011 11:27:20 +0000 (13:27 +0200)]
[MOVED FROM BAD 078/134] vp8enc: Name max/min quantizer properties {max,min}-quantizer
Also improve quality property description.
Alexey Fisher [Wed, 18 May 2011 11:26:23 +0000 (13:26 +0200)]
[MOVED FROM BAD 077/134] vp8enc: Add properties to select a maximum and minimum quantizer
Fixes bug #641405.
Alexey Fisher [Wed, 18 May 2011 11:18:58 +0000 (13:18 +0200)]
[MOVED FROM BAD 076/134] vp8enc: Fix quality to (constant) quantizer mapping
This now allows to select all possible quantizers between
0 and 63.
See bug #641405.
Mark Nauwelaerts [Fri, 1 Apr 2011 20:13:55 +0000 (22:13 +0200)]
[MOVED FROM BAD 075/134] vp8dec: debug code style fixes
Mark Nauwelaerts [Fri, 1 Apr 2011 20:13:00 +0000 (22:13 +0200)]
[MOVED FROM BAD 074/134] vp8dec: propagate downstream flow return to upstream
Mark Nauwelaerts [Wed, 30 Mar 2011 08:18:23 +0000 (10:18 +0200)]
[MOVED FROM BAD 073/134] basevideodecoder: really and only set src pad caps whenever requested
... since subclass is expected to be wise enough to know when to do so.
Mark Nauwelaerts [Tue, 29 Mar 2011 08:41:54 +0000 (10:41 +0200)]
[MOVED FROM BAD 072/134] basevideodecoder: invoke subclass start method at state change and use set_format
While this changes API slightly (e.g. actually uses set_format now), which is OK
for unstable API, it has following merits:
* symmetric w.r.t. stop at state change
* in line with other base class practice
* otherwise no subclass method at state change (global activation time)
Moreover, subclassese are either unaffected or trivially adjusted accordingly.
Mark Nauwelaerts [Mon, 28 Mar 2011 06:59:20 +0000 (08:59 +0200)]
[MOVED FROM BAD 071/134] basevideodecoder: subsume skip_frame into finish_frame
Mark Nauwelaerts [Thu, 24 Mar 2011 13:10:07 +0000 (14:10 +0100)]
[MOVED FROM BAD 070/134] basevideoencoder: provide proper upstream flow return handling
Mark Nauwelaerts [Thu, 24 Mar 2011 12:59:35 +0000 (13:59 +0100)]
[MOVED FROM BAD 069/134] vp8enc: minor optimization in setting up image buffer
Mark Nauwelaerts [Thu, 24 Mar 2011 11:50:23 +0000 (12:50 +0100)]
[MOVED FROM BAD 068/134] vp8enc: refactor frame processing
Mark Nauwelaerts [Thu, 24 Mar 2011 10:55:41 +0000 (11:55 +0100)]
[MOVED FROM BAD 067/134] vp8enc: do init at set_format time
Mark Nauwelaerts [Thu, 24 Mar 2011 09:15:55 +0000 (10:15 +0100)]
[MOVED FROM BAD 066/134] vp8enc: fix keyframe forcing
Mark Nauwelaerts [Wed, 23 Mar 2011 08:45:20 +0000 (09:45 +0100)]
[MOVED FROM BAD 065/134] basevideocodec: remove redundant caps field
... as it is already at hand as the src pad's negotiated caps.
Mark Nauwelaerts [Wed, 23 Mar 2011 07:50:31 +0000 (08:50 +0100)]
[MOVED FROM BAD 064/134] vp8enc: use baseclass event virtual handler