# VonChange/utao: an Android TV browser that plays iQiyi, Tencent Video and CCTV live streams with a phone-tier VIP account

> utao is a GPL-3.0 Android TV browser that loads the web versions of iQiyi, Tencent Video, Bilibili and CCTV live channels on the big screen, so a phone or PC membership works instead of a TV-tier subscription. It is paired with a separate phone app, 土拨鼠遥控, for remote control, and its own README lists the performance limits plainly.

**VonChange/utao** — 油桃TV 电视浏览器 可看各大卫视CCTV直播 无需电视VIP 适配爱奇艺等主流视频平台

- Repository: https://github.com/VonChange/utao
- Website: http://www.utao.tv
- Stars: 4,414 · Forks: 326
- Language: JavaScript
- License: GPL-3.0
- Published: 2026-09-23 · Updated: 2026-09-23 · Language: en
- Canonical page: https://hysenlabs.com/projects/vonchange-utao

## The subscription tier utao is built to skip

Chinese video platforms sell memberships in tiers. A phone or PC membership is cheap; a TV membership, sometimes branded as a super TV package, costs more, and casting from a phone to a TV often requires the higher tier to unlock 1080p. utao's answer is not to intercept the cast. It is to skip casting entirely: the TV runs a browser, the browser loads the desktop or mobile web version of iQiyi, Tencent Video, Mango TV, Bilibili or Youku, and the viewer signs in with the same account they already pay for on their phone. The README states that a normal membership account can play 1080p on the TV this way.

The second half of the problem is input. A TV remote is a poor way to type a password or pick an episode, so utao is designed to be driven from a phone. The README is explicit that browsing any website or playing video from the major platforms requires the browser remote feature inside 土拨鼠遥控, a separate app from the same developer. The TV app is the screen; the phone is the keyboard and trackpad. Anyone evaluating utao should count that as two installs, not one.

The audience is narrow and specific: people with an Android TV or set-top box who already hold a phone or PC membership and do not want to buy a second, more expensive one. The README also states the software itself is free and carries no inserted ads, though the video platforms' own ads still appear.

## How utao works: a Firefox extension running inside a TV browser

The repository layout tells most of the story. web/tv-web holds the main logic and is built as a Firefox WebExtension; android/x5 is a separate implementation that runs the same behaviour on the X5 browser kernel, with a simplified port for WebView kernels. So the core is not a native video player. It is page-level scripting: the extension recognises a video platform's pages, opens playback full screen automatically, and maps remote-control key events onto the page's own controls so the directional pad, confirm key, seek and quality switching work without a mouse.

That design has a direct consequence. utao does not carry its own video pipeline, so it inherits whatever the platform's web player does, including request volume. The README says the iQiyi and Tencent pages issue a very large number of requests and stutter on weak hardware, and calls platform optimisation a major open problem. It also publishes its own smoothness ranking: CCTV's site and BesTV are smoothest, followed by Mango, Youku, Xigua, Bilibili, then iQiyi, then Tencent Video last. That ordering is the single most useful line in the README, because it tells you the experience is not uniform across platforms.

Because the mechanism is a browser extension, the README notes that Google Chrome extensions can be accommodated later, and that a PC connected to a TV could be driven through a browser extension or Electron. That is a stated direction, not a shipped feature.

## Installing utao and getting one platform playing

The README does not walk through a consumer install; it points to the official site utao.tv and to a QQ group, and it offers a separate Firefox-kernel build through a Lanzou link. The repository itself is the source, and the README documents one development command for the extension:

```bash
web-ext run
```

The README warns that each run starts a fresh browser, so no platform will autoplay and you have to handle playback manually. It gives a concrete workaround for iQiyi: open iqiyi.com, wait for the login QR code to appear, then press Q to reach the home page.

For the Android build, the README states that the tv-web code has to be packaged into the app's assets directory before a debug run, and it points to util/util.md for the procedure. The repository directory involved is android/x5, alongside web/tv-web. The README gives no install command for the Android APK itself.

On the TV side, the README lists Android 4.1 and above as supported, but recommends Android 9 or newer for acceptable performance. That gap matters: the low-end support is real, but the README's own compatibility notes say the Android 4 browser kernel is old enough that BesTV and some Jiangsu local channels simply fail to open. A first real use, then, is to install utao on the box, pair it with 土拨鼠遥控 on a phone, open the browser remote, pick CCTV or a satellite channel from the live list, and confirm the remote's directional keys change channels. Live TV is the lightest path through the system, which is why it is the right first test rather than iQiyi.

## Where utao breaks, according to its own README

The limitations section is unusually honest, and it should be read before anyone buys hardware for this. Performance is the first wall. The README states that iQiyi and Tencent Video pages make too many requests and stutter, and that this is worse on machines with weak performance. It recommends Android 9 or above, which effectively rules out the older boxes that would benefit most from avoiding a TV subscription.

The second wall is kernel compatibility. The Firefox-kernel build has documented faults on the author's own Tmall Magic Box: CCTV live audio problems, Xigua Video failing to open, and Tencent Video not switching audio automatically. The X5 kernel build on Android 4 is described as basically limited to live TV and CCTV's own app, with compatibility failures elsewhere, including an error on BesTV and a Jiangsu Satellite TV page that reports a missing replaceAll(). Those are not edge cases in exotic environments; they are the author's test devices.

