Skip to main content

A convenience python wrapper for the TIMIT database.

Project description

TIMIT

The TIMIT database, in brief, contains audio recordings of sentences spoken by a set of people. It also includes word and phoneme transcriptions, along with their exact positions, as ranges, within the audio files.

As such, it is an interesting target for ML: we are given high-grade audio recordings as well as real-time phoneme and word transcriptions (or guesses at them, anyway).

The actual TIMIT database is NOT included, and is not free. Get it here: https://catalog.ldc.upenn.edu/LDC93S1. This library merely adds convenience, parsing, sampling, drawing, etc.

alt text

timit_utils

The code herein can lazily load, parse, and expose the TIMIT database of spoken audio, word and phoneme transcriptions. The layout of the TIMIT file system looks like this:

alt text

This library models the data with several classes:

  • Corpus (such as '../TIMIT', contains two SubCorpuses: train and test)
  • SubCorpus (such as 'train'|'test', contains several Regions)
  • Region (such as 'DR1', contains several Persons)
  • Person (such as 'Name:CJF0,Female')
  • Sentence (such as 'SA1', contains audio, word, and phoneme transcriptions as numpy arrays)

All the above give many ways to index, iterate, parse, search, and expose the data as pandas Dataframes.

  • various audio sampling, padding routines, mel filterbank frequency extractions, and a quick display system

Installation

pip install timit_utils

timit_utils requires numpy, pandas, matplotlib, scipy, python_speech_features, and SoundFile.

Example usage (i.e. in jupyter)

%matplotlib inline
import timit_utils as tu
import timit_utils.audio_utils as au
import timit_utils.drawing_utils as du

corpus = tu.Corpus('../TIMIT')
sentence = corpus.train.sentences_by_phone_df('aa').sentence[0]
du.DrawVerticalPanels([du.AudioPanel(sentence.raw_audio, show_x_axis=True),
                       du.WordsPanel(sentence.words_df, sentence.raw_audio.shape[0], show_x_axis=True),
                       du.PhonesPanel(sentence.phones_df, sentence.raw_audio.shape[0])
                      ])

Full usage here: https://github.com/colinator/timit_utils/blob/master/timit_utils_demonst.ipynb

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

timit_utils-0.9.0.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

timit_utils-0.9.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file timit_utils-0.9.0.tar.gz.

File metadata

  • Download URL: timit_utils-0.9.0.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.0

File hashes

Hashes for timit_utils-0.9.0.tar.gz
Algorithm Hash digest
SHA256 081a37ee60ffe6a057b34825e0f062b557e195eea4b54af8cba300e445bd7768
MD5 9e5c043e3b23d6f369ad17925f472c29
BLAKE2b-256 774ab0d0e204aa6771f6e0e2370484902d9751c81d58451ea97480eee9628c94

See more details on using hashes here.

File details

Details for the file timit_utils-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: timit_utils-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.0

File hashes

Hashes for timit_utils-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc3e95efa50a6920e644cbbc730298c131e3d76d32c60530b47d8ca59dd4ef36
MD5 814fabd4f6e3db7ab399ceb0e65a51cc
BLAKE2b-256 22320c98f7f44386947b9e4080f54f09a7380c390e0b8337ab0b87050d49c43a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page