task_categories:audio-classification size_categories:10K<n<100K language:yue license:mit speech cantonese yue syllable pronunciation region:us
---
license: mit
task_categories:
- audio-classification
language:
- yue
tags:
- speech
- cantonese
- yue
- syllable
- pronunciation
pretty_name: Cantone
size_categories:
- 10K<n<100K
---

# Cantone

A dataset of 34,489 recordings of Cantonese syllables by 10 speakers.
Those syllables are generated through the Cantonese speech synthesis engines of Amazon, Apple, Google, and Microsoft.

All recordings are stored as WAV files with the following format
  * Channel: mono
  * Sample rate: 16 kHz
  * Bits per sample: 16

Here's a breakdown of the number of recordings under each speaker:
| Company | Speaker | # Syllables |
| --------|-------- | -------- |
| Amazon  | Hiujin  | 3,885 |
| Apple   | Aasing  | 2,977 |
| Apple   | Sinji   | 2,977 |
| Google  | A       | 3,653 |
| Google  | B       | 3,653 |
| Google  | C       | 3,653 |
| Google  | D       | 3,653 |
| Microsoft | Hiugaai | 3,349 |
| Microsoft | Hiumaan | 3,349 |
| Microsoft | Wanlung | 3,349 |

## Dataset Construction

1. Gathering

We first identified 3,904 common Cantonese syllables based on words.hk's syllable recordings.
The, we ask the speech synthesis APIs to pronounce each of the syllables.
The queries use SSML's phoneme attribute to precisely specify the syllable we want. Here's a sample SSML query that fetches the syllable jyut6:
```xml
<speak><phoneme alphabet='jyutping' ph='jyut6'></phoneme></speak>
```

Apple voices are gathered using jyutping text directly and a native Cantonese ASR system is used to filter out unsupported syllables.

2. Preprocessing

* All audios are converted to 16kHz WAV files
* Peak normalize all audios to -20 dBFS
* Clip silence at the beginning and end (sound below -50 dBFS are deemed silence)

3. Verification

Occassionally, some syllables are not synthesized correctly.
* Apple voices usually renders tone 5 syllables as tone 2: we remove all tone 5 syllables from apple voices 
* Microsoft voices prepends consonants like ng, g, and b in front of isolate vowel syllables like aa: we remove all vowel syllables from microsoft voices

## License
MIT
