media-source: All Results

Test files: 73; Total subtests: 346

Test Files

  1. /media-source/SourceBuffer-abort-readyState.html
  2. /media-source/SourceBuffer-abort-removed.html
  3. /media-source/SourceBuffer-abort-updating.html
  4. /media-source/SourceBuffer-abort.html
  5. /media-source/URL-createObjectURL-null.html
  6. /media-source/URL-createObjectURL-revoke.html
  7. /media-source/URL-createObjectURL.html
  8. /media-source/dedicated-worker/mediasource-worker-detach-element.html
  9. /media-source/dedicated-worker/mediasource-worker-objecturl.html
  10. /media-source/dedicated-worker/mediasource-worker-play-terminate-worker.html
  11. /media-source/dedicated-worker/mediasource-worker-play.html
  12. /media-source/mediasource-activesourcebuffers.html
  13. /media-source/mediasource-addsourcebuffer-mode.html
  14. /media-source/mediasource-addsourcebuffer.html
  15. /media-source/mediasource-append-buffer.html
  16. /media-source/mediasource-appendbuffer-quota-exceeded.html
  17. /media-source/mediasource-appendwindow.html
  18. /media-source/mediasource-attach-stops-delaying-load-event.html
  19. /media-source/mediasource-avtracks.html
  20. /media-source/mediasource-buffered.html
  21. /media-source/mediasource-changetype-play-implicit.html
  22. /media-source/mediasource-changetype-play-negative.html
  23. /media-source/mediasource-changetype-play-without-codecs-parameter.html
  24. /media-source/mediasource-changetype-play.html
  25. /media-source/mediasource-changetype.html
  26. /media-source/mediasource-closed.html
  27. /media-source/mediasource-config-change-mp4-a-bitrate.html
  28. /media-source/mediasource-config-change-mp4-av-audio-bitrate.html
  29. /media-source/mediasource-config-change-mp4-av-framesize.html
  30. /media-source/mediasource-config-change-mp4-av-video-bitrate.html
  31. /media-source/mediasource-config-change-mp4-v-bitrate.html
  32. /media-source/mediasource-config-change-mp4-v-framerate.html
  33. /media-source/mediasource-config-change-mp4-v-framesize.html
  34. /media-source/mediasource-config-change-webm-a-bitrate.html
  35. /media-source/mediasource-config-change-webm-av-audio-bitrate.html
  36. /media-source/mediasource-config-change-webm-av-framesize.html
  37. /media-source/mediasource-config-change-webm-av-video-bitrate.html
  38. /media-source/mediasource-config-change-webm-v-bitrate.html
  39. /media-source/mediasource-config-change-webm-v-framerate.html
  40. /media-source/mediasource-config-change-webm-v-framesize.html
  41. /media-source/mediasource-correct-frames-after-reappend.html
  42. /media-source/mediasource-correct-frames.html
  43. /media-source/mediasource-detach.html
  44. /media-source/mediasource-duration-boundaryconditions.html
  45. /media-source/mediasource-duration.html
  46. /media-source/mediasource-endofstream-invaliderror.html
  47. /media-source/mediasource-endofstream.html
  48. /media-source/mediasource-errors.html
  49. /media-source/mediasource-getvideoplaybackquality.html
  50. /media-source/mediasource-invalid-codec.html
  51. /media-source/mediasource-is-type-supported.html
  52. /media-source/mediasource-liveseekable.html
  53. /media-source/mediasource-multiple-attach.html
  54. /media-source/mediasource-play-then-seek-back.html
  55. /media-source/mediasource-play.html
  56. /media-source/mediasource-preload.html
  57. /media-source/mediasource-redundant-seek.html
  58. /media-source/mediasource-remove.html
  59. /media-source/mediasource-removesourcebuffer.html
  60. /media-source/mediasource-replay.html
  61. /media-source/mediasource-seek-beyond-duration.html
  62. /media-source/mediasource-seek-during-pending-seek.html
  63. /media-source/mediasource-seekable.html
  64. /media-source/mediasource-sequencemode-append-buffer.html
  65. /media-source/mediasource-sourcebuffer-mode-timestamps.html
  66. /media-source/mediasource-sourcebuffer-mode.html
  67. /media-source/mediasource-sourcebuffer-trackdefaults.html
  68. /media-source/mediasource-sourcebufferlist.html
  69. /media-source/mediasource-timestamp-offset.html
  70. /media-source/mediasource-trackdefault.html
  71. /media-source/mediasource-trackdefaultlist.html
  72. /media-source/mse-for-webcodecs/tentative/mediasource-webcodecs-addsourcebuffer.html
  73. /media-source/mse-for-webcodecs/tentative/mediasource-webcodecs-appendencodedchunks-play.html
