|

About "The DSP
Dimension"
Hi folks, welcome
to the DSP Dimension, my personal collection of
tutorials and source code. My name is Stephan
Bernsee (some of you might remember me as Stephan
Sprenger from the lonely days before I got married
:-) ). I'm primarily involved in commercial
software development in the signal processing
business but I'm also having a part time commitment
to DSP education with courses mainly for students
and software developers confronted with the task of
developing DSP/audio processing systems. Besides
that, I'm writing articles on DSP for some
magazines from time to time.
So what's this
site all about. Basically, I think that I have
collected a fair amount of material during the last
years that may be worth sharing on the internet to
people who are interested in learning the concepts
of DSP. For those of you who did not come across
this term yet: "DSP" stands for "Digital Signal
Processing" and describes the science that tries to
analyze, generate and manipulate measured real
world signals with the help of a digital computer.
These signals can be anything that is a collection
of numbers, or measurements, most commonly used
include images, audio (such as digitally recorded
speech and music) and medical and seismic data.
Being involved in education related to specifically
audio signal processing anyway, I see no reason why
I shouldn't make some of the stuff I use in my
courses available to the public here.
Again, what's
this site all about. This site is dedicated to
outlining some DSP concepts that are commonly
underrepresented elsewhere, with a main focus on
music/audio applications. Most other sites of this
kind focus on audio DSP applications that deal with
common tasks, such as filter design, adaptive
filtering, the basics of discrete time sampling,
encoding/compression of data, aliasing, Fourier
transform theory and related things. This is mainly
due to the fact that these are the tools frequently
needed by DSP people.This site will not cover them
at all (er, almost), since I personally believe
there are enough good descriptions of these topics
on the web and in the books and I won't waste the
small amount of time I have on repeating them here.
Instead, this site will assume you are already
familiar with (or at least willing to learn) the
basics and start at a reasonably high level. This
does not mean that you won't understand anything if
you're a DSP newbie, it simply means I won't
discuss the usual mathematical justifications for
doing the things the way I do them, especially with
regard to mathematical constraints such as the
causality of realtime systems and things like error
estimation in bandlimited systems that are
discretely and uniformly sampled. Usually, in
practice you will sometimes require them, so you
should make yourself familiar with the concepts at
some time. However, for now, these issues are not
required.
One exception to
this is my "DFT Explained" article. In this
article, I will explain the most important
properties and the most frequently asked questions
about the Discrete Fourier Transform, in simple
terms. I do this because I feel that this topic is
one of the commonly misunderstood ones, and I have
not found any really satisfactory in-depth
explanation of this on the web yet.
You will find
that from time to time I will need to discuss some
maths, but I'll do my best to keep it as simple as
possible and try to do it in a way that does not
clutter the actual content too much. Instead, I
will try to focus on intuitively describing and
implementing the things I belabor, and provide
short segments of code that are platform
independent and can be used as 'black boxes' to
visualize the processes and results.
Besides my own
work, you will find hopefully useful links to other
interesting and related sites here, as well as some
free applications I developed during the last few
years in my spare time. I will also provide some
source code snippets for some of the applications,
which are taken from my upcoming book (I will
announce it officially here when I get it done).
Please see the legal information and notices as
well as the terms of use for the code and
applications on the pages where they are
provided.
Being my
homepage, this site will also have some personal
information on myself, my interests, hobbies and
other (un)related stuff.
Important
Legal Issues
Please note that
all content provided on this web site is mostly for
educational purposes, which means that I neither
take any responsibility as to the correctness of
the references and source code nor do I make any
representation as to its usefulness or fitness for
a particular purpose. You, the reader, are taking
the full responsibility for the use of the
material. All source code examples have been
authored by myself, and I did my best to check that
they are not conflicting with the rights of any
other parties. I do not get paid for maintaining
this site or providing the content, and I do not
guarantee that through the use of the software and
source code examples provided on this site in a
commercial software you do not infringe on any
patent or other means of intellectual property
protection of a 3rd party company except where
explicitly stated. All examples provided are
copyrighted material created by myself and are
therefore subject to all applicable copyright
regulations in your country. They may not be
reproduced or otherwise used in any context without
my prior written consent. Whenever I need to
reference to code written by other authors, I do my
best to cite the references correctly or provide
links to their web site. I will not reproduce any
code written by others on this site without their
explicit consent. Make sure you read
the disclaimer
before using the content provided on this web
site.
|