2018-05-03 22:16:32 +00:00
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Tacotron 2 inference code \n",
"Edit the variables **checkpoint_path** and **text** to match yours and run the entire code to generate plots of mel outputs, alignments and audio synthesis from the generated mel-spectrogram using Griffin-Lim."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Import libraries and setup matplotlib"
]
},
{
"cell_type": "code",
2018-11-26 06:33:16 +00:00
"execution_count": 1,
"metadata": {},
2018-11-27 15:45:09 +00:00
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/dcg-adlr-rafaelvalle-source.cosmos597/repos/nvidia/tacotron2/plotting_utils.py:2: UserWarning: matplotlib.pyplot as already been imported, this call will have no effect.\n",
" matplotlib.use(\"Agg\")\n"
]
}
],
2018-05-03 22:16:32 +00:00
"source": [
"import matplotlib\n",
"matplotlib.use(\"Agg\")\n",
"import matplotlib.pylab as plt\n",
2018-11-27 15:45:09 +00:00
"%matplotlib inline\n",
2018-05-03 22:16:32 +00:00
"import IPython.display as ipd\n",
"\n",
2018-11-27 15:45:09 +00:00
"import sys\n",
"sys.path.append('waveglow/')\n",
2018-05-03 22:16:32 +00:00
"import numpy as np\n",
"import torch\n",
"\n",
"from hparams import create_hparams\n",
"from model import Tacotron2\n",
"from layers import TacotronSTFT\n",
"from audio_processing import griffin_lim\n",
"from train import load_model\n",
2018-11-27 15:45:09 +00:00
"from text import text_to_sequence\n"
2018-05-03 22:16:32 +00:00
]
},
{
"cell_type": "code",
2018-11-26 06:33:16 +00:00
"execution_count": 2,
2018-05-03 22:16:32 +00:00
"metadata": {},
"outputs": [],
"source": [
"def plot_data(data, figsize=(16, 4)):\n",
" fig, axes = plt.subplots(1, len(data), figsize=figsize)\n",
" for i in range(len(data)):\n",
" axes[i].imshow(data[i], aspect='auto', origin='bottom', \n",
" interpolation='none')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Setup hparams"
]
},
{
"cell_type": "code",
2018-11-27 16:04:04 +00:00
"execution_count": 3,
2018-05-03 22:16:32 +00:00
"metadata": {},
2018-11-27 16:04:04 +00:00
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO:tensorflow:Parsing command line hparams: distributed_run=False,mask_padding=False\n"
]
}
],
2018-05-03 22:16:32 +00:00
"source": [
"hparams = create_hparams(\"distributed_run=False,mask_padding=False\")\n",
"hparams.sampling_rate = 22050\n",
"hparams.filter_length = 1024\n",
"hparams.hop_length = 256\n",
"hparams.win_length = 1024"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Load model from checkpoint"
]
},
{
"cell_type": "code",
2018-11-27 16:04:04 +00:00
"execution_count": 4,
2018-05-03 22:16:32 +00:00
"metadata": {},
"outputs": [],
"source": [
2018-11-27 15:45:09 +00:00
"checkpoint_path = \"tacotron2_statedict\"\n",
2018-11-26 06:33:16 +00:00
"\n",
2018-05-03 22:16:32 +00:00
"model = load_model(hparams)\n",
2018-05-06 00:29:09 +00:00
"try:\n",
" model = model.module\n",
"except:\n",
2018-05-06 00:30:08 +00:00
" pass\n",
2018-05-06 00:23:11 +00:00
"model.load_state_dict({k.replace('module.',''):v for k,v in torch.load(checkpoint_path)['state_dict'].items()})\n",
2018-05-03 22:16:32 +00:00
"_ = model.eval()"
]
},
2018-11-26 06:33:16 +00:00
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Load WaveGlow for mel2audio synthesis"
]
},
{
"cell_type": "code",
2018-11-27 16:04:04 +00:00
"execution_count": 5,
2018-11-26 06:33:16 +00:00
"metadata": {},
2018-11-27 16:04:04 +00:00
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/opt/conda/lib/python3.6/site-packages/torch/serialization.py:425: SourceChangeWarning: source code of class 'glow_old.WaveGlow' has changed. you can retrieve the original source code by accessing the object's source attribute or set `torch.nn.Module.dump_patches = True` and use the patch tool to revert the changes.\n",
" warnings.warn(msg, SourceChangeWarning)\n",
"/opt/conda/lib/python3.6/site-packages/torch/serialization.py:425: SourceChangeWarning: source code of class 'glow_old.WN' has changed. you can retrieve the original source code by accessing the object's source attribute or set `torch.nn.Module.dump_patches = True` and use the patch tool to revert the changes.\n",
" warnings.warn(msg, SourceChangeWarning)\n"
]
}
],
2018-11-26 06:33:16 +00:00
"source": [
2018-11-27 15:45:09 +00:00
"waveglow_path = 'waveglow_old.pt'\n",
2018-11-26 06:33:16 +00:00
"waveglow = torch.load(waveglow_path)['model']"
]
},
2018-05-03 22:16:32 +00:00
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Prepare text input"
]
},
{
"cell_type": "code",
2018-11-27 16:04:04 +00:00
"execution_count": 6,
2018-05-03 22:16:32 +00:00
"metadata": {},
"outputs": [],
"source": [
2018-11-26 06:33:16 +00:00
"text = \"Waveglow is really awesome!\"\n",
2018-05-03 22:16:32 +00:00
"sequence = np.array(text_to_sequence(text, ['english_cleaners']))[None, :]\n",
"sequence = torch.autograd.Variable(\n",
" torch.from_numpy(sequence)).cuda().long()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Decode text input and plot results"
]
},
{
"cell_type": "code",
2018-11-27 16:04:04 +00:00
"execution_count": 7,
2018-05-03 22:16:32 +00:00
"metadata": {
"scrolled": true
},
2018-11-27 16:04:04 +00:00
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 1152x288 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
2018-05-03 22:16:32 +00:00
"source": [
"mel_outputs, mel_outputs_postnet, _, alignments = model.inference(sequence)\n",
"plot_data((mel_outputs.data.cpu().numpy()[0],\n",
" mel_outputs_postnet.data.cpu().numpy()[0],\n",
" alignments.data.cpu().numpy()[0].T))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
2018-11-26 06:33:16 +00:00
"#### Synthesize audio from spectrogram using WaveGlow"
2018-05-03 22:16:32 +00:00
]
},
{
"cell_type": "code",
2018-11-27 16:04:04 +00:00
"execution_count": 8,
2018-05-03 22:16:32 +00:00
"metadata": {},
2018-11-27 16:04:04 +00:00
"outputs": [
{
"data": {
"text/html": [
"\n",
" <audio controls=\"controls\" >\n",
" <source src=\"data:audio/wav;base64,UklGRiRaAQBXQVZFZm10IBAAAAABAAEAIlYAAESsAAACABAAZGF0YQBaAQATABEAFQAaAAwACwANAAYAAAADAPj/8v/u/97/5v/k/9n/0f/U/9f/0//L/9T/zv/L/8n/y//W/9j/1//j/+j/5f/k/+z/7v/5//7/CQAEAPr//P8AAAoAAgAAAAoACgD8//j/+P/6//7/9v8CAPf/7v/u/+//8f/t/+b/7P/i/9n/zP/L/9T/1P/K/8//z//H/8D/vv/H/8v/z//S/9j/0v/W/+D/6v/3//b/EQANAAwAFwAjACsALAAzADQAMgAnAB4AGgAbAB0AEgATAAcA+//1//n//v/8/wAABwAAAAMA/f8DAAoAEQAbACEALAAoACUAJwAjACoALAAtACUAIAAOAAsAEgAMAA4ADQAPAAYA+P8EAAAA+f/7/wUAAAAFAPz/BwAKAAQAEgAiACsAJwArAC0AMQAxADMAMAAmAB8ABwALAAQA9v/z//T/9//r/+P/7v/s/+7/7f/8//j/9P/u//P/9v/5//3/8//y/+7/5P/n/+f/4//d/+P/6f/a/83/1//a/93/5P/t/+r/4v/f/+L/1P/V/9X/4f/o/+D/2v/j/+3/8v8DAAcAFAAdABYAGAAnADYAMwBGAE8AUABLAEwAVgBSAE4ASgBMADsAIgAiACEADAAAABQADQD6/+3/5P/o/+X/3//j/+D/0v/O/9D/x//G/77/xP/F/7P/nv+f/6L/kv+K/5L/jv+O/5P/mf+j/5n/ov+v/7X/vf+7/8H/zv/a/+X/8f8BABQAFwApADQAPwBEAFcAXwBcAGMAbACHAIwAmAClALgAzQDMANEA1ADcAOYA7QDzAAEB+AD+AAYB/wAEAQkB/wD3AN8A2gDZAMcAtwCoAJEAfwB2AGUAWgA4ACYADQDn/83/kv94/1T/Iv/9/tD+p/5q/jj+C/7f/az9dv1R/Rr97fzB/KX8hfxl/FT8Rfw4/Cj8Ifwk/Cr8LvxB/Fj8bPyh/MX8/fxF/Y/93P0u/ob+2/41/5v/CgBxAN0AVAHAATQCowIQA5AD/QNyBPIEYAXQBUIGtgYdB4QH6QdLCJgI5QgiCV0JgwmUCZQJfwlVCSAJtAhOCNYHOgedBvYFLAVaBIUDqALBAdEA1P/s/vr9/vwd/DT7XvqM+cH4APhG96r2FvaW9Sb1wPRe9Cz0BvTo8+Tz8fMX9FP0q/Qn9aD1IvbI9nv3N/jt+Kv5dfpB+wP8xvx//TT+1/5v/wwAgQDpAEQBmgHtASYCPQJSAl0CUAJPAksCQQInAioCOgJQAokCxQI1A7MDVAQYBfAF3wbOB9sI6wkLCxAM9QzQDXcO8A5AD1oPQg/nDkQOgA2QDHQLIAqzCBwHhgXkA1kC0gBY/+79kfxr+176dfmz+B/4r/dd9yT3B/f99gz3Pvdu96T32/cj+HD4pPjh+CL5WfmX+df5B/o++nb6pfrr+iX7Vft7+6T72vsH/Cv8Tfxj/Gb8Yvxz/H78b/xT/Ej8Mvwc/Pv71/u4+5f7k/uN+4z7iPuO+6772fsH/ET8nfwM/Xf9+v2o/m7/NAAaATECWAOYBM0FJQeMCPMJWQvEDA8ORw9vEHoRbRIgE6cTABQBFMoTYhPFEukR0hB8DwUOVwyGCoIIhAaGBI4CpgDR/gv9Yfvi+az4rffQ9h72t/WD9Wb1gPW19QP2a/bS9kn3p/fq9zb4cPi1+PH4Dvk5+UX5Tvlv+YP5pfnH+eD5Ivpe+pD63vom+4D7vvvx+yX8Nfw3/CX8/vu9+3D7AvuP+in6o/kl+bv4T/jf95n3efdm94X3rfca+Lv4Xvk4+mH7yPw0/sj/kAFhAzkFOwciCRAL5wyeDkYQvhECEykUGRW/FTwWXRZ2FiEWlhXPFNATnhI+EakPAg47DEMKVQhjBmQEYQJxAJr+4/w6+7b5dfhb91v2f/XQ9Ez06fOl85LzoPO98/XzQvSg9AL1ifUY9sT2cvcb+Of4xvmX+lP7Kvzo/H39Df6E/s7+Bv8l/yj/D//L/m3+Fv6q/Sz9svxB/PH7nftf+zr7Fvv6+t/6yfqv+m36MfrV+Vv50/hU+Mz3X/f99sj2/vZs91f4lvkX+9z84v41AeEDhwYlCdMLgw4eEZkToxWTFzAZZRpZG+cb/xusG/0a2hlGGGEWLxS5ERsPVAx+CdcGBwRUAcf+dPxv+qf4GffO9cr09fNI8/7ytvJ78nbyaPJ48onyoPLB8vbyFfNx89vzSPS99Ej1Fvb59gv4Kflv+sX7Iv11/qf/vwCQARQCgwKaAlcCxwH6APr/5P7w/en87vvf+vn5X/nd+IH4Ofjo96H3UPft9nf2yvUN9T/0pPP18o/yNPJs8kbzb/Q49kr4xPoG/tQB4QVgCmIOvxIZFxgb5R7kIV4kaCaeJysoDyjWJkUl2SIqIPgcMRkdFdcQhAw/CBoEEgB0/Nr4lvXu8pXwvu467QjsZ+sZ6zTroesR7J3sWu0u7gPvx+9R8ODwafHr8ZLyMvMK9AH1NPbB92X5QvtL/Uv/QQEWA7kELwYqB8IH2Qd9B5oGMAVnA2YBNP/6/ML6zfgn9831yvQc9O7zBvRl9N30d/XW9Uf2cfZf9iX2kvUQ9Y/0CfTl85H0Z/V/9835oPyBAOYEJgqfDxgVIBpSH0ckqCgXLIQu/i/JMJAw9i5pLLcouyRUIIYbThYdEbkL6wZjAi3+TfrU9oTzcvCs7QnrwOiT5qDk8eK64b3gJ+Dv3yvg++Bl4kbkb+a+6GvrVu6T8fD0DfgD+8T9JgCQArUEegYACCEJMQoGC6EL2QvJC2EL3gr4CawI7gabBCAChv/X/B/6Zfe69IryrfA+70Tul+2B7Yvt7e1q7sfuOu9/753vwu8S8JfwSvGI8ezyF/Wr+HH9RQKsB7sNtRR0HA4kKCpuMFg1BDpvPaA+2T00PIg5RDagMbUrMCWDHioY6RENDPcFHgCU+nz1rfBG7MbnoeOp3yvcSdnw1pjU+tIe0kjS1dMF1ovY2dur30nku+nz7vTztvhE/aYBrAW0CAELtgw8DjcPAhAaEOwPmg8zDwEPbg4bDYULswl6ByMFxQGz/Q359/SK8MPspujf5NrhfeCA30Xg6OCC4nXkbOZY6TPrSe4U7xPx+fDK8xr0sfdQ96v7WgCKCBASmBm5Ie4o0TSUPJJH50rdT7xQp1KET+JL9ER+PcA2oS7/JZIckhNiCagD5/sC+LjxDuza5C3f6dma1R3RWss+xr/Be7+9vR2+x76FwhTINs8Q1/7eX+ff8KD6oAOIC7QQ2xSfF7cZIRs8G0EaPRnKF4wWYRXhE/QSgBIYEpQRoQ91DBsI7AJm/TD3QvAz6dvhHdva1fPRzs8sz//PxtKU1gLbR9+m40znrusJ7jnwA/Hc8Vfy5/Jj8yr2Rv8eCE0WLyAOK1M2d0S/URNdumJKZItkxmIEX+xWcU7RQvE6JTIYKXoe2RRMCx0GOQB9+frxeOh033HXys+ox2TAIrdCsQOsHauzqymueLI5uSDDKs6Z2CHi2+td9VsAuQjmDt0StxXdF9kaChxEHV4eFB91ICciyyJpI8kikSBEHrAZiRNtC1IBr/fQ7pbmvt4R1/7Qscwjy23Ltsw3z4vSttUj2tvcR+Hp49bl6Oal6Fnppe0F8EHxk/Se90L/YwcpG+AleThvQ+xIxVHSXkJk0WjGaAdebV56WUlSPkdAQLs41TnRNbksSx+3FYkK9QFc9qPm9Ni+yRG9ZbEQqsalAqRBoXSj2KbPrsC2/Lz1w5rNrNfU4InmQutO83r8CweTDSwTnhhGH1wm+CqdLsMwIjJRMH0tBSggI78dQRiPEYIKBQSF+83zquw158nhPN1T1jzRo82+y8/KwMuszY7QM9TA1lnazdvF4Ufljux07sbxNPIs9MD2IvyrAPQIlh5iKgRAYktYT9paaGbWaRluHGmEYHxd+FhOTw9HEUGlPG46JTX+KO0YbQ2F/2v1pueF2c/J7rshsU6pEqZEpLa
" Your browser does not support the audio element.\n",
" </audio>\n",
" "
],
"text/plain": [
"<IPython.lib.display.Audio object>"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
2018-05-03 22:16:32 +00:00
"source": [
2018-11-26 06:33:16 +00:00
"with torch.no_grad():\n",
" audio = waveglow.infer(mel_outputs_postnet, sigma=0.666)\n",
"ipd.Audio(audio[0].data.cpu().numpy(), rate=hparams.sampling_rate)"
2018-05-03 22:16:32 +00:00
]
}
],
"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",
2018-11-26 06:33:16 +00:00
"version": "3.6.6"
2018-05-03 22:16:32 +00:00
}
},
"nbformat": 4,
"nbformat_minor": 2
}