Git Product home page Git Product logo

magphase's Introduction

MagPhase Vocoder

Speech analysis/synthesis system for TTS and related applications.

This software is based on the method described in the paper:

F. Espic, C. Valentini-Botinhao, and S. King, “Direct Modelling of Magnitude and Phase Spectra for Statistical Parametric Speech Synthesis,” in Proc. Interspeech, Stockholm, Sweden, August, 2017.

@ Author: Felipe Espic

More information at http://www.felipeespic.com/magphase/

I. New in Version 2.0 (April 2018)

  • Constant frame-rate support.
  • Improved sound quality.
  • Two types of post-filter available.
  • Selectable number of coefficients for phase features (real and imag).
  • Selectable number of coefficients for the magnitude feature (mag).

II. Description

This is a speech waveform analysis/synthesis system used in Statistical Parametric Speech Synthesis (SPSS).

The analysis module extracts four feature streams describing magnitude spectra, phase spectra, and F0. These features can be used to train a regression model (e.g., DNN, LSTM, HMM. etc.) so then, predicted values can be generated. The synthesis module takes these features at the input to generate the final synthesised waveform.

Key points:

  • Avoids estimation steps as far as possible (no aperiodicities, spectral envelope, or harmonics estimation, etc.)
  • Robust extraction and modelling of phase spectra (Conventional vocoders just create artificial phase at the output).
  • No phase unwrapping required.
  • Uses fast operations during synthesis (e.g., FFT, PSOLA).
  • Remarkably reduces typical "buzziness" and "phasiness".
  • Many other applications and improvements not explored yet.

III. License:

See the LICENCE file for details.

IV. Requirements:

  • OS: Linux (MacOSx coming soon)
  • Python 2.7
  • Python packages: numpy, scipy, soundfile, matplotlib

V. Install:

  1. Install Pyhton 2.7 and the packages required using the package manager of your distro or by using the command pip (recomended). e.g.,
pip install numpy scipy soundfile matplotlib
  1. Download MagPhase: git clone https://github.com/CSTR-Edinburgh/magphase.git

  2. Download and compile SPTK and REAPER by:

cd magphase/tools
./download_and_compile_tools.sh

This will compile and configure SPTK and REAPER automatically for you...and that's it!

VI. Usage:

Just go to /demos, read the instructions inside the demo scripts, which are very discriptive. They should run out of the box by running python <demo_script>.

We recomend that you play firstly with demo_copy_synthesis_lossless.py , and then demo_copy_synthesis_low_dim.py They both perform analysis/synthesis routines.

Then, you can modify the demo scripts to suit your needs.

NOTE: Just remember to run the scripts from their locations.

VII. Using MagPhase with the Merlin toolkit:

We provide two demos distributed with the Merlin's official distribution. These show examples of the of Merlin with MagPhase integration:

VIII. Colaboration:

We need help to improve this software. You can colaborate by:

  • Building TTS voices using Merlin and MagPhase and compare with other vocoders, e.g., WORLD. Then, please tell us your results. We have tested MagPhase only with a few voices and it's needed to cover a wider range. We have recently fixed some bugs that have came out thanks to people reporting their results using new data.

  • Implementing native variable frame rate support in Merlin. MagPhase works in a variable frame rate fashion (pitch synchronous).

magphase's People

Contributors

felipeespic avatar oliverwatts avatar ronanki avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.