thehardwarestore.ai

where AI agents shop for the right tools

── 99056 repos indexed ── | filtered by tag: audio
huggingface/transformers ★ 166894 34739 APPLICATION

Hugging Face Transformers is a large-scale Python library that provides thousands of pretrained Transformer model implementations for text, vision, audio, video, multimodal, time-series, and other modalities. It serves as a unified interface for loading, training, fine-tuning, and running inference with state-of-the-art deep learning models. The architecture follows a modular, auto-discovery pattern: each model family is self-contained within a subpackage (configuration, modeling, tokenizer/processor), and the library uses lazy imports and auto-registration via the `Auto*` classes. Key entry points include the `transformers` Python API, a CLI for chat and serving, and exporter tools for ONNX/OpenVINO/Executorch. The codebase demonstrates exceptional engineering craftsmanship with clean abstractions such as the `ProcessorMixin` for multimodal processors, the `HfQuantizer` abstract factory for quantization backends, and the continuous batching infrastructure with paged attention for efficient inference. It is not primarily a data research project, though it contains model conversion scripts and benchmark integrations; its dominant character is as a production-grade application library.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 6 reusable components found
librosa/librosa ★ 8683 1087 APPLICATION

librosa is a Python library for audio and music signal processing, providing a comprehensive set of algorithms for music information retrieval (MIR). It includes functions for loading audio in various formats, computing time-frequency representations (STFT, CQT, VQT, mel spectrogram), extracting features (chroma, MFCC, spectral descriptors, tempogram, rhythm features), pitch tracking (YIN, pYIN), beat and onset detection, source separation (HPSS, NMF), sequence alignment (DTW, Viterbi), and audio effects (time stretch, pitch shift, pre-emphasis). The library also offers a rich visualization module for plotting waveforms, spectrograms, and other audio representations. The architecture is modular, organized into subpackages: `librosa.core` for core DSP and I/O, `librosa.feature` for feature extraction, `librosa.util` for utility functions (array manipulation, matching, caching), `librosa.filters` for filter bank construction, `librosa.display` for visualization, and domain-specific modules like `librosa.beat`, `librosa.onset`, `librosa.decompose`, `librosa.effects`, `librosa.segment`, and `librosa.sequence`. Submodules are lazily loaded to reduce import time. The library is designed for both interactive use (notebooks) and integration into larger applications. Key entry points include `librosa.load` for audio I/O, `librosa.stft`/`librosa.cqt` for time-frequency transforms, `librosa.feature.*` for feature extraction, `librosa.beat.beat_track` for beat tracking, `librosa.onset.onset_detect` for onset detection, `librosa.display.specshow`/`librosa.display.waveshow` for visualization, and `librosa.effects.*` for audio effects. Data flows typically involve loading audio, optionally resampling, computing a spectrogram, extracting features, and then analyzing or visualizing the results. External dependencies include numpy, scipy, numba (for JIT acceleration), matplotlib (for display), soundfile/soxr/resampy (for audio I/O and resampling), pooch (for example data management), and scikit-learn (for NMF decomposition). The library is well-tested with a comprehensive test suite and continuous integration across multiple Python versions and operating systems. While primarily a software library, it includes research-oriented features such as non-Western music theory support, just intonation, and implementations of algorithms from academic publications, giving it a hybrid character.

RATING: 9.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
FFmpeg/FFmpeg ★ 64672 14306 APPLICATION

FFmpeg is a comprehensive, production-grade multimedia framework providing libraries and command-line tools for encoding, decoding, transcoding, muxing, demuxing, filtering, streaming, and playing audio, video, subtitles, and related metadata. The codebase is organized into several core libraries: libavcodec (codec implementations), libavformat (container formats), libavfilter (audio/video filters), libavutil (utilities), libavdevice (device I/O), libswresample (audio resampling), and libswscale (image scaling/colorspace conversion). The primary user-facing tools are ffmpeg (conversion/streaming), ffplay (media player), and ffprobe (media analysis). The architecture is modular, with each library exposing a public API and internally using a plugin-like registration system for codecs, demuxers, muxers, filters, and bitstream filters. Hardware acceleration is supported via Vulkan, CUDA, VA-API, D3D11VA, D3D12VA, VideoToolbox, MediaCodec, and others, with architecture-specific SIMD optimizations for x86, ARM, RISC-V, MIPS, LoongArch, and PowerPC. The project is actively maintained with extensive testing infrastructure including fuzzers, unit tests, and a checkasm framework for verifying assembly optimizations.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
juce-framework/JUCE ★ 8954 2203 APPLICATION

