[LAU] Playing a wav file from stdin in JACK?
david
gnome at hawaii.rr.com
Sat Nov 17 03:29:38 EST 2007
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 :-).
How about basically wvunpack | lame | mplayer out to JACK?
You could use your choice of intermediate encoder.
--
David
gnome at hawaii.rr.com
authenticity, honesty, community
More information about the Linux-audio-user
mailing list