Here is a testcase, with a server in node (`node server-mimetype.js` + open `localhost:8888`), a sample HTML page showing a bunch of test cases, and a sample mp4 file. Here is a breakdown of the results. It's not that bad, but there are some inconsistencies. Direct refers to directly opening the URL in a tab, whereas element is loading it in a regular document in a `<video>` tag. |testcase \ browser |Chrome |Safari |Firefox Nightly |Firefox + 1704115 | |------------------------------------------|--------------|--------|------------------------|------------------------| |direct |Plays |Plays |Plays |Plays | |direct + nosniff + no content-type |Plays |Download|Download |Plays | |direct + nosniff + empty content-type |Render as text|Download|Download |Plays | |direct + nosniff + correct content-type |Plays |Plays |Plays |Plays | |direct + incorrect content-type |Stall |Plays |Displays sad player icon|Plays| |direct + nosniff + incorrect content-type |Plays |Plays |Displays sad player icon|Displays sad player icon| |element + nosniff + no content-type |Plays |Plays |Plays |Plays | |element + nosniff + empty content-type |Plays |Plays |Plays |Plays | |element + nosniff + correct content-type |Plays |Plays |Plays |Plays | |element + nosniff + incorrect content-type|Plays |Plays |Plays |Plays | We can fix the remaining "Sad player icon" if we want, but otherwise it's not bad I think?
Bug 1704115 Comment 10 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Here is a testcase, with a server in node (`node server-mimetype.js` + open `localhost:8888`), a sample HTML page showing a bunch of test cases, and a sample mp4 file. Here is a breakdown of the results. It's not that bad, but there are some inconsistencies. Direct refers to directly opening the URL in a tab, whereas element is loading it in a regular document in a `<video>` tag. |testcase \ browser |Chrome |Safari |Firefox Nightly |Firefox + 1704115 | |------------------------------------------|--------------|--------|------------------------|------------------------| |direct |Plays |Plays |Plays |Plays | |direct + nosniff + no content-type |Plays |Download|Download |Plays | |direct + nosniff + empty content-type |Render as text|Download|Download |Plays | |direct + nosniff + correct content-type |Plays |Plays |Plays |Plays | |direct + incorrect content-type |Stall |Plays |Displays sad player icon|Plays| |direct + nosniff + incorrect content-type |Plays |Plays |Displays sad player icon|Displays sad player icon| |element + no wrong content-type |Plays |Plays |Plays |Plays | |element + nosniff + no content-type |Plays |Plays |Plays |Plays | |element + nosniff + empty content-type |Plays |Plays |Plays |Plays | |element + nosniff + correct content-type |Plays |Plays |Plays |Plays | |element + nosniff + incorrect content-type|Plays |Plays |Plays |Plays | We can fix the remaining "Sad player icon" if we want, but otherwise it's not bad I think?
Here is a testcase, with a server in node (`node server-mimetype.js` + open `localhost:8888`), a sample HTML page showing a bunch of test cases, and a sample mp4 file. Here is a breakdown of the results. It's not that bad, but there are some inconsistencies. Direct refers to directly opening the URL in a tab, whereas element is loading it in a regular document in a `<video>` tag. |testcase \ browser |Chrome |Safari |Firefox Nightly |Firefox + 1704115 | |------------------------------------------|--------------|--------|------------------------|------------------------| |direct |Plays |Plays |Plays |Plays | |direct + nosniff + no content-type |Plays |Download|Download |Plays | |direct + nosniff + empty content-type |Render as text|Download|Download |Plays | |direct + nosniff + correct content-type |Plays |Plays |Plays |Plays | |direct + incorrect content-type |Stall |Plays |Displays sad player icon|Plays| |direct + nosniff + incorrect content-type |Plays |Plays |Displays sad player icon|Displays sad player icon| |element + wrong content-type |Plays |Plays |Plays |Plays | |element + nosniff + no content-type |Plays |Plays |Plays |Plays | |element + nosniff + empty content-type |Plays |Plays |Plays |Plays | |element + nosniff + correct content-type |Plays |Plays |Plays |Plays | |element + nosniff + incorrect content-type|Plays |Plays |Plays |Plays | We can fix the remaining "Sad player icon" if we want, but otherwise it's not bad I think?
Here is a testcase, with a server in node (`node server-mimetype.js` + open `localhost:8888`), a sample HTML page showing a bunch of test cases, and a sample mp4 file. Here is a breakdown of the results. It's not that bad, but there are some inconsistencies. Direct refers to directly opening the URL in a tab, whereas element is loading it in a regular document in a `<video>` tag. |testcase \ browser |Chrome |Safari |Firefox Nightly |Firefox + 1704115 | |------------------------------------------|--------------|--------|------------------------|------------------------| |direct |Plays |Plays |Plays |Plays | |direct + nosniff + no content-type |Plays |Download|Download |Plays | |direct + nosniff + empty content-type |Render as text|Download|Download |Plays | |direct + nosniff + correct content-type |Plays |Plays |Plays |Plays | |direct + incorrect content-type |Stall |Plays |Displays sad player icon|Plays| |direct + nosniff + incorrect content-type |Plays |Plays |Displays sad player icon|Displays sad player icon| |element + wrong content-type |Plays |Plays |Plays |Plays | |element + nosniff + no content-type |Plays |Plays |Plays |Plays | |element + nosniff + empty content-type |Plays |Plays |Plays |Plays | |element + nosniff + correct content-type |Plays |Plays |Plays |Plays | |element + nosniff + incorrect content-type|Plays |Plays |Plays |Plays | |||||| |element + nosniff + correct content-type |Plays |Plays |Plays |Plays | |element + nosniff + incorrect content-type|Plays |Plays |Plays |Plays | |direct + nosniff + bogus content-type |Renders as text |Downloads |Downloads |Plays | |direct + bogus content-type|Downloads |Plays |Plays |Plays | We can fix the remaining "Sad player icon" if we want, but otherwise it's not bad I think?