All Projects → revolunet → Webaudio Wav Stream Player

revolunet / Webaudio Wav Stream Player

instantly play remote wav streams using fetch API + WebAudio

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Webaudio Wav Stream Player

Awesome Video
A curated list of awesome streaming video tools, frameworks, libraries, and learning resources.
Stars: ✭ 397 (+1317.86%)
Mutual labels:  audio, streaming
Awesome Webaudio
A curated list of awesome WebAudio packages and resources.
Stars: ✭ 685 (+2346.43%)
Mutual labels:  audio, webaudio
Recorder
html5 js 浏览器 web端录音
Stars: ✭ 429 (+1432.14%)
Mutual labels:  audio, webaudio
Iplug2
C++ Audio Plug-in Framework for desktop, mobile and web [PRE-RELEASE]
Stars: ✭ 875 (+3025%)
Mutual labels:  audio, webaudio
Rtsp Simple Server
ready-to-use RTSP / RTMP server and proxy that allows to read, publish and proxy video and audio streams
Stars: ✭ 882 (+3050%)
Mutual labels:  audio, streaming
Jzz
MIDI library for Node.js and web-browsers
Stars: ✭ 325 (+1060.71%)
Mutual labels:  audio, webaudio
Roc Toolkit
Real-time audio streaming over the network.
Stars: ✭ 673 (+2303.57%)
Mutual labels:  audio, streaming
Supysonic
Supysonic is a Python implementation of the Subsonic server API.
Stars: ✭ 187 (+567.86%)
Mutual labels:  audio, streaming
Daw
GridSound (0.33.0) wants to be an open source online digital audio workstation following the new WebAudio API 🎛🎹🎵✨
Stars: ✭ 804 (+2771.43%)
Mutual labels:  audio, webaudio
React Native Audio Streaming
iOS & Android react native module to play an audio stream, with background support and media controls
Stars: ✭ 753 (+2589.29%)
Mutual labels:  audio, streaming
Virtual Audio Graph
🎶 Library for declaratively manipulating the Web Audio API
Stars: ✭ 299 (+967.86%)
Mutual labels:  audio, webaudio
Jssynth
Make music in your browser with this synthesizer and sequencer
Stars: ✭ 25 (-10.71%)
Mutual labels:  audio, webaudio
Localradio
📻 LocalRadio is "Radio for Cord-Cutters" – a Software-Defined Radio (SDR) app for your Mac and mobile devices. With an inexpensive RTL-SDR USB device, LocalRadio provides a casual, home-based radio listening experience for your favorite local frequencies - FM broadcasts/free music/news/sports/weather/public safety & aviation scanner/etc.
Stars: ✭ 269 (+860.71%)
Mutual labels:  audio, streaming
Radiodroid
radio browser app that uses www.radio-browser.info on android
Stars: ✭ 362 (+1192.86%)
Mutual labels:  audio, streaming
Videojs Wavesurfer
video.js plugin that adds a navigable waveform for audio and video files
Stars: ✭ 242 (+764.29%)
Mutual labels:  audio, webaudio
Hysteriaplayer
Objective-C audio player, sitting on top of AVPlayer
Stars: ✭ 568 (+1928.57%)
Mutual labels:  audio, streaming
Koel
🐦 A personal music streaming server that works.
Stars: ✭ 13,105 (+46703.57%)
Mutual labels:  audio, streaming
Render Media
Intelligently render media files in the browser
Stars: ✭ 181 (+546.43%)
Mutual labels:  audio, streaming
Ffmpeg
Mirror of https://git.ffmpeg.org/ffmpeg.git
Stars: ✭ 27,382 (+97692.86%)
Mutual labels:  audio, streaming
Waveform Playlist
Multitrack Web Audio editor and player with canvas waveform preview. Set cues, fades and shift multiple tracks in time. Record audio tracks or provide audio annotations. Export your mix to AudioBuffer or WAV! Project inspired by Audacity.
Stars: ✭ 919 (+3182.14%)
Mutual labels:  audio, webaudio

webaudio-wav-stream-player

No latency wav stream player using browser fetch streaming API and WebAudio

npm license github-issues

Tested on Chrome and Firefox 57+ with some flags on.

Example : http://revolunet.github.io/webaudio-wav-stream-player

Based on @chrisguttandin and @revolunet work

Usage

import WavPlayer from 'webaudio-wav-stream-player';

let player = new WavPlayer();
player.play('http//domain/path/to/stream.wav');
player.stop();

FAQ

  • you need CORS on the server streaming .wav

Example express proxy to add CORS header to some remote uri

// proxy /proxy/http://path/to/stream.wav

app.get('/proxy/*', function (req, res, next) {
  let remoteReq = request.get(req.params[0]);
  req.on("close", function() {
      remoteReq.abort();
      res.end();
  });
  req.pipe(remoteReq).pipe(res);
});

Inspiration : http://stackoverflow.com/questions/38589614/webaudio-streaming-with-fetch-domexception-unable-to-decode-audio-data/39988015#39988015

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].