Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Video and Audio of participants is very often out of sync #6804

Closed
jacotec opened this issue Jan 20, 2022 · 7 comments
Closed

Video and Audio of participants is very often out of sync #6804

jacotec opened this issue Jan 20, 2022 · 7 comments

Comments

@jacotec
Copy link

jacotec commented Jan 20, 2022

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 a video call in a chat, even with one person is enough to see the issue
  2. At least one participant uses a browser (I see the issue with Edge and Chrome, Safari and FF not yet tested)
  3. Quite often at a point audio and video gets out of sync with a 1-3 seconds delay of video after audio
  4. It never resynce automatically during the call (like i.e. Jitsi does)

Expected behaviour

Video and Audio should be in sync. If it gets out of sync it should resync automatically after a short time.

Actual behaviour

Video and Audio often gets async with up to 3 seconds difference. Audio is always ahead video in this case.
Unfortunately it does not correct itself (this is what Jitsi does) in case it's not in sync anymore. The async state persists during the whole session unless the async participant leaves ans rejoins the call.

Additional info:
I'm running a Jitsi instance and a BigBlueButton instance on the same physical host in the datacenter as the HP Backend. The same TURN/STUN server is used for Jitsi, BBB and Talk.
With the same participants on the same connection with the same browser on the same machine the outcome is:

  • BBB: All perfectly in sync
  • Jitsi: Sometimes video and audio gets slightly(!) (<1s) out of sync, but this corrects itself after a few seconds here. So no issues which will distract users
  • Talk: If it gets out of sync, it can be massive (>3s sometimes) and it never syncronizes itself back (what Jitsi does). The issue persists for the affected participant until he disconnects and connects again to the session.

Talk app

Talk app version: 13.0.1

Custom Signaling server configured: yes, Running version: e856c413771dd578dae075319bad8567f4ff9eb9

Custom TURN server configured: yes

Custom STUN server configured: yes

Browser

Microphone available: yes

Camera available: yes

Operating system: Windows

Browser name: Edge, Chrome

Browser version: Edge 96.0.1054.62, Chrome 97.0.4692.71

Browser log

``` As this issue is very special and obviously need special script commands in console, please let me know what you need. ```

Server configuration

Operating system: Ubuntu 20.04

Web server: Apache

Database: MySQL

PHP version: 7.4

Nextcloud Version: 23.0.0

List of activated apps:

Enabled:
  - accessibility: 1.9.0
  - activity: 2.15.0
  - appointments: 1.11.11
  - apporder: 0.14.0
  - bbb: 2.2.0
  - bookmarks: 10.0.3
  - bruteforcesettings: 2.3.0
  - calendar: 3.0.5
  - circles: 23.0.0
  - cloud_federation_api: 1.6.0
  - comments: 1.13.0
  - contacts: 4.0.7
  - contactsinteraction: 1.4.0
  - dashboard: 7.3.0
  - dav: 1.21.0
  - deck: 1.6.0
  - drawio: 1.0.2
  - extract: 1.3.3
  - federatedfilesharing: 1.13.0
  - federation: 1.13.0
  - files: 1.18.0
  - files_automatedtagging: 1.13.0
  - files_downloadactivity: 1.12.0
  - files_external: 1.15.0
  - files_fulltextsearch: 23.0.0
  - files_fulltextsearch_tesseract: 22.0.0
  - files_pdfviewer: 2.4.0
  - files_retention: 1.12.0
  - files_rightclick: 1.2.0
  - files_sharing: 1.15.0
  - files_trashbin: 1.13.0
  - files_versions: 1.16.0
  - files_videoplayer: 1.12.0
  - forms: 2.4.0
  - fulltextsearch: 23.0.0
  - fulltextsearch_elasticsearch: 23.0.0
  - groupfolders: 11.1.2
  - guests: 2.1.0
  - logreader: 2.8.0
  - lookup_server_connector: 1.11.0
  - maps: 0.1.10
  - metadata: 0.15.0
  - nextcloud_announcements: 1.12.0
  - notes: 4.3.0
  - notifications: 2.11.1
  - notify_push: 0.3.0
  - oauth2: 1.11.0
  - password_policy: 1.13.0
  - photos: 1.5.0
  - polls: 3.4.2
  - previewgenerator: 3.4.1
  - privacy: 1.7.0
  - provisioning_api: 1.13.0
  - quickaccesssorting: 1.1.2
  - quicknotes: 0.7.3
  - quota_warning: 1.13.0
  - recommendations: 1.2.0
  - richdocuments: 5.0.1
  - serverinfo: 1.13.0
  - settings: 1.5.0
  - sharebymail: 1.13.0
  - socialsharing_email: 2.4.0
  - spreed: 13.0.1
  - support: 1.6.0
  - systemtags: 1.13.0
  - tasks: 0.14.2
  - text: 3.4.0
  - theming: 1.14.0
  - twofactor_backupcodes: 1.12.0
  - updatenotification: 1.13.0
  - user_status: 1.3.1
  - viewer: 1.7.0
  - weather_status: 1.3.0
  - workflow_pdf_converter: 1.8.0
  - workflowengine: 2.5.0
