shithub: aacenc

Download patch

ref: 735bb0c27c9089ad8178656123fee8a25ff6fa30
parent: 7c403591180f26db9dd1723ecf31e658eec87fdf
author: knik <knik>
date: Thu Aug 7 07:29:26 EDT 2003

libfaac.pdf replacement

--- /dev/null
+++ b/docs/libfaac.html
@@ -1,0 +1,210 @@
+<html>
+
+<head>
+<title>FAAC - ISO/MPEG 2/4 AAC Encoder Library</title>
+</head>
+
+<body>
+
+<h3>
+<center>
+FAAC - ISO/MPEG 2/4 AAC Encoder Library version 1.0<br>
+(<a href="http://www.audiocoding.com/">www.audiocoding.com</a>)
+</center>
+</h3>
+
+<h4>
+Contents
+</h4>
+<menu>
+ <li><a href="#scope">Scope</a>
+ <li><a href="#interface">Interface description</a>
+ <li><a href="#usage">Usage</a>
+ <menu>
+  <li><a href="#callseq">Calling sequence</a>
+ </menu>
+ <li><a href="#funcref">Function reference</a>
+ <menu>
+  <li><a href="#init">Initialization / De-initialization</a>
+  <menu>
+   <li><a href="#encopen">faacEncOpen()</a>
+   <li><a href="#encclose">faacEncClose()</a>
+  </menu>
+  <li><a href="#encconf">Encoder configuration</a>
+  <menu>
+   <li><a href="#getconf">faacEncGetCurrentConfiguration()</a>
+   <li><a href="#setconfig">faacEncSetConfiguration()</a>
+  </menu>
+  <li><a href="#encfunc">Encoding functions</a>
+  <menu>
+   <li><a href="#encenc">faacEncEncode()</a>
+  </menu>
+ </menu>
+  <li><a href="#datastruct">Data structures reference</a>
+  <menu>
+  <li><a href="#encconfig">faacEncConfiguration</a>
+  </menu>
+</menu>
+
+
+<a name="scope">
+<h4>Scope</h4>
+This document describes the interface and usage of the
+FAAC - ISO/MPEG 2/4 AAC Encoder Library
+Developed for the Freeware Advanced Audio Coding project.
+
+<a name="interface">
+<h4>Interface description</h4>
+The ISO/MPEG 2/4 AAC Encoder Library provides a high-level
+interface for encoding MPEG2 and MPEG4 ISO AAC files. The
+following header file is provided for usage in C/C++ programs:<br><br>
+
+<b>faac.h</b>: function prototypes<br><br>
+
+The encoder core resides in a statically linkable library called
+
+libfaac.lib <i>(Microsoft Window</i>s) or libfaac.a <i>(UNI</i>X). There
+are various example programs that show how to use the library.
+
+<a name="usage">
+<h4>Usage</h4>
+
+<a name="callseq">
+<h4>Calling sequence</h4>
+
+For encoding AAC bitstreams the following calling sequence is
+mandatory:<br>
+
+<menu>
+<li>Call <i>faacEncOpen()</i>
+ for every encoder instance you need.
+<li>To set encoder options, call <i>faacEncGetCurrentConfiguration()</i>,
+ change the parameters in the structure accessible by the returned pointer
+ and then call <i>faacEncSetConfiguration()</i>.
+<li>As long as there are still samples left to encode, call
+ <i>faacEncEncode()</i>
+ to encode the data.
+ The encoder returns
+ the bitstream data in a client-supplied buffer.
+<li>
+ Once you call
+ <i>faacEncEncode()</i>
+ with zero samples of input
+ the flushing process is initiated; afterwards you may call
+ <i>faacEncEncode()</i>
+ with zero samples input only.<br>
+ <i>faacEncEncode()</i> will continue to write out data until all audio
+ samples have been encoded.
+<li>
+ Once 
+ <i>faacEncEncode()</i>
+	has returned with zero bytes written,
+	call <i>faacEncClose()</i>
+	to destroy this encoder instance.
+</menu>
+
+<a name="funcref">
+<h4>Function reference</h4>
+
+<a name="init">
+<h4>Initialization / De-initialization</h4>
+
+<a name="encopen">
+<h5><i>faacEncOpen()</i></h5>
+
+<pre>
+<b>Prototype</b>
+faacEncHandle FAACAPI faacEncOpen
+(
+unsigned long sampleRate,
+unsigned int numChannels,
+unsigned long *inputSamples,
+unsigned long *maxOutputBytes
+);
+<b>Description</b>
+Open and initialize one instance of the encoder.
+<b>Parameters</b>
+<li><i>sampleRate</i>
+	The samplerate of the encoder input data.
+<li><i>numChannels</i>
+	The number of channels of the encoder input data.
+<li><i>inputSamples</i>
+	Receives the total number of samples that should be fed to
+	faacEncEncode() in each call.
+<li><i>maxOutputBytes</i>
+	Receives the maximum number of bytes that can be in the
+	output buffer after a call to faacEncEncode().
+<b>Return value</b>
+An initialized encoder handle. If anything goes wrong NULL is returned.
+</pre>
+
+<a name="encclose">
+<h5><i>faacEncClose()</i></h5>
+<pre>
+<b>Prototype</b>
+void FAACAPI faacEncClose
+(
+faacEncHandle hEncoder
+);
+<b>Description</b>
+Closes an encoder instance.
+<b>Parameters</b>
+<li>hEncoder
+	An encoder handle returned by faacEncOpen().
+</pre>
+
+<a name="encconf">
+<h4>Encoder configuration</h4>
+
+<a name="getconf">
+<h5><i>faacEncGetCurrentConfiguration()</i></h5>
+
+<pre>
+<b>Prototype</b>
+faacEncConfigurationPtr FAACAPI
+faacEncGetCurrentConfiguration
+(
+faacEncHandle hEncoder
+);
+<b>Description</b>
+Get a pointer to a structure describing the current encoder
+configuration. You may change this structure and feed it into
+<i>faacEncSetConfiguration()</i>.
+</pre>
+
+<a name="setconf">
+<h5><i>faacEncSetConfiguration()</i></h4>
+
+<pre>
+<b>Prototype</b>
+int FAACAPI faacEncSetConfiguration
+(
+faacDecHandle hDecoder,
+faacEncConfigurationPtr config
+);
+<b>Description</b>
+Set a new encoder configuration. See
+faacEncGetCurrentConfiguration().
+</pre>
+
+
+<a name="">
+<h4></h4>
+<a name="">
+<h4></h4>
+
+
+
+<center>
+<br>
+<i>
+Copyright &copy; 2001,2003 <a href="http://www.audiocoding.com/">AudioCoding.com</a>. All rights reserved.
+</i>
+</center>
+
+</body>
+
+</html>
+
+
+