Commit graph

1854 commits

Author SHA1 Message Date
Matthew Waters
30194cc368 qt: add support for building on osx/ios
Including:
- Necessary configure checks
- Necessary compile time platform checks
- Necessary runtime qt iOS/OSX platform detection

https://bugzilla.gnome.org/show_bug.cgi?id=755100
2015-10-02 22:29:45 +10:00
Matthew Waters
b1d13e10af Add Nvidia based hardware encoder element
Currently only h264 is supported

https://bugzilla.gnome.org/show_bug.cgi?id=753405
2015-09-29 15:32:17 +10:00
Stefan Sauer
a198e55b31 Revert "midi: add an ALSA MIDI sequencer source"
This reverts commit cd7f4e5247.
2015-09-28 15:31:08 +02:00
Antonio Ospite
cd7f4e5247 midi: add an ALSA MIDI sequencer source
The alsamidisrc element allows to get input event from ALSA MIDI
sequencer devices, and possibly convert them to sound using some
downstream element like fluiddec.

https://bugzilla.gnome.org/show_bug.cgi?id=738687
2015-09-28 13:21:24 +02:00
Matthew Waters
18d5ed0408 qt: add support for building/running on android
Including:
- Necessary configure checks
- Necessary compile time platform checks
- Necessary runtime qt android platform detection
- Escaping GLsync definition with Qt's GLES2 implementation

https://bugzilla.gnome.org/show_bug.cgi?id=754466
2015-09-28 16:47:00 +10:00
Sebastian Dröge
21ff663871 Back to development 2015-09-25 23:51:20 +02:00
Sebastian Dröge
0237b02f96 Release 1.6.0 2015-09-25 23:33:37 +02:00
Sebastian Dröge
07203364cb Release 1.5.91 2015-09-18 19:51:49 +02:00
Matthew Waters
38d360675c gtk, qt: more specifically define the compile time requirements
Otherwise we could include headers/configurations that will
never been installed.

https://bugzilla.gnome.org/show_bug.cgi?id=754732
2015-09-10 13:11:06 +10:00
Matthew Waters
85745d2f63 build/qt: indent configure file
don't mix tabs and spaces

https://bugzilla.gnome.org/show_bug.cgi?id=754466
2015-09-10 00:34:06 +10:00
Nirbheek Chauhan
77f68f6e10 qmlsink: Ensure that at least one windowing system is available
Otherwise, we'll just crash at runtime because the gl context is NULL

https://bugzilla.gnome.org/show_bug.cgi?id=754108
2015-08-31 23:16:07 +01:00
Koop Mast
98457cb6ea curl: Give netinet/ip.h it own configure check
On FreeBSD netinet/ip.h needs the sys/types.h and netinet/in.h header
before it can be tested.

https://bugzilla.gnome.org/show_bug.cgi?id=753944
2015-08-22 10:26:47 +03:00
Carlos Rafael Giani
0cc2156572 opencv: Fix OpenCV data path check to work with cross compilation
https://bugzilla.gnome.org/show_bug.cgi?id=753651
2015-08-20 14:18:28 +01:00
Arnaud Vrac
697f117ddd configure.ac: fix build when the uvch264 plugin is not selected
Instead of checking for the gstreamer-video-1.0 package is installed,
just assume it is since we already check for the -base dependency.

With this replace the GST_VIDEO_* variables in makefiles and directly
link with libgstvideo.

https://bugzilla.gnome.org/show_bug.cgi?id=753820
2015-08-19 16:52:03 +03:00
Luis de Bethencourt
626bd97c5a configure: check for Qt version
Usage of QSGSimpleTextureNode::setOwnsTexture() was added in commit
6b8cf8419d, this function was added in
Qt 5.4.0. Check for this version or later.

https://bugzilla.gnome.org/show_bug.cgi?id=753812
2015-08-19 16:25:31 +03:00
Sebastian Dröge
8184b7e528 Release 1.5.90 2015-08-19 13:46:53 +03:00
Luis de Bethencourt
07ee52db5d opencv: support alternative path convention
Some distributions store OpenCV files in /usr/share/opencv and some others
(and default when building from source) install them in
/usr/share/OpenCV. Support both to find cascade files.

