Feat: experimental syphon output#622
Merged
Merged
Conversation
Publish MapMap's rendered output as a Syphon server so other macOS apps can
receive it ("virtual projector"). Opt-in via a checkable "Publish Syphon
Output" item in the View menu (off by default; state persisted).
- SyphonOutput (+ SyphonServerImpl.mm): wraps SyphonOpenGLServer. Each frame it
MSAA-resolve-blits the output canvas's framebuffer into the server's FBO and
publishes it, entirely on the GPU (bindToDrawFrameOfSize/unbindAndPublish).
The server is created lazily with the output GL context and recreated if the
context changes.
- OutputGLCanvas publishes the clean composition at the start of
drawForeground() (before the test-signal/crosshair overlays), at the output
resolution.
- macOS-only (HAVE_SYPHON-gated); publishes while the output window is open.
Phase 2 (a draggable capture region + custom output resolution) builds on this.
- Add Help menu items "Professional services" (Art Plus Code) and "Support the project", with matching links in the About dialog. - Replace the redundant "Technical support" item; reorganize the Help menu into free-help / community / commercial groups. - Add SERVICES_URL and DONATE_URL string constants (MM.h/MM.cpp). - Consolidate funding: FUNDING.yml points to GitHub Sponsors (mapmapteam) as the primary destination, keeping Open Collective as a secondary option.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This branch contains two independent changes:
source on macOS, gated behind an experimental build flag (off by default).
professional services and to project donations.
Syphon output (experimental)
SYPHON_OUTPUT_EXPERIMENTALbuild flag(see
src/src.pri).SyphonServerImpl.mm,OutputGLCanvas.cpp,MainWindow.cpp(guards),src/src.pri.In-app links to services and donations
(→ artpluscode.com) and "Support the project (donate)" (→ GitHub Sponsors).
removed the redundant "Technical support" item (it duplicated "Documentation").
SERVICES_URLandDONATE_URLconstants inMM.{h,cpp}.FUNDING.yml: consolidated to GitHub Sponsors (mapmapteam) as the primarydestination, with Open Collective kept as a secondary option.
Notes