• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5<title>GstPlayerVideoOverlayVideoRenderer: GStreamer Bad Plugins 1.0 Library Reference Manual</title>
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Library Reference Manual">
8<link rel="up" href="player.html" title="Player Library">
9<link rel="prev" href="gst-plugins-bad-libs-GstPlayerGMainContextSignalDispatcher.html" title="GstPlayerGMainContextSignalDispatcher">
10<link rel="next" href="GstPlayerVisualization.html" title="GstPlayerVisualization">
11<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
12<link rel="stylesheet" href="style.css" type="text/css">
13</head>
14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
16<td width="100%" align="left" class="shortcuts">
17<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span18                  <a href="#GstPlayerVideoOverlayVideoRenderer.description" class="shortcut">Description</a></span>
19</td>
20<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
21<td><a accesskey="u" href="player.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
22<td><a accesskey="p" href="gst-plugins-bad-libs-GstPlayerGMainContextSignalDispatcher.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
23<td><a accesskey="n" href="GstPlayerVisualization.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
24</tr></table>
25<div class="refentry">
26<a name="GstPlayerVideoOverlayVideoRenderer"></a><div class="titlepage"></div>
27<div class="refnamediv"><table width="100%"><tr>
28<td valign="top">
29<h2><span class="refentrytitle"><a name="GstPlayerVideoOverlayVideoRenderer.top_of_page"></a>GstPlayerVideoOverlayVideoRenderer</span></h2>
30<p>GstPlayerVideoOverlayVideoRenderer — Player Video Overlay Video Renderer</p>
31</td>
32<td class="gallery_image" valign="top" align="right"></td>
33</tr></table></div>
34<div class="refsect1">
35<a name="GstPlayerVideoOverlayVideoRenderer.functions"></a><h2>Functions</h2>
36<div class="informaltable"><table class="informaltable" width="100%" border="0">
37<colgroup>
38<col width="150px" class="functions_return">
39<col class="functions_name">
40</colgroup>
41<tbody>
42<tr>
43<td class="function_type">
44<a class="link" href="GstPlayer.html#GstPlayerVideoRenderer"><span class="returnvalue">GstPlayerVideoRenderer</span></a> *
45</td>
46<td class="function_name">
47<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-new" title="gst_player_video_overlay_video_renderer_new ()">gst_player_video_overlay_video_renderer_new</a> <span class="c_punctuation">()</span>
48</td>
49</tr>
50<tr>
51<td class="function_type">
52<a class="link" href="GstPlayer.html#GstPlayerVideoRenderer"><span class="returnvalue">GstPlayerVideoRenderer</span></a> *
53</td>
54<td class="function_name">
55<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-new-with-sink" title="gst_player_video_overlay_video_renderer_new_with_sink ()">gst_player_video_overlay_video_renderer_new_with_sink</a> <span class="c_punctuation">()</span>
56</td>
57</tr>
58<tr>
59<td class="function_type">
60<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
61</td>
62<td class="function_name">
63<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-get-window-handle" title="gst_player_video_overlay_video_renderer_get_window_handle ()">gst_player_video_overlay_video_renderer_get_window_handle</a> <span class="c_punctuation">()</span>
64</td>
65</tr>
66<tr>
67<td class="function_type">
68<span class="returnvalue">void</span>
69</td>
70<td class="function_name">
71<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-set-window-handle" title="gst_player_video_overlay_video_renderer_set_window_handle ()">gst_player_video_overlay_video_renderer_set_window_handle</a> <span class="c_punctuation">()</span>
72</td>
73</tr>
74<tr>
75<td class="function_type">
76<span class="returnvalue">void</span>
77</td>
78<td class="function_name">
79<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-expose" title="gst_player_video_overlay_video_renderer_expose ()">gst_player_video_overlay_video_renderer_expose</a> <span class="c_punctuation">()</span>
80</td>
81</tr>
82<tr>
83<td class="function_type">
84<span class="returnvalue">void</span>
85</td>
86<td class="function_name">
87<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-get-render-rectangle" title="gst_player_video_overlay_video_renderer_get_render_rectangle ()">gst_player_video_overlay_video_renderer_get_render_rectangle</a> <span class="c_punctuation">()</span>
88</td>
89</tr>
90<tr>
91<td class="function_type">
92<span class="returnvalue">void</span>
93</td>
94<td class="function_name">
95<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-set-render-rectangle" title="gst_player_video_overlay_video_renderer_set_render_rectangle ()">gst_player_video_overlay_video_renderer_set_render_rectangle</a> <span class="c_punctuation">()</span>
96</td>
97</tr>
98</tbody>
99</table></div>
100</div>
101<div class="refsect1">
102<a name="GstPlayerVideoOverlayVideoRenderer.includes"></a><h2>Includes</h2>
103<pre class="synopsis">#include &lt;gst/codecparsers/gstmpeg4parser.h&gt;
104</pre>
105</div>
106<div class="refsect1">
107<a name="GstPlayerVideoOverlayVideoRenderer.description"></a><h2>Description</h2>
108</div>
109<div class="refsect1">
110<a name="GstPlayerVideoOverlayVideoRenderer.functions_details"></a><h2>Functions</h2>
111<div class="refsect2">
112<a name="gst-player-video-overlay-video-renderer-new"></a><h3>gst_player_video_overlay_video_renderer_new ()</h3>
113<pre class="programlisting"><a class="link" href="GstPlayer.html#GstPlayerVideoRenderer"><span class="returnvalue">GstPlayerVideoRenderer</span></a> *
114gst_player_video_overlay_video_renderer_new
115                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> window_handle</code></em>);</pre>
116<div class="refsect3">
117<a name="gst-player-video-overlay-video-renderer-new.parameters"></a><h4>Parameters</h4>
118<div class="informaltable"><table class="informaltable" width="100%" border="0">
119<colgroup>
120<col width="150px" class="parameters_name">
121<col class="parameters_description">
122<col width="200px" class="parameters_annotations">
123</colgroup>
124<tbody><tr>
125<td class="parameter_name"><p>window_handle</p></td>
126<td class="parameter_description"><p>Window handle to use or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
127<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
128</tr></tbody>
129</table></div>
130</div>
131<div class="refsect3">
132<a name="gst-player-video-overlay-video-renderer-new.returns"></a><h4>Returns</h4>
133<p>. </p>
134<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
135</div>
136</div>
137<hr>
138<div class="refsect2">
139<a name="gst-player-video-overlay-video-renderer-new-with-sink"></a><h3>gst_player_video_overlay_video_renderer_new_with_sink ()</h3>
140<pre class="programlisting"><a class="link" href="GstPlayer.html#GstPlayerVideoRenderer"><span class="returnvalue">GstPlayerVideoRenderer</span></a> *
141gst_player_video_overlay_video_renderer_new_with_sink
142                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> window_handle</code></em>,
143                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *video_sink</code></em>);</pre>
144<div class="refsect3">
145<a name="gst-player-video-overlay-video-renderer-new-with-sink.parameters"></a><h4>Parameters</h4>
146<div class="informaltable"><table class="informaltable" width="100%" border="0">
147<colgroup>
148<col width="150px" class="parameters_name">
149<col class="parameters_description">
150<col width="200px" class="parameters_annotations">
151</colgroup>
152<tbody>
153<tr>
154<td class="parameter_name"><p>window_handle</p></td>
155<td class="parameter_description"><p>Window handle to use or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
156<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
157</tr>
158<tr>
159<td class="parameter_name"><p>video_sink</p></td>
160<td class="parameter_description"><p>the custom video_sink element to be set for the video renderer. </p></td>
161<td class="parameter_annotations"><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></td>
162</tr>
163</tbody>
164</table></div>
165</div>
166<div class="refsect3">
167<a name="gst-player-video-overlay-video-renderer-new-with-sink.returns"></a><h4>Returns</h4>
168<p>. </p>
169<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
170</div>
171<p class="since">Since: 1.12</p>
172</div>
173<hr>
174<div class="refsect2">
175<a name="gst-player-video-overlay-video-renderer-get-window-handle"></a><h3>gst_player_video_overlay_video_renderer_get_window_handle ()</h3>
176<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
177gst_player_video_overlay_video_renderer_get_window_handle
178                               (<em class="parameter"><code><a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> *self</code></em>);</pre>
179<div class="refsect3">
180<a name="gst-player-video-overlay-video-renderer-get-window-handle.parameters"></a><h4>Parameters</h4>
181<div class="informaltable"><table class="informaltable" width="100%" border="0">
182<colgroup>
183<col width="150px" class="parameters_name">
184<col class="parameters_description">
185<col width="200px" class="parameters_annotations">
186</colgroup>
187<tbody><tr>
188<td class="parameter_name"><p>self</p></td>
189<td class="parameter_description"><p><a class="link" href="GstPlayer.html#GstPlayerVideoRenderer"><span class="type">GstPlayerVideoRenderer</span></a> instance</p></td>
190<td class="parameter_annotations"> </td>
191</tr></tbody>
192</table></div>
193</div>
194<div class="refsect3">
195<a name="gst-player-video-overlay-video-renderer-get-window-handle.returns"></a><h4>Returns</h4>
196<p>The currently set, platform specific window
197handle. </p>
198<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
199</div>
200</div>
201<hr>
202<div class="refsect2">
203<a name="gst-player-video-overlay-video-renderer-set-window-handle"></a><h3>gst_player_video_overlay_video_renderer_set_window_handle ()</h3>
204<pre class="programlisting"><span class="returnvalue">void</span>
205gst_player_video_overlay_video_renderer_set_window_handle
206                               (<em class="parameter"><code><a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> *self</code></em>,
207                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> window_handle</code></em>);</pre>
208<p>Sets the platform specific window handle into which the video
209should be rendered</p>
210<div class="refsect3">
211<a name="gst-player-video-overlay-video-renderer-set-window-handle.parameters"></a><h4>Parameters</h4>
212<div class="informaltable"><table class="informaltable" width="100%" border="0">
213<colgroup>
214<col width="150px" class="parameters_name">
215<col class="parameters_description">
216<col width="200px" class="parameters_annotations">
217</colgroup>
218<tbody>
219<tr>
220<td class="parameter_name"><p>self</p></td>
221<td class="parameter_description"><p><a class="link" href="GstPlayer.html#GstPlayerVideoRenderer"><span class="type">GstPlayerVideoRenderer</span></a> instance</p></td>
222<td class="parameter_annotations"> </td>
223</tr>
224<tr>
225<td class="parameter_name"><p>window_handle</p></td>
226<td class="parameter_description"><p>handle referencing to the platform specific window</p></td>
227<td class="parameter_annotations"> </td>
228</tr>
229</tbody>
230</table></div>
231</div>
232</div>
233<hr>
234<div class="refsect2">
235<a name="gst-player-video-overlay-video-renderer-expose"></a><h3>gst_player_video_overlay_video_renderer_expose ()</h3>
236<pre class="programlisting"><span class="returnvalue">void</span>
237gst_player_video_overlay_video_renderer_expose
238                               (<em class="parameter"><code><a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> *self</code></em>);</pre>
239<p>Tell an overlay that it has been exposed. This will redraw the current frame
240in the drawable even if the pipeline is PAUSED.</p>
241<div class="refsect3">
242<a name="gst-player-video-overlay-video-renderer-expose.parameters"></a><h4>Parameters</h4>
243<div class="informaltable"><table class="informaltable" width="100%" border="0">
244<colgroup>
245<col width="150px" class="parameters_name">
246<col class="parameters_description">
247<col width="200px" class="parameters_annotations">
248</colgroup>
249<tbody><tr>
250<td class="parameter_name"><p>self</p></td>
251<td class="parameter_description"><p>a <a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> instance.</p></td>
252<td class="parameter_annotations"> </td>
253</tr></tbody>
254</table></div>
255</div>
256</div>
257<hr>
258<div class="refsect2">
259<a name="gst-player-video-overlay-video-renderer-get-render-rectangle"></a><h3>gst_player_video_overlay_video_renderer_get_render_rectangle ()</h3>
260<pre class="programlisting"><span class="returnvalue">void</span>
261gst_player_video_overlay_video_renderer_get_render_rectangle
262                               (<em class="parameter"><code><a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> *self</code></em>,
263                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *x</code></em>,
264                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *y</code></em>,
265                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
266                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);</pre>
267<p>Return the currently configured render rectangle. See <a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-set-render-rectangle" title="gst_player_video_overlay_video_renderer_set_render_rectangle ()"><code class="function">gst_player_video_overlay_video_renderer_set_render_rectangle()</code></a>
268for details.</p>
269<div class="refsect3">
270<a name="gst-player-video-overlay-video-renderer-get-render-rectangle.parameters"></a><h4>Parameters</h4>
271<div class="informaltable"><table class="informaltable" width="100%" border="0">
272<colgroup>
273<col width="150px" class="parameters_name">
274<col class="parameters_description">
275<col width="200px" class="parameters_annotations">
276</colgroup>
277<tbody>
278<tr>
279<td class="parameter_name"><p>self</p></td>
280<td class="parameter_description"><p>a <a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> instance</p></td>
281<td class="parameter_annotations"> </td>
282</tr>
283<tr>
284<td class="parameter_name"><p>x</p></td>
285<td class="parameter_description"><p>the horizontal offset of the render area inside the window. </p></td>
286<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
287</tr>
288<tr>
289<td class="parameter_name"><p>y</p></td>
290<td class="parameter_description"><p>the vertical offset of the render area inside the window. </p></td>
291<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
292</tr>
293<tr>
294<td class="parameter_name"><p>width</p></td>
295<td class="parameter_description"><p>the width of the render area inside the window. </p></td>
296<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
297</tr>
298<tr>
299<td class="parameter_name"><p>height</p></td>
300<td class="parameter_description"><p>the height of the render area inside the window. </p></td>
301<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
302</tr>
303</tbody>
304</table></div>
305</div>
306</div>
307<hr>
308<div class="refsect2">
309<a name="gst-player-video-overlay-video-renderer-set-render-rectangle"></a><h3>gst_player_video_overlay_video_renderer_set_render_rectangle ()</h3>
310<pre class="programlisting"><span class="returnvalue">void</span>
311gst_player_video_overlay_video_renderer_set_render_rectangle
312                               (<em class="parameter"><code><a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> *self</code></em>,
313                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> x</code></em>,
314                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> y</code></em>,
315                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
316                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>);</pre>
317<p>Configure a subregion as a video target within the window set by
318<a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-set-window-handle" title="gst_player_video_overlay_video_renderer_set_window_handle ()"><code class="function">gst_player_video_overlay_video_renderer_set_window_handle()</code></a>. If this is not
319used or not supported the video will fill the area of the window set as the
320overlay to 100%. By specifying the rectangle, the video can be overlaid to
321a specific region of that window only. After setting the new rectangle one
322should call <a class="link" href="GstPlayerVideoOverlayVideoRenderer.html#gst-player-video-overlay-video-renderer-expose" title="gst_player_video_overlay_video_renderer_expose ()"><code class="function">gst_player_video_overlay_video_renderer_expose()</code></a> to force a
323redraw. To unset the region pass -1 for the <em class="parameter"><code>width</code></em>
324 and <em class="parameter"><code>height</code></em>
325 parameters.</p>
326<p>This method is needed for non fullscreen video overlay in UI toolkits that
327do not support subwindows.</p>
328<div class="refsect3">
329<a name="gst-player-video-overlay-video-renderer-set-render-rectangle.parameters"></a><h4>Parameters</h4>
330<div class="informaltable"><table class="informaltable" width="100%" border="0">
331<colgroup>
332<col width="150px" class="parameters_name">
333<col class="parameters_description">
334<col width="200px" class="parameters_annotations">
335</colgroup>
336<tbody>
337<tr>
338<td class="parameter_name"><p>self</p></td>
339<td class="parameter_description"><p>a <a class="link" href="GstPlayerVideoOverlayVideoRenderer.html" title="GstPlayerVideoOverlayVideoRenderer"><span class="type">GstPlayerVideoOverlayVideoRenderer</span></a> instance</p></td>
340<td class="parameter_annotations"> </td>
341</tr>
342<tr>
343<td class="parameter_name"><p>x</p></td>
344<td class="parameter_description"><p>the horizontal offset of the render area inside the window</p></td>
345<td class="parameter_annotations"> </td>
346</tr>
347<tr>
348<td class="parameter_name"><p>y</p></td>
349<td class="parameter_description"><p>the vertical offset of the render area inside the window</p></td>
350<td class="parameter_annotations"> </td>
351</tr>
352<tr>
353<td class="parameter_name"><p>width</p></td>
354<td class="parameter_description"><p>the width of the render area inside the window</p></td>
355<td class="parameter_annotations"> </td>
356</tr>
357<tr>
358<td class="parameter_name"><p>height</p></td>
359<td class="parameter_description"><p>the height of the render area inside the window</p></td>
360<td class="parameter_annotations"> </td>
361</tr>
362</tbody>
363</table></div>
364</div>
365</div>
366</div>
367<div class="refsect1">
368<a name="GstPlayerVideoOverlayVideoRenderer.other_details"></a><h2>Types and Values</h2>
369</div>
370</div>
371<div class="footer">
372<hr>Generated by GTK-Doc V1.28</div>
373</body>
374</html>