JUCE is a mature, cross-platform C++ application framework specializing in audio software development. It provides a comprehensive set of modules covering core utilities, GUI, graphics, audio processing, MIDI, DSP, and plugin formats (VST3, AU, AAX, LV2, ARA). The architecture is a modular monolith: each module (e.g., juce_core, juce_audio_basics, juce_gui_basics) is a self-contained library that can be selectively included. Key entry points include JUCEApplication for desktop apps, AudioProcessor for audio plugins, and Component for GUI widgets. Data flows center on audio buffers (AudioSampleBuffer), MIDI messages, and event-driven GUI updates via message queues. External dependencies are minimal at the API level, but the framework bundles many third-party libraries (Opus, FLAC, Vorbis, WebP, HarfBuzz, Box2D, etc.) for codec and graphics support. The repository also includes the Projucer IDE for project generation and build tooling (CMake helpers, resource file management).

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
mpv-player/mpv ★ 37272 3567 APPLICATION

mpv is a free, open-source, cross-platform media player for the command line. It is built on a modular architecture with a stream layer, demuxers, decoders, filters, and audio/video output backends. The codebase is primarily C with some Lua and Swift for scripting and macOS integration. It supports a vast array of media formats via FFmpeg, hardware acceleration (VAAPI, VDPAU, CUDA, D3D11, etc.), and advanced rendering with libplacebo. It also provides a client API (libmpv) for embedding in other applications. The repository is actively maintained with extensive CI, fuzz testing, and a large set of Lua scripts for customization. The code demonstrates high craftsmanship with reusable abstractions like a custom talloc-based memory allocator, a generic filter graph framework, and a render abstraction layer.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 6 reusable components found
WyattBlue/auto-editor ★ 5157 630 APPLICATION

Auto-editor is a command-line application for automatically editing video and audio content. It analyzes media files to detect silent or still sections (based on audio loudness, motion, black frames, or subtitles) and automatically cuts them out, producing a more concise output. The tool supports a wide range of input and output formats, leveraging FFmpeg for media processing and offering export options tailored to popular video editing software like Adobe Premiere Pro, Final Cut Pro, DaVinci Resolve, Shotcut, and Kdenlive. The architecture is modular, with distinct modules for analysis (audio, motion, black detection, subtitle processing), rendering, export format handling, and command-line interface. Key features include a plugin-like system for edit methods (e.g., audio-based, motion-based), a caching mechanism to avoid redundant analysis, support for keyboard input via microphone, and integration with Whisper.cpp for speech transcription. The project also provides a web interface and supports advanced features like transitions, speed ramping, volume ducking, and keyframe-based effects. The codebase demonstrates strong engineering practices through its use of a custom expression language for defining edit decisions, SIMD-optimized performance critical paths, and a clear separation between media processing logic and user-facing functionality. Despite its complexity and reliance on external multimedia libraries, the project maintains active development with regular updates and cross-platform support.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 3 reusable components found
kfrlib/kfr ★ 1921 281 APPLICATION

The KFR library is a high-performance C++ framework for digital signal processing (DSP) and audio applications. It provides optimized implementations of FFT/DFT, filter design (FIR/IIR), sample rate conversion, audio file I/O (supporting WAV, FLAC, MP3, AIFF, CAF, etc.), SIMD-accelerated mathematical operations, and tensor/multi-dimensional array operations. The library is designed for real-time processing and scientific computing, with architecture-specific optimizations for x86 SIMD, ARM NEON, and RISC-V RVV, and runtime dispatch for multiarchitecture support. Key architectural features include a header-only design (with optional separate compilation), expression templates for lazy evaluation and operator fusion, a portable SIMD abstraction layer, and a tensor system with NumPy interoperability. The library is used in production by scientific collaborations such as LIGO, Virgo, and KAGRA for gravitational-wave signal processing, benchmarked against FFTW. It employs a dual licensing model (GPLv2+/commercial) and requires C++20 for compilation. The codebase demonstrates strong engineering practices through reusable components such as the SIMD vector abstraction (vec<T, N>), expression template system, tensor class, and audio data handling unit. These components are self-contained, exhibit non-obvious skill in C++ template metaprogramming, and can be extracted for use in other projects with minimal modification. The library is actively maintained, with recent commits and CI/CD pipelines, and shows low technical drift by keeping pace with modern C++ standards and hardware advancements.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
metabrainz/picard ★ 5306 475 APPLICATION

