12 lines
613 B
JavaScript
12 lines
613 B
JavaScript
import { PipeWireCapture } from '../daemon/audio-pipewire.js';
|
|
const capture = new PipeWireCapture();
|
|
let bytes = 0;
|
|
await new Promise((resolve, reject) => {
|
|
const timer = setTimeout(() => { capture.stop(); bytes ? resolve() : reject(new Error('No microphone PCM received')); }, 2000);
|
|
capture.on('audio', (chunk) => { bytes += chunk.length; });
|
|
capture.on('error', (error) => { clearTimeout(timer); capture.stop(); reject(error); });
|
|
capture.on('diagnostic', (message) => console.log(message));
|
|
capture.start();
|
|
});
|
|
console.log(`PipeWire microphone delivered ${bytes} PCM bytes; audio was not saved`);
|