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 1.3.1 has been released (Read 109564 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

FLAC 1.3.1 has been released

After 18 months of development, FLAC 1.3.1 has been released. The trigger for this release was a heap overflow found by the Google Security Team.

Changes
  • Huge encoding speedup for i386 and x86_64 (up to 250% for 24-bit)
  • Slightly improved compression of compression levels 6, 7 and 8
  • Fixed CVE-2014-9028 (heap write overflow) and CVE-2014-8962
  • Output buffer has been added to Windows to mitigate fragmentation
  • Various build system improvements and bug fixes
For the complete changelog, see http://xiph.org/flac/changelog.html

The source is available here, official Windows binaries are supplied here.
Music: sounds arranged such that they construct feelings.

FLAC 1.3.1 has been released

Reply #1
Don't forget to mention the added decoding efficiency improvements for all bit depths. Particularly 24 bit on IA32.
Every night with my star friends / We eat caviar and drink champagne
Sniffing in the VIP area / We talk about Frank Sinatra
Do you know Frank Sinatra? / He's dead

FLAC 1.3.1 has been released

Reply #2
The website still points to the 1.2.1b binary. (Navigate to http://xiph.org/flac/download.html, then click the link named "FLAC for Windows (command-line tools only)."

I do notice that the 1.3.1 binary has just been added to the sourceforge page, but it still defaults to 1.2.1 ("Looking for the latest version? Download flac-1.2.1b.exe (2.7 MB)."

FLAC 1.3.1 has been released

Reply #3
ktf thanks!

audiophool, give them some time

FLAC 1.3.1 has been released

Reply #4
I'd be very interested to see an encoding speed comparison between 1.3.0 and 1.3.1 with one of the new Haswell based CPUs. They can make full use of the AVX2 improvements in the new version, many older CPUs only benefit from AVX1 or older SSE instruction sets.
Every night with my star friends / We eat caviar and drink champagne
Sniffing in the VIP area / We talk about Frank Sinatra
Do you know Frank Sinatra? / He's dead

FLAC 1.3.1 has been released

Reply #5


Thank You very much for speed and compression improvements to all involved people.


Until now FLACCL was faster on my setup (strong CPU and week GPU) comparing to FLAC 1.3.0.
But now 1.3.1 is faster. Sticking with it.




FLAC 1.3.1 has been released

Reply #6
is there plans for a patch/build to support old systems (xp sp3 barton 3000+) too?

FLAC 1.3.1 has been released

Reply #7
is there plans for a patch/build to support old systems (xp sp3 barton 3000+) too?

Why, doesn't it work on that system?
Music: sounds arranged such that they construct feelings.

FLAC 1.3.1 has been released

Reply #8
Excellent work - thanks to all of the developers involved!

FLAC 1.3.1 has been released

Reply #9
@ktf: i believe the cpu is missing a feature and the build relies on that? when trying to encode in foobar or flacdrop a grey error console showed up.

btw: the official 1.3.0 also did not work but i found a mingw version that did the trick.

FLAC 1.3.1 has been released

Reply #10
@ktf: i believe the cpu is missing a feature and the build relies on that?

AFAIK the build is build for i686, so at least MMX but no requirements for SSE. What error do you get? For 1.3.0, there have never been official binaries.
Music: sounds arranged such that they construct feelings.

FLAC 1.3.1 has been released

Reply #11
I benchmarked the official 1.3.1 (32bit) compile from xiph.org with other flac compiles I collected during its "evolution":
Code: [Select]
Encoder                   Options                     Process time    FLAC file size
---------------------------------------------------------------------------------------
flac 1.3.0                -8                          77.548 sec      292.407.249 bytes
flac 1.3.1                -8                          56.831 sec      292.127.317 bytes
flac-git-7251201 (AiZ)    -l 12 -b 4096 -m -e -r 6    50.887 sec      292.407.763 bytes
flac 1.3.1                -l 12 -b 4096 -m -e -r 6    52.572 sec      292.407.763 bytes

WAV file size = 663.678.612 bytes
CPU used: Intel Core 2 Quad Q9500 @ 2.8 GHz

AiZ's post: http://www.hydrogenaud.io/forums/index.php...st&p=869644

Although GCC 4.9.0 was used for AiZ's compile, it is faster (~ 3% on my CPU) than the GCC compiles of 1.3.1.

@AiZ: Would you mind to provide "your" 1.3.1?


FLAC 1.3.1 has been released

Reply #12
Can I do a static build (flac & metaflac) on wheezy? If so, how?
PANIC: CPU 1: Cache Error (unrecoverable - dcache data) Eframe = 0x90000000208cf3b8
NOTICE - cpu 0 didn't dump TLB, may be hung

FLAC 1.3.1 has been released

Reply #13
Use
Code: [Select]
make LDFLAGS='-static'
to make a static build
Music: sounds arranged such that they construct feelings.

FLAC 1.3.1 has been released

Reply #14
Use
Code: [Select]
make LDFLAGS='-static'
to make a static build

thanks (that did the trick).
PANIC: CPU 1: Cache Error (unrecoverable - dcache data) Eframe = 0x90000000208cf3b8
NOTICE - cpu 0 didn't dump TLB, may be hung

FLAC 1.3.1 has been released

Reply #15
Interesting, my own VS2013 compile is about 10 seconds slower than the official (gcc-compiled?) on the same set of 1.51GB of wav files.
I actually expected the opposite considering gcc is not "native" to windows.

I followed the readme instructions, so nasm.exe was used. How can I control which instruction sets are used, or does it try to automatically use all possible optimizations? I'm on an AMD Phenom II CPU.

FLAC 1.3.1 has been released

Reply #16
I actually expected the opposite considering gcc is not "native" to windows.

FLAC doesn't use libraries for much of its work. The real work is done directly, so there isn't much difference between a native compiler and a non-native one.

Quote
I followed the readme instructions, so nasm.exe was used. How can I control which instruction sets are used, or does it try to automatically use all possible optimizations? I'm on an AMD Phenom II CPU.

This release uses function multiversioning, which is supported by GCC starting with release 4.9. IIRC, MSVC2013 supports it too, so it should indeed automatically check the CPU whether it supports the optimizations.
Music: sounds arranged such that they construct feelings.

FLAC 1.3.1 has been released

Reply #17
@ktf: maybe this is already helpful to you - cant test anymore (link broken), but i am pretty sure that it was even your 1.3.0 build that works on the barton cpu: http://www.hydrogenaud.io/forums/index.php...st&p=835599

regarding the specific error, i'll report back.

FLAC 1.3.1 has been released

Reply #18
There's a line in configure.ac:
Code: [Select]
        XIPH_ADD_CFLAGS([-msse2])

which means that SSE2 is required.

Here is a build that doesn't need SSE2: (see post #39)

FLAC 1.3.1 has been released

Reply #19
thats it, is working now, although very slow compared to the 1.3.0 build, thank you. would be interresting to see a sse1 version, as the cpu is capable of that instruction.

FLAC 1.3.1 has been released

Reply #20
Really?

a) This build is able to use SSE/AVX-accelerated routines when possible.
b) Remember that -6, -7 and -8 presets were re-tuned. For example, -6 was very close to -5. Now it is noticeably slower but compresses better.
Or you can old presets by using the following settings:
Code: [Select]
old preset     equivalent settings
-6            -l 8 -b 4096 -m -r 6
-7            -l 8 -b 4096 -m -e -r 6
-8            -l 12 -b 4096 -m -e -r 6

FLAC 1.3.1 has been released

Reply #21
I do notice that the 1.3.1 binary has just been added to the sourceforge page, but it still defaults to 1.2.1 ("Looking for the latest version? Download flac-1.2.1b.exe (2.7 MB)."

This has just been fixed
Music: sounds arranged such that they construct feelings.

FLAC 1.3.1 has been released

Reply #22
It might also be worth pointing out that John33 has new Windows builds of 1.3.1 compiled with ICL 14 over at Rarewares

FLAC 1.3.1 has been released

Reply #23
I've been using rarewares build for a while now, mostly because of the lack of official 1.3.0 builds for windows.

Now the question is, which one is faster / more efficient?

FLAC 1.3.1 has been released

Reply #24
The Rarewares ICL x64 build is actually slower than the (official) GCC x64 build on my Haswell machine. Roughly 5% difference.