0.1 Before the course starts

 

Refresh basic R concepts R basics

  • Object types in R
  • Subsetting
  • Style matters
  • R documentation

 

 

1 Day 1 (video)


1.1 Readings

1.1.1 Intro to basic bioacoustics concepts

1.2 Videos

 

1.3 Optional readings

1.3.1 Reproducibility

 

Introduction Introduction

  • How animal acoustic signals look like?
  • Analytical workflow in bioacoustics research
  • Advantages of programming
  • Course outline

 

What is sound? Sound

  • Create a Rstudio project for the course

  • Download this folder into the course project directory

  • Sound as a time series
  • Sound as a digital object
  • Acoustic data in R
  • ‘wave’ object structure
  • ‘wave’ object manipulations
  • additional formats

 

1.4 Homework

  1. Use the function query_xc() to check the availability of recordings for any bird species (do not download at this step) (check this brief tutorial on how to do that)

  2. Subset the data frame returned by the function to get a subset of subspecies/populations or recordings from a specific country and for certain vocalization type (using base R subsetting tools)

  3. Download the associated recordings using query_xc() again

  4. Explore the recordings with any spectrogram creating GUI program


 

2 Day 2 (video)


2.1 Videos

2.1.1 Raven tutorials

Building spectrograms Building spectrograms

  • Fourier transform
  • Building a spectrogram
  • Characteristics and limitations
  • Spectrograms in R

Package seewave seewave

  • Explore, modify and measure ‘wave’ objects
  • Spectrograms and oscillograms
  • Filtering and re-sampling
  • Acoustic measurements

 

2.2 Homework

  1. Use Raven Pro to annotate some of the signals found in the xeno-canto recordings you downloaded previously

 

3 Day 3 (video)


3.1 Readings

 

Annotation software annotations

  • Raven / audacity
  • Open and explore recordings
  • Modify-optimize visualization parameters
  • Annotate signals

Quantifying acoustic signal structure Quantify structure

  • Spectro-temporal measurements (spectro_analysis())
  • Parameter description
  • Harmonic content
  • Cepstral coefficients (mfcc_stats())
  • Cross-correlation (cross_correlation())
  • Dynamic time warping (freq_DTW())
  • Signal-to-noise ratio (sig2noise())
  • Inflections (inflections())
  • Parameters at other levels (song_analysis())

 

3.2 Homework

  1. Double-check annotations using warbleR’s dedicated functions
  • Create single spectrograms of each annotation
  • Create full spectrograms of all sound files along with annotations
  • Create catalogs

 

  1. Double-check annotations using Raven (export data from R to Raven)

 

4 Day 4 (video)


4.1 Readings

4.1.1

 

Quality control in recordings and annotation Quality checks

  • Check and modify sound file format (check_wavs(), info_wavs(), duration_wavs(), mp32wav() y fix_wavs())
  • Tuning spectrogram parameters (tweak_spectro())
  • Double-checking selection tables (check_sels(), spectrograms(), full_spectrograms() & catalog())
  • Re-adjusting selections (tailor_sels())

Characterizing hierarchical levels in acoustic signals

  • Creating ‘song’ spectrograms (full_spectrograms(), spectrograms())
  • ‘Song’ parameters (song_analysis())

 

4.2 Homework

  1. Select best quality signals for analysis
  2. Measure acoustic parameters
  3. Summarize variation at higher hierachical levels (if necessary)

 

5 Day 5 (video)


5.1 Readings

 

Choosing the right method for quantifying structure Comparing methods

  • Compare different methods for quantifying structure (compare_methods())

Quantifying acoustic spaces Acoustic space

  • Intro to PhenotypeSpace
  • Quanitfying space size
  • Comparing sub-spaces