https://bugzilla.gnome.org/show_bug.cgi?id=753651
2015-08-17 18:05:50 +01:00
Luis de Bethencourt
316657a2f8 configure: update OpenCV requirements to 2.3.0
With facedetect ported to C++ the minimum version of OpenCV
supported is 2.3.0

https://bugzilla.gnome.org/show_bug.cgi?id=748377
2015-08-07 13:14:11 +01:00
Julien Isorce
5e4b94c1bb gl: support cgl, egl and glx within a same build
On osx, with the same build,
gst-launch-1.0 videotestsrc ! glimagesink works with:

GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=gles2
GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=opengl

GST_GL_PLATFORM=glx GST_GL_WINDOW=x11 GST_GL_API=opengl

GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl
GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl3

https://bugzilla.gnome.org/show_bug.cgi?id=752743
2015-07-27 09:03:58 +01:00
Young Han Lee
1c9db3df42 configure: require libxml2 >= 2.8 for DASH plugin
The DASH plugin uses xmlBufferDetach now in the code
that handles ContentProtection elements.

https://bugzilla.gnome.org/show_bug.cgi?id=752703
2015-07-22 10:52:34 +01:00
Tim-Philipp Müller
1a59af2e7e configure: try harder to find the right Qt5 build tools
First check for Qt build tools in the host_bins directory
from the Qt5Core pkg-config file. This fixes the situation
where both Qt4 and Qt5 are installed but the global moc/uic/etc.
are the Qt4 version, which would result in build failures.
2015-07-10 19:07:42 +01:00
Edward Hervey
7cb734b1cd configure/qt: Fix build without Qt5X11Extras 2015-07-10 14:01:59 +02:00
Matthew Waters
35f468c0f0 qt: don't error out if Qt X11 could not be found
PCK_CHECK_MODULES default error-if-not-found implementation errors
so override it with a simple notice that we couldn't find the library.
2015-07-10 19:22:08 +10:00
Matthew Waters
769fffa3d9 new qt5 qml GL video sink
Very much in the same spirit as the Gtk GL sink

Two things are provided
1. A QQuickItem subclass that renders out RGBA filled GstGLMemory
   buffers that is instantiated from qml.
2. A sink element that will push buffers into (1)

To use
1. Declare the GstGLVideoItem in qml with an appropriate
   objectName property set.
2. Get the aforementioned GstGLVideoItem from qml using something like

QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));

QObject *rootObject = engine.rootObjects().first();
QQuickItem *videoItem = rootObject->findChild<QQuickItem *> ("videoItem");

3. Set the videoItem on the sink

