openframeworks / openframeworks/openFrameworks

loadAsync() Windows DirectShowPlayer

Open
#4,742 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
10.4k
Forks
2.6k
Avg merge
1d 21h
Merged PRs (30d)
9

Description

Hi,

I've been wanting to use the loadAsync function under Windows and arturo let me know it's not yet implemented. using ofxGSteamer is an alternative, though pulling in more dependencies is sometimes not making things easier, but it works great.

I'm dropping here some infos regarding this here, for myself and others coming across this in the future.

It seems like the IBaseFilter's should be replaced with IAsyncReader, when trying to load asyncronously.

https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofDirectShowPlayer.cpp#L1048-L1050

IBaseFilter docu: https://msdn.microsoft.com/en-us/library/windows/desktop/dd389526(v=vs.85).aspx
IAsyncReader docu: https://msdn.microsoft.com/en-us/library/windows/desktop/dd376085(v=vs.85).aspx

In case somebody has already been working on this, please let me know what's going on. I'll check this out in more detail soon.

Marcel

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 in libs/openFrameworks/video/ofDirectShowPlayer.cpp around lines 1048-1050 and review the existing Windows DirectShowPlayer loading path. Compare the IBaseFilter and IAsyncReader documentation linked in the issue. Done means loadAsync works under Windows without requiring ofxGSteamer, with the DirectShowPlayer behavior verified against the existing implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
audio-video-rtc, desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.