nextcloud / nextcloud/spreed

Video lag (stutter) on all platforms excepting android

Open
#14,712 6 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

bug feature: call 📹 feature: WebRTC 🚡
Dominant language
PHP
Stars
2.2k
Forks
587
Avg merge
18h 27m
Merged PRs (30d)
333

Description

How to use GitHub
  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Steps to reproduce

  1. Open Talk desktop client on Linux, or Windows 10/11, or MacOS x86, or in Chromium web browser
  2. Start video call with any participant which uses any OS from step 1
  3. Alternative test is using Firefox browser on both ends
Expected behaviour

I expect normal smooth video stream without lag, stuttering or jumpy frames

Actual behaviour

A. On all desktop apps (I believe they are all electron based) and if opened in Chromium browser - Participant video always noticeably stuttering, movements are jumpy, sound is ok
B. Firefox behaves different - video movements are smooth, but very low resolution (I cannot check what exactly, but looks like 240p or so)
C. Only Android Talk client has no such issue (iOS not tested as I have no such device)

Tested with 2,3,4 and 5 participants: the problem always persists
Server is connected to internet with fibre, speed 500/200 mbps
Clients are connected to internet either with speed 500/200 or 100/100 mbps

Talk app

Talk app version: 21.0.1, Desktop app version: v1.1.5

Custom Signaling server configured: yes, latest version from git (tested by installing on Linux server and on Freebsd server, the same behavior)

Custom TURN server configured: yes

Custom STUN server configured: yes

Server configuration

Operating system: FreeBSD

Web server: Nginx

Database: PostgreSQL

PHP version: 8.3

Nextcloud Version: 31.0.2

List of activated apps:

Enabled: - activity: 4.0.0 - bruteforcesettings: 4.0.0 - calendar: 5.2.0 - circles: 31.0.0 - cloud_federation_api: 1.14.0 - comments: 1.21.0 - contacts: 7.0.4 - contactsinteraction: 1.12.0 - dashboard: 7.11.0 - dav: 1.33.0 - federatedfilesharing: 1.21.0 - federation: 1.21.0 - files: 2.3.1 - files_downloadlimit: 4.0.0 - files_pdfviewer: 4.0.0 - files_reminders: 1.4.0 - files_rightclick: 1.6.0 - files_sharing: 1.23.1 - files_trashbin: 1.21.0 - files_versions: 1.24.0 - firstrunwizard: 4.0.0 - logreader: 4.0.0 - lookup_server_connector: 1.19.0 - memories: 7.5.2 - notifications: 4.0.0 - notify_push: 1.0.0 - oauth2: 1.19.1 - password_policy: 3.0.0 - photos: 4.0.0-dev.1 - previewgenerator: 5.8.0 - privacy: 3.0.0 - profile: 1.0.0 - provisioning_api: 1.21.0 - recognize: 9.0.0 - related_resources: 2.0.0 - richdocuments: 8.6.3 - serverinfo: 3.0.0 - settings: 1.14.0 - sharebymail: 1.21.0 - spreed: 21.0.1 - systemtags: 1.21.1 - text: 5.0.0 - theming: 2.6.1 - twofactor_backupcodes: 1.20.0 - updatenotification: 1.21.0 - uppush: 2.3.0 - user_status: 1.11.0 - viewer: 4.0.0 - webhook_listeners: 1.2.0 - workflowengine: 2.13.0

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the call in the Talk desktop client, Chromium, and Firefox using the listed platform combinations, while comparing Android behavior. Investigate the media path involving the configured signaling, TURN, and STUN servers. Done means smooth video without stutter across the affected desktop and browser clients, with audio still working.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron, javascript
Domain
audio-video-rtc, desktop, web-dev
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.