diff --git a/web/src/lib/queen-bee/queue.ts b/web/src/lib/queen-bee/queue.ts index 3e7b1db8..f7550348 100644 --- a/web/src/lib/queen-bee/queue.ts +++ b/web/src/lib/queen-bee/queue.ts @@ -95,6 +95,7 @@ export const createSavePipeline = (info: CobaltLocalProcessingResponse, request: workerId: crypto.randomUUID(), parentId, workerArgs: { + files: [], ffargs, output: { type: info.output.type, diff --git a/web/src/lib/queen-bee/run-worker.ts b/web/src/lib/queen-bee/run-worker.ts index b78fbd79..ef20e618 100644 --- a/web/src/lib/queen-bee/run-worker.ts +++ b/web/src/lib/queen-bee/run-worker.ts @@ -18,11 +18,11 @@ export const startWorker = async ({ worker, workerId, parentId, workerArgs }: Co switch (worker) { case "remux": - if (workerArgs?.files) { + if (workerArgs.files) { files = workerArgs.files; } - if (files?.length === 0) { + if (files.length === 0) { const parent = get(queue)[parentId]; if (parent.state === "running" && parent.pipelineResults.length) { files = parent.pipelineResults; @@ -42,9 +42,7 @@ export const startWorker = async ({ worker, workerId, parentId, workerArgs }: Co break; case "fetch": - if (workerArgs?.url) { - await runFetchWorker(workerId, parentId, workerArgs.url) - } + await runFetchWorker(workerId, parentId, workerArgs.url) break; } } diff --git a/web/src/lib/types/workers.ts b/web/src/lib/types/workers.ts index fdb8d341..c69c95fe 100644 --- a/web/src/lib/types/workers.ts +++ b/web/src/lib/types/workers.ts @@ -12,16 +12,28 @@ export type CobaltWorkerProgress = { size: number, } -export type CobaltWorkerArgs = { - files?: CobaltFileReference[], - url?: string, - ffargs?: string[], - output?: FileInfo, +export type CobaltFetchWorkerArgs = { url: string }; + +export type CobaltRemuxWorkerArgs = { + files: CobaltFileReference[], + ffargs: string[], + output: FileInfo, } -export type CobaltPipelineItem = { +export type CobaltPipelineItemBase = { worker: CobaltWorkerType, workerId: string, parentId: string, - workerArgs: CobaltWorkerArgs, +}; + +type CobaltRemuxPipelineItem = CobaltPipelineItemBase & { + worker: "remux", + workerArgs: CobaltRemuxWorkerArgs, } + +type CobaltFetchPipelineItem = CobaltPipelineItemBase & { + worker: "fetch", + workerArgs: CobaltFetchWorkerArgs, +} + +export type CobaltPipelineItem = CobaltRemuxPipelineItem | CobaltFetchPipelineItem;