Movies do not play in HD or above on Amazon Prime Video streaming in Firefox
Categories
(Web Compatibility :: Site Reports, defect, P2)
Tracking
(firefox131 ?)
| Tracking | Status | |
|---|---|---|
| firefox131 | --- | ? |
People
(Reporter: rbucata, Unassigned, NeedInfo)
References
()
Details
(Keywords: webcompat:needs-diagnosis, webcompat:site-report, Whiteboard: [webcompat-source:web-bugs][webcompat:needs-knowledgebase][webcompat:sightline])
User Story
platform:windows,mac,linux,android impact:annoyance configuration:general affects:all branch:release diagnosis-team:media
Attachments
(4 files)
Environment:
Operating system: Windows 11
Firefox version: Firefox 128.0
Steps to reproduce:
When playing a movie on Prime Video, such as the one linked (Batman), it says HD is not available due to the browser not complying with HDCP.
I loaded the same link in Edge and it works fine at HD or above.
This became apparent after the last Firefox update.
Expected Behavior:
HD videos are playing
Actual Behavior:
HD and above quality is not available due to "HDCP" requirements, only started since the 128 update.
Notes:
- Reproduces regardless of the status of ETP
- Reproduces in Firefox Release
- Does not reproduce in Firefox Nightly, and Chrome
Created from https://github.com/webcompat/web-bugs/issues/139236
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Please remove "in Firefox 128" from the title in case it's still broken.
Comment 2•1 year ago
|
||
the problem still continues in version 129.0.1:
https://support.mozilla.org/es/questions/1458116
| Reporter | ||
Updated•1 year ago
|
Comment 3•1 year ago
|
||
Still an issue as of Firefox version 130.0
Comment 4•1 year ago
|
||
Firefox version 128.0 through 130.0 is having this problem for me on Windows 10 (64-bit) as well.
NVIDIA control panel is reporting the GPU and both monitors are being HDCP-capable.
The only changes from when it was working, Firefox version 127.x and earlier, has just been Firefox and Windows updates.
Environment:
Name: Firefox
Version: 130.0
Build ID: 20240829075237
Distribution ID:
Update Channel: release
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:130.0) Gecko/20100101 Firefox/130.0
OS: Windows_NT 10.0 19045
GPU: GeForce RTX 4070 Ti
Driver Version: 32.0.15.5612
Updated•1 year ago
|
Updated•1 year ago
|
Comment 5•1 year ago
|
||
Hey, do you remember what build we shipped that hdcp fix for gmp?
Comment 6•1 year ago
|
||
I guess you were referring this? The change was applied to Fx126 and esr115. But the actual HDCP check method MediaKeys: getStatusForPolicy() was landed on Fx128, and it's controlled by the pref media.eme.hdcp-policy-check.enabled.
Could anyone help me check if disabling media.eme.hdcp-policy-check.enabled fixes this problem? If so, could you disable the pref, and capture a media profile by following this instruction? Thanks!
(In reply to Alastor Wu [:alwu] from comment #6)
I guess you were referring this? The change was applied to Fx126 and esr115. But the actual HDCP check method MediaKeys: getStatusForPolicy() was landed on Fx128, and it's controlled by the pref
media.eme.hdcp-policy-check.enabled.
Could anyone help me check if disabling
media.eme.hdcp-policy-check.enabledfixes this problem? If so, could you disable the pref, and capture a media profile by following this instruction? Thanks!
I just signed up to say that disabling this does indeed fix the problem for me. Here is the profile link https://share.firefox.dev/4eTX8ig
Thanks for this!
| Reporter | ||
Comment 8•1 year ago
|
||
| Reporter | ||
Comment 9•1 year ago
|
||
It seems that to view HD content, payment is needed to buy or rent a certain video. But, I do not see the "HD not available" message for regular videos with media.eme.hdcp-policy-check.enabled set to FALSE. With the default config setting (TRUE) I see the "HD not available" message (see attachment)
Here is my media profile as well: https://share.firefox.dev/3BMjkwj
Updated•1 year ago
|
Comment 10•1 year ago
|
||
I just tested playing The Italian Job (2003) in Firefox 131.0.2 (64-bit) on Windows 10 and NVIDIA control panel is showing the GPU and both monitors are HDCP-capable (with green check mark).
With media.eme.hdcp-policy-check.enabled on default true setting. Still had HD Video Unavailable warning and low quality video playback issue.
Changed media.eme.hdcp-policy-check.enabled to false, Ctrl+F5 to reload the tab opened with the video stopped, resumed the video and full HD video (1080) is now available and working.
Other than Firefox web browser for Windows being updated nothing else has changed for my environment since my previous post.
Comment 11•1 year ago
•
|
||
On my Windows 11, I don't see HD is not available when I have media.eme.hdcp-policy-check.enabled=true. However, when the pref is ON, I do sometimes see low resolution video, but I can also see clearer video as well. So I'm not sure if the video quality drop is caused by HDCP check in my case.
Would you mind to capture another media profile with media.eme.hdcp-policy-check.enabled=true by following this instruction? Thanks!
update : it would be great if you can help me do the steps described in the comment 13 as well, thanks!
Comment 12•1 year ago
|
||
(In reply to Alastor Wu [:alwu] from comment #11)
On my Windows 11, I don't see
HD is not availablewhen I havemedia.eme.hdcp-policy-check.enabled=true. However, when the pref is ON, I do sometimes see low resolution video, but I can also see clearer video as well. So I'm not sure if the video quality drop is caused by HDCP check in my case.Would you mind to capture another media profile with
media.eme.hdcp-policy-check.enabled=trueby following this instruction? Thanks!
I have performed two media profile captures by using the methods as instructed by the video you linked:
media.eme.hdcp-policy-check.enabledset totrue(HD video unavailable): https://share.firefox.dev/3Ntxbucmedia.eme.hdcp-policy-check.enabledset tofalse(1080 HD video working): https://share.firefox.dev/3YqR7Ei
Comment 13•1 year ago
•
|
||
Hello, Nathan,
From your profile (with the pref ON), the HDCP status is Output_restricted, which should be the reason why Amazon stops serving HD. Could you help me paste following code to Chrome's (or Edge's) web console (Ctrl + Shift + J)? I would like to see whether the HDCP status on other browsers is usable. Thanks!
(async function requestMediaKeys() {
const config = {
initDataTypes: ['cenc'],
audioCapabilities: [
{ contentType: 'audio/mp4; codecs="mp4a.40.2"' },
],
videoCapabilities: [
{ contentType: 'video/mp4; codecs="avc1.4D401E"' },
],
distinctiveIdentifier: 'optional',
persistentState: 'optional',
sessionTypes: ['temporary']
};
try {
console.log('Requesting MediaKeySystemAcess');
const mediaKeySystemAccess = await navigator.requestMediaKeySystemAccess('com.widevine.alpha', [config]);
console.log('Creating a MediaKey');
const mediaKey = await mediaKeySystemAccess.createMediaKeys();
console.log('MediaKey created successfully');
const policyStatusHDCP14 = await mediaKey.getStatusForPolicy({ minHdcpVersion: '1.4' });
console.log('HDCP 1.4 policy status:', policyStatusHDCP14);
const policyStatusHDCP22 = await mediaKey.getStatusForPolicy({ minHdcpVersion: '2.2' });
console.log('HDCP 2.2 policy status:', policyStatusHDCP22);
} catch (error) {
console.error('Error occurred:', error);
}
})();
Updated•1 year ago
|
Comment 14•1 year ago
|
||
Hi Alastor,
Here is the console output on Microsoft Edge version 129.0.2792.89 (Official build) (64-bit) while the video is playing in the tab:
Warning: Don’t paste code into the DevTools Console that you don’t understand or haven’t reviewed yourself. This could allow attackers to steal your identity or take control of your computer. Please type ‘allow pasting’ below and hit Enter to allow pasting.
allow pasting
(async function requestMediaKeys() {
const config = {
initDataTypes: ['cenc'],
audioCapabilities: [
{ contentType: 'audio/mp4; codecs="mp4a.40.2"' },
],
videoCapabilities: [
{ contentType: 'video/mp4; codecs="avc1.4D401E"' },
],
distinctiveIdentifier: 'optional',
persistentState: 'optional',
sessionTypes: ['temporary']
};
try {
console.log('Requesting MediaKeySystemAcess');
const mediaKeySystemAccess = await navigator.requestMediaKeySystemAccess('com.widevine.alpha', [config]);
console.log('Creating a MediaKey');
const mediaKey = await mediaKeySystemAccess.createMediaKeys();
console.log('MediaKey created successfully');
const policyStatusHDCP14 = await mediaKey.getStatusForPolicy({ minHdcpVersion: '1.4' });
console.log('HDCP 1.4 policy status:', policyStatusHDCP14);
const policyStatusHDCP22 = await mediaKey.getStatusForPolicy({ minHdcpVersion: '2.2' });
console.log('HDCP 2.2 policy status:', policyStatusHDCP22);
} catch (error) {
console.error('Error occurred:', error);
}
})();
VM357:15 Requesting MediaKeySystemAcess
VM357:16 It is recommended that a robustness level be specified. Not specifying the robustness level could result in unexpected behavior.
requestMediaKeys @ VM357:16
(anonymous) @ VM357:31
VM357:18 Creating a MediaKey
Promise {<pending>}[[Prototype]]: Promise[[PromiseState]]: "fulfilled"[[PromiseResult]]: undefined
VM357:21 MediaKey created successfully
VM357:24 HDCP 1.4 policy status: output-restricted
VM357:27 HDCP 2.2 policy status: output-restricted
Screenshot also posted at https://imgur.com/a/ZztSWzi
Comment 15•1 year ago
|
||
Hello, Nathan,
The Edge showed the same result with us. Your device doesn't have a full HDCP support, because the result is output-restricted. If the HDCP is fully usable, the status should be usable. I guess that this issue is also reproducible on Edge? Thanks.
Comment 16•1 year ago
|
||
(In reply to Alastor Wu [:alwu] from comment #15)
Hello, Nathan,
The Edge showed the same result with us. Your device doesn't have a full HDCP support, because the result is output-restricted. If the HDCP is fully usable, the status should be usable. I guess that this issue is also reproducible on Edge? Thanks.
Not really, check out the added second screenshot at https://imgur.com/a/ZztSWzi
Edge is clearly showing full HD (1080P) video at 6.84 GB per hour and Firefox showing non-HD video at 1.17 GB per hour.
Exact same machine, two different web browsers.
Comment 17•1 year ago
|
||
(In reply to Nathan Martin from comment #16)
Edge is clearly showing full HD (1080P) video at 6.84 GB per hour and Firefox showing non-HD video at 1.17 GB per hour.
Exact same machine, two different web browsers.
I tested this video, and found that on Edge the Prime video is using PlayReady, instead of Widevine, so it's understandable to have a different result. Each CDM has their own implementation, so it could be the PlayReady CDM on your device having better support on HDCP. I also see different results when I query PlayReady and Widevine on Edge. We've contacted Amazon before for PlayReady support on Firefox, but no response so far.
Would you mind to download Chrome and see if this situation happens? Because Chrome only uses Widevine.
In addition, I also wonder if this issue is caused by Widevine (maybe they don't implement HDCP detection well). On Firefox, could you go to about:addons and then select plugins, click Widevine Content Decryption Module provided by Google Inc and see what the version is, and the last updated date.
Also, as Edge uses PlayReady, would you mind running this script on Edge? and see what the result are for HDCP 1.4 and 2.2? Thanks!
(async function requestMediaKeys() {
const config = {
initDataTypes: ['cenc'],
audioCapabilities: [
{ contentType: 'audio/mp4; codecs="mp4a.40.2"' },
],
videoCapabilities: [
{ contentType: 'video/mp4; codecs="avc1.4D401E"' },
],
distinctiveIdentifier: 'optional',
persistentState: 'optional',
sessionTypes: ['temporary']
};
try {
console.log('Requesting MediaKeySystemAcess');
const mediaKeySystemAccess = await navigator.requestMediaKeySystemAccess('com.microsoft.playready.recommendation', [config]);
console.log('Creating a MediaKey');
const mediaKey = await mediaKeySystemAccess.createMediaKeys();
console.log('MediaKey created successfully');
const policyStatusHDCP14 = await mediaKey.getStatusForPolicy({ minHdcpVersion: '1.4' });
console.log('HDCP 1.4 policy status:', policyStatusHDCP14);
const policyStatusHDCP22 = await mediaKey.getStatusForPolicy({ minHdcpVersion: '2.2' });
console.log('HDCP 2.2 policy status:', policyStatusHDCP22);
} catch (error) {
console.error('Error occurred:', error);
}
})();
Comment 18•1 year ago
|
||
Hi i did both tests on chrome and edge.
this is chrome with widevine
Requesting MediaKeySystemAcess
Creating a MediaKey
Promise {<pending>}
VM41:21 MediaKey created successfully
VM41:24 HDCP 1.4 policy status: output-restricted
VM41:27 HDCP 2.2 policy status: output-restricted
and this is edge with playready
Requesting MediaKeySystemAcess
VM145:18 Creating a MediaKey
Promise {<pending>}
VM145:21 MediaKey created successfully
VM145:24 HDCP 1.4 policy status: output-restricted
VM145:27 HDCP 2.2 policy status: usable
as you can see the problem could be in widewine
Comment 19•1 year ago
|
||
sorry if i continue but is important. even if on chrome 1.4 and 2.2 are restricted there is not the bug.
Comment 20•1 year ago
|
||
Would you mind checking what Widevine version Chrome/Firefox is using?
On Chrome, go to chrome://media-internals/, then select CDMs and check the version of Widevine Content Decryption Module, which has robustness Software Secure.
On Firefox, go to about:addons and then select plugins, click Widevine Content Decryption Module provided by Google Inc.
Thanks!
Comment 22•1 year ago
|
||
Would you mind to help me capture a media profile by following this instruction? However, after step2 (Select Media Playback preset), please paste following modules into the log module and select Set Log Modules. Follow same steps afterward. Thanks!
timestamp,EME:5,HTMLMediaElement:5,MediaCapabilities:5,PlatformDecoderModule:4
Comment 23•1 year ago
|
||
https://share.firefox.dev/4dQn1hN
it should be right
Comment 24•1 year ago
|
||
Update. For do a test i created an empty profile in firefox (about:profiles) called test for see if maybe a setting or an extension was the problem. Nothing, the bug still here. i did another test. i downloaded firefox 131.0.3 portable and did the test. on portable version everything works as intended. the "test" profile and the portable version are both a fresh profile empty where i just logged in to primevideo and started the identical movie but the result is different and i don't understand why
Comment 25•1 year ago
|
||
Could you help me provide about:support for both normal and portable Firefox? In addition, for HDCP policy status, I suppose both Firefox are returning output-restricted? Thanks!
Comment 26•1 year ago
|
||
both has
- "Clear Lead" YES
- "HDCP 2.2 Compatible" NO
the wirevide version is identical
how can i provide the "about:support" page? do you want an entire copy/paste or is there a button for zip it?
Comment 27•1 year ago
|
||
You can click copy text to click board and then update them here by using Attach New File button on the page, thanks!
Comment 28•1 year ago
|
||
Comment 29•1 year ago
|
||
Comment 30•1 year ago
|
||
| Reporter | ||
Updated•1 year ago
|
Comment 31•1 year ago
|
||
I was suspecting the hardware decoding setting was mess up in your normal Firefox, but it didn't happen... So based on what you said, the Prime video works perfectly on the portable Firefox, you can see Prime video in HD, which can be indicated from Options (The video quality shows Use about 6.84 GB per hour under the Best option)? In addition, for your normal Firefox, would the issue happen on the private browsing mode?
In addition, sorry to bother you so many times, could you help me capture a media profile again on both Firefox (normal/portable)? But this time, follow these steps,
(1) restart Firefox
(2) follow steps in the comment22
(3) start profiling
(4) go to PrimeVideo
(5) after the issue happens, stop profiling
Thank you so much!
Comment 32•1 year ago
|
||
there is an update. now the problem is solved. main profile, test profile and portable profile works as intended. i did nothing from yesterday. nothing is changed but works. i think amazon "fixed" it server side
Comment 33•1 year ago
|
||
That's interesting! I wonder if anyone can verify whether this issue has been resolved on their end as well. Raul, could you assist with that? Thank you!
Comment 34•1 year ago
|
||
(In reply to Alastor Wu [:alwu] from comment #33)
That's interesting! I wonder if anyone can verify whether this issue has been resolved on their end as well. Raul, could you assist with that? Thank you!
I apologize for not getting back for a while as I was dealing with some family stuff.
I can confirm that after Ctrl+F5 to reload amazon prime tabs and playing channel subscription only movies now no longer have "HD video unavailable" issue and playback is at 1080 resolution with media.eme.hdcp-policy-check.enabled set to true again.
Apparently it was indeed an Amazon side issue. The plugin Widevine Content Decryption Module provided by Google Inc. version 4.10.2830.0 and was last updated September 15, 2024 (~2 days before my last comment).
Comment 35•1 year ago
|
||
| Reporter | ||
Comment 36•1 year ago
•
|
||
I can confirm that the "Video Quality" option no longer has the "HD unavailable" message displayed and that media.eme.hdcp-policy-check.enabled config is set to TRUE by default. Unfortunately, our test accounts can not view HD videos due to paywall restrictions.
Tested with:
Browser / Version: Firefox Release 131.0.3 (64-bit)/ Firefox Nightly 133.0a1 (2024-10-21) (64-bit)
Operating System: Windows 10 PRO x64
Updated•1 year ago
|
Updated•1 year ago
|
Description
•