Try this on a machine _with_ a sound card and see (i.e. hear) if it is what you want: mkfifo pcmpipe1 mkfifo pcmpipe2 pv pcmpipe1 -L 176400 >pcmpipe2 2>/dev/null & mplayer pcmpipe2 -ac pcm -demuxer rawaudio </dev/null >/dev/null 2>&1 & mplayer foo.mp3 -ao pcm:nowaveheader:file=pcmpipe1 You can then use keyboard control to set the volume, speed, ... on the mplayer which decodes the mp3. And please do not ask how to avoid the chopped up playback. It is what you've asked for by not letting the soundcard set the speed. Of course you can rise the number "176400", but then it is just like you used cat pcmpipe1 >pcmpipe2 what was my suggestion from the beginning. Have fun. Kiste