From 5cc2f0ea0a0af82333d673db1ad6461ed5cb4233 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Mon, 10 Oct 2022 15:33:32 +0200 Subject: Fix channel import with some channels --- server/helpers/youtube-dl/youtube-dl-cli.ts | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/server/helpers/youtube-dl/youtube-dl-cli.ts b/server/helpers/youtube-dl/youtube-dl-cli.ts index fc4c40787..a2f630953 100644 --- a/server/helpers/youtube-dl/youtube-dl-cli.ts +++ b/server/helpers/youtube-dl/youtube-dl-cli.ts @@ -128,14 +128,14 @@ export class YoutubeDLCLI { const data = await this.run({ url, args: completeArgs, processOptions }) if (!data) return undefined - const info = data.map(this.parseInfo) + const info = data.map(d => JSON.parse(d)) return info.length === 1 ? info[0] : info } - getListInfo (options: { + async getListInfo (options: { url: string latestVideosCount?: number processOptions: execa.NodeOptions @@ -151,12 +151,17 @@ export class YoutubeDLCLI { additionalYoutubeDLArgs.push('--playlist-end', options.latestVideosCount.toString()) } - return this.getInfo({ + const result = await this.getInfo({ url: options.url, format: YoutubeDLCLI.getYoutubeDLVideoFormat([], false), processOptions: options.processOptions, additionalYoutubeDLArgs }) + + if (!result) return result + if (!Array.isArray(result)) return [ result ] + + return result } async getSubs (options: { @@ -241,8 +246,4 @@ export class YoutubeDLCLI { return args } - - private parseInfo (data: string) { - return JSON.parse(data) - } } -- cgit v1.2.3