The third wall is that utao is not self-sufficient. The README states plainly that video playback and general web browsing require the browser remote in 土拨鼠遥控. Without that phone app, the TV browser is a browser with a remote control, which is the exact experience utao exists to avoid. The README also lists unfinished work: search is not implemented, the Firefox kernel is no longer compatible after development prioritised X5, and a general-purpose air-mouse implementation is still on the todo list. Search is the notable gap, because it means finding a specific title depends on the platform's own web search box and the phone keyboard.

## utao against casting, Kodi-style players and IPTV lists

The obvious alternative is the cast button you already have. Casting keeps the phone as the source and the TV as a dumb display, and it is exactly what the TV-tier paywall targets: the README frames the problem as platforms requiring a TV membership before high-definition casting is allowed. utao inverts that. The TV does the loading, the account is a phone account, and the platform sees a browser rather than a cast receiver. The trade is that you now depend on TV hardware performance, which is where the stutter comes from.

A second alternative is a dedicated media player such as Kodi or a similar HTPC front end. Those give you a local library, metadata and reliable decoding, but they do not log into iQiyi or Tencent Video's web catalogue, and they do not solve live CCTV channels without a stream list you supply yourself. utao's live TV comes from adapting CCTV's official site and local station pages, so the channel list is whatever those sites expose, not a maintained IPTV playlist.

A third alternative is an IPTV playlist player, which is lighter and plays live channels far more smoothly than any browser. It gives you nothing for on-demand platform catalogues, though, and it depends on a stream source you have to find and keep working. utao and an IPTV player are complementary rather than competing: the README's own smoothness ranking puts CCTV's site at the top, so live TV through the browser is viable, while iQiyi and Tencent are the parts that need a stronger box.

## Licence, maintenance and what upgrading costs you

utao is GPL-3.0. If you fork it or ship a modified build, the copyleft terms apply to the derived work, and the README adds a project-specific condition on top of the licence: the adapted platforms are described as legitimate licensed distribution platforms, and the code is not to be modified to adapt unofficial ones. The README also states the software will not be charged for or commercialised. That is the author's stated intent, not a legal term, so treat it as a project norm rather than a licence clause. Nothing here is legal advice; if you plan to redistribute a modified build, read the GPL-3.0 text and the README statement together.

On maintenance, the repository is not archived. The last push was on 2026-08-21, which is recent enough that the codebase is still being touched. The releases tell a different story about packaging: the two most recent are release-202412, labelled the stable build, from 2024-12-16, and x5, from 2024-12-12. So there is ongoing commit activity, but the last labelled release is from December 2024, and anyone installing a build should check which of the two they are getting, because the X5 kernel build and the Firefox kernel build have different documented failure modes.

Upgrade cost is mostly the packaging step. Because the Android app embeds a packaged copy of tv-web in its assets, a change to the extension logic is not a drop-in update unless the release already includes it. Developers following the README have to repackage per util/util.md. For end users, the practical upgrade question is whether a new build targets X5 or Firefox, since the README states Firefox compatibility has fallen behind.

## Conclusion

utao fits a household with an Android 9 or newer TV or box that already pays for a phone or PC video membership and wants that content on the big screen without a TV-tier subscription. It is the wrong pick for Android 4 boxes, for anyone unwilling to install a second phone app, or for viewers who expect iQiyi and Tencent Video to scroll as smoothly as CCTV. Before adopting it, install it on the actual box you own, open iqiyi.com and Tencent Video, and watch for a few minutes on the lowest-spec device in the house; the README's own ranking puts Tencent last for smoothness, and that is the number that decides whether the setup is usable.

## FAQ

### What is the VonChange/utao app and who is it for?

utao is a third-party browser for Android TV, projectors and set-top boxes that opens the web versions of iQiyi, Tencent Video, Bilibili, Youku and CCTV live channels on the big screen. It is aimed at people who already hold a phone or PC video membership and want that content on a TV without buying a separate TV-tier subscription.

### Does utao work on its own, or does it need another app?

The README states that video playback on the major platforms and general website browsing require the browser remote feature inside 土拨鼠遥控, a separate phone app from the same developer. The TV app provides the screen; the phone provides the keyboard, touchpad and playback controls.

### Which Android version does utao need for smooth playback?

The README lists Android 4.1 and above as supported but recommends Android 9 or newer, because older browser kernels cause failures such as BesTV errors and a Jiangsu Satellite TV page that reports a missing replaceAll(). It also notes that iQiyi and Tencent Video pages stutter on low-performance machines.

### Which video platforms are smoothest in utao?

The README publishes its own ranking: CCTV's site and BesTV are smoothest, followed by Mango, Youku, Xigua and Bilibili, with iQiyi and then Tencent Video last. The README attributes the gap to the large number of requests those two platforms' pages make.

### Is utao free, and what licence does it use?

The README states the software is free, carries no inserted ads, and will not be commercialised, though the video platforms' own ads still appear. The repository is licensed under GPL-3.0.

## Sources

- [License: GPL-3.0](https://github.com/VonChange/utao/blob/main/LICENSE)
- [Project website](http://www.utao.tv)
- [README](https://github.com/VonChange/utao/blob/main/README.md)
- [Releases](https://github.com/VonChange/utao/releases)
- [VonChange/utao on GitHub](https://github.com/VonChange/utao)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/vonchange-utao
