# 1. Video Tutorial Management

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 1. Video Tutorial Management

### 1.1 Upload Video Tutorials (HD Quality)
**What it does:** Manages the upload of video tutorials to the platform: the Super Administrator (or the content owners they coordinate) uploads video lessons in HD quality, with the platform validating the upload (format, quality, size) and processing it for streaming. The uploaded video becomes a content item that can be organized, assigned, and published.

**Sub-features:**
- Video upload: the video file uploaded to the platform
- HD quality: the video is in high-definition quality
- Upload validation: format, quality, and size checked on upload
- Processing: the video processed for streaming (available to play once processed)
- Upload status: the upload's state (uploading, processing, ready, failed)
- Upload failure handling: a failed upload reported with the reason
- Video list: the uploaded videos with their status and metadata
- Audit logging of video uploads

**Super Administrator User Journey:**
1. A new video tutorial is ready. Super Admin (coordinating the content owner) initiates the upload of the video file.
2. The platform validates the upload: the format is supported, the quality is HD, and the size is within the limit; a failing file is rejected with the specific reason.
3. The upload proceeds; the video's status shows uploading, then processing (the platform prepares it for streaming).
4. Once processed, the video is ready: it can be played, and it appears in the video list with its status and metadata.
5. For a failed upload (a corrupt file or an unsupported format), Super Admin sees the failure reason, obtains a corrected file, and re-uploads.
6. Reviews the video list: the uploaded videos with their status, so the content pipeline is visible (what is ready, what is processing, what failed).
7. Confirms the video plays correctly (a spot-check of the stream) before it is organized and assigned.
8. The video upload is audit-logged with the video, the actor, and the timestamp.

**Rules & Edge Cases:**
- The upload is validated (format, quality, size); a failing file is rejected with the specific reason, not silently accepted.
- HD quality is the standard; a sub-standard upload is flagged.
- The video is processed for streaming; it is playable only once processing completes.
- A failed upload is reported with the reason; the corrected file is re-uploaded, and the failure is recorded.
- The video list shows the status per video; the pipeline state is visible.
- Video uploads are audit-logged with the video, actor, and timestamp.

### 1.2 Subtitles and Multiple Language Support
**What it does:** Adds subtitles to video tutorials and supports multiple languages: the Super Administrator attaches subtitle tracks to a video and provides the video (or its subtitles) in multiple languages, so learners can follow along in their preferred language and the content is accessible. The subtitle and language support is part of the video's content profile.

**Sub-features:**
- Subtitle tracks: the subtitles attached to a video (the timed text)
- Multiple subtitle languages: more than one language track per video
- Language selection: a learner selects their subtitle language at playback
- Multiple language support: the video/subtitles available in the platform's supported languages
- Subtitle upload: the subtitle files uploaded and attached to the video
- Subtitle accuracy: the subtitles checked for timing and correctness
- Audit logging of subtitle/language changes

**Super Administrator User Journey:**
1. For a video tutorial, Super Admin attaches the subtitle tracks: the timed text for the video, in the primary language.
2. Adds the additional language tracks (the subtitles in the platform's supported languages), so the video is available in multiple languages.
3. Uploads the subtitle files and attaches them to the video; the tracks are available at playback.
4. Checks the subtitle accuracy: the timing matches the audio and the text is correct; a mis-timed or incorrect track is corrected and re-attached.
5. Confirms the language selection: at playback, a learner selects their subtitle language and the correct track appears.
6. For a learner with no preferred subtitle, the video plays without subtitles (the default), so the absence of a selection is not an error.
7. Reviews the video's language coverage: the languages available for the video, and a gap (a supported language missing) is flagged for the content owner.
8. The subtitle/language changes are audit-logged with the video, the tracks, and the timestamp.

**Rules & Edge Cases:**
- Subtitle tracks are timed text attached to a video; they are a content attribute, not a separate item.
- Multiple language tracks are supported per video; a learner selects their language at playback.
- Subtitle accuracy (timing, correctness) is checked; a faulty track is corrected and re-attached.
- The absence of a subtitle selection is not an error; the video plays by default.
- Language coverage is reviewed; a gap (a supported language missing) is flagged, not silent.
- Subtitle/language changes are audit-logged with the video, tracks, and timestamp.

### 1.3 Chapter/Topic Organization, Completion Time, and Difficulty Tagging
**What it does:** Organizes each video tutorial within the curriculum (chapter/topic), sets its estimated completion time, and tags its difficulty level (beginner, intermediate, advanced). The Super Administrator maintains these attributes so the video is placed in the right learning context, a learner knows how long it will take, and the content is matched to the learner's level.

**Sub-features:**
- Chapter/topic organization: the video placed under a chapter/topic
- Estimated completion time: the video's expected duration set as its completion time
- Difficulty tagging: the video tagged beginner, intermediate, or advanced
- Level matching: the video's difficulty matched to the learner's level/context
- Attribute review: the organization, time, and tag checked for accuracy
- Visibility: the completion time and difficulty shown to the learner
- Audit logging of attribute changes

**Super Administrator User Journey:**
1. For a video tutorial, Super Admin organizes it under its chapter/topic (the curriculum node it belongs to), so it is in the right learning context.
2. Sets the estimated completion time: the video's expected duration, so a learner knows the time investment before starting.
3. Tags the difficulty: beginner, intermediate, or advanced, matching the video's actual level.
4. Saves; the video now shows its completion time and difficulty, and it is placed in the chapter/topic.
5. Confirms the level matching: the video's difficulty is appropriate for the learners in its context (a beginner video is not in an advanced track).
6. Reviews the attributes for accuracy: the completion time matches the actual duration (a large discrepancy is corrected), and the difficulty tag is right.
7. For a video that is re-cut (a shorter version), updates the completion time to match the new duration; the change is recorded.
8. The attribute changes are audit-logged with the video, the attributes, and the timestamp.

**Rules & Edge Cases:**
- The video is organized under a chapter/topic; the placement is its learning context.
- The estimated completion time is the expected duration; it is shown to the learner and kept accurate (updated on a re-cut).
- The difficulty tag is one of three levels (beginner, intermediate, advanced); it matches the video's actual level.
- Level matching is reviewed: a video's difficulty is appropriate for its context; a mismatch is corrected.
- The completion time and difficulty are visible to the learner; they inform the learner's choice.
- Attribute changes are audit-logged with the video, attributes, and timestamp.
