IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
WavPack 4.70.0 release candidate available, bug fixes, lots of new features, GitHub, x64
bryant
post Oct 15 2013, 06:50
Post #1


WavPack Developer


Group: Developer (Donating)
Posts: 1291
Joined: 3-January 02
From: San Francisco CA
Member No.: 900



The release candidate (rc) of WavPack 4.70 is available and assuming no bugs are found or last-minute changes suggested, this is essentially final (I know -- I said that about the beta). The impetus for this release was to incorporate some bug fixes that had accumulated since 2009, but I decided to also include a few new features that I had been thinking about, and eventually that snowballed into lots of stuff (and 6 months!)

The most interesting new feature is the ability for the wavpack command-line executable to accept existing wavpack files as input (i.e., transcoding). This allows users to easily change the settings of files in their lossless collection, or convert from older WavPack versions. The process copies all tag information from the source, and even allows modification of the tags. Temp files are also used now when overwriting and a verify option has been added, so it's possible to safely do transcoding in-place.

Note that care should be taken when transcoding to and from lossy files, and lossy to lossless transcoding is not allowed.

This release should generate identical files to the previous release (other than changes from bug fixes) and the performance should be similar (excepting differences from compiler revisions). I also built 64-bit versions for Windows, but they actually perform about the same as the 32-bit versions (at least on my system) so I'm not sure how useful they are or whether they will make it to the final release...any opinions?

I have also updated the Winamp plugin, although this plugin is really intended mostly for older versions of Winamp. For the current Winamp, the plugin that comes in the free "Winamp Essentials Pack" is a better choice (and my installer now mentions that).

New features:
  • transcoding from existing WavPack files (with tag copy)
  • option to verify WavPack file integrity on creation (-v)
  • use temporary files for safer overwriting
  • detect UTF-16LE encoding for tag text files (mostly a Windows thing)
  • transition to Visual Studio 2008 and 64-bit version (Windows)
  • option to allow up to 16 MB APEv2 tag data (--allow-huge-tags)
  • option for wvunpack to suppress audio decoding (useful for extracting only tags with -cc and -xx) (-n)
  • experimental, undocumented option to store float16 and float24 audio data as integers (--store-floats-as-ints)
  • allow channel-order specification on WAV files with WAVEFORMATEXTENSIBLE headers that contain zeroed channel masks
  • add --version and a new command (-f) for getting machine parsable info from wvunpack as discussed in this thread.
  • allow read-only access to APEv2 tags that come at the beginning of files (these are not recommended by any means, but they exist in the wild and this feature allows for easy transcoding)

Bug fixes:
  • seeking to last block failure (after finishing file)
  • memcpy() not always used correctly (Linux targets)
  • unsigned char issue (ARM targets)
  • Winamp plugin not retaining configuration on newer versions of Windows

Windows features ported to Linux:
  • clean handling of ^C
  • console title (with -z to defeat)
  • wildcards in tag specifications
  • 4GB file support on 32-bit OS

Updated manual

Windows 32-bit executables
Windows 64-bit executables
WavPack plugin for Winamp installer
Linux distro

WavPack is now hosted on GitHub here.

Thanks in advance for any testing and/or suggestions! smile.gif
Go to the top of the page
+Quote Post
eahm
post Oct 15 2013, 07:58
Post #2





Group: Members
Posts: 1056
Joined: 11-February 12
Member No.: 97076



QUOTE
I also built 64-bit versions for Windows, but they actually perform about the same as the 32-bit versions (at least on my system) so I'm not sure how useful they are or whether they will make it to the final release...any opinions?

i7 2700K, x86 is faster here smile.gif

Thanks for this new release.


--------------------
/lwAsIimz
Go to the top of the page
+Quote Post
bryant
post Oct 15 2013, 20:02
Post #3


WavPack Developer


Group: Developer (Donating)
Posts: 1291
Joined: 3-January 02
From: San Francisco CA
Member No.: 900



