Commit graph

13832 commits

Author SHA1 Message Date
Hyunjun Ko cb15df15ac rtspconnection: fix warning on param name mismatch
https://bugzilla.gnome.org/show_bug.cgi?id=740013
2014-11-19 13:43:02 -03:00
Jan Schmidt b508867795 tests: Add reverse playback verification test
Plays a requested URI forward to EOS, then backward and
checks that the same timestamp range(s) are covered.
2014-11-20 02:08:45 +11:00
Sebastian Dröge cefc518494 videorate: Operate in a zero-latency mode if drop-only is set to TRUE
There's no reason why we would have to wait for the next buffer to decide
whether to output the current one or not. We just have to check if the
current one is earlier than our expected next time, which is the previous
frame timestamp plus the expected frame duration.

https://bugzilla.gnome.org/show_bug.cgi?id=740018
2014-11-19 15:10:48 +01:00
Sebastian Dröge 823f170fac video-converter: Use correct enum, GstVideoFormat instead of GstFormat 2014-11-19 14:38:03 +01:00
Wim Taymans 9647a8ca78 video-converter: fix size check
Add some debug, fix size check that decides what scaling to do first and
when to do conversion.
2014-11-19 13:25:13 +01:00
Wim Taymans 23adc12e02 video-converter: avoid primaries conversion when asked
Don't do conversion between primaries when the option is disabled.
Only do some matrix code when needed.
2014-11-19 12:55:03 +01:00
Wim Taymans f6683b8f14 video-info: add a note about subsampled formats
Add a note about gst_video_info_set_format() and interlaced formats.
2014-11-19 12:55:03 +01:00
Wim Taymans 24989b53fc video-info: handle interlaced size correctly
Refactor GstVideoInfo init, make function to set default colorimetry.
Call fill_planes after we configure the GstVideoInfo with parameters
from the caps.
The size of the chroma planes for interlaced vertically subsampled
formats needs to be rounded up to 2, we have 2 fields with each
the same anount of chroma lines.
2014-11-19 12:55:03 +01:00
Wim Taymans 8f43cc67d5 video-color: return FALSE on unparsable colorimetry 2014-11-19 12:55:02 +01:00
Wim Taymans 5c043f3d50 video-format: handle unpack interlaced subsampled formats
For interlaced vertically subsampled formats the check for even lines
needs to take into account the two fields.
2014-11-19 12:55:02 +01:00
Wim Taymans 588fdeb834 video-scaler: fix interlaced shift 2014-11-19 12:55:02 +01:00
Wim Taymans ac756ba0d9 video-converter: keep a small backlog of lines
Allow lines to jump backwards slightly, usefull for interlaced content.
2014-11-19 12:55:02 +01:00
Wim Taymans b911434716 video-chroma: Fix interlaced chroma resampling
Use the interlaced flag to select the right resampler.
2014-11-19 12:55:02 +01:00
Wim Taymans d6ed383c6f video: add some more debuging 2014-11-19 12:55:02 +01:00
Wim Taymans 7d0cef3bcb video-scaler: fix interlacing some more
Use the right phase.
Take the right lines from interlaced content.
2014-11-19 12:55:02 +01:00
Wim Taymans 73349f14b9 video-converter: fix dither method 2014-11-19 12:55:02 +01:00
Wim Taymans c116da93f1 video-converter: fix some leaks
And remove some unused fields.
2014-11-19 12:55:02 +01:00
Wim Taymans cfc173e96b video-converter: add support for gamma and primaries
Keep only 1 structure with all matrix information.
Add structure to hold gamma information.
Add more options to control gamma, primaries and color matrix handling.
Add functions to compute transformations to and from XYZ and use this
to convert between primaries.
Merge gamma into the convert to and from RGB stage.
Fix border val.
Simplify the fastpath table, remove unused fields, add some more checks.
2014-11-19 12:55:02 +01:00
Wim Taymans 7c02acc544 video-color: add method to get primaries info 2014-11-19 12:55:02 +01:00
Wim Taymans 943e1319a2 video-color: fix default 601 primaries 2014-11-19 12:55:02 +01:00
Wim Taymans d03bad7761 video-scaler: fix interlaced taps setup 2014-11-19 12:55:02 +01:00
Wim Taymans c98bc6fdc6 video-color: make sRGB colorimetry the default for RGB 2014-11-19 12:55:02 +01:00
Wim Taymans 63012a07c5 video-converter: split YUV to and from RGB conversions
Prepare for doing full gamma corrected conversion and scaling by first
splitting the conversions from and to RGB into separate steps.
split scaling in downscaling and upscaling steps to be performed before
and after conversion respectively.
2014-11-19 12:55:02 +01:00
Wim Taymans f51bed2a3b video-converter: don't convert too much
because we do conversion after downscaling we only need to convert the
smallest width.
2014-11-19 12:55:02 +01:00
Wim Taymans fc5dd035fa video-converter: add orc splat functions to draw border 2014-11-19 12:55:02 +01:00
Tim-Philipp Müller 46e727ebde Revert "basetextoverlay: Fix segfault when overlay outside the frame"
This is not correct. overlay->silent is a property and we
should not just flip the property forever because one text
we render is outside of the frame. The next one might not
be, the positioning properties can be changed after all.

