Commit 9c711e42 authored by Steve Tjoa's avatar Steve Tjoa

more on imports, audio display, reorg

parent 58de3a15
{
"metadata": {
"name": "",
"signature": "sha256:e7d6cf30802c4d390c3070d05c8a43f84ea2ac3448983c9eac409c31fe9e20c0"
"signature": "sha256:b2601021bd013cb3fdcacb2e0157136ad11d85f587ddf0ff2b13b65d9283ef7f"
},
"nbformat": 3,
"nbformat_minor": 0,
......@@ -48,11 +48,10 @@
"cell_type": "code",
"collapsed": false,
"input": [
"#import scipy\n",
"\n",
"x = scipy.arange(100)\n",
"# x = scipy.randn(100)\n",
"# x = scipy.linspace(0, 1, 100)\n",
"x = scipy.arange(50)\n",
"# Try these too:\n",
"# x = scipy.randn(50)\n",
"# x = scipy.linspace(0, 1, 50)\n",
"\n",
"x"
],
......@@ -62,26 +61,15 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 1,
"prompt_number": 2,
"text": [
"array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,\n",
" 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,\n",
" 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,\n",
" 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,\n",
" 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,\n",
" 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99])"
" 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49])"
]
}
],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
"prompt_number": 2
}
],
"metadata": {}
......
{
"metadata": {
"name": "",
"signature": "sha256:33b9ddca243fc0c15c4e4b11e131ddf070da9a9ea6bd8c3f08d02ecdcfd70b17"
"signature": "sha256:6d206e3522e3c0e215bb56e3b552c1b5e49455613894692334f112e5ad42ce6d"
},
"nbformat": 3,
"nbformat_minor": 0,
......@@ -79,37 +79,157 @@
"For headings, we recommend that you use IPython's keyboard shortcuts. To change the text in a cell to a level-3 header, simply press `3`. For similar commands, press `h` to view the Help menu."
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Default Imports"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Default Imports\n",
"-----\n",
"\n",
"If you run IPython inside the [`stanford-mir` Vagrant box](https://vagrantcloud.com/stevetjoa/stanford-mir) used for this workshop, every IPython notebook will automatically have the following packages imported: `numpy`, `scipy`, `matplotlib`.\n",
"\n",
"To view the IPython configuration file, visit `~/.ipython/profile_default/ipython_config.py`."
"If you run IPython inside the [`stanford-mir` Vagrant box](https://vagrantcloud.com/stevetjoa/stanford-mir) used for this workshop, every IPython notebook will automatically have the following packages imported: `numpy`, `scipy`, `matplotlib`."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In addition, several NumPy and matplotlib functions already exist in the IPython workspace:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print arange(5)\n",
"print randn(5)\n",
"print hamming(5)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"[0 1 2 3 4]\n",
"[ 0.5257542 0.78031948 1.5577591 0.52256993 1.46112474]\n",
"[ 0.08 0.54 1. 0.54 0.08]\n"
]
}
],
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"plot(hamming(101))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 6,
"text": [
"[<matplotlib.lines.Line2D at 0x4348590>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x4109650>"
]
}
],
"prompt_number": 6
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To learn more about automatic imports, view the IPython configuration file at `~/.ipython/profile_default/ipython_config.py`."
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Tab Autocompletion"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Tab Autocompletion\n",
"-----\n",
"\n",
"Tab autocompletion works in Command Window and the Editor. After you type a few letters, press the `Tab` key and a popup will appear and show you all of the possible completions, including variable names and functions. This prevents you from mistyping the names of variables -- a big time saver! \n",
" \n",
"For example, type `librosa.` and then press `Tab`. You should see a list of members in the Python package `librosa`."
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Inline Documentation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To get help on a certain Python object, type `?` after the object name, and run the cell:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Run this cell.\n",
"int?"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 7
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"More Documentation: NumPy, SciPy, Matplotlib"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In the top menu bar, click on Help, and you'll find a prepared set of documentation links for IPython, NumPy, SciPy, Matplotlib!"
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Saving"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Saving\n",
"------\n",
"\n",
"Your code goes directly into an IPython notebook. To save your changes, click on the \"Save\" icon in the menu bar, or type `s` in command mode.\n",
"\n",
"If you want to undo a saved edit, use `git checkout -- <file>` to revert the change."
......
{
"metadata": {
"name": "",
"signature": "sha256:a9e87452960c458d121e30d3419229d02a6890aa7056a8143a071534b5538273"
"signature": "sha256:1581bb0cb3b0ef06204b16489cce4211e36ce7ca2c3924763766f1a4917a9d87"
},
"nbformat": 3,
"nbformat_minor": 0,
......@@ -9,13 +9,11 @@
{
"cells": [
{
"cell_type": "markdown",
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Using Audio in IPython\n",
"======================\n",
"\n",
"We will mainly use three libraries for audio acquisition and playback: `IPython.display.Audio`, `essentia.standard.MonoLoader`, and `librosa.load`."
"Using Audio in IPython"
]
},
{
......@@ -23,7 +21,21 @@
"level": 2,
"metadata": {},
"source": [
"Reading Audio"
"Audio Libraries"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We will mainly use three libraries for audio acquisition and playback: `IPython.display.Audio`, `essentia.standard.MonoLoader`, and `librosa.load`."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Introduced in IPython 2.0, [`IPython.display.Audio`](http://ipython.org/ipython-doc/2/api/generated/IPython.lib.display.html#IPython.lib.display.Audio) lets you play audio directly in an IPython notebook."
]
},
{
......@@ -39,6 +51,25 @@
"- [Essentia on GitHub](https://github.com/MTG/essentia)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"`librosa` is a Python package for music and audio processing by [Brian McFee](http://cosmal.ucsd.edu/~bmcfee/). A large portion was ported from [Dan Ellis's Matlab audio processing examples](http://www.ee.columbia.edu/%7Edpwe/resources/matlab/).\n",
"\n",
"- [Documentation Home](http://bmcfee.github.io/librosa/)\n",
"- [Demo: Getting Started](http://nbviewer.ipython.org/github/bmcfee/librosa/blob/master/examples/LibROSA%20demo.ipynb)\n",
"- [librosa on Github](https://github.com/bmcfee/librosa/)"
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Reading Audio"
]
},
{
"cell_type": "markdown",
"metadata": {},
......@@ -62,13 +93,13 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 16,
"prompt_number": 12,
"text": [
"(2517986,)"
]
}
],
"prompt_number": 16
"prompt_number": 12
},
{
"cell_type": "code",
......@@ -84,9 +115,9 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 17,
"prompt_number": 13,
"text": [
"<matplotlib.text.Text at 0x3420a90>"
"<matplotlib.text.Text at 0x7b89850>"
]
},
{
......@@ -94,11 +125,11 @@
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x60a0110>"
"<matplotlib.figure.Figure at 0x7b8c2d0>"
]
}
],
"prompt_number": 17
"prompt_number": 13
},
{
"cell_type": "markdown",
......@@ -112,13 +143,25 @@
"collapsed": false,
"input": [
"from essentia.standard import AudioLoader\n",
"# display help window:\n",
"# Run this cell to display help window:\n",
"AudioLoader?"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 18
"prompt_number": 14
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#import librosa\n",
"#x, fs = librosa.load()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 15
},
{
"cell_type": "heading",
......@@ -132,9 +175,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Introduced in IPython 2.0, [`IPython.display.Audio`](http://ipython.org/ipython-doc/2/api/generated/IPython.lib.display.html#IPython.lib.display.Audio) lets you play audio directly in an IPython notebook.\n",
"\n",
"You can play a local audio file, or you can play remote audio file:"
"Using [`IPython.display.Audio`](http://ipython.org/ipython-doc/2/api/generated/IPython.lib.display.html#IPython.lib.display.Audio), you can play a local audio file or a remote audio file:"
]
},
{
......@@ -159,13 +200,13 @@
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 1,
"prompt_number": 16,
"text": [
"<IPython.lib.display.Audio at 0x424a710>"
"<IPython.lib.display.Audio at 0x4f8eb90>"
]
}
],
"prompt_number": 1
"prompt_number": 16
},
{
"cell_type": "markdown",
......@@ -198,13 +239,13 @@
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 5,
"prompt_number": 17,
"text": [
"<IPython.lib.display.Audio at 0x4415210>"
"<IPython.lib.display.Audio at 0x7b7d410>"
]
}
],
"prompt_number": 5
"prompt_number": 17
},
{
"cell_type": "heading",
......@@ -230,9 +271,9 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 14,
"prompt_number": 18,
"text": [
"<matplotlib.text.Text at 0x4902450>"
"<matplotlib.text.Text at 0x7b8c150>"
]
},
{
......@@ -240,11 +281,11 @@
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x5647610>"
"<matplotlib.figure.Figure at 0x7b7d9d0>"
]
}
],
"prompt_number": 14
"prompt_number": 18
},
{
"cell_type": "markdown",
......@@ -267,9 +308,9 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 15,
"prompt_number": 19,
"text": [
"<matplotlib.text.Text at 0x55bf710>"
"<matplotlib.text.Text at 0x7bc3550>"
]
},
{
......@@ -277,11 +318,11 @@
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x446c4d0>"
"<matplotlib.figure.Figure at 0x7b7a190>"
]
}
],
"prompt_number": 15
"prompt_number": 19
},
{
"cell_type": "heading",
......@@ -291,57 +332,27 @@
"Writing Audio"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from essentia.standard import MonoWriter\n",
"import librosa\n",
"noise = 0.1*randn(44100)\n",
"#MonoWriter(filename='noise.wav')(noise)\n",
"librosa.output.write_wav('noise.wav', noise, 44100)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 30
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"librosa\n",
"-------\n",
"\n",
"`librosa` is a Python package for music and audio processing by [Brian McFee](http://cosmal.ucsd.edu/~bmcfee/). A large portion was ported from [Dan Ellis's Matlab audio processing examples](http://www.ee.columbia.edu/%7Edpwe/resources/matlab/).\n",
"\n",
"- [Documentation Home](http://bmcfee.github.io/librosa/)\n",
"- [Demo: Getting Started](http://nbviewer.ipython.org/github/bmcfee/librosa/blob/master/examples/LibROSA%20demo.ipynb)\n",
"- [librosa on Github](https://github.com/bmcfee/librosa/)"
"We will use Essentia's `MonoWriter` to write a NumPy array to a WAV file. Note: the array must have type `int` or `complex64`."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from essentia.standard import MonoWriter\n",
"import librosa\n",
"x, fs = librosa.load()"
"noise = 0.1*randn(44100)\n",
"#MonoWriter(filename='noise.wav')(noise)\n",
"librosa.output.write_wav('noise.wav', noise, 44100)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "TypeError",
"evalue": "load() takes at least 1 argument (0 given)",
"output_type": "pyerr",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)",
"\u001b[1;32m<ipython-input-3-751d2188e340>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mlibrosa\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mx\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mfs\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mlibrosa\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mload\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[1;31mTypeError\u001b[0m: load() takes at least 1 argument (0 given)"
]
}
],
"prompt_number": 3
"outputs": [],
"prompt_number": 20
}
],
"metadata": {}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment