Commit graph

1164 commits

Author SHA1 Message Date
Nicolas Dufresne
7a40442ad5 video: Add VYUY pixel format
This format is sometimes the output of JPEG decoders. It is the same as
YUY2 and UYVY but with a different component order.

https://bugzilla.gnome.org/show_bug.cgi?id=767450
2016-11-01 19:55:20 +02:00
Nirbheek Chauhan
2d3af07c3d Revert "meson: move gstreamer-check-1.0 dependency to tests/check"
This reverts commit e3c7c17b9b.

Does not actually work. See:
https://bugzilla.gnome.org/show_bug.cgi?id=773114#c31
2016-10-25 11:46:38 +05:30
Tim-Philipp Müller
9ccd144421 meson: fix build outside of gst-all
Unknown variable "apiversion".
2016-10-24 00:28:27 +01:00
Scott D Phillips
e3c7c17b9b meson: move gstreamer-check-1.0 dependency to tests/check 2016-10-21 05:36:12 -03:00
Stian Selnes
92392a4733 videodecoder: Default caps sets format I420
Also the format must be fixed on the default raw caps. If not
gst_video_info_from_caps() will fail and
gst_video_decoder_negotiate_default_caps() return FALSE.

The test simulates the use case where a gap event is received before
the first buffer causing the decoder to fall back to the default caps.

https://bugzilla.gnome.org/show_bug.cgi?id=773103
2016-10-20 14:11:48 +03:00
Stefan Sauer
45ae36817b tests: add another check for buffer clipping and improve tests
Add a test that check that we handle time ranges (a range of time that maps to
the same sample).
Also update the other tests to use our check api to compare int64 values to get
better output on failure.
2016-10-15 22:52:32 +02:00
Stefan Sauer
dc92affdf3 tests: clipping in TIME does not use the offset
Simplify the test and test only what need to be tested.
2016-10-15 22:52:32 +02:00
Stefan Sauer
f625444b28 tests: cleanup libs/audio test
Split large tests into small tests and name them specifically. Use helpers to
avoid repetition. Make sure the order in the file is the same as we add the to
the suite.
2016-10-15 21:32:33 +02:00
Thibault Saunier
558172d418 meson: Make use of new environment object and set plugin path to builddir
Workaround source_root being the root directory of all projects
in the subproject case.
Remove now unneeded getpluginsdir and define c++ tests in the same loop.

Bump meson requirement to 0.35
2016-10-14 17:37:16 +02:00
Jimmy Ohn
6335a074e2 opusdec: Fix memory leak in test code
gst_caps_to_string function returned allocated memory.
So, It should be free using g_free function.

https://bugzilla.gnome.org/show_bug.cgi?id=772500
2016-10-06 13:29:22 +03:00
Jimmy Ohn
fdefa9c1ad videorate: Fix memory leakage in test code
gst_caps_to_string function returned allocated memory.
So, It should be free using g_free function.

https://bugzilla.gnome.org/show_bug.cgi?id=772501
2016-10-06 13:27:42 +03:00
Thibault Saunier
d00aa0c1ad meson: Setup pre commit hook and fix getpluginsdir for standalone case 2016-09-30 12:46:34 -03:00
Tim-Philipp Müller
fb22d542d6 tests: playbin-complex test needs oggdemux 2016-09-25 22:20:32 +01:00
Tim-Philipp Müller
d9da603db6 tests: videotimecode: fix floating point comparisons
Comparing floats for equality is not necessarily going to
work reliably, so use fail_unless_equals_float() for this.
Test would fail on x86 (Intel Atom x5-Z8300).
2016-09-25 22:20:27 +01:00
Tim-Philipp Müller
7c0ec13942 tests: adder: disable racy flush_start_flush_stop test
It's been broken for years, and it's unlikely it will ever
be fixed for collectpads/adder now that there's audiomixer
which works fine. So let's disable it, since all it does
is that it creates noise that distracts from other failures.

https://bugzilla.gnome.org/show_bug.cgi?id=708891
2016-09-25 16:22:47 +01:00
Tim-Philipp Müller
3baa1d655c tests: videoscale: split test into multiple ones
The videoscale test takes eternities to run, that's not
great. Split the test into multiple ones. That way they
can be run in parallel. Reduces time to run all tests in
-base from 29 secs to 12 secs when using meson/ninja.
2016-09-10 10:10:05 +01:00
Thibault Saunier
81ccca7538 meson: Raise test timeout to 3 minutes
The videoscale testsuite (with 50 tests) last almost 2 minutes here
2016-09-09 08:57:11 -03:00
Nicolas Dufresne
afaa3f1380 video/test: Coding style fix 2016-09-07 14:24:54 -04:00
Thibault Saunier
acd047db15 meson: Properly find where GStreamer plugins are when using subprojects
And fix building with meson 0.34
2016-09-05 18:20:35 -03:00
Josep Torra
f70aa5b033 build: silence error about pthread for 'make check' in osx
Fixes "clang: error: argument unused during compilation: '-pthread'"
2016-08-26 21:01:40 +02:00
Xabier Rodriguez Calvar
0341f04ce1 videodirection: interface for rotation and flip
A GstVideoOrientationMethod enumeration is also provided for the
admitted property values.

https://bugzilla.gnome.org/show_bug.cgi?id=768687
2016-08-25 10:19:13 +03:00
Nirbheek Chauhan
5c4f4ac1bd Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson

With contributions from:

Tim-Philipp Müller <tim@centricular.com>
Jussi Pakkanen <jpakkane@gmail.com> (original port)

Highlights of the features provided are:
* Faster builds on Linux (~40-50% faster)
* The ability to build with MSVC on Windows
* Generate Visual Studio project files
* Generate XCode project files
* Much faster builds on Windows (on-par with Linux)
* Seriously fast configure and building on embedded

... and many more. For more details see:

http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html

Building with Meson should work on both Linux and Windows, but may
need a few more tweaks on other operating systems.
2016-08-20 11:09:51 +01:00
Tim-Philipp Müller
9cbdaa8c27 tests: ignore new videotimecode test binary 2016-08-20 11:01:04 +01:00
Vivia Nikolaidou
ab35d7394e videotimecode: Added support for SMPTE time code metadata
Can be attached as GstMeta into a video frame.

https://bugzilla.gnome.org/show_bug.cgi?id=766419
2016-08-04 18:59:40 +03:00
Tim-Philipp Müller
5044bf79ae Add more files to .gitignore 2016-07-23 14:42:30 +01:00
Tim-Philipp Müller
ffa9f04bb2 tests: appsink: add minimal test for new pull with timeout functions
https://bugzilla.gnome.org/show_bug.cgi?id=768852
2016-07-18 17:26:26 +01:00
Guillaume Desmottes
54e4551cd8 videoscale: fix bus leak in test
gst_bus_add_signal_watch() takes a ref on the bus which should be
released using gst_bus_remove_signal_watch().

https://bugzilla.gnome.org/show_bug.cgi?id=768718
2016-07-12 13:12:19 +03:00
Seungha Yang
50f74daa2f appsrc: Remove trailing whitespace
https://bugzilla.gnome.org/show_bug.cgi?id=768510
2016-07-11 09:54:11 +03:00
Tim-Philipp Müller
d3d2e8b94a tests: discoverer: handle missing ogg/codec plugins gracefully
https://bugzilla.gnome.org/show_bug.cgi?id=767859
2016-06-21 18:04:23 +01:00
Sebastian Dröge
26f63db498 discoverer: Only allow serializing OK discoverer infos to GVariants
They will be incomplete otherwise and we can't generate the full serialized
information, and instead will crash somewhere on the way.

https://bugzilla.gnome.org/show_bug.cgi?id=767859
2016-06-21 10:24:15 +03:00
Mikhail Fludkov
27e7ca3389 opusdec: test for PLC timestamp when FEC is enabled. 2016-06-16 11:01:06 +01:00
Mikhail Fludkov
8d4f79b640 audiodecoder: fix invalid timestamps when PLC and delay
Elements inherited from GstAudioDecoder, supporting PLC and introducing
delay produce invalid timestamps. Good example is opusdec with in-band FEC
enabled. After receiving GAP event it delays the audio concealment until
the next buffer arrives. The next buffer will have DISCONT flag set which
will make GstAudioDecoder to reset it's internal state, thus forgetting
the timestamp of GAP event. As a result the concealed audio will have the
timestamp of the next buffer (with DISCONT flag) but not the timestamp
from the event.
2016-06-16 11:01:04 +01:00
Paulo Neves
5dd720e064 exiftag: Increase serialized geo precision
The serialization of double typed geographical
coordinates to DMS system supported by the exif
standards was previously truncated without need.

The previous code truncated the seconds part of
the coordinate to a fraction with denominator
equal to 1 causing a bug on the deserialization
when the test for the coordinate to be serialized
was more precise.

This patch applies a 10E6 multiplier to the numerator
equal to the denominator of the rational number.

Eg. Latitude = 89.5688643 Serialization

DMS Old code = 89/1 deg, 34/1 min, 7/1 sec
DMS New code = 89/1 deg, 34/1 min, 79114800UL/10000000UL

Deserialization

DMS Old code = 89.5686111111
DMS New code = 89.5688643

The new test tries to serialize a higher precision
coordinate.

The types of the coordinates are also guint32 instead
of gint like previously. guint32 is the type of the
fraction components in the exif.

https://bugzilla.gnome.org/show_bug.cgi?id=767537
2016-06-13 09:29:52 +03:00
Stian Selnes
1335ccd228 video-color: Fix colorimetry IS_UNKNOWN
Fix issue with colorimetry default indicies not being in sync with the
actual table causing IS_UNKNOWN() to sometimes fail.

https://bugzilla.gnome.org/show_bug.cgi?id=767163
2016-06-02 17:14:50 +01:00
Joan Pau Beltran
abb88801e7 video: add IYU2 format
This existed in 0.10 and is needed by dc1394src.

IYU2 format is a YUV fully-sampled packed format similar to v308
but with different component order (U-Y-V instead of Y-U-V).

http://www.fourcc.org/yuv.php#IYU2

https://bugzilla.gnome.org/show_bug.cgi?id=763026#c5
2016-06-01 12:07:05 +01:00
Tim-Philipp Müller
ece702920f tests: playbin: add test for new "element-setup" signal
https://bugzilla.gnome.org/show_bug.cgi?id=578933
2016-05-16 09:52:35 +01:00
Tim-Philipp Müller
9ed483e33b tests: playsink: add minimal test for playsink element
Attempt to reproduce leak.

https://bugzilla.gnome.org/show_bug.cgi?id=755867
2016-05-14 16:02:16 +01:00
Guillaume Desmottes
1b2f9f2c3f vorbistag: fix buffer leaks in tests
It internally uses gst_check_chain_func() so we
should call gst_check_drop_buffers() when tearing down tests to free
the buffers which have been exchanged through the pipeline.

https://bugzilla.gnome.org/show_bug.cgi?id=766226
2016-05-14 10:47:33 +03:00
Guillaume Desmottes
c6eb9df930 appsrc: fix buffer leaks in tests
It internally uses gst_check_chain_func() so we
should call gst_check_drop_buffers() when tearing down tests to free
the buffers which have been exchanged through the pipeline.

https://bugzilla.gnome.org/show_bug.cgi?id=766226
2016-05-14 10:47:33 +03:00
Guillaume Desmottes
e17299290a audiorate: fix buffer leaks in tests
It internally uses gst_check_chain_func() so we
should call gst_check_drop_buffers() when tearing down tests to free
the buffers which have been exchanged through the pipeline.

https://bugzilla.gnome.org/show_bug.cgi?id=766226
2016-05-14 10:47:33 +03:00
Thiago Santos
60c765174f opusdec: intersect with the filter before returning on getcaps
So upstream gets a smaller set to decide upon as it is what it requested
with the filter

https://bugzilla.gnome.org/show_bug.cgi?id=765684
2016-05-02 14:29:25 -03:00
Thiago Santos
7a5797d3a6 opusdec: improve getcaps to return all possible rates
The library is capable of converting to different rates.

Includes tests.

https://bugzilla.gnome.org/show_bug.cgi?id=765684
2016-05-02 14:29:25 -03:00
Thiago Santos
8375ed7763 tests: opus: remove apparently useless macro in tests 2016-05-02 14:23:54 -03:00
Aurélien Zanelli
928bb3b6f4 exiftag: handle GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM tag
This tag match the EXIF_TAG_FOCAL_LENGTH_IN_35_MM_FILM exif tag and is
stored on a short. Hence there is a precision loss compared to the
GstTag which is a double value.

https://bugzilla.gnome.org/show_bug.cgi?id=753930
2016-04-28 12:13:15 -03:00
Tim-Philipp Müller
694423fd3c tests: vorbisenc: fix with CK_FORK=no 2016-04-19 14:18:07 +01:00
Tim-Philipp Müller
f05ea1e6a6 tests: libscpp: test RTP/RTCP buffer init macros with C++ compiler 2016-04-06 17:57:28 +01:00
Mikhail Fludkov
7a206336dd rtpbasedepayload: look at ssrc before sequence numbers
Doing so prevents us dropping buffers in the rare, but possible, situations,
when the stream changes SSRC and new sequence numbers does not differ
much from the last sequence number from previous SSRC. For example:
ssrc - 0xaaaa 101,102,103,104 ssrc - 0xbbbb 102, 103, 104, 105...
In the scenario above we don't want to drop the first 3 packets of
0xbbbb stream.

https://bugzilla.gnome.org/show_bug.cgi?id=764459
2016-04-03 11:49:16 +03:00
Tim-Philipp Müller
778589cd5b test: fix indentation 2016-03-30 22:41:54 +01:00
Jan Schmidt
fd2a14144a subparse: WebVTT parsing support
WebVTT is a new subtitle format for HTML5 video. In this first
version of the parser the cue settings are parsed but only stored in
the internal parser state structure. Later on these settings could be
part of the GstBuffer metadata.

https://bugzilla.gnome.org/show_bug.cgi?id=629764
2016-03-25 00:58:42 +11:00
Vineeth TM
44b70ca3a1 base: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763075
2016-03-24 14:25:41 +02:00