The lower layers should handle clipping, and now do.

This reverts commit 1cc311156c.

https://bugzilla.gnome.org/show_bug.cgi?id=738984
https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-17 09:49:54 +00:00
Tim-Philipp Müller a003423bc3 Revert "basetextoverlay: segfault when xpos >= video size"
This is not right, even if it might avoid a crash. We don't
want to just set xpos/ypos to 0 in those cases. Clipping
should be done properly, see bug #739281 for that.

This reverts commit 900d0267d5.

https://bugzilla.gnome.org/show_bug.cgi?id=738984
https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-17 09:48:42 +00:00
Tim-Philipp Müller 5339e4507a video-blend: minor optimisation
Only need to run matrix on those pixels which
will actually be used.
2014-11-16 23:26:45 +00:00
Tim-Philipp Müller dc3d68d9c2 tests: make overlay blending test slightly less boring 2014-11-16 19:28:54 +00:00
Tim-Philipp Müller 9396d843d6 video-blend: fix clipping of overlay images on the left
Fix clipping of images that are partially left of the video
surface, they would get clipped on the right side instead of
the left side, because the video unpack functions currently
ignore the x offset parameter. Work around that until that
is implemented.

https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-16 16:44:43 +00:00
Tim-Philipp Müller 2fae23c318 video-blend: fix allocation of temp src line for wide sources
Fix allocation of temporary source line buffers for source
images that are wider than the video overlay surface.
2014-11-16 16:44:36 +00:00
Tim-Philipp Müller 07f254e4b2 tests: add visual overlay composition blending test
Shows visual result of blending a logo on top of
a video surface, esp. when the logo is partially
outside of the video surface and needs to be
clipped.

https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-16 16:30:53 +00:00
Tim-Philipp Müller c61604fd9b tests: fix leak in video unit test 2014-11-16 13:56:16 +00:00
Vineeth T M 9032c12e69 video-blend: fix blending of rectangles partially or fully outside of the video
In case of overlay being completely or partially outside
the video frame, the offset calculations are not right,
which resulted in the overlay not being displayed as
expected, or crashes due to invalid memory access.

When the overlay rectangle is completely outside,
we need not render the overlay at all.

For partial display of overlay rectangles, src_yoff
was not being calculated, hence it was always clipping
the bottom half of the overlay, By calculating the
src_yoff, now the overlay is clipped properly.

https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-16 13:55:22 +00:00
Vineeth T M 7f5aa9af04 tests: video: add video blend test
Add test to check rendering of overlays of different sizes
that are completely or partially outside the video surface.
Once the overlay is blended to the video, verify if the
position of the blended overlay is as expected, by comparing
the pixels of the blended video with the expected values.

https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-16 13:51:34 +00:00
Tim-Philipp Müller f4c1da5f49 docs: update to git 2014-11-15 23:15:06 +00:00
Tim-Philipp Müller 9c5d53c7e3 docs: fix some gtk-doc warnings
Deprecated entities found in documentation for xyz:Long_description
.
2014-11-15 23:13:42 +00:00
Wim Taymans 61e84bc435 video-converter: take offset into account when unpacking
When we can directly take the input line from the source frame when
unpacking, also take into account the x offset.
2014-11-12 09:57:38 +01:00
Wim Taymans bb4863111b video-converter: add some notes 2014-11-12 09:57:12 +01:00
Wim Taymans 3112335cd6 defs: update defs and docs 2014-11-11 16:19:03 +01:00
Wim Taymans b73096ce8c video-color: add gamma encode/decode functions
Add functions to encode and decode gamma.
Add unit test to check that encode and decode are eachothers inverse
and that the limits are respected.
2014-11-11 16:11:15 +01:00
Wim Taymans 6711c50495 test: add scaling test
Sort pack and unpack performance measurements
2014-11-10 14:53:13 +01:00
Wim Taymans c5271a2eae video-orc: update disted file
and disable one failing function
2014-11-10 12:01:48 +01:00
Wim Taymans 835422b2ea videoscale: port to new API 2014-11-10 11:45:52 +01:00
Wim Taymans 70cdd9195f video-orc: use faster saturating conversions
saturating conversions are generally faster.
2014-11-10 11:45:52 +01:00
Wim Taymans dcd02cd323 video-chroma: add ORC version of UP_H2_CS
It is however slower than the C version and thus disabled.
2014-11-10 11:45:52 +01:00
Tim-Philipp Müller f73dee34e7 pbutils: add description for Apple Core Audio Format
https://bugzilla.gnome.org/show_bug.cgi?id=739840
2014-11-09 14:44:36 +00:00
Peter G. Baum 16c8856b42 typefind: recognize Apple Core Audio Format
(CAF) Specification 1.0

https://bugzilla.gnome.org/show_bug.cgi?id=739840
2014-11-09 14:42:40 +00:00
Sebastian Dröge 480e661618 capsfilter-renegotiation: Use assertions from libcheck for more information on failures 2014-11-09 10:47:14 +01:00
Wim Taymans 39662d0393 video-chroma: ORCify 2x vertical upsampling
Make an ORC version of the 2x vertical upsampling code.
Improve unit tests, test chroma up and down sampling.
memset buffer in conversion to make valgrind happy.
2014-11-07 12:13:28 +01:00