While on it, a quick update to the previous post/application:
// Oprogramowanie Roman Ryltsov
While on it, a quick update to the previous post/application:
A variant of previous CaptureEngineVideoCapture demo application which features AMD Advanced Media Framework SuperResolution scaler for video. It is basically a live video camera application started in low resolution mode, and it enables you to switch between GPU (OpenCL probably?) implemented realtime upscaling modes. AMD scaler is wrapped into Media Foundation Transform and is applied…
Back to some experiments… The current video capture API in Windows is Media Foundation Capture Engine API (AKA IMFCaptureEngine and mfcaptureengine.h). Media Foundation is layered: you can work at lower level with video capture Media Sources, but if you don’t want to go into details you have the Capture Engine. The application continues a good…
One of the truly unconventional development projects was our development of specialized automated agent for foreign exchange (FX) trading.
The customer wanted to implement their unusual ideas at one (and then another) of the popular electronic Forex market trading platforms. The key idea was to be a market maker and a liquidity provider agent, and also to be able to provide the fastest reaction to market events.
Applications like this, that are touching big/real money are normally developed in respective way: robust tooling, a well-established software stack, comprehensive unit test coverage, peer-reviewed code, and thorough documentation.
We were breaking all the rules! That time we took a different approach — a quick and dirty one.
Singlehandedly and rather straightforwardly, we implemented a #FIX (Financial Information eXchange) client in C++ addressing ultra-low latency, and the application was running on a box connected via secure fiber connection with the platform data center located in neighboring building.
At the peak of the swing, we had positions at CurrenEx worth a jaw-dropping $15 million. Yeah, you read that right. Fifteen million bucks!
Throughout many years of hashtag#DirectShow development, one project stood out with unwavering popularity: the Windows Virtual Camera sample ????. Originally authored by Vivek in 2005 or even earlier, it was shared on the “microsoft. public. win32. programmer. directx. video” Usenet conference. This project gained prominence because it addressed a problem that had no existing solution within the Windows SDK, and Microsoft had not expressed any intention to rectify it.
The source code for this virtual camera project was once hosted by Philip “The March Hare” on his personal website. However, given the passage of time, even that website does not longer exist.
We decided to breathe new life into this project, affectionately known as “VCam”, and made it available on GitHub: https://lnkd.in/dGUH9v79. Despite our confidence that the project and its approach are no longer current, there remains significant interest in this source code, with thousands of mentions across the internet.
At the GitHub repository, you’ll find not only the source code and build instructions but also pre-built binaries, demonstration, and references to the original contributors.
An under 100 lines of C++ code sample that plays an MP3 file with Microsoft Media Foundation. https://github.com/roman380/MediaFoundationMinimalAudioPlayback Comes from this StackOverflow question, however unlike Microsoft’s sample it does not spread simple code among multiple source code files, gives a quick way to build & run, shows modern C++ practices (including Microsoft Windows Implementation Library…
I am sometimes using a rework of earlier DxgiTakeSnapshot application for one specific purpose mentioned below. In addition to Desktop Duplication API, recent version of Windows offer a similar (in sense of acquisition of external video content) API: Windows.Graphics.Capture (hereinafter “WGC”), and the new rework is using this API to capture visual content as a…