mirror of
https://github.com/redphx/better-xcloud.git
synced 2025-06-28 18:31:44 +02:00
Compare commits
49 Commits
Author | SHA1 | Date | |
---|---|---|---|
e43c34ed3a | |||
28a2e32fc5 | |||
b564de249a | |||
9fa073da82 | |||
958f5410f4 | |||
15d3efdf4e | |||
645b49751d | |||
53913ae218 | |||
2569e73018 | |||
4c790ac38d | |||
11c233e14e | |||
a81cb86140 | |||
c3de245545 | |||
a7ab506f0f | |||
8ecff6adae | |||
27ec45512d | |||
3a654b99cb | |||
a009cca866 | |||
19302ea444 | |||
3c4248c1c7 | |||
de834fcb80 | |||
baf2c2a35d | |||
522830a47d | |||
7207646379 | |||
597c150c77 | |||
e7980c186d | |||
0c38b54c38 | |||
1929834c98 | |||
6e80ea08e8 | |||
a5caafa93a | |||
f8134c3e5a | |||
89ea55774b | |||
2836eeb6ed | |||
876b090ad2 | |||
e33730b124 | |||
8b4f26155c | |||
a52ba7dddf | |||
a8eb296bcf | |||
f4a3c38cca | |||
e8ab19c318 | |||
89e4dd0003 | |||
9874d36f3a | |||
ed54d1ed38 | |||
4676e42215 | |||
ad791bdc45 | |||
a318db4ec2 | |||
aaa8348984 | |||
2cea30cf16 | |||
0fe99f8f2d |
33
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
33
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: "[Bug]"
|
||||
labels: bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
|
||||
**Platform (please complete the following information):**
|
||||
- OS: [e.g. Android]
|
||||
- Browser: [e.g. chrome, firefox]
|
||||
- Browser Version: [e.g. 100]
|
||||
- Better xCloud Version: [e.g. 1.4]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
20
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
20
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: "[Feature]"
|
||||
labels: enhancement
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
130
README.md
130
README.md
@ -1,24 +1,39 @@
|
||||
# Better xCloud
|
||||
Improve [Xbox Cloud Gaming (xCloud)](https://www.xbox.com/play/) experience on web browser.
|
||||
The main target of this script is Android users, but it should work great on desktop too.
|
||||
The main target of this script is mobile users, but it should work great on desktop too.
|
||||
|
||||
Give this project a 🌟 if you like it. Thank you.
|
||||
Give this project a 🌟 if you like it. Thank you 🙏.
|
||||
|
||||
## Features
|
||||
|
||||
<img width="500" alt="Settings UI" src="https://github.com/redphx/better-xcloud/assets/96280/4f60c2e6-9706-4326-940f-f46998177633">
|
||||
<img width="500" alt="Video Settings UI" src="https://github.com/redphx/better-xcloud/assets/96280/130aa870-6938-4604-9e23-45e217b800cc">
|
||||
<img width="475" alt="Settings UI" src="https://github.com/redphx/better-xcloud/assets/96280/ad687344-214d-4822-affe-21f1b1e105c8">
|
||||
<img width="475" alt="Stream HUD UI" src="https://github.com/redphx/better-xcloud/assets/96280/ff695d3a-b077-4b21-b778-beb0a1fdd6be">
|
||||
|
||||
|
||||
|
||||
**Demo video:** https://youtu.be/oDr5Eddp55E
|
||||
|
||||
- **Switch region of streaming server**
|
||||
> Connect to another server instead of the default one
|
||||
> Connect to another server instead of the default one. Check the [**FAQ** section](#faq) for some notes.
|
||||
> Not working in Hermit ([#5](https://github.com/redphx/better-xcloud/issues/5)).
|
||||
- **Force 1080p stream**
|
||||
> By default you only get 1080p stream when playing on desktop.
|
||||
> This feature will give you 1080p stream even on mobile, without having to change User-Agent.
|
||||
> Not working in Hermit ([#5](https://github.com/redphx/better-xcloud/issues/5)).
|
||||
- **Force high quality codec (if possible)<sup>(\*)</sup>**
|
||||
> Force xCloud to use the best streaming codec profile (same as desktop & TV) if possible. You don't have to change User-Agent anymore.
|
||||
> You should enable this feature even if you're on desktop.
|
||||
> Not available for some browsers (Firefox, Safari...).
|
||||
> Use more bandwidth & battery.
|
||||
> Comparison video with the setting ON & OFF: https://youtu.be/-9PuBJJSgR4
|
||||
- **Prefer IPv6 streaming server**
|
||||
> Might reduce latency
|
||||
- **Force high quality stream**
|
||||
> Force xCloud to use the best streaming codec (same as desktop). You don't have to change User-Agent anymore. Affect battery life.
|
||||
> Might reduce latency.
|
||||
- **Disable bandwidth checking**
|
||||
> xCloud won't reduce quality when the internet speed is slow
|
||||
- **🔥 Capture screenshot**
|
||||
> Exclusive to **Better xCloud**. Check the [**Capture screenshot** section](#capture-screenshot) for more info.
|
||||
- **Skip Xbox splash video**
|
||||
> Save 3 seconds
|
||||
> Save 3 seconds.
|
||||
- **Hide Dots icon while playing**
|
||||
> You can still click on it, but it doesn't block the screen anymore
|
||||
- **Reduce UI animations**
|
||||
@ -26,15 +41,23 @@ Give this project a 🌟 if you like it. Thank you.
|
||||
- **Stretch video to full sctreen**
|
||||
> Useful when you don't have a 16:9 screen
|
||||
- **Adjust video filters**
|
||||
> Brightness/Contrast/Saturation
|
||||
> Brightness/Contrast/Saturation.
|
||||
- **Display stream's statuses**
|
||||
> Region/Server/Quality/Resolution...
|
||||
- **Disable social features**
|
||||
> Features like friends, chat... Disable these will make the page load faster.
|
||||
> Features like friends, chat... Disable these will make the page load faster.
|
||||
> Not working in Hermit ([#5](https://github.com/redphx/better-xcloud/issues/5)).
|
||||
- **Disable xCloud analytics**
|
||||
> The analytics contains statistics of your streaming session, so I'd recommend to allow analytics to help Xbox improve xCloud's experence in the future.
|
||||
> The analytics contains statistics of your streaming session, so I'd recommend to allow analytics to help Xbox improve xCloud's experence in the future.
|
||||
> Not working in Hermit ([#5](https://github.com/redphx/better-xcloud/issues/5)).
|
||||
- **Hide footer and other UI elements**
|
||||
- **🔥 Show stream stats**
|
||||
> Check [Stream stats section](#stream-stats) for more info.
|
||||
|
||||
<sup>(\*)</sup> By default (for compatibility reasons) xCloud only uses high quality codec profile when you use Tizen TV or Chrome/Edge/Chromium browser on Chrome/MacOS. Enable this setting will give you the best experience no matter what platform & browser you're on.
|
||||
|
||||
## How to use
|
||||
1. Install [Tampermonkey extension](https://www.tampermonkey.net/) on suppported browsers. It's also available for Firefox on Android.
|
||||
1. Install [Tampermonkey extension](https://www.tampermonkey.net/) on suppported browsers.
|
||||
2. Install **Better xCloud**:
|
||||
- [Stable version](https://github.com/redphx/better-xcloud/releases/latest/download/better-xcloud.user.js)
|
||||
- [Dev version](https://github.com/redphx/better-xcloud/raw/main/better-xcloud.user.js)
|
||||
@ -48,17 +71,64 @@ To update manually, just install the script again (you won't lose your settings)
|
||||
✅ = confirmed to be working
|
||||
❓ = not yet tested
|
||||
❌ = not supported (mostly because of lacking Userscript/extension support)
|
||||
➖ = unavailable
|
||||
⚠️ = see custom notes
|
||||
| | Desktop | Android | iOS |
|
||||
|----------------------------------------|----------|------------------|-----|
|
||||
| Chrome/Edge/Chromium variants | ✅ | ❌ | ❌ |
|
||||
| Firefox | ✅ | ✅ | ❌ |
|
||||
| Safari | ❓ | ❌ | ❓ |
|
||||
| [Hermit](https://hermit.chimbori.com) | ❌ | ⚠️<sup>(1)</sup> | ❌ |
|
||||
| | Desktop | Android/Android TV | iOS |
|
||||
|-----------------------------------------|:-----------------|:-------------------|:----------------|
|
||||
| Chrome/Edge/Chromium variants | ✅ | ❌ | ❌ |
|
||||
| Firefox | ✅ | ⚠️<sup>(1)</sup> | ❌ |
|
||||
| Safari | ✅<sup>(2)</sup> | ➖ | ✅<sup>(3)</sup> |
|
||||
| [Hermit](https://hermit.chimbori.com) | ➖ | ⚠️<sup>(4)</sup> | ➖ |
|
||||
| [Kiwi Browser](https://kiwibrowser.com) | ➖ | ✅ | ➖ |
|
||||
|
||||
Don't see your browser in the table? If it supports Tampermonkey/Userscript then the answer is likely **"YES"**.
|
||||
|
||||
<sup>1</sup> NOT RECOMMENDED at the moment since its Userscript implementation is not working properly. Non-network related features (skip splash video, video settings...) still work. It's still my favorite app to play xCloud on because it's lightweight, supports Userscript (premium features, only $1.99) without having to install anything else. I built **Better xCloud** just so I could use it with Hermit.
|
||||
|
||||
<sup>1</sup> Follow [this guide](https://support.mozilla.org/en-US/kb/find-and-install-add-ons-firefox-android) to install Tampermonkey on Firefox Android. Its Gamepad API doesn't work properly so it might not recognize your controller.
|
||||
<sup>2, 3</sup> Requires [Userscripts app](https://apps.apple.com/us/app/userscripts/id1463298887) (free & open source).
|
||||
<sup>4</sup> NOT RECOMMENDED at the moment since its Userscript implementation is not working properly (see https://github.com/redphx/better-xcloud/issues/5 for full details).
|
||||
|
||||
---
|
||||
- **Kiwi Browser** is the best choice on Android. All features work, it means you can get 1080p stream + high quality codec profile (the best possible quality).
|
||||
- **Better xCloud** also works on Android TV, but you'll have to sideload the browser APK and need a bluetooth mouse if you want to interact with the Settings.
|
||||
|
||||
## Stream stats
|
||||

|
||||
|
||||
- While playing > `...` > `Stream Stats`.
|
||||
- This bar is updated every second.
|
||||
|
||||
| Abbr. | Full name | Explain |
|
||||
|------:|:-------------------|:------------------------------------------------------------------------------------------------------------------|
|
||||
| FPS | Frames per Seconds | The number of decoded frames in the last second |
|
||||
| RTT | Round Trip Time | The number of seconds it takes for data to be sent from your device to the server and back over (lower is better) |
|
||||
| BR | Bitrate | The amount of data server send to your device in the last second |
|
||||
| PL | Packets Lost | Total number of packets lost |
|
||||
| FL | Frames Lost | The total number of frames dropped prior to decode or dropped because the frame missed its display deadline |
|
||||
|
||||
These info are provied by WebRTC API. You can use browser's built-in tool to see more info:
|
||||
- Chrome/Edge/Chromium variants: `chrome://webrtc-internals`
|
||||
- Firefox: `about:webrtc`
|
||||
|
||||
|
||||
## Capture screenshot
|
||||
- This feature is only available in **Better xCloud**.
|
||||
- Works on both desktop & mobile, but it's designed for mobile users.
|
||||
- It's client-side only.
|
||||
- It captures the current frame of the stream and save to a file. That means you won't get the raw quality like when you play on console, but it's still better than using the built-in screenshot feature on your phone.
|
||||
- Screenshot's resolution & quality depend on the quality of the stream at the moment.
|
||||
- Screenshot doesn't include touch UI, notification bar... only the gameplay.
|
||||
- There might be a slight delay.
|
||||
- ⚠️ It's not possible to map the Share/Screenshot button on your controller to this feature.
|
||||
|
||||
### How to capture screenshot
|
||||
1. Enable this feature in setting.
|
||||
2. Play a game.
|
||||
3. Tap once at the bottom left/right (depend on your setting) to show the Screenshot button.
|
||||
4. Tap on that button to capture screenshot.
|
||||
5. Screenshot will be saved by browser.
|
||||
6. You can double tap that corner to capture screenshot.
|
||||
|
||||
<img width="600" alt="Screenshot button" src="https://github.com/redphx/better-xcloud/assets/96280/a911b141-5dc0-450a-aeac-30d9cf202b44">
|
||||
|
||||
## FAQ
|
||||
1. **Will I get banned for using this?**
|
||||
@ -76,14 +146,15 @@ No you can't. You'll have to modify the app.
|
||||
5. **Will you able to enable "Clarity Boost" feature on non-Edge browsers?**
|
||||
No. "Clarity Boost" feature uses an exclusive API (`Video.msVideoProcessing`) that's only available on Edge browser for desktop at the moment.
|
||||
|
||||
## Acknowledgements
|
||||
- [n-thumann/xbox-cloud-server-selector](https://github.com/n-thumann/xbox-cloud-server-selector) for the idea of IPv6 feature
|
||||
- Icons by [Adam Design](https://www.iconfinder.com/iconsets/user-interface-outline-27)
|
||||
|
||||
## User-Agent
|
||||
> You're no longer needed to change User-Agent since you can just use the **Force high quality stream** setting.
|
||||
> I'll still keep this section because it has some interesting info.
|
||||
You're no longer needed to change User-Agent since you can just use the **Force high quality stream** setting.
|
||||
If your browser doesn't support **Force high quality stream** setting, try changing User-Agent to:
|
||||
```
|
||||
Mozilla/5.0 (SMART-TV; LINUX; Tizen 7.0) AppleWebKit/537.36 (KHTML, like Gecko) 94.0.4606.31/7.0 TV Safari/537.36
|
||||
```
|
||||
This will change your device to a Samsung TV running Tizen OS. It will improve the stream quality.
|
||||
|
||||
---
|
||||
Change User-Agent to:
|
||||
```
|
||||
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.67
|
||||
@ -96,7 +167,10 @@ Other options (only do one of these):
|
||||
- Add ` 36102dd3-6953-45f6-8b48-031fb95e0e0d` to become a Logitech G Cloud device.
|
||||
- Add ` 0ed22b6f-b61d-41eb-810a-a1ed586a550b` to become a Razer Edge device.
|
||||
|
||||
## Acknowledgements
|
||||
- [n-thumann/xbox-cloud-server-selector](https://github.com/n-thumann/xbox-cloud-server-selector) for the idea of IPv6 feature
|
||||
- Icons by [Adam Design](https://www.iconfinder.com/iconsets/user-interface-outline-27)
|
||||
|
||||
## Disclaimers
|
||||
- Use as your own risk.
|
||||
- This project is not affiliated with Xbox in any way. All Xbox logos/icons/trademarks are copyright of their respective owners.
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user