cannam@126
|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
cannam@126
|
2 <HTML>
|
cannam@126
|
3
|
cannam@126
|
4 <HEAD>
|
cannam@126
|
5 <TITLE>
|
cannam@126
|
6 Secret Rabbit Code (aka libsamplerate)
|
cannam@126
|
7 </TITLE>
|
cannam@126
|
8 <META NAME="Author" CONTENT="Erik de Castro Lopo (erikd AT mega-nerd DOT com)">
|
cannam@126
|
9 <META NAME="Version" CONTENT="libsamplerate-0.1.8">
|
cannam@126
|
10 <META NAME="Description" CONTENT="The Secret Rabbit Code Home Page">
|
cannam@126
|
11 <META NAME="Keywords" CONTENT="libsamplerate sound resample audio dsp Linux">
|
cannam@126
|
12 <LINK REL=StyleSheet HREF="SRC.css" TYPE="text/css" MEDIA="all">
|
cannam@126
|
13 </HEAD>
|
cannam@126
|
14
|
cannam@126
|
15 <BODY TEXT="#FFFFFF" BGCOLOR="#000000" LINK="#FB1465" VLINK="#FB1465" ALINK="#FB1465">
|
cannam@126
|
16 <!-- pepper -->
|
cannam@126
|
17 <CENTER>
|
cannam@126
|
18 <IMG SRC="SRC.png" HEIGHT=100 WIDTH=760 ALT="SRC.png">
|
cannam@126
|
19 </CENTER>
|
cannam@126
|
20 <!-- pepper -->
|
cannam@126
|
21 <BR>
|
cannam@126
|
22 <!-- pepper -->
|
cannam@126
|
23 <TABLE ALIGN="center" WIDTH="98%">
|
cannam@126
|
24 <TR>
|
cannam@126
|
25 <TD VALIGN="top">
|
cannam@126
|
26 <BR>
|
cannam@126
|
27 <DIV CLASS="nav">
|
cannam@126
|
28 <BR>
|
cannam@126
|
29 <A HREF="index.html">Home</A><BR>
|
cannam@126
|
30 <A HREF="license.html">License</A><BR>
|
cannam@126
|
31 <A HREF="history.html">History</A><BR>
|
cannam@126
|
32 <A HREF="download.html">Download</A><BR>
|
cannam@126
|
33 <A HREF="quality.html">Quality</A><BR>
|
cannam@126
|
34 <A HREF="api.html">API</A><BR>
|
cannam@126
|
35 <A HREF="bugs.html">Bug Reporting</A><BR>
|
cannam@126
|
36 <A HREF="win32.html">On Win32</A><BR>
|
cannam@126
|
37 <A HREF="faq.html">FAQ</A><BR>
|
cannam@126
|
38 <A HREF="lists.html">Mailing Lists</A><BR>
|
cannam@126
|
39 <A HREF="ChangeLog">ChangeLog</A><BR>
|
cannam@126
|
40 <BR>
|
cannam@126
|
41 <DIV CLASS="block">
|
cannam@126
|
42 Author :<BR>Erik de Castro Lopo
|
cannam@126
|
43 <!-- pepper -->
|
cannam@126
|
44 <BR><BR>
|
cannam@126
|
45 <!-- pepper -->
|
cannam@126
|
46
|
cannam@126
|
47 </DIV>
|
cannam@126
|
48 <IMG SRC=
|
cannam@126
|
49 "/cgi-bin/Count.cgi?ft=6|frgb=55;55;55|tr=0|md=6|dd=B|st=1|sh=1|df=src.dat"
|
cannam@126
|
50 HEIGHT=30 WIDTH=100 ALT="counter.gif">
|
cannam@126
|
51 </DIV>
|
cannam@126
|
52
|
cannam@126
|
53 </TD>
|
cannam@126
|
54 <!-- pepper -->
|
cannam@126
|
55 <!-- ######################################################################## -->
|
cannam@126
|
56 <!-- pepper -->
|
cannam@126
|
57 <TD VALIGN="top">
|
cannam@126
|
58 <DIV CLASS="block">
|
cannam@126
|
59 <BR>
|
cannam@126
|
60
|
cannam@126
|
61 <TABLE ALIGN="center" WIDTH="80%">
|
cannam@126
|
62 <TR><TD>
|
cannam@126
|
63 <P>
|
cannam@126
|
64 <I>
|
cannam@126
|
65 "Choosing a sample rate coverter wasn't easy. We ran numerous tests with
|
cannam@126
|
66 Secret Rabbit Code and other sample rate converters, then compared them all.
|
cannam@126
|
67 In the end, SRC outperformed the others, including some extremely well known
|
cannam@126
|
68 and popular software. We had one issue with SRC, but after emailing Erik, he
|
cannam@126
|
69 got back to us immediately with an answer. Choosing SRC was a no brainer."
|
cannam@126
|
70 </I><BR>
|
cannam@126
|
71 Ryan Smith, International Marketing Manager, <BR>
|
cannam@126
|
72 <A HREF="http://emersys.co.kr/">Emersys Corp.</A>, South Korea.<BR>
|
cannam@126
|
73 Product : <A HREF="http://maven3d.com">Maven3D</A>
|
cannam@126
|
74
|
cannam@126
|
75 </P>
|
cannam@126
|
76 </TD></TR>
|
cannam@126
|
77 </TABLE>
|
cannam@126
|
78 <P>
|
cannam@126
|
79 <B>S</B>ecret <B>R</B>abbit <B>C</B>ode (aka libsamplerate) is a
|
cannam@126
|
80 <B>S</B>ample <B>R</B>ate <B>C</B>onverter for audio.
|
cannam@126
|
81 One example of where such a thing would be useful is converting audio
|
cannam@126
|
82 from the CD sample rate of 44.1kHz to the 48kHz sample rate used by
|
cannam@126
|
83 DAT players.
|
cannam@126
|
84 </P>
|
cannam@126
|
85 <!-- pepper -->
|
cannam@126
|
86 <P>
|
cannam@126
|
87 <B>SRC</B> is capable of arbitrary and time varying conversions ; from
|
cannam@126
|
88 downsampling by a factor of 256 to upsampling by the same factor.
|
cannam@126
|
89 Arbitrary in this case means that the ratio of input and output
|
cannam@126
|
90 sample rates can be an irrational number.
|
cannam@126
|
91 The conversion ratio can also vary with time for speeding up and slowing
|
cannam@126
|
92 down effects.
|
cannam@126
|
93 </P>
|
cannam@126
|
94 <!-- pepper -->
|
cannam@126
|
95 <P>
|
cannam@126
|
96 <B>SRC</B> provides a small set of converters to allow quality to
|
cannam@126
|
97 be traded off against computation cost.
|
cannam@126
|
98 The current best converter provides a signal-to-noise ratio of 145dB
|
cannam@126
|
99 with -3dB passband extending from DC to 96% of the theoretical
|
cannam@126
|
100 best bandwidth for a given pair of input and output sample rates.
|
cannam@126
|
101 </P>
|
cannam@126
|
102 <!-- pepper -->
|
cannam@126
|
103 <P>
|
cannam@126
|
104 Since the library has few dependencies beyond that provided by the
|
cannam@126
|
105 standard C library, it should compile and work on just about any
|
cannam@126
|
106 operating system.
|
cannam@126
|
107 It is known to work on Linux, MacOSX,
|
cannam@126
|
108 <A HREF="win32.html">Win32</A>
|
cannam@126
|
109 and Solaris.
|
cannam@126
|
110 With some relatively minor hacking it should also be relatively easy
|
cannam@126
|
111 to port it to embedded systems and digital signal processors.
|
cannam@126
|
112 </P>
|
cannam@126
|
113 <!-- pepper -->
|
cannam@126
|
114 <P>
|
cannam@126
|
115 In addition, the library comes with a comprehensive test suite which
|
cannam@126
|
116 can validate the performance of the library on new platforms.
|
cannam@126
|
117 </P>
|
cannam@126
|
118
|
cannam@126
|
119 <!-- pepper -->
|
cannam@126
|
120 <!-- <A HREF="mailto:aldel0305@mega-nerd.com">For the spam bots</A> -->
|
cannam@126
|
121 <!-- pepper -->
|
cannam@126
|
122
|
cannam@126
|
123 </DIV>
|
cannam@126
|
124 </TD></TR>
|
cannam@126
|
125 </TABLE>
|
cannam@126
|
126
|
cannam@126
|
127 </BODY>
|
cannam@126
|
128 </HTML>
|
cannam@126
|
129
|