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>GstUtils: GStreamer 1.0 Core Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual"> 8<link rel="up" href="libgstreamer.html" title="GStreamer Core Library"> 9<link rel="prev" href="gstreamer-GstUriHandler.html" title="GstUriHandler"> 10<link rel="next" href="gstreamer-GstValue.html" title="GstValue"> 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">|</span> 18 <a href="#gstreamer-GstUtils.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="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 22<td><a accesskey="p" href="gstreamer-GstUriHandler.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 23<td><a accesskey="n" href="gstreamer-GstValue.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="gstreamer-GstUtils"></a><div class="titlepage"></div> 27<div class="refnamediv"><table width="100%"><tr> 28<td valign="top"> 29<h2><span class="refentrytitle"><a name="gstreamer-GstUtils.top_of_page"></a>GstUtils</span></h2> 30<p>GstUtils — Various utility functions</p> 31</td> 32<td class="gallery_image" valign="top" align="right"></td> 33</tr></table></div> 34<div class="refsect1"> 35<a name="gstreamer-GstUtils.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="define_keyword">#define</td> 44<td class="function_name"> 45<a class="link" href="gstreamer-GstUtils.html#GST-CALL-PARENT:CAPS" title="GST_CALL_PARENT()">GST_CALL_PARENT</a><span class="c_punctuation">()</span> 46</td> 47</tr> 48<tr> 49<td class="define_keyword">#define</td> 50<td class="function_name"> 51<a class="link" href="gstreamer-GstUtils.html#GST-CALL-PARENT-WITH-DEFAULT:CAPS" title="GST_CALL_PARENT_WITH_DEFAULT()">GST_CALL_PARENT_WITH_DEFAULT</a><span class="c_punctuation">()</span> 52</td> 53</tr> 54<tr> 55<td class="define_keyword">#define</td> 56<td class="function_name"> 57<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT8:CAPS" title="GST_READ_UINT8()">GST_READ_UINT8</a><span class="c_punctuation">()</span> 58</td> 59</tr> 60<tr> 61<td class="define_keyword">#define</td> 62<td class="function_name"> 63<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT16-LE:CAPS" title="GST_READ_UINT16_LE()">GST_READ_UINT16_LE</a><span class="c_punctuation">()</span> 64</td> 65</tr> 66<tr> 67<td class="define_keyword">#define</td> 68<td class="function_name"> 69<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT16-BE:CAPS" title="GST_READ_UINT16_BE()">GST_READ_UINT16_BE</a><span class="c_punctuation">()</span> 70</td> 71</tr> 72<tr> 73<td class="define_keyword">#define</td> 74<td class="function_name"> 75<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT24-LE:CAPS" title="GST_READ_UINT24_LE()">GST_READ_UINT24_LE</a><span class="c_punctuation">()</span> 76</td> 77</tr> 78<tr> 79<td class="define_keyword">#define</td> 80<td class="function_name"> 81<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT24-BE:CAPS" title="GST_READ_UINT24_BE()">GST_READ_UINT24_BE</a><span class="c_punctuation">()</span> 82</td> 83</tr> 84<tr> 85<td class="define_keyword">#define</td> 86<td class="function_name"> 87<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT32-LE:CAPS" title="GST_READ_UINT32_LE()">GST_READ_UINT32_LE</a><span class="c_punctuation">()</span> 88</td> 89</tr> 90<tr> 91<td class="define_keyword">#define</td> 92<td class="function_name"> 93<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT32-BE:CAPS" title="GST_READ_UINT32_BE()">GST_READ_UINT32_BE</a><span class="c_punctuation">()</span> 94</td> 95</tr> 96<tr> 97<td class="define_keyword">#define</td> 98<td class="function_name"> 99<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT64-LE:CAPS" title="GST_READ_UINT64_LE()">GST_READ_UINT64_LE</a><span class="c_punctuation">()</span> 100</td> 101</tr> 102<tr> 103<td class="define_keyword">#define</td> 104<td class="function_name"> 105<a class="link" href="gstreamer-GstUtils.html#GST-READ-UINT64-BE:CAPS" title="GST_READ_UINT64_BE()">GST_READ_UINT64_BE</a><span class="c_punctuation">()</span> 106</td> 107</tr> 108<tr> 109<td class="function_type"> 110<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a> 111</td> 112<td class="function_name"> 113<a class="link" href="gstreamer-GstUtils.html#GST-READ-FLOAT-LE:CAPS" title="GST_READ_FLOAT_LE ()">GST_READ_FLOAT_LE</a> <span class="c_punctuation">()</span> 114</td> 115</tr> 116<tr> 117<td class="function_type"> 118<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a> 119</td> 120<td class="function_name"> 121<a class="link" href="gstreamer-GstUtils.html#GST-READ-FLOAT-BE:CAPS" title="GST_READ_FLOAT_BE ()">GST_READ_FLOAT_BE</a> <span class="c_punctuation">()</span> 122</td> 123</tr> 124<tr> 125<td class="function_type"> 126<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> 127</td> 128<td class="function_name"> 129<a class="link" href="gstreamer-GstUtils.html#GST-READ-DOUBLE-LE:CAPS" title="GST_READ_DOUBLE_LE ()">GST_READ_DOUBLE_LE</a> <span class="c_punctuation">()</span> 130</td> 131</tr> 132<tr> 133<td class="function_type"> 134<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> 135</td> 136<td class="function_name"> 137<a class="link" href="gstreamer-GstUtils.html#GST-READ-DOUBLE-BE:CAPS" title="GST_READ_DOUBLE_BE ()">GST_READ_DOUBLE_BE</a> <span class="c_punctuation">()</span> 138</td> 139</tr> 140<tr> 141<td class="define_keyword">#define</td> 142<td class="function_name"> 143<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT8:CAPS" title="GST_WRITE_UINT8()">GST_WRITE_UINT8</a><span class="c_punctuation">()</span> 144</td> 145</tr> 146<tr> 147<td class="define_keyword">#define</td> 148<td class="function_name"> 149<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT16-LE:CAPS" title="GST_WRITE_UINT16_LE()">GST_WRITE_UINT16_LE</a><span class="c_punctuation">()</span> 150</td> 151</tr> 152<tr> 153<td class="define_keyword">#define</td> 154<td class="function_name"> 155<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT16-BE:CAPS" title="GST_WRITE_UINT16_BE()">GST_WRITE_UINT16_BE</a><span class="c_punctuation">()</span> 156</td> 157</tr> 158<tr> 159<td class="define_keyword">#define</td> 160<td class="function_name"> 161<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT24-LE:CAPS" title="GST_WRITE_UINT24_LE()">GST_WRITE_UINT24_LE</a><span class="c_punctuation">()</span> 162</td> 163</tr> 164<tr> 165<td class="define_keyword">#define</td> 166<td class="function_name"> 167<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT24-BE:CAPS" title="GST_WRITE_UINT24_BE()">GST_WRITE_UINT24_BE</a><span class="c_punctuation">()</span> 168</td> 169</tr> 170<tr> 171<td class="define_keyword">#define</td> 172<td class="function_name"> 173<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT32-LE:CAPS" title="GST_WRITE_UINT32_LE()">GST_WRITE_UINT32_LE</a><span class="c_punctuation">()</span> 174</td> 175</tr> 176<tr> 177<td class="define_keyword">#define</td> 178<td class="function_name"> 179<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT32-BE:CAPS" title="GST_WRITE_UINT32_BE()">GST_WRITE_UINT32_BE</a><span class="c_punctuation">()</span> 180</td> 181</tr> 182<tr> 183<td class="define_keyword">#define</td> 184<td class="function_name"> 185<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT64-LE:CAPS" title="GST_WRITE_UINT64_LE()">GST_WRITE_UINT64_LE</a><span class="c_punctuation">()</span> 186</td> 187</tr> 188<tr> 189<td class="define_keyword">#define</td> 190<td class="function_name"> 191<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-UINT64-BE:CAPS" title="GST_WRITE_UINT64_BE()">GST_WRITE_UINT64_BE</a><span class="c_punctuation">()</span> 192</td> 193</tr> 194<tr> 195<td class="function_type"> 196<span class="returnvalue">void</span> 197</td> 198<td class="function_name"> 199<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-FLOAT-LE:CAPS" title="GST_WRITE_FLOAT_LE ()">GST_WRITE_FLOAT_LE</a> <span class="c_punctuation">()</span> 200</td> 201</tr> 202<tr> 203<td class="function_type"> 204<span class="returnvalue">void</span> 205</td> 206<td class="function_name"> 207<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-FLOAT-BE:CAPS" title="GST_WRITE_FLOAT_BE ()">GST_WRITE_FLOAT_BE</a> <span class="c_punctuation">()</span> 208</td> 209</tr> 210<tr> 211<td class="function_type"> 212<span class="returnvalue">void</span> 213</td> 214<td class="function_name"> 215<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-DOUBLE-LE:CAPS" title="GST_WRITE_DOUBLE_LE ()">GST_WRITE_DOUBLE_LE</a> <span class="c_punctuation">()</span> 216</td> 217</tr> 218<tr> 219<td class="function_type"> 220<span class="returnvalue">void</span> 221</td> 222<td class="function_name"> 223<a class="link" href="gstreamer-GstUtils.html#GST-WRITE-DOUBLE-BE:CAPS" title="GST_WRITE_DOUBLE_BE ()">GST_WRITE_DOUBLE_BE</a> <span class="c_punctuation">()</span> 224</td> 225</tr> 226<tr> 227<td class="define_keyword">#define</td> 228<td class="function_name"> 229<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-2:CAPS" title="GST_ROUND_UP_2()">GST_ROUND_UP_2</a><span class="c_punctuation">()</span> 230</td> 231</tr> 232<tr> 233<td class="define_keyword">#define</td> 234<td class="function_name"> 235<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-4:CAPS" title="GST_ROUND_UP_4()">GST_ROUND_UP_4</a><span class="c_punctuation">()</span> 236</td> 237</tr> 238<tr> 239<td class="define_keyword">#define</td> 240<td class="function_name"> 241<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-8:CAPS" title="GST_ROUND_UP_8()">GST_ROUND_UP_8</a><span class="c_punctuation">()</span> 242</td> 243</tr> 244<tr> 245<td class="define_keyword">#define</td> 246<td class="function_name"> 247<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-16:CAPS" title="GST_ROUND_UP_16()">GST_ROUND_UP_16</a><span class="c_punctuation">()</span> 248</td> 249</tr> 250<tr> 251<td class="define_keyword">#define</td> 252<td class="function_name"> 253<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-32:CAPS" title="GST_ROUND_UP_32()">GST_ROUND_UP_32</a><span class="c_punctuation">()</span> 254</td> 255</tr> 256<tr> 257<td class="define_keyword">#define</td> 258<td class="function_name"> 259<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-64:CAPS" title="GST_ROUND_UP_64()">GST_ROUND_UP_64</a><span class="c_punctuation">()</span> 260</td> 261</tr> 262<tr> 263<td class="define_keyword">#define</td> 264<td class="function_name"> 265<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-128:CAPS" title="GST_ROUND_UP_128()">GST_ROUND_UP_128</a><span class="c_punctuation">()</span> 266</td> 267</tr> 268<tr> 269<td class="define_keyword">#define</td> 270<td class="function_name"> 271<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-UP-N:CAPS" title="GST_ROUND_UP_N()">GST_ROUND_UP_N</a><span class="c_punctuation">()</span> 272</td> 273</tr> 274<tr> 275<td class="define_keyword">#define</td> 276<td class="function_name"> 277<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-2:CAPS" title="GST_ROUND_DOWN_2()">GST_ROUND_DOWN_2</a><span class="c_punctuation">()</span> 278</td> 279</tr> 280<tr> 281<td class="define_keyword">#define</td> 282<td class="function_name"> 283<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-4:CAPS" title="GST_ROUND_DOWN_4()">GST_ROUND_DOWN_4</a><span class="c_punctuation">()</span> 284</td> 285</tr> 286<tr> 287<td class="define_keyword">#define</td> 288<td class="function_name"> 289<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-8:CAPS" title="GST_ROUND_DOWN_8()">GST_ROUND_DOWN_8</a><span class="c_punctuation">()</span> 290</td> 291</tr> 292<tr> 293<td class="define_keyword">#define</td> 294<td class="function_name"> 295<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-16:CAPS" title="GST_ROUND_DOWN_16()">GST_ROUND_DOWN_16</a><span class="c_punctuation">()</span> 296</td> 297</tr> 298<tr> 299<td class="define_keyword">#define</td> 300<td class="function_name"> 301<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-32:CAPS" title="GST_ROUND_DOWN_32()">GST_ROUND_DOWN_32</a><span class="c_punctuation">()</span> 302</td> 303</tr> 304<tr> 305<td class="define_keyword">#define</td> 306<td class="function_name"> 307<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-64:CAPS" title="GST_ROUND_DOWN_64()">GST_ROUND_DOWN_64</a><span class="c_punctuation">()</span> 308</td> 309</tr> 310<tr> 311<td class="define_keyword">#define</td> 312<td class="function_name"> 313<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-128:CAPS" title="GST_ROUND_DOWN_128()">GST_ROUND_DOWN_128</a><span class="c_punctuation">()</span> 314</td> 315</tr> 316<tr> 317<td class="define_keyword">#define</td> 318<td class="function_name"> 319<a class="link" href="gstreamer-GstUtils.html#GST-ROUND-DOWN-N:CAPS" title="GST_ROUND_DOWN_N()">GST_ROUND_DOWN_N</a><span class="c_punctuation">()</span> 320</td> 321</tr> 322<tr> 323<td class="define_keyword">#define</td> 324<td class="function_name"> 325<a class="link" href="gstreamer-GstUtils.html#GDOUBLE-FROM-BE:CAPS" title="GDOUBLE_FROM_BE()">GDOUBLE_FROM_BE</a><span class="c_punctuation">()</span> 326</td> 327</tr> 328<tr> 329<td class="define_keyword">#define</td> 330<td class="function_name"> 331<a class="link" href="gstreamer-GstUtils.html#GDOUBLE-FROM-LE:CAPS" title="GDOUBLE_FROM_LE()">GDOUBLE_FROM_LE</a><span class="c_punctuation">()</span> 332</td> 333</tr> 334<tr> 335<td class="function_type"> 336<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> 337</td> 338<td class="function_name"> 339<a class="link" href="gstreamer-GstUtils.html#GDOUBLE-SWAP-LE-BE:CAPS" title="GDOUBLE_SWAP_LE_BE ()">GDOUBLE_SWAP_LE_BE</a> <span class="c_punctuation">()</span> 340</td> 341</tr> 342<tr> 343<td class="define_keyword">#define</td> 344<td class="function_name"> 345<a class="link" href="gstreamer-GstUtils.html#GDOUBLE-TO-BE:CAPS" title="GDOUBLE_TO_BE()">GDOUBLE_TO_BE</a><span class="c_punctuation">()</span> 346</td> 347</tr> 348<tr> 349<td class="define_keyword">#define</td> 350<td class="function_name"> 351<a class="link" href="gstreamer-GstUtils.html#GDOUBLE-TO-LE:CAPS" title="GDOUBLE_TO_LE()">GDOUBLE_TO_LE</a><span class="c_punctuation">()</span> 352</td> 353</tr> 354<tr> 355<td class="define_keyword">#define</td> 356<td class="function_name"> 357<a class="link" href="gstreamer-GstUtils.html#GFLOAT-FROM-BE:CAPS" title="GFLOAT_FROM_BE()">GFLOAT_FROM_BE</a><span class="c_punctuation">()</span> 358</td> 359</tr> 360<tr> 361<td class="define_keyword">#define</td> 362<td class="function_name"> 363<a class="link" href="gstreamer-GstUtils.html#GFLOAT-FROM-LE:CAPS" title="GFLOAT_FROM_LE()">GFLOAT_FROM_LE</a><span class="c_punctuation">()</span> 364</td> 365</tr> 366<tr> 367<td class="function_type"> 368<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a> 369</td> 370<td class="function_name"> 371<a class="link" href="gstreamer-GstUtils.html#GFLOAT-SWAP-LE-BE:CAPS" title="GFLOAT_SWAP_LE_BE ()">GFLOAT_SWAP_LE_BE</a> <span class="c_punctuation">()</span> 372</td> 373</tr> 374<tr> 375<td class="define_keyword">#define</td> 376<td class="function_name"> 377<a class="link" href="gstreamer-GstUtils.html#GFLOAT-TO-BE:CAPS" title="GFLOAT_TO_BE()">GFLOAT_TO_BE</a><span class="c_punctuation">()</span> 378</td> 379</tr> 380<tr> 381<td class="define_keyword">#define</td> 382<td class="function_name"> 383<a class="link" href="gstreamer-GstUtils.html#GFLOAT-TO-LE:CAPS" title="GFLOAT_TO_LE()">GFLOAT_TO_LE</a><span class="c_punctuation">()</span> 384</td> 385</tr> 386<tr> 387<td class="define_keyword">#define</td> 388<td class="function_name"> 389<a class="link" href="gstreamer-GstUtils.html#gst-guint64-to-gdouble" title="gst_guint64_to_gdouble()">gst_guint64_to_gdouble</a><span class="c_punctuation">()</span> 390</td> 391</tr> 392<tr> 393<td class="define_keyword">#define</td> 394<td class="function_name"> 395<a class="link" href="gstreamer-GstUtils.html#gst-gdouble-to-guint64" title="gst_gdouble_to_guint64()">gst_gdouble_to_guint64</a><span class="c_punctuation">()</span> 396</td> 397</tr> 398<tr> 399<td class="function_type"> 400<span class="returnvalue">void</span> 401</td> 402<td class="function_name"> 403<a class="link" href="gstreamer-GstUtils.html#gst-util-dump-buffer" title="gst_util_dump_buffer ()">gst_util_dump_buffer</a> <span class="c_punctuation">()</span> 404</td> 405</tr> 406<tr> 407<td class="function_type"> 408<span class="returnvalue">void</span> 409</td> 410<td class="function_name"> 411<a class="link" href="gstreamer-GstUtils.html#gst-util-dump-mem" title="gst_util_dump_mem ()">gst_util_dump_mem</a> <span class="c_punctuation">()</span> 412</td> 413</tr> 414<tr> 415<td class="function_type"> 416<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 417</td> 418<td class="function_name"> 419<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale" title="gst_util_uint64_scale ()">gst_util_uint64_scale</a> <span class="c_punctuation">()</span> 420</td> 421</tr> 422<tr> 423<td class="function_type"> 424<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 425</td> 426<td class="function_name"> 427<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-round" title="gst_util_uint64_scale_round ()">gst_util_uint64_scale_round</a> <span class="c_punctuation">()</span> 428</td> 429</tr> 430<tr> 431<td class="function_type"> 432<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 433</td> 434<td class="function_name"> 435<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-ceil" title="gst_util_uint64_scale_ceil ()">gst_util_uint64_scale_ceil</a> <span class="c_punctuation">()</span> 436</td> 437</tr> 438<tr> 439<td class="function_type"> 440<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 441</td> 442<td class="function_name"> 443<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int" title="gst_util_uint64_scale_int ()">gst_util_uint64_scale_int</a> <span class="c_punctuation">()</span> 444</td> 445</tr> 446<tr> 447<td class="function_type"> 448<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 449</td> 450<td class="function_name"> 451<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-round" title="gst_util_uint64_scale_int_round ()">gst_util_uint64_scale_int_round</a> <span class="c_punctuation">()</span> 452</td> 453</tr> 454<tr> 455<td class="function_type"> 456<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 457</td> 458<td class="function_name"> 459<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-ceil" title="gst_util_uint64_scale_int_ceil ()">gst_util_uint64_scale_int_ceil</a> <span class="c_punctuation">()</span> 460</td> 461</tr> 462<tr> 463<td class="function_type"> 464<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> 465</td> 466<td class="function_name"> 467<a class="link" href="gstreamer-GstUtils.html#gst-util-greatest-common-divisor" title="gst_util_greatest_common_divisor ()">gst_util_greatest_common_divisor</a> <span class="c_punctuation">()</span> 468</td> 469</tr> 470<tr> 471<td class="function_type"> 472<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="returnvalue">gint64</span></a> 473</td> 474<td class="function_name"> 475<a class="link" href="gstreamer-GstUtils.html#gst-util-greatest-common-divisor-int64" title="gst_util_greatest_common_divisor_int64 ()">gst_util_greatest_common_divisor_int64</a> <span class="c_punctuation">()</span> 476</td> 477</tr> 478<tr> 479<td class="function_type"> 480<span class="returnvalue">void</span> 481</td> 482<td class="function_name"> 483<a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-to-double" title="gst_util_fraction_to_double ()">gst_util_fraction_to_double</a> <span class="c_punctuation">()</span> 484</td> 485</tr> 486<tr> 487<td class="function_type"> 488<span class="returnvalue">void</span> 489</td> 490<td class="function_name"> 491<a class="link" href="gstreamer-GstUtils.html#gst-util-double-to-fraction" title="gst_util_double_to_fraction ()">gst_util_double_to_fraction</a> <span class="c_punctuation">()</span> 492</td> 493</tr> 494<tr> 495<td class="function_type"> 496<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 497</td> 498<td class="function_name"> 499<a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-multiply" title="gst_util_fraction_multiply ()">gst_util_fraction_multiply</a> <span class="c_punctuation">()</span> 500</td> 501</tr> 502<tr> 503<td class="function_type"> 504<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 505</td> 506<td class="function_name"> 507<a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-add" title="gst_util_fraction_add ()">gst_util_fraction_add</a> <span class="c_punctuation">()</span> 508</td> 509</tr> 510<tr> 511<td class="function_type"> 512<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> 513</td> 514<td class="function_name"> 515<a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-compare" title="gst_util_fraction_compare ()">gst_util_fraction_compare</a> <span class="c_punctuation">()</span> 516</td> 517</tr> 518<tr> 519<td class="function_type"> 520<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> 521</td> 522<td class="function_name"> 523<a class="link" href="gstreamer-GstUtils.html#gst-util-seqnum-next" title="gst_util_seqnum_next ()">gst_util_seqnum_next</a> <span class="c_punctuation">()</span> 524</td> 525</tr> 526<tr> 527<td class="function_type"> 528<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"><span class="returnvalue">gint32</span></a> 529</td> 530<td class="function_name"> 531<a class="link" href="gstreamer-GstUtils.html#gst-util-seqnum-compare" title="gst_util_seqnum_compare ()">gst_util_seqnum_compare</a> <span class="c_punctuation">()</span> 532</td> 533</tr> 534<tr> 535<td class="function_type"> 536<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> 537</td> 538<td class="function_name"> 539<a class="link" href="gstreamer-GstUtils.html#gst-util-group-id-next" title="gst_util_group_id_next ()">gst_util_group_id_next</a> <span class="c_punctuation">()</span> 540</td> 541</tr> 542<tr> 543<td class="function_type"> 544<span class="returnvalue">void</span> 545</td> 546<td class="function_name"> 547<a class="link" href="gstreamer-GstUtils.html#gst-util-set-object-arg" title="gst_util_set_object_arg ()">gst_util_set_object_arg</a> <span class="c_punctuation">()</span> 548</td> 549</tr> 550<tr> 551<td class="function_type"> 552<span class="returnvalue">void</span> 553</td> 554<td class="function_name"> 555<a class="link" href="gstreamer-GstUtils.html#gst-util-set-value-from-string" title="gst_util_set_value_from_string ()">gst_util_set_value_from_string</a> <span class="c_punctuation">()</span> 556</td> 557</tr> 558<tr> 559<td class="function_type"> 560<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 561</td> 562<td class="function_name"> 563<a class="link" href="gstreamer-GstUtils.html#gst-util-set-object-array" title="gst_util_set_object_array ()">gst_util_set_object_array</a> <span class="c_punctuation">()</span> 564</td> 565</tr> 566<tr> 567<td class="function_type"> 568<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 569</td> 570<td class="function_name"> 571<a class="link" href="gstreamer-GstUtils.html#gst-util-get-object-array" title="gst_util_get_object_array ()">gst_util_get_object_array</a> <span class="c_punctuation">()</span> 572</td> 573</tr> 574<tr> 575<td class="function_type"> 576<a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="returnvalue">GstClockTime</span></a> 577</td> 578<td class="function_name"> 579<a class="link" href="gstreamer-GstUtils.html#gst-util-get-timestamp" title="gst_util_get_timestamp ()">gst_util_get_timestamp</a> <span class="c_punctuation">()</span> 580</td> 581</tr> 582<tr> 583<td class="function_type"> 584<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> 585</td> 586<td class="function_name"> 587<a class="link" href="gstreamer-GstUtils.html#gst-util-array-binary-search" title="gst_util_array_binary_search ()">gst_util_array_binary_search</a> <span class="c_punctuation">()</span> 588</td> 589</tr> 590</tbody> 591</table></div> 592</div> 593<div class="refsect1"> 594<a name="gstreamer-GstUtils.other"></a><h2>Types and Values</h2> 595<div class="informaltable"><table class="informaltable" width="100%" border="0"> 596<colgroup> 597<col width="150px" class="name"> 598<col class="description"> 599</colgroup> 600<tbody> 601<tr> 602<td class="define_keyword">#define</td> 603<td class="function_name"><a class="link" href="gstreamer-GstUtils.html#GST-SEQNUM-INVALID:CAPS" title="GST_SEQNUM_INVALID">GST_SEQNUM_INVALID</a></td> 604</tr> 605<tr> 606<td class="define_keyword">#define</td> 607<td class="function_name"><a class="link" href="gstreamer-GstUtils.html#GST-GROUP-ID-INVALID:CAPS" title="GST_GROUP_ID_INVALID">GST_GROUP_ID_INVALID</a></td> 608</tr> 609<tr> 610<td class="datatype_keyword">enum</td> 611<td class="function_name"><a class="link" href="gstreamer-GstUtils.html#GstSearchMode" title="enum GstSearchMode">GstSearchMode</a></td> 612</tr> 613</tbody> 614</table></div> 615</div> 616<div class="refsect1"> 617<a name="gstreamer-GstUtils.includes"></a><h2>Includes</h2> 618<pre class="synopsis">#include <gst/gst.h> 619</pre> 620</div> 621<div class="refsect1"> 622<a name="gstreamer-GstUtils.description"></a><h2>Description</h2> 623</div> 624<div class="refsect1"> 625<a name="gstreamer-GstUtils.functions_details"></a><h2>Functions</h2> 626<div class="refsect2"> 627<a name="GST-CALL-PARENT:CAPS"></a><h3>GST_CALL_PARENT()</h3> 628<pre class="programlisting">#define GST_CALL_PARENT(parent_class_cast, name, args)</pre> 629<p>Just call the parent handler. This assumes that there is a variable 630named parent_class that points to the (duh!) parent class. Note that 631this macro is not to be used with things that return something, use 632the _WITH_DEFAULT version for that</p> 633<div class="refsect3"> 634<a name="GST-CALL-PARENT.parameters"></a><h4>Parameters</h4> 635<div class="informaltable"><table class="informaltable" width="100%" border="0"> 636<colgroup> 637<col width="150px" class="parameters_name"> 638<col class="parameters_description"> 639<col width="200px" class="parameters_annotations"> 640</colgroup> 641<tbody> 642<tr> 643<td class="parameter_name"><p>parent_class_cast</p></td> 644<td class="parameter_description"><p>the name of the class cast macro for the parent type</p></td> 645<td class="parameter_annotations"> </td> 646</tr> 647<tr> 648<td class="parameter_name"><p>name</p></td> 649<td class="parameter_description"><p>name of the function to call</p></td> 650<td class="parameter_annotations"> </td> 651</tr> 652<tr> 653<td class="parameter_name"><p>args</p></td> 654<td class="parameter_description"><p>arguments enclosed in '( )'</p></td> 655<td class="parameter_annotations"> </td> 656</tr> 657</tbody> 658</table></div> 659</div> 660</div> 661<hr> 662<div class="refsect2"> 663<a name="GST-CALL-PARENT-WITH-DEFAULT:CAPS"></a><h3>GST_CALL_PARENT_WITH_DEFAULT()</h3> 664<pre class="programlisting">#define GST_CALL_PARENT_WITH_DEFAULT(parent_class_cast, name, args, def_return)</pre> 665<p>Same as <a class="link" href="gstreamer-GstUtils.html#GST-CALL-PARENT:CAPS" title="GST_CALL_PARENT()"><code class="function">GST_CALL_PARENT()</code></a>, but in case there is no implementation, it 666evaluates to <em class="parameter"><code>def_return</code></em> 667.</p> 668<div class="refsect3"> 669<a name="GST-CALL-PARENT-WITH-DEFAULT.parameters"></a><h4>Parameters</h4> 670<div class="informaltable"><table class="informaltable" width="100%" border="0"> 671<colgroup> 672<col width="150px" class="parameters_name"> 673<col class="parameters_description"> 674<col width="200px" class="parameters_annotations"> 675</colgroup> 676<tbody> 677<tr> 678<td class="parameter_name"><p>parent_class_cast</p></td> 679<td class="parameter_description"><p>the name of the class cast macro for the parent type</p></td> 680<td class="parameter_annotations"> </td> 681</tr> 682<tr> 683<td class="parameter_name"><p>name</p></td> 684<td class="parameter_description"><p>name of the function to call</p></td> 685<td class="parameter_annotations"> </td> 686</tr> 687<tr> 688<td class="parameter_name"><p>args</p></td> 689<td class="parameter_description"><p>arguments enclosed in '( )'</p></td> 690<td class="parameter_annotations"> </td> 691</tr> 692<tr> 693<td class="parameter_name"><p>def_return</p></td> 694<td class="parameter_description"><p>default result</p></td> 695<td class="parameter_annotations"> </td> 696</tr> 697</tbody> 698</table></div> 699</div> 700</div> 701<hr> 702<div class="refsect2"> 703<a name="GST-READ-UINT8:CAPS"></a><h3>GST_READ_UINT8()</h3> 704<pre class="programlisting">#define GST_READ_UINT8(data) (_GST_GET (data, 0, 8, 0)) 705</pre> 706<p>Read an 8 bit unsigned integer value from the memory buffer.</p> 707<div class="refsect3"> 708<a name="GST-READ-UINT8.parameters"></a><h4>Parameters</h4> 709<div class="informaltable"><table class="informaltable" width="100%" border="0"> 710<colgroup> 711<col width="150px" class="parameters_name"> 712<col class="parameters_description"> 713<col width="200px" class="parameters_annotations"> 714</colgroup> 715<tbody><tr> 716<td class="parameter_name"><p>data</p></td> 717<td class="parameter_description"><p>memory location</p></td> 718<td class="parameter_annotations"> </td> 719</tr></tbody> 720</table></div> 721</div> 722</div> 723<hr> 724<div class="refsect2"> 725<a name="GST-READ-UINT16-LE:CAPS"></a><h3>GST_READ_UINT16_LE()</h3> 726<pre class="programlisting"># define GST_READ_UINT16_LE(data) _GST_FAST_READ_SWAP (16, data) 727</pre> 728<p>Read a 16 bit unsigned integer value in little endian format from the memory buffer.</p> 729<div class="refsect3"> 730<a name="GST-READ-UINT16-LE.parameters"></a><h4>Parameters</h4> 731<div class="informaltable"><table class="informaltable" width="100%" border="0"> 732<colgroup> 733<col width="150px" class="parameters_name"> 734<col class="parameters_description"> 735<col width="200px" class="parameters_annotations"> 736</colgroup> 737<tbody><tr> 738<td class="parameter_name"><p>data</p></td> 739<td class="parameter_description"><p>memory location</p></td> 740<td class="parameter_annotations"> </td> 741</tr></tbody> 742</table></div> 743</div> 744</div> 745<hr> 746<div class="refsect2"> 747<a name="GST-READ-UINT16-BE:CAPS"></a><h3>GST_READ_UINT16_BE()</h3> 748<pre class="programlisting"># define GST_READ_UINT16_BE(data) _GST_FAST_READ (16, data) 749</pre> 750<p>Read a 16 bit unsigned integer value in big endian format from the memory buffer.</p> 751<div class="refsect3"> 752<a name="GST-READ-UINT16-BE.parameters"></a><h4>Parameters</h4> 753<div class="informaltable"><table class="informaltable" width="100%" border="0"> 754<colgroup> 755<col width="150px" class="parameters_name"> 756<col class="parameters_description"> 757<col width="200px" class="parameters_annotations"> 758</colgroup> 759<tbody><tr> 760<td class="parameter_name"><p>data</p></td> 761<td class="parameter_description"><p>memory location</p></td> 762<td class="parameter_annotations"> </td> 763</tr></tbody> 764</table></div> 765</div> 766</div> 767<hr> 768<div class="refsect2"> 769<a name="GST-READ-UINT24-LE:CAPS"></a><h3>GST_READ_UINT24_LE()</h3> 770<pre class="programlisting">#define GST_READ_UINT24_LE(data) __gst_slow_read24_le((const guint8 *)(data)) 771</pre> 772<p>Read a 24 bit unsigned integer value in little endian format from the memory buffer.</p> 773<div class="refsect3"> 774<a name="GST-READ-UINT24-LE.parameters"></a><h4>Parameters</h4> 775<div class="informaltable"><table class="informaltable" width="100%" border="0"> 776<colgroup> 777<col width="150px" class="parameters_name"> 778<col class="parameters_description"> 779<col width="200px" class="parameters_annotations"> 780</colgroup> 781<tbody><tr> 782<td class="parameter_name"><p>data</p></td> 783<td class="parameter_description"><p>memory location</p></td> 784<td class="parameter_annotations"> </td> 785</tr></tbody> 786</table></div> 787</div> 788</div> 789<hr> 790<div class="refsect2"> 791<a name="GST-READ-UINT24-BE:CAPS"></a><h3>GST_READ_UINT24_BE()</h3> 792<pre class="programlisting">#define GST_READ_UINT24_BE(data) __gst_slow_read24_be((const guint8 *)(data)) 793</pre> 794<p>Read a 24 bit unsigned integer value in big endian format from the memory buffer.</p> 795<div class="refsect3"> 796<a name="GST-READ-UINT24-BE.parameters"></a><h4>Parameters</h4> 797<div class="informaltable"><table class="informaltable" width="100%" border="0"> 798<colgroup> 799<col width="150px" class="parameters_name"> 800<col class="parameters_description"> 801<col width="200px" class="parameters_annotations"> 802</colgroup> 803<tbody><tr> 804<td class="parameter_name"><p>data</p></td> 805<td class="parameter_description"><p>memory location</p></td> 806<td class="parameter_annotations"> </td> 807</tr></tbody> 808</table></div> 809</div> 810</div> 811<hr> 812<div class="refsect2"> 813<a name="GST-READ-UINT32-LE:CAPS"></a><h3>GST_READ_UINT32_LE()</h3> 814<pre class="programlisting"># define GST_READ_UINT32_LE(data) _GST_FAST_READ_SWAP (32, data) 815</pre> 816<p>Read a 32 bit unsigned integer value in little endian format from the memory buffer.</p> 817<div class="refsect3"> 818<a name="GST-READ-UINT32-LE.parameters"></a><h4>Parameters</h4> 819<div class="informaltable"><table class="informaltable" width="100%" border="0"> 820<colgroup> 821<col width="150px" class="parameters_name"> 822<col class="parameters_description"> 823<col width="200px" class="parameters_annotations"> 824</colgroup> 825<tbody><tr> 826<td class="parameter_name"><p>data</p></td> 827<td class="parameter_description"><p>memory location</p></td> 828<td class="parameter_annotations"> </td> 829</tr></tbody> 830</table></div> 831</div> 832</div> 833<hr> 834<div class="refsect2"> 835<a name="GST-READ-UINT32-BE:CAPS"></a><h3>GST_READ_UINT32_BE()</h3> 836<pre class="programlisting"># define GST_READ_UINT32_BE(data) _GST_FAST_READ (32, data) 837</pre> 838<p>Read a 32 bit unsigned integer value in big endian format from the memory buffer.</p> 839<div class="refsect3"> 840<a name="GST-READ-UINT32-BE.parameters"></a><h4>Parameters</h4> 841<div class="informaltable"><table class="informaltable" width="100%" border="0"> 842<colgroup> 843<col width="150px" class="parameters_name"> 844<col class="parameters_description"> 845<col width="200px" class="parameters_annotations"> 846</colgroup> 847<tbody><tr> 848<td class="parameter_name"><p>data</p></td> 849<td class="parameter_description"><p>memory location</p></td> 850<td class="parameter_annotations"> </td> 851</tr></tbody> 852</table></div> 853</div> 854</div> 855<hr> 856<div class="refsect2"> 857<a name="GST-READ-UINT64-LE:CAPS"></a><h3>GST_READ_UINT64_LE()</h3> 858<pre class="programlisting"># define GST_READ_UINT64_LE(data) _GST_FAST_READ_SWAP (64, data) 859</pre> 860<p>Read a 64 bit unsigned integer value in little endian format from the memory buffer.</p> 861<div class="refsect3"> 862<a name="GST-READ-UINT64-LE.parameters"></a><h4>Parameters</h4> 863<div class="informaltable"><table class="informaltable" width="100%" border="0"> 864<colgroup> 865<col width="150px" class="parameters_name"> 866<col class="parameters_description"> 867<col width="200px" class="parameters_annotations"> 868</colgroup> 869<tbody><tr> 870<td class="parameter_name"><p>data</p></td> 871<td class="parameter_description"><p>memory location</p></td> 872<td class="parameter_annotations"> </td> 873</tr></tbody> 874</table></div> 875</div> 876</div> 877<hr> 878<div class="refsect2"> 879<a name="GST-READ-UINT64-BE:CAPS"></a><h3>GST_READ_UINT64_BE()</h3> 880<pre class="programlisting"># define GST_READ_UINT64_BE(data) _GST_FAST_READ (64, data) 881</pre> 882<p>Read a 64 bit unsigned integer value in big endian format from the memory buffer.</p> 883<div class="refsect3"> 884<a name="GST-READ-UINT64-BE.parameters"></a><h4>Parameters</h4> 885<div class="informaltable"><table class="informaltable" width="100%" border="0"> 886<colgroup> 887<col width="150px" class="parameters_name"> 888<col class="parameters_description"> 889<col width="200px" class="parameters_annotations"> 890</colgroup> 891<tbody><tr> 892<td class="parameter_name"><p>data</p></td> 893<td class="parameter_description"><p>memory location</p></td> 894<td class="parameter_annotations"> </td> 895</tr></tbody> 896</table></div> 897</div> 898</div> 899<hr> 900<div class="refsect2"> 901<a name="GST-READ-FLOAT-LE:CAPS"></a><h3>GST_READ_FLOAT_LE ()</h3> 902<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a> 903GST_READ_FLOAT_LE (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>);</pre> 904<p>Read a 32 bit float value in little endian format from the memory buffer.</p> 905<div class="refsect3"> 906<a name="GST-READ-FLOAT-LE.parameters"></a><h4>Parameters</h4> 907<div class="informaltable"><table class="informaltable" width="100%" border="0"> 908<colgroup> 909<col width="150px" class="parameters_name"> 910<col class="parameters_description"> 911<col width="200px" class="parameters_annotations"> 912</colgroup> 913<tbody><tr> 914<td class="parameter_name"><p>data</p></td> 915<td class="parameter_description"><p>memory location</p></td> 916<td class="parameter_annotations"> </td> 917</tr></tbody> 918</table></div> 919</div> 920<div class="refsect3"> 921<a name="GST-READ-FLOAT-LE.returns"></a><h4>Returns</h4> 922<p> The floating point value read from <em class="parameter"><code>data</code></em> 923</p> 924</div> 925</div> 926<hr> 927<div class="refsect2"> 928<a name="GST-READ-FLOAT-BE:CAPS"></a><h3>GST_READ_FLOAT_BE ()</h3> 929<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a> 930GST_READ_FLOAT_BE (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>);</pre> 931<p>Read a 32 bit float value in big endian format from the memory buffer.</p> 932<div class="refsect3"> 933<a name="GST-READ-FLOAT-BE.parameters"></a><h4>Parameters</h4> 934<div class="informaltable"><table class="informaltable" width="100%" border="0"> 935<colgroup> 936<col width="150px" class="parameters_name"> 937<col class="parameters_description"> 938<col width="200px" class="parameters_annotations"> 939</colgroup> 940<tbody><tr> 941<td class="parameter_name"><p>data</p></td> 942<td class="parameter_description"><p>memory location</p></td> 943<td class="parameter_annotations"> </td> 944</tr></tbody> 945</table></div> 946</div> 947<div class="refsect3"> 948<a name="GST-READ-FLOAT-BE.returns"></a><h4>Returns</h4> 949<p> The floating point value read from <em class="parameter"><code>data</code></em> 950</p> 951</div> 952</div> 953<hr> 954<div class="refsect2"> 955<a name="GST-READ-DOUBLE-LE:CAPS"></a><h3>GST_READ_DOUBLE_LE ()</h3> 956<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> 957GST_READ_DOUBLE_LE (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>);</pre> 958<p>Read a 64 bit double value in little endian format from the memory buffer.</p> 959<div class="refsect3"> 960<a name="GST-READ-DOUBLE-LE.parameters"></a><h4>Parameters</h4> 961<div class="informaltable"><table class="informaltable" width="100%" border="0"> 962<colgroup> 963<col width="150px" class="parameters_name"> 964<col class="parameters_description"> 965<col width="200px" class="parameters_annotations"> 966</colgroup> 967<tbody><tr> 968<td class="parameter_name"><p>data</p></td> 969<td class="parameter_description"><p>memory location</p></td> 970<td class="parameter_annotations"> </td> 971</tr></tbody> 972</table></div> 973</div> 974<div class="refsect3"> 975<a name="GST-READ-DOUBLE-LE.returns"></a><h4>Returns</h4> 976<p> The double-precision floating point value read from <em class="parameter"><code>data</code></em> 977</p> 978</div> 979</div> 980<hr> 981<div class="refsect2"> 982<a name="GST-READ-DOUBLE-BE:CAPS"></a><h3>GST_READ_DOUBLE_BE ()</h3> 983<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> 984GST_READ_DOUBLE_BE (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>);</pre> 985<p>Read a 64 bit double value in big endian format from the memory buffer.</p> 986<div class="refsect3"> 987<a name="GST-READ-DOUBLE-BE.parameters"></a><h4>Parameters</h4> 988<div class="informaltable"><table class="informaltable" width="100%" border="0"> 989<colgroup> 990<col width="150px" class="parameters_name"> 991<col class="parameters_description"> 992<col width="200px" class="parameters_annotations"> 993</colgroup> 994<tbody><tr> 995<td class="parameter_name"><p>data</p></td> 996<td class="parameter_description"><p>memory location</p></td> 997<td class="parameter_annotations"> </td> 998</tr></tbody> 999</table></div> 1000</div> 1001<div class="refsect3"> 1002<a name="GST-READ-DOUBLE-BE.returns"></a><h4>Returns</h4> 1003<p> The double-precision floating point value read from <em class="parameter"><code>data</code></em> 1004</p> 1005</div> 1006</div> 1007<hr> 1008<div class="refsect2"> 1009<a name="GST-WRITE-UINT8:CAPS"></a><h3>GST_WRITE_UINT8()</h3> 1010<pre class="programlisting">#define GST_WRITE_UINT8(data, num)</pre> 1011<p>Store an 8 bit unsigned integer value into the memory buffer.</p> 1012<div class="refsect3"> 1013<a name="GST-WRITE-UINT8.parameters"></a><h4>Parameters</h4> 1014<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1015<colgroup> 1016<col width="150px" class="parameters_name"> 1017<col class="parameters_description"> 1018<col width="200px" class="parameters_annotations"> 1019</colgroup> 1020<tbody> 1021<tr> 1022<td class="parameter_name"><p>data</p></td> 1023<td class="parameter_description"><p>memory location</p></td> 1024<td class="parameter_annotations"> </td> 1025</tr> 1026<tr> 1027<td class="parameter_name"><p>num</p></td> 1028<td class="parameter_description"><p>value to store</p></td> 1029<td class="parameter_annotations"> </td> 1030</tr> 1031</tbody> 1032</table></div> 1033</div> 1034</div> 1035<hr> 1036<div class="refsect2"> 1037<a name="GST-WRITE-UINT16-LE:CAPS"></a><h3>GST_WRITE_UINT16_LE()</h3> 1038<pre class="programlisting"># define GST_WRITE_UINT16_LE(data,val) _GST_FAST_WRITE_SWAP(16,data,val) 1039</pre> 1040<p>Store a 16 bit unsigned integer value in little endian format into the memory buffer.</p> 1041<div class="refsect3"> 1042<a name="GST-WRITE-UINT16-LE.parameters"></a><h4>Parameters</h4> 1043<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1044<colgroup> 1045<col width="150px" class="parameters_name"> 1046<col class="parameters_description"> 1047<col width="200px" class="parameters_annotations"> 1048</colgroup> 1049<tbody> 1050<tr> 1051<td class="parameter_name"><p>data</p></td> 1052<td class="parameter_description"><p>memory location</p></td> 1053<td class="parameter_annotations"> </td> 1054</tr> 1055<tr> 1056<td class="parameter_name"><p>val</p></td> 1057<td class="parameter_description"><p>value to store</p></td> 1058<td class="parameter_annotations"> </td> 1059</tr> 1060</tbody> 1061</table></div> 1062</div> 1063</div> 1064<hr> 1065<div class="refsect2"> 1066<a name="GST-WRITE-UINT16-BE:CAPS"></a><h3>GST_WRITE_UINT16_BE()</h3> 1067<pre class="programlisting"># define GST_WRITE_UINT16_BE(data,val) _GST_FAST_WRITE(16,data,val) 1068</pre> 1069<p>Store a 16 bit unsigned integer value in big endian format into the memory buffer.</p> 1070<div class="refsect3"> 1071<a name="GST-WRITE-UINT16-BE.parameters"></a><h4>Parameters</h4> 1072<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1073<colgroup> 1074<col width="150px" class="parameters_name"> 1075<col class="parameters_description"> 1076<col width="200px" class="parameters_annotations"> 1077</colgroup> 1078<tbody> 1079<tr> 1080<td class="parameter_name"><p>data</p></td> 1081<td class="parameter_description"><p>memory location</p></td> 1082<td class="parameter_annotations"> </td> 1083</tr> 1084<tr> 1085<td class="parameter_name"><p>val</p></td> 1086<td class="parameter_description"><p>value to store</p></td> 1087<td class="parameter_annotations"> </td> 1088</tr> 1089</tbody> 1090</table></div> 1091</div> 1092</div> 1093<hr> 1094<div class="refsect2"> 1095<a name="GST-WRITE-UINT24-LE:CAPS"></a><h3>GST_WRITE_UINT24_LE()</h3> 1096<pre class="programlisting">#define GST_WRITE_UINT24_LE(data, num)</pre> 1097<p>Store a 24 bit unsigned integer value in little endian format into the memory buffer.</p> 1098<div class="refsect3"> 1099<a name="GST-WRITE-UINT24-LE.parameters"></a><h4>Parameters</h4> 1100<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1101<colgroup> 1102<col width="150px" class="parameters_name"> 1103<col class="parameters_description"> 1104<col width="200px" class="parameters_annotations"> 1105</colgroup> 1106<tbody> 1107<tr> 1108<td class="parameter_name"><p>data</p></td> 1109<td class="parameter_description"><p>memory location</p></td> 1110<td class="parameter_annotations"> </td> 1111</tr> 1112<tr> 1113<td class="parameter_name"><p>num</p></td> 1114<td class="parameter_description"><p>value to store</p></td> 1115<td class="parameter_annotations"> </td> 1116</tr> 1117</tbody> 1118</table></div> 1119</div> 1120</div> 1121<hr> 1122<div class="refsect2"> 1123<a name="GST-WRITE-UINT24-BE:CAPS"></a><h3>GST_WRITE_UINT24_BE()</h3> 1124<pre class="programlisting">#define GST_WRITE_UINT24_BE(data, num)</pre> 1125<p>Store a 24 bit unsigned integer value in big endian format into the memory buffer.</p> 1126<div class="refsect3"> 1127<a name="GST-WRITE-UINT24-BE.parameters"></a><h4>Parameters</h4> 1128<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1129<colgroup> 1130<col width="150px" class="parameters_name"> 1131<col class="parameters_description"> 1132<col width="200px" class="parameters_annotations"> 1133</colgroup> 1134<tbody> 1135<tr> 1136<td class="parameter_name"><p>data</p></td> 1137<td class="parameter_description"><p>memory location</p></td> 1138<td class="parameter_annotations"> </td> 1139</tr> 1140<tr> 1141<td class="parameter_name"><p>num</p></td> 1142<td class="parameter_description"><p>value to store</p></td> 1143<td class="parameter_annotations"> </td> 1144</tr> 1145</tbody> 1146</table></div> 1147</div> 1148</div> 1149<hr> 1150<div class="refsect2"> 1151<a name="GST-WRITE-UINT32-LE:CAPS"></a><h3>GST_WRITE_UINT32_LE()</h3> 1152<pre class="programlisting"># define GST_WRITE_UINT32_LE(data,val) _GST_FAST_WRITE_SWAP(32,data,val) 1153</pre> 1154<p>Store a 32 bit unsigned integer value in little endian format into the memory buffer.</p> 1155<div class="refsect3"> 1156<a name="GST-WRITE-UINT32-LE.parameters"></a><h4>Parameters</h4> 1157<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1158<colgroup> 1159<col width="150px" class="parameters_name"> 1160<col class="parameters_description"> 1161<col width="200px" class="parameters_annotations"> 1162</colgroup> 1163<tbody> 1164<tr> 1165<td class="parameter_name"><p>data</p></td> 1166<td class="parameter_description"><p>memory location</p></td> 1167<td class="parameter_annotations"> </td> 1168</tr> 1169<tr> 1170<td class="parameter_name"><p>val</p></td> 1171<td class="parameter_description"><p>value to store</p></td> 1172<td class="parameter_annotations"> </td> 1173</tr> 1174</tbody> 1175</table></div> 1176</div> 1177</div> 1178<hr> 1179<div class="refsect2"> 1180<a name="GST-WRITE-UINT32-BE:CAPS"></a><h3>GST_WRITE_UINT32_BE()</h3> 1181<pre class="programlisting"># define GST_WRITE_UINT32_BE(data,val) _GST_FAST_WRITE(32,data,val) 1182</pre> 1183<p>Store a 32 bit unsigned integer value in big endian format into the memory buffer.</p> 1184<div class="refsect3"> 1185<a name="GST-WRITE-UINT32-BE.parameters"></a><h4>Parameters</h4> 1186<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1187<colgroup> 1188<col width="150px" class="parameters_name"> 1189<col class="parameters_description"> 1190<col width="200px" class="parameters_annotations"> 1191</colgroup> 1192<tbody> 1193<tr> 1194<td class="parameter_name"><p>data</p></td> 1195<td class="parameter_description"><p>memory location</p></td> 1196<td class="parameter_annotations"> </td> 1197</tr> 1198<tr> 1199<td class="parameter_name"><p>val</p></td> 1200<td class="parameter_description"><p>value to store</p></td> 1201<td class="parameter_annotations"> </td> 1202</tr> 1203</tbody> 1204</table></div> 1205</div> 1206</div> 1207<hr> 1208<div class="refsect2"> 1209<a name="GST-WRITE-UINT64-LE:CAPS"></a><h3>GST_WRITE_UINT64_LE()</h3> 1210<pre class="programlisting"># define GST_WRITE_UINT64_LE(data,val) _GST_FAST_WRITE_SWAP(64,data,val) 1211</pre> 1212<p>Store a 64 bit unsigned integer value in little endian format into the memory buffer.</p> 1213<div class="refsect3"> 1214<a name="GST-WRITE-UINT64-LE.parameters"></a><h4>Parameters</h4> 1215<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1216<colgroup> 1217<col width="150px" class="parameters_name"> 1218<col class="parameters_description"> 1219<col width="200px" class="parameters_annotations"> 1220</colgroup> 1221<tbody> 1222<tr> 1223<td class="parameter_name"><p>data</p></td> 1224<td class="parameter_description"><p>memory location</p></td> 1225<td class="parameter_annotations"> </td> 1226</tr> 1227<tr> 1228<td class="parameter_name"><p>val</p></td> 1229<td class="parameter_description"><p>value to store</p></td> 1230<td class="parameter_annotations"> </td> 1231</tr> 1232</tbody> 1233</table></div> 1234</div> 1235</div> 1236<hr> 1237<div class="refsect2"> 1238<a name="GST-WRITE-UINT64-BE:CAPS"></a><h3>GST_WRITE_UINT64_BE()</h3> 1239<pre class="programlisting"># define GST_WRITE_UINT64_BE(data,val) _GST_FAST_WRITE(64,data,val) 1240</pre> 1241<p>Store a 64 bit unsigned integer value in big endian format into the memory buffer.</p> 1242<div class="refsect3"> 1243<a name="GST-WRITE-UINT64-BE.parameters"></a><h4>Parameters</h4> 1244<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1245<colgroup> 1246<col width="150px" class="parameters_name"> 1247<col class="parameters_description"> 1248<col width="200px" class="parameters_annotations"> 1249</colgroup> 1250<tbody> 1251<tr> 1252<td class="parameter_name"><p>data</p></td> 1253<td class="parameter_description"><p>memory location</p></td> 1254<td class="parameter_annotations"> </td> 1255</tr> 1256<tr> 1257<td class="parameter_name"><p>val</p></td> 1258<td class="parameter_description"><p>value to store</p></td> 1259<td class="parameter_annotations"> </td> 1260</tr> 1261</tbody> 1262</table></div> 1263</div> 1264</div> 1265<hr> 1266<div class="refsect2"> 1267<a name="GST-WRITE-FLOAT-LE:CAPS"></a><h3>GST_WRITE_FLOAT_LE ()</h3> 1268<pre class="programlisting"><span class="returnvalue">void</span> 1269GST_WRITE_FLOAT_LE (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>, 1270 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> num</code></em>);</pre> 1271<p>Store a 32 bit float value in little endian format into the memory buffer.</p> 1272<div class="refsect3"> 1273<a name="GST-WRITE-FLOAT-LE.parameters"></a><h4>Parameters</h4> 1274<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1275<colgroup> 1276<col width="150px" class="parameters_name"> 1277<col class="parameters_description"> 1278<col width="200px" class="parameters_annotations"> 1279</colgroup> 1280<tbody> 1281<tr> 1282<td class="parameter_name"><p>data</p></td> 1283<td class="parameter_description"><p>memory location</p></td> 1284<td class="parameter_annotations"> </td> 1285</tr> 1286<tr> 1287<td class="parameter_name"><p>num</p></td> 1288<td class="parameter_description"><p>value to store</p></td> 1289<td class="parameter_annotations"> </td> 1290</tr> 1291</tbody> 1292</table></div> 1293</div> 1294</div> 1295<hr> 1296<div class="refsect2"> 1297<a name="GST-WRITE-FLOAT-BE:CAPS"></a><h3>GST_WRITE_FLOAT_BE ()</h3> 1298<pre class="programlisting"><span class="returnvalue">void</span> 1299GST_WRITE_FLOAT_BE (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>, 1300 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> num</code></em>);</pre> 1301<p>Store a 32 bit float value in big endian format into the memory buffer.</p> 1302<div class="refsect3"> 1303<a name="GST-WRITE-FLOAT-BE.parameters"></a><h4>Parameters</h4> 1304<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1305<colgroup> 1306<col width="150px" class="parameters_name"> 1307<col class="parameters_description"> 1308<col width="200px" class="parameters_annotations"> 1309</colgroup> 1310<tbody> 1311<tr> 1312<td class="parameter_name"><p>data</p></td> 1313<td class="parameter_description"><p>memory location</p></td> 1314<td class="parameter_annotations"> </td> 1315</tr> 1316<tr> 1317<td class="parameter_name"><p>num</p></td> 1318<td class="parameter_description"><p>value to store</p></td> 1319<td class="parameter_annotations"> </td> 1320</tr> 1321</tbody> 1322</table></div> 1323</div> 1324</div> 1325<hr> 1326<div class="refsect2"> 1327<a name="GST-WRITE-DOUBLE-LE:CAPS"></a><h3>GST_WRITE_DOUBLE_LE ()</h3> 1328<pre class="programlisting"><span class="returnvalue">void</span> 1329GST_WRITE_DOUBLE_LE (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>, 1330 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> num</code></em>);</pre> 1331<p>Store a 64 bit double value in little endian format into the memory buffer.</p> 1332<div class="refsect3"> 1333<a name="GST-WRITE-DOUBLE-LE.parameters"></a><h4>Parameters</h4> 1334<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1335<colgroup> 1336<col width="150px" class="parameters_name"> 1337<col class="parameters_description"> 1338<col width="200px" class="parameters_annotations"> 1339</colgroup> 1340<tbody> 1341<tr> 1342<td class="parameter_name"><p>data</p></td> 1343<td class="parameter_description"><p>memory location</p></td> 1344<td class="parameter_annotations"> </td> 1345</tr> 1346<tr> 1347<td class="parameter_name"><p>num</p></td> 1348<td class="parameter_description"><p>value to store</p></td> 1349<td class="parameter_annotations"> </td> 1350</tr> 1351</tbody> 1352</table></div> 1353</div> 1354</div> 1355<hr> 1356<div class="refsect2"> 1357<a name="GST-WRITE-DOUBLE-BE:CAPS"></a><h3>GST_WRITE_DOUBLE_BE ()</h3> 1358<pre class="programlisting"><span class="returnvalue">void</span> 1359GST_WRITE_DOUBLE_BE (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *data</code></em>, 1360 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> num</code></em>);</pre> 1361<p>Store a 64 bit double value in big endian format into the memory buffer.</p> 1362<div class="refsect3"> 1363<a name="GST-WRITE-DOUBLE-BE.parameters"></a><h4>Parameters</h4> 1364<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1365<colgroup> 1366<col width="150px" class="parameters_name"> 1367<col class="parameters_description"> 1368<col width="200px" class="parameters_annotations"> 1369</colgroup> 1370<tbody> 1371<tr> 1372<td class="parameter_name"><p>data</p></td> 1373<td class="parameter_description"><p>memory location</p></td> 1374<td class="parameter_annotations"> </td> 1375</tr> 1376<tr> 1377<td class="parameter_name"><p>num</p></td> 1378<td class="parameter_description"><p>value to store</p></td> 1379<td class="parameter_annotations"> </td> 1380</tr> 1381</tbody> 1382</table></div> 1383</div> 1384</div> 1385<hr> 1386<div class="refsect2"> 1387<a name="GST-ROUND-UP-2:CAPS"></a><h3>GST_ROUND_UP_2()</h3> 1388<pre class="programlisting">#define GST_ROUND_UP_2(num) (((num)+1)&~1) 1389</pre> 1390<p>Rounds an integer value up to the next multiple of 2.</p> 1391<div class="refsect3"> 1392<a name="GST-ROUND-UP-2.parameters"></a><h4>Parameters</h4> 1393<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1394<colgroup> 1395<col width="150px" class="parameters_name"> 1396<col class="parameters_description"> 1397<col width="200px" class="parameters_annotations"> 1398</colgroup> 1399<tbody><tr> 1400<td class="parameter_name"><p>num</p></td> 1401<td class="parameter_description"><p>integer value to round up</p></td> 1402<td class="parameter_annotations"> </td> 1403</tr></tbody> 1404</table></div> 1405</div> 1406</div> 1407<hr> 1408<div class="refsect2"> 1409<a name="GST-ROUND-UP-4:CAPS"></a><h3>GST_ROUND_UP_4()</h3> 1410<pre class="programlisting">#define GST_ROUND_UP_4(num) (((num)+3)&~3) 1411</pre> 1412<p>Rounds an integer value up to the next multiple of 4.</p> 1413<div class="refsect3"> 1414<a name="GST-ROUND-UP-4.parameters"></a><h4>Parameters</h4> 1415<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1416<colgroup> 1417<col width="150px" class="parameters_name"> 1418<col class="parameters_description"> 1419<col width="200px" class="parameters_annotations"> 1420</colgroup> 1421<tbody><tr> 1422<td class="parameter_name"><p>num</p></td> 1423<td class="parameter_description"><p>integer value to round up</p></td> 1424<td class="parameter_annotations"> </td> 1425</tr></tbody> 1426</table></div> 1427</div> 1428</div> 1429<hr> 1430<div class="refsect2"> 1431<a name="GST-ROUND-UP-8:CAPS"></a><h3>GST_ROUND_UP_8()</h3> 1432<pre class="programlisting">#define GST_ROUND_UP_8(num) (((num)+7)&~7) 1433</pre> 1434<p>Rounds an integer value up to the next multiple of 8.</p> 1435<div class="refsect3"> 1436<a name="GST-ROUND-UP-8.parameters"></a><h4>Parameters</h4> 1437<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1438<colgroup> 1439<col width="150px" class="parameters_name"> 1440<col class="parameters_description"> 1441<col width="200px" class="parameters_annotations"> 1442</colgroup> 1443<tbody><tr> 1444<td class="parameter_name"><p>num</p></td> 1445<td class="parameter_description"><p>integer value to round up</p></td> 1446<td class="parameter_annotations"> </td> 1447</tr></tbody> 1448</table></div> 1449</div> 1450</div> 1451<hr> 1452<div class="refsect2"> 1453<a name="GST-ROUND-UP-16:CAPS"></a><h3>GST_ROUND_UP_16()</h3> 1454<pre class="programlisting">#define GST_ROUND_UP_16(num) (((num)+15)&~15) 1455</pre> 1456<p>Rounds an integer value up to the next multiple of 16.</p> 1457<div class="refsect3"> 1458<a name="GST-ROUND-UP-16.parameters"></a><h4>Parameters</h4> 1459<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1460<colgroup> 1461<col width="150px" class="parameters_name"> 1462<col class="parameters_description"> 1463<col width="200px" class="parameters_annotations"> 1464</colgroup> 1465<tbody><tr> 1466<td class="parameter_name"><p>num</p></td> 1467<td class="parameter_description"><p>integer value to round up</p></td> 1468<td class="parameter_annotations"> </td> 1469</tr></tbody> 1470</table></div> 1471</div> 1472</div> 1473<hr> 1474<div class="refsect2"> 1475<a name="GST-ROUND-UP-32:CAPS"></a><h3>GST_ROUND_UP_32()</h3> 1476<pre class="programlisting">#define GST_ROUND_UP_32(num) (((num)+31)&~31) 1477</pre> 1478<p>Rounds an integer value up to the next multiple of 32.</p> 1479<div class="refsect3"> 1480<a name="GST-ROUND-UP-32.parameters"></a><h4>Parameters</h4> 1481<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1482<colgroup> 1483<col width="150px" class="parameters_name"> 1484<col class="parameters_description"> 1485<col width="200px" class="parameters_annotations"> 1486</colgroup> 1487<tbody><tr> 1488<td class="parameter_name"><p>num</p></td> 1489<td class="parameter_description"><p>integer value to round up</p></td> 1490<td class="parameter_annotations"> </td> 1491</tr></tbody> 1492</table></div> 1493</div> 1494</div> 1495<hr> 1496<div class="refsect2"> 1497<a name="GST-ROUND-UP-64:CAPS"></a><h3>GST_ROUND_UP_64()</h3> 1498<pre class="programlisting">#define GST_ROUND_UP_64(num) (((num)+63)&~63) 1499</pre> 1500<p>Rounds an integer value up to the next multiple of 64.</p> 1501<div class="refsect3"> 1502<a name="GST-ROUND-UP-64.parameters"></a><h4>Parameters</h4> 1503<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1504<colgroup> 1505<col width="150px" class="parameters_name"> 1506<col class="parameters_description"> 1507<col width="200px" class="parameters_annotations"> 1508</colgroup> 1509<tbody><tr> 1510<td class="parameter_name"><p>num</p></td> 1511<td class="parameter_description"><p>integer value to round up</p></td> 1512<td class="parameter_annotations"> </td> 1513</tr></tbody> 1514</table></div> 1515</div> 1516</div> 1517<hr> 1518<div class="refsect2"> 1519<a name="GST-ROUND-UP-128:CAPS"></a><h3>GST_ROUND_UP_128()</h3> 1520<pre class="programlisting">#define GST_ROUND_UP_128(num) (((num)+127)&~127) 1521</pre> 1522<p>Rounds an integer value up to the next multiple of 128.</p> 1523<div class="refsect3"> 1524<a name="GST-ROUND-UP-128.parameters"></a><h4>Parameters</h4> 1525<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1526<colgroup> 1527<col width="150px" class="parameters_name"> 1528<col class="parameters_description"> 1529<col width="200px" class="parameters_annotations"> 1530</colgroup> 1531<tbody><tr> 1532<td class="parameter_name"><p>num</p></td> 1533<td class="parameter_description"><p>integer value to round up</p></td> 1534<td class="parameter_annotations"> </td> 1535</tr></tbody> 1536</table></div> 1537</div> 1538<p class="since">Since: <a class="link" href="ix08.html#api-index-1.4">1.4</a></p> 1539</div> 1540<hr> 1541<div class="refsect2"> 1542<a name="GST-ROUND-UP-N:CAPS"></a><h3>GST_ROUND_UP_N()</h3> 1543<pre class="programlisting">#define GST_ROUND_UP_N(num,align) ((((num) + ((align) - 1)) & ~((align) - 1))) 1544</pre> 1545<p>Rounds an integer value up to the next multiple of <em class="parameter"><code>align</code></em> 1546. <em class="parameter"><code>align</code></em> 1547 MUST be a 1548power of two.</p> 1549<div class="refsect3"> 1550<a name="GST-ROUND-UP-N.parameters"></a><h4>Parameters</h4> 1551<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1552<colgroup> 1553<col width="150px" class="parameters_name"> 1554<col class="parameters_description"> 1555<col width="200px" class="parameters_annotations"> 1556</colgroup> 1557<tbody> 1558<tr> 1559<td class="parameter_name"><p>num</p></td> 1560<td class="parameter_description"><p>integrer value to round up</p></td> 1561<td class="parameter_annotations"> </td> 1562</tr> 1563<tr> 1564<td class="parameter_name"><p>align</p></td> 1565<td class="parameter_description"><p>a power of two to round up to</p></td> 1566<td class="parameter_annotations"> </td> 1567</tr> 1568</tbody> 1569</table></div> 1570</div> 1571</div> 1572<hr> 1573<div class="refsect2"> 1574<a name="GST-ROUND-DOWN-2:CAPS"></a><h3>GST_ROUND_DOWN_2()</h3> 1575<pre class="programlisting">#define GST_ROUND_DOWN_2(num) ((num)&(~1)) 1576</pre> 1577<p>Rounds an integer value down to the next multiple of 2.</p> 1578<div class="refsect3"> 1579<a name="GST-ROUND-DOWN-2.parameters"></a><h4>Parameters</h4> 1580<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1581<colgroup> 1582<col width="150px" class="parameters_name"> 1583<col class="parameters_description"> 1584<col width="200px" class="parameters_annotations"> 1585</colgroup> 1586<tbody><tr> 1587<td class="parameter_name"><p>num</p></td> 1588<td class="parameter_description"><p>integer value to round down</p></td> 1589<td class="parameter_annotations"> </td> 1590</tr></tbody> 1591</table></div> 1592</div> 1593</div> 1594<hr> 1595<div class="refsect2"> 1596<a name="GST-ROUND-DOWN-4:CAPS"></a><h3>GST_ROUND_DOWN_4()</h3> 1597<pre class="programlisting">#define GST_ROUND_DOWN_4(num) ((num)&(~3)) 1598</pre> 1599<p>Rounds an integer value down to the next multiple of 4.</p> 1600<div class="refsect3"> 1601<a name="GST-ROUND-DOWN-4.parameters"></a><h4>Parameters</h4> 1602<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1603<colgroup> 1604<col width="150px" class="parameters_name"> 1605<col class="parameters_description"> 1606<col width="200px" class="parameters_annotations"> 1607</colgroup> 1608<tbody><tr> 1609<td class="parameter_name"><p>num</p></td> 1610<td class="parameter_description"><p>integer value to round down</p></td> 1611<td class="parameter_annotations"> </td> 1612</tr></tbody> 1613</table></div> 1614</div> 1615</div> 1616<hr> 1617<div class="refsect2"> 1618<a name="GST-ROUND-DOWN-8:CAPS"></a><h3>GST_ROUND_DOWN_8()</h3> 1619<pre class="programlisting">#define GST_ROUND_DOWN_8(num) ((num)&(~7)) 1620</pre> 1621<p>Rounds an integer value down to the next multiple of 8.</p> 1622<div class="refsect3"> 1623<a name="GST-ROUND-DOWN-8.parameters"></a><h4>Parameters</h4> 1624<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1625<colgroup> 1626<col width="150px" class="parameters_name"> 1627<col class="parameters_description"> 1628<col width="200px" class="parameters_annotations"> 1629</colgroup> 1630<tbody><tr> 1631<td class="parameter_name"><p>num</p></td> 1632<td class="parameter_description"><p>integer value to round down</p></td> 1633<td class="parameter_annotations"> </td> 1634</tr></tbody> 1635</table></div> 1636</div> 1637</div> 1638<hr> 1639<div class="refsect2"> 1640<a name="GST-ROUND-DOWN-16:CAPS"></a><h3>GST_ROUND_DOWN_16()</h3> 1641<pre class="programlisting">#define GST_ROUND_DOWN_16(num) ((num)&(~15)) 1642</pre> 1643<p>Rounds an integer value down to the next multiple of 16.</p> 1644<div class="refsect3"> 1645<a name="GST-ROUND-DOWN-16.parameters"></a><h4>Parameters</h4> 1646<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1647<colgroup> 1648<col width="150px" class="parameters_name"> 1649<col class="parameters_description"> 1650<col width="200px" class="parameters_annotations"> 1651</colgroup> 1652<tbody><tr> 1653<td class="parameter_name"><p>num</p></td> 1654<td class="parameter_description"><p>integer value to round down</p></td> 1655<td class="parameter_annotations"> </td> 1656</tr></tbody> 1657</table></div> 1658</div> 1659</div> 1660<hr> 1661<div class="refsect2"> 1662<a name="GST-ROUND-DOWN-32:CAPS"></a><h3>GST_ROUND_DOWN_32()</h3> 1663<pre class="programlisting">#define GST_ROUND_DOWN_32(num) ((num)&(~31)) 1664</pre> 1665<p>Rounds an integer value down to the next multiple of 32.</p> 1666<div class="refsect3"> 1667<a name="GST-ROUND-DOWN-32.parameters"></a><h4>Parameters</h4> 1668<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1669<colgroup> 1670<col width="150px" class="parameters_name"> 1671<col class="parameters_description"> 1672<col width="200px" class="parameters_annotations"> 1673</colgroup> 1674<tbody><tr> 1675<td class="parameter_name"><p>num</p></td> 1676<td class="parameter_description"><p>integer value to round down</p></td> 1677<td class="parameter_annotations"> </td> 1678</tr></tbody> 1679</table></div> 1680</div> 1681</div> 1682<hr> 1683<div class="refsect2"> 1684<a name="GST-ROUND-DOWN-64:CAPS"></a><h3>GST_ROUND_DOWN_64()</h3> 1685<pre class="programlisting">#define GST_ROUND_DOWN_64(num) ((num)&(~63)) 1686</pre> 1687<p>Rounds an integer value down to the next multiple of 64.</p> 1688<div class="refsect3"> 1689<a name="GST-ROUND-DOWN-64.parameters"></a><h4>Parameters</h4> 1690<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1691<colgroup> 1692<col width="150px" class="parameters_name"> 1693<col class="parameters_description"> 1694<col width="200px" class="parameters_annotations"> 1695</colgroup> 1696<tbody><tr> 1697<td class="parameter_name"><p>num</p></td> 1698<td class="parameter_description"><p>integer value to round down</p></td> 1699<td class="parameter_annotations"> </td> 1700</tr></tbody> 1701</table></div> 1702</div> 1703</div> 1704<hr> 1705<div class="refsect2"> 1706<a name="GST-ROUND-DOWN-128:CAPS"></a><h3>GST_ROUND_DOWN_128()</h3> 1707<pre class="programlisting">#define GST_ROUND_DOWN_128(num) ((num)&(~127)) 1708</pre> 1709<p>Rounds an integer value down to the next multiple of 128.</p> 1710<div class="refsect3"> 1711<a name="GST-ROUND-DOWN-128.parameters"></a><h4>Parameters</h4> 1712<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1713<colgroup> 1714<col width="150px" class="parameters_name"> 1715<col class="parameters_description"> 1716<col width="200px" class="parameters_annotations"> 1717</colgroup> 1718<tbody><tr> 1719<td class="parameter_name"><p>num</p></td> 1720<td class="parameter_description"><p>integer value to round down</p></td> 1721<td class="parameter_annotations"> </td> 1722</tr></tbody> 1723</table></div> 1724</div> 1725<p class="since">Since: <a class="link" href="ix08.html#api-index-1.4">1.4</a></p> 1726</div> 1727<hr> 1728<div class="refsect2"> 1729<a name="GST-ROUND-DOWN-N:CAPS"></a><h3>GST_ROUND_DOWN_N()</h3> 1730<pre class="programlisting">#define GST_ROUND_DOWN_N(num,align) (((num) & ~((align) - 1))) 1731</pre> 1732<p>Rounds an integer value down to the next multiple of <em class="parameter"><code>align</code></em> 1733. <em class="parameter"><code>align</code></em> 1734 MUST be a 1735power of two.</p> 1736<div class="refsect3"> 1737<a name="GST-ROUND-DOWN-N.parameters"></a><h4>Parameters</h4> 1738<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1739<colgroup> 1740<col width="150px" class="parameters_name"> 1741<col class="parameters_description"> 1742<col width="200px" class="parameters_annotations"> 1743</colgroup> 1744<tbody> 1745<tr> 1746<td class="parameter_name"><p>num</p></td> 1747<td class="parameter_description"><p>integrer value to round down</p></td> 1748<td class="parameter_annotations"> </td> 1749</tr> 1750<tr> 1751<td class="parameter_name"><p>align</p></td> 1752<td class="parameter_description"><p>a power of two to round down to</p></td> 1753<td class="parameter_annotations"> </td> 1754</tr> 1755</tbody> 1756</table></div> 1757</div> 1758</div> 1759<hr> 1760<div class="refsect2"> 1761<a name="GDOUBLE-FROM-BE:CAPS"></a><h3>GDOUBLE_FROM_BE()</h3> 1762<pre class="programlisting">#define GDOUBLE_FROM_BE(val) (GDOUBLE_TO_BE (val)) 1763</pre> 1764<p>Convert 64-bit floating point value (double) from big endian byte order 1765into native byte order.</p> 1766<div class="refsect3"> 1767<a name="GDOUBLE-FROM-BE.parameters"></a><h4>Parameters</h4> 1768<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1769<colgroup> 1770<col width="150px" class="parameters_name"> 1771<col class="parameters_description"> 1772<col width="200px" class="parameters_annotations"> 1773</colgroup> 1774<tbody><tr> 1775<td class="parameter_name"><p>val</p></td> 1776<td class="parameter_description"><p>value</p></td> 1777<td class="parameter_annotations"> </td> 1778</tr></tbody> 1779</table></div> 1780</div> 1781</div> 1782<hr> 1783<div class="refsect2"> 1784<a name="GDOUBLE-FROM-LE:CAPS"></a><h3>GDOUBLE_FROM_LE()</h3> 1785<pre class="programlisting">#define GDOUBLE_FROM_LE(val) (GDOUBLE_TO_LE (val)) 1786</pre> 1787<p>Convert 64-bit floating point value (double) from little endian byte order 1788into native byte order.</p> 1789<div class="refsect3"> 1790<a name="GDOUBLE-FROM-LE.parameters"></a><h4>Parameters</h4> 1791<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1792<colgroup> 1793<col width="150px" class="parameters_name"> 1794<col class="parameters_description"> 1795<col width="200px" class="parameters_annotations"> 1796</colgroup> 1797<tbody><tr> 1798<td class="parameter_name"><p>val</p></td> 1799<td class="parameter_description"><p>value</p></td> 1800<td class="parameter_annotations"> </td> 1801</tr></tbody> 1802</table></div> 1803</div> 1804</div> 1805<hr> 1806<div class="refsect2"> 1807<a name="GDOUBLE-SWAP-LE-BE:CAPS"></a><h3>GDOUBLE_SWAP_LE_BE ()</h3> 1808<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> 1809GDOUBLE_SWAP_LE_BE (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> in</code></em>);</pre> 1810<p>Swap byte order of a 64-bit floating point value (double).</p> 1811<div class="refsect3"> 1812<a name="GDOUBLE-SWAP-LE-BE.parameters"></a><h4>Parameters</h4> 1813<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1814<colgroup> 1815<col width="150px" class="parameters_name"> 1816<col class="parameters_description"> 1817<col width="200px" class="parameters_annotations"> 1818</colgroup> 1819<tbody><tr> 1820<td class="parameter_name"><p>in</p></td> 1821<td class="parameter_description"><p>input value</p></td> 1822<td class="parameter_annotations"> </td> 1823</tr></tbody> 1824</table></div> 1825</div> 1826<div class="refsect3"> 1827<a name="GDOUBLE-SWAP-LE-BE.returns"></a><h4>Returns</h4> 1828<p> <em class="parameter"><code>in</code></em> 1829byte-swapped.</p> 1830</div> 1831</div> 1832<hr> 1833<div class="refsect2"> 1834<a name="GDOUBLE-TO-BE:CAPS"></a><h3>GDOUBLE_TO_BE()</h3> 1835<pre class="programlisting">#define GDOUBLE_TO_BE(val) (GDOUBLE_SWAP_LE_BE (val)) 1836</pre> 1837<p>Convert 64-bit floating point value (double) from native byte order into 1838big endian byte order.</p> 1839<div class="refsect3"> 1840<a name="GDOUBLE-TO-BE.parameters"></a><h4>Parameters</h4> 1841<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1842<colgroup> 1843<col width="150px" class="parameters_name"> 1844<col class="parameters_description"> 1845<col width="200px" class="parameters_annotations"> 1846</colgroup> 1847<tbody><tr> 1848<td class="parameter_name"><p>val</p></td> 1849<td class="parameter_description"><p>value</p></td> 1850<td class="parameter_annotations"> </td> 1851</tr></tbody> 1852</table></div> 1853</div> 1854</div> 1855<hr> 1856<div class="refsect2"> 1857<a name="GDOUBLE-TO-LE:CAPS"></a><h3>GDOUBLE_TO_LE()</h3> 1858<pre class="programlisting">#define GDOUBLE_TO_LE(val) ((gdouble) (val)) 1859</pre> 1860<p>Convert 64-bit floating point value (double) from native byte order into 1861little endian byte order.</p> 1862<div class="refsect3"> 1863<a name="GDOUBLE-TO-LE.parameters"></a><h4>Parameters</h4> 1864<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1865<colgroup> 1866<col width="150px" class="parameters_name"> 1867<col class="parameters_description"> 1868<col width="200px" class="parameters_annotations"> 1869</colgroup> 1870<tbody><tr> 1871<td class="parameter_name"><p>val</p></td> 1872<td class="parameter_description"><p>value</p></td> 1873<td class="parameter_annotations"> </td> 1874</tr></tbody> 1875</table></div> 1876</div> 1877</div> 1878<hr> 1879<div class="refsect2"> 1880<a name="GFLOAT-FROM-BE:CAPS"></a><h3>GFLOAT_FROM_BE()</h3> 1881<pre class="programlisting">#define GFLOAT_FROM_BE(val) (GFLOAT_TO_BE (val)) 1882</pre> 1883<p>Convert 32-bit floating point value (float) from big endian byte order 1884into native byte order.</p> 1885<div class="refsect3"> 1886<a name="GFLOAT-FROM-BE.parameters"></a><h4>Parameters</h4> 1887<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1888<colgroup> 1889<col width="150px" class="parameters_name"> 1890<col class="parameters_description"> 1891<col width="200px" class="parameters_annotations"> 1892</colgroup> 1893<tbody><tr> 1894<td class="parameter_name"><p>val</p></td> 1895<td class="parameter_description"><p>value</p></td> 1896<td class="parameter_annotations"> </td> 1897</tr></tbody> 1898</table></div> 1899</div> 1900</div> 1901<hr> 1902<div class="refsect2"> 1903<a name="GFLOAT-FROM-LE:CAPS"></a><h3>GFLOAT_FROM_LE()</h3> 1904<pre class="programlisting">#define GFLOAT_FROM_LE(val) (GFLOAT_TO_LE (val)) 1905</pre> 1906<p>Convert 32-bit floating point value (float) from little endian byte order 1907into native byte order.</p> 1908<div class="refsect3"> 1909<a name="GFLOAT-FROM-LE.parameters"></a><h4>Parameters</h4> 1910<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1911<colgroup> 1912<col width="150px" class="parameters_name"> 1913<col class="parameters_description"> 1914<col width="200px" class="parameters_annotations"> 1915</colgroup> 1916<tbody><tr> 1917<td class="parameter_name"><p>val</p></td> 1918<td class="parameter_description"><p>value</p></td> 1919<td class="parameter_annotations"> </td> 1920</tr></tbody> 1921</table></div> 1922</div> 1923</div> 1924<hr> 1925<div class="refsect2"> 1926<a name="GFLOAT-SWAP-LE-BE:CAPS"></a><h3>GFLOAT_SWAP_LE_BE ()</h3> 1927<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a> 1928GFLOAT_SWAP_LE_BE (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> in</code></em>);</pre> 1929<p>Swap byte order of a 32-bit floating point value (float).</p> 1930<div class="refsect3"> 1931<a name="GFLOAT-SWAP-LE-BE.parameters"></a><h4>Parameters</h4> 1932<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1933<colgroup> 1934<col width="150px" class="parameters_name"> 1935<col class="parameters_description"> 1936<col width="200px" class="parameters_annotations"> 1937</colgroup> 1938<tbody><tr> 1939<td class="parameter_name"><p>in</p></td> 1940<td class="parameter_description"><p>input value</p></td> 1941<td class="parameter_annotations"> </td> 1942</tr></tbody> 1943</table></div> 1944</div> 1945<div class="refsect3"> 1946<a name="GFLOAT-SWAP-LE-BE.returns"></a><h4>Returns</h4> 1947<p> <em class="parameter"><code>in</code></em> 1948byte-swapped.</p> 1949</div> 1950</div> 1951<hr> 1952<div class="refsect2"> 1953<a name="GFLOAT-TO-BE:CAPS"></a><h3>GFLOAT_TO_BE()</h3> 1954<pre class="programlisting">#define GFLOAT_TO_BE(val) (GFLOAT_SWAP_LE_BE (val)) 1955</pre> 1956<p>Convert 32-bit floating point value (float) from native byte order into 1957big endian byte order.</p> 1958<div class="refsect3"> 1959<a name="GFLOAT-TO-BE.parameters"></a><h4>Parameters</h4> 1960<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1961<colgroup> 1962<col width="150px" class="parameters_name"> 1963<col class="parameters_description"> 1964<col width="200px" class="parameters_annotations"> 1965</colgroup> 1966<tbody><tr> 1967<td class="parameter_name"><p>val</p></td> 1968<td class="parameter_description"><p>value</p></td> 1969<td class="parameter_annotations"> </td> 1970</tr></tbody> 1971</table></div> 1972</div> 1973</div> 1974<hr> 1975<div class="refsect2"> 1976<a name="GFLOAT-TO-LE:CAPS"></a><h3>GFLOAT_TO_LE()</h3> 1977<pre class="programlisting">#define GFLOAT_TO_LE(val) ((gfloat) (val)) 1978</pre> 1979<p>Convert 32-bit floating point value (float) from native byte order into 1980little endian byte order.</p> 1981<div class="refsect3"> 1982<a name="GFLOAT-TO-LE.parameters"></a><h4>Parameters</h4> 1983<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1984<colgroup> 1985<col width="150px" class="parameters_name"> 1986<col class="parameters_description"> 1987<col width="200px" class="parameters_annotations"> 1988</colgroup> 1989<tbody><tr> 1990<td class="parameter_name"><p>val</p></td> 1991<td class="parameter_description"><p>value</p></td> 1992<td class="parameter_annotations"> </td> 1993</tr></tbody> 1994</table></div> 1995</div> 1996</div> 1997<hr> 1998<div class="refsect2"> 1999<a name="gst-guint64-to-gdouble"></a><h3>gst_guint64_to_gdouble()</h3> 2000<pre class="programlisting">#define gst_guint64_to_gdouble(value) gst_util_guint64_to_gdouble(value) 2001</pre> 2002<p>Convert <em class="parameter"><code>value</code></em> 2003 to a gdouble.</p> 2004<div class="refsect3"> 2005<a name="gst-guint64-to-gdouble.parameters"></a><h4>Parameters</h4> 2006<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2007<colgroup> 2008<col width="150px" class="parameters_name"> 2009<col class="parameters_description"> 2010<col width="200px" class="parameters_annotations"> 2011</colgroup> 2012<tbody><tr> 2013<td class="parameter_name"><p>value</p></td> 2014<td class="parameter_description"><p>the <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> value to convert</p></td> 2015<td class="parameter_annotations"> </td> 2016</tr></tbody> 2017</table></div> 2018</div> 2019<div class="refsect3"> 2020<a name="gst-guint64-to-gdouble.returns"></a><h4>Returns</h4> 2021<p> <em class="parameter"><code>value</code></em> 2022converted to a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>.</p> 2023</div> 2024</div> 2025<hr> 2026<div class="refsect2"> 2027<a name="gst-gdouble-to-guint64"></a><h3>gst_gdouble_to_guint64()</h3> 2028<pre class="programlisting">#define gst_gdouble_to_guint64(value) gst_util_gdouble_to_guint64(value) 2029</pre> 2030<p>Convert <em class="parameter"><code>value</code></em> 2031 to a guint64.</p> 2032<div class="refsect3"> 2033<a name="gst-gdouble-to-guint64.parameters"></a><h4>Parameters</h4> 2034<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2035<colgroup> 2036<col width="150px" class="parameters_name"> 2037<col class="parameters_description"> 2038<col width="200px" class="parameters_annotations"> 2039</colgroup> 2040<tbody><tr> 2041<td class="parameter_name"><p>value</p></td> 2042<td class="parameter_description"><p>the <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value to convert</p></td> 2043<td class="parameter_annotations"> </td> 2044</tr></tbody> 2045</table></div> 2046</div> 2047<div class="refsect3"> 2048<a name="gst-gdouble-to-guint64.returns"></a><h4>Returns</h4> 2049<p> <em class="parameter"><code>value</code></em> 2050converted to a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>.</p> 2051</div> 2052</div> 2053<hr> 2054<div class="refsect2"> 2055<a name="gst-util-dump-buffer"></a><h3>gst_util_dump_buffer ()</h3> 2056<pre class="programlisting"><span class="returnvalue">void</span> 2057gst_util_dump_buffer (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buf</code></em>);</pre> 2058<p>Dumps the buffer memory into a hex representation. Useful for debugging.</p> 2059<div class="refsect3"> 2060<a name="gst-util-dump-buffer.parameters"></a><h4>Parameters</h4> 2061<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2062<colgroup> 2063<col width="150px" class="parameters_name"> 2064<col class="parameters_description"> 2065<col width="200px" class="parameters_annotations"> 2066</colgroup> 2067<tbody><tr> 2068<td class="parameter_name"><p>buf</p></td> 2069<td class="parameter_description"><p>a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> whose memory to dump</p></td> 2070<td class="parameter_annotations"> </td> 2071</tr></tbody> 2072</table></div> 2073</div> 2074<p class="since">Since: <a class="link" href="ix03.html#api-index-1.14">1.14</a></p> 2075</div> 2076<hr> 2077<div class="refsect2"> 2078<a name="gst-util-dump-mem"></a><h3>gst_util_dump_mem ()</h3> 2079<pre class="programlisting"><span class="returnvalue">void</span> 2080gst_util_dump_mem (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *mem</code></em>, 2081 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre> 2082<p>Dumps the memory block into a hex representation. Useful for debugging.</p> 2083<div class="refsect3"> 2084<a name="gst-util-dump-mem.parameters"></a><h4>Parameters</h4> 2085<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2086<colgroup> 2087<col width="150px" class="parameters_name"> 2088<col class="parameters_description"> 2089<col width="200px" class="parameters_annotations"> 2090</colgroup> 2091<tbody> 2092<tr> 2093<td class="parameter_name"><p>mem</p></td> 2094<td class="parameter_description"><p>a pointer to the memory to dump. </p></td> 2095<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></td> 2096</tr> 2097<tr> 2098<td class="parameter_name"><p>size</p></td> 2099<td class="parameter_description"><p>the size of the memory block to dump</p></td> 2100<td class="parameter_annotations"> </td> 2101</tr> 2102</tbody> 2103</table></div> 2104</div> 2105</div> 2106<hr> 2107<div class="refsect2"> 2108<a name="gst-util-uint64-scale"></a><h3>gst_util_uint64_scale ()</h3> 2109<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 2110gst_util_uint64_scale (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> val</code></em>, 2111 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> num</code></em>, 2112 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> denom</code></em>);</pre> 2113<p>Scale <em class="parameter"><code>val</code></em> 2114 by the rational number <em class="parameter"><code>num</code></em> 2115 / <em class="parameter"><code>denom</code></em> 2116, avoiding overflows and 2117underflows and without loss of precision.</p> 2118<p>This function can potentially be very slow if val and num are both 2119greater than G_MAXUINT32.</p> 2120<div class="refsect3"> 2121<a name="gst-util-uint64-scale.parameters"></a><h4>Parameters</h4> 2122<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2123<colgroup> 2124<col width="150px" class="parameters_name"> 2125<col class="parameters_description"> 2126<col width="200px" class="parameters_annotations"> 2127</colgroup> 2128<tbody> 2129<tr> 2130<td class="parameter_name"><p>val</p></td> 2131<td class="parameter_description"><p>the number to scale</p></td> 2132<td class="parameter_annotations"> </td> 2133</tr> 2134<tr> 2135<td class="parameter_name"><p>num</p></td> 2136<td class="parameter_description"><p>the numerator of the scale ratio</p></td> 2137<td class="parameter_annotations"> </td> 2138</tr> 2139<tr> 2140<td class="parameter_name"><p>denom</p></td> 2141<td class="parameter_description"><p>the denominator of the scale ratio</p></td> 2142<td class="parameter_annotations"> </td> 2143</tr> 2144</tbody> 2145</table></div> 2146</div> 2147<div class="refsect3"> 2148<a name="gst-util-uint64-scale.returns"></a><h4>Returns</h4> 2149<p> <em class="parameter"><code>val</code></em> 2150* <em class="parameter"><code>num</code></em> 2151/ <em class="parameter"><code>denom</code></em> 2152. In the case of an overflow, this 2153function returns G_MAXUINT64. If the result is not exactly 2154representable as an integer it is truncated. See also 2155<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-round" title="gst_util_uint64_scale_round ()"><code class="function">gst_util_uint64_scale_round()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-ceil" title="gst_util_uint64_scale_ceil ()"><code class="function">gst_util_uint64_scale_ceil()</code></a>, 2156<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int" title="gst_util_uint64_scale_int ()"><code class="function">gst_util_uint64_scale_int()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-round" title="gst_util_uint64_scale_int_round ()"><code class="function">gst_util_uint64_scale_int_round()</code></a>, 2157<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-ceil" title="gst_util_uint64_scale_int_ceil ()"><code class="function">gst_util_uint64_scale_int_ceil()</code></a>.</p> 2158</div> 2159</div> 2160<hr> 2161<div class="refsect2"> 2162<a name="gst-util-uint64-scale-round"></a><h3>gst_util_uint64_scale_round ()</h3> 2163<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 2164gst_util_uint64_scale_round (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> val</code></em>, 2165 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> num</code></em>, 2166 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> denom</code></em>);</pre> 2167<p>Scale <em class="parameter"><code>val</code></em> 2168 by the rational number <em class="parameter"><code>num</code></em> 2169 / <em class="parameter"><code>denom</code></em> 2170, avoiding overflows and 2171underflows and without loss of precision.</p> 2172<p>This function can potentially be very slow if val and num are both 2173greater than G_MAXUINT32.</p> 2174<div class="refsect3"> 2175<a name="gst-util-uint64-scale-round.parameters"></a><h4>Parameters</h4> 2176<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2177<colgroup> 2178<col width="150px" class="parameters_name"> 2179<col class="parameters_description"> 2180<col width="200px" class="parameters_annotations"> 2181</colgroup> 2182<tbody> 2183<tr> 2184<td class="parameter_name"><p>val</p></td> 2185<td class="parameter_description"><p>the number to scale</p></td> 2186<td class="parameter_annotations"> </td> 2187</tr> 2188<tr> 2189<td class="parameter_name"><p>num</p></td> 2190<td class="parameter_description"><p>the numerator of the scale ratio</p></td> 2191<td class="parameter_annotations"> </td> 2192</tr> 2193<tr> 2194<td class="parameter_name"><p>denom</p></td> 2195<td class="parameter_description"><p>the denominator of the scale ratio</p></td> 2196<td class="parameter_annotations"> </td> 2197</tr> 2198</tbody> 2199</table></div> 2200</div> 2201<div class="refsect3"> 2202<a name="gst-util-uint64-scale-round.returns"></a><h4>Returns</h4> 2203<p> <em class="parameter"><code>val</code></em> 2204* <em class="parameter"><code>num</code></em> 2205/ <em class="parameter"><code>denom</code></em> 2206. In the case of an overflow, this 2207function returns G_MAXUINT64. If the result is not exactly 2208representable as an integer, it is rounded to the nearest integer 2209(half-way cases are rounded up). See also <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale" title="gst_util_uint64_scale ()"><code class="function">gst_util_uint64_scale()</code></a>, 2210<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-ceil" title="gst_util_uint64_scale_ceil ()"><code class="function">gst_util_uint64_scale_ceil()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int" title="gst_util_uint64_scale_int ()"><code class="function">gst_util_uint64_scale_int()</code></a>, 2211<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-round" title="gst_util_uint64_scale_int_round ()"><code class="function">gst_util_uint64_scale_int_round()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-ceil" title="gst_util_uint64_scale_int_ceil ()"><code class="function">gst_util_uint64_scale_int_ceil()</code></a>.</p> 2212</div> 2213</div> 2214<hr> 2215<div class="refsect2"> 2216<a name="gst-util-uint64-scale-ceil"></a><h3>gst_util_uint64_scale_ceil ()</h3> 2217<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 2218gst_util_uint64_scale_ceil (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> val</code></em>, 2219 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> num</code></em>, 2220 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> denom</code></em>);</pre> 2221<p>Scale <em class="parameter"><code>val</code></em> 2222 by the rational number <em class="parameter"><code>num</code></em> 2223 / <em class="parameter"><code>denom</code></em> 2224, avoiding overflows and 2225underflows and without loss of precision.</p> 2226<p>This function can potentially be very slow if val and num are both 2227greater than G_MAXUINT32.</p> 2228<div class="refsect3"> 2229<a name="gst-util-uint64-scale-ceil.parameters"></a><h4>Parameters</h4> 2230<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2231<colgroup> 2232<col width="150px" class="parameters_name"> 2233<col class="parameters_description"> 2234<col width="200px" class="parameters_annotations"> 2235</colgroup> 2236<tbody> 2237<tr> 2238<td class="parameter_name"><p>val</p></td> 2239<td class="parameter_description"><p>the number to scale</p></td> 2240<td class="parameter_annotations"> </td> 2241</tr> 2242<tr> 2243<td class="parameter_name"><p>num</p></td> 2244<td class="parameter_description"><p>the numerator of the scale ratio</p></td> 2245<td class="parameter_annotations"> </td> 2246</tr> 2247<tr> 2248<td class="parameter_name"><p>denom</p></td> 2249<td class="parameter_description"><p>the denominator of the scale ratio</p></td> 2250<td class="parameter_annotations"> </td> 2251</tr> 2252</tbody> 2253</table></div> 2254</div> 2255<div class="refsect3"> 2256<a name="gst-util-uint64-scale-ceil.returns"></a><h4>Returns</h4> 2257<p> <em class="parameter"><code>val</code></em> 2258* <em class="parameter"><code>num</code></em> 2259/ <em class="parameter"><code>denom</code></em> 2260. In the case of an overflow, this 2261function returns G_MAXUINT64. If the result is not exactly 2262representable as an integer, it is rounded up. See also 2263<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale" title="gst_util_uint64_scale ()"><code class="function">gst_util_uint64_scale()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-round" title="gst_util_uint64_scale_round ()"><code class="function">gst_util_uint64_scale_round()</code></a>, 2264<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int" title="gst_util_uint64_scale_int ()"><code class="function">gst_util_uint64_scale_int()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-round" title="gst_util_uint64_scale_int_round ()"><code class="function">gst_util_uint64_scale_int_round()</code></a>, 2265<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-ceil" title="gst_util_uint64_scale_int_ceil ()"><code class="function">gst_util_uint64_scale_int_ceil()</code></a>.</p> 2266</div> 2267</div> 2268<hr> 2269<div class="refsect2"> 2270<a name="gst-util-uint64-scale-int"></a><h3>gst_util_uint64_scale_int ()</h3> 2271<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 2272gst_util_uint64_scale_int (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> val</code></em>, 2273 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>, 2274 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre> 2275<p>Scale <em class="parameter"><code>val</code></em> 2276 by the rational number <em class="parameter"><code>num</code></em> 2277 / <em class="parameter"><code>denom</code></em> 2278, avoiding overflows and 2279underflows and without loss of precision. <em class="parameter"><code>num</code></em> 2280 must be non-negative and 2281<em class="parameter"><code>denom</code></em> 2282 must be positive.</p> 2283<div class="refsect3"> 2284<a name="gst-util-uint64-scale-int.parameters"></a><h4>Parameters</h4> 2285<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2286<colgroup> 2287<col width="150px" class="parameters_name"> 2288<col class="parameters_description"> 2289<col width="200px" class="parameters_annotations"> 2290</colgroup> 2291<tbody> 2292<tr> 2293<td class="parameter_name"><p>val</p></td> 2294<td class="parameter_description"><p>guint64 (such as a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a>) to scale.</p></td> 2295<td class="parameter_annotations"> </td> 2296</tr> 2297<tr> 2298<td class="parameter_name"><p>num</p></td> 2299<td class="parameter_description"><p>numerator of the scale factor.</p></td> 2300<td class="parameter_annotations"> </td> 2301</tr> 2302<tr> 2303<td class="parameter_name"><p>denom</p></td> 2304<td class="parameter_description"><p>denominator of the scale factor.</p></td> 2305<td class="parameter_annotations"> </td> 2306</tr> 2307</tbody> 2308</table></div> 2309</div> 2310<div class="refsect3"> 2311<a name="gst-util-uint64-scale-int.returns"></a><h4>Returns</h4> 2312<p> <em class="parameter"><code>val</code></em> 2313* <em class="parameter"><code>num</code></em> 2314/ <em class="parameter"><code>denom</code></em> 2315. In the case of an overflow, this 2316function returns G_MAXUINT64. If the result is not exactly 2317representable as an integer, it is truncated. See also 2318<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-round" title="gst_util_uint64_scale_int_round ()"><code class="function">gst_util_uint64_scale_int_round()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-ceil" title="gst_util_uint64_scale_int_ceil ()"><code class="function">gst_util_uint64_scale_int_ceil()</code></a>, 2319<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale" title="gst_util_uint64_scale ()"><code class="function">gst_util_uint64_scale()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-round" title="gst_util_uint64_scale_round ()"><code class="function">gst_util_uint64_scale_round()</code></a>, 2320<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-ceil" title="gst_util_uint64_scale_ceil ()"><code class="function">gst_util_uint64_scale_ceil()</code></a>.</p> 2321</div> 2322</div> 2323<hr> 2324<div class="refsect2"> 2325<a name="gst-util-uint64-scale-int-round"></a><h3>gst_util_uint64_scale_int_round ()</h3> 2326<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 2327gst_util_uint64_scale_int_round (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> val</code></em>, 2328 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>, 2329 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre> 2330<p>Scale <em class="parameter"><code>val</code></em> 2331 by the rational number <em class="parameter"><code>num</code></em> 2332 / <em class="parameter"><code>denom</code></em> 2333, avoiding overflows and 2334underflows and without loss of precision. <em class="parameter"><code>num</code></em> 2335 must be non-negative and 2336<em class="parameter"><code>denom</code></em> 2337 must be positive.</p> 2338<div class="refsect3"> 2339<a name="gst-util-uint64-scale-int-round.parameters"></a><h4>Parameters</h4> 2340<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2341<colgroup> 2342<col width="150px" class="parameters_name"> 2343<col class="parameters_description"> 2344<col width="200px" class="parameters_annotations"> 2345</colgroup> 2346<tbody> 2347<tr> 2348<td class="parameter_name"><p>val</p></td> 2349<td class="parameter_description"><p>guint64 (such as a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a>) to scale.</p></td> 2350<td class="parameter_annotations"> </td> 2351</tr> 2352<tr> 2353<td class="parameter_name"><p>num</p></td> 2354<td class="parameter_description"><p>numerator of the scale factor.</p></td> 2355<td class="parameter_annotations"> </td> 2356</tr> 2357<tr> 2358<td class="parameter_name"><p>denom</p></td> 2359<td class="parameter_description"><p>denominator of the scale factor.</p></td> 2360<td class="parameter_annotations"> </td> 2361</tr> 2362</tbody> 2363</table></div> 2364</div> 2365<div class="refsect3"> 2366<a name="gst-util-uint64-scale-int-round.returns"></a><h4>Returns</h4> 2367<p> <em class="parameter"><code>val</code></em> 2368* <em class="parameter"><code>num</code></em> 2369/ <em class="parameter"><code>denom</code></em> 2370. In the case of an overflow, this 2371function returns G_MAXUINT64. If the result is not exactly 2372representable as an integer, it is rounded to the nearest integer 2373(half-way cases are rounded up). See also <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int" title="gst_util_uint64_scale_int ()"><code class="function">gst_util_uint64_scale_int()</code></a>, 2374<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-ceil" title="gst_util_uint64_scale_int_ceil ()"><code class="function">gst_util_uint64_scale_int_ceil()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale" title="gst_util_uint64_scale ()"><code class="function">gst_util_uint64_scale()</code></a>, 2375<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-round" title="gst_util_uint64_scale_round ()"><code class="function">gst_util_uint64_scale_round()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-ceil" title="gst_util_uint64_scale_ceil ()"><code class="function">gst_util_uint64_scale_ceil()</code></a>.</p> 2376</div> 2377</div> 2378<hr> 2379<div class="refsect2"> 2380<a name="gst-util-uint64-scale-int-ceil"></a><h3>gst_util_uint64_scale_int_ceil ()</h3> 2381<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> 2382gst_util_uint64_scale_int_ceil (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> val</code></em>, 2383 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>, 2384 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre> 2385<p>Scale <em class="parameter"><code>val</code></em> 2386 by the rational number <em class="parameter"><code>num</code></em> 2387 / <em class="parameter"><code>denom</code></em> 2388, avoiding overflows and 2389underflows and without loss of precision. <em class="parameter"><code>num</code></em> 2390 must be non-negative and 2391<em class="parameter"><code>denom</code></em> 2392 must be positive.</p> 2393<div class="refsect3"> 2394<a name="gst-util-uint64-scale-int-ceil.parameters"></a><h4>Parameters</h4> 2395<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2396<colgroup> 2397<col width="150px" class="parameters_name"> 2398<col class="parameters_description"> 2399<col width="200px" class="parameters_annotations"> 2400</colgroup> 2401<tbody> 2402<tr> 2403<td class="parameter_name"><p>val</p></td> 2404<td class="parameter_description"><p>guint64 (such as a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a>) to scale.</p></td> 2405<td class="parameter_annotations"> </td> 2406</tr> 2407<tr> 2408<td class="parameter_name"><p>num</p></td> 2409<td class="parameter_description"><p>numerator of the scale factor.</p></td> 2410<td class="parameter_annotations"> </td> 2411</tr> 2412<tr> 2413<td class="parameter_name"><p>denom</p></td> 2414<td class="parameter_description"><p>denominator of the scale factor.</p></td> 2415<td class="parameter_annotations"> </td> 2416</tr> 2417</tbody> 2418</table></div> 2419</div> 2420<div class="refsect3"> 2421<a name="gst-util-uint64-scale-int-ceil.returns"></a><h4>Returns</h4> 2422<p> <em class="parameter"><code>val</code></em> 2423* <em class="parameter"><code>num</code></em> 2424/ <em class="parameter"><code>denom</code></em> 2425. In the case of an overflow, this 2426function returns G_MAXUINT64. If the result is not exactly 2427representable as an integer, it is rounded up. See also 2428<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int" title="gst_util_uint64_scale_int ()"><code class="function">gst_util_uint64_scale_int()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-int-round" title="gst_util_uint64_scale_int_round ()"><code class="function">gst_util_uint64_scale_int_round()</code></a>, 2429<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale" title="gst_util_uint64_scale ()"><code class="function">gst_util_uint64_scale()</code></a>, <a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-round" title="gst_util_uint64_scale_round ()"><code class="function">gst_util_uint64_scale_round()</code></a>, 2430<a class="link" href="gstreamer-GstUtils.html#gst-util-uint64-scale-ceil" title="gst_util_uint64_scale_ceil ()"><code class="function">gst_util_uint64_scale_ceil()</code></a>.</p> 2431</div> 2432</div> 2433<hr> 2434<div class="refsect2"> 2435<a name="gst-util-greatest-common-divisor"></a><h3>gst_util_greatest_common_divisor ()</h3> 2436<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> 2437gst_util_greatest_common_divisor (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a</code></em>, 2438 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b</code></em>);</pre> 2439<p>Calculates the greatest common divisor of <em class="parameter"><code>a</code></em> 2440 2441and <em class="parameter"><code>b</code></em> 2442.</p> 2443<div class="refsect3"> 2444<a name="gst-util-greatest-common-divisor.parameters"></a><h4>Parameters</h4> 2445<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2446<colgroup> 2447<col width="150px" class="parameters_name"> 2448<col class="parameters_description"> 2449<col width="200px" class="parameters_annotations"> 2450</colgroup> 2451<tbody> 2452<tr> 2453<td class="parameter_name"><p>a</p></td> 2454<td class="parameter_description"><p>First value as <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td> 2455<td class="parameter_annotations"> </td> 2456</tr> 2457<tr> 2458<td class="parameter_name"><p>b</p></td> 2459<td class="parameter_description"><p>Second value as <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td> 2460<td class="parameter_annotations"> </td> 2461</tr> 2462</tbody> 2463</table></div> 2464</div> 2465<div class="refsect3"> 2466<a name="gst-util-greatest-common-divisor.returns"></a><h4>Returns</h4> 2467<p> Greatest common divisor of <em class="parameter"><code>a</code></em> 2468and <em class="parameter"><code>b</code></em> 2469</p> 2470</div> 2471</div> 2472<hr> 2473<div class="refsect2"> 2474<a name="gst-util-greatest-common-divisor-int64"></a><h3>gst_util_greatest_common_divisor_int64 ()</h3> 2475<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="returnvalue">gint64</span></a> 2476gst_util_greatest_common_divisor_int64 2477 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> a</code></em>, 2478 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> b</code></em>);</pre> 2479<p>Calculates the greatest common divisor of <em class="parameter"><code>a</code></em> 2480 2481and <em class="parameter"><code>b</code></em> 2482.</p> 2483<div class="refsect3"> 2484<a name="gst-util-greatest-common-divisor-int64.parameters"></a><h4>Parameters</h4> 2485<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2486<colgroup> 2487<col width="150px" class="parameters_name"> 2488<col class="parameters_description"> 2489<col width="200px" class="parameters_annotations"> 2490</colgroup> 2491<tbody> 2492<tr> 2493<td class="parameter_name"><p>a</p></td> 2494<td class="parameter_description"><p>First value as <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></p></td> 2495<td class="parameter_annotations"> </td> 2496</tr> 2497<tr> 2498<td class="parameter_name"><p>b</p></td> 2499<td class="parameter_description"><p>Second value as <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></p></td> 2500<td class="parameter_annotations"> </td> 2501</tr> 2502</tbody> 2503</table></div> 2504</div> 2505<div class="refsect3"> 2506<a name="gst-util-greatest-common-divisor-int64.returns"></a><h4>Returns</h4> 2507<p> Greatest common divisor of <em class="parameter"><code>a</code></em> 2508and <em class="parameter"><code>b</code></em> 2509</p> 2510</div> 2511</div> 2512<hr> 2513<div class="refsect2"> 2514<a name="gst-util-fraction-to-double"></a><h3>gst_util_fraction_to_double ()</h3> 2515<pre class="programlisting"><span class="returnvalue">void</span> 2516gst_util_fraction_to_double (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> src_n</code></em>, 2517 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> src_d</code></em>, 2518 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *dest</code></em>);</pre> 2519<p>Transforms a fraction to a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>.</p> 2520<div class="refsect3"> 2521<a name="gst-util-fraction-to-double.parameters"></a><h4>Parameters</h4> 2522<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2523<colgroup> 2524<col width="150px" class="parameters_name"> 2525<col class="parameters_description"> 2526<col width="200px" class="parameters_annotations"> 2527</colgroup> 2528<tbody> 2529<tr> 2530<td class="parameter_name"><p>src_n</p></td> 2531<td class="parameter_description"><p>Fraction numerator as <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td> 2532<td class="parameter_annotations"> </td> 2533</tr> 2534<tr> 2535<td class="parameter_name"><p>src_d</p></td> 2536<td class="parameter_description"><p>Fraction denominator <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td> 2537<td class="parameter_annotations"> </td> 2538</tr> 2539<tr> 2540<td class="parameter_name"><p>dest</p></td> 2541<td class="parameter_description"><p>pointer to a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> for the result. </p></td> 2542<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2543</tr> 2544</tbody> 2545</table></div> 2546</div> 2547</div> 2548<hr> 2549<div class="refsect2"> 2550<a name="gst-util-double-to-fraction"></a><h3>gst_util_double_to_fraction ()</h3> 2551<pre class="programlisting"><span class="returnvalue">void</span> 2552gst_util_double_to_fraction (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> src</code></em>, 2553 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *dest_n</code></em>, 2554 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *dest_d</code></em>);</pre> 2555<p>Transforms a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to a fraction and simplifies 2556the result.</p> 2557<div class="refsect3"> 2558<a name="gst-util-double-to-fraction.parameters"></a><h4>Parameters</h4> 2559<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2560<colgroup> 2561<col width="150px" class="parameters_name"> 2562<col class="parameters_description"> 2563<col width="200px" class="parameters_annotations"> 2564</colgroup> 2565<tbody> 2566<tr> 2567<td class="parameter_name"><p>src</p></td> 2568<td class="parameter_description"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to transform</p></td> 2569<td class="parameter_annotations"> </td> 2570</tr> 2571<tr> 2572<td class="parameter_name"><p>dest_n</p></td> 2573<td class="parameter_description"><p>pointer to a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td> 2574<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2575</tr> 2576<tr> 2577<td class="parameter_name"><p>dest_d</p></td> 2578<td class="parameter_description"><p>pointer to a <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td> 2579<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2580</tr> 2581</tbody> 2582</table></div> 2583</div> 2584</div> 2585<hr> 2586<div class="refsect2"> 2587<a name="gst-util-fraction-multiply"></a><h3>gst_util_fraction_multiply ()</h3> 2588<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 2589gst_util_fraction_multiply (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>, 2590 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>, 2591 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>, 2592 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>, 2593 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_n</code></em>, 2594 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_d</code></em>);</pre> 2595<p>Multiplies the fractions <em class="parameter"><code>a_n</code></em> 2596/<em class="parameter"><code>a_d</code></em> 2597 and <em class="parameter"><code>b_n</code></em> 2598/<em class="parameter"><code>b_d</code></em> 2599 and stores 2600the result in <em class="parameter"><code>res_n</code></em> 2601 and <em class="parameter"><code>res_d</code></em> 2602.</p> 2603<div class="refsect3"> 2604<a name="gst-util-fraction-multiply.parameters"></a><h4>Parameters</h4> 2605<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2606<colgroup> 2607<col width="150px" class="parameters_name"> 2608<col class="parameters_description"> 2609<col width="200px" class="parameters_annotations"> 2610</colgroup> 2611<tbody> 2612<tr> 2613<td class="parameter_name"><p>a_n</p></td> 2614<td class="parameter_description"><p>Numerator of first value</p></td> 2615<td class="parameter_annotations"> </td> 2616</tr> 2617<tr> 2618<td class="parameter_name"><p>a_d</p></td> 2619<td class="parameter_description"><p>Denominator of first value</p></td> 2620<td class="parameter_annotations"> </td> 2621</tr> 2622<tr> 2623<td class="parameter_name"><p>b_n</p></td> 2624<td class="parameter_description"><p>Numerator of second value</p></td> 2625<td class="parameter_annotations"> </td> 2626</tr> 2627<tr> 2628<td class="parameter_name"><p>b_d</p></td> 2629<td class="parameter_description"><p>Denominator of second value</p></td> 2630<td class="parameter_annotations"> </td> 2631</tr> 2632<tr> 2633<td class="parameter_name"><p>res_n</p></td> 2634<td class="parameter_description"><p>Pointer to <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td> 2635<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2636</tr> 2637<tr> 2638<td class="parameter_name"><p>res_d</p></td> 2639<td class="parameter_description"><p>Pointer to <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td> 2640<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2641</tr> 2642</tbody> 2643</table></div> 2644</div> 2645<div class="refsect3"> 2646<a name="gst-util-fraction-multiply.returns"></a><h4>Returns</h4> 2647<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on overflow, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p> 2648</div> 2649</div> 2650<hr> 2651<div class="refsect2"> 2652<a name="gst-util-fraction-add"></a><h3>gst_util_fraction_add ()</h3> 2653<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 2654gst_util_fraction_add (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>, 2655 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>, 2656 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>, 2657 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>, 2658 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_n</code></em>, 2659 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_d</code></em>);</pre> 2660<p>Adds the fractions <em class="parameter"><code>a_n</code></em> 2661/<em class="parameter"><code>a_d</code></em> 2662 and <em class="parameter"><code>b_n</code></em> 2663/<em class="parameter"><code>b_d</code></em> 2664 and stores 2665the result in <em class="parameter"><code>res_n</code></em> 2666 and <em class="parameter"><code>res_d</code></em> 2667.</p> 2668<div class="refsect3"> 2669<a name="gst-util-fraction-add.parameters"></a><h4>Parameters</h4> 2670<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2671<colgroup> 2672<col width="150px" class="parameters_name"> 2673<col class="parameters_description"> 2674<col width="200px" class="parameters_annotations"> 2675</colgroup> 2676<tbody> 2677<tr> 2678<td class="parameter_name"><p>a_n</p></td> 2679<td class="parameter_description"><p>Numerator of first value</p></td> 2680<td class="parameter_annotations"> </td> 2681</tr> 2682<tr> 2683<td class="parameter_name"><p>a_d</p></td> 2684<td class="parameter_description"><p>Denominator of first value</p></td> 2685<td class="parameter_annotations"> </td> 2686</tr> 2687<tr> 2688<td class="parameter_name"><p>b_n</p></td> 2689<td class="parameter_description"><p>Numerator of second value</p></td> 2690<td class="parameter_annotations"> </td> 2691</tr> 2692<tr> 2693<td class="parameter_name"><p>b_d</p></td> 2694<td class="parameter_description"><p>Denominator of second value</p></td> 2695<td class="parameter_annotations"> </td> 2696</tr> 2697<tr> 2698<td class="parameter_name"><p>res_n</p></td> 2699<td class="parameter_description"><p>Pointer to <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td> 2700<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2701</tr> 2702<tr> 2703<td class="parameter_name"><p>res_d</p></td> 2704<td class="parameter_description"><p>Pointer to <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td> 2705<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2706</tr> 2707</tbody> 2708</table></div> 2709</div> 2710<div class="refsect3"> 2711<a name="gst-util-fraction-add.returns"></a><h4>Returns</h4> 2712<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on overflow, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p> 2713</div> 2714</div> 2715<hr> 2716<div class="refsect2"> 2717<a name="gst-util-fraction-compare"></a><h3>gst_util_fraction_compare ()</h3> 2718<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> 2719gst_util_fraction_compare (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>, 2720 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>, 2721 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>, 2722 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>);</pre> 2723<p>Compares the fractions <em class="parameter"><code>a_n</code></em> 2724/<em class="parameter"><code>a_d</code></em> 2725 and <em class="parameter"><code>b_n</code></em> 2726/<em class="parameter"><code>b_d</code></em> 2727 and returns 2728-1 if a < b, 0 if a = b and 1 if a > b.</p> 2729<div class="refsect3"> 2730<a name="gst-util-fraction-compare.parameters"></a><h4>Parameters</h4> 2731<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2732<colgroup> 2733<col width="150px" class="parameters_name"> 2734<col class="parameters_description"> 2735<col width="200px" class="parameters_annotations"> 2736</colgroup> 2737<tbody> 2738<tr> 2739<td class="parameter_name"><p>a_n</p></td> 2740<td class="parameter_description"><p>Numerator of first value</p></td> 2741<td class="parameter_annotations"> </td> 2742</tr> 2743<tr> 2744<td class="parameter_name"><p>a_d</p></td> 2745<td class="parameter_description"><p>Denominator of first value</p></td> 2746<td class="parameter_annotations"> </td> 2747</tr> 2748<tr> 2749<td class="parameter_name"><p>b_n</p></td> 2750<td class="parameter_description"><p>Numerator of second value</p></td> 2751<td class="parameter_annotations"> </td> 2752</tr> 2753<tr> 2754<td class="parameter_name"><p>b_d</p></td> 2755<td class="parameter_description"><p>Denominator of second value</p></td> 2756<td class="parameter_annotations"> </td> 2757</tr> 2758</tbody> 2759</table></div> 2760</div> 2761<div class="refsect3"> 2762<a name="gst-util-fraction-compare.returns"></a><h4>Returns</h4> 2763<p> -1 if a < b; 0 if a = b; 1 if a > b.</p> 2764</div> 2765</div> 2766<hr> 2767<div class="refsect2"> 2768<a name="gst-util-seqnum-next"></a><h3>gst_util_seqnum_next ()</h3> 2769<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> 2770gst_util_seqnum_next (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> 2771<p>Return a constantly incrementing sequence number.</p> 2772<p>This function is used internally to GStreamer to be able to determine which 2773events and messages are "the same". For example, elements may set the seqnum 2774on a segment-done message to be the same as that of the last seek event, to 2775indicate that event and the message correspond to the same segment.</p> 2776<p>This function never returns <a class="link" href="gstreamer-GstUtils.html#GST-SEQNUM-INVALID:CAPS" title="GST_SEQNUM_INVALID"><code class="literal">GST_SEQNUM_INVALID</code></a> (which is 0).</p> 2777<div class="refsect3"> 2778<a name="gst-util-seqnum-next.returns"></a><h4>Returns</h4> 2779<p> A constantly incrementing 32-bit unsigned integer, which might 2780overflow at some point. Use <a class="link" href="gstreamer-GstUtils.html#gst-util-seqnum-compare" title="gst_util_seqnum_compare ()"><code class="function">gst_util_seqnum_compare()</code></a> to make sure 2781you handle wraparound correctly.</p> 2782</div> 2783</div> 2784<hr> 2785<div class="refsect2"> 2786<a name="gst-util-seqnum-compare"></a><h3>gst_util_seqnum_compare ()</h3> 2787<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"><span class="returnvalue">gint32</span></a> 2788gst_util_seqnum_compare (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> s1</code></em>, 2789 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> s2</code></em>);</pre> 2790<p>Compare two sequence numbers, handling wraparound.</p> 2791<p>The current implementation just returns (gint32)(<em class="parameter"><code>s1</code></em> 2792 - <em class="parameter"><code>s2</code></em> 2793).</p> 2794<div class="refsect3"> 2795<a name="gst-util-seqnum-compare.parameters"></a><h4>Parameters</h4> 2796<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2797<colgroup> 2798<col width="150px" class="parameters_name"> 2799<col class="parameters_description"> 2800<col width="200px" class="parameters_annotations"> 2801</colgroup> 2802<tbody> 2803<tr> 2804<td class="parameter_name"><p>s1</p></td> 2805<td class="parameter_description"><p>A sequence number.</p></td> 2806<td class="parameter_annotations"> </td> 2807</tr> 2808<tr> 2809<td class="parameter_name"><p>s2</p></td> 2810<td class="parameter_description"><p>Another sequence number.</p></td> 2811<td class="parameter_annotations"> </td> 2812</tr> 2813</tbody> 2814</table></div> 2815</div> 2816<div class="refsect3"> 2817<a name="gst-util-seqnum-compare.returns"></a><h4>Returns</h4> 2818<p> A negative number if <em class="parameter"><code>s1</code></em> 2819is before <em class="parameter"><code>s2</code></em> 2820, 0 if they are equal, or a 2821positive number if <em class="parameter"><code>s1</code></em> 2822is after <em class="parameter"><code>s2</code></em> 2823.</p> 2824</div> 2825</div> 2826<hr> 2827<div class="refsect2"> 2828<a name="gst-util-group-id-next"></a><h3>gst_util_group_id_next ()</h3> 2829<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> 2830gst_util_group_id_next (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> 2831<p>Return a constantly incrementing group id.</p> 2832<p>This function is used to generate a new group-id for the 2833stream-start event.</p> 2834<p>This function never returns <a class="link" href="gstreamer-GstUtils.html#GST-GROUP-ID-INVALID:CAPS" title="GST_GROUP_ID_INVALID"><code class="literal">GST_GROUP_ID_INVALID</code></a> (which is 0)</p> 2835<div class="refsect3"> 2836<a name="gst-util-group-id-next.returns"></a><h4>Returns</h4> 2837<p> A constantly incrementing unsigned integer, which might 2838overflow back to 0 at some point.</p> 2839</div> 2840</div> 2841<hr> 2842<div class="refsect2"> 2843<a name="gst-util-set-object-arg"></a><h3>gst_util_set_object_arg ()</h3> 2844<pre class="programlisting"><span class="returnvalue">void</span> 2845gst_util_set_object_arg (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *object</code></em>, 2846 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, 2847 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre> 2848<p>Converts the string value to the type of the objects argument and 2849sets the argument with it.</p> 2850<p>Note that this function silently returns if <em class="parameter"><code>object</code></em> 2851 has no property named 2852<em class="parameter"><code>name</code></em> 2853 or when <em class="parameter"><code>value</code></em> 2854 cannot be converted to the type of the property.</p> 2855<div class="refsect3"> 2856<a name="gst-util-set-object-arg.parameters"></a><h4>Parameters</h4> 2857<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2858<colgroup> 2859<col width="150px" class="parameters_name"> 2860<col class="parameters_description"> 2861<col width="200px" class="parameters_annotations"> 2862</colgroup> 2863<tbody> 2864<tr> 2865<td class="parameter_name"><p>object</p></td> 2866<td class="parameter_description"><p>the object to set the argument of</p></td> 2867<td class="parameter_annotations"> </td> 2868</tr> 2869<tr> 2870<td class="parameter_name"><p>name</p></td> 2871<td class="parameter_description"><p>the name of the argument to set</p></td> 2872<td class="parameter_annotations"> </td> 2873</tr> 2874<tr> 2875<td class="parameter_name"><p>value</p></td> 2876<td class="parameter_description"><p>the string value to set</p></td> 2877<td class="parameter_annotations"> </td> 2878</tr> 2879</tbody> 2880</table></div> 2881</div> 2882</div> 2883<hr> 2884<div class="refsect2"> 2885<a name="gst-util-set-value-from-string"></a><h3>gst_util_set_value_from_string ()</h3> 2886<pre class="programlisting"><span class="returnvalue">void</span> 2887gst_util_set_value_from_string (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="type">GValue</span></a> *value</code></em>, 2888 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value_str</code></em>);</pre> 2889<p>Converts the string to the type of the value and 2890sets the value with it.</p> 2891<p>Note that this function is dangerous as it does not return any indication 2892if the conversion worked or not.</p> 2893<div class="refsect3"> 2894<a name="gst-util-set-value-from-string.parameters"></a><h4>Parameters</h4> 2895<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2896<colgroup> 2897<col width="150px" class="parameters_name"> 2898<col class="parameters_description"> 2899<col width="200px" class="parameters_annotations"> 2900</colgroup> 2901<tbody> 2902<tr> 2903<td class="parameter_name"><p>value</p></td> 2904<td class="parameter_description"><p>the value to set. </p></td> 2905<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td> 2906</tr> 2907<tr> 2908<td class="parameter_name"><p>value_str</p></td> 2909<td class="parameter_description"><p>the string to get the value from</p></td> 2910<td class="parameter_annotations"> </td> 2911</tr> 2912</tbody> 2913</table></div> 2914</div> 2915</div> 2916<hr> 2917<div class="refsect2"> 2918<a name="gst-util-set-object-array"></a><h3>gst_util_set_object_array ()</h3> 2919<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 2920gst_util_set_object_array (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *object</code></em>, 2921 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, 2922 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray-struct"><span class="type">GValueArray</span></a> *array</code></em>);</pre> 2923<p>Transfer a <a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray-struct"><span class="type">GValueArray</span></a> to <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><code class="literal">GST_TYPE_ARRAY</code></a> and set this value on the 2924specified property name. This allow language bindings to set GST_TYPE_ARRAY 2925properties which are otherwise not an accessible type.</p> 2926<div class="refsect3"> 2927<a name="gst-util-set-object-array.parameters"></a><h4>Parameters</h4> 2928<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2929<colgroup> 2930<col width="150px" class="parameters_name"> 2931<col class="parameters_description"> 2932<col width="200px" class="parameters_annotations"> 2933</colgroup> 2934<tbody> 2935<tr> 2936<td class="parameter_name"><p>object</p></td> 2937<td class="parameter_description"><p>the object to set the array to</p></td> 2938<td class="parameter_annotations"> </td> 2939</tr> 2940<tr> 2941<td class="parameter_name"><p>name</p></td> 2942<td class="parameter_description"><p>the name of the property to set</p></td> 2943<td class="parameter_annotations"> </td> 2944</tr> 2945<tr> 2946<td class="parameter_name"><p>array</p></td> 2947<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray-struct"><span class="type">GValueArray</span></a> containing the values</p></td> 2948<td class="parameter_annotations"> </td> 2949</tr> 2950</tbody> 2951</table></div> 2952</div> 2953<p class="since">Since: <a class="link" href="ix04.html#api-index-1.12">1.12</a></p> 2954</div> 2955<hr> 2956<div class="refsect2"> 2957<a name="gst-util-get-object-array"></a><h3>gst_util_get_object_array ()</h3> 2958<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 2959gst_util_get_object_array (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *object</code></em>, 2960 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, 2961 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray-struct"><span class="type">GValueArray</span></a> **array</code></em>);</pre> 2962<p>Get a property of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><code class="literal">GST_TYPE_ARRAY</code></a> and transform it into a 2963<a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray-struct"><span class="type">GValueArray</span></a>. This allow language bindings to get GST_TYPE_ARRAY 2964properties which are otherwise not an accessible type.</p> 2965<div class="refsect3"> 2966<a name="gst-util-get-object-array.parameters"></a><h4>Parameters</h4> 2967<div class="informaltable"><table class="informaltable" width="100%" border="0"> 2968<colgroup> 2969<col width="150px" class="parameters_name"> 2970<col class="parameters_description"> 2971<col width="200px" class="parameters_annotations"> 2972</colgroup> 2973<tbody> 2974<tr> 2975<td class="parameter_name"><p>object</p></td> 2976<td class="parameter_description"><p>the object to set the array to</p></td> 2977<td class="parameter_annotations"> </td> 2978</tr> 2979<tr> 2980<td class="parameter_name"><p>name</p></td> 2981<td class="parameter_description"><p>the name of the property to set</p></td> 2982<td class="parameter_annotations"> </td> 2983</tr> 2984<tr> 2985<td class="parameter_name"><p>array</p></td> 2986<td class="parameter_description"><p>a return <a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray-struct"><span class="type">GValueArray</span></a>. </p></td> 2987<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 2988</tr> 2989</tbody> 2990</table></div> 2991</div> 2992<p class="since">Since: <a class="link" href="ix04.html#api-index-1.12">1.12</a></p> 2993</div> 2994<hr> 2995<div class="refsect2"> 2996<a name="gst-util-get-timestamp"></a><h3>gst_util_get_timestamp ()</h3> 2997<pre class="programlisting"><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="returnvalue">GstClockTime</span></a> 2998gst_util_get_timestamp (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> 2999<p>Get a timestamp as GstClockTime to be used for interval measurements. 3000The timestamp should not be interpreted in any other way.</p> 3001<div class="refsect3"> 3002<a name="gst-util-get-timestamp.returns"></a><h4>Returns</h4> 3003<p> the timestamp</p> 3004</div> 3005</div> 3006<hr> 3007<div class="refsect2"> 3008<a name="gst-util-array-binary-search"></a><h3>gst_util_array_binary_search ()</h3> 3009<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> 3010gst_util_array_binary_search (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> array</code></em>, 3011 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> num_elements</code></em>, 3012 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> element_size</code></em>, 3013 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html#GCompareDataFunc"><span class="type">GCompareDataFunc</span></a> search_func</code></em>, 3014 <em class="parameter"><code><a class="link" href="gstreamer-GstUtils.html#GstSearchMode" title="enum GstSearchMode"><span class="type">GstSearchMode</span></a> mode</code></em>, 3015 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> search_data</code></em>, 3016 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> 3017<p>Searches inside <em class="parameter"><code>array</code></em> 3018 for <em class="parameter"><code>search_data</code></em> 3019 by using the comparison function 3020<em class="parameter"><code>search_func</code></em> 3021. <em class="parameter"><code>array</code></em> 3022 must be sorted ascending.</p> 3023<p>As <em class="parameter"><code>search_data</code></em> 3024 is always passed as second argument to <em class="parameter"><code>search_func</code></em> 3025 it's 3026not required that <em class="parameter"><code>search_data</code></em> 3027 has the same type as the array elements.</p> 3028<p>The complexity of this search function is O(log (num_elements)).</p> 3029<div class="refsect3"> 3030<a name="gst-util-array-binary-search.parameters"></a><h4>Parameters</h4> 3031<div class="informaltable"><table class="informaltable" width="100%" border="0"> 3032<colgroup> 3033<col width="150px" class="parameters_name"> 3034<col class="parameters_description"> 3035<col width="200px" class="parameters_annotations"> 3036</colgroup> 3037<tbody> 3038<tr> 3039<td class="parameter_name"><p>array</p></td> 3040<td class="parameter_description"><p>the sorted input array</p></td> 3041<td class="parameter_annotations"> </td> 3042</tr> 3043<tr> 3044<td class="parameter_name"><p>num_elements</p></td> 3045<td class="parameter_description"><p>number of elements in the array</p></td> 3046<td class="parameter_annotations"> </td> 3047</tr> 3048<tr> 3049<td class="parameter_name"><p>element_size</p></td> 3050<td class="parameter_description"><p>size of every element in bytes</p></td> 3051<td class="parameter_annotations"> </td> 3052</tr> 3053<tr> 3054<td class="parameter_name"><p>search_func</p></td> 3055<td class="parameter_description"><p>function to compare two elements, <em class="parameter"><code>search_data</code></em> 3056will always be passed as second argument. </p></td> 3057<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> 3058</tr> 3059<tr> 3060<td class="parameter_name"><p>mode</p></td> 3061<td class="parameter_description"><p>search mode that should be used</p></td> 3062<td class="parameter_annotations"> </td> 3063</tr> 3064<tr> 3065<td class="parameter_name"><p>search_data</p></td> 3066<td class="parameter_description"><p>element that should be found</p></td> 3067<td class="parameter_annotations"> </td> 3068</tr> 3069<tr> 3070<td class="parameter_name"><p>user_data</p></td> 3071<td class="parameter_description"><p>data to pass to <em class="parameter"><code>search_func</code></em> 3072. </p></td> 3073<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td> 3074</tr> 3075</tbody> 3076</table></div> 3077</div> 3078<div class="refsect3"> 3079<a name="gst-util-array-binary-search.returns"></a><h4>Returns</h4> 3080<p>The address of the found 3081element or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if nothing was found. </p> 3082<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> 3083</div> 3084</div> 3085</div> 3086<div class="refsect1"> 3087<a name="gstreamer-GstUtils.other_details"></a><h2>Types and Values</h2> 3088<div class="refsect2"> 3089<a name="GST-SEQNUM-INVALID:CAPS"></a><h3>GST_SEQNUM_INVALID</h3> 3090<pre class="programlisting">#define GST_SEQNUM_INVALID (0) 3091</pre> 3092<p>A value which is guaranteed to never be returned by 3093<a class="link" href="gstreamer-GstUtils.html#gst-util-seqnum-next" title="gst_util_seqnum_next ()"><code class="function">gst_util_seqnum_next()</code></a>.</p> 3094<p>Can be used as a default value in variables used to store seqnum.</p> 3095<p class="since">Since: <a class="link" href="ix03.html#api-index-1.14">1.14</a></p> 3096</div> 3097<hr> 3098<div class="refsect2"> 3099<a name="GST-GROUP-ID-INVALID:CAPS"></a><h3>GST_GROUP_ID_INVALID</h3> 3100<pre class="programlisting">#define GST_GROUP_ID_INVALID (0) 3101</pre> 3102<p>A value which is guaranteed to never be returned by 3103<a class="link" href="gstreamer-GstUtils.html#gst-util-group-id-next" title="gst_util_group_id_next ()"><code class="function">gst_util_group_id_next()</code></a>.</p> 3104<p>Can be used as a default value in variables used to store group_id.</p> 3105<p class="since">Since: <a class="link" href="ix03.html#api-index-1.14">1.14</a></p> 3106</div> 3107<hr> 3108<div class="refsect2"> 3109<a name="GstSearchMode"></a><h3>enum GstSearchMode</h3> 3110<p>The different search modes.</p> 3111<div class="refsect3"> 3112<a name="GstSearchMode.members"></a><h4>Members</h4> 3113<div class="informaltable"><table class="informaltable" width="100%" border="0"> 3114<colgroup> 3115<col width="300px" class="enum_members_name"> 3116<col class="enum_members_description"> 3117<col width="200px" class="enum_members_annotations"> 3118</colgroup> 3119<tbody> 3120<tr> 3121<td class="enum_member_name"><p><a name="GST-SEARCH-MODE-EXACT:CAPS"></a>GST_SEARCH_MODE_EXACT</p></td> 3122<td class="enum_member_description"> 3123<p>Only search for exact matches.</p> 3124</td> 3125<td class="enum_member_annotations"> </td> 3126</tr> 3127<tr> 3128<td class="enum_member_name"><p><a name="GST-SEARCH-MODE-BEFORE:CAPS"></a>GST_SEARCH_MODE_BEFORE</p></td> 3129<td class="enum_member_description"> 3130<p>Search for an exact match or the element just before.</p> 3131</td> 3132<td class="enum_member_annotations"> </td> 3133</tr> 3134<tr> 3135<td class="enum_member_name"><p><a name="GST-SEARCH-MODE-AFTER:CAPS"></a>GST_SEARCH_MODE_AFTER</p></td> 3136<td class="enum_member_description"> 3137<p>Search for an exact match or the element just after.</p> 3138</td> 3139<td class="enum_member_annotations"> </td> 3140</tr> 3141</tbody> 3142</table></div> 3143</div> 3144</div> 3145</div> 3146</div> 3147<div class="footer"> 3148<hr>Generated by GTK-Doc V1.28</div> 3149</body> 3150</html>