diff options
author | Chocobozzz <me@florianbigard.com> | 2022-02-11 10:51:33 +0100 |
---|---|---|
committer | Chocobozzz <chocobozzz@cpy.re> | 2022-02-28 10:42:19 +0100 |
commit | c729caf6cc34630877a0e5a1bda1719384cd0c8a (patch) | |
tree | 1d2e13722e518c73d2c9e6f0969615e29d51cf8c /shared/models/server | |
parent | a24bf4dc659cebb65d887862bf21d7a35e9ec791 (diff) | |
download | PeerTube-c729caf6cc34630877a0e5a1bda1719384cd0c8a.tar.gz PeerTube-c729caf6cc34630877a0e5a1bda1719384cd0c8a.tar.zst PeerTube-c729caf6cc34630877a0e5a1bda1719384cd0c8a.zip |
Add basic video editor support
Diffstat (limited to 'shared/models/server')
-rw-r--r-- | shared/models/server/custom-config.model.ts | 4 | ||||
-rw-r--r-- | shared/models/server/job.model.ts | 39 | ||||
-rw-r--r-- | shared/models/server/server-config.model.ts | 4 |
3 files changed, 47 insertions, 0 deletions
diff --git a/shared/models/server/custom-config.model.ts b/shared/models/server/custom-config.model.ts index 52d3d9588..c9e7654de 100644 --- a/shared/models/server/custom-config.model.ts +++ b/shared/models/server/custom-config.model.ts | |||
@@ -143,6 +143,10 @@ export interface CustomConfig { | |||
143 | } | 143 | } |
144 | } | 144 | } |
145 | 145 | ||
146 | videoEditor: { | ||
147 | enabled: boolean | ||
148 | } | ||
149 | |||
146 | import: { | 150 | import: { |
147 | videos: { | 151 | videos: { |
148 | concurrency: number | 152 | concurrency: number |
diff --git a/shared/models/server/job.model.ts b/shared/models/server/job.model.ts index 1519d1c3e..d0293f542 100644 --- a/shared/models/server/job.model.ts +++ b/shared/models/server/job.model.ts | |||
@@ -1,4 +1,5 @@ | |||
1 | import { ContextType } from '../activitypub/context' | 1 | import { ContextType } from '../activitypub/context' |
2 | import { VideoEditorTaskCut } from '../videos/editor' | ||
2 | import { VideoResolution } from '../videos/file/video-resolution.enum' | 3 | import { VideoResolution } from '../videos/file/video-resolution.enum' |
3 | import { SendEmailOptions } from './emailer.model' | 4 | import { SendEmailOptions } from './emailer.model' |
4 | 5 | ||
@@ -20,6 +21,7 @@ export type JobType = | |||
20 | | 'video-live-ending' | 21 | | 'video-live-ending' |
21 | | 'actor-keys' | 22 | | 'actor-keys' |
22 | | 'move-to-object-storage' | 23 | | 'move-to-object-storage' |
24 | | 'video-edition' | ||
23 | 25 | ||
24 | export interface Job { | 26 | export interface Job { |
25 | id: number | 27 | id: number |
@@ -155,3 +157,40 @@ export interface MoveObjectStoragePayload { | |||
155 | videoUUID: string | 157 | videoUUID: string |
156 | isNewVideo: boolean | 158 | isNewVideo: boolean |
157 | } | 159 | } |
160 | |||
161 | export type VideoEditorTaskCutPayload = VideoEditorTaskCut | ||
162 | |||
163 | export type VideoEditorTaskIntroPayload = { | ||
164 | name: 'add-intro' | ||
165 | |||
166 | options: { | ||
167 | file: string | ||
168 | } | ||
169 | } | ||
170 | |||
171 | export type VideoEditorTaskOutroPayload = { | ||
172 | name: 'add-outro' | ||
173 | |||
174 | options: { | ||
175 | file: string | ||
176 | } | ||
177 | } | ||
178 | |||
179 | export type VideoEditorTaskWatermarkPayload = { | ||
180 | name: 'add-watermark' | ||
181 | |||
182 | options: { | ||
183 | file: string | ||
184 | } | ||
185 | } | ||
186 | |||
187 | export type VideoEditionTaskPayload = | ||
188 | VideoEditorTaskCutPayload | | ||
189 | VideoEditorTaskIntroPayload | | ||
190 | VideoEditorTaskOutroPayload | | ||
191 | VideoEditorTaskWatermarkPayload | ||
192 | |||
193 | export interface VideoEditionPayload { | ||
194 | videoUUID: string | ||
195 | tasks: VideoEditionTaskPayload[] | ||
196 | } | ||
diff --git a/shared/models/server/server-config.model.ts b/shared/models/server/server-config.model.ts index 32be96b9d..0fe8b0de8 100644 --- a/shared/models/server/server-config.model.ts +++ b/shared/models/server/server-config.model.ts | |||
@@ -167,6 +167,10 @@ export interface ServerConfig { | |||
167 | } | 167 | } |
168 | } | 168 | } |
169 | 169 | ||
170 | videoEditor: { | ||
171 | enabled: boolean | ||
172 | } | ||
173 | |||
170 | import: { | 174 | import: { |
171 | videos: { | 175 | videos: { |
172 | http: { | 176 | http: { |