-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate to .NET 4.7.1 and to SharpDX #55
Comments
I've been working on that for a while, trying to manually backport from Ver.K 4.10, with adaptations when needed. I had to reorganise the directory structure to make the build process work, and to align with DTXMania and latest Ver.K. |
@fisyher and myself highly recommend this adaptation. As SharpDX is no longer in active development, do consider Vortice.Windows as an alternative. |
SharpDX is a good choice as it is very stable and used in many projects. Which library should we use to replace SoundDecoder? |
Original dtxmania seems already removed SoundDecoder... (BASS.DLL is used instead of SoundDecoder) There are mainly 2 commits to implement it; First one is to remove SoundDecider.dll, second one is to fix degrade (for keeping legacy support) But it seems there are many commits about audio support.... it might be better to use whole source code of the latest original ones, instead of patching to our code. |
Our fork uses Un4seen for audio support. As mentioned by tanabotadtx, BASS.NET is responsible for all audio processing. DirectSound has been superseded by XAudio2. According to Low Latency Audio in the Windows Hardware documentation, we can natively use Windows 10's AudioGraph or WASAPI. ASIO should come from Steinberg. |
I'm really following what was done in other DTXMania versions, not more.
I didn't know of Vortice.Window. Indeed that would be the best choice going forward, but this will be much more work than what I did (backporting the migration to SharpDX done by other version). Same for migration from DSound to XAudio2. I agree we should do that, but it's much more work than what I did (which was already not so easy as the commits in Ver.K were in the middle of tens of unrelated changes). We can open another wishlist item for Vortice, and one for XAudio2 :-) |
Awesome, just feel free to merge whenever the FDK is ready. Anything extra will be added on the wishlist. |
OK, merged. |
The project is currently using very old Dot Net framework 3.5, SlimDX library which was abandoned years ago, and SoundDecoder which is also abandonned.
Other DTXMania forks have already upgraded to recent .NET versions and to SharpDX which is an active C# DirectX wrapper. Original DTXMania did the migration first, and DTXMania Ver.K did it in version 4.10, DTXMania AL did it too.
We need to do it too, in order to benefit from the optimisations brought by recent .NET framework, better quality libraries, especially for sound decoding.,
This is also a prerequisite for a future migration to 64 bit (already done by DTXMania, VerK 4.x and AL) which should optimize memory access for people with large simfile libraries.
Finally this will make it easier to backport features or fixes done in other forks.
The text was updated successfully, but these errors were encountered: