Page 2 of 2

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Thu Sep 15, 2016 8:41 am
by EmuandCo
Not really, MIDI is completely not working on ROS yet. That's why I was so happy to hear of your success. Maybe setting stuff to release build will help. Need to check out how this was done again though. ^^

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Thu Sep 22, 2016 12:35 pm
by Cismontjoy
Well, i have been testing the ReactOS winmm and there a known issues which really affects audio stability, this recording was done with TMIDI64 using the ReactOS winmm running under Windows 10 and Keppy's Synthesizer by KaleidonKepp99 as MIDI Out Device.

https://drive.google.com/file/d/0B-jbdg ... sp=sharing

If you are wondering about the computer specs, is an HP laptop:
Intel Core i7 5500U 2.4 GHz (3.0 GHz turbo)
12 GB RAM DDR3L
Intel HD 5500 and Geforce 820M
HGST 1 TB 5400 rpm HDD
Windows 10 Home x64 version 1607, build 14393

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Mon Oct 10, 2016 8:06 pm
by KaleidonKep99
upup :(

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Wed Jan 18, 2017 1:00 am
by KaleidonKep99
Up? I'm still trying to figure out how to remove the DEBUG flag, since it seems like it's slowing down MIDI performance.

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Wed Jan 18, 2017 9:36 am
by EmuandCo
You need MSVC 2013+ and build it from the x64 native console. There was a switch to force release mode which I dont remember right now though... Need to check for it

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Mon Feb 27, 2017 4:42 pm
by KaleidonKep99
Still trying to figure out how to disable the debug mode, but nothing... :(
Any help?

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Tue Feb 28, 2017 12:44 pm
by none
You can try run

Code: Select all

configure.cmd -DCMAKE_BUILD_TYPE:STRING=Release
and change OPTIMIZE option to 5 or 6(before configure). I'm not sure about it really work and about fixing your issue. Issue may be in timers, optimization will not help if this true.

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Mon Mar 20, 2017 6:29 pm
by KaleidonKep99
none wrote:You can try run

Code: Select all

configure.cmd -DCMAKE_BUILD_TYPE:STRING=Release
and change OPTIMIZE option to 5 or 6(before configure). I'm not sure about it really work and about fixing your issue. Issue may be in timers, optimization will not help if this true.
Ok so...
I did compile it with both RELEASE and OPTIMIZE 6 options, and... It performs worse.

I don't know what happened to the source code in WinMM, but it seems like it doesn't perform really well. The audio also gets really static-y and jump-y.

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Sun Apr 30, 2017 2:42 am
by KaleidonKep99
After further investigation, I finally found the culprit of the stuttering...

It's called GetTickCount().

Roaming around the web, I found the BEST alternative to it, which doesn't cause frame stuttering:

Code: Select all

#include <sys/timeb.h>

int GetMilliCount()
{
	timeb tb;
	ftime(&tb);
	int nCount = tb.millitm + (tb.time & 0xfffff) * 1000;
	return nCount;
}

int GetMilliSpan(int nTimeStart)
{
	int nSpan = GetMilliCount() - nTimeStart;
	if (nSpan < 0)
		nSpan += 0x100000 * 1000;
	return nSpan;
}
Sauce: http://www.firstobject.com/getmillicoun ... le-c++.htm

Re: Request: Download for compiled 64-bit libraries from Rea

Posted: Sun Apr 30, 2017 6:30 am
by KaleidonKep99
KaleidonKep99 wrote:After further investigation, I finally found the culprit of the stuttering...

It's called GetTickCount().

Roaming around the web, I found the BEST alternative to it, which doesn't cause frame stuttering:

Code: Select all

#include <sys/timeb.h>

int GetMilliCount()
{
	timeb tb;
	ftime(&tb);
	int nCount = tb.millitm + (tb.time & 0xfffff) * 1000;
	return nCount;
}

int GetMilliSpan(int nTimeStart)
{
	int nSpan = GetMilliCount() - nTimeStart;
	if (nSpan < 0)
		nSpan += 0x100000 * 1000;
	return nSpan;
}
Sauce: http://www.firstobject.com/getmillicoun ... le-c++.htm
Ok, this was just a waste of my time... Oh my God...

There's actually a function, called "clock();", which fixed everything.