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: WavPack 5.0.0 Final Release (Read 51601 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

WavPack 5.0.0 Final Release

Major changes:
  • added: handle multiple input formats, including RF64, Wave64, and CAF
  • added: lossless DSD audio compression in Philips DSDIFF and Sony DSF files
  • fixed: seeking in > 2GB WavPack files (with new 64-bit stream reader)
  • fixed: accept > 4GB source audio files (covers all source formats)

complete changelog
download link

Thanks to everyone at HA who helped with this along the way!

Re: WavPack 5.0.0 Final Release

Reply #1
Some info from my tests.
Playback of DSD compressed with wavpack is gapless in foobar2000! Unlike foo_input_sacd (1.0.2) which adds noticeable clicks between tracks when playing separated dff files. Also, some multichannel DSD files which are unplayable with foo_input_sacd, become playable in foobar2000 when compressed with wavpack. Example of such file: https://www.dropbox.com/s/ezsichx10tah9yp/short.dff?dl=0
And good old frontend from 2002 still works even for DSD compression  :D

Re: WavPack 5.0.0 Final Release

Reply #2
Hey, that's great news about the gapless...I actually had not thought to try that because I don't have any complete DSD albums (yet).

As for that short multichannel file, for some reason the 8 channels are all unassigned in the .dff file, so maybe that's what foo_input_sacd doesn't like.

Re: WavPack 5.0.0 Final Release

Reply #3
Great to see this new release!! I spent a bit of effort a while ago adding Wavpack support to the Linux command line audio CD ripper / encoder and old and new versions are working there beautifully :).

A little aside from this: I am wondering if I am the only person who cannot get the new Wavpack running with qaac under Wine and Linux? A slightly rambling bug report here... Nice to know if I am the only one.

And again: thanks for Wavpack :)

Re: WavPack 5.0.0 Final Release

Reply #4
A little aside from this: I am wondering if I am the only person who cannot get the new Wavpack running with qaac under Wine and Linux? A slightly rambling bug report here... Nice to know if I am the only one.

Never mind the latest official dlls have solved the issue :)

Re: WavPack 5.0.0 Final Release

Reply #5
Quote
Never mind the latest official dlls have solved the issue :)
I looked over that issue thread a couple months ago and never really had a clue why you were seeing what you were seeing. Some weird interaction of mingw / qaac / wine / wavpack? It would be interesting to find out what was going on, but it's good that the official DLLs seem to work well.

Also, thanks again for the support in abcde...I'm finally going to be able to give that a shot now that 5 is out!

Re: WavPack 5.0.0 Final Release

