Add <video> element fallback case for MediaStreamVideoTrackSource, adding Firefox support

This commit is contained in:
Vanilagy
2026-03-06 16:11:59 +01:00
parent 6a11a1302c
commit 2087658eea
2 changed files with 52 additions and 7 deletions
+4 -4
View File
@@ -19,7 +19,7 @@
button.addEventListener('click', async () => {
const stream = await navigator.mediaDevices.getDisplayMedia({ video: true, audio: false });
const videoTrack = stream.getVideoTracks()[0];
const audioTrack = null;//stream.getAudioTracks()[0];
const audioTrack = stream.getAudioTracks()[0];
const output = new Mediabunny.Output({
target: new Mediabunny.BufferTarget(),
@@ -29,7 +29,7 @@
let audioSource = null;
if (videoTrack) {
videoSource = new Mediabunny.MediaStreamVideoTrackSource(videoTrack, {
codec: 'avc',
codec: 'vp9',
bitrate: Mediabunny.QUALITY_MEDIUM,
sizeChangeBehavior: 'passThrough',
});
@@ -40,13 +40,13 @@
}
if (audioTrack) {
audioSource = new Mediabunny.MediaStreamAudioTrackSource(audioTrack, {
codec: 'mp3',
codec: 'opus',
bitrate: Mediabunny.QUALITY_MEDIUM
});
audioSource.errorPromise.catch((d) => console.log("Hello!!???", d));
//output.addAudioTrack(audioSource);
output.addAudioTrack(audioSource);
}
await output.start();