GstNetClientClock

GstNetClientClock — Special clock that synchronizes to a remote time provider.

Synopsis

#include <gst/net/gstnet.h>

struct              GstNetClientClock;
GstClock *          gst_net_client_clock_new            (const gchar *name,
                                                         const gchar *remote_address,
                                                         gint remote_port,
                                                         GstClockTime base_time);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GstObject
               +----GstClock
                     +----GstSystemClock
                           +----GstNetClientClock

Properties

  "address"                  gchar*                : Read / Write
  "port"                     gint                  : Read / Write
  "round-trip-limit"         guint64               : Read / Write

Description

This object implements a custom GstClock that synchronizes its time to a remote time provider such as GstNetTimeProvider.

A new clock is created with gst_net_client_clock_new() which takes the address and port of the remote time provider along with a name and an initial time.

This clock will poll the time provider and will update its calibration parameters based on the local and remote observations.

The "round-trip" property limits the maximum round trip packets can take.

Various parameters of the clock can be configured with the parent GstClock "timeout", "window-size" and "window-threshold" object properties.

A GstNetClientClock is typically set on a GstPipeline with gst_pipeline_use_clock().

Details

struct GstNetClientClock

struct GstNetClientClock;

Opaque GstNetClientClock structure.


gst_net_client_clock_new ()

GstClock *          gst_net_client_clock_new            (const gchar *name,
                                                         const gchar *remote_address,
                                                         gint remote_port,
                                                         GstClockTime base_time);

Create a new GstNetClientClock that will report the time provided by the GstNetTimeProvider on remote_address and remote_port.

name :

a name for the clock

remote_address :

the address of the remote clock provider

remote_port :

the port of the remote clock provider

base_time :

initial time of the clock

Returns :

a new GstClock that receives a time from the remote clock.

Property Details

The "address" property

  "address"                  gchar*                : Read / Write

The IP address of the machine providing a time server.

Default value: "127.0.0.1"


The "port" property

  "port"                     gint                  : Read / Write

The port on which the remote server is listening.

Allowed values: [0,65535]

Default value: 5637


The "round-trip-limit" property

  "round-trip-limit"         guint64               : Read / Write

Maximum tolerable round-trip interval for packets, in nanoseconds (0 = no limit).

Default value: 1000000000

See Also

GstClock, GstNetTimeProvider, GstPipeline