91
3rd Party Plugins - (fb2k) / Re: Game Emu Player (foo_gep) by kode54
Last post by Meowdori -Also hope that foo_psf will eventually be updated too, to be able to run with the recent Foobar.
Based on how your plugin behaves/displays I guess you are calculating barwidth (vertical peakmeter) by first determining the total gauge gap by first multiplying the (unscaled) configuration value gauge gap times the number of channels (bars) to be displayed minus 1. Then I guess you scale this total gauge gap, subtract that value from the panelwidth and divide the result by the number of channels to find barwidth per bar. By scaling a calculated unscaled total gauge gap this value will be to high (except winth 200% and 300%), and subsequently your barwidth/barheight will be lower than I intended.You don't have to guess. The code is out in the open... ;-) That's almost exactly how the metrics are determined.
When you display bars, you apply single gauge gaps between channels leading to pixels that are left over and are distributed to the left of leftmost bar and to the right of rightmost bar.Please investigate ...Will do.
const FLOAT n = (FLOAT) _Analysis->_GaugeValues.size();
const FLOAT TotalBarGap = _State->_GaugeGap * (n - 1);
const FLOAT TickSize = 2.f;
const FLOAT TotalTickSize = (_GraphSettings->_YAxisLeft ? TickSize : 0.f) + (_GraphSettings->_YAxisRight ? TickSize : 0.f);
const FLOAT BarHeight = ::floor((_ClientSize.height - TotalBarGap - TotalTickSize) / n);
Ok, now the problem is clear.
So this one ? : https://hydrogenaud.io/index.php/topic,123331.msg1043493.html#msg1043493That was a test build for trying to hunt down the problem with KevinB's system, don't use that. It links against Universal CRT so it won't work without extra support libraries on anything older than Windows 10. Same is true with Clang compiles created in MSYS environment, so everything posted in this topic.
Define vintage Windows versions. The build will be used on PCs running Windows 7, 8.1 and 10 with Intel CPUs from 4th gen up to 9th gen. Mainly Windows 8.1 and 10, I must say.The clang UCRT may run under 8.1 but not on 7.
Since on my AMD Ryzen it is the other way around you better speedtest your individual CPUs for best results.After getting rid of the slow printing GCC compile seems to be faster here on Intel CPU.So this one ? : https://hydrogenaud.io/index.php/topic,123331.msg1043493.html#msg1043493
Based on how your plugin behaves/displays I guess you are calculating barwidth (vertical peakmeter) by first determining the total gauge gap by first multiplying the (unscaled) configuration value gauge gap times the number of channels (bars) to be displayed minus 1. Then I guess you scale this total gauge gap, subtract that value from the panelwidth and divide the result by the number of channels to find barwidth per bar. By scaling a calculated unscaled total gauge gap this value will be to high (except winth 200% and 300%), and subsequently your barwidth/barheight will be lower than I intended.You don't have to guess. The code is out in the open... ;-) That's almost exactly how the metrics are determined.
When you display bars, you apply single gauge gaps between channels leading to pixels that are left over and are distributed to the left of leftmost bar and to the right of rightmost bar.
Please investigate ...Will do.
If you don't use vintage windows versions the clang builds of @JoshuaChang don't use fancy CPU extensions or fast-math and are as fast as it gets for that.Define vintage Windows versions. The build will be used on PCs running Windows 7, 8.1 and 10 with Intel CPUs from 4th gen up to 9th gen. Mainly Windows 8.1 and 10, I must say.
After getting rid of the slow printing GCC compile seems to be faster here on Intel CPU.So this one ? : https://hydrogenaud.io/index.php/topic,123331.msg1043493.html#msg1043493