aboutsummaryrefslogtreecommitdiffhomepage
path: root/packages/peertube-runner/server/process/shared/process-vod.ts
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2023-05-04 15:29:34 +0200
committerChocobozzz <chocobozzz@cpy.re>2023-05-09 08:57:34 +0200
commit5e47f6ab984a7d00782e4c7030afffa1ba480add (patch)
tree1ce586b591a8d71acbc301eba29b9a5e6490439e /packages/peertube-runner/server/process/shared/process-vod.ts
parent6a4905602636afd6650c9e6f4d0fcc2105d91100 (diff)
downloadPeerTube-5e47f6ab984a7d00782e4c7030afffa1ba480add.tar.gz
PeerTube-5e47f6ab984a7d00782e4c7030afffa1ba480add.tar.zst
PeerTube-5e47f6ab984a7d00782e4c7030afffa1ba480add.zip
Support studio transcoding in peertube runner
Diffstat (limited to 'packages/peertube-runner/server/process/shared/process-vod.ts')
-rw-r--r--packages/peertube-runner/server/process/shared/process-vod.ts55
1 files changed, 29 insertions, 26 deletions
diff --git a/packages/peertube-runner/server/process/shared/process-vod.ts b/packages/peertube-runner/server/process/shared/process-vod.ts
index aae61e9c5..d84ece3cb 100644
--- a/packages/peertube-runner/server/process/shared/process-vod.ts
+++ b/packages/peertube-runner/server/process/shared/process-vod.ts
@@ -62,33 +62,36 @@ export async function processHLSTranscoding (options: ProcessOptions<RunnerJobVO
62 62
63 const ffmpegVod = buildFFmpegVOD({ job, server, runnerToken }) 63 const ffmpegVod = buildFFmpegVOD({ job, server, runnerToken })
64 64
65 await ffmpegVod.transcode({ 65 try {
66 type: 'hls', 66 await ffmpegVod.transcode({
67 copyCodecs: false, 67 type: 'hls',
68 inputPath, 68 copyCodecs: false,
69 hlsPlaylist: { videoFilename }, 69 inputPath,
70 outputPath, 70 hlsPlaylist: { videoFilename },
71 71 outputPath,
72 inputFileMutexReleaser: () => {}, 72
73 73 inputFileMutexReleaser: () => {},
74 resolution: payload.output.resolution, 74
75 fps: payload.output.fps 75 resolution: payload.output.resolution,
76 }) 76 fps: payload.output.fps
77 77 })
78 const successBody: VODHLSTranscodingSuccess = { 78
79 resolutionPlaylistFile: outputPath, 79 const successBody: VODHLSTranscodingSuccess = {
80 videoFile: videoPath 80 resolutionPlaylistFile: outputPath,
81 videoFile: videoPath
82 }
83
84 await server.runnerJobs.success({
85 jobToken: job.jobToken,
86 jobUUID: job.uuid,
87 runnerToken,
88 payload: successBody
89 })
90 } finally {
91 await remove(inputPath)
92 await remove(outputPath)
93 await remove(videoPath)
81 } 94 }
82
83 await server.runnerJobs.success({
84 jobToken: job.jobToken,
85 jobUUID: job.uuid,
86 runnerToken,
87 payload: successBody
88 })
89
90 await remove(outputPath)
91 await remove(videoPath)
92} 95}
93 96
94export async function processAudioMergeTranscoding (options: ProcessOptions<RunnerJobVODAudioMergeTranscodingPayload>) { 97export async function processAudioMergeTranscoding (options: ProcessOptions<RunnerJobVODAudioMergeTranscodingPayload>) {