Commit graph

828 commits

Author SHA1 Message Date
Sebastian Dröge d596d574d9 Back to development 2015-06-25 00:04:07 +02:00
Sebastian Dröge 9909c08807 Release 1.5.2 2015-06-24 23:05:29 +02:00
Sebastian Dröge 1ae38f7ba7 ptp: Check for the actual API we use instead of just looking for __APPLE__
Should fix the build on FreeBSD, DragonFly and other BSDs.

https://bugzilla.gnome.org/show_bug.cgi?id=750530
2015-06-09 11:01:29 +02:00
Sebastian Dröge 270360ca30 Back to development 2015-06-07 16:44:26 +02:00
Sebastian Dröge 100be890d4 Release 1.5.1 2015-06-07 09:41:28 +02:00
Sebastian Dröge 8d77759834 ptp: Initial implementation of a PTP clock
GstPtpClock implements a PTP (IEEE1588:2008) ordinary clock in
slave-only mode, that allows a GStreamer pipeline to synchronize
to a PTP network clock in some specific domain.

The PTP subsystem can be initialized with gst_ptp_init(), which then
starts a helper process to do the actual communication via the PTP
ports. This is required as PTP listens on ports < 1024 and thus
requires special privileges. Once this helper process is started, the
main process will synchronize to all PTP domains that are detected on
the selected interfaces.

gst_ptp_clock_new() then allows to create a GstClock that provides the
PTP time from a master clock inside a specific PTP domain. This clock
will only return valid timestamps once the timestamps in the PTP domain
are known. To check this, the GstPtpClock::internal-clock property and
the related notify::clock signal can be used. Once the internal clock
is not NULL, the PTP domain's time is known. Alternatively you can wait
for this with gst_ptp_clock_wait_ready().

To gather statistics about the PTP clock synchronization,
gst_ptp_statistics_callback_add() can be used. This gives the
application the possibility to collect all kinds of statistics
from the clock synchronization.

https://bugzilla.gnome.org/show_bug.cgi?id=749391
2015-06-03 13:55:28 +02:00
Tim-Philipp Müller 6386934b3f tests: remove some pointless ancient code examples 2015-04-28 20:07:40 +01:00
Tim-Philipp Müller 367d4bab2c configure: can use AM_SILENT_RULES unconditionally now
https://autotools.io/automake/silent.html
2015-04-22 10:11:51 +01:00
Tim-Philipp Müller 307dce442a 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-22 10:11:28 +01:00
Nicolas Dufresne 038c0a1360 bash-completion: Respect the prefix
Don't try and install the bash helpers outside the defined prefix.

https://bugzilla.gnome.org/show_bug.cgi?id=744877
2015-03-24 13:15:24 -04:00
HoonHee Lee fadabe8b78 streamiddemux: Add streamiddemux element
Demultiplex a stream to multiple source pads based on the stream ids from the
stream-start events. This basically reverses the behaviour of funnel.

https://bugzilla.gnome.org/show_bug.cgi?id=707605
2015-03-12 14:42:18 +00:00
Mathieu Duponchelle 46e7baff74 bash-completion: Implement in a different way.
+ Gets installed
+ Uses a helper tool, gst-completion-helper, installed in
  bash-completions/helpers.
+ Adds a common script that other tools can source.

https://bugzilla.gnome.org/show_bug.cgi?id=744877
2015-02-23 17:57:57 +01:00
Ilya Konstantinov 05296b35a5 task: Add thread name support on OS X and iOS 2015-02-01 20:11:20 +01:00
Jan Schmidt f9f45834e7 netclock: Add simple network clock server and client examples 2015-01-21 22:27:18 +11:00
Sebastian Rasmussen 0b09573bbe check: Have autotools generate internal-check.h
Previously GStreamer got access to the libcheck interface by including
libs/gst/check/check.h which in turn included internal-check.h in the
same directory. internal-check.h was generated by copying
libs/gst/check/libcheck/check.h which in turn was generated from
check.h.in in the same directory. In this case generating
libs/gst/check/libcheck/check.h is unnecessary, in addition this file
was accidentally distributed in generated project tarballs.

