View Single Post
Old 17 February 2016, 07:02 pm   #1
doppletune
Member
 
Join Date: Feb 2016
Posts: 3
Default Error when piping WAV from ffmpeg to musepack mpcenc.exe

I am getting an error message in mpcenc, "WAVE file has incorrect header", when input from stdin coming from ffmpeg.

This is running on a Windows Vista machine, under cygwin, using the current versions of musepack (MPC Encoder 1.30.0) and ffmpeg (N-78410-g588e2e3 / in other words, downloaded yesterday).

I am ripping audiobook CDs; then using ffmpeg to downmix to mono; and piping the 44.1 kHz mono WAV output to mpcenc:

ffmpeg.exe -i d01\ 11.wav -ac 1 -f wav pipe: | mpcenc.exe --quality 0.8 - d01\ 11.mpc

The errors:
WAVE file has incorrect header: header: 62519.262 s, contents: 191.893 s
WAVE file has incorrect header: header: 191.893 s, contents: 191.893 s
WAVE file has incorrect header: header: 191.893 s, contents: 191.893 s

mpcenc.exe gives these errors, but still produces a usable .mpc file. The source example file above is 3m:11S, so the "contents:" parts of the error messages show the correct duration.

The same error messages appear if I pipe the output of ffmpeg to stdout and cat that output to a new WAV file on disk, then use that WAV file as input for mpcenc. However, if I output from ffmpeg to a disk-based WAV file (that is, without using stdout), then that file does not produce errors in mpcenc.

In each case, the WAV file outputs from ffmpeg play properly in Winamp and Media Player Classic.
doppletune is offline   Reply With Quote