Versions Compared

Key

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

...

While a long-term plan to reassess the edX Asset Pipeline Strategy is under discussion, we plan to address the above issues through tactical short-term measures.

...

1. Simplify Video Authoring UI  (related ticket:

Jira Legacy
serverJIRA (openedx.atlassian.net)
serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
keyMA-385
)

 Addresses: Scenarios #6 and #7 above.

We want to simplify the Video Authoring block, so that it's clear to course authors that we support only 3 mutually exclusive cases:

  1. YouTube only - with YouTube link supplied by the video author.

  2. Video ID only - if the video was processed through the edX Video Pipeline workflow for this course (or processed through another course).

    Note:
    when processed through the Video Pipeline, a video will have multiple encodings, including YouTube, Web, Mobile, Audio-only, etc.  So it would be "nice" for the course author to see the links to the various encodings in the Video Authoring UI once the video is processed (related ticket:
    Jira Legacy
    serverJIRA (openedx.atlassian.net)
    serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
    keyMA-150
    ).

    Note 2: Upon saving the Video block, the corresponding video in the Video pipeline database (VAL) should be updated to have a link to the course, if it doesn't already have so.

  3. Externally Hosted Video only - with an external link supplied by the video author (e.g., video hosted on their own S3 site, if they are not using the edX Video Pipeline).
    Decouple Video Upload and Video Reporting and allow course authors to upload directly through the Video Authoring block

Additional Notes

  • If the video pipeline is enabled for the course, display a warning if an option other than "Video ID" is used.
  • When the "Video ID" option is chosen,
    • verify that the provided ID exists in the VAL database.
    • if the ID is not already associated with the course in the VAL database, create the association.
  • To handle existing video blocks that don't follow the mutual exclusivity, use the following preference order, which is used by the mobile apps:
    1. If Video ID is specified, use this field iff the ID is in VAL.
    2. Else if a Hosted URL is specified, use this field.
    3. Else, use the YouTube field.
  • If there are any resulting content issues from the above preference order, course teams will need to fix them, since it affects the mobile apps.

2. Simplify Video Linking (related ticket:

Jira Legacy
serverJIRA (openedx.atlassian.net)
serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
keyMA-2066
)

 Addresses: Scenarios #1, #2, #5 above.

...

Allow course authors to search for their upload videos

...

within the Video Authoring block

...

by providing a type-ahead/searchable dropdown with the file display names and Video IDs of all the uploaded videos associated with the course.  This prevents unnecessary user errors (forgetting, not knowing, incorrect copy and pasting, etc).

...

Additional Notes

  • Populate the drop-down by querying VAL for all videos associated with the course.
  • Allow Course Authors to still enter or cut-and-paste the Video IDs directly into the video block, in case they didn't upload the video through this course.
  • Follow through with the additional notes captured by #1 above.

 

3. Course Validation (related ticket:
Jira Legacy
serverJIRA (openedx.atlassian.net)
serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
keyMA-736
)

Addresses: Scenarios #3 and #4 above.

Although Course Validation can be generalized to other requirements and other features, for the purpose of Video assets, adding a validation step in the Course Publishing/Importing workflow will allow course authors to understand all the video-related issues in their course.  In particular, for courses that are designated as "Mobile Available", reporting all the non-mobile available videos in the course will allow course authors to address and fix those issues.

Validation entry points:

  1.    a. Course Import - Note that, a chicken-and-egg problem can arise if the course author is prevented from importing the course without a way to actually fix the course.   b.
  2. Course Publish - Note that, today, the underlying database publishes courses at various times, without an explicit Publish action by the course author.   c.
  3. Manual Validation UI - This may be the best option at this time, given the issues with the above choices.
  4. Manual Script or Command - For a bulk validation report across courses, allow open edX operators to validate using a script or management command.

Validation results:

  1.    a. Failed   b.
  2. Warnings
  3.    c. Success

It is a policy decision on what types of video issues are actual failures rather than simply warnings.  And it's also a matter of policy on whether we want to allow courses with video issues to be published to edx.org.

Additional Notes

  • To minimize the scope for v1.5
    • go with options 3 and 4 for the validation entry points.
    • output all validation failures and warnings in a spreadsheet, so we don't have to implement a lot of UI features such as sorting, searching, paging, etc.

4. Move Video Pipeline Settings into server-specific storage (e.g., VAL database) (related ticket: 
Jira Legacy
serverJIRA (openedx.atlassian.net)
serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
keyMA-1302
)

Addresses: Scenario #4 above.

Store the video pipeline credentials for each course in a django-admin accessible VAL database.  This will allow the settings to remain on the server instance and not overridden when the course is imported from other servers.

5. Video Pipeline UI Improvements

 To provide a better user experience for course authors, the following UI improvements are highly recommended, in the short term, by the edX video team.

  1. Deleting unneeded videos from the library (
    Jira Legacy
    serverJIRA (openedx.atlassian.net)
    serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
    keyMA-326
    )
  2. Better error states (
    Jira Legacy
    serverJIRA (openedx.atlassian.net)
    serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
    keyMA-769
    ,
    Jira Legacy
    serverJIRA (openedx.atlassian.net)
    serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
    keyMA-242
    )
  3. Warning message when upload will be interrupted (
    Jira Legacy
    serverJIRA (openedx.atlassian.net)
    serverId13fd1930-5608-3aac-a5dd-21b934d3a4b4
    keyMA-333
    )