| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <script src=../resources/testharness.js></script> | 2 <script src=../resources/testharness.js></script> |
| 3 <script src=../resources/testharnessreport.js></script> | 3 <script src=../resources/testharnessreport.js></script> |
| 4 <script> | 4 <script> |
| 5 | 5 |
| 6 // Check navigator.mediaCapabilities.encodingInfo() with some MIME types that | 6 // Check navigator.mediaCapabilities.encodingInfo() with some MIME types that |
| 7 // should be recordable and a few that shouldn't. | 7 // should be recordable and a few that shouldn't. |
| 8 | 8 |
| 9 var createTestForContentType = function(mimeType, isSupported = true) { | 9 var createTestForContentType = function(mimeType, isSupported = true) { |
| 10 async_test(function(t) { | 10 async_test(function(t) { |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 queryParameters = {type : 'record', audio : {contentType : mimeType}}; | 25 queryParameters = {type : 'record', audio : {contentType : mimeType}}; |
| 26 } else { | 26 } else { |
| 27 assert_unreached('Unsupported media type'); | 27 assert_unreached('Unsupported media type'); |
| 28 } | 28 } |
| 29 | 29 |
| 30 navigator.mediaCapabilities.encodingInfo(queryParameters) | 30 navigator.mediaCapabilities.encodingInfo(queryParameters) |
| 31 .then((result) => { | 31 .then((result) => { |
| 32 assert_equals(isSupported, result.supported, mimeType + 'supported?'); | 32 assert_equals(isSupported, result.supported, mimeType + 'supported?'); |
| 33 t.done(); | 33 t.done(); |
| 34 }) | 34 }) |
| 35 .catch(() => { | 35 .catch(e => { |
| 36 assert_unreached('encodingInfo() ' + mimeType); | 36 assert_unreached('encodingInfo() failed with ' + e + |
| 37 ' using mimeType ' + mimeType); |
| 38 t.done(); |
| 37 }); | 39 }); |
| 38 }); | 40 }); |
| 39 }; | 41 }; |
| 40 | 42 |
| 41 generate_tests(createTestForContentType, [ | 43 generate_tests(createTestForContentType, [ |
| 42 [ 'video/webm', 'video/webm' ], | 44 [ 'video/webm', 'video/webm' ], |
| 43 [ 'video/webm;codecs=vp8', 'video/webm;codecs=vp8' ], | 45 [ 'video/webm;codecs=vp8', 'video/webm;codecs=vp8' ], |
| 44 [ 'video/webm;codecs=vp9', 'video/webm;codecs=vp9' ], | 46 [ 'video/webm;codecs=vp9', 'video/webm;codecs=vp9' ], |
| 45 [ 'video/webm;codecs=VP8.0', 'video/webm;codecs=vp8.0' ], | 47 [ 'video/webm;codecs=VP8.0', 'video/webm;codecs=vp8.0' ], |
| 46 [ 'video/webm;codecs=vp9.0', 'video/webm;codecs=vp9.0' ], | 48 [ 'video/webm;codecs=vp9.0', 'video/webm;codecs=vp9.0' ], |
| 47 [ 'video/webm;codecs=h264', 'video/webm;codecs=h264' ], | 49 [ 'video/webm;codecs=h264', 'video/webm;codecs=h264' ], |
| 48 [ 'video/webm;codecs=H264', 'video/webm;codecs=H264' ], | 50 [ 'video/webm;codecs=H264', 'video/webm;codecs=H264' ], |
| 49 [ 'video/webm;codecs=avc1', 'video/webm;codecs=avc1' ], | 51 [ 'video/webm;codecs=avc1', 'video/webm;codecs=avc1' ], |
| 50 // 'video/webm' supports audio codec specification, see | 52 // 'video/webm' supports audio codec specification, see |
| 51 // http://www.webmproject.org/docs/container/ | 53 // http://www.webmproject.org/docs/container/ |
| 52 [ 'video/webm;codecs=vp8,opus', 'video/webm;codecs=vp8,opus' ], | 54 [ 'video/webm;codecs="vp8,opus"', 'video/webm;codecs="vp8,opus"' ], |
| 53 [ 'video/WEBM;codecs=VP8,OPUS', 'video/WEBM;codecs=VP8,OPUS' ], | 55 [ 'video/WEBM;codecs="VP8,OPUS"', 'video/WEBM;codecs="VP8,OPUS"' ], |
| 54 [ 'video/webm;codecs=vp9,opus', 'video/webm;codecs=vp9,opus' ], | 56 [ 'video/webm;codecs="vp9,opus"', 'video/webm;codecs="vp9,opus"' ], |
| 55 [ 'video/webm;codecs=vp8,vp9,opus', 'video/webm;codecs=vp8,vp9,opus' ], | 57 [ 'video/webm;codecs="vp8,vp9,opus"', 'video/webm;codecs="vp8,vp9,opus"' ], |
| 56 [ 'video/webm;codecs=h264,opus', 'video/webm;codecs=h264,opus' ], | 58 [ 'video/webm;codecs="h264,opus"', 'video/webm;codecs="h264,opus"' ], |
| 57 [ 'video/webm;codecs=h264,vp9,opus', 'video/webm;codecs=h264,vp9,opus' ], | 59 [ 'video/webm;codecs="h264,vp9,opus"', 'video/webm;codecs="h264,vp9,opus"' ], |
| 58 // https://matroska.org/technical/specs/notes.html#MIME | 60 // https://matroska.org/technical/specs/notes.html#MIME |
| 59 [ 'video/x-matroska;codecs=vorbis', 'video/x-matroska;codecs=opus' ], | 61 [ 'video/x-matroska;codecs=vorbis', 'video/x-matroska;codecs=opus' ], |
| 60 [ 'audio/webm', 'audio/webm' ], | 62 [ 'audio/webm', 'audio/webm' ], |
| 61 [ 'audio/webm;codecs=opus', 'audio/webm;codecs=opus' ], | 63 [ 'audio/webm;codecs=opus', 'audio/webm;codecs=opus' ], |
| 62 | 64 |
| 63 // Rejected MIME types | 65 // Rejected MIME types |
| 64 [ 'video/invalid', 'video/invalid', false], | 66 [ 'video/invalid', 'video/invalid', false], |
| 65 [ 'video/mpeg4', 'video/mpeg4', false], | 67 [ 'video/mpeg4', 'video/mpeg4', false], |
| 66 [ 'video/webm;codecs=daala', 'video/webm;codecs=daala', false], | 68 [ 'video/webm;codecs=daala', 'video/webm;codecs=daala', false], |
| 67 [ 'audio/invalid', 'audio/invalid', false], | 69 [ 'audio/invalid', 'audio/invalid', false], |
| 68 [ 'audio/ogg', 'audio/ogg', false], | 70 [ 'audio/ogg', 'audio/ogg', false], |
| 69 [ 'audio/webm;codecs=vorbis', 'audio/webm;codecs=vorbis', false], | 71 [ 'audio/webm;codecs=vorbis', 'audio/webm;codecs=vorbis', false], |
| 70 ]); | 72 ]); |
| 71 | 73 |
| 72 </script> | 74 </script> |
| OLD | NEW |