Reply #6
Hi , I've tried wavpack 5.0 to compress dsd to wv.
The compression ratio is really good.
But I have a question for the playback.
While playing in foobar2000, it recognize the wv(dsd high) in a 352800khz 24bit pcm music,
is it normal?
And does it still lossless for dsd playback?
Because in dsf format it show 2822400 Hz in foobar2000 so I`m a little confused.

Re: WavPack 5.0.0 Final Release

Reply #7
In foobar2000, the WavPack library is converting the DSD to 24-bit 352.8 kHz and that's what foobar2000 is playing. I thought that they were going to display the actual DSD sample rate (I even provided an API for this specifically), but it might be that they didn't get around to that, or there's a bug somewhere.

But I do know that whether you play a WavPack DSD or a DSF file directly, they are lossless, but the conversion to PCM is done as the file is read (before the DSP and everything else). Foobar2000 cannot handle DSD internally, and cannot write DSD to a DAC (DoP).

Re: WavPack 5.0.0 Final Release

Reply #8
foobar2000 can handle DSD as DSD stream and output it to a DAC… but not natively. The foo_input_sacd allows this. And it works well. The external DAC may indicate what kind of stream is decoded (PCM, DSD, resolution…) and it confirms that DSD playback is possible with DSF, DFF, SACD-ISO.
I can not try anymore, because my DAC is dead. But I'm sure there must be a way to handle Wavpack DSD as DSD  :)

Re: WavPack 5.0.0 Final Release

Reply #9
As far as I understand, foo_input_sacd is an input plugin that outputs DSD itself and bypasses  fb2k audio chain.

Re: WavPack 5.0.0 Final Release

Reply #10
foobar2000 can handle DSD as DSD stream and output it to a DAC… but not natively. The foo_input_sacd allows this. And it works well. The external DAC may indicate what kind of stream is decoded (PCM, DSD, resolution…) and it confirms that DSD playback is possible with DSF, DFF, SACD-ISO.
I can not try anymore, because my DAC is dead. But I'm sure there must be a way to handle Wavpack DSD as DSD  :)
Yes, I'm using  foo_input_sacd  and I have a dac that can play dsd natively.
But foobar2000 play wavpack-dsd just as a pcm.
While playing dsf that't no problem.
(Sorry for my English)

Re: WavPack 5.0.0 Final Release

Reply #11
Ah yes, you guys are right. I thought that foo_input_sacd worked just like foo_input_dsdiff except that it handled ISO files, but I just tried it and it can output directly to a compatible DAC. Thanks for clearing that up!

Since foo_input_sacd works so well, it might make sense to add WavPack support to that. I don't know enough about the foobar internals to know how that would work with respect to plugin priority and tagging, but it seems like one way to go.

Re: WavPack 5.0.0 Final Release

Reply #12
@samidare1234

When you created the WavPack-dsd Foobar, than this is the mistake. In Foobar it is not possible to convert a dsf-file to a dsd-wv preserving the dsd-content. Everything gets converted to PCM. Look here.

You have to convert the dsf-file with the command-line interface to preserve dsd.

Re: WavPack 5.0.0 Final Release

Reply #13
You have to convert the dsf-file with the command-line interface to preserve dsd.
This is also true.

If you look at the file properties in Foobar, down at the bottom there should be <DSD_SAMPLERATE> if this is a true WavPack DSD file. Otherwise it really is 24-bit PCM.

 

Re: WavPack 5.0.0 Final Release

Reply #14
@samidare1234

When you created the WavPack-dsd Foobar, than this is the mistake. In Foobar it is not possible to convert a dsf-file to a dsd-wv preserving the dsd-content. Everything gets converted to PCM. Look here.

You have to convert the dsf-file with the command-line interface to preserve dsd.

Yes , I use command-line to convert dsf to wavapck-dsd  with this command:
wavpack.exe "input.dsf" -hh
Does it correct? Or some other command need for specific dsd that I missed?

Re: WavPack 5.0.0 Final Release

Reply #15
wavpack.exe "input.dsf" -hh
Yes, this is the correct command to produce a lossless DSD WavPack file. (Actually -h is enough...the "very high" mode does nothing additional, yet).

What conta69 was explaining is that you cannot use foobar to do the encode using the converter tool because it will make a PCM WavPack file, which you don't want.

Re: WavPack 5.0.0 Final Release

Reply #16
wavpack.exe "input.dsf" -hh
Yes, this is the correct command to produce a lossless DSD WavPack file. (Actually -h is enough...the "very high" mode does nothing additional, yet).

What conta69 was explaining is that you cannot use foobar to do the encode using the converter tool because it will make a PCM WavPack file, which you don't want.


Thanks for the explanation.
I doesn't use the foobar2000 to do the encoding. Just use Command Prompt to encode.
But Foobar2000 with foo_sacd_input still doesn't recongonize the wavpack-dsd as a dsd file.
If need I'll make some screenshots.

Re: WavPack 5.0.0 Final Release

Reply #17
But Foobar2000 with foo_sacd_input still doesn't recongonize the wavpack-dsd as a dsd file.
If need I'll make some screenshots.
I do not think screenshots are needed, because I think what you are seeing is exactly what is expected.

Foobar2000 is recognizing the WavPack-DSD file as DSD, but it is not playing it as a DSD file because it does not know how to do that. Only the foo_input_sacd plugin knows how to play a DSD file natively, but foo_input_sacd does not know about WavPack.

If you look in Foobar2000 properties for the DSD WavPack file, it should show <DSD_SAMPLERATE> and  <DSD_BITSPERSAMPLE> at the bottom in the “other” section. It does not show that with WavPack PCM files.

Re: WavPack 5.0.0 Final Release

Reply #18
Couple of notes:

It would require changes in the foobar2000 itself to enable foo_input_sacd to take over WavPack DSD handling. And native DSD hangling would also require a lot of core changes. I know Peter isn't interested in the latter at all.

Real DSD samplerates and bitdepths are reported in special fields in foobar2000 because of compatibility. Internal alpha version reported things correctly and a few components broke down.

I bought a DSD capable DAC to prepare for possible future special DSD support testing. Audio quality wise there's absolutely no difference if DAC is fed PCM or DSD but for me usability with PCM is way superior. Seeking is instant, playback is gapless, you can use DSPs and ReplayGain. DSD is just an absolutely awful transport format.

Re: WavPack 5.0.0 Final Release

Reply #19
but for me usability with PCM is way superior. Seeking is instant, playback is gapless, you can use DSPs and ReplayGain. DSD is just an absolutely awful transport format.
"It's only audiophile if it's inconvenient." (Kohlrabi signature).

Re: WavPack 5.0.0 Final Release

Reply #20
This may not be the correct place, in which case apologies. I was using Wavpack as my preferred lossless format with the Bass library from Un4seen. In my programme, I completely scan a loaded track for level before presenting it to the user for playing. I only recently found that it was much quicker (at least 3 times) to scan an identical Flac track. Is there anything that can be done about the Wavpack seeking speed. All my files are encoded -h direct from my CD's with dBpoweramp. 

Re: WavPack 5.0.0 Final Release

Reply #21
Seeking speed or decoding speed?

Re: WavPack 5.0.0 Final Release

Reply #22
But Foobar2000 with foo_sacd_input still doesn't recongonize the wavpack-dsd as a dsd file.
If need I'll make some screenshots.
I do not think screenshots are needed, because I think what you are seeing is exactly what is expected.

Foobar2000 is recognizing the WavPack-DSD file as DSD, but it is not playing it as a DSD file because it does not know how to do that. Only the foo_input_sacd plugin knows how to play a DSD file natively, but foo_input_sacd does not know about WavPack.

If you look in Foobar2000 properties for the DSD WavPack file, it should show <DSD_SAMPLERATE> and  <DSD_BITSPERSAMPLE> at the bottom in the “other” section. It does not show that with WavPack PCM files.

Yes, It showes <DSD_SAMPLERATE> and  <DSD_BITSPERSAMPLE>.
Thanks a lot!
I'll try to add feature request to the author of foo_input_sacd for wavpack-dsd handling.
 

Re: WavPack 5.0.0 Final Release

Reply #23
Seeking speed or decoding speed?

Well that's a very good point. I now realise that either could affect the scan speed. I just tested a 4min track and in flac it took 0.43sec to scan & load. The same track in WavPack took 1.35secs. Now these are not particularly long times, however with long tracks DJ's seem to get antsy if the track doesn't appear in the display almost instantly.

Re: WavPack 5.0.0 Final Release

Reply #24
Yesterday i tested some DSD128 and DSD256 dsf-files.
--> the converting to wavpack worked out without any problem.  :)
Also the playback of the songs on my quite weak and outdated system was perfect! (... and gapless!!)

Then i converted them back to dsf with wvunpack. The dos "comp"-command gave me the result: no differences. Thats what i call real lossless converting!

One point at last, which does not work out as hoped for - it is written, that wavpack can compress dsd in DSDIFF and thats correct. But very often DSDIFF (dff-files) contain DST-content and this can NOT get converted. The input-file may not be compressed with DST.

EDIT:
Interestingly the compression-rate is very different in DSD64/128/256.
DSD64/256 have a rate between 45 and 50% --> very good
DSD128 has a rate between 20 and 25% --> not that good...
Is there a reason for this behaviour?