[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[AUDITORY] Try AUXLAB!



I’d like to introduce AUXLAB to you all.

AUXLAB is a free program in Windows (Windows 7 and later) to generate and process audio signals with command line syntax. The syntax, AUX (AUdio syntaX), is similar to MATLAB syntax; but it has a number of its own language features useful for audio. If you are a MATLAB user, you will have very little problem following AUX. Actually, those with little or no programming background should learn AUX relatively easily, too, as long as they have some understanding of sound and acoustics.

Download link (no installation required; just unzip and run it): http://auditorypro.com/download/auxlab/auxlab.html

Video tutorials on YouTube (probably more useful than wordy help documents below):
https://www.youtube.com/playlist?list=PL3oVyjivNwSemikPL_pP3gqz8Ud3wqXkR

Documentation: http://auditorypro.com/download/auxlab/AUXLAB.pdf

Online help: http://auxlab.org/help/AUXLAB.html

Join the forum and ask me questions: http://auxlab.org/forum

Source code link: https://github.com/bjkwon/auxlab

Watch the tutorial videos (each is 4-5 min on average) today. You won't regret.

Bomjun Kwon
bjkwon@xxxxxxxxx

If your sanity is not compromised by long, verbose, wordy messages, keep reading---

Back in the 70’s or 80’s , MATLAB was introduced to science/engineering students as an alternative to C, and has gained popularity over the years because we don’t want to spend time worrying about memory management or other C-language things (no matter how fancy they look) when all we need to solve this damn problem or run simulation, etc. I say the same thing: MATLAB is a great tool; but it still has a lot of programming chores that are not relevant to auditory perception or audio processing. How often do you swear when you have an error because you didn’t match the length of arrays to add or multiply? Probably every day, all the time. Do you, auditory scientists or audio engineers, really need to care about data sample points and counting them? Yes, embedded systems engineers do; but not you. You care more about how long the sound is, how long one sound proceeds or overlaps with the other, or how long is the gap, etc—all in seconds (or milliseconds), not in samples. You live in the dB world—your brain releases a lot more neurotransmitters when you hear “amplitude down by 2.5 dB” than “amplitude reduced by the factor of 0.75.” AUX provides a layer of abstraction just the way we audio people need, so we focus more on the sound itself not its implementation. MATLAB knows no sound; AUXLAB is built on sound. Why not try AUXLAB?

Some numbered bullet points here:

1. On the surface, AUXLAB looks like and runs like MATLAB; It has the console where you type in the syntax; the variables window showing the variables in the workspace; and the history window showing the commands you have typed in. 2. Easy to make plots of variables (the plot automatically updated as the variable changes)
3.	Easy to play audio signals, easy to manage multiple sound objects
4. The AUX syntax is largely similar to MATLAB; but there are numerous operators unique for audio processing (such as @ to set the RMS level) and improvements in syntax features at a different level from MATLAB; for example, the OOP style function calling: e.g., x.sqrt instead of sqrt(x) or x.fft.abs.plot instead of plot(abs(fft(x))); which one would you choose? 5. You can make your own functions with *.aux files, just like *.m files of MATLAB; There’s also a debugger similar to the one in Visual Studio or MATLAB. 6. Shh, don’t tell this to anyone—this is totally FREE. Except for corporate users: I may charge them somehow in the future; but don’t know how now. Enjoy free while you can. 7. This is an open source project. Contributors are welcomed, especially if you can help with other platforms--OSX, Linux or Web interface
https://github.com/bjkwon/auxlab
8. There are “modules” that reside in AUXLAB for additional functionalities, including psychoacoustic experimental suites (like Psycon), special speech processing suite, real-time audio processing suite. I’m not releasing them publicly. I may in the future, if I am in the right mood. Anyway, the point is, modules can be made opaque to test proprietary ideas. Now you know. 9. A little history: I began this software project in 2006 when I made a program called Psycon to support psychoacoustic experiments. In 2011 a paper was published introducing AUX, after rejected by almost all major journals (JASA, HR, JSHLR, EH, you name it) for several years! (Kwon, B. J. (2012). AUX: A scripting language for auditory signal processing and software packages for psychoacoustic experiments and education. Behavior Research Methods. 44, 361-373). Given this feat, I’m sad to say this: please don’t read it. It’s like trying to understand MS-DOS to use Windows 10. 10. To users of Psycon and AUX Viewer: AUX Viewer is obsolete and given the comprehensive features of AUXLAB, there’s no need to even update it. Psycon, on the other hand, is still alive, but I wouldn’t support it its original form; because it can be a separate module residing in AUXLAB. I would be happy to help you run a Psycon-like module in AUXLAB. 11. One of the goals of the Psycon project was to make a program that could support ANY psychoacoustic experiment that we could conceive. Indeed, Psycon fulfilled that goal. Well, almost, because one of my esteemed colleagues Huanping Dai once asked me (I think that was in 2008) if Psycon could support an experiment where a psychoacoustic testing is done while the presentation of background noise is indefinitely on-going without interruption. That was the only time I couldn’t answer right away “Yes, Psycon can" when I was talking to many psychoacousticians. Now, I say confidently: Yes Psycon in AUXLAB can. 12. Actually, it’s not just whether it can or cannot. I am more concerned with how easy the job can be done and how intuitive the coding is to general audio people, not software engineers. AUXLAB gives you that privilege. 13. The help document mentioned above is more like a reference manual; not a friendly guide or tutorial. So, I made video tutorials and put them on YouTube. Each of these is 4-5 minutes on average, helping you invest your time topic by topic.

https://www.youtube.com/playlist?list=PL3oVyjivNwSemikPL_pP3gqz8Ud3wqXkR

1.	Quick start
2.	Quick filtering
3.	Addition, Time-shift operator >>
4.	Vectors and colon operator
5.	Time indexing with tilde (~)
6.	Stereo audio signals
7.	Matrix: Part 1
8.	Matrix: Part 2
9.	Keyboard shortcuts
10.	Compound operators
11.	Replicator ..
12.	Conditional indexing
13.	Audio playback
14.	Graphics
15.	Time-frequency manipulation Part 1
16.	Debugger & UDF (User-Defined Function)

(not yet uploaded, but in the pipeline)
17.	Time-frequency manipulation Part 2
18.	UDF demo with a real audio application
19.   Audio "chunk" programming
20.   Programming with time sequences
21.	$ (Special) variables