awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
RustAudio avatar

RustAudio/cpal

0
View on GitHub↗
3,551 Stars·477 Forks·Rust·apache-2.0·3 Aufrufe

Cpal

cpal is a low-level Rust audio hardware abstraction layer and cross-platform API. It serves as a unified interface for managing audio input and output streams across Windows, macOS, and Linux hardware, acting as a device driver wrapper to discover audio hosts and configure hardware devices.

The project functions as a real-time audio streamer, utilizing a high-priority callback system to stream audio samples to hardware devices with minimal latency.

The library covers audio hardware integration, including the discovery and configuration of sample rates and channel counts. It supports audio input capture and cross-platform playback, providing tools for digital signal processing workflows through audio sample format conversion.

Features

  • Cross-Platform Audio APIs - Provides a unified cross-platform API for managing audio input and output streams across Windows, macOS, and Linux.
  • Audio Hardware Management - Provides a low-level abstraction layer for configuring and managing audio device settings across different operating systems.
  • Audio Hardware Interfaces - Provides a low-level framework for managing audio hardware, sound cards, and driver interfaces.
  • Audio Input Capture - Enables recording raw audio data from microphones or other input hardware.
  • Sample-Based Buffer Callbacks - Implements a requested-buffer callback mechanism to feed raw PCM samples to hardware backends.
  • Real-Time Audio Threading - Requests elevated execution priority for audio threads to minimize playback latency and glitches.
  • Callback-Driven Streaming - Utilizes a high-priority callback system to stream audio samples to hardware with minimal latency.
  • Cross-Platform Audio Engines - Implements a consistent cross-platform engine for streaming and playing audio across different OS hardware.
  • Raw Audio Sample Streaming - Opens a non-blocking flow of raw PCM float samples to audio backends via high-priority callbacks.
  • Real-Time Audio Processing - Provides a high-priority callback system for low-latency audio stream processing suitable for professional software and synthesizers.
  • Hardware Device Discovery - Queries system APIs to enumerate available audio hardware devices and their supported configurations.
  • Audio Stream Property Controls - Allows defining sample rates and channel counts to ensure compatibility with hardware before streaming.
  • Hardware Abstraction Layers - Acts as a low-level hardware abstraction layer providing a consistent API for interacting with diverse audio drivers.
  • Audio Device Enumerators - Provides utilities for discovering and listing available audio hardware endpoints for system-wide routing.
  • Hardware Configurations - Implements tools to discover audio hosts and configure hardware sample rates and channel counts.
  • Hardware Backend Abstractions - Provides a unified trait-based interface to target different operating system sound servers.
  • Audio Playback - Offers controls to start, pause, or stop the flow of audio data to hardware.
  • Audio Signal Processing Workflows - Manages the workflow of converting audio sample formats and data streams to prepare sound for playback.
  • Sample Format Conversion - Provides tools for changing sample width and channel counts of audio segments to ensure hardware compatibility.
  • Non-blocking IO Architectures - Handles audio playback and capture in separate threads to prevent blocking the main application loop.
  • Audio And Music - Low-level cross-platform audio IO.
  • Media & Communication - Low-level cross-platform audio I/O library.

Star-Verlauf

Star-Verlauf für rustaudio/cpalStar-Verlauf für rustaudio/cpal

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Cpal

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Cpal.
  • mackron/miniaudioAvatar von mackron

    mackron/miniaudio

    6,905Auf GitHub ansehen↗

    miniaudio is a single-file C audio library used for audio playback, capture, and hardware interfacing across multiple operating systems. It functions as an audio hardware abstraction layer, an audio processing engine, an audio synthesis engine, and a codec and resampler. The project implements a node-graph based system for routing digital audio signals, mixing, and 3D spatialization. It also includes a programmatic generator for noise patterns and basic waveforms used for sound creation and signal testing. The library covers digital signal processing, including audio format conversion and sa

    C
    Auf GitHub ansehen↗6,905
  • google/oboeAvatar von google

    google/oboe

    4,069Auf GitHub ansehen↗

    Oboe is a native C++ library designed for building high-performance, low-latency audio applications on Android. It serves as a unified wrapper and native API for managing audio streams, sample rates, and hardware routing across different Android operating system versions. The library provides a consistent interface by automatically selecting the most efficient audio backend at runtime, switching between AAudio and OpenSL ES to ensure the lowest possible latency. It enables exclusive-mode hardware access to bypass the system mixer and utilizes a high-priority asynchronous pull model for audio

    C++
    Auf GitHub ansehen↗4,069
  • juce-framework/juceAvatar von juce-framework

    juce-framework/JUCE

    8,579Auf GitHub ansehen↗

    JUCE is a comprehensive C++ audio framework and digital signal processing library used to build cross-platform audio applications, audio plug-ins, and high-performance user interfaces. It serves as a development kit for creating audio processors compatible with industry-standard plugin formats for digital audio workstations, as well as a tool for MIDI and Open Sound Control communication between musical hardware and software. The framework is distinguished by its ability to maintain a single codebase for native desktop and mobile applications across multiple operating systems. It provides a f

    C++aaxauaudio
    Auf GitHub ansehen↗8,579
  • createjs/soundjsAvatar von CreateJS

    CreateJS/SoundJS

    4,569Auf GitHub ansehen↗

    SoundJS is a JavaScript audio library and asset manager designed to load and play audio across different browsers using a consistent API. It serves as a wrapper that abstracts the Web Audio API and HTML5 Audio to provide a cross-platform playback system. The project ensures consistent sound across devices by supporting Web Audio, HTML5, and mobile plugins. It includes specific mechanisms for mobile environments, such as unlocking audio playback on iOS via user-initiated touch events and managing playback continuity during screen locks. The library covers asset management through the registra

    JavaScript
    Auf GitHub ansehen↗4,569
Alle 30 Alternativen zu Cpal anzeigen→

Häufig gestellte Fragen

Was macht rustaudio/cpal?

cpal is a low-level Rust audio hardware abstraction layer and cross-platform API. It serves as a unified interface for managing audio input and output streams across Windows, macOS, and Linux hardware, acting as a device driver wrapper to discover audio hosts and configure hardware devices.

Was sind die Hauptfunktionen von rustaudio/cpal?

Die Hauptfunktionen von rustaudio/cpal sind: Cross-Platform Audio APIs, Audio Hardware Management, Audio Hardware Interfaces, Audio Input Capture, Sample-Based Buffer Callbacks, Real-Time Audio Threading, Callback-Driven Streaming, Cross-Platform Audio Engines.

Welche Open-Source-Alternativen gibt es zu rustaudio/cpal?

Open-Source-Alternativen zu rustaudio/cpal sind unter anderem: mackron/miniaudio — miniaudio is a single-file C audio library used for audio playback, capture, and hardware interfacing across multiple… google/oboe — Oboe is a native C++ library designed for building high-performance, low-latency audio applications on Android. It… juce-framework/juce — JUCE is a comprehensive C++ audio framework and digital signal processing library used to build cross-platform audio… createjs/soundjs — SoundJS is a JavaScript audio library and asset manager designed to load and play audio across different browsers… naudio/naudio — NAudio is a .NET audio library that provides playback, recording, format conversion, and signal processing… librespot-org/librespot — librespot is an open-source audio streaming client and library used to implement custom music players that…