aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/ApiManagers/UploadManager.ts12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/server/ApiManagers/UploadManager.ts b/src/server/ApiManagers/UploadManager.ts
index 60c52bcfc..ad165e3fe 100644
--- a/src/server/ApiManagers/UploadManager.ts
+++ b/src/server/ApiManagers/UploadManager.ts
@@ -277,7 +277,9 @@ export default class UploadManager extends ApiManager {
}
}
-
+function delay(ms: number) {
+ return new Promise(resolve => setTimeout(resolve, ms));
+}
/**
* On success, returns a buffer containing the bytes of a screenshot
* of the video specified by @param url at timecode @param t.
@@ -289,9 +291,15 @@ async function captureYoutubeScreenshot(targetUrl: string): Promise<Opt<Buffer>>
const page = await browser.newPage();
await page.setViewport({ width: 1920, height: 1080 });
- await page.goto(targetUrl, { waitUntil: 'networkidle2' as any });
+ await page.goto(targetUrl, { waitUntil: 'domcontentloaded' as any });
const videoPlayer = await page.$('.html5-video-player');
+ videoPlayer && await page.focus("video");
+ await delay(7000);
+ const ad = await page.$('.ytp-ad-skip-button-text');
+ await ad?.click();
+ await videoPlayer?.click();
+ await delay(1000);
// hide youtube player controls.
await page.evaluate(() =>
(document.querySelector('.ytp-chrome-bottom') as any).style.display = 'none');