Tim-Philipp Müller [Sun, 16 Nov 2014 01:34:09 +0000 (01:34 +0000)]
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
Tim-Philipp Müller [Sun, 16 Nov 2014 01:32:55 +0000 (01:32 +0000)]
tests: fix leak in video unit test
Vineeth T M [Mon, 10 Nov 2014 11:06:35 +0000 (16:36 +0530)]
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
Vineeth T M [Mon, 10 Nov 2014 06:42:42 +0000 (12:12 +0530)]
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
Tim-Philipp Müller [Sat, 15 Nov 2014 23:15:06 +0000 (23:15 +0000)]
docs: update to git
Tim-Philipp Müller [Sat, 15 Nov 2014 23:13:42 +0000 (23:13 +0000)]
docs: fix some gtk-doc warnings
Deprecated entities found in documentation for xyz:Long_description
.
Wim Taymans [Wed, 12 Nov 2014 08:57:38 +0000 (09:57 +0100)]
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.
Wim Taymans [Wed, 12 Nov 2014 08:57:12 +0000 (09:57 +0100)]
video-converter: add some notes
Wim Taymans [Tue, 11 Nov 2014 15:19:03 +0000 (16:19 +0100)]
defs: update defs and docs
Wim Taymans [Tue, 11 Nov 2014 15:11:15 +0000 (16:11 +0100)]
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.
Wim Taymans [Mon, 10 Nov 2014 13:53:13 +0000 (14:53 +0100)]
test: add scaling test
Sort pack and unpack performance measurements
Wim Taymans [Mon, 10 Nov 2014 11:01:48 +0000 (12:01 +0100)]
video-orc: update disted file
and disable one failing function
Wim Taymans [Fri, 24 Oct 2014 15:08:43 +0000 (17:08 +0200)]
videoscale: port to new API
Wim Taymans [Mon, 10 Nov 2014 10:40:11 +0000 (11:40 +0100)]
video-orc: use faster saturating conversions
saturating conversions are generally faster.
Wim Taymans [Fri, 7 Nov 2014 14:45:04 +0000 (15:45 +0100)]
video-chroma: add ORC version of UP_H2_CS
It is however slower than the C version and thus disabled.
Tim-Philipp Müller [Sun, 9 Nov 2014 14:44:36 +0000 (14:44 +0000)]
pbutils: add description for Apple Core Audio Format
https://bugzilla.gnome.org/show_bug.cgi?id=739840
Peter G. Baum [Sun, 9 Nov 2014 11:53:32 +0000 (12:53 +0100)]
typefind: recognize Apple Core Audio Format
(CAF) Specification 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=739840
Sebastian Dröge [Sun, 9 Nov 2014 09:47:14 +0000 (10:47 +0100)]
capsfilter-renegotiation: Use assertions from libcheck for more information on failures
Wim Taymans [Fri, 7 Nov 2014 11:06:10 +0000 (12:06 +0100)]
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.
William Manley [Thu, 6 Nov 2014 14:14:22 +0000 (14:14 +0000)]
tcpserversink: Don't leak a `GSocket` and a `GInetSocketAddress`
when accepting a connection.
Discovered by `make check-valgrind` with the new `socketintegrationtest`.
https://bugzilla.gnome.org/show_bug.cgi?id=739544
William Manley [Mon, 3 Nov 2014 01:08:27 +0000 (01:08 +0000)]
tests: Add TCP pipelines test
There don't seem to be any unit tests for the socket handling elements. As
I am about to attempt some refactorings I've added some basic tests which
exercise some of the happy-paths in tcpclientsrc, tcpserversrc,
tcpserversink and tcpclientsink. They should let me know if I've caused
serious breakage.
They are far from exhaustive but are sufficient for me to have caught a few
memory-leaks in the existing code.
https://bugzilla.gnome.org/show_bug.cgi?id=739544
Wim Taymans [Thu, 6 Nov 2014 17:18:50 +0000 (18:18 +0100)]
tests: add video conversion test
Go through all conversions and make a list of performance.
Wim Taymans [Thu, 6 Nov 2014 17:13:12 +0000 (18:13 +0100)]
video-info: use h-cosited chroma for HD video by default
Wim Taymans [Thu, 6 Nov 2014 17:09:04 +0000 (18:09 +0100)]
video-converter: clamp lines
Wim Taymans [Thu, 6 Nov 2014 15:29:16 +0000 (16:29 +0100)]
video-orc: update disted files
Wim Taymans [Thu, 6 Nov 2014 15:18:25 +0000 (16:18 +0100)]
video-converter: ORCify 8<->16 conversion
Wim Taymans [Thu, 6 Nov 2014 14:30:02 +0000 (15:30 +0100)]
video-converter: unpack into the destination when needed
Make sure we write into the destination line when we can propose the
dest allocator.
Wim Taymans [Thu, 6 Nov 2014 14:29:50 +0000 (15:29 +0100)]
video-converter: add more debug
Sebastian Dröge [Thu, 6 Nov 2014 14:01:27 +0000 (15:01 +0100)]
video: Update disted orc files
Wim Taymans [Thu, 6 Nov 2014 12:08:42 +0000 (13:08 +0100)]
video-chroma: optimize chroma subsampling a little
Combine multiplies in 4x filters.
Rename conversion functions to make them nicer in orc.
Add ORC versions for various downsampling algorithms
Add unit test chroma resampler
Wim Taymans [Thu, 6 Nov 2014 09:43:11 +0000 (10:43 +0100)]
tests: make pack/unpack test
Make a more complete pack/unpack test, check if the image after
pack/unpack has the same color and precision, and has correctly
duplicated subsampled pixels.
Wim Taymans [Thu, 6 Nov 2014 09:42:09 +0000 (10:42 +0100)]
tests: get the correct number of video formats
Make a method to get the number of formats (including the last one).
Wim Taymans [Thu, 6 Nov 2014 08:44:14 +0000 (09:44 +0100)]
video-format: update some docs and add a FIXME(2.0)
Wim Taymans [Thu, 6 Nov 2014 08:38:06 +0000 (09:38 +0100)]
video-format: add range extension to BGR_10XE format
Wim Taymans [Thu, 6 Nov 2014 08:34:59 +0000 (09:34 +0100)]
video-format: fix pack of 4:2:0 formats
When packing 4:2:0 formats, we need to take the chroma from the even
lines, for the odd lines we only take luminance.
Wim Taymans [Thu, 6 Nov 2014 08:32:21 +0000 (09:32 +0100)]
video-format: fix range extension of UYVP
We need to shift the top 6 bits to the lower 6 bits
Wim Taymans [Thu, 6 Nov 2014 08:28:06 +0000 (09:28 +0100)]
video-chroma: do h subsampling after v subsampling
We only need to do the horizontal subsampling on 1 line if we do it
after vertical subsampling and we also avoid doing vertical subsampling
on unused pixels.
Tim-Philipp Müller [Thu, 6 Nov 2014 09:39:08 +0000 (09:39 +0000)]
tests: dist header file needed for ABI checks on powerpc32
Fixes 'make check' on debian powerpc32 buildbot:
libs/libsabi.c:95:26: fatal error: struct_ppc32.h: No such file or directory
Danny Song [Tue, 4 Nov 2014 19:34:44 +0000 (04:34 +0900)]
test : fix leaks in adder unit test
https://bugzilla.gnome.org/show_bug.cgi?id=739640
Wim Taymans [Wed, 5 Nov 2014 10:54:31 +0000 (11:54 +0100)]
video-converter: keep separate lines with border
Make separate with a border around them so that we can avoid a memcpy.
Wim Taymans [Wed, 5 Nov 2014 10:52:21 +0000 (11:52 +0100)]
video-scaler: avoid memcpy when not needed
Wim Taymans [Wed, 5 Nov 2014 10:51:44 +0000 (11:51 +0100)]
video-converter: pass output line correctly
Wim Taymans [Tue, 4 Nov 2014 08:30:45 +0000 (09:30 +0100)]
video-converter: rework the converter to allow more optimizations
Rework the converter, keep track of the conversion steps by chaining the
cache objects together. We can then walk the chain and decide the
optimal allocation pattern.
Remove the free function, we're not going to need this anytime soon.
Keep track of what output line we're constructing so that we can let the
allocator return a line directly into the target image when possible.
Directly read from the source pixels when possible.
Wim Taymans [Tue, 4 Nov 2014 10:03:50 +0000 (11:03 +0100)]
video-scaler: fix temp line allocation
We need to allocate the templine with the amount of pixels we are going
to handle, which we only know for the vertical resampler when we are
asked to resample.
Wim Taymans [Tue, 4 Nov 2014 10:02:49 +0000 (11:02 +0100)]
video-scaler: fix taps in interlaced mode
Wim Taymans [Tue, 4 Nov 2014 10:01:52 +0000 (11:01 +0100)]
video-scaler: fix phases in interlaced mode
Wim Taymans [Tue, 4 Nov 2014 08:29:58 +0000 (09:29 +0100)]
video-orc: fix v_2tap_u16
Wim Taymans [Mon, 3 Nov 2014 15:18:41 +0000 (16:18 +0100)]
video-converter: add extra pixels for the border
We need extra pixels for the border.
Wim Taymans [Mon, 3 Nov 2014 14:36:26 +0000 (15:36 +0100)]
video-scaler: add support for 16bits formats
Add scaler functions for 16 bits formats.
Rename the scaler functions so that 16bits versions don't look too
weird.
Remove old unused h_2tap functions
Fix v_ntap functions, it was using 1 tap too little.
Wim Taymans [Mon, 3 Nov 2014 14:33:24 +0000 (15:33 +0100)]
video-converter: Add support for 16 bits formats
Rework the way we track the current state of the video through the
different conversion phases and use this to make sure we use the right
format and pstride where needed.
William Manley [Wed, 22 Oct 2014 12:37:40 +0000 (13:37 +0100)]
docs: gst_dmabuf_allocator_alloc: Improve documentation
https://bugzilla.gnome.org/show_bug.cgi?id=739545
Wim Taymans [Mon, 3 Nov 2014 09:07:56 +0000 (10:07 +0100)]
video-orc: comment out unused function
A faster version of 4tap horizontal scaling causes segfaults in ORC
presumably because it uses too many registers so disable it to avoid
crashing in the ORC tests.
Andreas Frisch [Sun, 2 Nov 2014 20:45:30 +0000 (21:45 +0100)]
subtitleoverlay: return available factory CAPS instead of ANY on CAPS query
https://bugzilla.gnome.org/show_bug.cgi?id=739536
Sebastian Dröge [Mon, 3 Nov 2014 07:12:44 +0000 (08:12 +0100)]
video-scaler: Fix compiler warning
video-scaler.c:151:58: error: implicit conversion from enumeration type
'GstVideoScalerFlags' to different enumeration type
'GstVideoResamplerFlags' [-Werror,-Wenum-conversion]
gst_video_resampler_init (&scale->resampler, method, flags, out_size,
~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~
Luis de Bethencourt [Sat, 1 Nov 2014 20:08:01 +0000 (20:08 +0000)]
rtp: Do not use deprecated gtk-doc 'Rename to' tag
GObject introspection GTK-Doc tag "Rename to" has been deprecated, changing to
rename-to annotation.
https://bugzilla.gnome.org/show_bug.cgi?id=739514
Tim-Philipp Müller [Sat, 1 Nov 2014 14:58:13 +0000 (14:58 +0000)]
video: fix some g-i / gtk-doc warnings
Tim-Philipp Müller [Sat, 1 Nov 2014 14:47:26 +0000 (14:47 +0000)]
video: update disted orc backup functions
Fixes build without orc.
Tim-Philipp Müller [Sat, 1 Nov 2014 14:28:55 +0000 (14:28 +0000)]
video: add video blend helper functions to docs
I don't think those were ever meant to be made public,
but they are, so we might as well document them.
Wim Taymans [Sat, 1 Nov 2014 12:14:32 +0000 (13:14 +0100)]
video-scaler: ORCify vertical ntap function
Wim Taymans [Sat, 1 Nov 2014 11:58:01 +0000 (12:58 +0100)]
video-scaler: handle 4tap interlaced
Wim Taymans [Fri, 31 Oct 2014 15:53:06 +0000 (16:53 +0100)]
video-orc: update dist files
Wim Taymans [Fri, 31 Oct 2014 15:49:43 +0000 (16:49 +0100)]
video-scaler: add ORC optimized ntap horizontal scalers
Ravi Kiran K N [Wed, 29 Oct 2014 10:58:28 +0000 (16:28 +0530)]
tests/playback: quit from main loop
Listen for eos and error signal to quit main loop.
https://bugzilla.gnome.org/show_bug.cgi?id=739346
Ravi Kiran K N [Wed, 29 Oct 2014 10:56:07 +0000 (16:26 +0530)]
tests/playback: correct state change checking
Correct the test apps check if result of state change is not failure as the
state change can happen async
https://bugzilla.gnome.org/show_bug.cgi?id=739346
Jan Schmidt [Fri, 31 Oct 2014 11:52:43 +0000 (22:52 +1100)]
video: Update disted orc files for new functions.
Fixes the build when building without ORC
Wim Taymans [Fri, 31 Oct 2014 10:07:06 +0000 (11:07 +0100)]
video-converter: align offsets to subsampling
Only apply an offset that is a multiple of the subsampling. To handle
arbitrary offsets in the future, we need to be able to chroma-resample
part of the borders.
Wim Taymans [Fri, 31 Oct 2014 09:38:15 +0000 (10:38 +0100)]
video-converter: clamp output lines
Wim Taymans [Fri, 31 Oct 2014 09:34:46 +0000 (10:34 +0100)]
video-format: add alignment checks
Some of the ORC functions need specific alignment
Wim Taymans [Fri, 31 Oct 2014 09:33:42 +0000 (10:33 +0100)]
video-scaler: fix offset check
Wim Taymans [Thu, 30 Oct 2014 17:41:01 +0000 (18:41 +0100)]
video-converter: also chroma up/downsample when scaling
Wim Taymans [Thu, 30 Oct 2014 17:40:43 +0000 (18:40 +0100)]
video-converter: clamp input lines correctly
Tim-Philipp Müller [Thu, 30 Oct 2014 23:53:39 +0000 (23:53 +0000)]
video-scaler: fix build without orc
https://bugzilla.gnome.org/show_bug.cgi?id=739433
Wim Taymans [Thu, 30 Oct 2014 16:30:33 +0000 (17:30 +0100)]
video-converter: add border color
Wim Taymans [Thu, 30 Oct 2014 15:57:20 +0000 (16:57 +0100)]
video-converter: add support for src/dest regions
Add support for cropping the source and placing the converted image
into a rectangle in the destination frame.
Add an option to add a border and border color.
Vincent Penquerc'h [Thu, 5 Jun 2014 13:50:15 +0000 (14:50 +0100)]
vorbisenc: push an updated segment stop time when we know it
When encoding, libvorbis will tell us how many samples are encoded
in the buffer it returns. This number may be less than the maximum
of samples in the block, if this is the last packet. In we have no
segment end time, we set it to the end time of that last sample to
tell downstream that the buffer contains less samples.
Vincent Penquerc'h [Thu, 5 Jun 2014 13:54:31 +0000 (14:54 +0100)]
oggmux: set correct granpos on last page when samples are clipped
Samples may be clipped at the end, and this is conveyed by a
granulepos that's smaller than it would otherwise be. Use the
segment stop time to detect this, and calculate the right
granulepos.
Vincent Penquerc'h [Thu, 5 Jun 2014 10:26:08 +0000 (11:26 +0100)]
oggdemux: fix last buffer timestamp when samples are clipped
The end of a stream can be clipped by setting the granulepos of
the last page to a lower value that it otherwise would be.
Wim Taymans [Thu, 30 Oct 2014 13:48:45 +0000 (14:48 +0100)]
tests: fix test
Vincent Penquerc'h [Fri, 3 Oct 2014 11:42:46 +0000 (12:42 +0100)]
gst-discoverer: error out on failure to copy
This should not really fail, but let's check return value
anyway as it guards against future changes.
Coverity 1135731
Vincent Penquerc'h [Fri, 3 Oct 2014 11:28:30 +0000 (12:28 +0100)]
rtpbuffer: add a const where appropriate
Vincent Penquerc'h [Fri, 3 Oct 2014 11:08:05 +0000 (12:08 +0100)]
typefind: remove unneeded test
We've already bailed out if we have less than 5 bytes.
Coverity 1226441
Tim-Philipp Müller [Thu, 30 Oct 2014 11:33:17 +0000 (11:33 +0000)]
Update libgstvideo.def for resampler -> video_resample renaming
Wim Taymans [Thu, 30 Oct 2014 10:46:14 +0000 (11:46 +0100)]
video-scaler: add more ORC functions
Add the old ORC functions for nearest and linear. Label them as Low
quality because they are not as accurate but ORC lacks opcodes to
express this for now.
Wim Taymans [Thu, 30 Oct 2014 10:43:52 +0000 (11:43 +0100)]
video-scaler: rename resampler to video-resampler
Prefix the resampler with video-. It we would like to reuse the
resampler for audio later, we can copy/move it and deprecate this
one.
Wim Taymans [Wed, 29 Oct 2014 16:38:33 +0000 (17:38 +0100)]
video-scaler: remove color range argument
We just need to clip to the format limits, if there is extra headroom in
the range we can use that without problems.
Wim Taymans [Wed, 29 Oct 2014 16:14:51 +0000 (17:14 +0100)]
defs: update defs
Wim Taymans [Wed, 29 Oct 2014 15:20:56 +0000 (16:20 +0100)]
video-scaler: add ORC optimized versions
Add ORC optimized versions of 2 and 4tap vertical scaling. Provide
a high quality 12 bits and a low quality 6 bits version.
Wim Taymans [Wed, 29 Oct 2014 15:13:02 +0000 (16:13 +0100)]
video-scaler: add precision to make_s16_taps
Wim Taymans [Wed, 29 Oct 2014 12:19:00 +0000 (13:19 +0100)]
video-converter: copy config fields
When setting a new config, copy all the fields into our own config and
not only the ones we know about.
Wim Taymans [Wed, 29 Oct 2014 12:17:39 +0000 (13:17 +0100)]
resampler: make offset/phase/n_taps uint32
Make various resizer fields uint32 so that we can use them in ORC
functions later.
Wim Taymans [Mon, 27 Oct 2014 10:59:14 +0000 (11:59 +0100)]
video-converter: don't convert too much
Always convert the smallest width.
Wim Taymans [Mon, 27 Oct 2014 09:13:47 +0000 (10:13 +0100)]
resampler: make shift easier to use
Wim Taymans [Sun, 26 Oct 2014 04:58:56 +0000 (05:58 +0100)]
resampler: add parameters to cubic filter
Improve cubic filter and add parameters. Switch to mitchell filter
by default.
Wim Taymans [Fri, 24 Oct 2014 14:51:37 +0000 (16:51 +0200)]
video-scaler: add extra options
Wim Taymans [Fri, 24 Oct 2014 14:42:11 +0000 (16:42 +0200)]
video-converter: define some options
Wim Taymans [Fri, 24 Oct 2014 14:23:53 +0000 (16:23 +0200)]
resampler: add some options
Wim Taymans [Fri, 24 Oct 2014 13:42:31 +0000 (15:42 +0200)]
resampler: limit max number of taps
Don't use more taps than the input size.
Wim Taymans [Fri, 24 Oct 2014 13:28:22 +0000 (15:28 +0200)]
video-converter: add scaling support
Add scaling support for the video-converter object
Wim Taymans [Fri, 24 Oct 2014 13:25:33 +0000 (15:25 +0200)]
video-scaler: add video scaler helper object
Add a video scaler object build on top of the resampler. It has
implementation to deal with interlaced video as well as horizontal and
vertical scaling functions.
Wim Taymans [Fri, 24 Oct 2014 11:01:12 +0000 (13:01 +0200)]
video: add generic resampler
Add an object that can generate a set of resample filter coefficients.