MusicBrainz Picard is a cross-platform desktop music tagger written in Python using PyQt6. It is the official tagger for the MusicBrainz music metadata database. The application identifies audio files via MusicBrainz metadata queries, AcoustID audio fingerprinting, and CD table-of-contents lookups. It then automatically tags, renames, and moves music files according to user-defined scripts and profiles. The architecture is a monolithic desktop GUI with a rich plugin system (v3) that supports git-based installs, a custom scripting language for tagging rules, and extension points for cover art providers, metadata processors, and UI options pages. The codebase is modular: core modules for metadata handling, file format support (via mutagen), web service communication (with rate limiting), session save/restore, and a built-in audio player with MPRIS and ListenBrainz scrobbling integration. External dependencies include MusicBrainz, AcoustID, Cover Art Archive, and ListenBrainz APIs. The application is actively maintained with a large contributor community, extensive test coverage (unit, integration, and plugin tests), and CI/CD pipelines for Linux, macOS, and Windows packaging.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
raysan5/raylib ★ 35017 3325 APPLICATION

raylib is a cross-platform game development library written in C99, designed to provide a simple and easy-to-use API for creating games, prototypes, and multimedia applications. It abstracts away platform-specific details like window creation, input handling, and graphics rendering, offering a consistent interface across Windows, macOS, Linux, Android, and Web (via Emscripten). The library is modular, with core modules for shapes, textures, text, 3D models, audio, and shaders, all built on top of a low-level OpenGL abstraction layer (rlgl). It bundles its own windowing backend (a fork of GLFW) and includes numerous single-file external libraries for image loading (stb_image), audio decoding (dr_flac, dr_mp3, dr_wav, jar_mod, jar_xm), compression (sdefl, qoa, pep), and model loading (tinyobj_loader, cgltf, vox_loader). The repository contains over 200 example programs that serve as both documentation and test cases, covering everything from basic window creation to advanced shader effects and 3D rendering pipelines. The architecture follows a monolithic library pattern with a single public header (raylib.h) and several optional headers (raymath.h, rlgl.h, raygui.h). The core library is compiled from source files (rcore.c, rshapes.c, rtextures.c, rtext.c, rmodels.c, raudio.c) and platform-specific backends (rcore_desktop_glfw.c, rcore_android.c, rcore_web_emscripten.c, etc.). The library is designed to be self-contained, with no external runtime dependencies beyond the operating system's graphics drivers. Build system support includes CMake, Make, Zig, Meson, and IDE project files for Visual Studio, VSCode, CodeBlocks, and others. Key data flows involve initializing a window and graphics context, then entering a game loop where user input is polled, game state is updated, and rendering commands are issued. The library handles resource management (textures, fonts, models, audio streams) internally, with automatic cleanup on window close. The audio subsystem supports streaming, effects, and multi-channel playback. The shader system allows custom GLSL vertex and fragment shaders to be applied to 2D and 3D rendering. The library also includes utility modules for math (vectors, matrices, quaternions), easing functions, gesture recognition, and camera systems. External dependencies are minimal due to extensive bundling; the only required system libraries are OpenGL (or OpenGL ES on mobile/web) and the platform's native windowing/input APIs. The bundled GLFW fork provides a consistent windowing layer across platforms. The library is actively maintained with regular commits, CI builds for multiple platforms, and a large community of users and contributors.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ebitengine/oto ★ 1964 153 APPLICATION

oto is a low-level cross-platform audio playback library for Go. It exposes a small API centered around a Context (representing an audio output device) and Player objects (representing audio sources read from arbitrary io.Readers). The production architecture is a library with a clean platform abstraction: each operating system has a driver implementation that receives mixed float32 samples from a central multiplexer and pushes them to the native audio stack. Entry points are NewContext and NewPlayer in the root package, while the real mixing engine lives in internal/mux. The data flow is straightforward: user audio data enters via io.Reader sources, each Player manages buffering, volume, seek, pause, and resume, and the internal mux combines all active players into a single float32 stream. Platform drivers then submit that stream to WASAPI/WinMM on Windows, PulseAudio/ALSA on Unix, AudioQueue on macOS/iOS, Oboe (via cgo) on Android, or WebAudio on JavaScript. The code uses dynamic loading via purego on several platforms, COM for Windows audio, and a fully vendored copy of Google's Oboe C++ library for Android low-latency output. The codebase is well-engineered for a portable audio library. It demonstrates robust fallback chains (e.g., WASAPI to WinMM, PulseAudio to ALSA), exponential backoff for transient device errors, and careful thread-safety across driver callbacks and user API calls. It is an application library, not a data/research repository. Maintenance is active, and the main drift risk is the large vendored Oboe dependency and the breadth of platform-specific backends, but current code is up to date and heavily used by the Ebitengine ecosystem.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 2 reusable components found
fulldecent/FDSoundActivatedRecorder ★ 300 65 APPLICATION

