aboutsummaryrefslogtreecommitdiff
path: root/docs/libs/html/GstNetClientClock.html
blob: 005565113f25cccadc6ba9961046b6bffc86acc8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GstNetClientClock</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual">
<link rel="up" href="gstreamer-net.html" title="GStreamer Network Classes">
<link rel="prev" href="gstreamer-net.html" title="GStreamer Network Classes">
<link rel="next" href="gstreamer-libs-GstNetTimePacket.html" title="GstNetTimePacket">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="gstreamer-net.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gstreamer-net.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GStreamer 1.0 Library Reference Manual</th>
<td><a accesskey="n" href="gstreamer-libs-GstNetTimePacket.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GstNetClientClock.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GstNetClientClock.description" class="shortcut">Description</a>
                   | 
                  <a href="#GstNetClientClock.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GstNetClientClock.properties" class="shortcut">Properties</a>
</td></tr>
</table>
<div class="refentry">
<a name="GstNetClientClock"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GstNetClientClock.top_of_page"></a>GstNetClientClock</span></h2>
<p>GstNetClientClock — Special clock that synchronizes to a remote time
                    provider.</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GstNetClientClock.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gst/net/gstnet.h&gt;

struct              <a class="link" href="GstNetClientClock.html#GstNetClientClock-struct" title="struct GstNetClientClock">GstNetClientClock</a>;
<a href="../gstreamer-1.0/GstClock.html"><span class="returnvalue">GstClock</span></a> *          <a class="link" href="GstNetClientClock.html#gst-net-client-clock-new" title="gst_net_client_clock_new ()">gst_net_client_clock_new</a>            (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *remote_address</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> remote_port</code></em>,
                                                         <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> base_time</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GstNetClientClock.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         +----<a href="../gstreamer-1.0/GstObject.html">GstObject</a>
               +----<a href="../gstreamer-1.0/GstClock.html">GstClock</a>
                     +----<a href="../gstreamer-1.0/GstSystemClock.html">GstSystemClock</a>
                           +----GstNetClientClock
</pre>
</div>
<div class="refsect1">
<a name="GstNetClientClock.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GstNetClientClock.html#GstNetClientClock--address" title='The "address" property'>address</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write
  "<a class="link" href="GstNetClientClock.html#GstNetClientClock--port" title='The "port" property'>port</a>"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
</pre>
</div>
<div class="refsect1">
<a name="GstNetClientClock.description"></a><h2>Description</h2>
<p>
This object implements a custom <a href="../gstreamer-1.0/GstClock.html"><span class="type">GstClock</span></a> that synchronizes its time
to a remote time provider such as <a class="link" href="GstNetTimeProvider.html" title="GstNetTimeProvider"><span class="type">GstNetTimeProvider</span></a>.
</p>
<p>
A new clock is created with <a class="link" href="GstNetClientClock.html#gst-net-client-clock-new" title="gst_net_client_clock_new ()"><code class="function">gst_net_client_clock_new()</code></a> which takes the
address and port of the remote time provider along with a name and
an initial time.
</p>
<p>
This clock will poll the time provider and will update its calibration
parameters based on the local and remote observations.
</p>
<p>
Various parameters of the clock can be configured with the parent <a href="../gstreamer-1.0/GstClock.html"><span class="type">GstClock</span></a>
"timeout", "window-size" and "window-threshold" object properties.
</p>
<p>
A <a class="link" href="GstNetClientClock.html" title="GstNetClientClock"><span class="type">GstNetClientClock</span></a> is typically set on a <a href="../gstreamer-1.0/GstPipeline.html"><span class="type">GstPipeline</span></a> with 
<a href="../gstreamer-1.0/GstPipeline.html#gst-pipeline-use-clock"><code class="function">gst_pipeline_use_clock()</code></a>.
</p>
<p>
Last reviewed on 2005-11-23 (0.9.5)
</p>
</div>
<div class="refsect1">
<a name="GstNetClientClock.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GstNetClientClock-struct"></a><h3>struct GstNetClientClock</h3>
<pre class="programlisting">struct GstNetClientClock;</pre>
<p>
Opaque <a class="link" href="GstNetClientClock.html" title="GstNetClientClock"><span class="type">GstNetClientClock</span></a> structure.
</p>
</div>
<hr>
<div class="refsect2">
<a name="gst-net-client-clock-new"></a><h3>gst_net_client_clock_new ()</h3>
<pre class="programlisting"><a href="../gstreamer-1.0/GstClock.html"><span class="returnvalue">GstClock</span></a> *          gst_net_client_clock_new            (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *remote_address</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> remote_port</code></em>,
                                                         <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> base_time</code></em>);</pre>
<p>
Create a new <a class="link" href="GstNetClientClock.html" title="GstNetClientClock"><span class="type">GstNetClientClock</span></a> that will report the time
provided by the <a class="link" href="GstNetTimeProvider.html" title="GstNetTimeProvider"><span class="type">GstNetTimeProvider</span></a> on <em class="parameter"><code>remote_address</code></em> and 
<em class="parameter"><code>remote_port</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
<td>a name for the clock</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>remote_address</code></em> :</span></p></td>
<td>the address of the remote clock provider</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>remote_port</code></em> :</span></p></td>
<td>the port of the remote clock provider</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>base_time</code></em> :</span></p></td>
<td>initial time of the clock</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a href="../gstreamer-1.0/GstClock.html"><span class="type">GstClock</span></a> that receives a time from the remote
clock.</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="GstNetClientClock.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GstNetClientClock--address"></a><h3>The <code class="literal">"address"</code> property</h3>
<pre class="programlisting">  "address"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write</pre>
<p>The IP address of the machine providing a time server.</p>
<p>Default value: "127.0.0.1"</p>
</div>
<hr>
<div class="refsect2">
<a name="GstNetClientClock--port"></a><h3>The <code class="literal">"port"</code> property</h3>
<pre class="programlisting">  "port"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
<p>The port on which the remote server is listening.</p>
<p>Allowed values: [0,65535]</p>
<p>Default value: 5637</p>
</div>
</div>
<div class="refsect1">
<a name="GstNetClientClock.see-also"></a><h2>See Also</h2>
<a href="../gstreamer-1.0/GstClock.html"><span class="type">GstClock</span></a>, <a class="link" href="GstNetTimeProvider.html" title="GstNetTimeProvider"><span class="type">GstNetTimeProvider</span></a>, <a href="../gstreamer-1.0/GstPipeline.html"><span class="type">GstPipeline</span></a>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>