Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 5454ba28c7567121ad5a74a4d6d1333a > files > 51

libquicktime-1.2.4-10.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>libquicktime: Audio encoding</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">libquicktime
   </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="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</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">Audio encoding<div class="ingroups"><a class="el" href="group__audio.html">Audio</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Audio related definitions and functions (writing)  
<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:ga6e01657d8c9473793b92464fd85fbb3a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga6e01657d8c9473793b92464fd85fbb3a">quicktime_set_audio</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int channels, long sample_rate, int bits, char *compressor)</td></tr>
<tr class="memdesc:ga6e01657d8c9473793b92464fd85fbb3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set up tracks in a new file after opening and before writing.  <a href="#ga6e01657d8c9473793b92464fd85fbb3a">More...</a><br /></td></tr>
<tr class="separator:ga6e01657d8c9473793b92464fd85fbb3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2981e8327f2cd3ee0d33d6d255f05f70"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga2981e8327f2cd3ee0d33d6d255f05f70">quicktime_encode_audio</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int16_t **input_i, float **input_f, long samples)</td></tr>
<tr class="memdesc:ga2981e8327f2cd3ee0d33d6d255f05f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode a number of audio samples for the first track.  <a href="#ga2981e8327f2cd3ee0d33d6d255f05f70">More...</a><br /></td></tr>
<tr class="separator:ga2981e8327f2cd3ee0d33d6d255f05f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga757133029c2b0c146df224e9fff17ee7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga757133029c2b0c146df224e9fff17ee7">lqt_set_audio</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int channels, long sample_rate, int bits, <a class="el" href="structlqt__codec__info__s.html">lqt_codec_info_t</a> *codec_info)</td></tr>
<tr class="memdesc:ga757133029c2b0c146df224e9fff17ee7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set up audio tracks for encoding.  <a href="#ga757133029c2b0c146df224e9fff17ee7">More...</a><br /></td></tr>
<tr class="separator:ga757133029c2b0c146df224e9fff17ee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga720b4666e645a6223d30ab74e165b2f9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga720b4666e645a6223d30ab74e165b2f9">lqt_add_audio_track</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int channels, long sample_rate, int bits, <a class="el" href="structlqt__codec__info__s.html">lqt_codec_info_t</a> *codec_info)</td></tr>
<tr class="memdesc:ga720b4666e645a6223d30ab74e165b2f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an audio track for encoding.  <a href="#ga720b4666e645a6223d30ab74e165b2f9">More...</a><br /></td></tr>
<tr class="separator:ga720b4666e645a6223d30ab74e165b2f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeb8c26b34c11b284bb9e35222e4a9c48"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#gaeb8c26b34c11b284bb9e35222e4a9c48">lqt_set_audio_codec</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int track, <a class="el" href="structlqt__codec__info__s.html">lqt_codec_info_t</a> *info)</td></tr>
<tr class="memdesc:gaeb8c26b34c11b284bb9e35222e4a9c48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a codec for an audio track.  <a href="#gaeb8c26b34c11b284bb9e35222e4a9c48">More...</a><br /></td></tr>
<tr class="separator:gaeb8c26b34c11b284bb9e35222e4a9c48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafd0edf4a0d75ac3871dfe40b10ce43d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#gafd0edf4a0d75ac3871dfe40b10ce43d0">lqt_set_audio_language</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int track, const char *language)</td></tr>
<tr class="memdesc:gafd0edf4a0d75ac3871dfe40b10ce43d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the audio language.  <a href="#gafd0edf4a0d75ac3871dfe40b10ce43d0">More...</a><br /></td></tr>
<tr class="separator:gafd0edf4a0d75ac3871dfe40b10ce43d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7a53aac2d04ad7714458115f320374cf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga7a53aac2d04ad7714458115f320374cf">lqt_encode_audio_track</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int16_t **output_i, float **output_f, long samples, int track)</td></tr>
<tr class="memdesc:ga7a53aac2d04ad7714458115f320374cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode a number of audio samples for the first track.  <a href="#ga7a53aac2d04ad7714458115f320374cf">More...</a><br /></td></tr>
<tr class="separator:ga7a53aac2d04ad7714458115f320374cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga440f3f940a6d0ffce972b7d7e57930f4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga440f3f940a6d0ffce972b7d7e57930f4">lqt_encode_audio_raw</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, void *input, long samples, int track)</td></tr>
<tr class="memdesc:ga440f3f940a6d0ffce972b7d7e57930f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode audio in the native sampleformat of the codec.  <a href="#ga440f3f940a6d0ffce972b7d7e57930f4">More...</a><br /></td></tr>
<tr class="separator:ga440f3f940a6d0ffce972b7d7e57930f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1afc5c274576eb6420a0476e21bd58c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__encode.html#ga1afc5c274576eb6420a0476e21bd58c4">lqt_set_audio_pts_offset</a> (<a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *file, int track, int64_t offset)</td></tr>
<tr class="memdesc:ga1afc5c274576eb6420a0476e21bd58c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set an audio pts offset.  <a href="#ga1afc5c274576eb6420a0476e21bd58c4">More...</a><br /></td></tr>
<tr class="separator:ga1afc5c274576eb6420a0476e21bd58c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Audio related definitions and functions (writing) </p>
<p>The audio API changed a lot during the last years (causing lot of confusion), so here is the preferred way: Use the <a class="el" href="group__codec__registry.html">Codec registry</a> functions to get all supported audio encoders. Once you found a codec (i.e. a lqt_codec_info_t ), call <a class="el" href="group__audio__encode.html#ga720b4666e645a6223d30ab74e165b2f9">lqt_add_audio_track</a> to add the track to the file. You can repeat this procedure to add as many tracks as you like with different formats and/or codecs.</p>
<p>Next you might want to set some compression parameters. This is done by calling <a class="el" href="group__audio.html#ga282a31a22a6819423512b93a0e3595aa">lqt_set_audio_parameter</a>. Supported parameters and valid ranges are in the lqt_codec_info_t.</p>
<p>For each track, encode noninterleaved samples (either in 16bit integer or floating point [-1.0..1.0] format) with <a class="el" href="group__audio__encode.html#ga7a53aac2d04ad7714458115f320374cf">lqt_encode_audio_track</a> . In this case, libquicktime will convert your samples to the format used by the codec. This won't give the full precision when using 24/32 bit formats. If you want to pass the samples as raw as possible (bypassing all internal sample format conversions), use <a class="el" href="group__audio.html#gabde4021e8da716ad38a91c238aa40df0">lqt_get_sample_format</a> to get the sampleformat natively used by the codec and <a class="el" href="group__audio__encode.html#ga440f3f940a6d0ffce972b7d7e57930f4">lqt_encode_audio_raw</a> to encode it. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga6e01657d8c9473793b92464fd85fbb3a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int quicktime_set_audio </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>channels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>sample_rate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>bits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>compressor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set up tracks in a new file after opening and before writing. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">channels</td><td>Number of channels </td></tr>
    <tr><td class="paramname">sample_rate</td><td>Samplerate </td></tr>
    <tr><td class="paramname">bits</td><td>Bits per sample </td></tr>
    <tr><td class="paramname">compressor</td><td>Compressor to use</td></tr>
  </table>
  </dd>
