
Firefox 143.0.1 PIP player problems with Apple TV playback
We are unable to stop playback from the controls in the PIP window for Apple TV when the video playback was started in the main browser window. If we press the control the playbacks stops for a fraction of a second and continues again. Other controls like mute etc. are working as exspected.
If we start the playback in the PIP window we are able to stop it!
If we use Youtube or Amazon as a video source the problem does not show.
If we use Troubleshoot Mode we get exactly the same behaviour.
Any Ideas?
تمام جوابات (5)
Hi there! Thanks for reaching out.
From what you described, it looks like Picture-in-Picture (PiP) pause/stop controls aren’t working correctly when the video is started in the main window, though they work if playback is started directly in PiP. Since mute and other controls work, this may be related to how that specific website’s video player handles pause events.
Here are some ideas that might help fix the problem...
Check autoplay / media permission settings
Especially look for settings in Firefox around autoplay (whether video/audio can autoplay), perhaps “Block Video and Audio”, or site-by-site permissions.
If autoplay is blocked, maybe when you “stop” in PIP it momentarily stops, but something (autoplay fallback / script) restarts the video.
Update all software/ up-to-date version
Make sure tvOS / Apple TV is up to date.
Make sure Firefox is the latest version.
If there are OS updates or firmware, those sometimes fix media control mismatches, especially around PIP.
Check the video player’s controls / embed type
If the video is embedded with custom JS controls, or uses non-standard event listeners, the PIP pause may not map cleanly.
For instance, some players catch “pause” events and automatically resume or have polling or timers that restart playback if paused too soon.
If these ideas do not fix your problem, please share:
your Firefox version (Menu ≡ → Help → About Firefox)
your operating system (Windows, macOS, Linux, etc.)
That info will help us test and file a bug report with the developers if needed.
Hi there!
Its 143.0.1 on macOS Tahoe 15.0. We did a new installation of Firefox, so no odd settings but more or less factory default.
I do not think it is an outo resume problem as everything works fine if You have a stopped video and put that in the stopped state in the PIP player. Then start/stop works perfect. For me it looks that something is going wrong when a running video straem is passed to the PIP. Not sure if Apple or Mozilla is responisble...
Thanks for confirming the details and testing! That helps narrow things down.
From what you describe, it sounds like the issue only occurs when:
Playback is already running in the main window and then moved to PiP.
Start/stop works fine if the video was already paused before entering PiP.
Other controls (mute, volume) still work.
That does point more toward how the handoff between the Apple TV site’s video player and Firefox’s PiP API is working, rather than a generic auto-resume or settings issue.
A couple of next steps you could try:
Check PiP prefs:
In the address bar, type about:config.
Search for media.videocontrols.picture-in-picture.enabled and ensure it’s set to true.
Also check media.videocontrols.picture-in-picture.video-toggle.enabled. Console logs:
Open the main Apple TV tab.
Press F12 (or Cmd+Opt+I) → Console.
Move the video to PiP, try pausing, and see if any errors show up.
Test in Beta or Nightly builds:
Download Firefox Beta or Nightly and test Apple TV PiP.
This helps confirm if the bug is already known/fixed in newer code.
If the issue still persist, it’s worth filing a Bugzilla report with your findings so our dev team can check if this is an Apple-side player quirk or a Firefox PiP handoff bug.
Shirmaya John کی جانب سے
The preferences are all set as exspected. 144b3 shows exactly the same symptoms...
The logs are more interesting. When a running video ist passed to the PIP window a Cross-Origin Request Blocked error is generated. That error does not show up if the video is paused when transfered to the PIP window.
GET https://xp.apple.com/report/2/xp_amp_tv_unidentified?responseType=image&pageId=umc.cmc.5u79a6t3heayrgilqtv5r0ws1&pageType=MediaPlayer&pageContext=player&impressions=[{"id":"umc.cmc.52zhz0xl3gsz380zxu8rb3yee","name":"Vision: Season 4","impressionId":2099858870,"impressionIndex":0,"impressionParentId":1249720338,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Preview","location":[{"id":"umc.cmc.52zhz0xl3gsz380zxu8rb3yee","name":"Vision: Season 4","locationPosition":0,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","locationPosition":1,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.6bgycn35b605jek915ze6lj57","name":"Face Your Truth: Season 4","impressionId":1798785134,"impressionIndex":1,"impressionParentId":1249720338,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Preview","location":[{"id":"umc.cmc.6bgycn35b605jek915ze6lj57","name":"Face Your Truth: Season 4","locationPosition":1,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","locationPosition":1,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.13x8kd94fph1n5l3yfz36ifrt","name":"Unprecedented: Season 3","impressionId":923758800,"impressionIndex":2,"impressionParentId":1249720338,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Preview","location":[{"id":"umc.cmc.13x8kd94fph1n5l3yfz36ifrt","name":"Unprecedented: Season 3","locationPosition":2,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","locationPosition":1,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.4t2tlpjg38240baztgi4eo6yn","name":"Miracle: Season 3","impressionId":984807686,"impressionIndex":3,"impressionParentId":1249720338,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Preview","location":[{"id":"umc.cmc.4t2tlpjg38240baztgi4eo6yn","name":"Miracle: Season 3","locationPosition":3,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","locationPosition":1,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","brandId":"tvs.sbd.4000","name":"Trailers","impressionId":1249720338,"impressionIndex":1,"impressionType":"shelf","location":[{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","locationPosition":1,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.4q5tvvj5zpc4dfvaj8bhh8ouo","name":"Bombshell: Season 2","impressionId":1928893310,"impressionIndex":4,"impressionParentId":1249720338,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Preview","location":[{"id":"umc.cmc.4q5tvvj5zpc4dfvaj8bhh8ouo","name":"Bombshell: Season 2","locationPosition":4,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.col.Trailers.umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m","locationPosition":1,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.5u79a6t3heayrgilqtv5r0ws1","name":"The Kármán Line","impressionId":850980887,"impressionIndex":5,"impressionParentId":1204961247,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Episode","location":[{"id":"umc.cmc.5u79a6t3heayrgilqtv5r0ws1","name":"The Kármán Line","locationPosition":5,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.marker.EpisodeList","locationPosition":0,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.3btqkrau131zbuvzcorlo7mkh","name":"Ghost in the Machine","impressionId":1057495960,"impressionIndex":6,"impressionParentId":1204961247,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Episode","location":[{"id":"umc.cmc.3btqkrau131zbuvzcorlo7mkh","name":"Ghost in the Machine","locationPosition":6,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.marker.EpisodeList","locationPosition":0,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.2ulgisx52lbiv0og7byqkzwkl","name":"White Noise","impressionId":770893293,"impressionIndex":7,"impressionParentId":1204961247,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Episode","location":[{"id":"umc.cmc.2ulgisx52lbiv0og7byqkzwkl","name":"White Noise","locationPosition":7,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.marker.EpisodeList","locationPosition":0,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.4xuatkbznhvpeooat4vw091au","name":"The Green Light","impressionId":649228751,"impressionIndex":8,"impressionParentId":1204961247,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Episode","location":[{"id":"umc.cmc.4xuatkbznhvpeooat4vw091au","name":"The Green Light","locationPosition":8,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.marker.EpisodeList","locationPosition":0,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"uts.marker.EpisodeList","brandId":"tvs.sbd.4000","impressionId":1204961247,"impressionIndex":0,"impressionType":"shelf","location":[{"id":"uts.marker.EpisodeList","locationPosition":0,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]},{"id":"umc.cmc.6g663wttuk46aygqcu53ph783","name":"Love Island","impressionId":701830272,"impressionIndex":9,"impressionParentId":1204961247,"impressionType":"lockup","brandId":"tvs.sbd.4000","contentType":"Episode","location":[{"id":"umc.cmc.6g663wttuk46aygqcu53ph783","name":"Love Island","locationPosition":9,"locationType":"lockup","brandId":"tvs.sbd.4000"},{"id":"uts.marker.EpisodeList","locationPosition":0,"locationType":"shelf"}],"viewedInfo":[{"s":1758409097546,"d":0}],"impressionTimes":[]}]&app=com.apple.tv&appVersion=2532.4.0-external&resourceRevNum=2532.4.0-external&delegateApp=web-tv-app&baseVersion=1&clientEventId=1_1_ZCNSc49BYmb4kxHxx2WWyhC4&eventTime=1758326400217&timezoneOffset=240&xpSendMethod=javascript&constraintProfiles=["AMPFunnel"]&isSignedIn=false&xpVersionMetricsKit=8.6.3&pageUrl=https://tv.apple.com/us/show/the-morning-show/umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m?ctx_brand=tvs.sbd.4000&pixelRatio=2&xpPostFrequency=60000&page=MediaPlayer_umc.cmc.5u79a6t3heayrgilqtv5r0ws1&eventType=impressions&eventVersion=3&xpViewablePercentage=0.5&xpViewableThreshold=1000&clientId=4zYQErdSSz2jgmGTzF8xz4l9zDCZzv9YD6LN6 CORS Missing Allow Origin
Hi,
Thanks for providing the detailed logs and testing information. That really helps!
From what you’ve shared, it looks like the issue is related to Firefox’s handling of active videos when transferred to Picture-in-Picture (PiP):
When a running video is sent to PiP, Firefox is blocking certain cross-origin requests from Apple TV (CORS: Cross-Origin Request Blocked).
If the video is paused before being sent to PiP, the error does not occur, and playback works normally.
The logs show that Apple TV is making multiple GET requests to xp.apple.com for analytics/impressions. These requests are being blocked by Firefox’s Same Origin Policy when the video is playing.
This explains why the PiP playback stops or behaves incorrectly only for active streams.
What you can do:
Pause the video before using PiP as a temporary workaround.
Ensure Firefox is up-to-date, since fixes for CORS or PiP behavior are often included in newer versions.
If you want, you can file a bug report with Bugzilla, make sure to include your Firefox version, macOS version, and the log snippet showing the CORS errors.