obsproject / obsproject/obs-studio

Possible loss of VSync functionality of "Monitor" source

Open
#12,346 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
76.4k
Forks
10.2k
Avg merge
4d 23h
Merged PRs (30d)
12

Description

Operating System Info

Windows 10

Other OS

No response

OBS Studio Version

31.0.4

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/qWXfaIjxlWnwVamk

OBS Studio Crash Log URL

No response

Expected Behavior

When "Monitor" is selected as a source, every frame of the captured source is intact, because the capture is sync'ed with the monitor refresh rate. It does not occurr that half of the frame consists of the previous frame.

Current Behavior

When recording from a monitor source, some frames are "split". The upper half of the frame shows the next frame, while the lower half still consists of the old frame.

Steps to Reproduce
  1. Add a "Monitor" source as the only source in the current scene.
  2. Set the Recording type to ffmpeg. Record to matroska. (Not sure, if relevant)
  3. Run a movie with quick scene changes or fast horizontal movements on the monitor of step 1.
  4. Start the recording in OBS for a few minutes.
  5. Open the recorded file in an editor like Avidemux.
  6. Scroll through the movie until you encounter a split frame.
Anything else we should know?

I did a few sample recordings from the same movie with version 30.2.3 and had 0 split frames. With version 31.0.4 I had multiple split frames, sometimes in the same recording of only a few minutes or even seconds. It didn't seem to matter, whether the recording method is "DXGI" or "Windows 10".

If the recording is not sync'ed, the split frames affect the visual experience of the output.

Example:

Image

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 reviewing the linked OBS Studio log, then trace the Monitor source capture path and compare the DXGI and Windows 10 capture modes using the listed reproduction steps. Record to Matroska with ffmpeg and inspect the output for split frames; done means neither mode produces frames combining adjacent monitor frames.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.