view doc/interpreter/audio.txi @ 19074:0850b5212619

doc: Add @nospell macro around proper names in documentation. * aspell-octave.en.pws: Remove proper names from Octave's custom dictionary. * doc/interpreter/audio.txi, doc/interpreter/diagperm.txi, doc/interpreter/diffeq.txi, doc/interpreter/emacs.txi, doc/interpreter/func.txi, doc/interpreter/geometry.txi, doc/interpreter/intro.txi, doc/interpreter/linalg.txi, doc/interpreter/numbers.txi, doc/interpreter/preface.txi, doc/interpreter/quad.txi, doc/interpreter/sparse.txi, libinterp/corefcn/colloc.cc, libinterp/corefcn/ellipj.cc, libinterp/corefcn/gammainc.cc, libinterp/corefcn/hess.cc, libinterp/corefcn/quadcc.cc, libinterp/corefcn/rand.cc, libinterp/corefcn/sqrtm.cc, libinterp/dldfcn/ccolamd.cc, libinterp/dldfcn/colamd.cc, libinterp/dldfcn/dmperm.cc, libinterp/dldfcn/symrcm.cc, scripts/general/quadgk.m, scripts/general/quadl.m, scripts/linear-algebra/commutation_matrix.m, scripts/linear-algebra/condest.m, scripts/linear-algebra/duplication_matrix.m, scripts/linear-algebra/expm.m, scripts/linear-algebra/housh.m, scripts/linear-algebra/krylov.m, scripts/linear-algebra/onenormest.m, scripts/linear-algebra/qzhess.m, scripts/optimization/fminsearch.m, scripts/optimization/glpk.m, scripts/signal/arch_fit.m, scripts/signal/bartlett.m, scripts/signal/blackman.m, scripts/signal/diffpara.m, scripts/signal/durbinlevinson.m, scripts/signal/hamming.m, scripts/signal/hanning.m, scripts/sparse/eigs.m, scripts/sparse/pcg.m, scripts/sparse/pcr.m, scripts/specfun/ellipke.m, scripts/special-matrix/gallery.m, scripts/special-matrix/invhilb.m, scripts/statistics/base/quantile.m, scripts/statistics/tests/kruskal_wallis_test.m, scripts/statistics/tests/manova.m, scripts/statistics/tests/mcnemar_test.m: Add @nospell macro around proper names in documentation.
author Rik <rik@octave.org>
date Thu, 21 Aug 2014 15:57:18 -0700
parents d63878346099
children bf27e21f0bfb
line wrap: on
line source

@c Copyright (C) 1996-2013 Kurt Hornik
@c
@c This file is part of Octave.
@c
@c Octave is free software; you can redistribute it and/or modify it
@c under the terms of the GNU General Public License as published by the
@c Free Software Foundation; either version 3 of the License, or (at
@c your option) any later version.
@c 
@c Octave is distributed in the hope that it will be useful, but WITHOUT
@c ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@c FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
@c for more details.
@c 
@c You should have received a copy of the GNU General Public License
@c along with Octave; see the file COPYING.  If not, see
@c <http://www.gnu.org/licenses/>.

@c Written by Kurt Hornik <Kurt.Hornik@wu-wien.ac.at> on 1996/05/14

@node Audio Processing
@chapter Audio Processing

Octave provides a few functions for dealing with audio data.  An audio
`sample' is a single output value from an A/D converter, i.e., a small
integer number (usually 8 or 16 bits), and audio data is just a series
of such samples.  It can be characterized by three parameters: the
sampling rate (measured in samples per second or Hz, e.g., 8000 or
44100), the number of bits per sample (e.g., 8 or 16), and the number of
channels (1 for mono, 2 for stereo, etc.).

There are many different formats for representing such data.  Currently,
only the two most popular, @emph{linear encoding} and @emph{mu-law
encoding}, are supported by Octave.  There is an excellent FAQ on audio
formats by @nospell{Guido van Rossum} @email{guido@@cwi.nl} which can be
found at any FAQ ftp site, in particular in the directory
@file{/pub/usenet/news.answers/audio-fmts} of the archive site
@code{rtfm.mit.edu}.

Octave simply treats audio data as vectors of samples (non-mono data are
not supported yet).  It is assumed that audio files using linear
encoding have one of the extensions @file{lin} or @file{raw}, and that
files holding data in mu-law encoding end in @file{au}, @file{mu}, or
@file{snd}.

@DOCSTRING(lin2mu)

@DOCSTRING(mu2lin)

@DOCSTRING(loadaudio)

@DOCSTRING(saveaudio)

The following functions for audio I/O require special A/D hardware and
operating system support.  It is assumed that audio data in linear
encoding can be played and recorded by reading from and writing to
@file{/dev/dsp}, and that similarly @file{/dev/audio} is used for mu-law
encoding.  These file names are system-dependent.  Improvements so that
these functions will work without modification on a wide variety of
hardware are welcome.

@DOCSTRING(playaudio)

@DOCSTRING(record)

@DOCSTRING(setaudio)

@DOCSTRING(wavread)

@DOCSTRING(wavwrite)