puppeteer-stream
Advanced tools
Comparing version 1.0.7 to 2.0.0
/// <reference types="node" /> | ||
import { Page } from "puppeteer/lib/cjs/puppeteer/common/Page"; | ||
import puppeteer, { LaunchOptions, Page, BrowserOptions, ChromeArgOptions } from "puppeteer"; | ||
import { Readable, ReadableOptions } from "stream"; | ||
@@ -16,3 +16,4 @@ export declare class Stream extends Readable { | ||
} | ||
export declare type BrowserMimeType = "audio/webm" | "audio/webm;codecs=opus" | "audio/opus" | "audio/aac" | "audio/ogg" | "audio/mp3" | "audio/pcm" | "audio/wav" | "audio/vorbis" | "video/webm" | "video/mp4" | "image/gif"; | ||
export declare function launch(opts: LaunchOptions & BrowserOptions & ChromeArgOptions): Promise<puppeteer.Browser>; | ||
export declare type BrowserMimeType = "audio/webm" | "audio/webm;codecs=opus" | "audio/opus" | "audio/aac" | "audio/ogg" | "audio/mp3" | "audio/pcm" | "audio/wav" | "audio/vorbis" | "video/webm" | "video/mp4"; | ||
export interface getStreamOptions { | ||
@@ -27,1 +28,2 @@ audio: boolean; | ||
} | ||
export declare function getStream(page: Page, opts: getStreamOptions): Promise<Stream>; |
@@ -15,8 +15,6 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.Stream = void 0; | ||
exports.getStream = exports.launch = exports.Stream = void 0; | ||
const puppeteer_1 = __importDefault(require("puppeteer")); | ||
const Page_1 = require("puppeteer/lib/cjs/puppeteer/common/Page"); | ||
const stream_1 = require("stream"); | ||
const path_1 = __importDefault(require("path")); | ||
const Browser_1 = require("puppeteer/lib/cjs/puppeteer/common/Browser"); | ||
class Stream extends stream_1.Readable { | ||
@@ -38,5 +36,3 @@ constructor(page, options) { | ||
exports.Stream = Stream; | ||
const oldLaunch = puppeteer_1.default.launch; | ||
// @ts-ignore | ||
puppeteer_1.default.launch = function (opts) { | ||
function launch(opts) { | ||
var _a, _b, _c, _d; | ||
@@ -77,6 +73,6 @@ return __awaiter(this, void 0, void 0, function* () { | ||
opts.headless = false; | ||
const browser = yield oldLaunch.call(this, opts); | ||
const browser = yield puppeteer_1.default.launch(opts); | ||
// @ts-ignore | ||
browser.encoders = new Map(); | ||
const targets = yield browser.targets(); | ||
const targets = browser.targets(); | ||
const extensionTarget = targets.find( | ||
@@ -95,16 +91,7 @@ // @ts-ignore | ||
}); | ||
}; | ||
const oldNewPage = Browser_1.Browser.prototype.newPage; | ||
Browser_1.Browser.prototype.newPage = function () { | ||
} | ||
exports.launch = launch; | ||
function getStream(page, opts) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const page = yield oldNewPage.call(this); | ||
const pages = yield this.pages(); | ||
page.index = pages.length - 1; | ||
return page; | ||
}); | ||
}; | ||
// @ts-ignore | ||
Page_1.Page.prototype.getStream = function (opts) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const encoder = new Stream(this); | ||
const encoder = new Stream(page); | ||
if (!opts.audio && !opts.video) | ||
@@ -120,13 +107,14 @@ throw new Error("At least audio or video must be true"); | ||
opts.frameSize = 20; | ||
yield this.bringToFront(); | ||
yield page.bringToFront(); | ||
// @ts-ignore | ||
yield this.browser().videoCaptureExtension.evaluate((settings) => { | ||
yield page.browser().videoCaptureExtension.evaluate((settings) => { | ||
// @ts-ignore | ||
START_RECORDING(settings); | ||
}, Object.assign(Object.assign({}, opts), { index: this.index })); | ||
}, Object.assign(Object.assign({}, opts), { index: page._id })); | ||
// @ts-ignore | ||
this.browser().encoders.set(this.index, encoder); | ||
page.browser().encoders.set(page._id, encoder); | ||
return encoder; | ||
}); | ||
}; | ||
} | ||
exports.getStream = getStream; | ||
function str2ab(str) { | ||
@@ -141,2 +129,2 @@ // Convert a UTF-8 String to an ArrayBuffer | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVwcGV0ZWVyU3RyZWFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1B1cHBldGVlclN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwREFBcUQ7QUFDckQsa0VBQStEO0FBQy9ELG1DQUFtRDtBQUNuRCxnREFBd0I7QUFDeEIsd0VBQXFFO0FBRXJFLE1BQWEsTUFBTyxTQUFRLGlCQUFRO0lBQ25DLFlBQW9CLElBQVUsRUFBRSxPQUF5QjtRQUN4RCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFESSxTQUFJLEdBQUosSUFBSSxDQUFNO0lBRTlCLENBQUM7SUFFRCxLQUFLLEtBQUksQ0FBQztJQUVWLE9BQU87UUFDTixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEIsZ0RBQWdEO1FBQ2hELHNDQUFzQztRQUN0QyxrREFBa0Q7UUFDbEQsa0JBQWtCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Q7QUFmRCx3QkFlQztBQVNELE1BQU0sU0FBUyxHQUFHLG1CQUFTLENBQUMsTUFBTSxDQUFDO0FBQ25DLGFBQWE7QUFDYixtQkFBUyxDQUFDLE1BQU0sR0FBRyxVQUFnQixJQUFtQjs7O1FBQ3JELElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFBRSxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUUvQixNQUFNLGFBQWEsR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDOUQsTUFBTSxXQUFXLEdBQUcsa0NBQWtDLENBQUM7UUFDdkQsSUFBSSxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLElBQUksV0FBVyxH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 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVwcGV0ZWVyU3RyZWFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1B1cHBldGVlclN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwREFBc0c7QUFDdEcsbUNBQW1EO0FBQ25ELGdEQUF3QjtBQUV4QixNQUFhLE1BQU8sU0FBUSxpQkFBUTtJQUNuQyxZQUFvQixJQUFVLEVBQUUsT0FBeUI7UUFDeEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBREksU0FBSSxHQUFKLElBQUksQ0FBTTtJQUU5QixDQUFDO0lBRUQsS0FBSyxLQUFJLENBQUM7SUFFVixPQUFPO1FBQ04sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hCLGdEQUFnRDtRQUNoRCxzQ0FBc0M7UUFDdEMsa0RBQWtEO1FBQ2xELGtCQUFrQjtRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDMUIsQ0FBQztDQUNEO0FBZkQsd0JBZUM7QUFTRCxTQUFzQixNQUFNLENBQUMsSUFBdUQ7OztRQUNuRixJQUFJLENBQUMsSUFBSTtZQUFFLElBQUksR0FBRyxFQUFFLENBQUM7UUFFckIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFFL0IsTUFBTSxhQUFhLEdBQUcsY0FBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzlELE1BQU0sV0FBVyxHQUFHLGtDQUFrQyxDQUFDO1FBQ3ZELElBQUksYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMxQixJQUFJLG1CQUFtQixHQUFHLEtBQUssQ0FBQztRQUNoQyxJQUFJLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNuQixJQUFJLENBQUMsQ0FB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 |
{ | ||
"name": "puppeteer-stream", | ||
"version": "1.0.7", | ||
"version": "2.0.0", | ||
"description": "", | ||
@@ -22,3 +22,3 @@ "main": "dist/PuppeteerStream.js", | ||
"dependencies": { | ||
"puppeteer": "^5.5.0" | ||
"puppeteer": "^7.1.0" | ||
}, | ||
@@ -25,0 +25,0 @@ "devDependencies": { |
@@ -34,8 +34,8 @@ # puppeteer-stream | ||
The method `page.getStream(options)` takes the following options: | ||
The method `page.getStream(options)` takes the following options | ||
```ts | ||
{ | ||
audio: boolean; // wheter or not to enable audio | ||
video: boolean; // wheter or not to enable video | ||
audio: boolean; // whether or not to enable audio | ||
video: boolean; // whether or not to enable video | ||
mimeType?: string; // optional mime type of the stream, e.g. "audio/webm" or "video/webm" | ||
@@ -48,5 +48,6 @@ audioBitsPerSecond?: number; // The chosen bitrate for the audio component of the media. | ||
``` | ||
and returns a `Promise<`[`Readable`](/dist/PuppeteerStream.d.ts#L4)`>` | ||
For a detailed documentation of the options have a look at the [HTML5 MediaRecorder Options](https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder/MediaRecorder) | ||
## Example | ||
@@ -53,0 +54,0 @@ |
@@ -1,6 +0,4 @@ | ||
import puppeteer, { LaunchOptions } from "puppeteer"; | ||
import { Page } from "puppeteer/lib/cjs/puppeteer/common/Page"; | ||
import puppeteer, { LaunchOptions, Browser, Page, BrowserOptions, ChromeArgOptions } from "puppeteer"; | ||
import { Readable, ReadableOptions } from "stream"; | ||
import path from "path"; | ||
import { Browser } from "puppeteer/lib/cjs/puppeteer/common/Browser"; | ||
@@ -31,6 +29,5 @@ export class Stream extends Readable { | ||
const oldLaunch = puppeteer.launch; | ||
// @ts-ignore | ||
puppeteer.launch = async function (opts: LaunchOptions) { | ||
export async function launch(opts: LaunchOptions & BrowserOptions & ChromeArgOptions) { | ||
if (!opts) opts = {}; | ||
if (!opts.args) opts.args = []; | ||
@@ -67,7 +64,7 @@ | ||
const browser: Browser = await oldLaunch.call(this, opts); | ||
const browser: Browser = await puppeteer.launch(opts); | ||
// @ts-ignore | ||
browser.encoders = new Map(); | ||
const targets = await browser.targets(); | ||
const targets = browser.targets(); | ||
const extensionTarget = targets.find( | ||
@@ -88,12 +85,4 @@ // @ts-ignore | ||
return browser; | ||
}; | ||
} | ||
const oldNewPage = Browser.prototype.newPage; | ||
Browser.prototype.newPage = async function (this: Browser) { | ||
const page = await oldNewPage.call(this); | ||
const pages = await this.pages(); | ||
page.index = pages.length - 1; | ||
return page; | ||
}; | ||
export type BrowserMimeType = | ||
@@ -110,4 +99,3 @@ | "audio/webm" | ||
| "video/webm" | ||
| "video/mp4" | ||
| "image/gif"; | ||
| "video/mp4"; | ||
@@ -124,5 +112,4 @@ export interface getStreamOptions { | ||
// @ts-ignore | ||
Page.prototype.getStream = async function (this: Page, opts: getStreamOptions) { | ||
const encoder = new Stream(this); | ||
export async function getStream(page: Page, opts: getStreamOptions) { | ||
const encoder = new Stream(page); | ||
if (!opts.audio && !opts.video) throw new Error("At least audio or video must be true"); | ||
@@ -135,6 +122,6 @@ if (!opts.mimeType) { | ||
await this.bringToFront(); | ||
await page.bringToFront(); | ||
// @ts-ignore | ||
await (<Page>this.browser().videoCaptureExtension).evaluate( | ||
await (<Page>page.browser().videoCaptureExtension).evaluate( | ||
(settings) => { | ||
@@ -145,10 +132,10 @@ // @ts-ignore | ||
// @ts-ignore | ||
{ ...opts, index: this.index } | ||
{ ...opts, index: page._id } | ||
); | ||
// @ts-ignore | ||
this.browser().encoders.set(this.index, encoder); | ||
page.browser().encoders.set(page._id, encoder); | ||
return encoder; | ||
}; | ||
} | ||
@@ -155,0 +142,0 @@ function str2ab(str: any) { |
{ | ||
"exclude": ["examples", "dist", "extension"], | ||
"include": ["src"], | ||
"compilerOptions": { | ||
@@ -4,0 +4,0 @@ /* Visit https://aka.ms/tsconfig.json to read more about this file */ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
60564
15
675
87
+ Addedagent-base@6.0.2(transitive)
+ Addeddevtools-protocol@0.0.847576(transitive)
+ Addedhttps-proxy-agent@5.0.1(transitive)
+ Addedpuppeteer@7.1.0(transitive)
- Removedagent-base@5.1.1(transitive)
- Removeddevtools-protocol@0.0.818844(transitive)
- Removedhttps-proxy-agent@4.0.0(transitive)
- Removedpuppeteer@5.5.0(transitive)
Updatedpuppeteer@^7.1.0