Sebastian Dröge
25ed0a30a4
deinterlace: Fix compiler warning
...
gstdeinterlace.c: In function 'gst_deinterlace_output_frame':
gstdeinterlace.c:1537:57: error: 'pattern.length' may be used uninitialized in this function [-Werror=maybe-uninitialized]
This actually is always initialized before it is used there, but
let's just silence gcc here.
2014-04-22 17:29:02 +02:00
Vincent Penquerc'h
46a39bdd4f
deinterlace: fix sign comparison
...
history_count is unsigned, so the whole comparison will be made
as unsigned, and fail to reject what it was meant to.
Coverity 206204
2014-04-16 17:44:51 +01:00
Vincent Penquerc'h
1d7735b1d6
deinterlace: guard against finding no suitable pattern
...
The code handles a -1 pattern index, and it seems plausible
that a pattern might be found later, so it seems best to not
send an element error here.
Coverity 1139766
2014-04-07 12:20:12 +01:00
Matthieu Bouron
200eb7498d
deinterlace: do not try set deinterlace method if passthrough is enabled
...
Fixes an issue with progressive content and unsupported video formats
for the deinterlace method.
https://bugzilla.gnome.org/show_bug.cgi?id=719636
2014-02-04 21:44:35 +01:00
Matthieu Bouron
0bbdb9bb1d
deinterlace: support any video formats and any caps features if deinterlace mode allows it
...
https://bugzilla.gnome.org/show_bug.cgi?id=719636
2014-01-03 11:22:01 +01:00
Todd Agulnick
8bab119af9
Some compiler warning fixes to satisfy XCode compiler
...
https://bugzilla.gnome.org/show_bug.cgi?id=720513
2013-12-16 16:52:40 +01:00
Tim-Philipp Müller
a424fb289b
deinterlace: microoptimisation: avoid some unnecessary GValue copies
2013-12-02 00:10:43 +00:00
Tim-Philipp Müller
63b0e84add
deinterlace: fix off-by-one crash when downstream caps contain a list of framerates
...
https://bugzilla.gnome.org/show_bug.cgi?id=719544
2013-12-01 23:33:04 +00:00
Tim-Philipp Müller
d506409af5
docs: get rid of 'Since: 0.10.x' markers
...
And some gtk-doc markup fixes.
2013-11-18 14:47:35 +00:00
Tim-Philipp Müller
f18b1f7e80
deinterlace: fix on-the-fly changing of "mode" and "fields" properties
...
We call setcaps() to reconfigure ourselves, but we need to pass
the current *sink* caps, not the source caps then. Also fix a
caps leak.
https://bugzilla.gnome.org/show_bug.cgi?id=641599
2013-07-22 18:00:16 +01:00
Sebastian Dröge
ecc6c607ff
deinterlace: The return value of gst_pad_set_caps() is not relevant anymore
...
Caps can fail to be set because the pad is not linked yet for example.
2013-05-22 17:34:07 +02:00
Sebastian Dröge
5c8bb90262
deinterlace: Improve handling of min/max buffer numbers of the buffer pool
2013-05-14 09:45:12 +02:00
Matej Knopp
30c00f4fb7
deinterlace: set caps for buffer pool config
2013-05-14 09:38:24 +02:00
Matej Knopp
67c2219687
deinterlace: force deinterlacing in "interlaced" mode
...
https://bugzilla.gnome.org/show_bug.cgi?id=697467
2013-04-07 20:48:21 +01:00
Kishore Arepalli
288e05c99d
deinterlace: fix infinite loop on EOS with non-default methods or fields
...
Fixes problem of infinite loop in gst_deinterlace_reset_history.
Last field in the history was never deinterlaced because idx becomes negative.
Happens e.g. with method=scalerbob fields=bottom or
method=greedyl fields=top
https://bugzilla.gnome.org/show_bug.cgi?id=695644
https://bugzilla.gnome.org/show_bug.cgi?id=693173
2013-03-17 14:47:26 +00:00
Thijs Vermeir
df88341ffb
deinterlace: use appropriate printf format for gsize
2012-12-18 16:02:09 +01:00
Wim Taymans
abd7e33db6
deinterlace: add support for strides
...
Implement stride support correctly by taking it from the GstVideoFrame.
Propose a bufferpool upstream when not operating in passthrough.
2012-12-11 13:00:46 +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
Robert Swain
03e5376827
deinterlace: Add some useful debug logging
2012-09-25 17:05:37 +02:00
Robert Swain
33dd81569f
deinterlace: Fix telecine
...
This only affects behaviour in telecine cases with pattern locking
enabled. The default case should be untouched.
This works with the output from fieldanalysis at least, but the field
order looks swapped for telecine mixed buffers with the
David_slides_Schleef clip.
2012-09-25 17:04:54 +02:00
Robert Swain
480b894642
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.
2012-09-19 00:39:01 +02:00
Robert Swain
a35a931555
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.
2012-09-19 00:17:49 +02:00
Jan Schmidt
a27deda053
deinterlace: Don't treat every custom-downstream event as EOS
...
Don't fall through to the EOS handling after receiving a
custom-downstream event.
2012-09-12 12:23:08 -07:00
Wim Taymans
1c64a91a50
deinterlace: improve framerate transform
...
Handle G_MAXINT in the framerates better. If we cannot double or divide the
framerate, clamp to the smallest/largest possible value we can express instead
of failing.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683861
2012-09-12 13:28:07 +02:00
Wim Taymans
6d9f9bf11a
deinterlace: small cleanup
2012-09-12 13:17:54 +02:00
Wim Taymans
ecaa2624d3
deinterlace: remove redundant _set_allocation call
2012-09-06 17:09:20 +02:00
Mark Nauwelaerts
1ce09d7ef9
deinterlace: plug some leaks
2012-09-06 17:05:49 +02:00
Wim Taymans
510482b01a
deinterlace: reuse core function for GCD
2012-09-06 16:52:18 +02:00
Mark Nauwelaerts
9d4579b38a
deinterlace: support filter in getcaps
2012-09-06 16:31:17 +02:00
Mark Nauwelaerts
a4458f5f74
deinterlace: do not leak getcaps result
2012-09-06 16:31:17 +02:00
Wim Taymans
45e5ec29ac
deinterlace: add support for bufferpool
...
Add bufferpool support to avoid a memcpy in the videosink when actively
interlacing.
Remove some commented obsolete code.
2012-09-06 16:25:05 +02:00
Wim Taymans
f59fb16f58
deinterlace: proxy allocation query in passthrough
...
We can let the allocation query pass when we are operating in passthrough mode.
2012-09-06 13:38:52 +02:00
Wim Taymans
4efdbc97a5
deinterlace: use default event functions
...
instead of blindly forwarding unknown events.
2012-09-06 13:23:46 +02:00
Wim Taymans
a557282aaa
deinterlace: small cleanups
2012-09-06 13:23:30 +02:00
Wim Taymans
f1ef3b4983
deinterlace: call default query handlers
...
Call the default query handler instead of forwarding the query blindly. Fixes
issues of strides because of proxying the allocation query wrongly.
2012-09-06 12:56:30 +02:00
Tim-Philipp Müller
4bb52bbadf
docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert
2012-08-27 21:20:30 +01:00
Tim-Philipp Müller
045c4b6ec8
deinterlace: the field in caps is "interlace-mode" not "interlace-method"
...
Fix deinterlace unit test. Need to set right field on output caps.
Also remove right field (not old 0.10 "interlaced" boolean field)
from caps in unit test before comparing old and new.
2012-08-27 21:20:29 +01:00
Tim-Philipp Müller
0d148d9c6f
deinterlace: fix not-negotiated errors on variable or missing framerate in input caps
...
Remove some bogus code I added during porting that would error out
on missing or variable framerates in input caps. Handle this like
we do in 0.10
Fixes test_mode_disabled_passthrough unit test check.
2012-08-14 01:20:19 +01:00
Robert Swain
cc4941797d
deinterlace: Fix timestamp adjustment and caps
2012-07-26 16:04:23 +02:00
Robert Swain
01016109d0
deinterlace: Fix/simplify telecine state checks
2012-07-26 16:03:57 +02:00
Robert Swain
db5bb81e36
deinterlace: Improve debug output
2012-07-26 12:31:52 +02:00
Robert Swain
f20d8f59c8
deinterlace: Fix low-latency pattern locking
2012-07-26 12:31:52 +02:00
Robert Swain
30a61f26ba
deinterlace: RFF should be ignored in deinterlace
...
RFF only occurs on progressive frames in telecine sequences. For
deinterlace, we don't want these repeated fields as we will simply be
pushing the progressive frame and then moving on.
However, we need to consider RFF in order to correctly identify patterns
and adjust the timestamps.
2012-07-26 12:31:52 +02:00
Robert Swain
7c0af11fca
deinterlace: Improve process logic
...
The logic now works better if we filter orphans, then progressive, then
telecine interlaced fields which need to be woven and fall through to
interlace. Telecine interlaced fields will be regularly deinterlaced if
there is no pattern lock for us to be sure that we have a telecine
pattern.
Telecine sequences that aren't 24fps progressive with RFF flags can't
really be tested until fieldanalysis is ported.
2012-07-26 12:31:52 +02:00
Wim Taymans
7fdd607561
deinterlace: get frame flags correctly
...
Also move the deinterlace plugin to ported status
2012-07-23 15:50:18 +02:00
Robert Swain
eac172c433
deinterlace: Port to 1.0
...
This requires the additional INTERLACED buffer flag recently added to
-base
2012-07-20 23:23:42 +02:00
Vincent Penquerc'h
fe45881a0f
deinterlace: send QoS messages when dropping a frame
...
https://bugzilla.gnome.org/show_bug.cgi?id=657941
2012-06-12 15:40:37 +01:00
Tim-Philipp Müller
e09ae5736d
Use new gst_element_class_set_static_metadata()
2012-04-10 00:51:41 +01:00
Sebastian Dröge
aa2cd462da
gst: Update for GST_PLUGIN_DEFINE() API changes
2012-04-05 17:36:38 +02:00
Wim Taymans
c44cd8f55b
Merge branch 'master' into 0.11
...
unport gdkpixbuf
not merged: https://bugzilla.gnome.org/show_bug.cgi?id=654850
Conflicts:
docs/plugins/Makefile.am
docs/plugins/gst-plugins-good-plugins-docs.sgml
docs/plugins/gst-plugins-good-plugins-sections.txt
docs/plugins/gst-plugins-good-plugins.hierarchy
docs/plugins/inspect/plugin-avi.xml
docs/plugins/inspect/plugin-png.xml
ext/flac/gstflacdec.c
ext/flac/gstflacdec.h
ext/libpng/gstpngdec.c
ext/libpng/gstpngenc.c
ext/speex/gstspeexdec.c
gst/audioparsers/gstflacparse.c
gst/flv/gstflvmux.c
gst/rtp/gstrtpdvdepay.c
gst/rtp/gstrtph264depay.c
2012-03-22 11:53:24 +01:00