I’m really scratching my head here. Wyze has built a huge following with its affordable, feature-rich cameras, but there’s one glaring issue that keeps coming up—latency in live streaming. And it’s not like there isn’t a solution sitting right there on the AWS shelf: CloudFront! Why Wyze isn’t leveraging this tech for its streaming needs is beyond me.
First off, Amazon CloudFront is built specifically to deliver low-latency, high-throughput live streaming. This is not some niche, untested service; it’s used by major players worldwide to stream time-sensitive content. Sports events, live gaming—CloudFront handles this stuff all the time. It offers edge servers globally, caching live streams closer to end-users, which would drastically reduce lag for all Wyze users, not just those based in the U.S.
And here’s the kicker: if you’re trying to stream from outside the United States, the lag becomes even worse. Wyze doesn’t seem to be routing through global CDNs but rather sticking to servers in the U.S., which can make the latency unbearable for international users. Using CloudFront could solve this by dynamically routing traffic through its closest edge locations, cutting down the latency no matter where you are.
The crazy part? CloudFront integrates seamlessly with AWS’s entire ecosystem. Wyze is already on AWS, so what’s the holdup? Using CloudFront could give them built-in, tried-and-true mechanisms for load balancing, scaling, and optimizing streams across different devices and network conditions. And with the CloudFront + AWS Media Services combo, they could offer a much smoother streaming experience without breaking the bank, thanks to the pay-as-you-go model.
It’s time Wyze steps up its game. Shaving off a few milliseconds would vastly improve the user experience—especially for people relying on Wyze cams for security and peace of mind. Right now, it feels like Wyze is lagging behind (literally), and there’s no good reason for it.
From what I understand, Cloudfront could potentially make improvements for viewing cloud events, but it wouldn’t improve anything with the live camera stream because that is a peer to peer connection. The video is not being routed from your house to Wyze first and then back to your phone. So, cloudfront would not improve The live stream. Forcing the live stream to go through cloudfront would make the costs nearly unaffordable. They would definitely have to charge a subscription just to view your camera feed. People would be up in arms about that not being free anymore.
However, it might improve something like the web portal live view where we view our cameras on the website. Currently they’re using Amazon Kinesis for that and it’s charging Wyze per camera stream to do it.
Just a heads up—it’s not actually a peer-to-peer connection. I’ve analyzed the packet traces for all the cameras in my home, and it’s clear that the Wyze cam relies on an internet connection to stream video. It connects to US-based aws cloud servers to provide the live feed so its basically using Relay mode that Relays the stream through Wyze servers.
This has been proven countless times here. Yes, it requires Internet to set up the connection, but once it is established, the connection is peer to peer. The test to prove it is while you phone is on the same LAN as the cameras, establish a live stream and then kill your Internet. The live stream will continue just fine. Obviously not going out to any external server somewhere.
That is not correct. The initial AUTHENTICATION handshake uses the internet to get approval to allow the camera and the phone to talk to each other, but the video stream itself is peer-to-peer.
If it did relay the video stream through Wyze, their server would be overloaded and they’d be broke by now from the bandwidth and data costs alone from all the free users.
If you have any evidence to the contrary (that isn’t just the authentication or Cloud event uploads), please share because this would be new information. Everyone else who has ever tested this has confirmed that it is peer-to-peer. It is easy to demonstrate for yourself as many others have done. Turn off motion detection and all possibility for notifications or cloud events. Then disconnect the power cord from ALL your Wyze devices for at least a day to get a baseline (including non-camera devices…everything). Then plug in 1 camera (still with everything disabled so it can’t upload any cloud events. Now, turn off the WiFi on your phone and live stream the Wyze camera to your phone for as long as possible. Do it for most of the day if you can. Your camera’s data use will only show a small amount of data used for authentication to Wyze/Amazon, but not for all the video going through AWS all day like it otherwise would if you had events uploading all day long to Wyze/AWS. The next day, turn on Motion detection and put something that moves constantly (like a fan that moves left and right) right in front of the camera, up close, so it gets constant movement for the entire day. Don’t live stream at all, just do cloud uploads all day. Now see how much AWS data the camera uploads by comparison when it’s actually sending the video stream through AWS. It will be a very, VERY indisputably obvious difference.
Authentication goes through Wyze, and cloud uploads go through AWS, which makes a lot of people think that the live stream does too when they see that cloud uploads are going to AWS, but the live stream does not actually do that.