obsproject / obsproject/obs-studio

OBS unable to send frames while SetSyncSource(NULL) is not called before Running the graph.

Open
#4,929 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

platform/windows
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

26.1.1

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/ptLFydlj6PkE2jQM

OBS Studio Crash Log URL

No response

Expected Behavior

N/A

Current Behavior

I wrote a Capture graph for capturing the video frames from any Virtual camera. The graph looks like
SourceFilter -> SampleGrabberFilter -> NullRendererFilter.
The graph is able to capture the video frames from all the Virtual camera except OBS.
If I call IMediaFilter::SetSyncSource(NULL) just before starting the graph then OBS continuously sends frames and ISampleGrabber::SampleCB is called for every frame. But calling IMediaFilter::SetSyncSource(NULL) is not a recommended method to call from an application. So, I can't call this method.

If I don't call IMediaFilter::SetSyncSource(NULL) just before starting the graph then other devices sends frames accurately but OBS only sends a ingle frame means ISampleGrabber::SampleCB is called for a single time. That's why the UI became freeze. Is it an issue in OBS filters?

Steps to Reproduce

N/A

Anything else we should know?

N/A

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 OBS Studio log and the reported DirectShow graph: SourceFilter → SampleGrabberFilter → NullRendererFilter. Compare capture behavior with and without IMediaFilter::SetSyncSource(NULL), then determine whether OBS fails to deliver continuous frames and document the conditions needed to reproduce it.

Written by the indexing model from the issue text.

Assessment

Domain
audio-video-rtc, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.