Test Show/Hide MessagesFF71
/media-source/SourceBuffer-abort-readyState.htmlTIMEOUT
undefinedTIMEOUT
/media-source/SourceBuffer-abort-removed.htmlOK
SourceBuffer#abort (video/mp4) : if this object has been removed from the sourceBuffers attribute of the parent media source, then throw an INVALID_STATE_ERR exception and abort these steps.PASS
SourceBuffer#abort (video/webm; codecs="vorbis,vp8") : if this object has been removed from the sourceBuffers attribute of the parent media source, then throw an INVALID_STATE_ERR exception and abort these steps.PASS
/media-source/SourceBuffer-abort-updating.htmlTIMEOUT
SourceBuffer#abort() (video/mp4) : Check the algorithm when the updating attribute is true.TIMEOUT
FF71: Test timed out
SourceBuffer#abort() (video/webm; codecs="vorbis,vp8") : Check the algorithm when the updating attribute is true.TIMEOUT
FF71: Test timed out
/media-source/SourceBuffer-abort.htmlOK
SourceBuffer#abort() (video/mp4): Check the values of appendWindowStart and appendWindowEnd.PASS
SourceBuffer#abort() (video/webm; codecs="vorbis,vp8"): Check the values of appendWindowStart and appendWindowEnd.PASS
/media-source/URL-createObjectURL-null.htmlOK
URL.createObjectURL(null)PASS
/media-source/URL-createObjectURL-revoke.htmlOK
Check auto-revoking behavior with URL.createObjectURL(MediaSource).PASS
Check referenced MediaSource can open after URL.revokeObjectURL(url).PASS
Check revoking behavior of URL.revokeObjectURL(url).PASS
/media-source/URL-createObjectURL.htmlOK
URL.createObjectURL(mediaSource) should return a unique Blob URI.PASS
/media-source/dedicated-worker/mediasource-worker-detach-element.htmlOK
Test element detachment from worker MediaSource after at least 0 main thread setTimeouts, starting counting after receiving Finished Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 0 main thread setTimeouts, starting counting after receiving Started Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 0 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 1 main thread setTimeouts, starting counting after receiving Finished Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 1 main thread setTimeouts, starting counting after receiving Started Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 1 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 2 main thread setTimeouts, starting counting after receiving Finished Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 2 main thread setTimeouts, starting counting after receiving Started Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 2 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 3 main thread setTimeouts, starting counting after receiving Finished Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 3 main thread setTimeouts, starting counting after receiving Started Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 3 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 4 main thread setTimeouts, starting counting after receiving Finished Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 4 main thread setTimeouts, starting counting after receiving Started Buffering message from workerFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test element detachment from worker MediaSource after at least 4 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
/media-source/dedicated-worker/mediasource-worker-objecturl.htmlOK
MediaSource construction in DedicatedWorker context must fail if Window context did not claim MSE supported in DedicatedWorkerPASS
Test main context revocation of DedicatedWorker MediaSource object URLFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
/media-source/dedicated-worker/mediasource-worker-play-terminate-worker.htmlOK
Test worker MediaSource termination after at least 0 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 0 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 0 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 1 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 1 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 1 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 2 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 2 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 2 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 3 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 3 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 3 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 4 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 4 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 4 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 5 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 5 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 5 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 6 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 6 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 6 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 7 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 7 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 7 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 8 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 8 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 8 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 9 main thread setTimeouts, starting counting after first ended eventFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 9 main thread setTimeouts, starting counting after setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
Test worker MediaSource termination after at least 9 main thread setTimeouts, starting counting before setting srcFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
/media-source/dedicated-worker/mediasource-worker-play.htmlOK
Test worker MediaSource construction, attachment, buffering and basic playbackFAIL
FF71: assert_true: MediaSource hasOwnProperty 'canConstructInDedicatedWorker' expected true got false
/media-source/mediasource-activesourcebuffers.htmlOK
Active SourceBuffers list ignores changes to selected audio/video tracks that do not affect the activation of the SourceBuffer.FAIL
FF71: object is undefined
Active SourceBuffers list reflects changes to selected audio/video tracks associated with separate SourceBuffers.FAIL
FF71: object is undefined
Active SourceBuffers must appear in the same order as they appear in the sourceBuffers attribute: audio is first sourceBuffer, audio media appended firstPASS
Active SourceBuffers must appear in the same order as they appear in the sourceBuffers attribute: audio is first sourceBuffer, video media appended firstPASS
Active SourceBuffers must appear in the same order as they appear in the sourceBuffers attribute: video is first sourceBuffer, audio media appended firstPASS
Active SourceBuffers must appear in the same order as they appear in the sourceBuffers attribute: video is first sourceBuffer, video media appended firstPASS
SourceBuffer added to activeSourceBuffers list when its only audio track gets loaded (and thus becomes enabled).PASS
SourceBuffer added to activeSourceBuffers list when its only video track gets loaded (and thus becomes selected).PASS
/media-source/mediasource-addsourcebuffer-mode.htmlOK
addSourceBuffer() sets SourceBuffer.mode to 'segments' when the generate timestamps flag is falsePASS
addSourceBuffer() sets SourceBuffer.mode to 'sequence' when the generate timestamps flag is trueFAIL
FF71: assert_unreached: Browser does not support the audio/aac and audio/mpeg MIME types used in this test Reached unreachable code
/media-source/mediasource-addsourcebuffer.htmlOK
Test addSourceBuffer() audio onlyPASS
Test addSourceBuffer() in 'ended' state.PASS
Test addSourceBuffer() video onlyPASS
Test addSourceBuffer() with AAC and H.264PASS
Test addSourceBuffer() with AAC and H.264 in separate SourceBuffersPASS
Test addSourceBuffer() with Vorbis and VP8PASS
Test addSourceBuffer() with Vorbis and VP8 in separate SourceBuffersPASS
Test addSourceBuffer() with empty typeFAIL
FF71: assert_throws_js: addSourceBuffer() threw an exception when passed an empty string. function "function() { mediaSource.addSourceBuffer(""); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test addSourceBuffer() with nullPASS
Test addSourceBuffer() with unsupported typePASS
/media-source/mediasource-append-buffer.htmlOK
Test MediaSource.endOfStream() during a pending appendBuffer() for one of its SourceBuffers.PASS
Test MediaSource.removeSourceBuffer() call during a pending appendBuffer().PASS
Test SourceBuffer.abort() call during a pending appendBuffer().PASS
Test SourceBuffer.appendBuffer() call during a pending appendBuffer().PASS
Test SourceBuffer.appendBuffer() event dispatching.PASS
Test SourceBuffer.appendBuffer() triggering an 'ended' to 'open' transition.PASS
Test abort after appendBuffer update ends.PASS
Test abort after readyState is ended following init segment and media segment.PASS
Test abort after removing sourcebuffer.PASS
Test abort in the middle of an initialization segment.PASS
Test appendBuffer events order.FAIL
FF71: assert_true: expected true got false
Test appendBuffer with partial init segments.PASS
Test appendBuffer with partial media segments.PASS
Test appending a neutered ArrayBuffer.PASS
Test appending a neutered ArrayBufferView.PASS
Test appending after removeSourceBuffer().PASS
Test appending an empty ArrayBuffer.PASS
Test appending an empty ArrayBufferView.PASS
Test appending null.PASS
Test set MediaSource.duration during a pending appendBuffer() for one of its SourceBuffers.PASS
Test set SourceBuffer.timestampOffset during a pending appendBuffer().PASS
Test slow appending does not trigger stalled events.PASS
Test zero byte SourceBuffer.appendBuffer() call triggering an 'ended' to 'open' transition.PASS
/media-source/mediasource-appendbuffer-quota-exceeded.htmlOK
Appending data repeatedly should fill up the buffer and throw a QuotaExceededError when buffer is full.PASS
/media-source/mediasource-appendwindow.htmlOK
Test appendWindowStart and appendWindowEnd value after a sourceBuffer.abort().PASS
Test appendwindow throw error when mediasource object is not associated with a sourebuffer.PASS
Test correctly reset appendWindowStart and appendWindowEnd valuesPASS
Test read appendWindowStart and appendWindowEnd initial values.PASS
Test set appendWindowStart and appendWindowEnd when source buffer updating.PASS
Test set correct values to appendWindowStart and appendWindowEnd.PASS
Test set wrong values to appendWindowStart and appendWindowEnd.FAIL
FF71: assert_throws_js: set appendWindowStart throws an exception when greater than appendWindowEnd. function "function() { sourceBuffer.appendWindowStart = 600.0; }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
/media-source/mediasource-attach-stops-delaying-load-event.htmlOK
MediaSource attachment should immediately stop delaying the load eventPASS
/media-source/mediasource-avtracks.htmlOK
Check that media tracks and their properties are populated properlyFAIL
FF71: object is undefined
Media tracks must be removed when HTMLMediaElement.load() is calledFAIL
FF71: sourceBuffer.audioTracks is undefined
Media tracks must be removed when the HTMLMediaElement.src is changedFAIL
FF71: sourceBuffer.audioTracks is undefined
Media tracks must be removed when the SourceBuffer is removed from the MediaSourceFAIL
FF71: sourceBuffer.audioTracks is undefined
/media-source/mediasource-buffered.htmlOK
Demuxed content with an empty buffered range on one SourceBufferPASS
Demuxed content with different lengthsPASS
Get buffered range after removing sourcebuffer.PASS
Get buffered range when only init segment is appended.PASS
Get buffered range when sourcebuffer is empty.PASS
Muxed content empty buffered ranges.PASS
Muxed content with different lengthsPASS
/media-source/mediasource-changetype-play-implicit.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-changetype-play-negative.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-changetype-play-without-codecs-parameter.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-changetype-play.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-changetype.htmlOK
Test changeType after SourceBuffer removed from mediaSource.PASS
Test changeType retains previous mode when changing to type that doesn't generate timestampsPASS
Test changeType sets mode to sequence for change to type that generates timestampsFAIL
FF71: assert_true: No bytestream that generates timestamps is supported, aborting test expected true got false
Test changeType transitioning readyState from 'ended' to 'open'.PASS
Test changeType while update pending.PASS
Test changeType with an empty type.FAIL
FF71: assert_throws_js: changeType function "function() { sourceBuffer.changeType(""); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test changeType with null type.PASS
Test changeType with unsupported type.PASS
/media-source/mediasource-closed.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-mp4-a-bitrate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-mp4-av-audio-bitrate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-mp4-av-framesize.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-mp4-av-video-bitrate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-mp4-v-bitrate.htmlOK
Tests mp4 video-only bitrate changes.PASS
/media-source/mediasource-config-change-mp4-v-framerate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-mp4-v-framesize.htmlOK
Tests mp4 video-only frame size changes.PASS
/media-source/mediasource-config-change-webm-a-bitrate.htmlERROR
Tests webm audio-only bitrate changes.TIMEOUT
FF71: Test timed out
/media-source/mediasource-config-change-webm-av-audio-bitrate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-webm-av-framesize.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-webm-av-video-bitrate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-webm-v-bitrate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-webm-v-framerate.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-config-change-webm-v-framesize.htmlOK
Tests webm video-only frame size changes.PASS
/media-source/mediasource-correct-frames-after-reappend.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-correct-frames.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-detach.htmlOK
Test media.load() after appending data will trigger MediaSource detaching from a media element.FAIL
FF71: assert_equals: readyState is "closed" expected "closed" but got "open"
Test media.load() before appending data will trigger MediaSource detaching from a media element.FAIL
FF71: assert_equals: readyState is "closed" expected "closed" but got "open"
/media-source/mediasource-duration-boundaryconditions.htmlOK
Set duration to 1PASS
Set duration to 2^31 - 1PASS
Set duration to NaNFAIL
FF71: assert_throws_js: mediaSource.duration assignment throws an exception for NaN function "function() { mediaSource.duration = testDurationValue; }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Set duration to Number.MAX_VALUEPASS
Set duration to Number.MAX_VALUE - 1PASS
Set duration to Number.MIN_VALUEPASS
Set duration to Number.MIN_VALUE - 1FAIL
FF71: assert_throws_js: mediaSource.duration assignment throws an exception for -1 function "function() { mediaSource.duration = testDurationValue; }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Set duration to Number.NEGATIVE_INFINITYFAIL
FF71: assert_throws_js: mediaSource.duration assignment throws an exception for -Infinity function "function() { mediaSource.duration = testDurationValue; }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Set duration to Number.POSITIVE_INFINITYPASS
Set duration to a negative double.FAIL
FF71: assert_throws_js: mediaSource.duration assignment throws an exception for -101.9 function "function() { mediaSource.duration = testDurationValue; }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Set duration to a positive double.PASS
Set duration to lowest value.FAIL
FF71: assert_throws_js: mediaSource.duration assignment throws an exception for -1.7976931348623157e+308 function "function() { mediaSource.duration = testDurationValue; }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Set duration to zeroPASS
/media-source/mediasource-duration.htmlERROR
Increasing the duration does not trigger any SourceBuffer updatePASS
Increasing the duration during media playback does not trigger any SourceBuffer updatePASS
Test appendBuffer completes previous seek to truncated durationTIMEOUT
FF71: Test timed out
Test endOfStream completes previous seek to truncated durationTIMEOUT
FF71: Test timed out
Test seek starts on duration truncation below currentTimeTIMEOUT
FF71: Test timed out
Test setting same duration multiple times does not fire duplicate durationchangeTIMEOUT
FF71: Test timed out
Test setting the duration to less than the highest starting presentation timestamp will throwPASS
Truncating the duration throws an InvalidStateError exception when new duration is less than a buffered coded frame presentation timePASS
Truncating the duration throws an InvalidStateError exception when new duration is less than the highest buffered range start time of one of the track buffersPASS
/media-source/mediasource-endofstream-invaliderror.htmlOK
Test MediaSource.endOfStream() with invalid empty error string.PASS
Test MediaSource.endOfStream() with invalid non-empty error string.PASS
Test MediaSource.endOfStream() with invalid null error parameter.PASS
/media-source/mediasource-endofstream.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-errors.htmlOK
Appending media segment before the first initialization segment.PASS
Signaling 'decode' error via endOfStream() after initialization segment has been appended and the HTMLMediaElement has reached HAVE_METADATA.PASS
Signaling 'decode' error via endOfStream() before initialization segment has been appended.PASS
Signaling 'decode' error via segment parser loop algorithm after initialization segment has been appended.PASS
Signaling 'decode' error via segment parser loop algorithm of append containing init plus corrupted media segment.PASS
Signaling 'network' error via endOfStream() after initialization segment has been appended and the HTMLMediaElement has reached HAVE_METADATA.PASS
Signaling 'network' error via endOfStream() before initialization segment has been appended.PASS
/media-source/mediasource-getvideoplaybackquality.htmlOK
Test HTMLVideoElement.getVideoPlaybackQuality() with MediaSource APIFAIL
FF71: assert_unreached: Unexpected promise rejection Reached unreachable code
/media-source/mediasource-invalid-codec.htmlOK
Test a WebM with an invalid codec results in an error.PASS
Test an MP4 with an invalid codec results in an error.PASS
/media-source/mediasource-is-type-supported.htmlOK
Test invalid MIME format ""PASS
Test invalid MIME format "audio/webm;aaacodecsbbb=opus"FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "null"PASS
Test invalid MIME format "unsupported_mediatype"PASS
Test invalid MIME format "video"PASS
Test invalid MIME format "video/"PASS
Test invalid MIME format "video/webm"FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "video/webm;"FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "video/webm;codecs"FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "video/webm;codecs="FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "video/webm;codecs=""FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "video/webm;codecs="""FAIL
FF71: assert_equals: supported expected false but got true
Test invalid MIME format "video/webm;codecs=",""PASS
Test invalid MSE MIME media type "image/jpeg"PASS
Test invalid MSE MIME media type "text/html"PASS
Test invalid MSE MIME media type "xxx"PASS
Test invalid codec ID "audio/mp4;codecs="mp4a""PASS
Test invalid codec ID "audio/mp4;codecs="mp4a.40""PASS
Test invalid codec ID "audio/mp4;codecs="mp4a.40.""PASS
Test invalid codec ID "audio/mp4;codecs="mp4a.67.3""PASS
Test invalid inclusion of codecs parameter for mpeg audio types "audio/aac;codecs="aac""PASS
Test invalid inclusion of codecs parameter for mpeg audio types "audio/aac;codecs="adts""PASS
Test invalid inclusion of codecs parameter for mpeg audio types "audio/aac;codecs="mp4a.40""PASS
Test invalid inclusion of codecs parameter for mpeg audio types "audio/mpeg;codecs="mp3""PASS
Test invalid inclusion of codecs parameter for mpeg audio types "audio/mpeg;codecs="mp4a.69""PASS
Test invalid inclusion of codecs parameter for mpeg audio types "audio/mpeg;codecs="mp4a.6B""PASS
Test invalid mismatch between MIME type and codec ID "audio/mp4;codecs="avc1.4d001e""PASS
Test invalid mismatch between MIME type and codec ID "audio/mp4;codecs="vorbis""PASS
Test invalid mismatch between MIME type and codec ID "audio/webm;codecs="mp4a.40.2""PASS
Test invalid mismatch between MIME type and codec ID "audio/webm;codecs="vp8""PASS
Test invalid mismatch between MIME type and codec ID "video/mp4;codecs="vorbis""PASS
Test invalid mismatch between MIME type and codec ID "video/mp4;codecs="vp8""PASS
Test invalid mismatch between MIME type and codec ID "video/webm;codecs="mp4a.40.2""PASS
Test valid MP4 type "audio/mp4;codecs="mp4a.40.2""PASS
Test valid MP4 type "audio/mp4;codecs="mp4a.40.5""PASS
Test valid MP4 type "audio/mp4;codecs="mp4a.67""PASS
Test valid MP4 type "audio/mp4;codecs="opus""PASS
Test valid MP4 type "video/mp4;codecs="avc1.42001e""PASS
Test valid MP4 type "video/mp4;codecs="avc1.4d001e""PASS
Test valid MP4 type "video/mp4;codecs="avc1.4d001e,mp4a.40.2""PASS
Test valid MP4 type "video/mp4;codecs="avc1.4d001e,mp4a.40.5""PASS
Test valid MP4 type "video/mp4;codecs="mp4a.40.2 , avc1.4d001e ""PASS
Test valid MP4 type "video/mp4;codecs="mp4a.40.2""PASS
Test valid MP4 type "video/mp4;codecs="opus""PASS
Test valid WebM type "AUDIO/WEBM;CODECS="vorbis""PASS
Test valid WebM type "audio/webm;codecs="opus""PASS
Test valid WebM type "audio/webm;codecs="vorbis""PASS
Test valid WebM type "audio/webm;codecs=vorbis;test="6""PASS
Test valid WebM type "video/webm;codecs="opus""PASS
Test valid WebM type "video/webm;codecs="vorbis""PASS
Test valid WebM type "video/webm;codecs="vorbis, vp8""PASS
Test valid WebM type "video/webm;codecs="vp8""PASS
Test valid WebM type "video/webm;codecs="vp8,vorbis""PASS
/media-source/mediasource-liveseekable.htmlOK
HTMLMediaElement.seekable returns the live seekable range or an empty range if that range was cleared when nothing is bufferedPASS
HTMLMediaElement.seekable returns the union of the buffered range and the live seekable range, when setPASS
clearLiveSeekableRange does not restrict to not currently updatingPASS
clearLiveSeekableRange returns with no error when conditions are correctPASS
clearLiveSeekableRange throws an InvalidStateError exception if the readyState attribute is not 'open'PASS
setLiveSeekableRange does not restrict to not currently updatingPASS
setLiveSeekableRange returns with no error when conditions are correctPASS
setLiveSeekableRange throws a TypeError if start is greater than endFAIL
FF71: assert_throws_js: function "function() { mediaSource.setLiveSeekableRange(2, 1); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
setLiveSeekableRange throws a TypeError if start is negativeFAIL
FF71: assert_throws_js: function "function() { mediaSource.setLiveSeekableRange(-1, 1); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
setLiveSeekableRange throws an InvalidStateError exception if the readyState attribute is not 'open'PASS
/media-source/mediasource-multiple-attach.htmlOK
Test exactly one succeeds when two MediaElements attach to same MediaSourcePASS
Test that MediaSource can reattach if closed firstPASS
/media-source/mediasource-play-then-seek-back.htmlERROR
Test playing then seeking back.TIMEOUT
FF71: Test timed out
/media-source/mediasource-play.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-preload.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-redundant-seek.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-remove.htmlOK
Test aborting a remove operation.PASS
Test remove after SourceBuffer removed from mediaSource.PASS
Test remove transitioning readyState from 'ended' to 'open'.PASS
Test remove while update pending.PASS
Test remove with a NEGATIVE_INFINITY end.FAIL
FF71: assert_throws_js: remove function "function() { sourceBuffer.remove(0, Number.NEGATIVE_INFINITY); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test remove with a NaN duration.FAIL
FF71: assert_throws_js: remove function "function() { sourceBuffer.remove(0, 0); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test remove with a NaN end.FAIL
FF71: assert_throws_js: remove function "function() { sourceBuffer.remove(0, Number.NaN); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test remove with a start at the duration.PASS
Test remove with a start beyond the duration.FAIL
FF71: assert_throws_js: remove function "function() { sourceBuffer.remove(11, 12); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test remove with a start larger than the end.FAIL
FF71: assert_throws_js: remove function "function() { sourceBuffer.remove(2, 1); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test remove with an negative start.FAIL
FF71: assert_throws_js: remove function "function() { sourceBuffer.remove(-1, 2); }" threw object "TypeError: The expression cannot be converted to return the specified type." ("TypeError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test remove with non-finite start.PASS
Test removing all appended data.PASS
Test removing beginning of appended data.PASS
Test removing the end of appended data.PASS
Test removing the middle of appended data.PASS
/media-source/mediasource-removesourcebuffer.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-replay.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-seek-beyond-duration.htmlERROR
Test seeking beyond media duration.TIMEOUT
FF71: Test timed out
Test seeking beyond updated media duration.TIMEOUT
FF71: Test timed out
/media-source/mediasource-seek-during-pending-seek.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-seekable.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-sequencemode-append-buffer.htmlOK
Test sequence AppendMode appendBuffer(first media segment)PASS
Test sequence AppendMode appendBuffer(second media segment)PASS
Test sequence AppendMode appendBuffer(second media segment, then first media segment)FAIL
FF71: assert_equals: sourceBuffer.buffered after EOS expected "{ [0.014, 1.711) }" but got "{ [0.014, 0.814) [0.909, 1.711) }"
/media-source/mediasource-sourcebuffer-mode-timestamps.htmlTIMEOUT
undefinedTIMEOUT
/media-source/mediasource-sourcebuffer-mode.htmlOK
Test initial value of SourceBuffer.mode is "segments"PASS
Test setting SourceBuffer.modePASS
Test setting SourceBuffer.mode and SourceBuffer.timestampOffset while parsing media segment.PASS
Test setting SourceBuffer.mode triggers parent MediaSource 'ended' to 'open' transition.PASS
Test setting SourceBuffer.mode while still updatingPASS
Test setting a removed SourceBuffer's modePASS
/media-source/mediasource-sourcebuffer-trackdefaults.htmlOK
Test round-trip of empty SourceBuffer.trackDefaultsFAIL
FF71: assert_array_equals: Empty initial SourceBuffer.trackDefaults value is undefined, expected array
Test round-trip of non-empty SourceBuffer.trackDefaultsFAIL
FF71: assert_array_equals: Empty initial SourceBuffer.trackDefaults value is undefined, expected array
Test setting null SourceBuffer.trackDefaultsFAIL
FF71: assert_array_equals: Empty initial SourceBuffer.trackDefaults value is undefined, expected array
Test setting trackDefaults on a SourceBuffer that is updatingFAIL
FF71: assert_array_equals: Empty initial SourceBuffer.trackDefaults value is undefined, expected array
Test setting trackDefaults on an already-removed SourceBufferFAIL
FF71: assert_array_equals: Empty initial SourceBuffer.trackDefaults value is undefined, expected array
/media-source/mediasource-sourcebufferlist.htmlOK
Test SourceBufferList event dispatching.PASS
Test SourceBufferList getter methodPASS
Test that only 1 removesourcebuffer event fires on each SourceBufferList when the MediaSource closes.PASS
/media-source/mediasource-timestamp-offset.htmlOK
Test getting the initial value of timestampOffset.PASS
Test setting SourceBuffer.timestampOffset to NaN.PASS
Test setting SourceBuffer.timestampOffset to a negative number.PASS
Test setting SourceBuffer.timestampOffset to a number string.PASS
Test setting SourceBuffer.timestampOffset to a positive number.PASS
Test setting SourceBuffer.timestampOffset to an empty string.PASS
Test setting SourceBuffer.timestampOffset to false.PASS
Test setting SourceBuffer.timestampOffset to negative infinity.PASS
Test setting SourceBuffer.timestampOffset to null.PASS
Test setting SourceBuffer.timestampOffset to positive infinity.PASS
Test setting SourceBuffer.timestampOffset to true.PASS
Test setting SourceBuffer.timestampOffset to undefined.PASS
Test setting SourceBuffer.timestampOffset to zero.PASS
Test setting timestampOffset in 'ended' state causes a transition to 'open'.PASS
Test setting timestampoffset after removing the sourcebuffer.PASS
/media-source/mediasource-trackdefault.htmlOK
Test invalid 'kinds' parameter type passed to TrackDefault constructorFAIL
FF71: assert_throws_js: TrackDefault construction threw an exception function "function() { new TrackDefault(type, language, label, kinds, byteStreamTrackID); }" threw object "ReferenceError: TrackDefault is not defined" ("ReferenceError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test invalid 'type' parameter type passed to TrackDefault constructor: type 'invalid type', language 'en-US', label 'label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: assert_throws_js: TrackDefault construction threw an exception function "function() { new TrackDefault(type, language, label, kinds, byteStreamTrackID); }" threw object "ReferenceError: TrackDefault is not defined" ("ReferenceError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test mixed valid and invalid audio kinds: type 'audio', language 'en-US', label 'audio label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: assert_throws_js: TrackDefault construction threw an exception function "function() { new TrackDefault(type, language, label, kinds, byteStreamTrackID); }" threw object "ReferenceError: TrackDefault is not defined" ("ReferenceError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test mixed valid and invalid text kinds: type 'text', language 'en-US', label 'text label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: assert_throws_js: TrackDefault construction threw an exception function "function() { new TrackDefault(type, language, label, kinds, byteStreamTrackID); }" threw object "ReferenceError: TrackDefault is not defined" ("ReferenceError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test mixed valid and invalid video kinds: type 'video', language 'en-US', label 'video label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: assert_throws_js: TrackDefault construction threw an exception function "function() { new TrackDefault(type, language, label, kinds, byteStreamTrackID); }" threw object "ReferenceError: TrackDefault is not defined" ("ReferenceError") expected instance of function "function TypeError() { [native code] }" ("TypeError")
Test updating the retval of TrackDefault.kinds does not modify TrackDefault.kindsFAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind '', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind 'alternative', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind 'commentary', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind 'descriptions', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind 'main', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind 'main-desc', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', kind 'translation', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid audio kinds: type 'audio', language 'en-US', label 'audio label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid text kinds: type 'text', language 'en-US', label 'text label', kind 'captions', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid text kinds: type 'text', language 'en-US', label 'text label', kind 'chapters', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid text kinds: type 'text', language 'en-US', label 'text label', kind 'descriptions', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid text kinds: type 'text', language 'en-US', label 'text label', kind 'metadata', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid text kinds: type 'text', language 'en-US', label 'text label', kind 'subtitles', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid text kinds: type 'text', language 'en-US', label 'text label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind '', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind 'alternative', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind 'captions', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind 'commentary', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind 'main', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind 'sign', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', kind 'subtitles', byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
Test valid video kinds: type 'video', language 'en-US', label 'video label', multiple kinds, byteStreamTrackID '1'FAIL
FF71: TrackDefault is not defined
/media-source/mediasource-trackdefaultlist.htmlOK
Test empty track default list construction with and without optional trackDefaults parameterFAIL
FF71: TrackDefaultList is not defined
Test track default list construction, length, and indexed property getterFAIL
FF71: TrackDefault is not defined
/media-source/mse-for-webcodecs/tentative/mediasource-webcodecs-addsourcebuffer.htmlERROR
/media-source/mse-for-webcodecs/tentative/mediasource-webcodecs-addsourcebuffer.htmlERROR
/media-source/mse-for-webcodecs/tentative/mediasource-webcodecs-appendencodedchunks-play.htmlERROR
/media-source/mse-for-webcodecs/tentative/mediasource-webcodecs-appendencodedchunks-play.htmlERROR