junzew / cpsc503-project-assignment

Coding assignment for CPSC 503 project

Repository from Github https://github.comjunzew/cpsc503-project-assignmentRepository from Github https://github.comjunzew/cpsc503-project-assignment

CPSC 503 Speech Synthesis Assignment

Set up

Clone this repository with git clone.

Install python3 and pip3.

Install the required packages by running:

pip3 install -r requirements.txt

Install ffmpeg

Unzip two databases of audio files

  • 1000words.zip: 1000 basic English words from Longman dictionary
  • phonemes.zip: pre-recorded phonemes, indexed with phone_mapping.py

Overview

You will implement a simplified version of concatenative synthesizer using two strategies:

  • Word selection: select available words directly from database and concatenate them
  • Phoneme selection: convert words to phonemes using the CMU Pronunciation Dictionary (cmudict package in python) and then generate speech from the phonemes. If a word is not present in the cmudict, use g2p package to obtain its phonemic representation.

Usage

python3 synthesizer.py -h
usage: synthesizer.py [-h] (-w | -p)

optional arguments:
  -h, --help  show this help message and exit
  -w          word synthesis
  -p          phoneme synthesis

Specific Task

  • Implement the two functions word_synthesize and phone_synthesize in the synthesizer.py by completing the TODOs
  • Make sure your code is easy to read and well-commented

Useful resources

References

Link to lecture recording

About

Coding assignment for CPSC 503 project


Languages

Language:Python 100.0%