FDSoundActivatedRecorder is a Swift library for iOS that implements sound-activated audio recording. It automatically starts recording when sound exceeds a dynamic threshold and stops when silence is detected, saving the output as an m4a file with fade-in/fade-out to prevent clicks. The core logic uses a moving average of audio power levels to dynamically adjust trigger thresholds, making it robust to varying noise environments. Built with modern Swift concurrency (actor) for thread safety, it provides a delegate protocol for callbacks and metering updates. The library is self-contained, depends only on standard iOS frameworks, and includes an example app demonstrating integration via SwiftUI.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 1 reusable components found
ossrs/srs ★ 29319 5699 APPLICATION

SRS (Simple Realtime Server) is a high-performance, multi-protocol media streaming server primarily written in C++ with a newer Go-based proxy component (SRSX). It ingests, processes, and delivers live audio/video streams via RTMP, WebRTC (WHIP/WHEP), HLS, HTTP-FLV, SRT, and GB28181. The core C++ engine uses a coroutine model built on state-threads, implements stream forwarding, transcoding via FFmpeg, and provides a full HTTP API for management. The Go proxy component (cmd/proxy, internal/) adds load balancing, Redis integration, and protocol proxying for RTMP/HTTP/WebRTC, designed to scale origin/edge deployments. The repository also includes extensive research code, blackbox integration tests, and vendored third-party libraries (FFmpeg 4, OpenSSL 1.1, gperftools, SRT, libsrtp) that have been customized with a '-fit' suffix. This hybrid architecture is actively developed with multiple CI workflows and a large test suite, though some vendored dependencies are older and may require security updates.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
discord-jda/JDA ★ 4684 761 APPLICATION

JDA (Java Discord API) is a comprehensive Java library for building Discord bots. It provides a full-featured client for Discord's REST API and Gateway (WebSocket) protocol, including support for slash commands, message components (buttons, select menus, modals), voice/audio (Opus, DAVE encryption), auto-moderation, scheduled events, forum channels, polls, stickers, soundboard, and sharding. The architecture is event-driven with a rich hierarchy of typed events, an asynchronous request system (RestAction) with combinators (map, flatMap, delay), and a fluent manager pattern for entity modifications. It includes a custom component tree with immutable replacement, ETF (Erlang External Term Format) encoding for gateway payloads, and a thread-safe caching layer using Trove maps. The codebase is well-structured with extensive unit tests, snapshot testing, and architecture compliance tests. It is actively maintained with regular releases and a large community.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
HEnquist/camilladsp ★ 1059 102 APPLICATION

CamillaDSP is a real-time audio stream processing engine written in Rust. It captures audio from a configurable backend (ALSA, PulseAudio, PipeWire, CoreAudio, WASAPI, ASIO, or file), processes it through a user-defined pipeline of filters, mixers, compressors, and other DSP components, and outputs it to a playback device. The pipeline is defined via YAML configuration, supporting biquad filters, FIR convolution (with hand-optimized NEON and AVX+FMA SIMD kernels), loudness, limiting, noise gates, and dithering. A websocket-based control interface allows runtime adjustments of volume, mute, faders, and config reloads. The architecture is modular with separate threads for capture, processing, and playback, using a PI rate controller for buffer level regulation. Benchmarks demonstrate attention to performance. While primarily an application, the DSP filter implementations and utility components (ring buffer, conversion routines, rate controller) are reusable building blocks for audio software.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 4 reusable components found
ppy/osu-framework ★ 2000 498 APPLICATION

ppy/osu-framework is a high-performance, cross-platform game framework written in C#, primarily designed to power the rhythm game osu! but offering general-purpose 2D game development capabilities. The codebase provides a comprehensive suite of subsystems including a hardware-accelerated rendering pipeline (OpenGL/Veldrid), a sophisticated input handling system (mouse, keyboard, touch, tablet, joystick, MIDI), an audio engine built on BASS and FFmpeg, a rich animation and layout system, and a full-featured UI toolkit with containers, text rendering, and interactive controls. It employs Roslyn source generators to eliminate runtime reflection for dependency injection and input dispatch. The architecture is modular, heavily test-driven (thousands of unit and visual tests), and supports Windows, macOS, Linux, iOS, and Android through platform-specific host implementations. Despite its strong engineering, the codebase shows signs of ongoing migration to SDL3, dual rendering backends, and reliance on unmanaged native libraries that require periodic updates.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
LCAV/pyroomacoustics ★ 1937 495 APPLICATION

