Skip to content

tylerlong/node-webrtc-audio-source

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-webrtc-audio-source

node-webrtc started supporting programmatic audio since version 0.3.6. But it doesn't cover how to get audio stream from microphone.

This library gives you a RTCAudioSource object which streams audio data from microphone.

Install

yarn add node-webrtc-audio-source wrtc

Usage

import { nonstandard } from 'wrtc'
import RTCAudioSource from 'node-webrtc-audio-source'

const { RTCAudioSink } = nonstandard

const rtcAudioSource  = new RTCAudioSource()
const track = rtcAudioSource.createTrack()
const rtcAudioSink = new RTCAudioSink(track)

rtcAudioSink.ondata = data => {
  // Do something with the received audio samples.
}
rtcAudioSource.start()
setTimeout(() => rtcAudioSource.stop(), 10000) // stop after 10 seconds

How does it work?

macOS

rec -q -b 16 -r 48000 -e signed -c 1 -t raw --buffer 1920 -

Windows

ffmpeg -f dshow -audio_buffer_size 50 -i audio="My Microphone Device" -ac 1 -ar 48000 -f s16le -acodec pcm_s16le -

How to get list of devices

ffmpeg -list_devices true -f dshow -i dummy

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published