https://bugzilla.gnome.org/show_bug.cgi?id=752185
2015-07-10 15:25:26 +10:00
Arun Raghavan
0319013726 build: Fix broken BlueZ configure check
The previous commit left an extra set of brackets, and missed removing
the explicit dbus check (which is no longer needed since we're using
gdbus).
2015-07-03 19:24:58 +05:30
Nick Stoughton
5ebde18f03 build: remove support for bluez4 2015-07-03 15:41:52 +05:30
Nick Stoughton
2aa0eba673 bluez: refactor to use glib and add connection state tracking 2015-07-03 15:41:52 +05:30
Sebastian Dröge
c21a58acb4 Back to development 2015-06-25 00:04:32 +02:00
Sebastian Dröge
ad827597e3 Release 1.5.2 2015-06-24 23:37:26 +02:00
Tim-Philipp Müller
82be4ad395 examples: add small jpeg codecparser test
https://bugzilla.gnome.org/show_bug.cgi?id=673925
2015-06-21 11:34:39 +01:00
Julien Isorce
5b003b68ca Revert "gl: add GstGLContextGPUProcess backend"
This reverts commit b377112ee3.
2015-06-19 13:08:49 +01:00
Nicolas Dufresne
ea6ccb5655 style: Remove white spaces at the end of line 2015-06-18 21:09:24 -04:00
Jan Schmidt
3ea9f51dd7 3dvideo: Add simple gtk example stereoscopic video player
https://bugzilla.gnome.org/show_bug.cgi?id=611157
2015-06-19 01:49:33 +10:00
Nicolas Dufresne
10a2c33a7f configure.ac: Remove reference to cvs 2015-06-12 18:08:40 -04:00
Matthew Waters
23fb666dd7 Implement gtk sinks
two sinks are provided.  gtksink which is a cairo/software based renderer
and gtkglsink which utilises the GL support in gtk and gstreamer.
2015-06-11 22:01:03 +10:00
Sebastian Dröge
04e39278d5 Back to development 2015-06-07 16:45:04 +02:00
Sebastian Dröge
0034323f49 Release 1.5.1 2015-06-07 10:55:35 +02:00
Tim-Philipp Müller
acf0d92d0f configure: lower curl requirement to 7.35.0
Build and unit tests were tested against 7.35 too now,
which is the version in Ubuntu 14.04.
2015-06-02 21:16:02 +01:00
Julien Isorce
b377112ee3 gl: add GstGLContextGPUProcess backend
It builds its GL vtable from a proc address provided
by the application.
2015-05-27 17:22:40 +01:00
Patricia Muscalu
c1bad1be5d curlsink: handle socket callback for active FTP connections as well
Since version 7.28.0, libcurl allows application to set
socket options for active FTP connections.

Bump libcurl requirement to version tested.

https://bugzilla.gnome.org/show_bug.cgi?id=749815
2015-05-25 19:37:53 +01:00
Wim Taymans
1f738ca5b8 fix faad2 version check
On fedora 22, the output of cpp inserts extra debug comments, which
makes our regexp for the faad2 version check fail. This in turn causes
it to compile with the wrong arguments passed which then causes stack
corruption and crashes.

Fix this by only checking for the version (which should be by itself on
a single line). This is potentially less safe, it might be possible that
a similar string would appear in a later version in the header file.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=748571
2015-05-13 16:29:31 +02:00
Sebastian Dröge
c32354e70e decklink: Disable decklink plugin on Android 2015-05-05 12:45:54 +02:00
Tim-Philipp Müller
b90f17411e configure: bump automake requirement to 1.14 and autoconf to 2.69
This is only required for builds from git, people can still
build tarballs if they only have older autotools.

https://bugzilla.gnome.org//show_bug.cgi?id=747624
2015-04-23 16:39:20 +01:00
Руслан Ижбулатов
64080e632d opencv: Change configure test to check for OpenCV2 headers
* Checks for opencv2 headers only, not for legacy opencv1 headers
* Checks for every opencv2 header that the implementation needs,
  not just highgui_c.h

https://bugzilla.gnome.org/show_bug.cgi?id=725163
2015-04-17 17:25:18 +02:00
Edward Hervey
5352ba19ac configure: Depend on openh264 >= 1.3.0
Required for the version check header, as agreed upon on IRC
2015-04-07 16:01:52 +02:00
Victor Toso
1b564bfb8b directsoundsrc: Implement volume and mute
Using the MixerAPI as IDirectSoundCaptureBuffer doesn't implement volume
control.

https://bugzilla.gnome.org/show_bug.cgi?id=744383
2015-03-31 10:53:55 +01:00
Sebastian Dröge
1e0ed9af11 dtls: Add new DTLS plugin
This is a copy of the Ericsson DTLS plugin from
https://github.com/EricssonResearch/openwebrtc-gst-plugins/tree/master/ext/erdtls/src

