SamuelScheit / puppeteer-stream

A Library for puppeteer to retrieve audio and/or video streams
MIT License
358 stars 114 forks source link

How to use this module with remote browser using browserWSEndpoint? #88

Closed alokmahor closed 1 year ago

alokmahor commented 1 year ago

I want to use remotly running browser using const browser = await puppeteer.connect({ browserWSEndpoint: 'ws://localhost:3000' });

var puppeteer = require('puppeteer');
const { launch, getStream }  = require("puppeteer-stream");
const fs = require("fs");

const file = fs.createWriteStream("/tmp/test.webm");

async function test() {
    // const browser = await launch({
    //     executablePath: '/home/alok/.cache/puppeteer/chrome/linux-1069273/chrome-linux/chrome'
    // });
    const browser = await puppeteer.connect({ browserWSEndpoint: 'ws://localhost:3000' });
    const page = await browser.newPage();
    await page.goto("https://www.youtube.com/watch?v=dQw4w9WgXcQ");
    const stream = await getStream(page, { audio: true, video: true });
    console.log("recording");

    stream.pipe(file);
    setTimeout(async () => {
        await stream.destroy();
        file.close();
        console.log("finished");
    }, 1000 * 10);
}

test();

Can it be possible to use this module for remote browser?

SamuelScheit commented 1 year ago

Only if the remote browser is started with the puppeteer-stream extension