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



gchar * address Read / Write
GstBus * bus Read / Write
guint64 minimum-update-interval Read / Write
gint port Read / Write
guint64 round-trip-limit Read / Write

Types and Values

Object Hierarchy

    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstClock
                ╰── GstSystemClock
                    ╰── GstNetClientClock


#include <gst/net/gstnet.h>


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().

If you set a GstBus on the clock via the "bus" object property, it will send GST_MESSAGE_ELEMENT messages with an attached GstStructure containing statistics about clock accuracy and network traffic.


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 .



a name for the clock



the address of the remote clock provider



the port of the remote clock provider



initial time of the clock



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

Types and Values

struct GstNetClientClock

struct GstNetClientClock;

Opaque GstNetClientClock structure.

Property Details

The “address” property

  “address”                  gchar *

The IP address of the machine providing a time server.

Flags: Read / Write

Default value: ""

The “bus” property

  “bus”                      GstBus *

A GstBus on which to send clock status information.

Flags: Read / Write

The “minimum-update-interval” property

  “minimum-update-interval”  guint64

Minimum polling interval for packets, in nanoseconds(0 = no limit).

Flags: Read / Write

Default value: 50000000

The “port” property

  “port”                     gint

The port on which the remote server is listening.

Flags: Read / Write

Allowed values: [0,65535]

Default value: 5637

The “round-trip-limit” property

  “round-trip-limit”         guint64

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

Flags: Read / Write

Default value: 1000000000

See Also

GstClock, GstNetTimeProvider, GstPipeline