Skip to main content

Notice

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.
Topic: FLAC v1.4.1 (Release) (Read 1085 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: FLAC v1.4.1 (Release)

Reply #1
Intel 19.2 compiles at Rarewares. ;)

Re: FLAC v1.4.1 (Release)

Reply #2
Answers to anticipated questions:

Q. Why is this release so quickly after 1.4.0?
A. There was a problem with the release tarball, the man pages were empty files and api docs were missing. Nothing end-users should worry about, but a pain for package maintainers. I've also fixed some other (build) problems with the 1.4.0 release, mostly reported by developers upgrading FLAC in their products

Q. What has changed for users of the flac command line tool?
A. Pretty much nothing. I've made the files in the Windows release a little smaller and fixed the help text, which did not show the correct apodizations for the compression levels. No difference in compression is expected. Binary might be an unmeasurable tiny amount faster because the binary is slightly smaller.

Q. Can we expect this release pace to continue?
A. I surely hope not.
Music: sounds arranged such that they construct feelings.



Re: FLAC v1.4.1 (Release)

Reply #5
Please don't spam this thread with speed and compression tests etc. This flac release doesn't have any such improvment's.

Re: FLAC v1.4.1 (Release)

Reply #6
But it is just a continuation of the 1.4.0 thread with comparisons like changing the block size and such, after I posted my last test on the 1.4.0 thread someone posted a notification that 1.4.1 is released, then future tests should be posted in this thread, right? Even with the CUETools.Flake issue I have opened a separate thread.

Re: FLAC v1.4.1 (Release)

Reply #7
Personally so don't i see the need at all for the speed and compression tests, comparisons between this and that. If the codec does what it's meant to do so is that enough for me.

I think if some wants to do that, so should it be posted in separate threads. It's good if a thread like this could be used for information, issues and such. With all the extras posted so can things be missed and lost in there. But that's just my way to seeing it.

Re: FLAC v1.4.1 (Release)

Reply #8
So looks like this thread is more suitable for false positive virus complains, compatibility with Windows XP, missing dll and such. People should post comparisons in another thread.

 

Re: FLAC v1.4.1 (Release)

Reply #9
I agree with @NetRanger that there is no use to split the performance tests over several threads. Had one anticipated 1.4.1, one could have organized it in a "1.4.x performance tests" thread. Not sure if that is feasible now.

So looks like this thread is more suitable for false positive virus complains, compatibility with Windows XP, missing dll and such. People should post comparisons in another thread.

Agree. Of course, the topic of false positive malware reports is found above every "Post reply", at least in my forum setup.

Re: FLAC v1.4.1 (Release)

Reply #10
A moderator could split the performance test posts from the 1.4.0 thread into a new 1.4.x thread.


Re: FLAC v1.4.1 (Release)

Reply #12
Thanks a lot, Case. Will run my tests as soon as I'm back at my computer...

Re: FLAC v1.4.1 (Release)

Reply #13
Build for @sundance.
How are you building this, specifically? I was wondering, because it might be possible to get an even better optimized binary. Currently, plain C code is overriden by machine-specific code (SSE and AVX optimizations) but not for every function a optimized one is available. So it might be that for one CPU-intensive task a SSE function is used when no AVX one is available, even while optimizing for AVX. I don't think compilers can optimize SSE intrinsics to AVX ones, except for changing the prefix on instructions that have a direct replacement.
Music: sounds arranged such that they construct feelings.

Re: FLAC v1.4.1 (Release)

Reply #14
Thanks for asking, it made me look up the old forum threads and I noticed I hadn't updated my documentation to the correct strings.

The original switches came from this thread: Speeding up codecs with faster CRC calculations.
I was supposed to use the following compile flags:
export CPPFLAGS="-I/usr/local/include"
export LDFLAGS="-m64 -static -L/usr/local/lib"
export CFLAGS="-O3 -m64 -march=haswell -funroll-loops -fno-stack-protector"

But because I had forgotten to update my documentation I used these instead:
export CPPFLAGS="-I/usr/local/include"
export LDFLAGS="-m64 -static -L/usr/local/lib"
export CFLAGS="-O3 -m64 -march=nehalem -funroll-loops"

And I configure FLAC with this command:
./configure --host=x86_64-w64-mingw32 --disable-stack-smash-protection --enable-sse --enable-64-bit-words --enable-static --disable-shared

With FLAC 1.3.x series using older GCC 4.9.3 produced faster binary. This time it was slower so I use my other MSYS environment that has GCC 7.3.0. With 1.3 each update to GCC made the binary slower, but now I haven't had time to do further testing.

Here's a new compile with the Haswell arch setting.

Re: FLAC v1.4.1 (Release)

Reply #15
I thought I would run a simple test using a single wave file of 1:18:51.013 (208 637 688 samples), 834,550,796 bytes, 44.1k, 16bits.

FIrst pass is using the standard 64 bit compile on Rarewares and the second is using an 'AVX2' enabled compile, both written to the same physical SSD drive.
Code: [Select]
Converting: "F:\Testdir\BLove.wav"
Destination: "F:\[unnamed]\[unnamed]\- BLove.flac"
CLI encoder: flac.exe
Destination file: F:\[unnamed]\[unnamed]\- BLove.flac
Encoder stream format: 44100Hz / 2ch / 16bps
Command line: "C:\Program Files (x86)\foobar2000\encoders\flac.exe" -s --ignore-chunk-sizes -7 - -o "temp-4CDF95EB111ABB419B7B2E665CF02BDD.flac"
Working folder: F:\[unnamed]\[unnamed]\
Encoder process still running, waiting...
Encoder process terminated cleanly.
Track converted successfully.
Total encoding time: 0:28.140, 168.12x realtime

Converting: "F:\Testdir\BLove.wav"
Destination: "F:\[unnamed]\[unnamed]\- BLove.flac"
CLI encoder: flac.exe
Destination file: F:\[unnamed]\[unnamed]\- BLove.flac
Encoder stream format: 44100Hz / 2ch / 16bps
Command line: "C:\Program Files (x86)\foobar2000\encoders\flac.exe" -s --ignore-chunk-sizes -7 - -o "temp-698D0D3FBED8A347829C6247F55987F4.flac"
Working folder: F:\[unnamed]\[unnamed]\
Encoder process still running, waiting...
Encoder process terminated cleanly.
Track converted successfully.
Total encoding time: 0:23.828, 198.54x realtime
The compile can be downloaded from here:
www.rarewares.org/files/lossless/flac-1.4.1-x64-AVX2.zip

This was run on a 8500T CPU, Windows 10 Pro x64.