</dl>
<p>Returns the number of quicktime tracks allocated. Audio is stored two channels per quicktime track.</p>
<p>This function is depracated and should not be used in newly written code. It won't let you add individual tracks with different codecs, samplerates etc. Use <a class="el" href="group__audio__encode.html#ga720b4666e645a6223d30ab74e165b2f9">lqt_add_audio_track</a> instread. </p>

</div>
</div>
<a class="anchor" id="ga2981e8327f2cd3ee0d33d6d255f05f70"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int quicktime_encode_audio </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int16_t **&#160;</td>
          <td class="paramname"><em>input_i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float **&#160;</td>
          <td class="paramname"><em>input_f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>samples</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encode a number of audio samples for the first track. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">input_i</td><td>16 bit integer output buffer (or NULL) </td></tr>
    <tr><td class="paramname">input_f</td><td>floating point output buffer (or NULL) </td></tr>
    <tr><td class="paramname">samples</td><td>Number of samples to decode</td></tr>
  </table>
  </dd>
</dl>
<p>Never use this function: It won't let you encode more than one audio track. To encode audio for multiple tracks, use <a class="el" href="group__audio__encode.html#ga7a53aac2d04ad7714458115f320374cf">lqt_encode_audio_track</a> . If you want to pass the full resolution even for 24/32 bit audio, use <a class="el" href="group__audio__encode.html#ga440f3f940a6d0ffce972b7d7e57930f4">lqt_encode_audio_raw</a> . </p>

</div>
</div>
<a class="anchor" id="ga757133029c2b0c146df224e9fff17ee7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lqt_set_audio </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>channels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>sample_rate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>bits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structlqt__codec__info__s.html">lqt_codec_info_t</a> *&#160;</td>
          <td class="paramname"><em>codec_info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set up audio tracks for encoding. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">channels</td><td>Number of channels </td></tr>
    <tr><td class="paramname">sample_rate</td><td>Samplerate </td></tr>
    <tr><td class="paramname">bits</td><td>Bits per sample (always 16) </td></tr>
    <tr><td class="paramname">codec_info</td><td>Codec to use (see <a class="el" href="group__codec__registry.html">Codec registry</a> )</td></tr>
  </table>
  </dd>
