# GstNetClientClock

GstNetClientClock implements a custom GstClock that synchronizes its time to a remote time provider such as GstNetTimeProvider. GstNtpClock implements a GstClock that synchronizes its time to a remote NTPv4 server.

A new clock is created with gst_net_client_clock_new or gst_ntp_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 and GstNtpClock 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.

## GstNetClientClock

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstClock
                    ╰──GstSystemClock
                        ╰──GstNetClientClock
                            ╰──GstNtpClock

Opaque GstNetClientClock structure.

### Members

`clock` (GstSystemClock) –
No description available

### Class structure

#### GstNetClientClockClass

##### Fields

`parent_class` (GstSystemClockClass) –
No description available

### GstNet.NetClientClockClass

##### Attributes

`parent_class` (Gst.SystemClockClass) –
No description available

### GstNet.NetClientClockClass

##### Attributes

`parent_class` (Gst.SystemClockClass) –
No description available

## GstNet.NetClientClock

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.Clock
                    ╰──Gst.SystemClock
                        ╰──GstNet.NetClientClock
                            ╰──GstNet.NtpClock

Opaque GstNet.NetClientClock structure.

### Members

`clock` (Gst.SystemClock) –
No description available

## GstNet.NetClientClock

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.Clock
                    ╰──Gst.SystemClock
                        ╰──GstNet.NetClientClock
                            ╰──GstNet.NtpClock

Opaque GstNet.NetClientClock structure.

### Members

`clock` (Gst.SystemClock) –
No description available

### Constructors

#### 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.

Parameters:

`name` ( [nullable]) –

a name for the clock

`remote_address` –

the address or hostname of the remote clock provider

`remote_port` –

the port of the remote clock provider

`base_time` –

initial time of the clock

Returns ( [transfer: full]) –

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

#### GstNet.NetClientClock.prototype.new

    function GstNet.NetClientClock.prototype.new(name: String, remote_address: String, remote_port: Number, base_time: Number): {
        // javascript wrapper for 'gst_net_client_clock_new'
    }

Create a new GstNet.NetClientClock that will report the time provided by the GstNet.NetTimeProvider on remote_address and remote_port.

Parameters:

`name` (String) –

a name for the clock

`remote_address` (String) –

the address or hostname of the remote clock provider

`remote_port` (Number) –

the port of the remote clock provider

`base_time` (Number) –

initial time of the clock

Returns (Gst.Clock) –

a new Gst.Clock that receives a time from the remote clock.

#### GstNet.NetClientClock.new

    def GstNet.NetClientClock.new (name, remote_address, remote_port, base_time):
        #python wrapper for 'gst_net_client_clock_new'

Create a new GstNet.NetClientClock that will report the time provided by the GstNet.NetTimeProvider on remote_address and remote_port.

Parameters:

`name` (str) –

a name for the clock

`remote_address` (str) –

the address or hostname of the remote clock provider

`remote_port` (int) –

the port of the remote clock provider

`base_time` (int) –

initial time of the clock

Returns (Gst.Clock) –

a new Gst.Clock that receives a time from the remote clock.

### Properties

#### address

    “address” gchar *

Flags : Read / Write / Construct

#### address

    “address” String

Flags : Read / Write / Construct

#### address

    “self.props.address” str

Flags : Read / Write / Construct

#### base-time

    “base-time” guint64

Flags : Read / Write / Construct Only

#### base-time

    “base-time” Number

Flags : Read / Write / Construct Only

#### base_time

    “self.props.base_time” int

Flags : Read / Write / Construct Only

#### bus

    “bus” GstBus *

Flags : Read / Write

#### bus

    “bus” Gst.Bus

Flags : Read / Write

#### bus

    “self.props.bus” Gst.Bus

Flags : Read / Write

#### internal-clock

    “internal-clock” GstClock *

Flags : Read

#### internal-clock

    “internal-clock” Gst.Clock

Flags : Read

#### internal_clock

    “self.props.internal_clock” Gst.Clock

Flags : Read

