Re: FLAC v1.4.0 (Release)
Reply #108 – 2022-09-18 10:47:28
v1.4.0 from the Foobar2000 'Encoders Pack' (on Wine v6.13-staging) on a i5-3550 desktop quad-core CPU on some random music I got of 3hr4min2sec in length and just going by what I last see in the Foobar2000 window for current time shown before the window disappears... -5 / 26sec / 1,064,210,521 bytes -6 / 31sec / 1,063,104,966 bytes -7 / 33sec / 1,058,278,040 bytes -8 / 42sec / 1,057,783,228 bytes Was this one big file (making encoding effectively singlethreaded?) EDIT: My calculations suggest -8 is 262x, which means over 4 minutes of audio encoded per second. If this is singlethreaded, if you use -8 with 4 threads, then you'd probably get over 1000x. EDIT#2: If you're ripping CDs, given that ripping the CD is likely to be the bottleneck by far even on lesser CPUs, I'd recommend -8 in almost all those cases. I get why you asked because if that were true the speed would be a lot less. but It's 40 standard (16/44.1) FLAC music files of 3hr4min2sec in total re-encoded to FLAC v1.4.0 (from about half at FLAC v1.3.3 and other half at FLAC v1.3.2) with the Foobar2000 Endoder's Pack. so it's multi-threaded. I got a i5-3550 CPU (Foobar2000 is running through Wine v6.13-staging as I suspect different Wine versions may change speed a bit(?)) which is four cores and you can see the CPU load is high during conversion.With foobar, go to View -> Console after encoding, this shows the encoding time and speed (x). It is also necessary to know the source formats and types of used storage media, these factors affect speed too. My tests used .wav source and RAM drive. If there is not enough RAM then at least SATA SSD should be used. flac.exe in the Free Encoder Pack is x86 and slower than Case/Xiph's x64 builds on my PC as well. I found the Xiph's FLAC v1.4.0 and used the 'flac.exe' in the 'Win64' folder and had to extract the 'flac.exe' along with 'libFLAC.dll' to Foobar2000's 'encoders' folder as just the 'flac.exe'(64bit) alone would throw errors. but at least based on reading the files from a 6TB hard drive and writing to another 5TB hard drive, the time is pretty much the same... "0:41.522, 265.93x realtime", ran it again "0:40.479, 272.79x realtime". so generally 40-41 seconds which is basically the same as the default from 'Encoders Pack'. so I might as well stick with the default 'Fobar2000's Encoders Pack' FLAC version given there is no real differences, at least on standard hard drive usage. but just as a quick test I decided to try converting back to WAV temporarily. so basically the WAV files are on 6TB hard drive and then from there I converted those WAV files back to FLAC8 to a 5TB hard drive and pretty much same results (i.e. "0:41.710, 264.74x realtime"). but converting from FLAC (on 6TB HDD) back to WAV (on 5TB HDD) things, as expected, were faster "0:23.562, 468.65x realtime" as you could see the speed really shoot up at times and then pause briefly and resume etc, which I suspect might be the CPU waiting for hard drive to catch up(?). but the average speed is what it shows there at 468x. but I figure if the hard drive becomes the bottleneck, and one needs a RAM drive or SSD to get true max speed, at that point it's probably not worth proceeding further simply because I typically use my hard drives over the SSD (my main boot drive is a Samsung 850 EVO 250GB SSD (SATA)) for general data writing like FLAC or other larger files like video etc. thanks for that info. p.s. but using the default Foobar2000's encoders pack LAME(32bit) vs the 64bit one, the 64bit does shave some time off by about 5-6 seconds at LAME V5. so there is a legitimate difference here even though not much.