All Projects → arBmind → desktop-duplication-cpp

arBmind / desktop-duplication-cpp

Licence: MIT license
Windows Desktop Duplication Tool for live coding presentations in C++2a

Programming Languages

C++
36643 projects - #6 most used programming language
QML
638 projects

Projects that are alternatives of or similar to desktop-duplication-cpp

BetterWindows
Some windows tips to improve your UX experience when using windows
Stars: ✭ 27 (-47.06%)
Mutual labels:  windows-desktop, windows10
Bonzomatic
Live shader coding tool and Shader Showdown workhorse
Stars: ✭ 829 (+1525.49%)
Mutual labels:  directx, livecoding
Windows-Optimize-Harden-Debloat
Fully Optimize, Harden, and Debloat Windows 10 and Windows 11 Deployments to Windows Best Practices and DoD STIG/SRG Requirements. The ultimate Windows 10 & 11 security and privacy script!
Stars: ✭ 304 (+496.08%)
Mutual labels:  windows-desktop, windows10
Methanekit
🎲 Modern 3D graphics made simple with cross-platform C++17 meta-API on top of DirectX 12 & Metal (Vulkan is coming)
Stars: ✭ 197 (+286.27%)
Mutual labels:  directx, windows-desktop
DirectN
Direct interop Code for .NET Framework, .NET Core and .NET 5+ : DXGI, WIC, DirectX 9 to 12, Direct2D, Direct Write, Direct Composition, Media Foundation, WASAPI, CodecAPI, GDI, Spatial Audio, DVD, Windows Media Player, UWP DXInterop, etc.
Stars: ✭ 128 (+150.98%)
Mutual labels:  directx, dxgi
x1
A Windows taskbar replacement in C# .NET
Stars: ✭ 25 (-50.98%)
Mutual labels:  windows-desktop, windows10
ExpertVideoToolbox
A lightweight, versatile GUI of x264, x265. Nearly full input formats support, .mkv and .mp4 output support. Avs support will be added soon. Language: Chinese
Stars: ✭ 12 (-76.47%)
Mutual labels:  windows-desktop
stereo
Perform stereo matching algorithm using Direct 3D (level 9.3) on a mobile device without CUDA support.
Stars: ✭ 13 (-74.51%)
Mutual labels:  directx
Light-Switch
Easily switch from light to dark theme, or the other way around, in Windows 10/11.
Stars: ✭ 25 (-50.98%)
Mutual labels:  windows-desktop
wgpu-mc
Rust-based replacement for the default Minecraft renderer
Stars: ✭ 254 (+398.04%)
Mutual labels:  directx
MetaWear-SDK-Python
MetaWear Python SDK - Linux / Windows - Python3
Stars: ✭ 43 (-15.69%)
Mutual labels:  windows10
Autopilot-Manager
Autopilot Manager simplifies Windows Autopilot imports by using a small client program and an Azure app service.
Stars: ✭ 24 (-52.94%)
Mutual labels:  windows-desktop
game
Game Castlevania DirectX - Nhập môn phát triển game
Stars: ✭ 34 (-33.33%)
Mutual labels:  directx
CrossWindow-Demos
🥪 Examples of how to use CrossWindow for things like rendering graphics, listening to events, etc.
Stars: ✭ 48 (-5.88%)
Mutual labels:  directx
winsys
STATUS: DEVELOPMENT PAUSED ⏸️ - Configure your Windows
Stars: ✭ 56 (+9.8%)
Mutual labels:  windows10
cpu-gbfilter
♨️ Optimized Gaussian blur filter on CPU.
Stars: ✭ 14 (-72.55%)
Mutual labels:  multithreaded
Tensor
A library and extension that provides objects for scientific computing in PHP.
Stars: ✭ 146 (+186.27%)
Mutual labels:  multithreaded
Windows-10-tweaks
This repo contains multiple scripts to optimize windows 10
Stars: ✭ 37 (-27.45%)
Mutual labels:  windows10
radiant-voices
SunVox file format tools (create, modify, read, write)
Stars: ✭ 36 (-29.41%)
Mutual labels:  livecoding
improviz
A live-coded visual performance tool
Stars: ✭ 85 (+66.67%)
Mutual labels:  livecoding

Windows Desktop Duplication Tool

This is a nifty tool to host live coding in presentations.

You have your IDE and private notes on your main screen. The tool only captures the code portion of this screen and shows it fullscreen on your presentation monitor or projector.

Usage Schema

Personally I use this tool to host C usergroup meetings, client meetings and professional C trainings.

Features

By top left part of the primary screen is duplicated to a window on the right part of the same screen.

Interactions:

  • Move the window whereever you need it. Beamers for live coding and presentations.

  • Double Left Mouseclick maximizes the window.

    • The entire screen is now mirroring (no window frame)

    • We prevent Windows from going to sleep mode in this presentation mode

  • The Zoom also changes captured area.

    • Ctrl + Mousewheel /+/- allows you to zoom

    • CtrlShift + Mousewheel zooms in smaller steps

    • Ctrl + 0 reset zoom to 1:1

  • Moving the captured area.

    • Shift + Left Mouse Button + Dragging ⇔⇕ allows you to move the visible portion

    • Shift + /// aligns the mirrored image to the border

  • Move Window into captured area.

    • Right Mouse Button + [Focus other Window] will position and resize the other window into the mirrored area. Not all windows will like this.

  • Interactions:

    • Note: You can hover over the window icon in the taskbar and use the buttons there.

    • Shift + Right Mouse Button toggle a visualisation of the captured area

    • Ctrl + P toggle pause. Freezes the image.

The tool is optimized to be very response and save CPU time.

History

2.x - TBA

  • Your Ideas are welcome (see Contributions)

2.0 - 2021-01-17

  • pause / freeze feature

  • visualization of state in taskbar

  • taskbar buttons for interactions

  • mitigated the double buffering bug (last change was missing)

  • performance enhancements (less CPU und GPU required)

  • cleaned up code base (easier to start new features)

1.0 - 2017-04-16 (Revision Easter Release)

  • first public version

  • hand crafted at the Revision Demo Party

  • basic features are working

Requirements

  • DirectX 11

  • Windows 10

Build yourself

The desktop duplicator was build using QtCreator with Qbs and MSVC2019.

The only other thing you need is the DirectX and Windows and WRL headers. All included in the Windows 10 SDK.

If you have issues please ask.

License

Read the LICENSE file!

Contributions

If you have issues or questions feel free to open a ticket.

If you can answer a question in a ticket, help is appreciated.

If you like the tool, leave a star on Github and spread the love.

All usefull pull requests are welcome! If you have an idea and are unsure, please open a ticket for discussions.

Enjoy!

\0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].