Home | News | Download | Packages | Forum | Wiki | Github

[Solved] Mpd and wavpack


there is a small problem with the mpd and .wv files - the song time is not displayed: screen
In the cmus or deadbeef, everything is fine. Maybe something is missing (I tried install wavpack or/and ffmpeg, but it did not help).


Is it different when you play these .wv files with mpd , in another linux distro?


While we are at it, I made a pull request to fix the wrong flag "--enable-mmx" in the current template.


Previously I used Arch, mpd config is the same as it was there, music too. There was no such this problem.


Wavpack is a non-default build option for MPD
[rj@voidlinux:~/void-packages]$ ./xbps-src show-options mpd

=> mpd-0.20.16_1: the following build options are set:
cdio: Enable libcdio_paranoia input plugin (ON)
jack: Enable support for the JACK sound server (OFF)
lame: Enable support for the LAME encoder (OFF)
libao: Enable support for libao sound library (ON)
mpcdec: Enable support for the Musepack decoder (OFF)
pulseaudio: Enable support for the PulseAudio sound server (ON)
sndio: Enable support for the sndio sound server (ON)
wavpack: Enable support for the Wavpack audio format (OFF)

Building mpd with wavpack option enabled using ncmpc or sonata frontend wavpack song elapsed time displays correctly.

$ ./xbps-src -o wavpack pkg mpd


So need install xbps-src and build mpd from the sources, otherwise, in no way?


Yes, that is correct, the directions for xbps-src are here.


Thank you again, now it’s all right with wv (at the same time I understood with xbps-src - it was not so difficult as it seemed)).

(Edmond Dantes ) #9

@addhaloka welcome to Void community (and compliment for the awesome tiling desktop build) :slight_smile:
wanted to give you a personal suggestion for the future: the true advantage of .xbps packages is not to enable all those over-encumbering flags by default: similarly I remember pkgsrc does not even enable lame support for ffmpeg by default,and as a consequence mp3 encoding/convertion for apps like youtube-dl, mencoder is prevented. But there’s a rationale for this: all these audio extensions, all these sound servers, can be completely avoided as there good alternatives already available by default and anything else would impact on performance; in your specific case, I’d say storing music as wavpack files is not the wisest choice, as FLAC is an overall better lossless audio codec: faster encoding/decoding speed, better quality, slightly higher compression, but, above all, generally supported by any music client or hardware; so, my recommendation would be: stick with default template instead of burdening MPD with WavPack, and use ffmpeg to convert everything to FLAC.

Off-Topic consideration:
In the last few years, since I came in contact with Linux community, I’ve noticed a an esponentially growing interest towards MPD, to the point now it seems any desktop user is relying on it for listening to music.
However, using MPD assumes one has a dedicated/multi-purpose home server always up and running (good if you own a low-consuming RISC-embedded machine, like a Rpi, I used to do so). Or do people set up server and client on the same machine? I mean MPD is always one more daemon running, consuming precious RAM, especially if compiled against pulseaudio support. But above all, if client and server share the same hardware, then one has to add a firewall exception on TCP port 6600 for INPUT, OUTPUT and FORWARD at the same time, which I think is potentially exploitable (correct me if I’m wrong), all the more of considering that IIRC 6600 is also used for Windows Hyper-V migration.

On the plus side there are various CLI music database clients (CMUS, MOC, OpenCP…), CLI https music streamer (PMS, MPSyt, StreamLink…), CLI online radio streamer (mplayer, pyradio), which iny opinion often offer a better UI or better features than most MPD clients

Guys, what’s your opinion over those topics?

@cr6 , @cardinal


it was obvious! :smile: good job @cardinal !

that’s a good start. :wink:


@Montecristo About mpd ? I have no opinions in the matter, I never used this program.


Well, I disagree :wink:

The major difference is that wavpack uses integer arithmetic and flac floating point. Here’s what wavpack’s author says about that:

I have decided to not use any floating-point arithmetic in WavPack’s data path because I believe that integer operations are less susceptible to subtle chip to chip variations that could corrupt the lossless nature of the compression, the recent Pentium floating point bug being a blatant example of this. It is possible that a lossless compressor that used floating-point math could generate different output when running on that faulty Pentium. Even disregarding actual bugs, floating-point math is complicated enough that there could be subtle differences between “correct” implementations that could cause trouble for this type of application. To further ensure confidence in the integrity of WavPack’s compression, I have included a 32-bit error detection code.

I think this is something to think about.

The encoding speed of wavpack depends on the settings, of course, but with standard values I’d say it’s faster than flac. And regarding size: this depends highly on the input data. I’ve seen many examples where wavpack had a better ratio than flac (but also vice versa). If memory serves right flac is better with classical music or speech. But aside from speed and ratio there are other technical differences which might make one format more suitable than the other.

I just wonder how flac can have a better quality when both formats are lossless :wink: (except that wavpack has an additional hybrid mode).

But I agree that flac has by far better hard- and software support.

And please don’t get me wrong, I’m not implying flac is bad (I like both formats); I just wanted to say that wavpack is way better than you suggested. :slight_smile:


Thanks. :grinning:

I used to use deadbeef, then cmus, but at the moment most of all I like mpd. It happened not at once - there were several attempts - but after a shortage of use, I returned to something else (by the way, just like with tiling WM’s). Too at first it was not pleasant to spend memory in idle time, but:

  1. 20 - 30 MB is a trifle, especially in today’s realities
  2. It is not necessary to use as a system service, you can simply run it at the start of WM/DE - mpd or generally mpd --no-daemon, in this case it can be safely closed if not needed - mpd --kill.
    Regarding the formats - will not judge what is better, I usually use the flac myself, but wavpack also very common in the web, so I think its support should be in any music player (as well as other popular formats).

(Edmond Dantes ) #14

@addhaloka, @bluemoon Thanks for your prompt reply, it’s good to have some productive debate :wink:

I didn’t know about this, was an interesting reading

Oh you’re right! It’s been a while since I used MPD, and had completely forgotten it could run in no daemon. Anyway, you can also configure firewall to accept incoming connections to 6600 only from your IP/local host