30 open-source projects similar to createjs/soundjs, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best SoundJS alternative.
SoundManager2 is a JavaScript audio API and cross-browser audio engine designed to provide consistent playback across different web browsers and devices. It functions as an HTML5 audio wrapper and playback manager that abstracts native APIs into a unified interface, ensuring compatibility through an automatic switching mechanism between available audio backends and codecs. The library distinguishes itself with an RTMP audio streamer for network communication with media servers and a built-in ID3 metadata parser for extracting track titles, artist information, and genre tags from audio files.
Hilo is an HTML5 game engine for building 2D games that run across browsers and devices. It renders graphics through Canvas, DOM, or WebGL backends, automatically selecting the best option for the target environment. The engine provides a complete game development solution with sprite, skeletal, and particle animation, along with a texture atlas system for efficient image loading and rendering. The framework distinguishes itself through its integration of the DragonBones skeletal animation engine, which drives bone-based character movement without frame-by-frame sprites, and its Chipmunk phys
Urho3D is a cross-platform 3D game engine written in C++. It uses a component-based scene graph to compose game objects from nodes and attached components, separating transforms from behaviors for modular design. The engine integrates AngelScript and Lua scripting for game logic, uses the Bullet library for physics simulation, and renders scenes with OpenGL or Direct3D through forward, deferred, or light pre-pass pipelines with customizable render passes and shadow mapping. The engine distinguishes itself with a built-in visual scene and UI editor for composing 3D worlds and interface layouts
This project is a cross-platform mobile audio player and native audio playback engine for React Native. It functions as a media session manager that integrates audio controls into device lock screens, system notifications, and external Bluetooth headsets. The library features a dedicated mobile audio caching engine that preloads and stores content on disk to enable offline playback and gapless transitions. It also includes an automotive media interface that exposes audio content and playback controls to vehicle head units and car dashboards through hierarchical media browsing. The system cov
AmplitudeJS is a JavaScript library and framework for building custom HTML5 audio players. It serves as a client-side playlist manager and media controller that bridges the gap between HTML elements and the Web Audio API, allowing developers to create branded media interfaces without relying on default browser styles. The project is distinguished by its use of CSS-class-based DOM binding and data-attribute state mapping, which links HTML elements directly to playback controls and track metadata. It includes a dedicated visualization system that uses the Web Audio API to render real-time SVG w
wavesurfer.js is a WebAudio playback library and interactive waveform visualizer that renders audio data onto an HTML5 canvas. It enables users to see and navigate sound files through a visual representation of audio peaks, allowing for direct seeking and playback control within a web browser. The project is distinguished by its flexible rendering model, which can use precomputed peak data to display waveforms without downloading or decoding the full audio file. It utilizes a plugin-based extension model to integrate advanced tools such as spectrograms, interactive audio timelines, and real-t
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 in
librespot is an open-source audio streaming client and library used to implement custom music players that authenticate and stream audio from the Spotify service. It functions as a framework for fetching, decoding, and routing remote audio streams to various system backends and audio sinks. The project specifically implements a Spotify Connect receiver, allowing it to act as a remote-controllable playback endpoint that appears as a selectable device within other Spotify applications. This enables the creation of virtual playback devices, headless music playback on remote servers, and the inte
Howler.js is a JavaScript library that provides a unified interface for managing audio playback across web browsers. It functions as a cross-browser audio engine, abstracting complex browser audio APIs into a consistent developer experience while ensuring reliable performance through automatic fallback mechanisms. The library distinguishes itself by offering specialized tools for spatial audio and efficient asset management. It includes a spatial audio framework that maps three-dimensional vectors to audio nodes for immersive sound positioning, alongside an audio sprite manager that allows de
NAudio is a .NET audio library that provides playback, recording, format conversion, and signal processing capabilities for Windows applications. It serves as an audio format converter between common formats like WAV, MP3, AAC, and AIFF using ACM or Media Foundation codecs, and functions as an audio playback and recording API through Windows audio APIs including WaveOut, DirectSound, ASIO, and WASAPI. The library includes an audio stream processor that can mix, trim, loop, fade, resample, and adjust pitch or channel count of audio streams with a floating-point engine. It also provides an audi
Clappr is an HTML5 web media player and plugin-based framework used to render video and audio across different web platforms. It functions as a playback engine supporting adaptive bitrate streaming through HLS and DASH protocols to ensure smooth media delivery. The project is distinguished by a modular architecture that allows developers to extend player functionality and add support for new media formats via a plugin system. It also includes a dedicated controller for managing digital rights management license requests to secure premium content. The player covers a broad range of capabiliti
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
MIDI.js is a JavaScript library for playing MIDI files and triggering musical notes within web browsers. It functions as a web MIDI library and soundfont audio synthesizer, providing the core engines necessary to render instrument sounds for multiple simultaneous tracks. The project includes a specialized MIDI-to-visual sync engine that interpolates musical events into continuous animation loops to synchronize visuals with audio playback. It also provides a soundfont code generator to convert audio instrument files into base64 code for direct browser consumption. The library covers MIDI file
Webamp is a JavaScript library that provides a browser-based media player interface designed to replicate the experience of classic desktop audio software. It functions as a reusable component that allows developers to embed customizable, skinnable audio playback controls directly into web pages. The project distinguishes itself through its focus on legacy software emulation, recreating the visual and functional design patterns of traditional media players within modern web environments. It achieves this by rendering complex interface elements onto a canvas surface and managing application st
Tauon is a cross-platform music player application and audio library manager designed for playing local audio files and streaming remote collections. It functions as a music metadata client that retrieves and updates detailed artist and track information from external databases to organize music collections. The application supports high fidelity audio playback of various codecs and tracker files, utilizing gapless transitions and cue sheets. It features visual music navigation through an image-based gallery for browsing albums and artists via cover art. The system provides tools for local m
Pygame is a framework for building interactive 2D applications and games using the Python programming language. It functions as a 2D graphics rendering engine, a game input and event manager, and a multimedia audio toolkit. The project serves as a wrapper for the Simple DirectMedia Layer, providing a Python interface for low-level access to graphics, audio, keyboard, mouse, and joystick hardware. Its capabilities cover 2D graphics rendering and image manipulation, digital audio playback and streaming, and the management of game entities and physics simulations. It also includes tools for rea
cocos2d-objc is an Objective-C 2D game engine designed for developing interactive games and applications. It serves as a cross-platform game framework that enables the deployment of a shared codebase across iOS, tvOS, and macOS. The project features a hardware-accelerated 2D renderer utilizing OpenGL and Metal to display sprites, tile maps, and particle effects. It includes a dedicated OpenAL audio engine for managing music and spatialized sound effects, alongside a cross-platform input handler for processing touch, mouse, keyboard, and accelerometer events. The framework provides capabiliti
MusicPlayer2 is a desktop music player for Windows built on the BASS audio engine, designed for high-quality local audio playback with real-time spectrum visualization. It functions as a local music library manager, organizing tracks by artist, album, and genre, while also serving as an online metadata and artwork downloader that fetches lyrics and album covers automatically. The player features a fully customizable interface defined through XML configuration files, and includes a synchronized lyrics display with desktop overlay and karaoke-style highlighting. The player distinguishes itself
SFML is a cross-platform C++ multimedia library designed for building 2D games and interactive applications. It provides a unified interface for hardware-accelerated graphics, audio playback, and window management, allowing developers to create visual software that functions consistently across different operating systems. The library abstracts native windowing and graphics APIs, enabling the use of object-oriented primitives to render shapes, sprites, and text. It includes a dedicated audio engine that supports sound effects and music with controls for volume, pitch, and spatial positioning,
react-native-track-player is a cross-platform mobile audio player library for playing local and streamed audio files. It provides a background audio service that maintains music playback and responds to remote commands from lock screens and Bluetooth devices. The library includes a playback engine capable of decrypting audio files secured by industry-standard digital rights management and an adaptive bitrate streaming client that supports HLS and DASH formats to adjust audio quality based on network conditions. It also features an offline media storage manager for saving audio content locally
This repository contains the HTML specification, which defines the core standards for web page structuring, content organization, and document rendering. It establishes the fundamental algorithms for state-machine-based tokenization, tree construction for the document object model, and origin-based security isolation. The specification provides a framework for defining custom elements with independent lifecycles and registries. It also details the requirements for cross-document communication, session history management, and the synchronization of interface properties with content attributes.
This project is a desktop client for YouTube Music, serving as a cross-platform wrapper that encapsulates the web-based music service within a dedicated application environment. It provides native operating system integration and enhanced window controls for streaming audio. The application is distinguished by its extensibility, featuring a plugin system that allows the execution of custom scripts to modify frontend markup and application behavior. It also supports visual customization through the injection of external stylesheets to modify the user interface themes. The software manages aud
Musikcube is a cross-platform audio player and high-performance C++ audio engine designed for managing local music libraries. It functions as both a terminal-based music player and a headless audio server capable of indexing metadata and playing audio across different operating systems. The project utilizes a client-server architecture that separates the core audio engine and metadata indexer from the user interface. This design allows it to act as a self-hosted audio streaming server, delivering music and metadata to remote clients via WebSocket and HTTP with support for real-time transcodin
Opus is a lossy audio compression standard and codec designed for high-quality speech and music transmission over the internet. It functions as a low-latency audio codec and network-resilient streamer, providing a framework for encoding and decoding digital audio. The project distinguishes itself through the support of multi-channel ambisonics for immersive three-dimensional spatial audio reproduction. It is specifically optimized for real-time interactive communication, utilizing dynamic bitrate adjustment and forward error correction to maintain audio quality on unstable networks. The syst
Tone.js is a web-based audio synthesizer and framework for the Web Audio API. It provides a digital signal processing toolkit, a musical timing engine, and a library for MIDI processing to create interactive music and synthesizers directly in the browser. The project features a musical timing engine that coordinates audio events and loops using BPM-relative timing and a global transport. It includes a MIDI processing library capable of converting binary MIDI files into JSON format to trigger sounds and control audio parameters in real time. Its capabilities cover polyphonic sound synthesis,
SmarterStreaming is a cross-platform SDK for hardware-accelerated audio and video capture, encoding, and streaming. It provides a complete media pipeline for low-latency RTMP and RTSP streaming, and includes an embedded lightweight RTSP server that can serve live feeds directly from the source device to local network clients without requiring a separate server. The SDK also integrates with GB28181 surveillance platforms, enabling compliant device registration and streaming for standardized video monitoring systems. The project distinguishes itself through a set of integrated capabilities for
DirectXTK is a C++ library designed to simplify 2D and 3D graphics, audio, and input programming for DirectX applications. It serves as a comprehensive toolkit providing high-level wrappers for DirectX graphics, audio management, and input handling. The toolkit includes a graphics wrapper for loading textures and rendering 3D models and 2D sprites, alongside a dedicated audio manager for sound effects and 3D spatial audio. It also provides an input handler to track and process state updates from keyboards, mice, and gamepads. The library covers a broad capability surface including 3D math an
:musical_score: ts-audio is an agnostic library that makes it easy to work with AudioContext and create audio playlists in the browser
FitVids.js is a jQuery plugin and CSS aspect ratio manager designed to automate the scaling of embedded videos within responsive containers. It functions as a responsive video embed wrapper that ensures iframes maintain their correct proportions while scaling to fit various screen sizes. The project enables the integration of custom third-party video players by mapping specific CSS selectors to predefined aspect ratio configurations. It also provides mechanisms for video scaling exclusions, allowing specific elements to be ignored via designated classes or selectors to maintain fixed dimensio
The HTML5 video player for the web