Init commit
This commit is contained in:
98
packages/models/src/activitypub/objects/video-object.ts
Normal file
98
packages/models/src/activitypub/objects/video-object.ts
Normal file
@@ -0,0 +1,98 @@
|
||||
import { LiveVideoLatencyModeType, VideoCommentPolicyType, VideoStateType } from '../../videos/index.js'
|
||||
import {
|
||||
ActivityIconObject,
|
||||
ActivityIdentifierObject,
|
||||
ActivityPubAttributedTo,
|
||||
ActivityTagObject,
|
||||
ActivityUrlObject
|
||||
} from './common-objects.js'
|
||||
import { VideoCaptionObject } from './video-caption-object.js'
|
||||
import { VideoChapterObject } from './video-chapters-object.js'
|
||||
|
||||
export interface VideoObject {
|
||||
type: 'Video'
|
||||
id: string
|
||||
name: string
|
||||
duration: string
|
||||
uuid: string
|
||||
tag: ActivityTagObject[]
|
||||
category: ActivityIdentifierObject
|
||||
licence: ActivityIdentifierObject
|
||||
language: ActivityIdentifierObject
|
||||
subtitleLanguage: VideoCaptionObject[]
|
||||
|
||||
views: number
|
||||
|
||||
sensitive: boolean
|
||||
summary: string
|
||||
|
||||
isLiveBroadcast: boolean
|
||||
liveSaveReplay: boolean
|
||||
permanentLive: boolean
|
||||
latencyMode: LiveVideoLatencyModeType
|
||||
|
||||
commentsPolicy: VideoCommentPolicyType
|
||||
canReply: 'as:Public' | 'https://www.w3.org/ns/activitystreams#Public'
|
||||
|
||||
downloadEnabled: boolean
|
||||
waitTranscoding: boolean
|
||||
state: VideoStateType
|
||||
|
||||
published: string
|
||||
originallyPublishedAt: string
|
||||
updated: string
|
||||
uploadDate: string
|
||||
|
||||
schedules?: {
|
||||
startDate: Date
|
||||
}[]
|
||||
|
||||
mediaType: 'text/markdown'
|
||||
content: string
|
||||
|
||||
support: string
|
||||
|
||||
aspectRatio: number
|
||||
|
||||
icon: ActivityIconObject[]
|
||||
|
||||
url: ActivityUrlObject[]
|
||||
|
||||
likes: string
|
||||
dislikes: string
|
||||
shares: string
|
||||
comments: string
|
||||
hasParts: string | VideoChapterObject[]
|
||||
playerSettings: string
|
||||
|
||||
attributedTo: ActivityPubAttributedTo[]
|
||||
|
||||
preview?: ActivityPubStoryboard[]
|
||||
|
||||
to?: string[]
|
||||
cc?: string[]
|
||||
|
||||
// For export
|
||||
attachment?: {
|
||||
type: 'Video'
|
||||
url: string
|
||||
mediaType: string
|
||||
height: number
|
||||
size: number
|
||||
fps: number
|
||||
}[]
|
||||
}
|
||||
|
||||
export interface ActivityPubStoryboard {
|
||||
type: 'Image'
|
||||
rel: ['storyboard']
|
||||
url: {
|
||||
href: string
|
||||
mediaType: string
|
||||
width: number
|
||||
height: number
|
||||
tileWidth: number
|
||||
tileHeight: number
|
||||
tileDuration: string
|
||||
}[]
|
||||
}
|
||||
Reference in New Issue
Block a user