audio-processing/processing.ipynb

219 lines
1.6 MiB
Plaintext
Raw Permalink Normal View History

{
"metadata": {
"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.8.4-final"
},
"orig_nbformat": 2,
"kernelspec": {
"name": "python3",
"display_name": "Python 3",
"language": "python"
}
},
"nbformat": 4,
"nbformat_minor": 2,
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"\n",
"from scipy.io.wavfile import read\n",
"from scipy.fft import fft, fftfreq\n",
"\n",
"from IPython.display import Audio\n",
"\n",
"from math import log10\n",
"\n",
"import matplotlib.pyplot as plt"
]
},
{
"source": [
"# Audio Processing\n",
"\n",
"Playing around loading, visualising and processing speech"
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"16000"
]
},
"metadata": {},
"execution_count": 2
}
],
"source": [
"Fs, data = read('sounds/f-news.wav')\n",
"N = len(data)\n",
"\n",
"Fs"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<IPython.lib.display.Audio object>"
],
"text/html": "\n <audio controls=\"controls\" >\n <source src=\"data:audio/wav;base64,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
},
"metadata": {},
"execution_count": 3
}
],
"source": [
"Audio(data, rate=Fs)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\r\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\r\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\r\n<!-- Created with matplotlib (https://matplotlib.org/) -->\r\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 410.070312 277.314375\" width=\"410.070312pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <metadata>\r\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\r\n <cc:Work>\r\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\r\n <dc:date>2021-01-24T13:51:10.404262</dc:date>\r\n <dc:format>image/svg+xml</dc:format>\r\n <dc:creator>\r\n <cc:Agent>\r\n <dc:title>Matplotlib v3.3.3, https://matplotlib.org/</dc:title>\r\n </cc:Agent>\r\n </dc:creator>\r\n </cc:Work>\r\n </rdf:RDF>\r\n </metadata>\r\n <defs>\r\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\r\n </defs>\r\n <g id=\"figure_1\">\r\n <g id=\"patch_1\">\r\n <path d=\"M 0 277.314375 \r\nL 410.070312 277.314375 \r\nL 410.070312 0 \r\nL 0 0 \r\nz\r\n\" style=\"fill:none;\"/>\r\n </g>\r\n <g id=\"axes_1\">\r\n <g id=\"patch_2\">\r\n <path d=\"M 68.070312 239.758125 \r\nL 402.870313 239.758125 \r\nL 402.870313 22.318125 \r\nL 68.070312 22.318125 \r\nz\r\n\" style=\"fill:#ffffff;\"/>\r\n </g>\r\n <g id=\"matplotlib.axis_1\">\r\n <g id=\"xtick_1\">\r\n <g id=\"line2d_1\">\r\n <defs>\r\n <path d=\"M 0 0 \r\nL 0 3.5 \r\n\" id=\"mcfff5275ed\" style=\"stroke:#000000;stroke-width:0.8;\"/>\r\n </defs>\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"83.288494\" xlink:href=\"#mcfff5275ed\" y=\"239.758125\"/>\r\n </g>\r\n </g>\r\n <g id=\"text_1\">\r\n <!-- 0 -->\r\n <g transform=\"translate(80.107244 254.356562)scale(0.1 -0.1)\">\r\n <defs>\r\n <path d=\"M 31.78125 66.40625 \r\nQ 24.171875 66.40625 20.328125 58.90625 \r\nQ 16.5 51.421875 16.5 36.375 \r\nQ 16.5 21.390625 20.328125 13.890625 \r\nQ 24.171875 6.390625 31.78125 6.390625 \r\nQ 39.453125 6.390625 43.28125 13.890625 \r\nQ 47.125 21.390625 47.125 36.375 \r\nQ 47.125 51.421875 43.28125 58.90625 \r\nQ 39.453125 66.40625 31.78125 66.40625 \r\nz\r\nM 31.78125 74.21875 \r\nQ 44.046875 74.21875 50.515625 64.515625 \r\nQ 56.984375 54.828125 56.984375 36.375 \r\nQ 56.984375 17.96875 50.515625 8.265625 \r\nQ 44.046875 -1.421875 31.78125 -1.421875 \r\nQ 19.53125 -1.421875 13.0625 8.265625 \r\nQ 6.59375 17.96875 6.59375 36.375 \r\nQ 6.59375 54.828125 13.0625 64.515625 \r\nQ 19.53125 74.21875 31.78125 74.21875 \r\nz\r\n\" id=\"DejaVuSans-48\"/>\r\n </defs>\r\n <use xlink:href=\"#DejaVuSans-48\"/>\r\n </g>\r\n </g>\r\n </g>\r\n <g id=\"xtick_2\">\r\n <g id=\"line2d_2\">\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"137.932183\" xlink:href=\"#mcfff5275ed\" y=\"239.758125\"/>\r\n </g>\r\n </g>\r\n <g id=\"text_2\">\r\n <!-- 2 -->\r\n <g transform=\"translate(134.750933 254.356562)scale(0.1 -0.1)\">\r\n <defs>\r\n <path d=\"M 19.1875 8.296875 \r\nL 53.609375 8.296875 \r\nL 53.609375 0 \r\nL 7.328125 0 \r\nL 7.328125 8.296875 \r\nQ 12.9375 14.109375 22.625 23.890625 \r\nQ 32.328125 33.6875 34.8125 36.53125 \r\nQ 39.546875 41.84375 41.421875 45.53125 \r\nQ 43.3125 49.21875 43.3125 52.78125 \r\nQ 43.3125 58.59375 39.234375 62.25 \r\nQ 35.15625 65.921875 28.609375 65.921875 \r\nQ 23.96875 65.921875 18.8125 64.3125 \r\nQ 13.671875 62.703125 7.8125 59.421875 \r\nL 7.8125 69.390625 \r\nQ 13.765625 71.78125 18.9375 73 \r\nQ 24.125 74.21875 28.421875 74.21875 \r\nQ 39.75 74.21875 46.484375 68.546875 \r\nQ 53.21875 62.890625 53.21875 53.421875 \r\nQ 53.21875 48.921875 51.53125 44.890625 \r\nQ 49.859375 40.875 45.40625 35.40625 \r\nQ 44.1875 33.984375 37.640625 27.21875 \r\nQ 31.109375 20.453125 19.1875 8.296875
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"time_x = [i/Fs for i in range(N)] # samples to seconds\n",
"# data_db = [20 * log10(i/20e-6) for i in data]\n",
"\n",
"plt.plot(time_x, data)\n",
"plt.xlabel('Seconds')\n",
"plt.ylabel('Amplitude')\n",
"plt.title('Audio Waveform')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\r\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\r\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\r\n<!-- Created with matplotlib (https://matplotlib.org/) -->\r\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 395.328125 277.314375\" width=\"395.328125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <metadata>\r\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\r\n <cc:Work>\r\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\r\n <dc:date>2021-01-24T13:51:11.101259</dc:date>\r\n <dc:format>image/svg+xml</dc:format>\r\n <dc:creator>\r\n <cc:Agent>\r\n <dc:title>Matplotlib v3.3.3, https://matplotlib.org/</dc:title>\r\n </cc:Agent>\r\n </dc:creator>\r\n </cc:Work>\r\n </rdf:RDF>\r\n </metadata>\r\n <defs>\r\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\r\n </defs>\r\n <g id=\"figure_1\">\r\n <g id=\"patch_1\">\r\n <path d=\"M 0 277.314375 \r\nL 395.328125 277.314375 \r\nL 395.328125 0 \r\nL 0 0 \r\nz\r\n\" style=\"fill:none;\"/>\r\n </g>\r\n <g id=\"axes_1\">\r\n <g id=\"patch_2\">\r\n <path d=\"M 53.328125 239.758125 \r\nL 388.128125 239.758125 \r\nL 388.128125 22.318125 \r\nL 53.328125 22.318125 \r\nz\r\n\" style=\"fill:#ffffff;\"/>\r\n </g>\r\n <g clip-path=\"url(#p28e3cf6984)\">\r\n <image height=\"218\" id=\"image62157d9453\" transform=\"scale(1 -1)translate(0 -218)\" width=\"335\" x=\"53.328125\" xlink:href=\"data:image/png;base64,\r\n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
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"plt.specgram(data[0: 1 *Fs], Fs=Fs)\n",
"plt.xlabel('Seconds')\n",
"plt.ylabel('Frequency')\n",
"plt.title('Audio Spectrogram')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\r\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\r\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\r\n<!-- Created with matplotlib (https://matplotlib.org/) -->\r\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 388.965625 277.314375\" width=\"388.965625pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <metadata>\r\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\r\n <cc:Work>\r\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\r\n <dc:date>2021-01-24T13:51:11.716259</dc:date>\r\n <dc:format>image/svg+xml</dc:format>\r\n <dc:creator>\r\n <cc:Agent>\r\n <dc:title>Matplotlib v3.3.3, https://matplotlib.org/</dc:title>\r\n </cc:Agent>\r\n </dc:creator>\r\n </cc:Work>\r\n </rdf:RDF>\r\n </metadata>\r\n <defs>\r\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\r\n </defs>\r\n <g id=\"figure_1\">\r\n <g id=\"patch_1\">\r\n <path d=\"M 0 277.314375 \r\nL 388.965625 277.314375 \r\nL 388.965625 0 \r\nL 0 0 \r\nz\r\n\" style=\"fill:none;\"/>\r\n </g>\r\n <g id=\"axes_1\">\r\n <g id=\"patch_2\">\r\n <path d=\"M 46.965625 239.758125 \r\nL 381.765625 239.758125 \r\nL 381.765625 22.318125 \r\nL 46.965625 22.318125 \r\nz\r\n\" style=\"fill:#ffffff;\"/>\r\n </g>\r\n <g id=\"matplotlib.axis_1\">\r\n <g id=\"xtick_1\">\r\n <g id=\"line2d_1\">\r\n <defs>\r\n <path d=\"M 0 0 \r\nL 0 3.5 \r\n\" id=\"m6e3f11e783\" style=\"stroke:#000000;stroke-width:0.8;\"/>\r\n </defs>\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"62.183807\" xlink:href=\"#m6e3f11e783\" y=\"239.758125\"/>\r\n </g>\r\n </g>\r\n <g id=\"text_1\">\r\n <!-- 0 -->\r\n <g transform=\"translate(59.002557 254.356562)scale(0.1 -0.1)\">\r\n <defs>\r\n <path d=\"M 31.78125 66.40625 \r\nQ 24.171875 66.40625 20.328125 58.90625 \r\nQ 16.5 51.421875 16.5 36.375 \r\nQ 16.5 21.390625 20.328125 13.890625 \r\nQ 24.171875 6.390625 31.78125 6.390625 \r\nQ 39.453125 6.390625 43.28125 13.890625 \r\nQ 47.125 21.390625 47.125 36.375 \r\nQ 47.125 51.421875 43.28125 58.90625 \r\nQ 39.453125 66.40625 31.78125 66.40625 \r\nz\r\nM 31.78125 74.21875 \r\nQ 44.046875 74.21875 50.515625 64.515625 \r\nQ 56.984375 54.828125 56.984375 36.375 \r\nQ 56.984375 17.96875 50.515625 8.265625 \r\nQ 44.046875 -1.421875 31.78125 -1.421875 \r\nQ 19.53125 -1.421875 13.0625 8.265625 \r\nQ 6.59375 17.96875 6.59375 36.375 \r\nQ 6.59375 54.828125 13.0625 64.515625 \r\nQ 19.53125 74.21875 31.78125 74.21875 \r\nz\r\n\" id=\"DejaVuSans-48\"/>\r\n </defs>\r\n <use xlink:href=\"#DejaVuSans-48\"/>\r\n </g>\r\n </g>\r\n </g>\r\n <g id=\"xtick_2\">\r\n <g id=\"line2d_2\">\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"100.229688\" xlink:href=\"#m6e3f11e783\" y=\"239.758125\"/>\r\n </g>\r\n </g>\r\n <g id=\"text_2\">\r\n <!-- 1000 -->\r\n <g transform=\"translate(87.504688 254.356562)scale(0.1 -0.1)\">\r\n <defs>\r\n <path d=\"M 12.40625 8.296875 \r\nL 28.515625 8.296875 \r\nL 28.515625 63.921875 \r\nL 10.984375 60.40625 \r\nL 10.984375 69.390625 \r\nL 28.421875 72.90625 \r\nL 38.28125 72.90625 \r\nL 38.28125 8.296875 \r\nL 54.390625 8.296875 \r\nL 54.390625 0 \r\nL 12.40625 0 \r\nz\r\n\" id=\"DejaVuSans-49\"/>\r\n </defs>\r\n <use xlink:href=\"#DejaVuSans-49\"/>\r\n <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\r\n <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\r\n <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\r\n </g>\r\n </g>\r\n </g>\r\n <g id=\"xtick_3\">\r\n <g id=\"line2d_3\">\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"138.27557\" xlink:href=\"#m6e3f11e783\" y=\"239.758125\"/>\r\n </g>\r\n
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"spectrum = np.abs(np.fft.rfft(data)[:int(N/2)]/N)\n",
"frequency_x = np.fft.rfftfreq(data.size, d=1/Fs)[:int(N/2)]\n",
"\n",
"plt.plot(frequency_x, spectrum)\n",
"plt.xlabel('Frequency')\n",
"plt.ylabel('Amplitude')\n",
"plt.title('Audio Spectrum')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"x: 89120, cep: 44561\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\r\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\r\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\r\n<!-- Created with matplotlib (https://matplotlib.org/) -->\r\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 410.070312 277.314375\" width=\"410.070312pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <metadata>\r\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\r\n <cc:Work>\r\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\r\n <dc:date>2021-01-24T13:52:11.288376</dc:date>\r\n <dc:format>image/svg+xml</dc:format>\r\n <dc:creator>\r\n <cc:Agent>\r\n <dc:title>Matplotlib v3.3.3, https://matplotlib.org/</dc:title>\r\n </cc:Agent>\r\n </dc:creator>\r\n </cc:Work>\r\n </rdf:RDF>\r\n </metadata>\r\n <defs>\r\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\r\n </defs>\r\n <g id=\"figure_1\">\r\n <g id=\"patch_1\">\r\n <path d=\"M 0 277.314375 \r\nL 410.070312 277.314375 \r\nL 410.070312 0 \r\nL 0 0 \r\nz\r\n\" style=\"fill:none;\"/>\r\n </g>\r\n <g id=\"axes_1\">\r\n <g id=\"patch_2\">\r\n <path d=\"M 68.070312 239.758125 \r\nL 402.870313 239.758125 \r\nL 402.870313 22.318125 \r\nL 68.070312 22.318125 \r\nz\r\n\" style=\"fill:#ffffff;\"/>\r\n </g>\r\n <g id=\"matplotlib.axis_1\">\r\n <g id=\"xtick_1\">\r\n <g id=\"line2d_1\">\r\n <defs>\r\n <path d=\"M 0 0 \r\nL 0 3.5 \r\n\" id=\"mac0a3a320e\" style=\"stroke:#000000;stroke-width:0.8;\"/>\r\n </defs>\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"83.288494\" xlink:href=\"#mac0a3a320e\" y=\"239.758125\"/>\r\n </g>\r\n </g>\r\n <g id=\"text_1\">\r\n <!-- 0 -->\r\n <g transform=\"translate(80.107244 254.356562)scale(0.1 -0.1)\">\r\n <defs>\r\n <path d=\"M 31.78125 66.40625 \r\nQ 24.171875 66.40625 20.328125 58.90625 \r\nQ 16.5 51.421875 16.5 36.375 \r\nQ 16.5 21.390625 20.328125 13.890625 \r\nQ 24.171875 6.390625 31.78125 6.390625 \r\nQ 39.453125 6.390625 43.28125 13.890625 \r\nQ 47.125 21.390625 47.125 36.375 \r\nQ 47.125 51.421875 43.28125 58.90625 \r\nQ 39.453125 66.40625 31.78125 66.40625 \r\nz\r\nM 31.78125 74.21875 \r\nQ 44.046875 74.21875 50.515625 64.515625 \r\nQ 56.984375 54.828125 56.984375 36.375 \r\nQ 56.984375 17.96875 50.515625 8.265625 \r\nQ 44.046875 -1.421875 31.78125 -1.421875 \r\nQ 19.53125 -1.421875 13.0625 8.265625 \r\nQ 6.59375 17.96875 6.59375 36.375 \r\nQ 6.59375 54.828125 13.0625 64.515625 \r\nQ 19.53125 74.21875 31.78125 74.21875 \r\nz\r\n\" id=\"DejaVuSans-48\"/>\r\n </defs>\r\n <use xlink:href=\"#DejaVuSans-48\"/>\r\n </g>\r\n </g>\r\n </g>\r\n <g id=\"xtick_2\">\r\n <g id=\"line2d_2\">\r\n <g>\r\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"121.334803\" xlink:href=\"#mac0a3a320e\" y=\"239.758125\"/>\r\n </g>\r\n </g>\r\n <g id=\"text_2\">\r\n <!-- 500 -->\r\n <g transform=\"translate(111.791053 254.356562)scale(0.1 -0.1)\">\r\n <defs>\r\n <path d=\"M 10.796875 72.90625 \r\nL 49.515625 72.90625 \r\nL 49.515625 64.59375 \r\nL 19.828125 64.59375 \r\nL 19.828125 46.734375 \r\nQ 21.96875 47.46875 24.109375 47.828125 \r\nQ 26.265625 48.1875 28.421875 48.1875 \r\nQ 40.625 48.1875 47.75 41.5 \r\nQ 54.890625 34.8125 54.890625 23.390625 \r\nQ 54.890625 11.625 47.5625 5.09375 \r\nQ 40.234375 -1.421875 26.90625 -1.421875 \r\nQ 22.3125 -1.421875 17.546875 -0.640625 \r\nQ 12.796875 0.140625 7.71875 1.703125 \r\nL 7.71875 11.625 \r\nQ 12.109375 9.234375 16.796875 8.0625 \r\nQ 21.484375 6.890625 26.703125 6.890625 \r\nQ 35.15625 6.890625 40.078125 11.328125 \r\nQ 45.015625 15.765625 45.015625 23.390625 \r\nQ 45.015625 31 40.078125 35.4375 \r\nQ 35.15625 39.890625 26.703125 39.890625 \r\nQ 22.75 39.890625 18.8125 39.015625 \r\nQ 14.890625 3
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"cepstrum = np.fft.rfft(np.log(spectrum))\n",
"\n",
"plt.plot(frequency_x[:int(len(frequency_x)/2)], cepstrum[:int(len(frequency_x)/2)])\n",
"plt.xlabel('Quefrency')\n",
"plt.ylabel('Amplitude')\n",
"plt.title('Cepstrum')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
]
}