Disabled:
  - admin_audit
  - documentserver_community
  - encryption
  - firstrunwizard
  - survey_client
  - user_ldap

Nextcloud configuration:

{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "***REMOVED SENSITIVE VALUE***",
            "***REMOVED SENSITIVE VALUE***"
        ],
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "forwarded_for_headers": [
            "HTTP_X_FORWARDED_FOR",
            "HTTP_FORWARDED_FOR"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "23.0.0.10",
        "overwrite.cli.url": "https:\/\/cloud.fep.de",
        "htaccess.RewriteBase": "\/",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "maintenance": false,
        "mysql.utf8mb4": true,
        "enable_avatars": true,
        "default_language": "en",
        "default_locale": "de_DE",
        "default_phone_region": "DE",
        "defaultapp": "files",
        "skeletondirectory": "\/var\/www\/skeleton",
        "share_folder": "\/Shared",
        "log_type": "file",
        "logfile": "\/var\/log\/nextcloud\/nextcloud.log",
        "loglevel": "2",
        "mail_smtpmode": "smtp",
        "remember_login_cookie_lifetime": "1800",
        "log_rotate_size": "10485760",
        "trashbin_retention_obligation": "30, 60",
        "versions_retention_obligation": "auto, 365",
        "check_for_working_webdav": true,
        "simpleSignUpLink.shown": false,
        "memcache.local": "\\OC\\Memcache\\APCu",
        "filelocking.enabled": true,
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 0,
            "timeout": 0.5,
            "dbindex": 0
        },
        "logtimezone": "Europe\/Berlin",
        "preview_libreoffice_path": "\/usr\/bin\/libreoffice",
        "enable_previews": true,
        "enabledPreviewProviders": [
            "OC\\Preview\\PNG",
            "OC\\Preview\\JPEG",
            "OC\\Preview\\GIF",
            "OC\\Preview\\BMP",
            "OC\\Preview\\MarkDown",
            "OC\\Preview\\MP3",
            "OC\\Preview\\TXT",
            "OC\\Preview\\Movie",
            "OC\\Preview\\Photoshop",
            "OC\\Preview\\SVG",
            "OC\\Preview\\TIFF",
            "OC\\Preview\\HEIC",
            "OC\\Preview\\MKV",
            "OC\\Preview\\MOV",
            "OC\\Preview\\MP4",
            "OC\\Preview\\AVI",
            "OC\\Preview\\PDF",
            "OC\\Preview\\OpenDocument",
            "OC\\Preview\\MSOffice2003",
            "OC\\Preview\\MSOffice2007",
            "OC\\Preview\\MSOfficeDoc",
            "OC\\Preview\\Image",
            "OC\\Preview\\PPT",
            "OC\\Preview\\PPTX"
        ],
        "preview_max_x": "2048",
        "preview_max_y": "2048",
        "jpeg_quality": "60",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "465",
        "theme": "",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpsecure": "ssl",
        "updater.release.channel": "stable",
        "app_install_overwrite": [
            "files_fulltextsearch_tesseract",
            "previewgenerator",
            "quickaccesssorting"
        ]
    }
}

Server log (data/nextcloud.log)

I actually don't like to public share 3k lines of log file including IP addresses etc.
But there are no conspicious entries created during a call.
As anything is working I'm in doubt that any entries are created just due to the sync problem at all.
Let me know if you need something here nevertheless
@nickvergessen
Copy link
Member

@fancycode sounds like an issue for the HPB?

@fancycode
Copy link
Member

Which version of Janus are you running? The signaling server itself doesn't do anything with audio/video, so if there is a problem on the server side, it will be in Janus.

@jacotec
Copy link
Author

jacotec commented Jan 20, 2022

@fancycode janus 0.7.3
It's from the Ubuntu 20.04 repo.

@fancycode
Copy link
Member

I would suggest to update Janus to a newer version, latest is v0.11.6 so your v0.7.3 is rather old. See the Janus documentation for dependency recommendations: https://github.com/meetecho/janus-gateway#dependencies

@fancycode
Copy link
Member

v0.7.3 is from July 2019, I assume there have been lots of improvements since then.

@jacotec
Copy link
Author

jacotec commented Jan 20, 2022

I've updated Janus to 0.11.2 via https://gitlab.com/packaging/janus
I'll retest and report, thanks for the hint!

@jacotec
Copy link
Author

jacotec commented Jan 20, 2022

I've had three calls with no issues meanwhile and also found a solved sync issue in the Janus issue list fixed in early 2020. Looks good for now, I'm closing this.

Thanks for your help @fancycode @nickvergessen !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants