This repository contains tests for the DPCTF Test Runner. To deploy the test runner with the tests in this repository, please follow the instructions in the DPCTF Deploy project.
To generate tests use the generate-tests.py
script as follows
$ ./generate-tests.py <CSV-file> <destination-dir> [<mpd-root-dir>]
CSV-file: CSV file to generate tests from.
destination-dir: Directory to put generated tests into.
mpd-root-dir (optional): The root directory of relative local mpd paths.
Every row represents a generated test.
"<template-id>","<video-test-vector-url>","<audio-test-vector>","<group>"
template-id: What template to use.
video-test-vector-url: URL to the video test content.
audio-test-vector-url: URL to the audio test content.
group: Name to group the generated test by. A directory per group is created.
You can refer to the tests.csv for examples.
id | file | specification |
---|---|---|
sequential-track-playback | sequential-track-playback.html | 8.2 |
random-access-to-fragment | random-access-to-fragment.html | 8.3 |
random-access-to-time | random-access-to-time.html | 8.4 |
switching-set-playback | switching-set-playback.html | 8.5 |
regular-playback-of-chunked-content | regular-playback-of-chunked-content.html | 8.6 |
regular-playback-of-chunked-content-non-aligned-append | regular-playback-of-chunked-content-non-aligned-append.html | 8.7 |
playback-over-wave-baseline-splice-constraints | playback-over-wave-baseline-splice-constraints.html | 8.8 |
out-of-order-loading | out-of-order-loading.html | 8.9 |
overlapping-fragments | overlapping-fragments.html | 8.10 |
fullscreen-playback-of-switching-sets | fullscreen-playback-of-switching-sets.html | 8.11 |
playback-of-encrypted-content | playback-of-encrypted-content.html | 8.12 |
restricted-splicing-of-encrypted-content | restricted-splicing-of-encrypted-content.html | 8.13 |
sequential-playback-of-encrypted-and-non-encrypted-baseline-content | sequential-playback-of-encrypted-and-non-encrypted-baseline-content.html | 8.14 |
regular-playback-of-a-cmaf-presentation | regular-playback-of-a-cmaf-presentation.html | 9.2 |
random-access-of-a-wave-presentation | random-access-of-a-wave-presentation.html | 9.3 |
splicing-of-wave-program-with-baseline-constraints | splicing-of-wave-program-with-baseline-constraints.html | 9.4 |
source-buffer-re-initialization-without-changetype | source-buffer-re-initialization-without-changetype.html | 8.15 |
source-buffer-re-initialization-with-changetype | source-buffer-re-initialization-with-changetype.html | 8.16 |
buffer-underrun-and-recovery | buffer-underrun-and-recovery.html | 8.17 |
truncated-playback-and-restart | truncated-playback-and-restart.html | 8.18 |
long-duration-playback | long-duration-playback.html | 8.19 |
low-latency-initialization | low-latency-initialization.html | 8.20 |
low-latency-playback-over-gaps | low-latency-playback-over-gaps.html | 8.21 |
mse-appendwindow | mse-appendwindow.html | 8.22 |
low-latency-short-buffer-playback | low-latency-short-buffer-playback.html | 8.23 |
random-access-from-one-place-in-a-stream-to-a-different-place-in-the-same-stream | random-access-from-one-place-in-a-stream-to-a-different-place-in-the-same-stream.html | 8.24 |
Specification numbers refer to section numbers in the DPCTF specification.
Various parameters are used to configure the tests by specifying them in the test-config.json. A list of available parameters can be found here.
As mentioned in the beginning of this README, in order to run tests in an automated way, please follow the instructions in the DPCTF Deploy project.
If you need to run dedicated tests e.g. for debugging purposes without the need to deploy the entire test runner, you can use the tests hosted in the gh-pages branch. These tests are accessible via https://cta-wave.github.io/dpctf-tests/generated/path/to/test.html. path/to/test.html
needs to be replaced with the path of the test you want to run within the generated test folder. Examples:
To create new tests proceed as follows:
generate-tests.py my-new-file.csv
script which generates the tests in the generated folder only for entries in the new CSV file.It may occur that the browser fails to load the required css stylesheet. As a result the video is not scale across the entire viewport. If you encouter this bug, please raise an issue.
Some DUTs may throw a "Script error" which is not part of the tests but included in the test results. Therefore, when evaluating test results, this error should be ignored.