pub trait VideoFileService<O> {
type GetPlaylistBody: WriteBody<O> + 'static;
Show 14 methods
// Required methods
fn create(
&self,
auth_: BearerToken,
request: CreateVideoFileRequest,
) -> Result<VideoFile, Error>;
fn get(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<VideoFile, Error>;
fn batch_get(
&self,
auth_: BearerToken,
video_file_rids: BTreeSet<ResourceIdentifier>,
) -> Result<BTreeSet<VideoFile>, Error>;
fn list_files_in_video(
&self,
auth_: BearerToken,
video_rid: ResourceIdentifier,
) -> Result<BTreeSet<VideoFile>, Error>;
fn list_files_in_video_paginated(
&self,
auth_: BearerToken,
video_rid: ListFilesInVideoRequest,
) -> Result<ListFilesInVideoResponse, Error>;
fn update(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
request: UpdateVideoFileRequest,
) -> Result<VideoFile, Error>;
fn delete(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<(), Error>;
fn archive(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<(), Error>;
fn unarchive(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<(), Error>;
fn get_ingest_status(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<GetIngestStatusResponse, Error>;
fn batch_get_ingest_status(
&self,
auth_: BearerToken,
video_file_rids: BTreeSet<ResourceIdentifier>,
) -> Result<BTreeMap<ResourceIdentifier, VideoFileIngestStatus>, Error>;
fn update_ingest_status(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
request: UpdateIngestStatusRequest,
) -> Result<(), Error>;
fn get_segment_summaries(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<Vec<SegmentSummary>, Error>;
fn get_playlist(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<Self::GetPlaylistBody, Error>;
}Expand description
The video service manages individual video files and their metadata.
Required Associated Types§
Sourcetype GetPlaylistBody: WriteBody<O> + 'static
type GetPlaylistBody: WriteBody<O> + 'static
The body type returned by the get_playlist method.
Required Methods§
Sourcefn create(
&self,
auth_: BearerToken,
request: CreateVideoFileRequest,
) -> Result<VideoFile, Error>
fn create( &self, auth_: BearerToken, request: CreateVideoFileRequest, ) -> Result<VideoFile, Error>
Create and persist a video file entity with the given metadata
Sourcefn get(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<VideoFile, Error>
fn get( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<VideoFile, Error>
Returns video file metadata associated with a video file RID.
Sourcefn batch_get(
&self,
auth_: BearerToken,
video_file_rids: BTreeSet<ResourceIdentifier>,
) -> Result<BTreeSet<VideoFile>, Error>
fn batch_get( &self, auth_: BearerToken, video_file_rids: BTreeSet<ResourceIdentifier>, ) -> Result<BTreeSet<VideoFile>, Error>
Returns all video files and their metadata associated with the given RIDs
fn list_files_in_video( &self, auth_: BearerToken, video_rid: ResourceIdentifier, ) -> Result<BTreeSet<VideoFile>, Error>
Sourcefn list_files_in_video_paginated(
&self,
auth_: BearerToken,
video_rid: ListFilesInVideoRequest,
) -> Result<ListFilesInVideoResponse, Error>
fn list_files_in_video_paginated( &self, auth_: BearerToken, video_rid: ListFilesInVideoRequest, ) -> Result<ListFilesInVideoResponse, Error>
Returns a paginated list of all video files and their metadata associated with the given video RID.
Sourcefn update(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
request: UpdateVideoFileRequest,
) -> Result<VideoFile, Error>
fn update( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, request: UpdateVideoFileRequest, ) -> Result<VideoFile, Error>
Updates the metadata for a video file associated with the given RID.
Sourcefn delete(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<(), Error>
fn delete( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<(), Error>
Permanently deletes a video file and all associated segments from the database. This operation cannot be undone.
fn archive( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<(), Error>
fn unarchive( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<(), Error>
Sourcefn get_ingest_status(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<GetIngestStatusResponse, Error>
fn get_ingest_status( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<GetIngestStatusResponse, Error>
Get the latest ingest status for a given video file by RID.
Sourcefn batch_get_ingest_status(
&self,
auth_: BearerToken,
video_file_rids: BTreeSet<ResourceIdentifier>,
) -> Result<BTreeMap<ResourceIdentifier, VideoFileIngestStatus>, Error>
fn batch_get_ingest_status( &self, auth_: BearerToken, video_file_rids: BTreeSet<ResourceIdentifier>, ) -> Result<BTreeMap<ResourceIdentifier, VideoFileIngestStatus>, Error>
Get the latest ingest status for a set of given video files by RID.
Sourcefn update_ingest_status(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
request: UpdateIngestStatusRequest,
) -> Result<(), Error>
fn update_ingest_status( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, request: UpdateIngestStatusRequest, ) -> Result<(), Error>
Update the latest ingest status for a given video file by RID.
Sourcefn get_segment_summaries(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<Vec<SegmentSummary>, Error>
fn get_segment_summaries( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<Vec<SegmentSummary>, Error>
Returns the min and max absolute and media timestamps for each segment in a video file. To be used during frame-timestamp mapping when playing back videos.
Sourcefn get_playlist(
&self,
auth_: BearerToken,
video_file_rid: ResourceIdentifier,
) -> Result<Self::GetPlaylistBody, Error>
fn get_playlist( &self, auth_: BearerToken, video_file_rid: ResourceIdentifier, ) -> Result<Self::GetPlaylistBody, Error>
Generate an HLS playlist for a video file with the given RID to enable playback. The HLS playlist will contain links to all of the video segments in the video in sequential order.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".