signalapp / Signal-Desktop

A private messenger for Windows, macOS, and Linux.
https://signal.org/download
GNU Affero General Public License v3.0
14.65k stars 2.67k forks source link

Group video call - video periodically freezes #5002

Open Scott-Barnett opened 3 years ago

Scott-Barnett commented 3 years ago

Bug Description

During a group video call, video periodically freezes (during which audio can be heard fine). This appears to occur when the video quality of the feed changes (likely due to network strength changes on the other end). When a freeze occurs, it can be short or last a number of seconds (potentially until they make a noise, although that is untested).

Steps to Reproduce

  1. Create a modern group and participate in a call with 2+ participants
  2. Conduct a normal conversation and if the glitch doesn't occur for others, walk around in areas of differing network connectivity.
  3. The other participants in the call should see your video feed freeze

Actual Result:

The video feed freezes and then when it resumes often the video quality has changed.

Expected Result:

The video quality should change without any pause in the video transmission.

Platform Info

Signal Version: 1.39.6 - This was the device viewing the freezes (and not freezing to others). However others on iOS (iPad app) also experienced the freezes. The device transmitting the frozen video was on the latest iOS version, however the latest Android version has also exhibited the same behaviour.

Operating System: Fedora F33

Linked Device Version: 5.3.12

Link to Debug Log

Logs from the Fedora F33 client that was seeing periodically frozen video (not freezing for others) https://debuglogs.org/788aa517c0235817952a0fcc26720675631c42cc53a39b2eb61d994eb15c79fe

jim-signal commented 3 years ago

Hi @Scott-Barnett, would it be possible to get the debug logs from the iPad in that case? From the log provided, there is one device that shows high packet loss. For example, there are a few bursts where no packets are received for 10 seconds, and once they do come, 40% are lost or dropped. This would explain the video freezing. Perhaps from the other log we can see more information about why.

Thanks!

Scott-Barnett commented 3 years ago

Hi @jim-signal , sorry for the delayed response. I have since had another call with the same participants and have managed to collect debug logs from all three:

In the above, both the Fedora F33 device and the iPad experienced regular freezes of the iPhone's video feed.

One thing to note - the iPhone user did semi-regularly move to another app whilst the call was in progress, this had the same symptoms as the freezes (unfortunately there is no "Paused" screen or equivalent to help show this is the case) but there were also a large number of freezes that were not related to this issue.

Scott-Barnett commented 3 years ago

Hi @jim-signal , I just wanted to confirm that the above logs were enough as I've just had another call with the same symptoms (on the latest Signal Desktop 1.40.0) and could provide more logs/information if required.

jim-signal commented 3 years ago

Hi @Scott-Barnett, yes, sorry for my late response. The logs are helpful and really appreciate having logs from all sides of the conference. We are still trying to track down the issues and it seems that at least one client is having trouble with the server, and it is possible this is on the server side, which we are trying to work out.

Scott-Barnett commented 3 years ago

Hi @jim-signal, I've just had another call with the same group of people (first one in a while) on the latest Signal Desktop 5.0.0 and unfortunately these symptoms were still present, so I was wondering if there has been any progress with the bug?

jim-signal commented 3 years ago

Hi @Scott-Barnett, sorry that you still had problems with the group call. Sometimes the one or more of our servers start behaving erratically. If you could send out an updated debug log file, I could probably see the region used and see if one of those servers would need to be cycled, and rule out other things.

Scott-Barnett commented 3 years ago

Hi @jim-signal, thanks for the reply. I'll grab more logs from all the devices next time we have a call (might be a few weeks)

Scott-Barnett commented 3 years ago

Hi @jim-signal, sorry for taking so long to get back to you. I have finally had another group call, interestingly both of the other clients were stuttering for me, but apparently I was not stuttering for them.

The debug logs are as follows:

hubyhuby commented 2 years ago

I also have regular freezes when activating video. Here it is the CPU with a TWO person visioconference. I am on Linux and my colleague is on WIndows We get a very high constant CPU usage of 200% during all of the conversation (150+25+25%). On an intel Core i3 8145U (2 real cores) My all computer is slowing down aswell. When using for example google meet it is very smooth and there is no lag at all even with 6 persons video calls. My feeling is that I managed to run google chrome with GPU acceleration and eventually Signal Desktop is not using GPU acceleration via Intel VA API . It s similar to when I didn t had VA API watching youtube videos would get my CPU to 100% because it would do sfotware decoding. I can imagine that since Signal Desktop is Elctron / chrome based, the video optimization path would be the same = VA API Note that Signal on a smartphone is more optimized ford video calls, since I get no such lags on Android.

ScrShot-11-mars

*Teams conference call using Chrome browser with 20 persones + 5 videos , uses about 90% CPU usage. : image

We may want to have such flagg report as this one in signal desktop (chrome://gpu/) , so we could optimize it.

indutny-signal commented 2 years ago

@hubyhuby sorry about that. What version of Desktop app you are on?

hubyhuby commented 2 years ago

Thank you for coming back to me @indutny-signal , It have slow video calls since I have started to use signal desktop 9 monthes ago. I don't think it is some kind of bug. It is just not optimised for video encoding/ decoding on moderne hardware. Every day for 9 monthes at 9AM I am doing my work conference call with Signal, and every day it slows my computer. And It struggels to show 2 to 10 images /sec I have Signal 5.35.0 Ubuntu 20.04.4 LTS (Mate) Processeur Intel® Core™ i3-8145U / 4 Mo de cache, jusqu'à 3,90 GHz image

vainfo : image

indutny-signal commented 2 years ago

Got it. Thank you for the information, and sorry it runs slow!

hubyhuby commented 2 years ago

Signal 5.37 seams to improve a little on the situation. Instead of beeing at 200% CPU (on 2 core computer) - when doing my daily video meeting with 2 other persones - it is at ~160% . Which is nice , because my computer doesn t slow down to a 1990 computer, and I can do other tasks. Until there is hardware VA API acceleration, it is good to see it is getting more usable. And I just noticed you can share only one window now , that s great ! (we have 4K displays!)

On the down side It looks like we now get "méga freezes", where the conversation is completelly freezed. I have even been thrown out of the meeting, and could join back.

ScrShot-06-avril_1

EDIT 18/06/22 Still have freezes with video , but no complet crashe from the desktop app since 1 month. Looking forward to video optimization on the desktop app, little anoying to be stuck on audio calls and having the fan of my laptop at 100% when starting the video.