QUOTE (eahm @ Oct 14 2013, 23:58) *
i7 2700K, x86 is faster here smile.gif

Thank for testing!

On my system (Core2 Duo E8400) it's a little more complicated. Packing "fast" mode is actually about 5% faster on x64, but at higher modes this advantage slowly disappears until in "very high" mode it's a wash. But add in high amounts of "extra" processing and the x86 gets up to a 8% advantage.

The takeaway I think is that the decorrelation code is slower on x64, but everything else might be faster. Certainly work looking into at some point.
Go to the top of the page
+Quote Post
eahm
post Oct 15 2013, 21:11
Post #4





Group: Members
Posts: 1056
Joined: 11-February 12
Member No.: 97076



Oh nice, I am actually going to test every mode later today and post simple results here.


--------------------
/lwAsIimz
Go to the top of the page
+Quote Post
eahm
post Oct 16 2013, 04:52
Post #5





Group: Members
Posts: 1056
Joined: 11-February 12
Member No.: 97076



x86
CODE
D:\Music\ToDo>wavpackx86.exe -f "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win32 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created 01. Atom Heart Mother.wv in 4.78 secs (lossless, 46.80%)


CODE
D:\Music\ToDo>wavpackx86.exe -f -v "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win32 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created (and verified) 01. Atom Heart Mother.wv in 9.89 secs (lossless, 46.80%)


CODE
D:\Music\ToDo>wavpackx86.exe -h "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win32 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created 01. Atom Heart Mother.wv in 7.57 secs (lossless, 49.72%)


CODE
D:\Music\ToDo>wavpackx86.exe -h -v "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win32 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created (and verified) 01. Atom Heart Mother.wv in 15.18 secs (lossless, 49.72%)

x64
CODE
D:\Music\ToDo>wavpackx64.exe -f "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win64 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created 01. Atom Heart Mother.wv in 4.68 secs (lossless, 46.80%)


CODE
D:\Music\ToDo>wavpackx64.exe -f -v "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win64 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created (and verified) 01. Atom Heart Mother.wv in 9.57 secs (lossless, 46.80%)


CODE
D:\Music\ToDo>wavpackx64.exe -h "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win64 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created 01. Atom Heart Mother.wv in 7.53 secs (lossless, 49.72%)


CODE
D:\Music\ToDo>wavpackx64.exe -h -v "01. Atom Heart Mother.wav"

WAVPACK  Hybrid Lossless Audio Compressor  Win64 Version 4.70.0-rc
Copyright (c) 1998 - 2013 Conifer Software.  All Rights Reserved.

created (and verified) 01. Atom Heart Mother.wv in 14.92 secs (lossless, 49.72%)

Well, I swear when I tested today x86 was faster by half second.

FLAC
CODE
Total encoding time: 0:05.407, 263.05x realtime


This post has been edited by eahm: Oct 16 2013, 04:54


--------------------
/lwAsIimz
Go to the top of the page
+Quote Post
azaqiel
post Oct 16 2013, 21:25
Post #6





Group: Members
Posts: 25
Joined: 4-January 13
Member No.: 105572



just started testing a few moments ago. used a twelve and a half minute song, so I could more easily tell the difference. as you can see below, `-hhmrvx6z` took 10% extra time with the 64-bit build. also, decoding took longer with the 64-bit build. not sure how that's possible, except maybe because I used `-hhmrvx6z` to encode the file in the first place (point being that it includes -x6).

packing:
CODE
D:\Music>"wavpack-4.70.0-rc-x86.exe" -hhmrvx6z "01 where it's at [u.n.k.l.e. remix].wav" "pack.hhmrvx6.32.wv"

WAVPACK Hybrid Lossless Audio Compressor Win32 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) pack.hhmrvx6.32.wv in 510.18 secs (lossless, 39.14%)

D:\Music>"wavpack-4.70.0-rc-x86_64.exe" -hhmrvx6z "01 where it's at [u.n.k.l.e. remix].wav" "pack.hhmrvx6.64.wv"

