Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.



Info
titleMultiple Video Sources
A Video Component having multiple video sources should not have different transcript content for each source (for the same language). For instance, it does not make sense for a video component to have multiple english transcripts with different content each.

...

Info
titleAdvanced Settings

Users will be required to add a video source before adding any transcript from Video Component's Advanced Settings, this is because S3 Transcripts are video sources specific. So, a video source need to be there in order to link any transcript to it.


Video Component Advanced Settings Input FieldsInternal/Technical Field Name

"Default Timed Transcript"

sub
"Transcript Languages"

transcripts

Background

We have sub and transcripts field on video component. The sub is used to store english transcripts metadata – i.e. en transcript's filename. While transcripts is a dict field in a video component and it contains non-english transcripts metadata – i.e. transcript's filename against the corresponding language, e.g. {'es': 'transcript_file_name.srt'}  and the transcript content for 'transcript_file_name.srt' is in Content-store.

...

Set transcript metadata from VideoTranscript to Video Component (e.g. on adding a new source) and use it afterwards – (i.e. do not ask VideoTranscript data-model for transcript metadata everytime). When we delete a transcript from Video Component (i.e. from Advanced Settings: "Default Timed Transcript" OR "Transcript Languages" fields), it will not be deleted from VAL(S3) instead it will just be unlinked from Video Component.

...

Assuming that deleting a transcript from video component also removes the corresponding transcript from VideoTranscript data model and S3, If a transcript is deleted from a video component's advanced settings then, the other video components who are using the same video source(s) will run stale because those were also had their own transcripts metadata but the actual transcript is deleted from VAL.

Pros:

  • Once a source is added to a video component, all of its transcripts are now Video Component specific in terms of deletion
  • Deleting a transcript from video component does not remove it from VideoTranscript data model Or from S3, it will be unlinked from this video component (i.e. soft-deleted for this video component) 
  • Covers all the documented scenarios: Video Component Scenarios with Contentstore (transcript-related)

...

If we store S3 transcript metadata on video component as well as in VideoTranscript data model then:.

  • Video component may have different transcripts metadata than the VideoTranscript data model for a same video source.
  • For our plan to upload transcripts for VAL videos directly from Video Uploads Page, when we'll upload a transcript from Video Uploads Page for a VAL Video, it will not autometically show up on all those Video Components which were already using that edx_video_id (from the past).
  • For auto-generated transcripts, generated transcript will not autometically show up on all those Video Components who were using that edx_video_id (from the past).

...