summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/encrypted-media/drm-mp4-playback-temporary-multikey-sequential-readyState.html
blob: 42d563a5de3dc8f73cbea04987747ad369be8b9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<!doctype html>
<html>
  <head>
    <meta charset=utf-8>
    <meta name="timeout" content="long">
    <title>Encrypted Media Extensions: Successful Playback, Temporary session with DRM, mp4, multiple keys in sequence, check readyState</title>
    <link rel="help" href="https://w3c.github.io/encrypted-media/">

    <!-- Web Platform Test Harness scripts -->
    <script src=/resources/testharness.js></script>
    <script src=/resources/testharnessreport.js></script>

    <!-- Helper scripts for Encrypted Media Extensions tests  -->
    <script src=/encrypted-media/util/utils.js></script>
    <script src=/encrypted-media/util/fetch.js></script>
    <script src=/encrypted-media/util/testmediasource.js></script>
    <script src=/encrypted-media/util/utf8.js></script>

    <!-- Content metadata -->
    <script src=/encrypted-media/content/content-metadata.js></script>

    <!-- Message handler for Clear Key keysystem -->
    <script src=/encrypted-media/util/drm-messagehandler.js></script>

    <!-- The script for this specific test -->
    <script src=/encrypted-media/scripts/playback-temporary-multikey-sequential.js></script>

  </head>
  <body>
    <div id='log'></div>

    <div id='video'>
      <video id="videoelement" width="200px"></video>
    </div>

    <script>
        var keysystem = getSupportedKeySystem(),
            contentitem = content['mp4-multikey-sequential'],
            handler = new MessageHandler(keysystem, contentitem),
            initdatas = getProprietaryInitDatas(contentitem),
            config = {  video:              document.getElementById('videoelement'),
                        keysystem:          keysystem,
                        messagehandler:     handler.messagehandler,
                        audioPath:          contentitem.audio.path,
                        videoPath:          contentitem.video.path,
                        audioType:          contentitem.audio.type,
                        videoType:          contentitem.video.type,
                        initDataType:       contentitem.initDataType,
                        initData:           initdatas.initDatas.map(base64DecodeToUnit8Array),
                        variantIds:         initdatas.variantIds,
                        duration:           5,
                        checkReadyState:    true
                    };

        runTest(config);
    </script>
  </body>
</html>