diff options
Diffstat (limited to 'shared/models')
-rw-r--r-- | shared/models/activitypub/objects/index.ts | 2 | ||||
-rw-r--r-- | shared/models/activitypub/objects/video-object.ts (renamed from shared/models/activitypub/objects/video-torrent-object.ts) | 16 | ||||
-rw-r--r-- | shared/models/server/custom-config.model.ts | 4 | ||||
-rw-r--r-- | shared/models/server/job.model.ts | 8 | ||||
-rw-r--r-- | shared/models/videos/index.ts | 1 | ||||
-rw-r--r-- | shared/models/videos/storyboard.model.ts | 11 |
6 files changed, 41 insertions, 1 deletions
diff --git a/shared/models/activitypub/objects/index.ts b/shared/models/activitypub/objects/index.ts index 9aa3c462c..a2e040b32 100644 --- a/shared/models/activitypub/objects/index.ts +++ b/shared/models/activitypub/objects/index.ts | |||
@@ -6,5 +6,5 @@ export * from './object.model' | |||
6 | export * from './playlist-element-object' | 6 | export * from './playlist-element-object' |
7 | export * from './playlist-object' | 7 | export * from './playlist-object' |
8 | export * from './video-comment-object' | 8 | export * from './video-comment-object' |
9 | export * from './video-torrent-object' | 9 | export * from './video-object' |
10 | export * from './watch-action-object' | 10 | export * from './watch-action-object' |
diff --git a/shared/models/activitypub/objects/video-torrent-object.ts b/shared/models/activitypub/objects/video-object.ts index 23d54bdbd..a252a2df0 100644 --- a/shared/models/activitypub/objects/video-torrent-object.ts +++ b/shared/models/activitypub/objects/video-object.ts | |||
@@ -51,6 +51,22 @@ export interface VideoObject { | |||
51 | 51 | ||
52 | attributedTo: ActivityPubAttributedTo[] | 52 | attributedTo: ActivityPubAttributedTo[] |
53 | 53 | ||
54 | preview?: ActivityPubStoryboard[] | ||
55 | |||
54 | to?: string[] | 56 | to?: string[] |
55 | cc?: string[] | 57 | cc?: string[] |
56 | } | 58 | } |
59 | |||
60 | export interface ActivityPubStoryboard { | ||
61 | type: 'Image' | ||
62 | rel: [ 'storyboard' ] | ||
63 | url: { | ||
64 | href: string | ||
65 | mediaType: string | ||
66 | width: number | ||
67 | height: number | ||
68 | tileWidth: number | ||
69 | tileHeight: number | ||
70 | tileDuration: string | ||
71 | }[] | ||
72 | } | ||
diff --git a/shared/models/server/custom-config.model.ts b/shared/models/server/custom-config.model.ts index 4202589f3..1012312f3 100644 --- a/shared/models/server/custom-config.model.ts +++ b/shared/models/server/custom-config.model.ts | |||
@@ -78,6 +78,10 @@ export interface CustomConfig { | |||
78 | torrents: { | 78 | torrents: { |
79 | size: number | 79 | size: number |
80 | } | 80 | } |
81 | |||
82 | storyboards: { | ||
83 | size: number | ||
84 | } | ||
81 | } | 85 | } |
82 | 86 | ||
83 | signup: { | 87 | signup: { |
diff --git a/shared/models/server/job.model.ts b/shared/models/server/job.model.ts index 22ecee324..9c40079fb 100644 --- a/shared/models/server/job.model.ts +++ b/shared/models/server/job.model.ts | |||
@@ -30,6 +30,7 @@ export type JobType = | |||
30 | | 'video-studio-edition' | 30 | | 'video-studio-edition' |
31 | | 'video-transcoding' | 31 | | 'video-transcoding' |
32 | | 'videos-views-stats' | 32 | | 'videos-views-stats' |
33 | | 'generate-video-storyboard' | ||
33 | 34 | ||
34 | export interface Job { | 35 | export interface Job { |
35 | id: number | string | 36 | id: number | string |
@@ -294,3 +295,10 @@ export interface TranscodingJobBuilderPayload { | |||
294 | priority?: number | 295 | priority?: number |
295 | }[][] | 296 | }[][] |
296 | } | 297 | } |
298 | |||
299 | // --------------------------------------------------------------------------- | ||
300 | |||
301 | export interface GenerateStoryboardPayload { | ||
302 | videoUUID: string | ||
303 | federate: boolean | ||
304 | } | ||
diff --git a/shared/models/videos/index.ts b/shared/models/videos/index.ts index 80be1854b..b3ce6ad3f 100644 --- a/shared/models/videos/index.ts +++ b/shared/models/videos/index.ts | |||
@@ -15,6 +15,7 @@ export * from './channel-sync' | |||
15 | 15 | ||
16 | export * from './nsfw-policy.type' | 16 | export * from './nsfw-policy.type' |
17 | 17 | ||
18 | export * from './storyboard.model' | ||
18 | export * from './thumbnail.type' | 19 | export * from './thumbnail.type' |
19 | 20 | ||
20 | export * from './video-constant.model' | 21 | export * from './video-constant.model' |
diff --git a/shared/models/videos/storyboard.model.ts b/shared/models/videos/storyboard.model.ts new file mode 100644 index 000000000..c92c81f09 --- /dev/null +++ b/shared/models/videos/storyboard.model.ts | |||
@@ -0,0 +1,11 @@ | |||
1 | export interface Storyboard { | ||
2 | storyboardPath: string | ||
3 | |||
4 | totalHeight: number | ||
5 | totalWidth: number | ||
6 | |||
7 | spriteHeight: number | ||
8 | spriteWidth: number | ||
9 | |||
10 | spriteDuration: number | ||
11 | } | ||