Luis de Bethencourt
d90347edf2
deinterlace: use GST_STIME_ARGS for GstClockTimeDiff
...
No need to manually handle negative values of diff, GST_STIME_ARGS is
available for this.
2015-11-02 16:45:34 +00:00
Thiago Santos
dc0e2281b9
deinterlace: break as soon as non-interlaced if found
...
It looks for a non-interlaced entry on the filter caps, break
as soon as one is found to avoid wasting cpu
2015-10-25 11:02:34 -03:00
Thiago Santos
82d62b9edd
deinterlace: implement accept-caps
...
Implement accept-caps handler to avoid doing a full caps query
downstream to handle it.
This commit implements accept-caps as a simplification of the _getcaps
function, so it exposes the same limitations that getcaps would.
For example, not accepting renegotiation to caps with capsfeatures when
it was last configured to a caps that it has to deinterlace.
2015-10-25 11:01:45 -03:00
Luis de Bethencourt
34caf9d7c5
deinterlace: update example pipeline
...
Update reference to decodebin2 to decodebin
2015-06-25 10:47:40 +01:00
Luis de Bethencourt
72f63c58ad
deinterlace: remove dead assignments
...
Values in fields_required and same_buffer are overwritten before used. Removing
assignment
2015-06-25 10:46:43 +01:00
Luis de Bethencourt
671b4d25cd
remove unused enum items PROP_LAST
...
This were probably added to the enums due to cargo cult programming and are
unused. Removing them.
2015-04-24 17:01:12 +01:00
Thibault Saunier
76944350c0
Deinterlace: in query_caps return only supported formats if filter is interlaced
...
In some cases the currently set GstVideoInfo is not interlaced, but
upstream caps are interlaced and the info is passed in the filter,
we should take that info into account and make sure that we do not
consider that case as a "pass through" case.
https://bugzilla.gnome.org/show_bug.cgi?id=741407
2014-12-14 12:41:16 +01:00
Sanjay NM
26a1344f37
Miscellaneous minor cleanups
...
Fix redundant variables and assignments,
and unreachable breaks.
https://bugzilla.gnome.org/show_bug.cgi?id=736875
https://bugzilla.gnome.org/show_bug.cgi?id=736876
https://bugzilla.gnome.org/show_bug.cgi?id=736879
https://bugzilla.gnome.org/show_bug.cgi?id=736880
https://bugzilla.gnome.org/show_bug.cgi?id=736881
https://bugzilla.gnome.org/show_bug.cgi?id=736888
https://bugzilla.gnome.org/show_bug.cgi?id=736890
https://bugzilla.gnome.org/show_bug.cgi?id=736892
https://bugzilla.gnome.org/show_bug.cgi?id=736893
https://bugzilla.gnome.org/show_bug.cgi?id=736894
2014-09-24 00:45:31 +01:00
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