<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_26) on Sun Sep 18 18:13:12 EDT 2011 -->
<TITLE>
AudioTools (libgdx API)
</TITLE>
<META NAME="date" CONTENT="2011-09-18">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AudioTools (libgdx API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package
</B></FONT></A> </TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class
</B></FONT> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AudioTools.html"><FONT CLASS="NavBarFont1"><B>Use
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help
</B></FONT></A> </TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
libgdx API
<style>
body, td, th { font-family:Helvetica, Tahoma, Arial, sans-serif; font-size:10pt }
pre, code, tt { font-size:9pt; font-family:Lucida Console, Courier New, sans-serif }
h1, h2, h3, .FrameTitleFont, .FrameHeadingFont, .TableHeadingColor font { font-size:105%; font-weight:bold }
.TableHeadingColor { background:#EEEEFF; }
a { text-decoration:none }
a:hover { text-decoration:underline }
a:link, a:visited { color:blue }
table { border:0px }
.TableRowColor td:first-child { border-left:1px solid black }
.TableRowColor td { border:0px; border-bottom:1px solid black; border-right:1px solid black }
hr { border:0px; border-bottom:1px solid #333366; }
</style>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
PREV CLASS
<A HREF="../../../../../com/badlogic/gdx/audio/analysis/DFT.html" title="class in com.badlogic.gdx.audio.analysis"><B>NEXT CLASS
</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?com/badlogic/gdx/audio/analysis/AudioTools.html" target="_top"><B>FRAMES
</B></A>
<A HREF="AudioTools.html" target="_top"><B>NO FRAMES
</B></A>
<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes
</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:
NESTED
|
FIELD
|
<A HREF="#constructor_summary">CONSTR
</A> |
<A HREF="#method_summary">METHOD
</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:
FIELD
|
<A HREF="#constructor_detail">CONSTR
</A> |
<A HREF="#method_detail">METHOD
</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.badlogic.gdx.audio.analysis
</FONT>
<BR>
Class AudioTools
</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>com.badlogic.gdx.audio.analysis.AudioTools
</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class
<B>AudioTools
</B><DT>extends java.lang.Object
</DL>
</PRE>
<P>
Class holding various static native methods for processing audio data.
<P>
<P>
<DL>
<DT><B>Author:
</B></DT>
<DD>mzechner
</DD>
</DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary
</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#AudioTools()">AudioTools
</A></B>()
</CODE>
<BR>
</TD>
</TR>
</TABLE>
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary
</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
java.nio.FloatBuffer
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#allocateFloatBuffer(int, int)">allocateFloatBuffer
</A></B>(int
numSamples,
int
numChannels)
</CODE>
<BR>
Allcoates a direct buffer for the given number of samples and channels.
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
java.nio.ShortBuffer
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#allocateShortBuffer(int, int)">allocateShortBuffer
</A></B>(int
numSamples,
int
numChannels)
</CODE>
<BR>
Allcoates a direct buffer for the given number of samples and channels.
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
void
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#convertToFloat(java.nio.ShortBuffer, java.nio.FloatBuffer, int)">convertToFloat
</A></B>(java.nio.ShortBuffer
source,
java.nio.FloatBuffer
target,
int
numSamples)
</CODE>
<BR>
Converts the 16-bit signed PCM data given in source to 32-bit float PCM in the range [-1,1].
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
void
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#convertToMono(java.nio.FloatBuffer, java.nio.FloatBuffer, int)">convertToMono
</A></B>(java.nio.FloatBuffer
source,
java.nio.FloatBuffer
target,
int
numSamples)
</CODE>
<BR>
Converts the samples in source which are assumed to be interleaved left/right stereo samples to mono, writting the converted
samples to target.
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
void
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#convertToMono(java.nio.ShortBuffer, java.nio.ShortBuffer, int)">convertToMono
</A></B>(java.nio.ShortBuffer
source,
java.nio.ShortBuffer
target,
int
numSamples)
</CODE>
<BR>
Converts the samples in source which are assumed to be interleaved left/right stereo samples to mono, writting the converted
samples to target.
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
void
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#convertToShort(java.nio.FloatBuffer, java.nio.ShortBuffer, int)">convertToShort
</A></B>(java.nio.FloatBuffer
source,
java.nio.ShortBuffer
target,
int
numSamples)
</CODE>
<BR>
Converts the 32-bit float PCM data given in source to 16-bit signed PCM in the range [-1,1].
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
float
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/badlogic/gdx/audio/analysis/AudioTools.html#spectralFlux(java.nio.FloatBuffer, java.nio.FloatBuffer, int)">spectralFlux
</A></B>(java.nio.FloatBuffer
spectrumA,
java.nio.FloatBuffer
spectrumB,
int
numSamples)
</CODE>
<BR>
Calculates the spectral flux between the two given spectra.
</TD>
</TR>
</TABLE>
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object
</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
</CODE></TD>
</TR>
</TABLE>
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail
</B></FONT></TH>
</TR>
</TABLE>
<A NAME="AudioTools()"><!-- --></A><H3>
AudioTools
</H3>
<PRE>
public
<B>AudioTools
</B>()
</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail
</B></FONT></TH>
</TR>
</TABLE>
<A NAME="convertToFloat(java.nio.ShortBuffer, java.nio.FloatBuffer, int)"><!-- --></A><H3>
convertToFloat
</H3>
<PRE>
public static void
<B>convertToFloat
</B>(java.nio.ShortBuffer
source,
java.nio.FloatBuffer
target,
int
numSamples)
</PRE>
<DL>
<DD>Converts the 16-bit signed PCM data given in source to 32-bit float PCM in the range [-1,1]. It is assumed that there's
numSamples elements available in both buffers. Source and target get read and written to from offset 0. All buffers must be
direct.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>source
</CODE> - the source buffer
<DD><CODE>target
</CODE> - the target buffer
<DD><CODE>numSamples
</CODE> - the number of samples
</DL>
</DD>
</DL>
<HR>
<A NAME="convertToShort(java.nio.FloatBuffer, java.nio.ShortBuffer, int)"><!-- --></A><H3>
convertToShort
</H3>
<PRE>
public static void
<B>convertToShort
</B>(java.nio.FloatBuffer
source,
java.nio.ShortBuffer
target,
int
numSamples)
</PRE>
<DL>
<DD>Converts the 32-bit float PCM data given in source to 16-bit signed PCM in the range [-1,1]. It is assumed that there's
numSamples elements available in both buffers. Source and target get read and written to from offset 0. All buffers must be
direct.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>source
</CODE> - the source buffer
<DD><CODE>target
</CODE> - the target buffer
<DD><CODE>numSamples
</CODE> - the number of samples
</DL>
</DD>
</DL>
<HR>
<A NAME="convertToMono(java.nio.ShortBuffer, java.nio.ShortBuffer, int)"><!-- --></A><H3>
convertToMono
</H3>
<PRE>
public static void
<B>convertToMono
</B>(java.nio.ShortBuffer
source,
java.nio.ShortBuffer
target,
int
numSamples)
</PRE>
<DL>
<DD>Converts the samples in source which are assumed to be interleaved left/right stereo samples to mono, writting the converted
samples to target. Source is assumed to hold numSamples samples, target should hold numSamples / 2. Samples are read and
written from position 0 up to numSamples. All buffers must be direct.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>source
</CODE> - the source buffer
<DD><CODE>target
</CODE> - the target buffer
<DD><CODE>numSamples
</CODE> - the number of samples to convert (target will have numSamples /2 filled after a call to this)
</DL>
</DD>
</DL>
<HR>
<A NAME="convertToMono(java.nio.FloatBuffer, java.nio.FloatBuffer, int)"><!-- --></A><H3>
convertToMono
</H3>
<PRE>
public static void
<B>convertToMono
</B>(java.nio.FloatBuffer
source,
java.nio.FloatBuffer
target,
int
numSamples)
</PRE>
<DL>
<DD>Converts the samples in source which are assumed to be interleaved left/right stereo samples to mono, writting the converted
samples to target. Source is assumed to hold numSamples samples, target should hold numSamples / 2. Samples are read and
written from position 0 up to numSamples. All buffers must be direct.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>source
</CODE> - the source buffer
<DD><CODE>target
</CODE> - the target buffer
<DD><CODE>numSamples
</CODE> - the number of samples to convert (target will have numSamples /2 filled after a call to this)
</DL>
</DD>
</DL>
<HR>
<A NAME="spectralFlux(java.nio.FloatBuffer, java.nio.FloatBuffer, int)"><!-- --></A><H3>
spectralFlux
</H3>
<PRE>
public static float
<B>spectralFlux
</B>(java.nio.FloatBuffer
spectrumA,
java.nio.FloatBuffer
spectrumB,
int
numSamples)
</PRE>
<DL>
<DD>Calculates the spectral flux between the two given spectra. Both buffers are assumed to hold numSamples elements. Spectrum B
is the current spectrum spectrum A the last spectrum. All buffers must be direct.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>spectrumA
</CODE> - the first spectrum
<DD><CODE>spectrumB
</CODE> - the second spectrum
<DD><CODE>numSamples
</CODE> - the number of elements
<DT><B>Returns:
</B><DD>the spectral flux
</DL>
</DD>
</DL>
<HR>
<A NAME="allocateFloatBuffer(int, int)"><!-- --></A><H3>
allocateFloatBuffer
</H3>
<PRE>
public static java.nio.FloatBuffer
<B>allocateFloatBuffer
</B>(int
numSamples,
int
numChannels)
</PRE>
<DL>
<DD>Allcoates a direct buffer for the given number of samples and channels. The final numer of samples is numSamples *
numChannels.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>numSamples
</CODE> - the number of samples
<DD><CODE>numChannels
</CODE> - the number of channels
<DT><B>Returns:
</B><DD>the direct buffer
</DL>
</DD>
</DL>
<HR>
<A NAME="allocateShortBuffer(int, int)"><!-- --></A><H3>
allocateShortBuffer
</H3>
<PRE>
public static java.nio.ShortBuffer
<B>allocateShortBuffer
</B>(int
numSamples,
int
numChannels)
</PRE>
<DL>
<DD>Allcoates a direct buffer for the given number of samples and channels. The final numer of samples is numSamples *
numChannels.
<P>
<DD><DL>
<DT><B>Parameters:
</B><DD><CODE>numSamples
</CODE> - the number of samples
<DD><CODE>numChannels
</CODE> - the number of channels
<DT><B>Returns:
</B><DD>the direct buffer
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package
</B></FONT></A> </TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class
</B></FONT> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AudioTools.html"><FONT CLASS="NavBarFont1"><B>Use
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index
</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help
</B></FONT></A> </TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
libgdx API
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
PREV CLASS
<A HREF="../../../../../com/badlogic/gdx/audio/analysis/DFT.html" title="class in com.badlogic.gdx.audio.analysis"><B>NEXT CLASS
</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?com/badlogic/gdx/audio/analysis/AudioTools.html" target="_top"><B>FRAMES
</B></A>
<A HREF="AudioTools.html" target="_top"><B>NO FRAMES
</B></A>
<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes
</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:
NESTED
|
FIELD
|
<A HREF="#constructor_summary">CONSTR
</A> |
<A HREF="#method_summary">METHOD
</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:
FIELD
|
<A HREF="#constructor_detail">CONSTR
</A> |
<A HREF="#method_detail">METHOD
</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
<div style="font-size:9pt"><i>
Copyright 2010 Mario Zechner (contact@badlogicgames.com), Nathan Sweet (admin@esotericsoftware.com)
</i></div>
</BODY>
</HTML>