Newbie diving into the All In One system, Xiaoya list+emby, diary of pitfalls encountered.


In the previous article, I wrote about my experience with setting up the All In One system Open WRT and Open Clash. Although I was only documenting the process of setting up Open WRT and Open Clash, it took me a lot of time to research and troubleshoot reinstallations.

Today's topic is about Xiaoya Alist+Emby, which took me from after midnight until noon yesterday, plus a few hours today. Actually, setting it up is not very complicated. There are lazy one-click scripts available for installation and use. You just need to configure it a bit and you can start playing. The main issue I encountered was playing "[No compatible streams currently available]" in Emby and trying to open the web version on my Mac. Initially, I couldn't play it, but later I found out that besides using Aliyun Drive to play Xiaoya Alist, it also uses another foreign cloud drive. Since I didn't configure it, I couldn't play the videos.

In fact, throughout the whole process, all my operations were fine, except for a small, inconspicuous setting that caused Emby to be unable to play.

Notes on Getting Started:#

My mini host was paid for by my girlfriend using JD Bai Tiao (a payment method in China). Because I currently have money but don't spend it, I use Huabei and Bai Tiao to keep the cash flow. Currently, I have set up a few Linux systems as test machines, and then I installed Open Wrt. Recently, my girlfriend has been watching some Korean dramas and variety shows, and some of them require software to download. The smoothness and experience of playing these shows are not good, and I can't watch them without ads.

Sometimes, I also watch TV shows and movies, and I need to subscribe to different platforms. Since my home mini host is used as a server, I want to create a home media server. When I was playing with Alist before, I heard about Xiaoya Alist, so I searched for information and found out how to set up Xiaoya Alist and pair it with Emby to display a video metadata poster wall.

To be specific, here are some screenshots from my iPad:


Setup Tutorial:#

Whether you have a Synology NAS or, like me, installed Ubuntu or CentOS in a PVE system, you can set it up. There is a lazy one-click script available.

GitHub: https://github.com/DDS-Derek/xiaoya-alist

bash -c "$(curl --insecure -fsSL https://ddsrem.com/xiaoya_install.sh)"

Inside, you can install the Xiaoya Alist and Emby suite, which can download metadata and images directly to the system, and extract and import them into Emby for playback through Xiaoya Alist. Basically, if you use this one-click script, you won't encounter any "[No compatible streams currently available]" issues. If you do encounter it, it's because during the installation process of this script, there is a step that asks you to configure an account starting with "p". This is another cloud drive that is not configured by default. The video you are playing is likely being played through this cloud drive, and if you haven't configured it, you won't be able to access the file or play it.

Another possibility is that your Aliyun Drive space is not enough. The principle of Xiaoya Alist is to transfer the files to your Aliyun Drive and then parse and play the real links.

The "[No compatible streams currently available]" issue only appears in the Emby client or web version. The problem I encountered was that the web version could play normally, but the mobile phone and iPad prompted that there were no compatible streams.

Troubleshooting Process:#

At first, I thought it was a decoding issue, so I kept searching for how to pass through the integrated graphics of a PVE virtual machine and found specific tutorials for my CPU: https://diyforfun.cn/644.html and Bilibili videos:

After doing all that, the issue of "[No compatible streams currently available]" still persisted. So I tried switching to different systems and using AI, but I still couldn't solve it. The web version played normally, but the Emby client couldn't be used.

This script includes a Jellyfin suite:


This was even more troublesome because the one-click installation requires downloading a metadata compression package of tens of gigabytes and then extracting it. But the whole operation couldn't get it to work.

By this point, I had spent a lot of time and decided to give up using the Emby client for playback and use a third-party client instead. No matter what, the PC version could play normally, but the third-party client on the iPad couldn't play. Finally, I directly copied the playback link source from the web version and prepared to play it in an iPad player. Then, I was prompted with a message saying that it couldn't find the local network. Suddenly, I thought about how I always like to deny some permissions when using software. So I went to the local settings and allowed access to the local network, and it could play.

Then I went back to my iOS phone, opened Emby, accessed the local network, and tested the playback, which worked fine. The same operation on the iPad also played normally. It turned out that all the fuss was because of my own habit of disabling software access to the local network, which caused the inability to play.

Finally, all the problems were solved. Although Emby is useful, it is not free. But it can't defeat us freeloaders. Please take a look at: https://baoge.vip/557.html

Below, I will copy the tutorial as a backup:

Open the Xiaohuoqiang Beijing configuration file and add the following rules:

EmbyPremiere = type=http-response,script-path=https://raw.githubusercontent.com/rartv/SurgeScript/main/EmbyPremiere/EmbyPremiere.js,pattern=^https?:\/\/mb3admin.com\/admin\/service\/registration\/validateDevice,max-size=131072,requires-body=true,timeout=10,enable=true

hostname = mb3admin.com

Click on the "i" next to the "default.conf" configuration file to enter the settings, and select "HTTPS Decryption". First, "Generate CA Certificate", then install a profile, and then go to system settings - About phone - Trust Certificate Settings, and check the Shadowrocket certificate for full trust. Then reopen Emby and you will be prompted that Emby Premiere is activated.

If you still can't play, just restart your phone or iPad. In my case, after activating on the iPad, I couldn't play, but after restarting, it worked. Activation only needs to be done once and can be used continuously. If you uninstall Emby, you will need to reactivate it.


I spent a lot of time on this thing. The reason why it couldn't play was that the Emby client couldn't access the local network, which caused the inability to play. In the previous article, the devices in my network environment were all under the same gateway, so I didn't consider this issue. The root cause was that I didn't give the Emby client permission to access the local network on my own device.

It was also troublesome to write this article and transfer the iPad screenshots to the computer. Although I can use Apple's AirDrop, my computer has a firewall enabled and rejects all incoming requests, so AirDrop can only send files out and not receive them. At first, I thought it was a bug in the computer system.

In the future, I plan to set up a NAS or Synology system to transfer files between different devices.

Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.