Pasi Savolainen
This is my site. It's ordered mainly in a 'directory' fashion.
To navigate, use:
- menu
- content tree
- search
- calendar
Specifics about me.
Got report that voiceapp no longer compiled correctly. Took a look at the
code and made some fixes/enhancements, including:
- Optimized the way Analyzer and Scope draw themselves.
- -height option to set total window height
- -bg option to set background color
- -scope-lineh option to set height of Scope line (better visibility)
- -solid-scope option to draw Scope with lines from axis.
- -nospectrogram option to disable drawing of spectrogram (thanks for suggestion Michael P)
- ESC or 'Q' will now quit.
- Bugs:
- Fixed compilation (thanks for report Michael P)
- 255 vs 256 multiplying in color generation.
- Limit vertical lines to window height
- make -wlc option really do something useful
Height and width of window are a bit constrained because of the way we
get and process data. If spectrogram is enabled, window must be at least M/2
pixels high where M is number of samples we push through FFT (-n -option,
default 512). M/2 is also always width of Analyzer, and M is always width of
Scope. Window width can be less that Analyzer+Scope, Scope will just not be
fully drawn.
Note that even with such simplistic graphics VoiceApp will push
your processor.
Download voiceapp-0.4.4.tar.gz.
January 2006
(2¼ years ago) |
/code/voiceapp/
060107
|
Comments 0
?>
VoiceApp works by reading audio directly from your soundcard (in Linux it's
file /dev/dsp), and transforming data via FFT. The result is thrown
on the screen in matrixish colors ;).
mpg123 -s -m -4 shaggy-bombastik.mp3 ¦ ./voiceapp -w 600 -s (version 0.4.2)
Screenshots
Version 0.4.2 in action here(220k).
Requirements
Pentium (??) -- developed on PPro200/GF2PCI and eats 10%..
SDL (Simple DirectMedia Layer) -- www.libsdl.org.
FFTW (Fastest Fourier Transform in The West) -- www.fftw.org.
Linux (www.linux.com) -- VoiceApp sets some
linux (OSS/Free??) specific settings, so porting it onto other platform is not easy.
(as a side note, I have somewhere sources for same-kind app using DirectSound & MS Windows
things..).
To get them under debian/unstable (don't know about stable):
apt-get install fftw-dev (needed to compile)
apt-get install sdl1.2-dev (-''-)
then make and ./voiceapp.
NOTE!
Please verify that your Microphone / line-in is not 'muted'.
VoiceApp needs some data input to work..
Download
Source:
Fun things
- Power spectrum is shown after 'Bezier -curve' -fitting, use '-red', '-green' and '-blue'
command line modifiers to produce more interesting colors.
- For example: ./voiceapp -red 0:0:0.2:1 -green 0:0:0:1 -blue 0:0.1:0.9:1 gives
nice result.
- Try ./voiceapp -s < /dev/hda as root..
- Try whistling into microphone.
- Please do make strange voices ;)
ToDo
- Beat Detection (FFT again over power-sum)
- (done-0.3.5)ShiftingView
- ColorPresets
- [even] Better font handling (should be mappable directly to chars, so we can print anything we want..)
- more printable info.
- esound integration.
- improve FFT from a file. (slow-pace)
- pausing & snap-shotting.
- display of conventional tone when over some freq (440Hz = C1)
- tons of things I've ever dreamt of =)
- directionality of new data.
- data interpolation on higher sample-counts. theoretically we have the horsepower, this would
also soften out FFT-jungies..
May 2003
(5 years ago) |
/code/voiceapp/
about
|
Comments 0
?>
Long time no news. Well, I found out that there's plenty of this kind of
programs on the net.. And still some people come for voiceapp. Thank You,
you know who I mean =)
Some goody for you: I made (long time ago) a preliminary XMMS plugin. Only
basic functionality is there but you can see what it does. If you're feeling
adventurous, try it. You need a xmms-dev package (it depends on
libgtk-dev..).
xmms-vaplug notes (for adventurer):
./configure && make
DON'T 'make install'.
Copy vaplug/src/.libs/libvaplug.so to ~/.xmms/Plugins.
Copy vaplug/src/vaplug_font.bmp to ~/.xmms (hard coded into code, even if not used..)
Then Use!
Oh, yeah, download xmms-vaplug
here.
?>
Version 0.4.2 released. This adds many new features & bug-fixes.
- Added "-sleep" switch which makes VoiceApp sleep for a while, this helps if you know
the rate at which data is coming in.
- Added "memory-manager", now we can FFT in as small steps as we want. (overlapping as wanted).
- Re-organized source, so XMMS plugin is possible (yes I got it running, but don't know how to compile on
other's systems, so it's not available now.)
- Only half of inputted data was actually FFT'd, (I shall remember that read() reads bytes, I shall remember
that read() reads bytes.. ;)
- Made a move to autoconf & automake, now just ./configure && make.
Don't make install, however, as it does no good.
- Added "slice" display of FFT (some call it analyzer), and also dislpay of raw sound-data (scope).
- Added "angle" display of FFT (calculated from FFT, it's angle at which data is left to point out.) At the moment it looks pretty meaningless, but may prove handy.
- Switched from "square-root" -system to real desibels. I think I got it this time somewhat right.
- Many smaller tweaks.
- Oh yeah, while you're 'root', try voiceapp -s < /dev/hda, sure looks fun ;)
?>
Day of brown paper-bag. 0.4.3 out.
- Fixed (hopefully) configuration issues, configure.in was horribly mutated.. Thanks go to
Steve Manley and Heiko Beiküfner for pointing these out.
?>
Version 0.3.5 out, highlights of this release are:
- New command-line options (don't fit in --help anymore, there's only reminders now).
- Colors are now configurable (You may find it interesting to get to know what bezier curve is)
- Font is now bitmapped and is in
voiceapp_font.bmp, it's 7x8 for now, but i'll make it configurable.
- Some speedup because font is now blitted directly to the screen.
- New display mode called ShiftView, as the name says it just shifts view from right to left,
use it if you have cycles to burn, as currently it's a processor-hog.
?>