import { ContextType } from '../activitypub/context'
-import { VideoResolution } from '../videos/video-resolution.enum'
+import { VideoResolution } from '../videos/file/video-resolution.enum'
import { SendEmailOptions } from './emailer.model'
export type JobState = 'active' | 'completed' | 'failed' | 'waiting' | 'delayed' | 'paused'
| 'activitypub-http-unicast'
| 'activitypub-http-broadcast'
| 'activitypub-http-fetcher'
+ | 'activitypub-cleaner'
| 'activitypub-follow'
| 'video-file-import'
| 'video-transcoding'
| 'email'
| 'video-import'
- | 'videos-views'
+ | 'videos-views-stats'
| 'activitypub-refresher'
| 'video-redundancy'
| 'video-live-ending'
+ | 'actor-keys'
+ | 'move-to-object-storage'
export interface Job {
id: number
state: JobState
type: JobType
data: any
+ priority: number
+ progress: number
error: any
createdAt: Date | string
finishedOn: Date | string
uri: string
type: FetchType
videoId?: number
- accountId?: number
}
export type ActivitypubHttpUnicastPayload = {
uri: string
signatureActorId?: number
- body: any
+ body: object
contextType?: ContextType
}
type: VideoImportYoutubeDLPayloadType
videoImportId: number
- generateThumbnail: boolean
- generatePreview: boolean
-
fileExt?: string
- mergeExt?: string
}
export type VideoImportTorrentPayload = {
type: VideoImportTorrentPayloadType
isNewVideo?: boolean
}
-interface HLSTranscodingPayload extends BaseTranscodingPayload {
- type: 'hls'
+export interface HLSTranscodingPayload extends BaseTranscodingPayload {
+ type: 'new-resolution-to-hls'
isPortraitMode?: boolean
resolution: VideoResolution
copyCodecs: boolean
+
+ autoDeleteWebTorrentIfNeeded: boolean
+ isMaxQuality: boolean
}
export interface NewResolutionTranscodingPayload extends BaseTranscodingPayload {
- type: 'new-resolution'
+ type: 'new-resolution-to-webtorrent'
isPortraitMode?: boolean
resolution: VideoResolution
}
export interface MergeAudioTranscodingPayload extends BaseTranscodingPayload {
- type: 'merge-audio'
+ type: 'merge-audio-to-webtorrent'
resolution: VideoResolution
}
export interface OptimizeTranscodingPayload extends BaseTranscodingPayload {
- type: 'optimize'
+ type: 'optimize-to-webtorrent'
}
export type VideoTranscodingPayload =
export interface VideoLiveEndingPayload {
videoId: number
}
+
+export interface ActorKeysPayload {
+ actorId: number
+}
+
+export interface DeleteResumableUploadMetaFilePayload {
+ filepath: string
+}
+
+export interface MoveObjectStoragePayload {
+ videoUUID: string
+ isNewVideo: boolean
+}