Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier A room-corrected Ambisonic listening rig made with free software.

Slides:



Advertisements
Similar presentations
Researches and Applications for Automotive Field Andrea Azzali, Eraldo Carpanoni, Angelo Farina University of Parma.
Advertisements

Technician Licensing Class Supplement T4, Questions Only Amateur Radio Practices 2 Exam Questions, 2 Groups.
Audio Signal Flow By Jodi Kidneigh Week 1 IMPMOOC.
OR HOW TO HAVE FUN WITH YOUR PC ON HF DIGITAL MODES.
Numerical Simulation Project University of Parma.
Quickfilter Pro Software Demonstration for QF4A512 The following slides will illustrate how you can design and verify a filter design in minutes! BEGIN.
Listening Tests and Evaluation of Simulated Sound Fields Using VibeStudio Designer Wersényi György Hesham Fouad SZÉCHENYI ISTVÁN UNIVERSITY, Hungary VRSonic,
Morset Sound Development Title: A practical comparison of the ”new” swept-sine technique and MLS in measuring room impulse responses and acoustical parameters.
Improvement of Audio Capture in Handheld Devices through Digital Filtering Problem Microphones in handheld devices are of low quality to reduce cost. This.
Pro Tools Session Secrets Professional Recipes for High Octane Results.
Overview of Computer Setup in the Electronic Music Studio Computer Digital in/out (usb) Mbox Audio in/out Analog audio signals travel from the Audio Mixer.
UFCEXR-20-1Multimedia Sound Production Studio Equipment and Layout.
Digital Voice Communication Link EE 413 – TEAM 2 April 21 st, 2005.
STUDIOS AND LISTENING ROOMS
1 Ambisonics: The Surround Alternative Richard G. Elen The Ambisonic Network.
Building Your Own Home Studio. Recording Devices.
Basic Unix Dr Tim Cutts Team Leader Systems Support Group Infrastructure Management Team.
Theme: Multimedia Sound ProductionUFCFY Studio Equipment for Multimedia Sound Production.
0 - 1 © 2010 Texas Instruments Inc Practical Audio Experiments using the TMS320C5505 USB Stick “FIR Filters” Texas Instruments University Programme Teaching.
Making all the right connections Signal Flow 101.
John Oates AST Primary Music 1 Audacity – Soundscapes for Literacy Audacity – Audio Editor Primary Inset – Westbrook Old Hall Primary.
GODIAN MABINDAH RUTHERFORD UNUSI RICHARD MWANGI.  Differential coding operates by making numbers small. This is a major goal in compression technology:
Studio Sound Engineering Course Max Hunter IC Radio (
3-D Sound and Spatial Audio MUS_TECH 348. Main Types of Errors Front-back reversals Angle error Some Experimental Results Most front-back errors are front-to-back.
By Cheyenne Morgan Unit 1- Set up and operate a DAW.
Who Are You, Arduino? Er. Sahil Khanna
Virtual File System for Streaming Video Developers: – Uri Goldenberg – Henry Abravanel
How to Create a Podcast. Podcasting “is the distribution of audio or video files, such as radio programs or music videos, over the Internet using either.
Final Year Project Eoin Culhane. MIDI Guitar Guitar with 6 outputs 1 output for each string Each individual string output will be converted to MIDI.
By continuing this presentation, you understand, and agree to abide by the License Agreement that appears on the CD-ROM. The entire presentation, each.
Mixing It Up The Last Great Challenge For Game Audio Garry Taylor Audio Manager – WWS Creative Services Group Sony Computer Entertainment Europe.
January 2010 – GEO-ISC KickOff meeting Christian Gräf, AEI 10 m Prototype Team State-of-the-art digital control: Introducing LIGO CDS.
OPERATING SYSTEMS (OS) By the end of this lesson you will be able to explain: 1. What an OS is 2. The relationship between the OS & application programs.
Digital Audio Hygiene Alistair Hirst OMNI Audio Theory and Practice.
- The search for extra-frontal intelligence Linux Audio Conference 2008, Kunsthochschule für Medien, Köln How to build an Ambisonic listening.
What can Ambisonics do for you?
(S)PACE Symposium, May 4 th Jörn Nettingsmeier 1/1/ Hybrid Higher-order Ambisonic Recording Jörn Nettingsmeier Freelance audio engineer Essen, Germany.
Chapter 15 Recording and Editing Sound
AP CSP: Cleaning Data & Creating Summary Tables
Fantasound Developed by Disney for “Fantasia” (1940)
Convert Sounds to the IIGS from Windows, Mac, Linux, Solaris,
Large-scale Higher Order Ambisonic Sound Reinforcement Systems
System Software EIT, © Author Gay Robertson, 2016.
Adaptive Filters Common filter design methods assume that the characteristics of the signal remain constant in time. However, when the signal characteristics.
CS 591 S1 – Computational Audio -- Spring, 2017
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Analogue & Digital.
CS 591 S1 – Computational Audio -- Spring, 2017
Objective % Select and utilize tools for digital audio production.
Technician Licensing Class
Introduction CSE 1310 – Introduction to Computers and Programming
What Happens When You Use Virtualization In Software Testing Service?
Designations Inputs Outputs Signal processing
Technology ICT Option: Audio.
Welcome to Digital Electronics using the Arduino Board
CSCI1600: Embedded and Real Time Software
Audio Multimedia Broadcast.
Does Spatialized Audio Change Everything?
Podcasting.
Technology ICT Option: Audio.
What must be considered to determine the minimum current capacity needed for a transceiver power supply? A. Efficiency of the transmitter at full power.
Chapter 11 Audio © 2013 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in.
Roanoke Valley Amateur Radio Club
Recap In previous lessons we have looked at how numbers can be stored as binary. We have also seen how images are stored as binary. This lesson we are.
PRODUCTION PHASES CHANGES
CSCI1600: Embedded and Real Time Software
GENEDI EUROPEAN COMMISSION - EUROSTAT GENERIC EDI TOOLBOX
Chapter 1: Creating a Program.
Tune your speakers for good listening environment- GraySpark Audio Academy
RT9114B GUI User Manual V3.0.
Presentation transcript:

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier A room-corrected Ambisonic listening rig made with free software A fun usecase for Linux as a versatile and reliable tool for electro-acoustic hobbyists and professionals. With a brief glimpse into Ambisonics in case you always wondered what it might be about. (But the methods described here also work for stereo or any other surround system.) And most of the discussed software runs on Mac OS X, too.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier About me Jörn Nettingsmeier, aged 33, freelance audio engineer and IT admin, classically trained musician, qualified event technician, been hanging out with the Linux audio crowd since 1998.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier About your next 20 mins: My assumptions are: ● You are interested in Linux and/or in setting up an Ambisonic surround rig at home. ● You have between 4 and 24 speakers and sound I/O hardware available. ● Your speakers and room are not perfect. ● You are willing and able to afford software licensing costs of 0.00€ and ● You are interested in doing stuff yourself.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Why Ambisonics? Free software is only fun with free codecs, free algorithms and free exchange of information. All major Ambisonic patents have now expired, and there is a huge academic and hobbyist community of enthusiasts, plus a rich supply of freely available code and documentation. And: it sounds good and scales well.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Why Linux? Thanks to the JACK sound server, Linux has very flexible inter-application routing. You can mix and match different specialised applications. This makes Linux/JACK an ideal platform for experimental and production use with non-standard requirements and workflows. And: it's free as in „speech“ and „beer“.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 1a: arrange your speakers For best spatial reproduction, choose a regular polygon or polyhedron. (Yes, you can do 3D!) Try to get the angles right. Distance errors can be corrected with delay. sweet spot (listening seat)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 1b: measure angle and distance For each speaker, measure its actual angle (front is 0°, turn is counter-clockwise) and distance from sweet spot. laser range finder laser angle gauge sweet spot (listening seat)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 2: Get speaker IRs For each speaker, measure its impulse response at the listening position (which will include room effects). For best S/N ratio, use the swept-sine technique (Farina 2000). Aliki a flat omni mike instrumentation microphone in sweet spot

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Speaker IRs after deconvolution:

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 3: „invert“ your IRs To get a correction filter, answer this simple question: „Which FIR kernel will yield a perfect pulse when convolved with the actual speaker/room IR?“ Ok, jokes aside, computer to the rescue (and of course getting a usable, stable filter is a lot harder in practice). drc

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier drc is a room correction package with excellent documentation: Use version (3.0.0 has some unresolved numerical instabilities and chokes on some IRs, like mine...) Step 3: „invert“ your IRs

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 3: „invert“ your IRs Begin with a mild correction setting (such as the ERB example configuration) for a large sweet spot. Define your desired frequency response as a set of spline points in a text file. If your speakers are port-loaded: don't push them below the port frequency!

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Oh, I forgot: For those new to the UNIX way of doing things, drc is a command line tool. Step 3: „invert“ your IRs

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 3: „invert“ your IRs $ for i in speaker_ir-*.pcm ; do drc --BCInFile $i –PSOutFile filter-$i erb-48.0.drc ; done DRC 2.7.0: Digital Room Correction Copyright (C) Denis Sbragion Input configuration file: erb-48.0.drc Parsing configuration file... $ for i in filter-speaker_ir-*; do sox -f -4 -r c1 -t raw $i $i.wav; done Invoke drc with the ERB configuration file (included), specify the input IR and the output file name for the filter kernels.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier $ for i in speaker_ir-*.pcm ; do drc --BCInFile $i –PSOutFile filter-$i erb-48.0.drc ; done DRC 2.7.0: Digital Room Correction Copyright (C) Denis Sbragion Input configuration file: erb-48.0.drc Parsing configuration file... $ for i in filter-speaker_ir-*; do sox -f -4 -r c1 -t raw $i $i.wav; done Step 3: „invert“ your IRs Process all speaker IRs at once using a shell loop. (Nice, isn't it?)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier $ for i in speaker_ir-*.pcm ; do drc --BCInFile $i –PSOutFile filter-$i erb-48.0.drc ; done DRC 2.7.0: Digital Room Correction Copyright (C) Denis Sbragion Input configuration file: erb-48.0.drc Parsing configuration file... $ for i in filter-speaker_ir-*; do sox -f -4 -r c1 -t raw $i $i.wav; done Step 3: „invert“ your IRs Convert the raw filters to.wav files with sox (again in a loop to save typing).

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier $ for i in speaker_ir-*.pcm ; do drc --BCInFile $i –PSOutFile filter-$i erb-48.0.drc ; done DRC 2.7.0: Digital Room Correction Copyright (C) Denis Sbragion Input configuration file: erb-48.0.drc Parsing configuration file... $ for i in filter-speaker_ir-*; do sox -f -4 -r c1 -t raw $i $i.wav; done Step 3: „invert“ your IRs Scared? Well, you can always...

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier a nerd! Write to

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 4: Signal flow & software setup Realtime convolver Ambisonic decoder B-format audio DRC filters JACK Ardour AmbDec JConv

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 4: Signal flow & software setup JConv AmbDec Ardour DAW JACK DRC filters

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Ardour DAW Step 4: Signal flow & software setup

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Ardour is a complete DAW and also a very versatile mixer,

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier with an arbitrary number of channels in tracks&buses!

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier For example, a 4 channel B-format surround track...

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier 6 channel speaker feed monitor buses.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier AmbDec Step 4: Signal flow & software setup

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier an Ambisonic decoder for 2D and 3D up to 24 speakers psycho- acoustically correct dual-band operation near-field compen-sation AmbDec

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Create a configuration for your speaker rig: AmbDec

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Create a configuration for your speaker rig: Basic set-tings (order, number of speakers) AmbDec

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Create a configuration for your speaker rig: Basic set-tings (order, number of speakers) Decoding Matrix (fill in your speaker positions). AmbDec

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Create a configuration for your speaker rig: Basic set-tings (order, number of speakers) Decoding Matrix (fill in your speaker positions). Matrix coefficients from literature AmbDec

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier JConv Step 4: Signal flow & software setup DRC filters

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier JConv is a real-time convolution engine (and another command-line tool). :-D It runs in the background and takes a simple configuration file: /cd /home/nettings/drc-filters # in out partition maxsize # /convolver/new # # in out gain delay offset length chan file # /impulse/read filter-speaker_ir-1.pcm.wav /impulse/read filter-speaker_ir-2.pcm.wav /impulse/read filter-speaker_ir-3.pcm.wav /impulse/read filter-speaker_ir-4.pcm.wav /impulse/read filter-speaker_ir-5.pcm.wav /impulse/read filter-speaker_ir-6.pcm.wav

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier JConv is a real-time convolution engine (and another command-line tool). :-D It runs in the background and takes a simple configuration file: /cd /home/nettings/drc-filters # in out partition maxsize # /convolver/new # # in out gain delay offset length chan file # /impulse/read filter-speaker_ir-1.pcm.wav /impulse/read filter-speaker_ir-2.pcm.wav /impulse/read filter-speaker_ir-3.pcm.wav /impulse/read filter-speaker_ir-4.pcm.wav /impulse/read filter-speaker_ir-5.pcm.wav /impulse/read filter-speaker_ir-6.pcm.wav The filter kernels we created earlier:

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Step 4: Signal flow & software setup JACK

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Putting it all together with JACK and qjackctl: Imagine this with 24 speakers! Thankfully, virtual cables are cheap :-D

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier So what does it sound like? To evaluate the effects of the application of DRC, here are a few „before & after“ comparisons...: JAPA, WaveLab (er, well...)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Speaker No. 6 before DRC:

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Speaker No. 6 after DRC:

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Frequency response before DRC: (steady-state pink noise, level-matched)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Frequency response after DRC: (steady-state pink noise, matched at slightly lower level to avoid speaker overload)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Evaluation of the DRC: Listening tests show more pleasant timbre, especially with stringed instruments, more „sparkle“ in the treble band, a „tighter“ bass and improved precision of localisation. (The speakers used for this test are low-end active studio monitors with a cost of ca. 200€ per channel.)

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Thanks to: the VdT and especially Sebastian Gabler for the invitation, Fons Adriaensen (author of Aliki, AmbDec and JConv), Denis Sbragion (author of drc), the JACK development team, the Ardour development team, Eric Benjamin, Richard Lee and other patrons of the sursound mailing list, and of course for the shark images.

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier Thanks for your attention! Your Questions?

Tonmeistertagung 2008 – Linux in Audio – Jörn Nettingsmeier References: Aliki, AmbDec, JConv, JAPA: drc: JACK: Ardour: qjackctl: sox: Farina 2000: Angelo Farina, Simultaneous measurement of impulse response and distortion with a swept-sine technique, AES Preprint, ‑ AES00.PDF, 2000 The corresponding paper to this presentation can be downloaded from