aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-05-23 14:37:32 +0200
committermetamuffin <metamuffin@disroot.org>2025-05-23 14:37:32 +0200
commitd8d0978bccd6bac4e6930f56c7cf2fa9cf5364ec (patch)
tree2b3d50c598beac260c26658ffa113b75cf12884c
parent6e1950535e1eab20b3029c89f989470da503d5ae (diff)
downloadisda-d8d0978bccd6bac4e6930f56c7cf2fa9cf5364ec.tar
isda-d8d0978bccd6bac4e6930f56c7cf2fa9cf5364ec.tar.bz2
isda-d8d0978bccd6bac4e6930f56c7cf2fa9cf5364ec.tar.zst
make info task insert optional
-rw-r--r--scripts/config.ts1
-rw-r--r--scripts/ytdlp_flatten.md1
-rw-r--r--scripts/ytdlp_flatten.ts6
3 files changed, 6 insertions, 2 deletions
diff --git a/scripts/config.ts b/scripts/config.ts
index ca8ef1c..5b5f1da 100644
--- a/scripts/config.ts
+++ b/scripts/config.ts
@@ -3,6 +3,7 @@ export interface Config {
enqueue: EnqueueTask[]
ytdlp_flatten: {
filters: { [key: string]: string }
+ enqueue_info?: boolean
}
ytdlp_download: {
output: string,
diff --git a/scripts/ytdlp_flatten.md b/scripts/ytdlp_flatten.md
index 97ffb39..dd7be2b 100644
--- a/scripts/ytdlp_flatten.md
+++ b/scripts/ytdlp_flatten.md
@@ -11,6 +11,7 @@ Where task ids are the ids assigned by the respective platform.
- `filters`: Map from flag to filter. Flags are taken from the `flag`
attribute in task data. Filters are passed straight to yt-dlp's
`--match-filter` flag.
+ - `enqueue_info`: Enqueues the correspoding channel info task on completion.
Sample configuration:
diff --git a/scripts/ytdlp_flatten.ts b/scripts/ytdlp_flatten.ts
index 5145196..499233d 100644
--- a/scripts/ytdlp_flatten.ts
+++ b/scripts/ytdlp_flatten.ts
@@ -74,8 +74,10 @@ ws.onmessage = async ev => {
if (p.t == "work") {
const [outkind, url] = key_to_url(p.key)
await flat_playlist(url, outkind, p.data)
- ws.send(JSON.stringify({ t: "metadata", key: key_to_infokey(p.key), data: p.data }))
- ws.send(JSON.stringify({ t: "enqueue", key: key_to_infokey(p.key) }))
+ if (config.ytdlp_flatten.enqueue_info) {
+ ws.send(JSON.stringify({ t: "metadata", key: key_to_infokey(p.key), data: p.data }))
+ ws.send(JSON.stringify({ t: "enqueue", key: key_to_infokey(p.key) }))
+ }
ws.send(JSON.stringify({ t: "complete", key: p.key }))
ws.send(JSON.stringify({ t: "save" }))
ws.send(JSON.stringify({ t: "accept" }))