| <!DOCTYPE html> |
| <html> |
| <head> |
| <script src="/w3c/resources/testharness.js"></script> |
| <script src="/w3c/resources/testharnessreport.js"></script> |
| <script src="mediasource-util.js"></script> |
| |
| <link rel='stylesheet' href='/w3c/resources/testharness.css'> |
| </head> |
| <body> |
| <div id="log"></div> |
| <script> |
| mediasource_testafterdataloaded(function(test, mediaElement, mediaSource, segmentInfo, sourceBuffer, mediaData) |
| { |
| var initSegment = MediaSourceUtil.extractSegmentData(mediaData, segmentInfo.init); |
| test.expectEvent(sourceBuffer, 'updateend', 'initSegment append ended.'); |
| test.expectEvent(sourceBuffer.audioTracks, 'addtrack', 'sourceBuffer.videoTracks addtrack event'); |
| test.expectEvent(sourceBuffer.videoTracks, 'addtrack', 'sourceBuffer.videoTracks addtrack event'); |
| test.expectEvent(mediaElement.audioTracks, 'addtrack', 'mediaElement.videoTracks addtrack event'); |
| test.expectEvent(mediaElement.videoTracks, 'addtrack', 'mediaElement.videoTracks addtrack event'); |
| sourceBuffer.appendBuffer(initSegment); |
| test.waitForExpectedEvents(function() |
| { |
| assert_equals(sourceBuffer.videoTracks.length, 1, "videoTracks.length"); |
| assert_equals(sourceBuffer.videoTracks[0].id, "1", "videoTrack.id"); |
| assert_equals(sourceBuffer.videoTracks[0].kind, "main", "videoTrack.kind"); |
| assert_equals(sourceBuffer.videoTracks[0].label, "", "videoTrack.label"); |
| assert_equals(sourceBuffer.videoTracks[0].language, "eng", "videoTrack.language"); |
| assert_equals(sourceBuffer.videoTracks[0].sourceBuffer, sourceBuffer, "videoTrack.sourceBuffer"); |
| // The first video track is selected by default. |
| assert_true(sourceBuffer.videoTracks[0].selected, "sourceBuffer.videoTracks[0].selected"); |
| |
| assert_equals(sourceBuffer.audioTracks.length, 1, "audioTracks.length"); |
| assert_equals(sourceBuffer.audioTracks[0].id, "2", "audioTrack.id"); |
| assert_equals(sourceBuffer.audioTracks[0].kind, "main", "audioTrack.kind"); |
| assert_equals(sourceBuffer.audioTracks[0].label, "", "audioTrack.label"); |
| assert_equals(sourceBuffer.audioTracks[0].language, "eng", "audioTrack.language"); |
| assert_equals(sourceBuffer.audioTracks[0].sourceBuffer, sourceBuffer, "audioTrack.sourceBuffer"); |
| // The first audio track is enabled by default. |
| assert_true(sourceBuffer.audioTracks[0].enabled, "sourceBuffer.audioTracks[0].enabled"); |
| |
| assert_equals(mediaElement.videoTracks.length, 1, "videoTracks.length"); |
| assert_equals(mediaElement.videoTracks[0], sourceBuffer.videoTracks[0], "mediaElement.videoTrack == sourceBuffer.videoTrack"); |
| |
| assert_equals(mediaElement.audioTracks.length, 1, "audioTracks.length"); |
| assert_equals(mediaElement.audioTracks[0], sourceBuffer.audioTracks[0], "mediaElement.audioTrack == sourceBuffer.audioTrack"); |
| |
| test.done(); |
| }); |
| }, "MediaSource media track properties"); |
| </script> |
| </body> |
| </html> |
| |