Learn R Programming

emuR - Main package of the EMU Speech Database Management System

Out of funding

Unfortunately, the EMU-SDMS is currently out of funding.

We at the IPS will do what we can to fix bugs, security issues or necessary adjustments to new versions of R; but we cannot currently work on new features or performance improvements.

We would be very glad if funding in academia allowed for more technical staff to maintain software used by the research community.

Introduction

The emuR package provides the next iteration of the EMU Speech Database Management System (EMU-SDMS) with database management, data extraction, data preparation and data visualization facilities. It also contains a server that is intended to host databases in the emuDB format (see vignette('emuDB_intro')) to the EMU-webApp (http://ips-lmu.github.io/EMU-webApp/). The querying of annotations is performed using EMU's own EQL2 (EMU Query Language Version 2).

This package is part of the next iteration of the EMU Speech Database Management System which aims to be as close to an all-in-one solution for generating, manipulating, querying, analyzing and managing speech databases as possible. For an overview of the system please see http://ips-lmu.github.io/EMU.html and/or https://doi.org/10.1016/j.csl.2017.01.002 .

Installation

install.packages("emuR")

As this also installs all of the dependencies (incl. the wrassp package) this is the only installation step necessary to install the EMU-SDMS on your system. The only other requirement of the EMU-SDMS is a modern web browser (Chrome (recommended!) / Firefox / ...) which most people should already have on their systems.

Quick start

For more information see the The EMU-SDMS Manual

For Developers / Beta-Testers

Installation (two alternative methods)

  • either download & extract the package from GitHub. Then install it with the following command:
install.packages("path/to/emuR", repos = NULL, type="source")
  • or install the latest development version from GitHub (preferred method):
library(devtools)
install_github("IPS-LMU/emuR", build_vignettes = TRUE)

Copy Link

Version

Install

install.packages('emuR')

Monthly Downloads

513

Version

2.5.2

License

GPL (>= 2)

Issues

Pull Requests

Stars

Forks

Maintainer

Markus Jochim

Last Published

September 2nd, 2025

Functions in emuR (2.5.2)

SetGetlevelCanvasesOrder

Set / Get level canvases order of emuDB
AddListRemovePerspective

Add / List / Remove perspective to / of / from emuDB
AddListRenameRemoveAttributeDefinitions

Add / List / Rename / Remove attribute definition to / of / from emuDB
AddListRemoveSsffTrackDefinition

Add / List / Remove ssffTrackDefinition to / from / of emuDB
AddListRemoveLinkDefinition

Add / List / Remove linkDefinition to / of / from emuDB
AddListRemoveAttrDefLabelGroup

Add / List / Remove labelGroup to / of / from attributeDefinition of emuDB
AddListRemoveLabelGroup

Add / List / Remove global labelGroup to / of / from emuDB
SetGetSignalCanvasesOrder

Set / Get signalCanvasesOrder of / to / from emuDB
AddListRemoveLevelDefinitions

Add / List / Remove level definition to / of / from emuDB
SetGetRemoveLegalLabels

Set / Get / Remove legal labels of attributeDefinition of emuDB
Slope.test

Slope Test
as.trackdata

Create an Emu trackdata object
as.matrix.emusegs

as.matrix.emusegs
as.spectral

Function to convert an object into an object of class 'spectral'.
add_signalViaMatlab

add_signalViaMatlab
bayes.dist

bayes dist
bark

Convert Hertz to Bark and Bark to Hertz
autobuild_linkFromTimes

Autobuild links between two levels using their time information
buildtrack

Build trackdata objects from the output of by()
cbind.trackdata

A method of the generic function cbind for objects of class 'trackdata'
bind.trackdata

bind trackdata
by.trackdata

A method of the generic function by for objects of class 'trackdata'
bayes.lab

bayes lab
bridge

Three-columned matrix
convert_BPFCollection

Convert a Bas Partitur File Collection (audio and BAS Partitur files) to an emuDB
convert_TextGridCollection

Convert a TextGridCollection (e.g. .wav & .TextGrid files) to emuDB
add_files

Add files to emuDB
cen.sub

Subfunction of cen
bind.default

data binding
closest

closest
coutts.epg

EPG-compressed trackdata from the segment list coutts
bind

class method bind data
coutts

Segment list of words, read speech, female speaker of Australian English from database epgcoutts
create_emuRdemoData

Create demo data for the emuR package
create_emuDB

Create empty emuDB
convert_legacyEmuDB

Convert legacy EMU database to the emuDB format
classify

classify
cr

Plot digital sinuoids.
coutts2.sam

Trackdata of acoustic waveforms from the segment list coutts2
classplot

Produce a classification plot from discriminant or SVM modelling
convert_txtCollection

Converts a collection of audio files and plain text transcriptions into an emuDB
bayesplot

bayesplot
bayesian.metric

bayesian metric
coutts2.l

Vector of word label from the segment list coutts2
coutts2.epg

EPG-compressed trackdata from the segment list coutts2
convert_wideToLong

convert tracks of a tibble trackdata object to the long form
coutts.rms

rms Data to coutts segment list
dct

Discrete Cosine Transformation
dcut

Function to extract a vector or matrix from EMU-Trackdata at a single time point of to create another EMU-trackdata object between two times.
coutts.l

Vector of word label from the segment list coutts
create_itemsInLevel

Create new items programmatically
create_emuRtrackdata

create emuRtrackdata object
dbnorm

Function to dB-normalise spectral objects
dbtopower

Function for inter-converting between decibels and a linear scale
ddiff

Differentiation of tracks
demo.all

Emu segment list
dapply

apply a function to each part of a trackdata object
create_spectrogram_image_as_raster

Create spectrogram image as raster
crplot

Function to plot a digital sinusoid and the circle from which it is derived.
demo.all.f0

F0 track data for segment list demo.vowels
delete_itemsInLevel

Delete items programmatically
dplot

A function to plot one or more columns of EMU-trackdata as a function of time (DEPRECATED see below)
dip.l

Vector of phoneme labels from the segment list dip
coutts2

Segment list, same as coutts but at a slower speech rate
dip.fdat

Trackdata of formants from the segment list dip
demo.all.rms

Emu track data for a rms track for segment list demo.all
demo.all.fm

Formant track data for segment list demo.vowels
demo.vowels

Emu segment List
create_links

create links between items
dur

duration
dsmooth

Smooth the data in a trackdata object.
dtime

time signal times
demo.vowels.fm

Formant track data for segment list demo.vowels
coutts.sam

Trackdata of acoustic waveforms from the segment list coutts
dur.trackdata

Duration of trackdata elements
dip.spkr

Vector of speaker labels from the segment list dip
dextract.lab

Extract a subset of data from a trackdata object
engassim.l

Vector of phonetic labels from the segment list engassim: nK = nk,ng , sK = sk,sg
engassim.epg

EPG-compressed trackdata from the segment list engassim
dextract

Extract a subset of data from a trackdata object
duplicate_level

Duplicate level
dur.emusegs

Duration of segments (NOTE: does not work for new default resultType = "tibble" of query())
distance

distance
ellipse

Calculate ellipse coordinates
dimnames.trackdata

Dimnames of trackdata object
epgcog

Electropalatographic centre of gravity
emusegs.type

segment list type
epggs

Plot a grey-scale image of palatographic data.
e.dft

Spectral vector of a single E vowel produced by a male speaker of Standard North German.
demo.vowels.f0

F0 track data for segment list demo.vowels
export_seglistToTxtCollection

Exports a segment list to txt collection
dim.trackdata

A method of the generic function dim for objects of class 'trackdata'
emuR-package

emuR - Main Package of the EMU Speech Database Management System
engassim.w

Vector of word labels from the segment list engassim.
epgai

Electropalatographic contact indices
engassim

Segment list of a sequence of syllable final n or N preceding k or g , isolated words single speaker, Australian English female from database epgassim.
fapply

Function that applies a function to an EMU spectral object
export_TextGridCollection

Export annotations of emuDB to TextGrid collection
emusegs.database

emusegs database
get.trackkeywrd

get trackkeywrd
euclidean

Find the inter-euclidean distance for a data matrix
fric.dft

Spectral trackdata object from the segment list fric.
dip

Segment list of diphthongs, two speakers one male, one female , Standard North German, read speech from database kielread
get.time.element

Get data for a given time
emusegs.query

emusegs query
frames

frames
emuRsegs

emuR segment list
isol.fdat

Trackdata of formants from the segment list isol
epgplot

Plot palatographic data
emuRtrackdata

emuR track data object
gerst.sub

gerst sub
eplot

Plot ellipses for two-dimensional data (DEPRECATED see below)
export_BPFCollection

Exports an emuDB into a BAS Partitur File (BPF) Collection
fric

Segment list of word-medial s or z one male speaker of Standard North German, read speech from database kielread.
is.seglist

is seglist
epgsum

Sum contacts in palatograms.
is.spectral

Function to test whether the object is of class "spectral"
expand_labels

Label each data sample
lob.sub

lob sub
modify.seglist

Modify one of the components of an Emu segment list
frames.time

Find the time and position of a data element.
freqtoint

Function to find the column number corresponding to frequencies of a spectral object
linear.av

linear av
import_mediaFiles

Import media files to emuDB
make.emuRsegs

Make emuDB segment list
makelab

Write out ESPS-style label files
mu.legend

make a EMU legend
mahal.dist

Calculate mahalanobis distances
matscan

Read matrix data from a file
isol.l

Vector of vowel phoneme labels from the segment list isol
get_trackdata

Get trackdata from loaded emuDB
linear

Perform linear time normalisation on trackdata.
load_emuDB

Load emuDB
locus

Calculate locus equations for two-dimensional data
nearey.sub

nearey sub
mahal

Classify using Mahalanobis distance
isol

Segment list of vowels in a d d context isolated word speech, one male speaker of Australian English from database isolated.
muclass

Find common elements in vectors
moments

Function to calculate statistical moments
label

Get labels / utterances from segment list
mahalanobis.metric

mahalanobis metric
list_bundles

List bundles of emuDB
rename_bundles

Rename bundles in emuDB
mu.linetype.get

mu linetype get
polhom.l

Vector of phonetic labels from the segment list polhom
is.trackdata

Test whether an object is an Emu trackdata object
make.seglist

Make an Emu segment list from the various components
read_bundleList

read bundleList
resample_annots

Resample annotations (_annot.json) files of emuDB
norm

Normalise speech data
plot.spectral

Plot spectra from EMU spectral objects
mel.default

mel default
fric.l

Vector of labels from the segment list fric
fric.w

Vector of word labels from the segment list fric.
perform

Performance (hit rate) of a confusion matrix
plafit

Calculate the coefficients of a parabola
rad

Function to convert between Hertz and Radians
runBASwebservice_chunker

Creates a chunk segmentation using the webservice Chunker.
list_files

List files of emuDB
normalize_length

Normalize length of segments contained in a data.frame like object returned by get_trackdata
print.emusegs

print emusegs
rbind.trackdata

A method of the generic function rbind for objects of class trackdata
polygonplot

polygonplot
label_convert

convert label
runBASwebservice_maus

Runs MAUS webservice to create a phonetic segmentation
randomise.segs

Randomise or Reverse items in a segment list
rescale.gerst

rescale gerst
print.trackdata

print trackdata
mel

Convert Hz to the mel scale
outliers

outliers
palate

Obtain a three-dimensional palatographic array
polhom

Segment list of four Polish homorganic fricatives from database epgpolish.
runBASwebservice_g2pForPronunciation

Creates canonical pronunciation attributes for a tier of tokenized orthographical words.
[.spectral

Expand spectral
polhom.epg

EPG-compressed trackdata from the segment list polhom
label_num

num label
read.emusegs

Create an Emu segment list from a file
replace_itemLabels

Replace item labels
rename_emuDB

Rename emuDB
list_sessions

List sessions of emuDB
runBASwebservice_all

Runs several BAS webservices, starting from an orthographic transcription
summary.emuDBhandle

Print summary of loaded EMU database (emuDB).
query

Query emuDB
runBASwebservice_pho2sylCanonical

Adds syllabified word labels to a word level that already contains canonical pronunciations.
runBASwebservice_minni

Creates a rough phonetic segmentation by running the phoneme decoder webservice MINNI.
list_sampleRates

List sample rates of media and annotation (_annot.json) files
runBASwebservice_pho2sylSegmental

Creates a syllable segmentation on the basis of a phonetic segmentation.
summary.trackdata

summary trackdata
rescale.nearey

rescale nearey
radians

Converts degrees to radians
rescale.lob

rescale lob
plot.trackdata

Produces time-series plots from trackdata
runBASwebservice_g2pForTokenization

Tokenizes an orthographic transcription.
trackfreq

function to find the frequencies of a spectral object
shift

Function to shift the elements of a vector.
tracktimes

Get the track times from EMU trackdata objects
sort.emuRsegs

Sort emuRsegs segment list by session, bundle and sample_start
sortmatrix

Sort matrix by label
start.emusegs

Start and end times for EMU segment lists and trackdata objects
mu.colour

Function for specifying color, linetype, and line-widths in EMU plotting functions.
print.emuRsegs

Print emuRsegs segment list
track.gradinfo.sub

track gradinfo sub
vowlax.dft.5

Spectral matrix centred at the temporal midpoint of the vowels from the segment list vowlax.
vowlax.df

Data frame of various parameters and labels from the segment list vowlax
track.gradinfo

Calculate gradient summary information for trackdata
splitstring

Split a string into words.
[.trackdata

Expand trackdata
train

Train a Gaussian Model
print.emuRtrackdata

Print emuRtrackdata object
vowlax.rms

Trackdata of RMS energy from the segment list vowlax
vowlax.fdat

Trackdata of formants from the segment list vowlax
[.EPG

expand EPG
mu.colour.get

get a EMU color
wordlax.l

Vector of word labels from segment list wordlax
write.emusegs

Write an Emu segment list to a file
vowlax.fund

Trackdata of fundamental frequency from the segment list vowlax
vowlax.right

Vector of labels following the vowels from the segment list vowlax
vowlax.fdat.5

Matrix of formant data extracted at the temporal midpoint from the segment list vowlax.
vowlax.fund.5

Vector of fundamental frequency extracted at the temporal midpoint from the segment list vowlax.
vowlax.spkr

Vector of speaker labels from the segment list vowlax.
update_itemsInLevel

Update items programmatically
write_bundleList

write bundleList
requery_seq

Requery sequential context of segment list in an emuDB
summary.emusegs

summary emusegs
vowlax

Segment list of four lax vowels, read speech, one male and one female speaker of Standard North German from database kielread.
vowlax.rms.5

Vector of RMS energy values at the temporal midpoint extracted at the temporal midpoint from the segment list vowlax
vowlax.word

Vector of word labels from the segment list vowlax.
vowlax.l

Vector of phoneme labels from the segment list vowlax
vowlax.left

Vector of labels preceding the vowels from the segment list vowlax
requery_hier

Requery hierarchical context of a segment list in an emuDB
serve

Serve EMU database to EMU-webApp
trapply

A method of the generic function by for objects of class 'trackdata'
trackdata

Track data object
segmentlist

Segment list