Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 4401bd04205bf2a800d2a0a60d4eabfc > files > 49

liboggz-doc-1.1.1-1.fc14.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>liboggz: oggz_seek.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.2-20100208 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>oggz_seek.h File Reference</h1>
<p>Seeking within files.  
<a href="#_details">More...</a></p>

<p><a href="oggz__seek_8h_source.html">Go to the source code of this file.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef ogg_int64_t(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#ga8803bb406015a32f5172902e3e4e76e8">OggzMetric</a> )(<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno, ogg_int64_t granulepos, void *user_data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is the signature of a function to correlate Ogg streams.  <a href="group__metric.html#ga8803bb406015a32f5172902e3e4e76e8"></a><br/></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ogg_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__seek__api.html#ga2ec088fc5541ce9749ce63ccc162761f">oggz_tell_units</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query the current offset in milliseconds, or custom units as specified by a Metric function you have provided.  <a href="group__seek__api.html#ga2ec088fc5541ce9749ce63ccc162761f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ogg_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__seek__api.html#ga60bac88ef3695629efacec43a21927e5">oggz_seek_units</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, ogg_int64_t units, int whence)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seek to an offset in milliseconds, or custom units as specified by a Metric function you have provided.  <a href="group__seek__api.html#ga60bac88ef3695629efacec43a21927e5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ogg_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__seek__api.html#ga29181fb4e8f4e3629cb84810614acd30">oggz_tell_granulepos</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Provide the exact stored granulepos (from the page header) if relevant to the current packet, or a constructed granulepos if the stored granulepos does not belong to this packet, or -1 if this codec does not have support for granulepos interpolation.  <a href="group__seek__api.html#ga29181fb4e8f4e3629cb84810614acd30"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="oggz__off__t__generated_8h.html#ae4d9c2528ce26af562d8ad958d738050">oggz_off_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__seek__api.html#ga553fabfa03553669f79e37b28eb07ec6">oggz_tell</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query the file offset in bytes corresponding to the data read.  <a href="group__seek__api.html#ga553fabfa03553669f79e37b28eb07ec6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="oggz__off__t__generated_8h.html#ae4d9c2528ce26af562d8ad958d738050">oggz_off_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__seek__api.html#gaeef4b261d443701207954e5a636d6817">oggz_seek</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, <a class="el" href="oggz__off__t__generated_8h.html#ae4d9c2528ce26af562d8ad958d738050">oggz_off_t</a> offset, int whence)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seek to a specific byte offset.  <a href="group__seek__api.html#gaeef4b261d443701207954e5a636d6817"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#gab411ab113d5f0f67bf77506724c25633">oggz_get_preroll</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve the preroll of a logical bitstream.  <a href="group__metric.html#gab411ab113d5f0f67bf77506724c25633"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#gaa2b4ab5be298a11b5b91147b76996c83">oggz_set_preroll</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno, int preroll)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specify the preroll of a logical bitstream.  <a href="group__metric.html#gaa2b4ab5be298a11b5b91147b76996c83"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#gad9b55e525a6e0b994a133314fd78e2c0">oggz_get_granuleshift</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve the granuleshift of a logical bitstream.  <a href="group__metric.html#gad9b55e525a6e0b994a133314fd78e2c0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#ga7ca67e0344580bf1541b9fbde39d481b">oggz_set_granuleshift</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno, int granuleshift)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specify the granuleshift of a logical bitstream.  <a href="group__metric.html#ga7ca67e0344580bf1541b9fbde39d481b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#ga72a9a24e6f8483986859d7697fa611b6">oggz_get_granulerate</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno, ogg_int64_t *granulerate_n, ogg_int64_t *granulerate_d)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve the granulerate of a logical bitstream.  <a href="group__metric.html#ga72a9a24e6f8483986859d7697fa611b6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#gaa2a86ec590161bc2295a2c8e91cefa49">oggz_set_granulerate</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno, ogg_int64_t granule_rate_numerator, ogg_int64_t granule_rate_denominator)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specify the granulerate of a logical bitstream.  <a href="group__metric.html#gaa2a86ec590161bc2295a2c8e91cefa49"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#ga5a630e8dcd04e1dd6601d8f56f0af3f6">oggz_set_metric</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, long serialno, <a class="el" href="group__metric.html#ga8803bb406015a32f5172902e3e4e76e8">OggzMetric</a> metric, void *user_data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the OggzMetric to use for an OGGZ handle.  <a href="group__metric.html#ga5a630e8dcd04e1dd6601d8f56f0af3f6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__metric.html#gaaec9a54e9b231797d245042ce23b619a">oggz_set_data_start</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, <a class="el" href="oggz__off__t__generated_8h.html#ae4d9c2528ce26af562d8ad958d738050">oggz_off_t</a> offset)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tell Oggz to remember the given offset as the start of data.  <a href="group__metric.html#gaaec9a54e9b231797d245042ce23b619a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ogg_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="oggz__seek_8h.html#a116cf4ae056573ab69b1161671ff6c59">oggz_bounded_seek_set</a> (<a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *oggz, ogg_int64_t unit_target, ogg_int64_t offset_begin, ogg_int64_t offset_end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seeks Oggz to time unit_target, but with the bounds of the offset range [offset_begin, offset_end].  <a href="#a116cf4ae056573ab69b1161671ff6c59"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Seeking within files. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="a116cf4ae056573ab69b1161671ff6c59"></a><!-- doxytag: member="oggz_seek.h::oggz_bounded_seek_set" ref="a116cf4ae056573ab69b1161671ff6c59" args="(OGGZ *oggz, ogg_int64_t unit_target, ogg_int64_t offset_begin, ogg_int64_t offset_end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ogg_int64_t oggz_bounded_seek_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="oggz_8h.html#a672d218df13da45a4b41d5366211bfee">OGGZ</a> *&nbsp;</td>
          <td class="paramname"> <em>oggz</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ogg_int64_t&nbsp;</td>
          <td class="paramname"> <em>unit_target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ogg_int64_t&nbsp;</td>
          <td class="paramname"> <em>offset_begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ogg_int64_t&nbsp;</td>
          <td class="paramname"> <em>offset_end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Seeks Oggz to time unit_target, but with the bounds of the offset range [offset_begin, offset_end]. </p>
<p>This is useful when seeking in network streams where only parts of a media are buffered, and retrieving unbuffered parts is expensive. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>oggz</em>&nbsp;</td><td>An OGGZ handle previously opened for reading </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>unit_target</em>&nbsp;</td><td>The seek target, in milliseconds, or custom units </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset_begin</em>&nbsp;</td><td>Start of offset range to seek inside, in bytes </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset_end</em>&nbsp;</td><td>End of offset range to seek inside, in bytes, pass -1 for end of media </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The new position, in milliseconds or custom units </dd></dl>
<dl><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>-1</em>&nbsp;</td><td>on failure (unit_target is not within range) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2-20100208 </small></address>
</body>
</html>