Skip to content

Latest commit

 

History

History
58 lines (42 loc) · 3.2 KB

README.md

File metadata and controls

58 lines (42 loc) · 3.2 KB

Test-Content-Generation

Overview

This repository provides the information and scripts to generate the CTA Wave Test Content.

The run-all.py script gathers the data and content from input tables/parameters. Then it sends them for processing. Then it uploads the result.

The encode_dash.py script is primarily about the usage of GPAC leveraging libavcodec with x264 and x265 to generate the CMAF content with some DASH annotations. The intent is to keep the size of the post-processing as small as possible.

Workflow

  • Download mezzanine content from https://dash.akamaized.net/WAVE/Mezzanine/. To be done manually.
  • Encode mezzanine content:
    • Encode to conform to CTA Proposed Test content.
    • Encode at least one option of source content according to media profile.
    • Special codec value "copy" to bypass the encoding. Not exposed in the CSV at the moment.
  • Package (markup) the content with an MPD according to the CTA Content Model format.
    • NB: done manually right now, but could eventually an extension to GPAC to produce this.
  • Encrypt the content in-place using GPAC encryption and manifest-forwarding capabilities.
  • Upload the proposed test content to the CTA-WAVE server using SFTP.
  • Update the Webpage: update database.json at https://github.com/cta-wave/Test-Content/blob/master/database.json.
  • TODO: Validate that the content conforms to:
    • its own constraints and flags
    • CMAF
    • CTA WAVE Test content format needs to be extended to format validation

Encoding to test content

How to generate the content

Splicing tests

The generation of current splicing tests is done by executing splice/gen.sh .

Validation

Validation as of today is done manually. (NOTE: an improved more automated process may be available later).

The process of validation includes:

  • The validation should include initial phase checking that required parameters according to the test content description are applied.
  • An API call to the DASH-IF conformance validator should be done to check against MPD and CMAF conformance for CTA WAVE test content.
  • The content should be ammended with a conformance check output document. At this stage it is recommended to use the output for the DASH-IF conformance validator.