{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Stereophonic Recording Techniques\n", "\n", "[return to main page](index.ipynb)\n", "\n", "In this unit, we try to learn something about the properties of the two probably most basic stereophonic recording techniques: AB and XY." ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## AB Recording Technique\n", "\n", "*Exercise:* Write a function that calculates the time difference between left and right\n", "microphone, depending on the distance between the microphones and the angle of\n", "sound incidence.\n", "\n", "The necessary equations (and figures) can be found in the lecture notes:\n", "\n", "\\begin{align}\n", "\\alpha &= \\alpha(\\Delta t) = \\alpha(\\beta)\\\\\n", "\\Delta t &= \\frac{d}{c} \\sin \\beta\n", "\\end{align}\n", "\n", "In these equations, $\\alpha$ is the perceived angle of incidence, $\\beta$ is\n", "the actual angle of incidence.\n", "$\\Delta t$ is the time difference between the two microphones,\n", "$d$ is the distance between them, and $c$ is, as always, the speed of sound.\n", "\n", "The function shall accept a single angle of incidence or a sequence of multiple angles." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "*Exercise:* Write a function that plots the time differences for a series of angles of\n", "incidence, using the function from the previous exercise.\n", "\n", "Generate plots with angles from -90° to 90°.\n", "Use a microphone distance of 60 cm." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Exercise:* What can you do to get a smaller recording angle, e.g. for recording a string quartet?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## XY Recording Technique\n", "\n", "*Exercise:* Write a function that calculates the weighting factor of the left and right\n", "microphone depending on the type of microphone, the angle between the\n", "microphones and the angle of sound incidence.\n", "\n", "The necessary equations can again be found in the lecture notes:\n", "\n", "\\begin{align}\n", "\\alpha &= \\alpha(\\Delta L) = \\alpha(\\beta)\\\\\n", "\\Delta L &= 20 \\log (A_\\text{X}) - 20 \\log (A_\\text{Y})\\\\\n", "A_\\text{X} &= a + b \\cos (\\epsilon + \\beta)\\\\\n", "A_\\text{Y} &= a + b \\cos (\\epsilon - \\beta)\n", "\\end{align}\n", "\n", "$\\alpha$ and $\\beta$ are defined as above,\n", "$\\Delta L$ is the level difference between the two microphones, $A_\\text{X}$\n", "and $A_\\text{Y}$ are the directional weighting factors of the microphones.\n", "$\\pm\\epsilon$ is the angle between the microphones.\n", "$a$ and $b$ are constants which allow to select the directivity pattern of a\n", "microphone.\n", "For cardioid pattern, use $a = b = 0.5$;\n", "for super-cardioid, use $a = 0.366$ and $b = 0.634$;\n", "for hyper-cardioid, use $a = 0.25$ and $b = 0.75$;\n", "and for figure-of-eight, use $a = 0$ und $b = 1$.\n", "\n", "Again, the function shall accept a single angle of incidence or a sequence\n", "of multiple angles." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Exercise:* Write a function that plots weighting factors and level differences for a\n", "series of angles of incidence, using the function from the previous exercise.\n", "\n", "Generate plots with angles of incidence from $-180°$ to\n", "$180°$, once for cardioid pattern and once for figure-of-eight.\n", "Use an angle between the microphones of $\\pm 45°$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Image Assistant\n", "\n", "There is an HTML5 web-app called *Image Assistant* at http://ima.schoeps.de/ which can be used to get the same information as we calculated in the previous exercises - and much more.\n", "\n", "Its predecessor is a Java-Applet which is still available at http://hauptmikrofon.de/index.php/stereo-3d/image-assistant/v2-1-java-applet.\n", "\n", "You can use either one, they may or may not work depending on your browser.\n", "\n", "*Exercise:* Use the values from the previous exercises and check if a similar result is\n", "displayed.\n", "\n", "*Exercise:* Play around with different microphone pattern and angles." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Solutions\n", "\n", "If you had problems solving some of the exercises, don't despair!\n", "Have a look at the [example solutions](recording-solutions.ipynb).\n", "\n", "

\n", " \n", " \"CC0\"\n", " \n", "
\n", " To the extent possible under law,\n", " the person who associated CC0\n", " with this work has waived all copyright and related or neighboring\n", " rights to this work.\n", "

" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.1+" } }, "nbformat": 4, "nbformat_minor": 1 }