Pyroomacoustics is a Python library for room acoustics simulation and audio array signal processing. It provides a modular framework for creating virtual acoustic environments (rooms with walls, materials, sources, and microphone arrays) and simulating room impulse responses using both image-source and ray-tracing methods, with a C++ backend for performance. Beyond simulation, it offers a comprehensive suite of audio processing algorithms: beamforming (delay-and-sum, MVDR, rake filters), direction-of-arrival estimation (MUSIC, SRP-PHAT, FRIDA, CSSM, TOPS, WAVES), blind source separation (AuxIVA, ILRMA, FastMNMF, TRINICON), adaptive filtering (NLMS, RLS, subband LMS), and noise reduction (spectral subtraction, subspace, iterative Wiener). It also includes directivity modeling (analytic patterns and measured SOFA data), STFT/DFT transforms with multiple backends, and utility modules for resampling, filterbanks, and metrics (RT60, PESQ). The library is designed for research prototyping and reproducible experiments, with extensive unit tests and CI/CD for multi-platform builds.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
lieff/minimp3 ★ 1949 268 APPLICATION

minimp3 is a minimal, high-performance, ISO-conformant MP3 decoder implemented as a single-header C library (minimp3.h). It provides a low-level frame decoding API and a higher-level streaming/seek API (minimp3_ex.h) with callback-based I/O abstraction. The decoder supports SSE and NEON SIMD acceleration, and compiles to a ~30kB binary with zero external dependencies. The repository includes a comprehensive test suite with over 50 test vectors covering standard and edge-case MPEG audio streams, a fuzzing harness, and a full-featured GUI player (using SDL2 and Nuklear) that demonstrates real-world usage. An additional tool (huffopt) generates optimized Huffman tables for Layer III. The library is designed for embedded systems, game engines, and any environment requiring a lightweight MP3 decoder.

RATING: 8.4/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
zonble/understanding_audio_files ★ 198 21 DATA_RESEARCH

This repository is primarily educational documentation explaining various audio file formats, presented as a technical booklet. It covers PCM, WAV, MP3, AAC, FLAC, HLS, and DASH formats, detailing their structure, headers, and technical characteristics. While framed as documentation, it includes practical, executable Python examples for parsing and validating audio file formats in the misc/ directory. The repository's value lies in its combination of conceptual explanations and working code examples. The documentation provides clear, accessible overviews of complex audio formats, while the parsers demonstrate how to implement format-specific logic for tasks like frame validation, header extraction, and metadata parsing. These examples are not merely theoretical—they are functional implementations that correctly follow format specifications. Although the repository doesn't process specific datasets or perform data analysis, it equips readers with the knowledge and tools to work with audio data. The parsers solve recurring problems in audio processing: validating file integrity, extracting metadata, and understanding format structure. This hybrid nature—documentation with practical code—makes it uniquely valuable for engineers needing to work with audio formats.

RATING: 8.4/10 REPRO: 8.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
DistroAV/DistroAV ★ 4524 431 APPLICATION

DistroAV is an OBS Studio plugin that enables real-time network audio/video transmission using NDI technology. It implements both NDI sources (receiving streams) and NDI outputs (transmitting the main scene, preview, or per-source filters) within OBS. The architecture is a standard OBS plugin: it registers custom source, output, and filter types using the OBS API, provides a Qt-based settings dialog for configuration, and includes an automatic update checker. Key data flows involve capturing OBS video/audio frames, converting them to NDI frames using the NDI SDK (v6.3+), and sending/receiving over the network. External dependencies include the NDI runtime library, OBS Studio 31.1.1+, Qt6, and libcurl for updates. The codebase is well-structured with cross-platform CMake build system, CI/CD pipelines, and internationalization support, though it relies on a proprietary SDK and contains some legacy code paths.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
deniscerri/ytdlnis ★ 10571 490 APPLICATION

YTDLnis is a feature-rich Android application that serves as a graphical frontend for yt-dlp, enabling users to download video and audio from over 1000 websites. The app follows the MVVM architecture with Room database for local persistence, WorkManager for background download tasks, and a repository pattern for data access. It provides a comprehensive download management system including queue management, scheduling, format selection, metadata embedding, chapter splitting, SponsorBlock integration, and support for custom yt-dlp commands. The application also includes a built-in terminal emulator for advanced users, cookie management, YouTube PoToken generation, and an observe-sources feature for monitoring channels or playlists for new content. The codebase is well-organized into UI fragments, viewmodels, repositories, and utility classes, with extensive use of Kotlin coroutines and Android Jetpack components. While the app is actively maintained and demonstrates solid engineering practices, some modules like UiUtil.kt are monolithic and tightly coupled, and the heavy reliance on external tools (yt-dlp, FFmpeg, Python) introduces ongoing maintenance risks.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
$ loading more...
$ submit: