Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Note that the intention is to find and solve the abnormal system slowdown KevinB reported. His problem is in no way related to relative performance of different compiles.
Though I do wonder how JoshuaChang's clang compile is so fast. Usually GCC has been able to produce faster binaries. And if I compile a clang build with joshua's makefile, I get a slower binary than my GCC compile.
Last post by Case -
Updated 2024-04-23 with Opus 1.5.2, qaac 2.82 and refalac 1.82. Installer also changed - now no longer asks for admin credentials for regular users. And can query default install dir from the browse dialog for portable install users.
I did some benchmarking and GCC's fprintf takes 100 times longer even here compared to MSVC's or clang's function. Attached is a patch that changes progress printing to use WriteConsole on Windows when stderr isn't redirected to file. That gives consistently fast progress display on all compilers. I also noticed that stopping encoding by keyboard press didn't work when not compiled on Visual Studio, fixed that too.
I also changed the progress printing to happen 4 times less often than originally. I think maikmerten's progress update happened too seldom, it looked buggy when it was so sluggish.
I hope @KevinB52379 can test this and report if things now work correctly.
I think you might forgot to add -static in the LFLAGS since it ask for libstdc++-6.dll in my env.
Is there any reason to stick to multiples of 16/32 for target bitrate in opus encoder or does it not matter? I noticed qaac/Apple AAC forces 112-128-160-192 etc.
Unless it's a special use-case which also requires hard CBR, it does not matter.
Last post by Case -
I did some benchmarking and GCC's fprintf takes 100 times longer even here compared to MSVC's or clang's function. Attached is a patch that changes progress printing to use WriteConsole on Windows when stderr isn't redirected to file. That gives consistently fast progress display on all compilers. I also noticed that stopping encoding by keyboard press didn't work when not compiled on Visual Studio, fixed that too.
I also changed the progress printing to happen 4 times less often than originally. I think maikmerten's progress update happened too seldom, it looked buggy when it was so sluggish.
I hope @KevinB52379 can test this and report if things now work correctly.
I'm still working on it. But I need more time than expected because I decided to use OpenGl instead of GDI+ and therefore a large part of the code has to be rewritten. But OpenGl is much faster than GDI+. So it's worth the effort. So far I have been able to solve everything. Here is a current picture of the component. [attach width=500 align=center]30325[/attach]
Very well presented interface, I'll keep an eye on it!