xaudio2

Open-source projects categorized as xaudio2
Language: + C++ + C# + Rust

Top 3 xaudio2 Open-Source Projects

  • FAudio

    FAudio - Accuracy-focused XAudio reimplementation for open platforms

  • terrafx.interop.windows

    Interop bindings for Windows.

  • Project mention: Is there a real time graphics llibrary in c# | /r/csharp | 2023-05-17

    A couple other options than what has been suggested so far: - TerraFX.Interop.Windows. Raw, blittable, 1:1 bindings for all Win32, D2D/D3D11/D3D12 APIs (there's also a version with Vulkan bindings). As close to doing #include as you can get in C#. This is my personal favorite, I use it in my own ComputeSharp library, and transitively we use it in the Microsoft Store too 🙂 - Silk.NET another version of high-performance bindings, more opinionated than TerraFX and with some additional helpers to make it a bit easier to use.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • thindx-xaudio2

    Rust bindings for XAudio2

  • Project mention: Improving Interoperability Between Rust and C++ | news.ycombinator.com | 2024-02-05

    Vtables are pretty solved as well. I do a lot of Windows COM interop. Using the `windows` crate, vtables for COM interfaces are relegated to an implementation detail - instead you simply implement a (typically safe!) trait:

    https://microsoft.github.io/windows-docs-rs/doc/windows/Win3...

    Which can then be converted to a refcounted smart pointer:

    https://microsoft.github.io/windows-docs-rs/doc/windows/Win3...

    All driven by win32 sdk parsing and metadata.

    But suppose we want to roll our own, because we tend to prefer `winapi` but it lacks definition. That's not too terrible either:

    • https://github.com/MaulingMonkey/thindx-xaudio2/blob/master/...

    • https://github.com/MaulingMonkey/thindx-xaudio2/blob/master/...

    • https://github.com/MaulingMonkey/thindx-xaudio2/blob/master/...

    I could more heavily lean on my macros ala `windows`, but I went the route of manual control for better doc comments, more explicit control of thread safety traits to match the existing C++ codebase, etc.

    Is there some pointer casting? Yes. Is it annoying or likely to be what breaks? No. What is annoying?

    • Stacked borrows and narrowing spatial provenance ( https://github.com/retep998/winapi-rs/issues/1025 - this can be "solved" by sticking to pointers ala `windows`, or by choosing a different provenance model like rustc might be doing?)

    • Guarding against panics unwinding over an FFI boundary. This is at least being worked on, but remains unfinished ( https://rust-lang.github.io/rfcs/2945-c-unwind-abi.html )

    • Edge case ABI weirdness specific to C++ methods ( https://devblogs.microsoft.com/oldnewthing/20220113-00/?p=10... , https://github.com/retep998/winapi-rs/issues/523 )

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

xaudio2 related posts

Index

What are some of the best open-source xaudio2 projects? This list will help you:

Project Stars
1 FAudio 527
2 terrafx.interop.windows 235
3 thindx-xaudio2 1

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com