WAVPACK Hybrid Lossless Audio Compressor Win64 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) pack.hhmrvx6.64.wv in 561.32 secs (lossless, 39.14%)

D:\Music>"wavpack-4.70.0-rc-x86.exe" -b256hmrvz "01 where it's at [u.n.k.l.e. remix].wav" "pack.b256hmrv.32.wv"

WAVPACK Hybrid Lossless Audio Compressor Win32 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) pack.b256hmrv.32.wv in 18.22 secs (lossy, 266 kbps)

D:\Music>"wavpack-4.70.0-rc-x86_64.exe" -b256hmrvz "01 where it's at [u.n.k.l.e. remix].wav" "pack.b256hmrv.64.wv"

WAVPACK Hybrid Lossless Audio Compressor Win64 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) pack.b256hmrv.64.wv in 18.00 secs (lossy, 266 kbps)

D:\Music>"wavpack-4.70.0-rc-x86.exe" -b256chmrvz "01 where it's at [u.n.k.l.e. remix].wav" "pack.b256chmrv.32.wv"

WAVPACK Hybrid Lossless Audio Compressor Win32 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) pack.b256chmrv.32.wv (+.wvc) in 26.50 secs (lossless, 35.65%)

D:\Music>"wavpack-4.70.0-rc-x86_64.exe" -b256chmrvz "01 where it's at [u.n.k.l.e. remix].wav" "pack.b256chmrv.64.wv"

WAVPACK Hybrid Lossless Audio Compressor Win64 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) pack.b256chmrv.64.wv (+.wvc) in 26.32 secs (lossless, 35.65%)

unpacking:
CODE
D:\Music>"wvunpack-4.70.0-rc-x86.exe" -z "01 where it's at [u.n.k.l.e. remix].wv" "unpack 32.wav"

WVUNPACK Hybrid Lossless Audio Decompressor Win32 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

restored unpack 32.wav in 7.21 secs (lossless, 39.14%)

D:\Music>"wvunpack-4.70.0-rc-x86_64.exe" -z "01 where it's at [u.n.k.l.e. remix].wv" "unpack 64.wav"

WVUNPACK Hybrid Lossless Audio Decompressor Win64 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

restored unpack 64.wav in 7.57 secs (lossless, 39.14%)

and transcoding:
CODE
D:\Music>"wavpack-4.70.0-rc-x86.exe" -hhmrvx6z "01 where it's at [u.n.k.l.e. remix].wv" "transcode.32.wv"

WAVPACK Hybrid Lossless Audio Compressor Win32 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) transcode.32.wv in 523.29 secs (lossless, 39.14%)

D:\Music>"wavpack-4.70.0-rc-x86_64.exe" -hhmrvx6z "01 where it's at [u.n.k.l.e. remix].wv" "transcode.64.wv"

WAVPACK Hybrid Lossless Audio Compressor Win64 Version 4.70.0-rc
Copyright © 1998 - 2013 Conifer Software. All Rights Reserved.

original md5 signature: 8918fd060721e6eacc802b70b80ff7dc
created (and verified) transcode.64.wv in 565.94 secs (lossless, 39.14%)
Go to the top of the page
+Quote Post
Nick.C
post Oct 19 2013, 16:21
Post #7


lossyWAV Developer


Group: Developer
Posts: 1789
Joined: 11-April 07
From: Wherever here is
Member No.: 42400



QUOTE (bryant @ Oct 15 2013, 06:50) *
  • experimental, undocumented option to store float16 and float24 audio data as integers (--store-floats-as-ints)

Many thanks for this David, Peter has now incorporated playback of wv-float16 and wv-float24 in foobar2000 v1.3 beta 1.

This post has been edited by Nick.C: Oct 19 2013, 16:21


--------------------
lossyWAV -q X -a 4 --feedback 4| FLAC -8 ~= 320kbps
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 23rd August 2014 - 07:52