diff options
author | Chocobozzz <me@florianbigard.com> | 2023-04-21 15:05:27 +0200 |
---|---|---|
committer | Chocobozzz <chocobozzz@cpy.re> | 2023-05-09 08:57:34 +0200 |
commit | 1772b383de490cf406fe93ef3aa3a941f6db513c (patch) | |
tree | 7cecc404c8d71951c22079e9bf5180095981b7f9 /packages/peertube-runner/server/process/process.ts | |
parent | 118626c8752bee7b05c4e0b668852e1aba2416f1 (diff) | |
download | PeerTube-1772b383de490cf406fe93ef3aa3a941f6db513c.tar.gz PeerTube-1772b383de490cf406fe93ef3aa3a941f6db513c.tar.zst PeerTube-1772b383de490cf406fe93ef3aa3a941f6db513c.zip |
Add peertube runner cli
Diffstat (limited to 'packages/peertube-runner/server/process/process.ts')
-rw-r--r-- | packages/peertube-runner/server/process/process.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/packages/peertube-runner/server/process/process.ts b/packages/peertube-runner/server/process/process.ts new file mode 100644 index 000000000..39a929c59 --- /dev/null +++ b/packages/peertube-runner/server/process/process.ts | |||
@@ -0,0 +1,30 @@ | |||
1 | import { logger } from 'packages/peertube-runner/shared/logger' | ||
2 | import { | ||
3 | RunnerJobLiveRTMPHLSTranscodingPayload, | ||
4 | RunnerJobVODAudioMergeTranscodingPayload, | ||
5 | RunnerJobVODHLSTranscodingPayload, | ||
6 | RunnerJobVODWebVideoTranscodingPayload | ||
7 | } from '@shared/models' | ||
8 | import { processAudioMergeTranscoding, processHLSTranscoding, ProcessOptions, processWebVideoTranscoding } from './shared' | ||
9 | import { ProcessLiveRTMPHLSTranscoding } from './shared/process-live' | ||
10 | |||
11 | export async function processJob (options: ProcessOptions) { | ||
12 | const { server, job } = options | ||
13 | |||
14 | logger.info(`[${server.url}] Processing job of type ${job.type}: ${job.uuid}`, { payload: job.payload }) | ||
15 | |||
16 | if (job.type === 'vod-audio-merge-transcoding') { | ||
17 | await processAudioMergeTranscoding(options as ProcessOptions<RunnerJobVODAudioMergeTranscodingPayload>) | ||
18 | } else if (job.type === 'vod-web-video-transcoding') { | ||
19 | await processWebVideoTranscoding(options as ProcessOptions<RunnerJobVODWebVideoTranscodingPayload>) | ||
20 | } else if (job.type === 'vod-hls-transcoding') { | ||
21 | await processHLSTranscoding(options as ProcessOptions<RunnerJobVODHLSTranscodingPayload>) | ||
22 | } else if (job.type === 'live-rtmp-hls-transcoding') { | ||
23 | await new ProcessLiveRTMPHLSTranscoding(options as ProcessOptions<RunnerJobLiveRTMPHLSTranscodingPayload>).process() | ||
24 | } else { | ||
25 | logger.error(`Unknown job ${job.type} to process`) | ||
26 | return | ||
27 | } | ||
28 | |||
29 | logger.info(`[${server.url}] Finished processing job of type ${job.type}: ${job.uuid}`) | ||
30 | } | ||