https://bugzilla.gnome.org/show_bug.cgi?id=744582
2015-03-16 18:23:27 +01:00
Tim-Philipp Müller
9b5499725b configure: fix build
Was supposed to be squashed into earlier commit.
2015-03-14 15:16:01 +00:00
Tim-Philipp Müller
bcde1a015c Remove unported and useless osxvideosrc element
There are other elements for this now.
2015-03-14 14:47:25 +00:00
Matthew Waters
13049caaf2 gl: fix a couple of typos in configure.ac
https://bugzilla.gnome.org/show_bug.cgi?id=744020
2015-03-14 11:01:12 +00:00
Matthew Waters
e505f6257c applemedia: new AVSampleBufferLayerSink
Renders buffers using the CALayer subclass AVSampleBufferDisplayLayer
which can be placed inside a Core Animation render tree.
2015-02-24 19:12:10 +11:00
Tim-Philipp Müller
199ce92474 Remove unported directdraw plugin
This API has been deprecated for eternities and microsoft
stopped shipping the headers in 2010 accoding to wikipedia,
so let's just remove it and focus on bringing the plugins
based on the newer APIs up to snuff.
2015-01-24 20:28:16 +00:00
Matthew Waters
e10d2417e2 gl/cocoa: move to CGL and CAOpenGLLayer for rendering
Removes the use of NSOpenGL* variety and functions.  Any Cocoa
specific functions that took/returned a NSOpenGL* object now
take/return the CGL equivalents.
2015-01-22 21:29:52 +11:00
Tim-Philipp Müller
b5bd2a8855 Remove real plugin which is no longer needed and has never been ported
Decoders for these formats exist in gst-libav, if anyone
still has a need for them.
2015-01-18 17:30:28 +00:00
Tim-Philipp Müller
e694bddf56 Remove libgmyth-based MythTV source element which was never ported
gmyth seems to be unmaintained upstream, and no one has asked
for this to be ported for a very long time, so let's just
remove it. Neither debian nor Fedora seem to ship libgmyth
any longer, and in any case it's most likely deprecated by
the UPnP support in MythTV.
2015-01-18 17:15:00 +00:00
Christoph Reiter
75f8cca325 bs2b: add new plugin (Effect/Audio, crossfeed)
https://bugzilla.gnome.org/show_bug.cgi?id=611689
2015-01-15 19:59:03 +01:00
Zaheer Abbas Merali
3a4d988a29 Revert "Revert "openh264: fix to work with released versions and master of upstream""
This reverts commit 329f0ccba1.
2015-01-13 11:32:03 -08:00
Tim-Philipp Müller
329f0ccba1 Revert "openh264: fix to work with released versions and master of upstream"
This reverts commit 15394aa705.

The latest release (v1.1) does not have pkg-config support
yet, so this plugin won't be built with the latest release.
Cerbero uses the latest release, so this makes cerbero
builds fail, which expect the plugin to be built.

We can re-commit this once there's a release that includes
pkg-config support.
2014-12-12 20:58:49 +00:00
Zaheer Abbas Merali
15394aa705 openh264: fix to work with released versions and master of upstream 2014-12-12 10:05:23 -08:00
Guillaume Desmottes
b424b72df1 add rtponviftimestamp element
https://bugzilla.gnome.org/show_bug.cgi?id=731769
2014-12-11 14:00:59 -05:00
Nick Stoughton
a344b99c98 bluez: support compile-time distinction between bluez4 and bluez5
Signed-off-by: Nick Stoughton <nstoughton@aether.com>

https://bugzilla.gnome.org/show_bug.cgi?id=738626
2014-12-11 09:08:47 +05:30
Reynaldo H. Verdejo Pinochet
89eb1e9a03 vcdsrc: port to 1.
https://bugzilla.gnome.org/show_bug.cgi?id=547661
2014-12-04 17:00:52 -03:00
Thomas Klausner
655e6926bf configure: Do comparisons in a portable way with = instead of ==
https://bugzilla.gnome.org/show_bug.cgi?id=740953
2014-12-01 09:49:17 +01:00
Thiago Santos
9ec9f3f119 adaptivedemux: add adaptivedemux base class
https://bugzilla.gnome.org/show_bug.cgi?id=735848
2014-11-30 21:56:01 -03:00
Matthew Waters
e653ae9fc2 gl: fixup compat definition for GLuint64 for OS X 2014-11-28 13:04:21 +11:00
Matthew Waters
6bd1150ca8 gl: remove the use of glu 2014-11-28 09:14:26 +11:00
Matthew Waters
f2af65ee2d gl: add a sync meta for synchronizing across GL contexts
A context can create a GLsync object that can be waited on in order
to ensure that GL resources created in one context are able to be
used in another shared context without any chance of reading invalid
data.

