Voice message length display not working on most platforms

Description

Server Setup Information

  • Version of Rocket.Chat Server: 3.6.2
  • Operating System: Ubuntu 20.04
  • Deployment Method: Manual
  • Number of Running Instances: 1
  • DB Replicaset Oplog:
  • NodeJS Version: v12.14.0
  • MongoDB Version: 4.0.20
  • Proxy: HAProxy
  • Firewalls involved: pfSense

I’ve migrated from Matrix due to loads of missing feature - like voice messages.
There is a strange issue with voice messaging: The total time display is not there or totally wrong, depending on the platform.

In the IOS client the total time of the message is displayed with 00:00 - so users have no idea how long a voice message is. Also the slider to scrub through the message is not working, You can play back and pause, but that’s it.

In Firefox the players show crazy times. A voice memo of 40 seconds is shown with a length of something like 18:15 minutes. The scrub slider works pretty bad because the player thinks it’s 18 minutes long but in reality it’s below a minute.

In Safari there is no time at all … it just mentions “live broadcasting”:

Here’s the issue in the mobile client (IOS 14), that’s a voice message of 30 seconds:

Only in Chrome the times are exact. But that’s not helpful for the 90% mobile app usage.

Any ideas what can be wrong? Where does the client get the time of the voice message from?