Now libs/gst/check/internal-check.h is generated directly from
libs/gst/check/libcheck/check.h.in by configure. This means that the
libcheck source must include internal-check.h instead of the previously
generated libs/gst/check/libcheck/check.h. However the unnecessary
intermediate step is now skipped.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741359
2014-12-16 16:32:39 +01:00
Sebastian Rasmussen 85c8b5d2c4 check: Apply GStreamer-specific patches
Reintroduced patches:

 * Make sure that fail_if(1) actually fails
   from commit 9f99d056a2

New patches due to updated libcheck (based on 0.9.14):

 * Checks in m4/check-checks.m4 to cater for new dependencies
 * Conditional compile-time compat POSIX fallbacks for libcheck
 * Avoid relative paths for libcheck header files
 * Make timer_create() usage depend on posix timers, not librt
 * Rely on default AX_PTHREAD behavior to allow HAVE_PTHREAD to be used
   when checking for types and functions (like clock_gettime())
 * Avoid double declaration of clock_gettime() when availabe outside of
   librt by making compat clock_gettime() declaration conditional
 * check 0.9.9 renamed _fail_unless() and 0.9.12 later renamed it again
   to _ck_assert_failed(), so ASSERT_{CRITICAL,WARNING}() now calls this
   function
 * Remove libcheck fallback infrastructure for malloc(), realloc(),
   gettimeofday() and snprintf() since either they appear to be
   available or they introduce even more dependencies.

The result is an embedded check in gstreamer that has been tested by
running check tests in core, -base, -good, -bad, -ugly and rtsp-server
on Linux, OSX and Windows.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727826
2014-12-06 17:48:25 +01:00
Tim-Philipp Müller 66bdae5f33 plugins: add helper function for writing buffers out with writev() 2014-11-30 14:40:46 +00:00
Sebastian Dröge 55c7656a03 uri: Include our own BSD licensed copy of strcasestr() for Windows and others 2014-09-29 16:22:47 +03:00
Sebastian Dröge 34e111f84f Back to development 2014-07-19 18:04:31 +02:00
Sebastian Dröge 98a5de66b9 Release 1.4.0 2014-07-19 16:46:41 +02:00
Sebastian Dröge ed39f8b5b7 Release 1.3.91 2014-07-11 10:46:01 +02:00
Sebastian Dröge 417fac010b Release 1.3.90 2014-06-28 11:13:13 +02:00
Sebastian Dröge a76f319e3b Back to development 2014-06-22 19:36:14 +02:00
Sebastian Dröge 755ca23148 Release 1.3.3 2014-06-22 18:07:42 +02:00
Sebastian Dröge 683a6ee663 Back to development 2014-05-21 13:23:21 +02:00
Sebastian Dröge 07334eca5a Release 1.3.2 2014-05-21 13:06:34 +02:00
Sebastian Dröge b963319964 Back to development 2014-05-03 20:48:22 +02:00
Sebastian Dröge 473c008199 Release 1.3.1 2014-05-03 17:41:41 +02:00
Sebastian Dröge ab56b96462 configure: Actually use 1.3.0.1 as version to make configure happy 2013-09-24 15:05:16 +02:00
Sebastian Dröge 3217defa69 Back to development 2013-09-24 15:00:17 +02:00
Sebastian Dröge cd202c647b Release 1.2.0 2013-09-24 14:07:02 +02:00
Sebastian Dröge e6acc1462f Back to development 2013-09-19 11:34:51 +02:00
Sebastian Dröge 7d76c2d538 Release 1.1.90 2013-09-19 10:48:24 +02:00
Sebastian Dröge 4a03af8296 Back to development 2013-08-28 13:26:28 +02:00
Sebastian Dröge 7a0d219862 Release 1.1.4 2013-08-28 12:36:16 +02:00
Lubosz Sarnecki 6c11da18a5 build: add subdir-objects to AM_INIT_AUTOMAKE
Fixes warnings with automake 1.14

https://bugzilla.gnome.org/show_bug.cgi?id=705350
2013-08-02 15:25:46 +01:00
Sebastian Dröge 2ee414c1c1 Back to development 2013-07-29 14:47:15 +02:00
Sebastian Dröge 5af3380860 Release 1.1.3 2013-07-29 13:34:53 +02:00
Sebastian Dröge f8fdb61b02 Back to development 2013-07-11 16:57:06 +02:00
Sebastian Dröge dd9ebd3ed0 Release 1.1.2 2013-07-11 15:12:39 +02:00
Sebastian Dröge c8d0936273 Back to development 2013-06-05 18:36:40 +02:00
Sebastian Dröge f50d555755 Release 1.1.1 2013-06-05 18:33:12 +02:00
Sebastian Dröge 18a7a1d062 gst: Add better support for static plugins
API: GST_PLUGIN_STATIC_DECLARE()
API: GST_PLUGIN_STATIC_REGISTER()

Based on a patch by Håvard Graff <havard.graff@tandberg.com>.

This now allows GST_PLUGIN_DEFINE() to create a static plugin if
GST_PLUGIN_BUILD_STATIC is defined. The resulting plugin can be
statically linked or dynamically linked during compilation but
can't be dynamically loaded during runtime.

Also adds GST_PLUGIN_STATIC_DECLARE() and GST_PLUGIN_STATIC_REGISTER(),
which allows to register a static linked plugin easily.
It is still required to manually register every single statically linked
plugin from inside the application as this can't be automated in a portable
way.

A new configure parameter --enable-static-plugins was added that allows
to build all plugins we build here as static plugins.

Fixes bug #667305.
2013-04-15 15:52:18 +02:00
Tim-Philipp Müller 5299a0cd65 printf: deal with some of the HAVE_FOO used in the printf code
Probably needs some more work for MSVC.
2013-04-12 23:05:59 +01:00
Tim-Philipp Müller ff292d530c printf: enable and fix compiler warnings
But suppress -Wformat-nonliteral warnings since sprintf
is used with a runtime-generated format string in our
vasnprintf implementation.
2013-04-12 23:05:58 +01:00
Tim-Philipp Müller 7b19944280 info: use new internal printf for debug message printing
and remove all the printf extension/specifier stuff for
the system printf. Next we need to add back the custom
specifiers to our own printf implementation.

https://bugzilla.gnome.org/show_bug.cgi?id=613081
2013-04-12 23:05:57 +01:00
Tim-Philipp Müller 8fc876f09f printf: add our own printf implementation for debug logging
We will add support for our own printf modifiers, so we can
get nice debug log output on all operating systems irrespective
of the specific libc version used.

https://bugzilla.gnome.org/show_bug.cgi?id=613081
2013-04-12 23:05:56 +01:00
Руслан Ижбулатов e2f2ee3582 configure: Also check for clock_gettime in libpthread
libwinpthreads provides POSIX time API.
It also provides libpthread alias for itself, for compatibility, so that
is what we will link with.

Fixes #697550
2013-04-09 20:34:35 +02:00
Tim-Philipp Müller d0c8831f1f configure: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
AM_CONFIG_HEADER has been removed in the just-released automake 1.13:
https://lists.gnu.org/archive/html/automake/2012-12/msg00038.html

https://bugzilla.gnome.org/show_bug.cgi?id=690881
2012-12-30 23:48:47 +00:00
Edward Hervey 465eb900a9 configure.ac: Update libtool versioning
In order for 1.x and 1.(x+1) versions to not invade on each other
we need to have different lib versions.

So we need a consistent and predictable scheme:
  library version number = MINOR * 100 + MICRO

Ex:
  1.0.0 => 0 (duh)
  1.0.3 => 3
  1.1.0 => 100
  1.1.1 => 101
  1.2.0 => 120
  1.10.5 => 1005
  ....
2012-11-28 18:21:00 +01:00