</dl>
<p>This sets one audio track for encoding. Note that the bits argument should always be 16 since it's implicit to the codec in all cases. To add more than one audio track, use <a class="el" href="group__audio__encode.html#ga720b4666e645a6223d30ab74e165b2f9">lqt_add_audio_track</a> . </p>

</div>
</div>
<a class="anchor" id="ga720b4666e645a6223d30ab74e165b2f9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lqt_add_audio_track </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>channels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>sample_rate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>bits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structlqt__codec__info__s.html">lqt_codec_info_t</a> *&#160;</td>
          <td class="paramname"><em>codec_info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Add an audio track for encoding. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">channels</td><td>Number of channels </td></tr>
    <tr><td class="paramname">sample_rate</td><td>Samplerate </td></tr>
    <tr><td class="paramname">bits</td><td>Bits per sample (always 16) </td></tr>
    <tr><td class="paramname">codec_info</td><td>Codec to use (see <a class="el" href="group__codec__registry.html">Codec registry</a>) or NULL</td></tr>
  </table>
  </dd>
</dl>
<p>This sets adds a new audio track for encoding. Note that the bits argument should always be 16 since it's implicit to the codec in all cases. Call this function to subsequently to add as many tracks as you like.</p>
<p>If you passed NULL for the codec_info, you should call <a class="el" href="group__audio__encode.html#gaeb8c26b34c11b284bb9e35222e4a9c48">lqt_set_audio_codec</a> once you know which codec to use. </p>

</div>
</div>
<a class="anchor" id="gaeb8c26b34c11b284bb9e35222e4a9c48"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lqt_set_audio_codec </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>track</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structlqt__codec__info__s.html">lqt_codec_info_t</a> *&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set a codec for an audio track. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">track</td><td>Track index (starting with 0) </td></tr>
    <tr><td class="paramname">info</td><td>The codec to be used for encoding </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gafd0edf4a0d75ac3871dfe40b10ce43d0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void lqt_set_audio_language </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>track</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>language</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the audio language. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">track</td><td>Track index (starting with 0) </td></tr>
    <tr><td class="paramname">language</td><td>ISO-639 Language code</td></tr>
  </table>
  </dd>
</dl>
<p>The language code is a 3-character code, English is "eng", Japanese is "jpn". </p>

</div>
</div>
<a class="anchor" id="ga7a53aac2d04ad7714458115f320374cf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lqt_encode_audio_track </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int16_t **&#160;</td>
          <td class="paramname"><em>output_i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float **&#160;</td>
          <td class="paramname"><em>output_f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>samples</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>track</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encode a number of audio samples for the first track. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">output_i</td><td>16 bit integer output buffer (or NULL) </td></tr>
    <tr><td class="paramname">output_f</td><td>floating point output buffer (or NULL) </td></tr>
    <tr><td class="paramname">samples</td><td>Number of samples to decode </td></tr>
    <tr><td class="paramname">track</td><td>index (starting with 0)</td></tr>
  </table>
  </dd>
</dl>
<p>Same as <a class="el" href="group__audio__encode.html#ga2981e8327f2cd3ee0d33d6d255f05f70">quicktime_encode_audio</a> but with an additional track argument for encoding files with more than one audio track. If you want to pass the full resolution even for 24/32 bit audio, use <a class="el" href="group__audio__encode.html#ga440f3f940a6d0ffce972b7d7e57930f4">lqt_encode_audio_raw</a> . </p>

</div>
</div>
<a class="anchor" id="ga440f3f940a6d0ffce972b7d7e57930f4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lqt_encode_audio_raw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>samples</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>track</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encode audio in the native sampleformat of the codec. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">input</td><td>An array of interleaved samples </td></tr>
    <tr><td class="paramname">samples</td><td>Number of samples to encode </td></tr>
    <tr><td class="paramname">track</td><td>Track index (starting with 0) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of encoded samples or 0 if an error occurred.</dd></dl>
<p>This function bypasses all internal sampleformat conversion and allows full resolution input for up to 32 bit integer and 32 bit float. To check, which dataformat the samples will have, use <a class="el" href="group__audio.html#gabde4021e8da716ad38a91c238aa40df0">lqt_get_sample_format</a> . </p>

</div>
</div>
<a class="anchor" id="ga1afc5c274576eb6420a0476e21bd58c4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void lqt_set_audio_pts_offset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__general.html#gaef65e7300455a3b25eafc7485ec2efa4">quicktime_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>track</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>offset</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set an audio pts offset. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>A quicktime handle </td></tr>
    <tr><td class="paramname">track</td><td>Track index (starting with 0) </td></tr>
    <tr><td class="paramname">offset</td><td>PTS of the first audio sample (in samples) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Nov 14 2014 10:17:40 for libquicktime 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>