Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > b87535c165133127a8d07aeb2413ddb2 > files > 70

libzvbi-devel-0.2.35-4.mga5.i586.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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.8"/>
<title>ZVBI Library: Video Program System (VPS) Decoder</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">ZVBI Library
   &#160;<span id="projectnumber">0.2.35</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Video Program System (VPS) Decoder<div class="ingroups"><a class="el" href="group__LowDec.html">Low Level Decoding</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Functions to decode and encode VPS packets (EN 300 231, EN 300 468).  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gae7fc7752981892961b360789f3a22496"><td class="memItemLeft" align="right" valign="top">vbi_bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__VPS.html#gae7fc7752981892961b360789f3a22496">vbi_decode_vps_cni</a> (unsigned int *cni, const uint8_t buffer[13])</td></tr>
<tr class="separator:gae7fc7752981892961b360789f3a22496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8cd549b25532ae4c6aa4f32a9b1eaa96"><td class="memItemLeft" align="right" valign="top">vbi_bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__VPS.html#ga8cd549b25532ae4c6aa4f32a9b1eaa96">vbi_encode_vps_cni</a> (uint8_t buffer[13], unsigned int cni) _vbi_nonnull((1))</td></tr>
<tr class="separator:ga8cd549b25532ae4c6aa4f32a9b1eaa96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafeaf0db61475e7c6b2b7b52fbc8470f3"><td class="memItemLeft" align="right" valign="top">vbi_bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__VPS.html#gafeaf0db61475e7c6b2b7b52fbc8470f3">vbi_decode_vps_pdc</a> (<a class="el" href="structvbi__program__id.html">vbi_program_id</a> *pid, const uint8_t buffer[13])</td></tr>
<tr class="separator:gafeaf0db61475e7c6b2b7b52fbc8470f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa65f6afb407705276c92a83e41d28997"><td class="memItemLeft" align="right" valign="top">vbi_bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__VPS.html#gaa65f6afb407705276c92a83e41d28997">vbi_encode_vps_pdc</a> (uint8_t buffer[13], const <a class="el" href="structvbi__program__id.html">vbi_program_id</a> *pid)</td></tr>
<tr class="separator:gaa65f6afb407705276c92a83e41d28997"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46c57ac82a3fabe71d7c1059dabfec96"><td class="memItemLeft" align="right" valign="top">vbi_bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__VPS.html#ga46c57ac82a3fabe71d7c1059dabfec96">vbi_decode_dvb_pdc_descriptor</a> (<a class="el" href="structvbi__program__id.html">vbi_program_id</a> *pid, const uint8_t buffer[5])</td></tr>
<tr class="separator:ga46c57ac82a3fabe71d7c1059dabfec96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab0bf2a77c91d96d744dd3a4755cf66dc"><td class="memItemLeft" align="right" valign="top">vbi_bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__VPS.html#gab0bf2a77c91d96d744dd3a4755cf66dc">vbi_encode_dvb_pdc_descriptor</a> (uint8_t buffer[5], const <a class="el" href="structvbi__program__id.html">vbi_program_id</a> *pid)</td></tr>
<tr class="separator:gab0bf2a77c91d96d744dd3a4755cf66dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Functions to decode and encode VPS packets (EN 300 231, EN 300 468). </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gae7fc7752981892961b360789f3a22496"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vbi_bool vbi_decode_vps_cni </td>
          <td>(</td>
          <td class="paramtype">unsigned int *&#160;</td>
          <td class="paramname"><em>cni</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>buffer</em>[13]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cni</td><td>CNI of type VBI_CNI_TYPE_VPS will be stored here. </td></tr>
    <tr><td class="paramname">buffer</td><td>VPS packet as defined for <code>VBI_SLICED_VPS</code>, i.e. 13 bytes without clock run-in and start code.</td></tr>
  </table>
  </dd>
</dl>
<p>Decodes a VPS packet according to EN 300 231, returning the contained 12 bit Country and Network Identifier in <em>*cni</em>.</p>
<p>The code 0xDC3 is translated according to TR 101 231: "As this code is used for a time in two networks a distinction for automatic tuning systems is given in data line 16 [VPS]: bit 3 of byte 5 = 1 for the ARD network / = 0 for the ZDF network."</p>
<dl class="section return"><dt>Returns</dt><dd>Always <code>TRUE</code>, no error checking possible. It may be prudent to wait for a second transmission of the received CNI to ensure correct reception.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.2.20 </dd></dl>

<p>Referenced by <a class="el" href="group__VPS.html#gafeaf0db61475e7c6b2b7b52fbc8470f3">vbi_decode_vps_pdc()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8cd549b25532ae4c6aa4f32a9b1eaa96"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vbi_bool vbi_encode_vps_cni </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>buffer</em>[13], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>cni</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>VPS packet as defined for <code>VBI_SLICED_VPS</code>, i.e. 13 bytes without clock run-in and start code. </td></tr>
    <tr><td class="paramname">cni</td><td>CNI of type VBI_CNI_TYPE_VPS.</td></tr>
  </table>
  </dd>
</dl>
<p>Stores the 12 bit Country and Network Identifier <em>cni</em> in a VPS packet according to EN 300 231.</p>
<dl class="section return"><dt>Returns</dt><dd><code>FALSE</code> if <em>cni</em> is invalid. In this case <em>buffer</em> remains unmodified.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.2.20 </dd></dl>

<p>Referenced by <a class="el" href="group__VPS.html#gaa65f6afb407705276c92a83e41d28997">vbi_encode_vps_pdc()</a>.</p>

</div>
</div>
<a class="anchor" id="gafeaf0db61475e7c6b2b7b52fbc8470f3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vbi_bool vbi_decode_vps_pdc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structvbi__program__id.html">vbi_program_id</a> *&#160;</td>
          <td class="paramname"><em>pid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>buffer</em>[13]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pid</td><td>PDC program ID will be stored here. </td></tr>
    <tr><td class="paramname">buffer</td><td>VPS packet as defined for <code>VBI_SLICED_VPS</code>, i.e. 13 bytes without clock run-in and start code.</td></tr>
  </table>
  </dd>
</dl>
<p>Decodes a VPS datagram according to EN 300 231, storing PDC recording-control data in <em>pid</em>.</p>
<dl class="section return"><dt>Returns</dt><dd><code>FALSE</code> if the buffer contains incorrect data. In this case <em>pid</em> remains unmodified.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.2.34 </dd></dl>

<p>References <a class="el" href="structvbi__program__id.html#a90794327986da193ddb76d518331589d">vbi_program_id::channel</a>, <a class="el" href="structvbi__program__id.html#ab02c877d547812c4cc22df34e6b8794c">vbi_program_id::cni</a>, <a class="el" href="structvbi__program__id.html#a5ac7312ef52b908f7b55996d6d12b3bb">vbi_program_id::cni_type</a>, <a class="el" href="structvbi__program__id.html#a9cccb9d3856e8b459d09e67cd12908d4">vbi_program_id::mi</a>, <a class="el" href="structvbi__program__id.html#a0c3e81ecb789d309061ce5cf8bb16bce">vbi_program_id::pcs_audio</a>, <a class="el" href="structvbi__program__id.html#a30c0862c008de112f4222e1208038d58">vbi_program_id::pil</a>, <a class="el" href="structvbi__program__id.html#a069f84e950d47f19a589cbe4a3603068">vbi_program_id::pty</a>, <a class="el" href="group__VPS.html#gae7fc7752981892961b360789f3a22496">vbi_decode_vps_cni()</a>, and <a class="el" href="group__ProgramID.html#gga289ec10e87cef7655799144bc898f262a232efb61f9f576d83a778ad18b90e296">VBI_PID_CHANNEL_VPS</a>.</p>

</div>
</div>
<a class="anchor" id="gaa65f6afb407705276c92a83e41d28997"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vbi_bool vbi_encode_vps_pdc </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>buffer</em>[13], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structvbi__program__id.html">vbi_program_id</a> *&#160;</td>
          <td class="paramname"><em>pid</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>VPS packet as defined for <code>VBI_SLICED_VPS</code>, i.e. 13 bytes without clock run-in and start code. </td></tr>
    <tr><td class="paramname">pid</td><td>PDC data to encode.</td></tr>
  </table>
  </dd>
</dl>
<p>Stores PDC recording-control data (CNI, PIL, PCS audio, PTY) in a VPS datagram according to EN 300 231.</p>
<dl class="section return"><dt>Returns</dt><dd><code>FALSE</code> if any of the parameters to encode are invalid. In this case <em>buffer</em> remains unmodified.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.2.34 </dd></dl>

<p>References <a class="el" href="structvbi__program__id.html#ab02c877d547812c4cc22df34e6b8794c">vbi_program_id::cni</a>, <a class="el" href="structvbi__program__id.html#a0c3e81ecb789d309061ce5cf8bb16bce">vbi_program_id::pcs_audio</a>, <a class="el" href="structvbi__program__id.html#a30c0862c008de112f4222e1208038d58">vbi_program_id::pil</a>, <a class="el" href="structvbi__program__id.html#a069f84e950d47f19a589cbe4a3603068">vbi_program_id::pty</a>, and <a class="el" href="group__VPS.html#ga8cd549b25532ae4c6aa4f32a9b1eaa96">vbi_encode_vps_cni()</a>.</p>

</div>
</div>
<a class="anchor" id="ga46c57ac82a3fabe71d7c1059dabfec96"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vbi_bool vbi_decode_dvb_pdc_descriptor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structvbi__program__id.html">vbi_program_id</a> *&#160;</td>
          <td class="paramname"><em>pid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>buffer</em>[5]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pid</td><td>PDC program ID will be stored here. </td></tr>
    <tr><td class="paramname">buffer</td><td>A DVB PDC descriptor as defined in EN 300 468, including the descriptor_tag and descriptor_length bytes.</td></tr>
  </table>
  </dd>
</dl>
<p>Decodes a DVB PDC descriptor as defined in EN 300 468 and EN 300 231, storing PDC recording-control data in <em>pid</em>.</p>
<dl class="section return"><dt>Returns</dt><dd><code>FALSE</code> if the buffer contains an incorrect descriptor_tag, descriptor_length or PIL. In this case <em>pid</em> remains unmodified.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.2.34 </dd></dl>

<p>References <a class="el" href="structvbi__program__id.html#a90794327986da193ddb76d518331589d">vbi_program_id::channel</a>, <a class="el" href="structvbi__program__id.html#a9cccb9d3856e8b459d09e67cd12908d4">vbi_program_id::mi</a>, <a class="el" href="structvbi__program__id.html#a30c0862c008de112f4222e1208038d58">vbi_program_id::pil</a>, and <a class="el" href="group__ProgramID.html#gga289ec10e87cef7655799144bc898f262a9ac263afbaf6fee07902a8ad757c928e">VBI_PID_CHANNEL_PDC_DESCRIPTOR</a>.</p>

</div>
</div>
<a class="anchor" id="gab0bf2a77c91d96d744dd3a4755cf66dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vbi_bool vbi_encode_dvb_pdc_descriptor </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>buffer</em>[5], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structvbi__program__id.html">vbi_program_id</a> *&#160;</td>
          <td class="paramname"><em>pid</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>A DVB PDC descriptor as defined in EN 300 468, including the descriptor_tag and descriptor_length bytes. </td></tr>
    <tr><td class="paramname">pid</td><td>PDC data to encode.</td></tr>
  </table>
  </dd>
</dl>
<p>Stores PDC recording-control data (PIL only) in a DVB PDC descriptor as defined in EN 300 468 and EN 300 231.</p>
<dl class="section return"><dt>Returns</dt><dd><code>FALSE</code> if any of the parameters to encode are invalid. In this case <em>buffer</em> remains unmodified.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.2.34 </dd></dl>

<p>References <a class="el" href="structvbi__program__id.html#a30c0862c008de112f4222e1208038d58">vbi_program_id::pil</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Oct 16 2014 08:52:24 for ZVBI Library by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>