How can I view my Wyze Camera live video stream on Linux Ubuntu?
I have the Wyze Cam V3.
Constraints:
- I really don't want to lose the ability to view the video feed from the app on my phone when I leave the house.
- Ideally, I won't lose any other modern features Wyze provides, and automatic firmware updates will still take place.
Here are 3 options I came up with. If you can find a better Android emulator for Ubuntu, however, please do post another answer below and/or on my follow-up question here: Which Android emulators/virtual machines run well on Ubuntu 18.04 and 20.04 or later?
1. What I tested that (insanely sluggishly) works:
(virtual machine within a virtual machine)
I really hate this solution because it's extremely heavy, requires a virtual machine within a virtual machine, and is super slow and requires a massive amount of filesystem storage space, but it does work.
Install the VirtualBox virtual machine on Ubuntu 20.04.
Install Windows 10 64-bit inside VirtualBox
Install the BlueStacks 5 Android emulator in Windows 10 (it's running Android 7, even though Android 12 is out).
Click on the Play Store in the BlueStacks Android emulator, and log in with your Google Account. Download the Wyze app.
Log in to the Wyze App, and click on the camera stream you'd like to view. If you get this error message:
...then:
The Wyze app now works fine for me. It is just super slow is all. If I open up a video stream on my phone and on my computer simultaneously and compare the live timestamps counting up in the bottom-right of the video, I can see the livestream on my computer is 20~30 seconds delayed! Playing back videos from the history is also super sluggish, and takes ~15 seconds to load the video after each time changing the position on the timeline. Video plays back slow too, at ~0.75x or so. This is all on a pretty-powerful laptop, mind you, which was ~$2500 in 2019 and has 16 GiB RAM, 512 GiB m.2 SSD, Intel(R) Core(TM) i7-8650U CPU (8 hyperthreads).
Other Issues with this solution:
2. The compromise solution: change your Wyze camera firmware
As @cocomac says:
I haven't tried this, but I expect it would work.
However, a few big issues exist with the RTSP firmware from Wyze:
They say on that page:
So, it looks like it has limited support, reduced features, and no automatic updates once you do this. Those issues are a big turn-off for me.
3. What I did instead (I used my phone)
My goal was to monitor my baby in another room while I worked on writing an AskUbuntu question. I had a spare laptop nearby and thought, "Oh, I can probably view my Wyze camera there and watch the baby." Nope! But, it turns out the Wyze app runs great in Android on my phone, and when viewing a live video stream it keeps the phone from going to sleep, so after 1 hr messing around trying to do the virtual machine solution above, I just plugged in my phone to a charger, put it on a little stand I have for it, and set it next to my computer. The screen is tiny in comparison to my laptop, but at least it ran well, stayed awake on my phone, and didn't require a virtual machine within a virtual machine.
So...I'm still waiting on a better Ubuntu solution, but at least options 1 and 3 work.
See also my follow-up question here: Which Android emulators/virtual machines run well on Ubuntu 18.04 and 20.04 or later?
4. What I'll probably do next (buy a subscription and use Wyze Web View)
Update: I did this; it works awesome!; I can watch what's going on outside my house on my computer monitor. It works great!
It looks like they sell a subscription plan called "Cam Plus" for ~$2/camera/month: https://services.wyze.com/detail/camplus
It says it includes "Wyze Web View", which apparently lets you view your camera stream online in a browser (see the quote below). That may be worth buying.
I like FOSS software for sure, but I understand that a subscription plan is how companies like Wyze stay alive so they can pay their employees and keep on innovating. I'd rather have them require a small subscription fee to keep improving their firmware and software than have them in dire financial straits where they are motivated to make your camera "break" every 2 years so you'll buy a new one, for instance (like Crapple does, even though they are not in dire financial straits, and they have really high profit margins).
Here is a pertinent quote about Wyze Web View (emphasis added): https://support.wyze.com/hc/en-us/articles/4409136365595-Wyze-Web-View-FAQ:
It looks like buying a Cam Plus subscription to get the Web View feature would be a pretty worthwhile expenditure.
Other References:
Download Android-x64 from FossHub*. Use the
Android-x64 64-bit ISO
version. I picked the9.0-r2
, but simply picking any64-Bit ISO
should do.I'm assuming you have VirtualBox installed**.
Make a new VirtalBox VM. Name it whatever you want (I picked
Android
). Set the type toOther
and the version toOther/Unknown (64-bit)
. I gave it 2GB RAM, but more RAM should work fine, too. Create a virtual hard disk. SelectVDI (VirtualBox Disk Image)
for the type. I did dynamically allocated, but Fixed size should work too. Make the disk 16 GB. Save it. Now go to Settings for that VM, and under Storage, where there is a CD icon followed by the textEmpty
, and tell it to use theandroid-x86_64-9.0-r2.iso
file that we downloaded from before. Also, set theNetwork
mode to "Bridged Adapter". Hit OK. Now, time to start the VM. Press Start (below the big green arrow).Alrighty, if all went well, when you hit start, you should be given a few options:
Use the arrow keys to select
Installation
. Use the down arrow key to selectCreate/modify partitions
(and press enter), tell it to NOT use GPT. DoNew
. SelectPrimary
(as opposed to Logical partition or Cancel). Accept the default size. Press enter onBootable
so that underFlags
it saysBoot
. Now doWrite
. Typeyes
(and press enter). It will take a few (perhaps ten, maybe more depending on the size + speed of your disk). Now doQuit
. It will bring you to a menu calledChoose Partition
. Selectsda1
, and itOK
. It will prompt you to select a filesystem. Selectext4
for the filesystem. SelectYes
, you want to format it. SelectYes
to if you want GRUB (the default is Skip, you want Yes). Also say Yes to if you want the/system
directory as read-write. Once it installs, selectRun Android-x86
.It will sit on the
android
logo for perhaps thirty seconds. Once it boots, press the yellow start button, and go through setup. SelectVirtWifi
as your network. I wouldn't add a password, as it's in VirtualBox, but you can if you want. Launch thePlay Store
, and sign into your Google Account. I would disable the Back up to Google Drive option during Google Play Store setup, but you can if you want. Search for the Wyze app, hit Install, and launch it. Done!*Yes, the Android-x86 website looks sketchy. It the ISO (from FossHub) worked fine for me, though.
**I tested this on Arch (I use Arch BTW), and I had to do
sudo pacman -S virtualbox-host-modules-arch
, accept that it would conflict withvirtualbox-host-dkms
, and chose to install it anyways (removing thevirtualbox-host-dkms
package). I also had to dosudo vboxreload
after running that ocmmand. But it should work fine on Ubuntu by default..