This meta would be placed on buffers that are known to cross from
one context to another.  The receiving element would then wait
on the sync object to ensure that the data to be used is complete.
2014-11-28 09:14:25 +11:00
Arun Raghavan
ab61306c67 build: Use newer AX_PTHREAD instead of ACX_PTHREAD 2014-11-26 22:05:10 +05:30
Tim-Philipp Müller
a964491735 Remove unported and obsolete qtwrapper plugin code
QuickTime is deprecated, we want new plugins based
on avfoundation (osx) or dxva/mediafoundation (windows).
2014-11-26 14:43:21 +00:00
Matthew Waters
aeaf4a4388 gl: fix automagic disabling of desktop GL
If configure finds GL + GLES2 but the user passes --enable-gles2 and
the two GL API's cannot be built against together, configure was still
allowing the desktop GL stack to be built.
2014-11-27 01:32:21 +11:00
Tim-Philipp Müller
5f8a3fa0a3 configure: use pkg-config to detect X11
Like we do in -base and -good now.

https://bugzilla.gnome.org/show_bug.cgi?id=731047
2014-11-24 19:53:56 +00:00
Sebastian Dröge
9492db96d1 gl: Use numeric OSX version instead of the macro
The macro is not defined on older OSX versions and evaluates to 0.

https://bugzilla.gnome.org/show_bug.cgi?id=740201
2014-11-16 11:00:57 +01:00
Sebastian Dröge
13c8517570 gl/cocoa: Remove GNUStep support
Until gcc and GNUStep properly support Objective-C blocks and other
"new" features of Objective-C we can't properly support them without
making the code much more ugly.

https://bugzilla.gnome.org/show_bug.cgi?id=739152
2014-11-13 12:01:19 +01:00
Sebastian Dröge
340d60e85e gl/cocoa: include gl3.h in configure too for consistency with gstglapi.h 2014-11-04 09:52:11 +01:00
Vincent Abriou
9f69bcbfe5 configure.ac: auto decision to include GL library fails
The part of the configure.ac that consist to check if we
can include both GL and GLES2 at the same time is failing.
Indeed, in the case NEED_GLES2=yes and NEED_OPENGL=auto,
HAVE_OPENGL variable is updated whereas it should be HAVE_GL
variable that has to be updated (HAVE_OPENGL variable is not
used in the rest of the configure.ac).

https://bugzilla.gnome.org/show_bug.cgi?id=739348

Signed-off-by: Vincent Abriou <vincent.abriou@st.com>
Reviewed-by: Benjamin GAIGNARD <benjamin.gaignard@linaro.org>
2014-10-29 22:40:42 +11:00
Tim-Philipp Müller
392f91a61b configure: check for more openh264 API that we need 2014-10-26 15:44:05 +00:00
Edward Hervey
eb01f37767 configure.ac: Use libsrtp.pc if present 2014-10-24 16:19:58 +02:00
Tim-Philipp Müller
871ec4693c configure: improve openh264 check
The openh264 API is still unstable, so check for
structure member that we need to prevent building
against an older incompatible version.
2014-10-22 13:03:30 +01:00
Tim-Philipp Müller
6c8446ffa6 configure: simplify openh264 check
Of course PTHREADS_CFLAGS is not used anywhere now
for the check, but that was the case before as well.
2014-10-22 12:36:36 +01:00
Stefan Sauer
27d6a70acc configure: use a macro to check for pthread
Replace the hardcoded -lpthread in most of the places with $PTHREAD_LIBS. For
openh264 also add $PTHREAD_LIBS to OPENH264_LIBS until upstream ships a .pc
file.
2014-10-21 13:43:03 +02:00
Brendan Long
eee5110fb4 gl: Check for GLU before trying to use it in configure.ac
https://bugzilla.gnome.org/show_bug.cgi?id=738816
2014-10-20 13:05:27 +02:00
Stefan Sauer
ca5971850d configure: add pthread to the configure check for openh264 2014-10-20 11:22:54 +02:00
Sebastian Dröge
b57f255f26 vtenc: VTCompressionSessionPrepareToEncodeFrames only exists since 10.9.6
Check with configure for it instead of using one of the availability macros
as those wouldn't work as expected with minor versions.
2014-10-19 14:51:40 +02:00
Thijs Vermeir
293522d418 rtp: add h265 RTP payloader + depayloader 2014-10-17 10:40:24 +02:00
Thijs Vermeir
f241294662 x265enc: add x265 encoder element 2014-10-15 17:11:39 +02:00
Joachim Bauch
51fc68e196 Integrate libde265 into gst-plugins-bad. 2014-10-14 10:48:27 +02:00
Sebastian Dröge
cf4ec9b04e openh264: Add OpenH264 based encoder/decoder elements
These are the openh264 elements released under the BSD-2 license
by Ericsson as part of the OpenWebRTC project.
https://github.com/EricssonResearch/openwebrtc-gst-plugins

