4 ms·
> It's because a) people want high resolution, This cannot be any serious part of the reason, since literally playing 3D video games fullscreen at full resolut
by yamtaddle 4y ago
> It's because a) people want high resolution,
This cannot be any serious part of the reason, since literally playing 3D video games fullscreen at full resolution can use less power than Discord.
[EDIT] For that matter, any streaming video platform. They're ~all extremely battery-efficient even when pushing 4k.
- nightski 4y agoVideo games have optimized rendering pipelines and assets. Discord is showing emojis, images that are 10MB+ each, and all kinds of user generated crap at high res that it doesn't have control over. Personally I'd prefer to go back to just text.
- 10000truths 4y agoOf course they have control over it, it’s literally their own platform. There’s no reason that Discord can’t benefit from the same optimizations that video games use. If a AAA title can figure out how to render 100000+ polygons UV wrapped with several 4K resolution textures in the span of 16 ms, then a $15B valued company can certainly figure out to display emojis and large images without turning your notebook into a DIY stovetop.
- bobobob420 4y agoI assume Discord is built with electron. That should answer all your questions. Personally i dont use web apps on desktop..use discord in browser never had any issues
- snickerbockers 4y agohow much CPU/GPU power do you think it takes to display an image? Do you think this is something that video games have never had to do? And if Discord is rendering a 10MB+ image then that's definitely a problem with discord. 1920x1080 at 8bpp isn't even 10MB.
- MobiusHorizons 4y agoVideo playback is low power primarily because GPUs (even embedded ones) have dedicated hardware for video decoding. Video chat requires also encoding video, which not all gpus provide hardware for. CPU encoding video is a very energy intensive task especially as the resolution increases.
- yamtaddle 4y agoA macbook with a built-in webcam doesn't provide robust and low-power hardware encoding for video that camera captures? I should see battery life plummet if I use Quicktime to record video through it, then... right? There shouldn't exist battery efficient screencast apps for these computers... right? I don't think this excuse flies on anything made in the last 10 years, at least, except maybe trash-tier netbooks or something. Unless the software is so amateurish that it doesn't even try to negotiate a codec that suits the hardware it's running on, and just picks something evidently-poorly-supported no matter what.
- MobiusHorizons 4y agoGood points. You have successfully made me revisit my assumptions! I know that intel macbooks added hardware encoding from iphones into the T2 chip in part to solve this problem, but I also know that intel has quick sync, which should provide hardware encoding as well, and I didn't know what the pros/cons are. according to this article [1] the T2 chip seems to be much faster than intel quick sync, so that could be a factor, but it doesn't seem to cover power efficiency. From a timeline perspective, Intel quick sync has been around on at least some Intel CPUs since 2011 and has been supported on osx since Mountain Lion (2012)[2], and the T2 chip first appeared in the Macbook pro in 2017 [3]. That would point to there being more at play than just absence of hardware video decoder. So I think you are right. At least _some_ hardware that can encode video efficiently has existed on macbooks for a while, and it seems like video conferencing applications should be taking advantage of it. While it is always possible that the hardware could solve this problem, but the software doesn't make use of it, I have a feeling any software that did have correct use of encoding hardware would have gained a lot of marketshare, and people would be talking about it. My next followup questions would be: 1) Were these computers in fact using hardware encoding, but the efficiency was not good enough for long battery life? 2) Is there some limitation to QuickSync and possibly other hardware solutions that makes them impractical for realtime use? Possibilities include: - Maybe they are throughput optimized, and to work efficiently must take in large chunks of data at a time, which could increase latency beyond what would be acceptable for video calling - Maybe they can't simultaneously do video decode and encode (it seems at least some generations of QuickSync couldn't do this) - Maybe the hardware encoding isn't configurable enough to provide a low bandwidth typically used for video conferencing. I was unable to find answers to these in ~1h of googling. Would love it if someone here knows. 1: https://appleinsider.com/articles/19/04/09/apples-t2-chip-makes-a-giant-difference-in-video-encoding-for-most-users https://appleinsider.com/articles/19/04/09/apples-t2-chip-ma... 2: https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Development https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Develop... 3: https://en.wikipedia.org/wiki/Apple_T2#History https://en.wikipedia.org/wiki/Apple_T2#History