1
0
Fork 0
mirror of https://github.com/Chocobozzz/PeerTube.git synced 2025-10-04 10:19:35 +02:00

Don't publish video before audio stream

This commit is contained in:
Chocobozzz 2025-01-31 07:04:34 +01:00
parent f099067e9d
commit 23cd92430f
No known key found for this signature in database
GPG key ID: 583A612D890159BE
6 changed files with 47 additions and 8 deletions

View file

@ -5,6 +5,7 @@ import {
OptimizeTranscodingPayload,
VideoTranscodingPayload
} from '@peertube/peertube-models'
import { isVideoMissHLSAudio } from '@server/lib/runners/job-handlers/shared/utils.js'
import { onTranscodingEnded } from '@server/lib/transcoding/ended-transcoding.js'
import { generateHlsPlaylistResolution } from '@server/lib/transcoding/hls-transcoding.js'
import { mergeAudioVideofile, optimizeOriginalVideofile, transcodeNewWebVideoResolution } from '@server/lib/transcoding/web-transcoding.js'
@ -150,5 +151,12 @@ async function handleHLSJob (job: Job, payload: HLSTranscodingPayload, videoArg:
await removeAllWebVideoFiles(video)
}
await onTranscodingEnded({ isNewVideo: payload.isNewVideo, moveVideoToNextState: !payload.hasChildren, video })
let moveVideoToNextState = !payload.hasChildren
// Splitted audio, wait audio generation before moving the video in its next state
if (await isVideoMissHLSAudio({ resolution: payload.resolution, separatedAudio: payload.separatedAudio, videoId: videoArg.uuid })) {
moveVideoToNextState = false
}
await onTranscodingEnded({ isNewVideo: payload.isNewVideo, moveVideoToNextState, video })
}