{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "from __future__ import division\n", "import numpy as np\n", "import matplotlib.pyplot as pt" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "from simple_audio import play" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "sample_rate = 44100\n", "count = (sample_rate//1024) * 1024" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "t = np.linspace(0, 1, sample_rate)[:count]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "x = np.sin(440*2*np.pi*t)\n", "#x = np.sin(880*2*np.pi*t)\n", "#x = 0.5 * (np.sin(880*2*np.pi*t) + np.sin(440*2*np.pi*t))\n", "#x = 0.5 * (np.sin(1209*2*np.pi*t) + np.sin(697*2*np.pi*t))" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "play(x)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "pt.plot(x[:500])" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nYn158MEHEQ6HMT3iKKhTp06huroaRUVFmDt3Ltrb23vfe/7551FYWIiSkhJ81N+SY4NpbGzEbbfd\nhqlTp2LatGl45ZVXAMSnPS5duoTKykqUl5djypQpePLJJwHEpy1suru7UVFR0TvhJF5tkZeXhxkz\nZqCiogKzvz5EwjdbuB498IErV65Y+fn5Vn19vdXZ2WmVlZVZu3fvVlkk4WzcuNHavn27NW3atN7X\nfvrTn1ovvviiZVmW9cILL1iPP/64ZVmWtWvXLqusrMzq7Oy06uvrrfz8fKu7u1tJuUXQ0tJi7dix\nw7Isyzp37pxVVFRk7d69O27t0dHRYVmWZXV1dVmVlZXWJ598Ere2sCzLevnll63vfe971j333GNZ\nVvy2k7y8POvkyZNXveaXLZQKwObNm6+aJfT8889bzz//vMISyaG+vv4qASguLrZaW1styyKnWFxc\nbFnWtbOm5s2bZ3366adyCyuRe++911q/fn3c26Ojo8OaNWuW9dVXX8WtLRobG6077rjD2rBhg3X3\n3XdblhW/7SQvL886ceLEVa/5ZQulXUDxslBsKNra2hAOhwEA4XAYbV9vqXn06FHk5OT0Xhdk+zQ0\nNGDHjh2orKyMW3v09PSgvLwc4XC4t2ssXm3xk5/8BC+99BISEhwXFa+2CIVCuPPOOzFr1iy89tpr\nAPyzhS/TQN0SLwvFYiEUCg1qlyDa7Pz58/jOd76DX/ziF0hJSbnqvXiyR0JCAnbu3IkzZ85g3rx5\n+FOfo7TixRbvv/8+xo8fj4qKigG3fIgXWwDApk2bkJmZiePHj6O6uholfbYY9mILpRlAdnY2Ghsb\ne39vbGy8Sr3ihXA43LviuqWlBePHjwdwrX2ampqQHbC1811dXfjOd76DBx54AIsWLQIQ3/YAgNTU\nVCxcuBDbtm2LS1ts3rwZa9aswaRJk3D//fdjw4YNeOCBB+LSFgCQmZkJAEhPT8d9992HrVu3+mYL\npQIQuVCss7MTq1evRk1NjcoiKaGmpgYrV64EAKxcubLXEdbU1ODNN99EZ2cn6uvrUVdX1zsLIAhY\nloWHHnoIU6ZMwY9//OPe1+PRHidOnOidyXHx4kWsX78eFRUVcWmL5557Do2Njaivr8ebb76J22+/\nHb/97W/j0hYXLlzAua9PnOro6MBHH32E6dOn+2cL/4csYmPt2rVWUVGRlZ+fbz333HOqiyOcJUuW\nWJmZmVZycrKVk5Njvf7669bJkyetO+64wyosLLSqq6ut06dP917/7LPPWvn5+VZxcbG1bt06hSX3\nn08++cQKhUJWWVmZVV5ebpWXl1sffvhhXNrjiy++sCoqKqyysjJr+vTp1s9+9jPLsqy4tEUktbW1\nvbOA4tEWhw4dssrKyqyysjJr6tSpvT7SL1vwQjCGYZg4RflCMIZhGEYNLAAMwzBxCgsAwzBMnMIC\nwDAME6ewADAMw8QpLAAMwzBxCgsAwzBMnMICwDAME6f8Pyt04uhrrDwaAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }