Skip to content

GuitarsAI/AudioCodingTutorials

Repository files navigation

Audio Coding Video Tutorials and Python Notebooks

Prof. Dr. -Ing. Gerald Schuller
Jupyter Notebooks and Videos: Renato Profeta

Applied Media Systems Group
Technische Universität Ilmenau

Content

01 Basics of Multirate Signal Processing:
NBViewerBinderGoogle ColabYoutube

  • Sampling
    • Sampling a Discrete Time Signal
    • Downsampling
    • Upsampling
    • Real-Time Python Example: Sampling
  • Effects in the z-Domain
  • Modulation
    • Real-Time Python Example: Modulating a Speech Signal
  • Mid-rise and Mid-tread quantization
    • Real-Time Python Example: Quantization

02 Filter Banks I :
NBViewerBinderGoogle ColabYoutube

  • Filter Banks
  • Downsampling
  • Upsampling
  • Filter Bank Structure
  • Perfect Reconstruction
  • Analysis Filter Bank
  • Synthesis Filter Bank
  • Polyphase
  • Transforms as Filter Banks
  • Real-Time Python Examples

03 Filter Banks II :
NBViewerBinderGoogle ColabYoutube

  • Modulated Filter Banks - Extending the DCT
  • Modulated Filter Banks
    • Frequency Shifts
    • The Window Function
  • Fast Implementation: Analysis Polyphase Matrix
  • The MDCT Filter Bank
  • Graphical Interpretation of Analysis Matrix 𝐹𝑎
  • MDCT, Perfect Reconstruction
  • MDCT Filter Banks, Sine Window
    • Sine-Window Frequency Response
  • MDCT, Advantages
  • MDCT Filter Banks, Impulse Responses
  • MDCT Filter Banks, Frequency Responses
  • MDCT: Python Examples
    • MDCT Fast Implementation
  • Extending the Length of the MDCT
    • Zero-Delay Matrix
    • Maximum-Delay Matrix
    • Design Method
    • Real-Time Example

03b Filter Banks III :
NBViewerBinderGoogle ColabYoutube

  • Block Switching
  • Wavelets, QMF (Quadradutre Mirror Filter) Filter Banks
    • QMF (Quadrature Mirror Filter)
  • CQMF: Conjugate QMF
  • Pseudo-QMF (PQMF)
    • PQMF used in MPEG4

04 Psychoacoustics :
NBViewerBinderGoogle ColabYoutube

  • Block Diagram of a Perceptual Audio Encoder
  • Structure of the Human Ear
    • Cochlea
    • Organ of Corti
  • Preprocessing of Sound in the Peripheral System
  • Information Processing in the Auditory System
  • Sound Perception
    • Frequency and Level Range of Human Hearing
    • Threshold in Quiet or the Absolute Threshold
    • Hearing Threshold and Age
    • Loudness
    • Critical Bands
      • Frequency Grouping in Human Hearing
      • Excursus - Critical Bands and Loudness
    • Bark Scale
    • Masking
      • Masking of Pure Tones by Noise -Broad-Band Noise
      • Masking of Pure Tones by Noise -Narrow-Band Noise
      • Masking of Pure Tones by Low-Pass or High-Pass Noise
      • Masking of Pure Tones by Pure Tone
      • Masking of Pure Tone by Complex Tones
      • Tonality
      • Masking - Spreading Function
      • Calculating the Masking Threshold
      • In-Band Making
      • Masking Neighboring Bands
      • Temporal Masking Effects

05 Psychoacoustics Models :
NBViewerBinderGoogle ColabYoutube

  • Spreading Function: Python Example
  • Masking Neighboring Bands Non-Linear Superposition
  • Bark Scale Approximations:
    • Zwicker&Terhard
    • Traunmueller
    • Schröder
  • Bark Scale Approximations: Comparisons
  • Bark Scale Mapping
  • Mapping from Bark scale back to Linear
  • Hearing Threshold in Quiet
  • The Complete Psycho-Acoustic Model
  • Physical Models of Hearing

06 PQMF Filter Bank, MPEG-1 / MPEG-2 BC Audio :
NBViewerBinderGoogle ColabYoutube

  • The Basic Paradigm of T/F Domain Audio Coding
  • MPEG Audio Standardization Philosophy
  • MPEG 1/2
    • MPEG-1 Audio
      • The main building blocks
      • MPEG Audio - Short Description of the Layers
      • Block Diagram MPEG-1 Layer 1
      • Block diagram Layer-3
  • Example for the Time/Frequency Resolution for the 2-Stage Layer III Coder
  • MPEG - Layer-1, -2 and -3 Compression: Header
  • The Pseudo-Quadrature-Mirror Filter Bank (PQMF)
    • PQMF Definition
    • PQMF Reformulation
    • PQMF Design
  • Python Example Optimization
  • PQMF Optimization
    • Optimization Function
    • Python Example
    • Unity Condition
  • PQMF Polyphase Implementation
  • Hybrid Filter Bank & Aliasing
    • Problem of Aliasing in a Cascaded Filter Bank
    • Aliasing Reduction Structure (MP3)
  • MPEG Audio - Layer-3: Bitstream
  • MPEG-1 Audio Decoder
    • MPEG Audio – General Decoder Structure
    • MPEG - Audio Decoder Process (1) Layer-3 Decoder flow chart
    • MPEG - Audio Decoder Process Layer-3 Decoder Diagramm
  • Annex: Abbreviations and Companies

YouTube Playlist

Youtube

Requirements

Please check the following files at the 'binder' folder:

  • environment.yml
  • postBuild

Note

Examples requiring a microphone will not work on remote environments such as Binder and Google Colab.

About

Audio Coding Notebooks and Tutorials

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published