-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Sat, Nov 17, 2007 at 02:02:28PM +1100, Erik de Castro Lopo wrote:
Ken Restivo wrote:
I'm looking for a way to play a wav file from
STDIN that'll work with JACK.
In general, WAV files are not designed for reading from things like pipes.
The problem is that they can contain metadata *after* the audio data.
There are however file formats that are specifically design to be allowed
to be read from pipes, like AU and CAF. Both of these formats have all
metadata before the audio data and do not allow trailing metadata.
Both AU and CAF formats support a wide range of audio data formats
including 16, 24 and 32 bit integer PCM, 32 bit floats, 64 bit floats,
Alaw, ulaw etc.
mplayer -ao jack (or just mplayer without JACK)
won't handle WAV files on stdin, for some reason.
Cannot seek backward in linear streams!
Seek failed
Mplayer is probably being a little conservative.
libsndfile does allow reading from pipes as long as the file is
not too broken.
I need to do this because I'm playing
wavpack'ed files: I need to do
"wvunpack -o - filename.wv | SOMETHING - ". I do *not* want to have to
unpack them to disk just to play them.
Does wvunpack support output as AU of CAF?
If wvunpack only does WAV output, you have two solutions:
- Write SOMETHING to use libsndfile which does read from a pipe.
- Hack wavpack support into libsndfile :-).
Interestingly, wavpack can write *and read* wav files from a pipe.
I'll try inserting sndfile-convert into the pipeline and see if there's a way to
make mplayer happy that way.
- -ken
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFHPpXoe8HF+6xeOIcRAi7xAJ0dvP8/cy01xLy5NlXh/f3TY4akNwCghMse
mmQ59Rms6Uu/hG/Qrg5sznw=
=1dk2
-----END PGP SIGNATURE-----