#### minimum-update-interval

    “minimum-update-interval” guint64

Flags : Read / Write

#### minimum-update-interval

    “minimum-update-interval” Number

Flags : Read / Write

#### minimum_update_interval

    “self.props.minimum_update_interval” int

Flags : Read / Write

#### port

    “port” gint

Flags : Read / Write / Construct

#### port

    “port” Number

Flags : Read / Write / Construct

#### port

    “self.props.port” int

Flags : Read / Write / Construct

#### qos-dscp

    “qos-dscp” gint

Flags : Read / Write

#### qos-dscp

    “qos-dscp” Number

Flags : Read / Write

#### qos_dscp

    “self.props.qos_dscp” int

Flags : Read / Write

#### round-trip-limit

    “round-trip-limit” guint64

Flags : Read / Write

#### round-trip-limit

    “round-trip-limit” Number

Flags : Read / Write

#### round_trip_limit

    “self.props.round_trip_limit” int

Flags : Read / Write

## GstNtpClock

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstClock
                    ╰──GstSystemClock
                        ╰──GstNetClientClock
                            ╰──GstNtpClock

### Members

`clock` (GstSystemClock) –
No description available

### Class structure

#### GstNtpClockClass

##### Fields

`parent_class` (GstSystemClockClass) –
No description available

### GstNet.NtpClockClass

##### Attributes

`parent_class` (Gst.SystemClockClass) –
No description available

### GstNet.NtpClockClass

##### Attributes

`parent_class` (Gst.SystemClockClass) –
No description available

## GstNet.NtpClock

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.Clock
                    ╰──Gst.SystemClock
                        ╰──GstNet.NetClientClock
                            ╰──GstNet.NtpClock

### Members

`clock` (Gst.SystemClock) –
No description available

## GstNet.NtpClock

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.Clock
                    ╰──Gst.SystemClock
                        ╰──GstNet.NetClientClock
                            ╰──GstNet.NtpClock

### Members

`clock` (Gst.SystemClock) –
No description available

### Constructors

#### gst_ntp_clock_new

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

Create a new GstNtpClock that will report the time provided by the NTPv4 server on remote_address and remote_port.

Parameters:

`name` ( [nullable]) –

a name for the clock

`remote_address` –

the address or hostname of the remote clock provider

`remote_port` –

the port of the remote clock provider

`base_time` –

initial time of the clock

Returns ( [transfer: full]) –

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

Since : 1.6

#### GstNet.NtpClock.prototype.new

    function GstNet.NtpClock.prototype.new(name: String, remote_address: String, remote_port: Number, base_time: Number): {
        // javascript wrapper for 'gst_ntp_clock_new'
    }

Create a new GstNet.NtpClock that will report the time provided by the NTPv4 server on remote_address and remote_port.

Parameters:

`name` (String) –

a name for the clock

`remote_address` (String) –

the address or hostname of the remote clock provider

`remote_port` (Number) –

the port of the remote clock provider

`base_time` (Number) –

initial time of the clock

Returns (Gst.Clock) –

a new Gst.Clock that receives a time from the remote clock.

Since : 1.6

#### GstNet.NtpClock.new

    def GstNet.NtpClock.new (name, remote_address, remote_port, base_time):
        #python wrapper for 'gst_ntp_clock_new'

Create a new GstNet.NtpClock that will report the time provided by the NTPv4 server on remote_address and remote_port.

Parameters:

`name` (str) –

a name for the clock

`remote_address` (str) –

the address or hostname of the remote clock provider

`remote_port` (int) –

the port of the remote clock provider

`base_time` (int) –

initial time of the clock

Returns (Gst.Clock) –

a new Gst.Clock that receives a time from the remote clock.

Since : 1.6

## Constants

### GST_TYPE_NET_CLIENT_CLOCK

    #define GST_TYPE_NET_CLIENT_CLOCK \
      (gst_net_client_clock_get_type())

### GST_TYPE_NTP_CLOCK

    #define GST_TYPE_NTP_CLOCK \
      (gst_ntp_clock_get_type())

The results of the search are