| |
|
| | export type VideoStatus = |
| | | 'pending' |
| | | 'abort' |
| | | 'delete' |
| | | 'pause' |
| | | 'completed' |
| | | 'unknown' |
| |
|
| |
|
| | export type VideoTransition = |
| | | 'dissolve' |
| | | 'bookflip' |
| | | 'bounce' |
| | | 'bowtiehorizontal' |
| | | 'bowtievertical' |
| | | 'bowtiewithparameter' |
| | | 'butterflywavescrawler' |
| | | 'circlecrop' |
| | | 'colourdistance' |
| | | 'crazyparametricfun' |
| | | 'crosszoom' |
| | | 'directional' |
| | | 'directionalscaled' |
| | | 'doomscreentransition' |
| | | 'dreamy' |
| | | 'dreamyzoom' |
| | | 'edgetransition' |
| | | 'filmburn' |
| | | 'filmburnglitchdisplace' |
| | | 'glitchmemories' |
| | | 'gridflip' |
| | | 'horizontalclose' |
| | | 'horizontalopen' |
| | | 'invertedpagecurl' |
| | | 'leftright' |
| | | 'linearblur' |
| | | 'mosaic' |
| | | 'overexposure' |
| | | 'polkadotscurtain' |
| | | 'radial' |
| | | 'rectangle' |
| | | 'rectanglecrop' |
| | | 'rolls' |
| | | 'rotatescalevanish' |
| | | 'simplezoom' |
| | | 'simplezoomout' |
| | | 'slides' |
| | | 'staticfade' |
| | | 'stereoviewer' |
| | | 'swirl' |
| | | 'tvstatic' |
| | | 'topbottom' |
| | | 'verticalclose' |
| | | 'verticalopen' |
| | | 'waterdrop' |
| | | 'waterdropzoomincircles' |
| | | 'zoomleftwipe' |
| | | 'zoomrigthwipe' |
| | | 'angular' |
| | | 'burn' |
| | | 'cannabisleaf' |
| | | 'circle' |
| | | 'circleopen' |
| | | 'colorphase' |
| | | 'coordfromin' |
| | | 'crosshatch' |
| | | 'crosswarp' |
| | | 'cube' |
| | | 'directionaleasing' |
| | | 'directionalwarp' |
| | | 'directionalwipe' |
| | | 'displacement' |
| | | 'doorway' |
| | | 'fade' |
| | | 'fadecolor' |
| | | 'fadegrayscale' |
| | | 'flyeye' |
| | | 'heart' |
| | | 'hexagonalize' |
| | | 'kaleidoscope' |
| | | 'luma' |
| | | 'luminance_melt' |
| | | 'morph' |
| | | 'mosaic_transition' |
| | | 'multiply_blend' |
| | | 'perlin' |
| | | 'pinwheel' |
| | | 'pixelize' |
| | | 'polar_function' |
| | | 'powerkaleido' |
| | | 'randomnoisex' |
| | | 'randomsquares' |
| | | 'ripple' |
| | | 'rotatetransition' |
| | | 'rotate_scale_fade' |
| | | 'scalein' |
| | | 'squareswire' |
| | | 'squeeze' |
| | | 'static_wipe' |
| | | 'swap' |
| | | 'tangentmotionblur' |
| | | 'undulatingburnout' |
| | | 'wind' |
| | | 'windowblinds' |
| | | 'windowslice' |
| | | 'wipedown' |
| | | 'wipeleft' |
| | | 'wiperight' |
| | | 'wipeup' |
| | | 'x_axistranslation' |
| |
|
| |
|
| | export interface VideoShotMeta { |
| | shotPrompt: string |
| | |
| |
|
| | |
| | environmentPrompt: string |
| |
|
| | |
| | photographyPrompt: string |
| |
|
| | |
| | actionPrompt: string |
| |
|
| | |
| | backgroundAudioPrompt: string |
| |
|
| | |
| | foregroundAudioPrompt: string |
| |
|
| | |
| | actorPrompt: string |
| |
|
| | |
| | actorVoicePrompt: string |
| |
|
| | |
| | actorDialoguePrompt: string |
| |
|
| |
|
| |
|
| | seed: number |
| | noise: boolean |
| | noiseAmount: number |
| |
|
| | durationMs: number |
| | steps: number |
| |
|
| | fps: number |
| |
|
| | resolution: string |
| |
|
| | introTransition: VideoTransition |
| | introDurationMs: number |
| | } |
| |
|
| |
|
| | export interface VideoShotData { |
| | |
| | id: string |
| | sequenceId: string |
| | ownerId: string |
| |
|
| | fileName: string |
| |
|
| | |
| | version: number |
| |
|
| | |
| | hasGeneratedPreview: boolean |
| | hasGeneratedVideo: boolean |
| | hasUpscaledVideo: boolean |
| | hasGeneratedBackgroundAudio: boolean |
| | hasGeneratedForegroundAudio: boolean |
| | hasGeneratedActor: boolean |
| | hasInterpolatedVideo: boolean |
| | hasAddedAudio: boolean |
| | hasPostProcessedVideo: boolean |
| | nbCompletedSteps: number |
| | nbTotalSteps: number |
| | progressPercent: number |
| | createdAt: string |
| | completedAt: string |
| | completed: boolean |
| | error: string |
| | } |
| |
|
| | export type VideoShot = VideoShotMeta & VideoShotData |
| |
|
| | export interface VideoSequenceMeta { |
| |
|
| | |
| | videoPrompt: string |
| |
|
| | |
| | backgroundAudioPrompt: string |
| |
|
| | |
| | foregroundAudioPrompt: string |
| |
|
| | |
| | actorPrompt: string |
| |
|
| | |
| | actorVoicePrompt: string |
| |
|
| | |
| | actorDialoguePrompt: string |
| |
|
| | seed: number |
| |
|
| | noise: boolean |
| | noiseAmount: number |
| |
|
| | steps: number |
| |
|
| | fps: number |
| |
|
| | resolution: string |
| |
|
| | outroTransition: VideoTransition |
| | outroDurationMs: number |
| | } |
| |
|
| |
|
| | export interface VideoSequenceData { |
| | |
| | id: string |
| |
|
| | ownerId: string |
| | |
| | fileName: string |
| |
|
| | |
| | version: number |
| |
|
| | status: VideoStatus |
| |
|
| | hasGeneratedSpecs: boolean |
| | hasAssembledVideo: boolean |
| | nbCompletedShots: number |
| | progressPercent: number |
| | createdAt: string |
| | completedAt: string |
| | completed: boolean |
| | error: string |
| | } |
| |
|
| | export type VideoSequence = VideoSequenceMeta & VideoSequenceData |
| |
|
| | export type VideoStatusRequest = { |
| | status: VideoStatus |
| | } |
| |
|
| | export type GenericAPIResponse = { |
| | success?: boolean |
| | error?: string |
| | } |
| |
|
| | export type VideoAPIRequest = Partial<{ |
| | prompt: string |
| | sequence: Partial<VideoSequenceMeta> |
| | shots: Array<Partial<VideoShotMeta>> |
| | }> |
| |
|
| | export type Video = VideoSequence & { |
| | shots: VideoShot[] |
| | } |
| |
|
| | export type ProjectionMode = 'cartesian' | 'spherical' |
| |
|
| | export interface RenderRequest { |
| | prompt: string |
| |
|
| | |
| | |
| | |
| | |
| | segmentation: 'disabled' | 'firstframe' | 'allframes' |
| |
|
| | |
| | |
| | actionnables: string[] |
| |
|
| | |
| | |
| | |
| | |
| | |
| | nbFrames: number |
| |
|
| | nbSteps: number |
| |
|
| | seed: number |
| |
|
| | width: number |
| | height: number |
| |
|
| | projection: ProjectionMode |
| | } |
| |
|
| | export interface ImageSegmentationRequest { |
| | image: string |
| | keywords: string[] |
| | } |
| |
|
| | export interface ImageSegment { |
| | id: number |
| | box: number[] |
| | color: number[] |
| | label: string |
| | score: number |
| | } |
| |
|
| | export type RenderedSceneStatus = 'pending' | 'completed' | 'error' |
| |
|
| | export interface RenderedScene { |
| | renderId: string |
| | status: RenderedSceneStatus |
| | assetUrl: string |
| | error: string |
| | maskBase64: string |
| | segments: ImageSegment[] |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | export interface RenderingJob { |
| | scene: RenderRequest |
| | result: RenderedScene |
| |
|
| | status: 'pending' | 'completed' | 'error' |
| | } |