https://bugzilla.gnome.org/show_bug.cgi?id=737788
2014-10-03 17:23:35 +03:00
Lubosz Sarnecki
cc3ca17f4c gltransformation: requires graphene 1.0.0 2014-09-30 16:06:32 +03:00
Sebastian Dröge
faba47f70d applemedia: Unconditionally use VideoToolbox on iOS if available
Because we do weak linking now we can always compile it in and check at
runtime if it is actually available or not.
2014-09-17 10:39:26 +03:00
Sebastian Dröge
af3c3473e0 configure: And make the preprocessor check work properly 2014-09-15 15:36:44 +03:00
Sebastian Dröge
f2255f1e2a configure: Do the AM_CONDITIONAL() after finally setting the variable 2014-09-15 15:25:46 +03:00
Sebastian Dröge
c82fa4f845 applemedia: Don't include VideoToolbox on iOS < 8.0
It's private API and does not work without a jailbroken device.
2014-09-15 15:12:31 +03:00
Matthew Waters
1fee15e638 build: don't AC_SUBST intermediate values 2014-09-10 19:16:53 +10:00
Thomas Bluemel
04ca723461 hlsdemux: Support OpenSSL for AES decryption of HLS fragments
https://bugzilla.gnome.org//show_bug.cgi?id=735248
2014-08-28 10:34:55 +03:00
Carlos Rafael Giani
33fedda489 gl: do not check for GL/GLU/EGL/GLES2 libs if disabled in configuration
https://bugzilla.gnome.org/show_bug.cgi?id=735522
2014-08-27 17:14:45 +03:00
Sebastian Dröge
83b672f328 openjpeg: Don't remember -lopenjp2 as libs when falling back to openjpeg1 2014-07-21 17:34:52 +02:00
Руслан Ижбулатов
3ac444d2b7 openjpeg: Win32-compatible OpenJPEG-2.0 detection
OpenJPEG 2.0 API uses stdcall on W32 by default. This prevents normal
autoconf library macros from finding its functions.
A more compatible check is to acutally link a program that includes a
real header.

https://bugzilla.gnome.org/show_bug.cgi?id=733487
2014-07-21 12:09:48 +02:00
Sebastian Dröge
645e3d8edd Back to development 2014-07-19 18:04:42 +02:00
Sebastian Dröge
9dfc0f513b Release 1.4.0 2014-07-19 17:27:11 +02:00
Mart Raudsepp
96aa931635 gl: Include GL_CFLAGS while checking for GL typedefs
Otherwise those checks may fail at configure time if they contain extra
include paths, while at build time they are included, potentially causing
incompatible typedefs between system GL headers and gstreamer compatibility
prototypes.

https://bugzilla.gnome.org/show_bug.cgi?id=733248
2014-07-16 16:37:54 +02:00