RocketChat / RocketChat/Rocket.Chat

[bug] Video Recorder: pause is not invoked after stop due to missing parentheses

Open
#38,718 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: bug
Dominant language
TypeScript
Stars
46.1k
Forks
13.9k
Avg merge
3d 3h
Merged PRs (30d)
130

Description

Description:

In apps/meteor/app/ui/client/lib/recorderjs/videoRecorder.ts (around line 112), the pause method of the video element is referenced but not invoked:

this.videoel.pause;

Because the method is not executed, the video element may continue playing or remain in an inconsistent state after stopping a recording.

This affects the video message recorder functionality and can cause unexpected playback behavior after pressing stop.


Steps to reproduce:
  1. Open Rocket.Chat.
  2. Navigate to a room where video message recording is available.
  3. Start recording a video message.
  4. Stop the recording.
  5. Observe the video element behavior after stopping.

Expected behavior:

When recording stops, the video element should properly pause by invoking:

this.videoel.pause();

The video should immediately stop and remain in a paused state.


Actual behavior:

The pause method is referenced but not called:

this.videoel.pause;

As a result, the video element may:

  • Continue playing
  • Keep updating playback time
  • Remain in an active or inconsistent state after stop
Server Setup Information:
  • Version of Rocket.Chat Server: develop (latest)
  • License Type: N/A
  • Number of Users: N/A
  • Operating System: N/A
  • Deployment Method: N/A
  • Number of Running Instances: N/A
  • DB Replicaset Oplog: N/A
  • NodeJS Version: N/A
  • MongoDB Version: N/A

Client Setup Information
  • Desktop App or Browser Version: Chrome (latest)
  • Operating System: Ubuntu 25.10 (or your local OS)

Additional context

This appears to be a simple typo where the function reference is used instead of invoking the function.

Minimal fix:

- this.videoel.pause;
+ this.videoel.pause();

This ensures the video element properly pauses when recording stops.


Relevant logs:

No server-side logs related.

Browser console does not throw an error, but the media element remains in an active playback state after stopping the recording.

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

Open apps/meteor/app/ui/client/lib/recorderjs/videoRecorder.ts around line 112 and inspect the stop-recording path. Ensure the video element is paused when recording stops, then reproduce the reported steps in Chrome and confirm playback stops and remains paused.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
audio-video-rtc, frontend
Issue type
Bug
Difficulty
1/5
Estimated time
Under an hour
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.