Matthew Waters
07e9374eff
webrtcbin: add support for data channels based on SCTP
...
Mostly follows the W3C specification
https://www.w3.org/TR/webrtc/#peer-to-peer-data-api
With contributions from:
Mathieu Duponchelle <mathieu@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=794351
2018-09-21 19:45:12 +10:00
Vivia Nikolaidou
ff952374b5
avwait: Start video and audio together if audio starts late
...
Also add test to meson
https://bugzilla.gnome.org/show_bug.cgi?id=796977
2018-08-17 14:57:36 +03:00
Nirbheek Chauhan
5c462b9b12
meson: Add an option for tests
...
This is needed because we don't always have gstreamer-check available,
for instance inside Cerbero on iOS.
2018-08-17 01:49:37 +05:30
Víctor Manuel Jáquez Leal
b2d5c1ed3c
check: update gitignore
2018-08-14 13:53:00 +02:00
George Kiagiadakis
8507730351
tests/check/Makefile.am: add GST_AUDIO_CFLAGS also on the planar audio adapter unit test
2018-08-03 15:24:03 +03:00
George Kiagiadakis
9cf58eb3e4
libs: audio: add new GstPlanarAudioAdapter class
...
This is a GstAdapter, but for planar audio buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=793605
2018-08-03 13:20:02 +03:00
Nirbheek Chauhan
b55dfb5313
Add feature options for almost all plugins
...
The only plugins remaining are those that haven't been ported to Meson
yet, and msdk. Also, the tests are still automagic.
https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 19:04:38 +05:30
Nirbheek Chauhan
7ef303fa28
meson: Add feature options for many plugins
...
The rest will be converted later, these are necessary for gst-build to
set options correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 18:43:52 +05:30
Vivia Nikolaidou
854baf4fdb
avwait: Add recording property
...
It works like a valve in front of the actual avwait. When recording ==
TRUE, other rules are then examined. When recording == FALSE, nothing is
passing through.
https://bugzilla.gnome.org/show_bug.cgi?id=796836
2018-07-24 13:20:59 +03:00
Jan Schmidt
0af199e25e
webrtc: Add some ssrc to caps in the unit test.
...
The unit test uses incomplete caps to test webrtcbin,
causing some weirdness generating RTX stream mappings.
https://bugzilla.gnome.org/show_bug.cgi?id=796810
2018-07-15 23:07:37 +10:00
Sebastian Dröge
be6afc6a90
tests: Make sure to provide the KEY_UNIT flag always together with the SNAP flags in seeks
...
SNAP flags alone make no sense and nowadays cause warnings.
2018-06-18 12:18:07 +03:00
Nicolas Dufresne
06f7d1f6c5
examples: Don't install non-prefixed examples
2018-06-06 14:32:56 -04:00
Nicolas Dufresne
2927a1d1ec
examples: Build waylandsink example
2018-06-06 14:31:43 -04:00
Edward Hervey
58070fa12c
gitignore: Add h265parser test
2018-06-01 08:20:21 +02:00
Tim-Philipp Müller
88fec19ba2
directfb: don't error out for warnings in system headers
...
On debian system headers trigger compiler warnings like these,
don't error out on them:
/usr/include/directfb/direct/os/linux/glibc/waitqueue.h:95:1: note: previous definition of ‘direct_waitqueue_signal’ was here
2018-05-28 10:43:37 +01:00
Mathieu Duponchelle
5c450c5992
webrtcbin: implement support for FEC and RTX
...
https://bugzilla.gnome.org/show_bug.cgi?id=795044
2018-05-09 14:46:14 +02:00
Nirbheek Chauhan
feac77ace3
meson: Update option names to omit disable_ and with- prefixes
...
Also yield common options to the outer project (gst-build in our case)
so that they don't have to be set manually.
2018-05-05 20:06:39 +05:30
Jan Schmidt
0b9517cc96
waylandsink: Only build if gtk-3.0 was built with wayland target
...
Check in configure if the gtk-3.0 has wayland support, and don't
build the waylandsink example if it doesn't.
2018-05-06 00:35:23 +10:00
Sebastian Dröge
10b7b13732
videoaggregator: Rename ignore-eos pad property to repeat-after-eos
...
What it does is to repeat the last frame forever after EOS, it does not
literally ignore EOS.
2018-05-04 16:46:00 +02:00
Tim-Philipp Müller
c2bcc2711a
meson: fix build when msdk is not found
2018-03-09 23:59:16 +00:00
Wang,Fei
1192a598ee
tests: add msdkh264enc element unit test
...
https://bugzilla.gnome.org/show_bug.cgi?id=793236
2018-03-09 10:48:11 -09:00
Tim-Philipp Müller
fd3bb44031
tests: player: disable broken test_play_media_info test
...
Until someone can be bothered to debug + fix it.
https://bugzilla.gnome.org/show_bug.cgi?id=787372
https://bugzilla.gnome.org/show_bug.cgi?id=787374
2018-03-05 19:37:52 +00:00
Guillaume Desmottes
6dd997541c
h265parser: allow partial matching on range extension profile
...
Best to return a valid profiles rather than no profile if bitstream uses
a not standard profile.
https://bugzilla.gnome.org/show_bug.cgi?id=793876
2018-03-05 13:22:12 -05:00
Guillaume Desmottes
9f25fcdfc9
h265parse: add support for 'Format range extensions profiles'
...
Those profiles have been introduced in version 2 of the HEVC spec
(A.3.5).
https://bugzilla.gnome.org/show_bug.cgi?id=793876
2018-03-05 13:22:12 -05:00
Guillaume Desmottes
d252f503fc
h265parser: decouple GstH265Profile and GstH265ProfileIDC
...
We used to have the same enum to represent H265 profiles and idc values.
Those are no longer the same with extension profiles defined from
version 2 of the spec.
Split those enums so the semantic of each is clearer and we'll be able
to add extension profiles to GstH265Profile.
Also add gst_h265_profile_tier_level_get_profile() to retrieve the
GstH265Profile from the GstH265ProfileTierLevel. It will be used to
implement the detection of extension profiles.
https://bugzilla.gnome.org/show_bug.cgi?id=793876
2018-03-05 13:19:42 -05:00
Tim-Philipp Müller
a0cc9d1af0
Remove schroedinger plugin
...
No upstream (website disappeared), no maintainer, and
pretty much a fringe format anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=776215
2018-03-01 15:24:39 +00:00
Tim-Philipp Müller
e95fb277cb
Dist compositor crossfade example and pythons script for meson build
...
And add to autotools build so it gets disted.
2018-02-15 18:51:44 +00:00
Tim-Philipp Müller
c180f8ffed
audiomixer: remove, moved to -base
...
https://bugzilla.gnome.org/show_bug.cgi?id=791218
2018-02-13 00:37:35 +00:00
Tim-Philipp Müller
e9bfb4edc2
qt: remove plugin, moved to -good
...
https://bugzilla.gnome.org/show_bug.cgi?id=754094
2018-02-12 18:48:32 +00:00
Tim-Philipp Müller
90a836bb89
gtk: remove, plugin has moved to -good
2018-02-12 15:16:37 +00:00
Matthew Waters
4ef2a20a83
dtls: add meson definition for recently added test
2018-02-08 15:29:56 +11:00
Matthew Waters
18156a76fb
tests: add a test for the dtls{enc,dec} elements
2018-02-05 17:44:33 +11:00
Matthew Waters
1894293d63
webrtcbin: an element that handles the transport aspects of webrtc connections
...
SDP's are generated and consumed according to the W3C PeerConnection API
available from https://www.w3.org/TR/webrtc/
The SDP is either created initially from the connected
sink pads/attached transceivers as in the case of generating an offer or
intersected with the connected sink pads/attached transceivers as in
the case for creating an answer. In both cases, the rtp payloaded streams
sent by the peer are exposed as separate src pads.
The implementation supports trickle ICE, RTCP muxing, reduced size RTCP.
With contributions from:
Nirbheek Chauhan <nirbheek@centricular.com>
Mathieu Duponchelle <mathieu@centricular.com>
Edward Hervey <edward@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=792523
2018-02-02 15:02:21 +11:00
Tim-Philipp Müller
92400a3b69
tests: camerabin: skip checks if we don't have encoders for the default format
...
https://bugzilla.gnome.org/show_bug.cgi?id=767863
2018-01-20 15:49:35 +00:00
Tim-Philipp Müller
e62eb34bfc
tests: ipcpipeline: fix struct initialisation warnings with clang
...
Use init macros to avoid gst-indent making a mess of it.
https://bugzilla.gnome.org/show_bug.cgi?id=787980
2018-01-17 12:06:29 +00:00
Tim-Philipp Müller
0409d7d0fa
tests: remove test that's never been ported to 1.x
2018-01-16 11:36:05 +00:00
Edward Hervey
5d8d1d359c
check: Update gitignore
2018-01-11 11:49:06 +01:00
Mathieu Duponchelle
536cb12577
audioaggregator: implement input conversion
...
https://bugzilla.gnome.org/show_bug.cgi?id=786344
2017-12-19 23:39:37 +01:00
Olivier Crête
599dd8c72c
gtk example: Fix cflags in Makefile.am
2017-12-19 16:22:52 -05:00
Tim-Philipp Müller
06e4403fdb
gl: update plugins to use GstGL from -base
2017-12-19 12:02:31 +00:00
Tim-Philipp Müller
769a21d0bb
gl: remove GStreamer OpenGL integration library and move to -base
...
https://bugzilla.gnome.org/show_bug.cgi?id=754094
2017-12-19 12:02:31 +00:00
Jun Xie
cbcc01173b
dashdemux: parse xs:dateTime's timezone indicator
...
The lexical form of xs:dateTime is YYYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]
timezone indicator (+|-)hh:mm] needs to be parsed.
https://bugzilla.gnome.org/show_bug.cgi?id=791602
2017-12-18 14:07:36 +01:00
Mathieu Duponchelle
58c374c8e2
meson test: Enable libs tests
...
https://bugzilla.gnome.org/show_bug.cgi?id=789064
2017-12-08 18:42:22 +01:00
Wonchul Lee
9667ba688e
examples: audiomixmatrix: Remove unused part
...
matrix-value-array property is removed since
18917de956
commit applied
https://bugzilla.gnome.org/show_bug.cgi?id=790836
2017-12-06 14:18:59 -05:00
Tim-Philipp Müller
d01297e115
Remove GstAggregator from -bad, moved to core
...
https://bugzilla.gnome.org/show_bug.cgi?id=739010
2017-12-02 16:14:36 +00:00
Tim-Philipp Müller
38994d4359
tests: ignore waylandsink in state change test
...
"Unexpected critical/warning: Wayland compositor is missing
the ability to scale, video display may not work properly."
2017-11-25 11:16:53 +00:00
Nicolas Dufresne
ee0212b83d
sdlshare: Destroy GL backend buffer before the GL Context
...
This was otherwise leading to a deadlock in the GL library.
2017-11-24 17:06:22 -05:00
Nicolas Dufresne
4f36f75eb1
sdlshare2: Fix race conditions
...
The client-draw callback is running on the GL Thread, which will
be required to map the buffer. Map early, and pass the mapped
frame instead. On top of that, make sure to signal any pending
draw before trying to push EOS, as some pad locks might be taken.
This is the cost of using the same thread to control GStreamer and
to render GL.
2017-11-24 16:58:21 -05:00
Nicolas Dufresne
c9e755d79e
meson: Build gl/sdl examples
2017-11-24 16:58:01 -05:00
Nicolas Dufresne
d8ee5a0c31
meson: Playout example has not GL deps
2017-11-24 15:48:19 -05:00
Nicolas Dufresne
b41f190130
meson: Add missing examples directory
...
This will make it more visible what is missing in meson.
2017-11-24 15:25:47 -05:00
Nicolas Dufresne
78a7fe013c
meson: Build playout example
2017-11-24 15:25:47 -05:00
Jan Schmidt
9a10dbe350
3dvideo example: Correct video overlay for HiDPI
...
Use the GTK scaling factor to scale the video allocation
so video displays correctly on hi-dpi screens
2017-11-24 01:37:48 +11:00
Guillaume Desmottes
d5067b42de
h264parse: put downstream caps first if possible on sink caps
...
Try prioritizing downstream's caps over upstream's if possible so the
parser can configured in "passthrough" if possible and save it from
doing useless conversions.
https://bugzilla.gnome.org/show_bug.cgi?id=790628
2017-11-22 17:38:04 +02:00
Edward Hervey
d4bf5aeae9
tests/srtp: Bump up timeout to 3mins for testcase
...
This involves generating and processing 65536 packets, let's give it
time to actually complete that.
And a bit of debug to track what's going on.
2017-11-21 15:48:06 +01:00
Matthew Waters
1cef7a261f
gl/tests: add some simple shader testing
...
Making sure that the default shaders compile and are usable
2017-11-07 15:21:43 +11:00
Matthew Waters
f8d751f7b5
gl/query: split tests and fix some corresponding issues in usage
2017-10-28 18:34:57 +11:00
Stefan Sauer
97c81b0a36
tests: comment and logging cleanups for audiomixer and aggregator
...
Remove some references to 'collectpads'. Logs pads through the object variants.
Add some more comments. Remove a left over comment.
2017-10-23 11:54:53 +02:00
Stefan Sauer
9cff4f69cb
ipcpipeline: work around gcc bug in struct initializers
...
Unfortunately we need to use an extra set of parenthesis for each data level.
For details see:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119
Affected versions are e.g.
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
which is the default on ubuntu-trusty. I looks like the fix was never
backported.
2017-10-20 10:36:36 +02:00
Jérôme Laheurte
b569ae4832
Use value instead of version macro when testing for mac OS version
...
https://bugzilla.gnome.org/show_bug.cgi?id=788404
2017-10-20 01:49:22 +11:00
Stefan Sauer
17dfaf83dc
aggregator: add two more tests for a sequence of data
...
This verifies that we handle events and queries at the head of the queue and
then buffers.
2017-10-14 18:20:30 +02:00
Stefan Sauer
9c1b85115c
aggregator: refactor the test helper
...
Make the test helpers use a queue. This lets us also test sequences of events,
queries and data.
2017-10-14 18:20:30 +02:00
Stefan Sauer
8e43094a17
aggregator: test cleanup
...
Remove gst_init() from a few tests. Use _OBJECT variants in logging. Remove
arbitrary extra blank lines. Make push_event() more like push_buffer() - set
the event to NULL and add cleanup to _chain_data_clear().
2017-10-14 18:20:30 +02:00
Nicolas Dufresne
1cf1aac9a7
meson: Define GST_USE_UNSTABLE_API in the build system
...
This way meson and autotools both do the same thing and we don't need to
modify the code after all.
2017-10-04 10:00:48 -04:00
Reynaldo H. Verdejo Pinochet
5edd068e30
Fix autotools build broken by 25dee2f2cb
...
Build fails on GST_USE_UNSTABLE_API being redefined
2017-10-03 15:27:37 -07:00
Reynaldo H. Verdejo Pinochet
0f71d2e408
Use proper GtkDoc notation for NULL/FALSE/TRUE
2017-10-03 14:35:48 -07:00
Nicolas Dufresne
f793e04db0
meson: Build tsparser example
2017-10-03 17:17:59 -04:00
Nicolas Dufresne
25dee2f2cb
tsparses: Define GST_USE_UNSTABLE_API
...
This example is entirely based on unstable API, this avoids the expected
compilation warning.
2017-10-03 17:17:50 -04:00
George Kiagiadakis
275592927b
tests/check: disable all ipcpipeline tests until I find a way to make them run reliably
2017-09-21 11:46:22 +03:00
Stefan Sauer
820cf44f7d
tests: simplify audiomixer test
...
Use _link_many() and reuse a helper to reduce the test code.
2017-09-17 10:20:09 -07:00
Edward Hervey
58a2df001c
check: Fix usage of dual probes
...
Using two (or more) probes on the same pad where one of the probe
returns HANDLED or DROP is tricky since the other probes might
not be called.
Instead use regular probes and a proper pad (the sinkpad already existed,
it only required to be activated and have a dummy chain function for
the events/buffers to be received/handled properly)
2017-09-05 14:28:54 +02:00
George Kiagiadakis
e450bba609
examples: Makefile.am: add ipcpipeline in SUBDIRS if enabled
2017-09-04 16:13:41 +03:00
George Kiagiadakis
91edec25dd
examples: ipcpipeline: get rid of yet another use of SOCK_NONBLOCK
...
https://bugzilla.gnome.org/show_bug.cgi?id=786763
2017-09-04 10:40:40 +03:00
George Kiagiadakis
4e239a6632
examples: ipcpipeline: do not use the linux-specific SOCK_NONBLOCK flag
...
Use fcntl() instead to set O_NONBLOCK, which is portable.
https://bugzilla.gnome.org/show_bug.cgi?id=786763
2017-08-31 15:09:24 +03:00
George Kiagiadakis
282b682cab
tests: ipcpipeline: provide pipe2() on systems that don't have it
...
https://bugzilla.gnome.org/show_bug.cgi?id=786763
2017-08-31 15:09:24 +03:00
George Kiagiadakis
cf1bb83d8d
tests: ipcpipeline: make the state_changes test more deterministic
...
Watching the STATE_CHANGED messages is way more deterministic than
polling the state.
https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-30 18:55:32 +03:00
George Kiagiadakis
acc2719720
tests: ipcpipeline: fix broken exclusivity checks
...
In most cases we want to stop the pipeline just once, but we have
to do this from code that runs in the streaming threads and in case
we have multiple streams, we need to make sure that we do this only
once. The previous checks were broken, this should fix it.
https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-30 18:55:32 +03:00
George Kiagiadakis
f6cc14c85a
tests: ipcpipeline: attempt to make tags test more deterministic
...
Instead of using a timeout and pushing the tags from an outside
thread, use a pad probe and push them from the streaming thread.
https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-30 18:55:32 +03:00
Philippe Normand
26760588e8
examples/gl/gtk: build fix for the 3dvideo example on macOS
2017-08-30 15:18:58 +01:00
Philippe Normand
bdcac6f435
examples/gl/gtk: fix overlay handling for macOS
...
The GTK+ window requires a NSView sub-view, not an NSWindow.
2017-08-30 15:16:39 +01:00
Tim-Philipp Müller
54d7e2811f
meson: fix build for isoff lib addition
2017-08-26 12:03:06 +01:00
Seungha Yang
98576325e3
isoff: Add parsing mss specific tfrf and tfxd boxes
...
This code is imported from mssdemux's tfxd/tfrf parsing function
https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:32 -07:00
Seungha Yang
3db9152ec6
isoff: Add parsing moov and tfdt
...
To extract isobmff level timestamp, moov and tfdt parsing is required.
https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:11 -07:00
Seungha Yang
7d06ecb3a4
isoff: Move isoff to gst-libs
...
Also rename unit test dash_isoff to isoff
https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:04 -07:00
Tim-Philipp Müller
9da2de1968
tests: ipcpipeline: skip broken tests
...
These fail on the build bots. Blacklist until someone
investigates.
https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-25 19:33:41 +01:00
Philippe Normand
8b7aa50bc9
tests/player: check for media-info-updated before duration-changed
...
The media-info-updated signal is now emitted before duration-changed since
commit 8a29da8023
.
https://bugzilla.gnome.org/show_bug.cgi?id=786201
2017-08-25 19:09:00 +01:00
Matthew Waters
63dd27a785
gl/checks: fix build
2017-08-24 01:18:40 +10:00
Matthew Waters
d8bc42fb30
glutils: fix matrix operations everywhere
...
- correct the matrix multiplication
- Use column-major matrices
- reverse order of matrix multiplications
https://bugzilla.gnome.org/show_bug.cgi?id=785980
2017-08-23 15:32:10 +10:00
Julien Isorce
2fd84a6c86
gl: do not include GL headers in public gstgl headers
...
Except for gst/gl/gstglfuncs.h
It is up to the client app to include these headers.
It is coherent with the fact that gstreamer-gl.pc does not
require any egl.pc/gles.pc. I.e. it is the responsability
of the app to search these headers within its build setup.
For example gstreamer-vaapi includes explicitly EGL/egl.h
and search for it in its configure.ac.
For example with this patch, if an app includes the headers
gst/gl/egl/gstglcontext_egl.h
gst/gl/egl/gstgldisplay_egl.h
gst/gl/egl/gstglmemoryegl.h
it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h.
Which is good because the app might want to use the gstgl api only
without the need to bother about gl headers.
Also added a test: cd tests/check && make libs/gstglheaders.check
https://bugzilla.gnome.org/show_bug.cgi?id=784779
2017-08-22 10:00:19 +01:00
Tim-Philipp Müller
dea349d9ba
tests: export symbols of parser tests helper lib and make it static
...
And only make the tests that use it link against the helper lib.
2017-08-10 09:08:03 +01:00
Tim-Philipp Müller
357fc8064a
examples: fix compiler warning in compositor crossfade example
...
warning: control reaches end of non-void function
2017-08-03 20:21:17 +01:00
Thibault Saunier
9c575243e1
tests: examples: Add a simple crossfade example
...
https://bugzilla.gnome.org/show_bug.cgi?id=784827
2017-08-03 13:01:50 -04:00
George Kiagiadakis
30f5abc32c
ipcpipeline: move to sys/ and make it dependent on platform support for unix sockets
2017-08-02 10:40:24 +03:00
George Kiagiadakis
e97877dc7e
tests/examples: add manual tests/examples for the ipcpipeline elements
...
ipcpipeline1 is a very simple test that shows a short videotestsrc fragment.
ipc-play is a clone of gst-play that splits the pipeline in two
processes, running the source & demuxer on the master process
and the decoders & sinks on the slave.
2017-08-01 14:43:06 +03:00
George Kiagiadakis
35a01f41ce
tests/check: add automatic unit test suite for the ipcpipeline elements
...
All tests run within a common framework for splitting processes
and making them interract properly with the gst check system.
2017-08-01 14:43:06 +03:00
Stefan Sauer
b5a5f75b44
tests: audiomixer: set all properties at once
2017-07-15 21:28:38 +02:00
Stefan Sauer
c06c67746b
tests: audiomixer: use the buffer helper for other tests too
2017-07-15 19:34:15 +02:00
Stefan Sauer
5b4d907709
audiomixer: add a helper for buffer creation
...
This makes the test setup easier to read.
2017-07-14 08:09:25 +02:00
Stefan Sauer
f3bcf65f92
audiomixer: use test helper once more
2017-07-13 22:02:17 +02:00
Stefan Sauer
636cce13b9
audiomixer: more test cleanups
...
Port over the test helpers from the adder tests.
2017-07-10 21:08:09 +02:00