Synopsis
This thesis deals with the basics and requirements of the AES67 standard.
It also explains the basics of Linux driver development and an ALSA driver.
Based on this, a virtual ALSA driver for linux has been developed.
AES67
AES67 is a audio over ip (aoip) standard for professional applications like broadcast.
Keyfeatures of AES67
- uncompressed high quality audio
- interoperable with a lot of manufactures
- Builds on proven protocols (RTP, PTP..)
- Low latency < 10ms
- All devices are synchronized with a common master clock
ALSA audio driver
The virtual AES67 ALSA audio driver can receive and send RTP-audio packets in the local network.
Features of the driver
- Native virtual ALSA device driver without additional user space daemon
- support for 44,1 kHz and 48 kHz sample rate
- support for 16 Bit and 24 Bit sample depth
- definable packet size
- configurable IP-Settings
- configuration via Sysfs
Architecture of the driver
The driver consists of 4 parts:
- The general driver architecture that is necessary to load the driver etc.
- The sys file system to configure the settings (IP address, packet size)
- The ALSA architecture
- An asynchronous network interface for sending and receiving the RTP packets in the network
Source Code and more information
The sources including a installation guid can be found on Github: https://github.com/neufst/ALSA-AES67-Streaming
The entire thesis is written in German and can be viewed here: Implementierung eines IP-Audio-Streamingverfahrens (AoIP) auf eingebetteten Systemen
Author: Stefan Neufeldt Email: stefan.neufeldt@gmail.com