Subject: [AUDITORY] Try AUXLAB! From: Bomjun Kwon <alist@xxxxxxxx> Date: Thu, 18 Apr 2019 22:43:24 -0400 List-Archive:<http://lists.mcgill.ca/scripts/wa.exe?LIST=AUDITORY>I=E2=80=99d like to introduce AUXLAB to you all. AUXLAB is a free program in Windows (Windows 7 and later) to generate=20 and process audio signals with command line syntax. The syntax, AUX=20 (AUdio syntaX), is similar to MATLAB syntax; but it has a number of its=20 own language features useful for audio. If you are a MATLAB user, you=20 will have very little problem following AUX. Actually, those with little=20 or no programming background should learn AUX relatively easily, too, as=20 long as they have some understanding of sound and acoustics. Download link (no installation required; just unzip and run it):=20 http://auditorypro.com/download/auxlab/auxlab.html Video tutorials on YouTube (probably more useful than wordy help=20 documents below): https://www.youtube.com/playlist?list=3DPL3oVyjivNwSemikPL_pP3gqz8Ud3wqXk= R 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=20 regret. Bomjun Kwon bjkwon@xxxxxxxx If your sanity is not compromised by long, verbose, wordy messages, keep=20 reading--- Back in the 70=E2=80=99s or 80=E2=80=99s , MATLAB was introduced to scien= ce/engineering=20 students as an alternative to C, and has gained popularity over the=20 years because we don=E2=80=99t want to spend time worrying about memory=20 management or other C-language things (no matter how fancy they look)=20 when all we need to solve this damn problem or run simulation, etc. I=20 say the same thing: MATLAB is a great tool; but it still has a lot of=20 programming chores that are not relevant to auditory perception or audio=20 processing. How often do you swear when you have an error because you=20 didn=E2=80=99t match the length of arrays to add or multiply? Probably ev= ery=20 day, all the time. Do you, auditory scientists or audio engineers,=20 really need to care about data sample points and counting them? Yes,=20 embedded systems engineers do; but not you. You care more about how long=20 the sound is, how long one sound proceeds or overlaps with the other, or=20 how long is the gap, etc=E2=80=94all in seconds (or milliseconds), not in= =20 samples. You live in the dB world=E2=80=94your brain releases a lot more=20 neurotransmitters when you hear =E2=80=9Camplitude down by 2.5 dB=E2=80=9D= than=20 =E2=80=9Camplitude reduced by the factor of 0.75.=E2=80=9D AUX provides a= layer of=20 abstraction just the way we audio people need, so we focus more on the=20 sound itself not its implementation. MATLAB knows no sound; AUXLAB is=20 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=20 console where you type in the syntax; the variables window showing the=20 variables in the workspace; and the history window showing the commands=20 you have typed in. 2. Easy to make plots of variables (the plot automatically updated as=20 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=20 operators unique for audio processing (such as @xxxxxxxx to set the RMS level)=20 and improvements in syntax features at a different level from MATLAB;=20 for example, the OOP style function calling: e.g., x.sqrt instead of=20 sqrt(x) or x.fft.abs.plot instead of plot(abs(fft(x))); which one would=20 you choose? 5. You can make your own functions with *.aux files, just like *.m files=20 of MATLAB; There=E2=80=99s also a debugger similar to the one in Visual S= tudio=20 or MATLAB. 6. Shh, don=E2=80=99t tell this to anyone=E2=80=94this is totally FREE. E= xcept for=20 corporate users: I may charge them somehow in the future; but don=E2=80=99= t know=20 how now. Enjoy free while you can. 7. This is an open source project. Contributors are welcomed, especially=20 if you can help with other platforms--OSX, Linux or Web interface https://github.com/bjkwon/auxlab 8. There are =E2=80=9Cmodules=E2=80=9D that reside in AUXLAB for addition= al=20 functionalities, including psychoacoustic experimental suites (like=20 Psycon), special speech processing suite, real-time audio processing=20 suite. I=E2=80=99m not releasing them publicly. I may in the future, if I= am in=20 the right mood. Anyway, the point is, modules can be made opaque to test=20 proprietary ideas. Now you know. 9. A little history: I began this software project in 2006 when I made a=20 program called Psycon to support psychoacoustic experiments. In 2011 a=20 paper was published introducing AUX, after rejected by almost all major=20 journals (JASA, HR, JSHLR, EH, you name it) for several years! (Kwon, B.=20 J. (2012). AUX: A scripting language for auditory signal processing and=20 software packages for psychoacoustic experiments and education. Behavior=20 Research Methods. 44, 361-373). Given this feat, I=E2=80=99m sad to say t= his:=20 please don=E2=80=99t read it. It=E2=80=99s like trying to understand MS-D= OS to use=20 Windows 10. 10. To users of Psycon and AUX Viewer: AUX Viewer is obsolete and given=20 the comprehensive features of AUXLAB, there=E2=80=99s no need to even upd= ate it.=20 Psycon, on the other hand, is still alive, but I wouldn=E2=80=99t support= it its=20 original form; because it can be a separate module residing in AUXLAB. I=20 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=20 could support ANY psychoacoustic experiment that we could conceive.=20 Indeed, Psycon fulfilled that goal. Well, almost, because one of my=20 esteemed colleagues Huanping Dai once asked me (I think that was in=20 2008) if Psycon could support an experiment where a psychoacoustic=20 testing is done while the presentation of background noise is=20 indefinitely on-going without interruption. That was the only time I=20 couldn=E2=80=99t answer right away =E2=80=9CYes, Psycon can" when I was t= alking to many=20 psychoacousticians. Now, I say confidently: Yes Psycon in AUXLAB can. 12. Actually, it=E2=80=99s not just whether it can or cannot. I am more=20 concerned with how easy the job can be done and how intuitive the coding=20 is to general audio people, not software engineers. AUXLAB gives you=20 that privilege. 13. The help document mentioned above is more like a reference manual;=20 not a friendly guide or tutorial. So, I made video tutorials and put=20 them on YouTube. Each of these is 4-5 minutes on average, helping you=20 invest your time topic by topic. https://www.youtube.com/playlist?list=3DPL3oVyjivNwSemikPL_pP3gqz8Ud3wqXk= R 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