Using GStreamer for Seamless Off-loading Audio Processing
summary
GStreamer-based plugin implements transparent offload of complete audio subgraphs to an ARC audio DSP using an MSF streaming framework on the DSP and a remoteproc/MCI-like IPC layer on the host. Measurements show 10x power efficiency of the DSP vs ARM+neon and IPC costs of about 1% overhead of the MHz budget. Implementation uses shared-memory zero-copy FIFOs, supports multiple DSPs, maps GStreamer state transitions to MSF module creation, and runs successfully on FPGA and a virtual-prototype simulator.
AI-written summary · about
chapters (20)
- 0:00Intro
- 1:03Design Ware IP Portfolio
- 4:27Example Use Case (simple) Playback From File
- 9:46AS211SFX Audio Processor Audio Optimized RISC DSP
- 11:29Framework for Creating Streaming Media Applications
- 14:38Audio DSP Software Made Easy Transparently off-load audio processing to DSP
- 16:59What Solution Components Do We Need?
- 19:33DSP Streaming Framework Candidates
- 22:05IPC Candidates
- 24:16Integration Example GStreamer Broadcast watch & record
- 25:30GStreamer Concepts (3/3)
- 30:00GStreamer DSP Off-loading Overview
- 32:17Deep Tunneled & DSP Core Crossing
- 32:48Threading
- 34:31Mapping States
- 36:37GStreamer Deep Tunneling
- 37:51Miscellaneous Topics
- 39:23Virtual & FPGA Prototypes
- 41:39Software Performance
- 42:55References
related talks
37mBuilding a Zero-Copy DSP Offload Framework in Linux Using RPM...
43mHome Multimedia and Automation Systems with GStreamer
24mGStreamer for Tiny Devices
27mEnabling Performance Portability of GNU Radio on Heterogeneous Systems
18mThe Next Step in Low Energy Edge DSP and AI
17mAccelerating Designs for SoC FPGA Using Simplified High-Level Synthesis Flows
27mGNU Radio in a Direct-RF World
16mRISC-V DSP (P) Extension Proposal
