BPLAY(1)

πŸ‘‘ BPLAY β€” buffered sound recording/playing πŸ‘‘

okay bestie, welcome to the General Commands Manual, section 1, and this is the page for bplay and brec. it's giving audio, it's giving buffered, it's giving iconic. let's go πŸ’…


✨ NAME ✨

bplay, brec β€” buffered sound recording/playing 🎧


πŸ¦‹ SYNOPSIS πŸ¦‹

bplay [-d device] [-B buffersize] [-S] [-s speed] [-b bits] [[-t secs] |
[-T samples]] [[-j secs] | [-J samples]] [-D level] [file]

brec [-d device] [-B buffersize] [-S] [-s speed] [-b bits] [[-t secs] |
[-T samples]] [-r|-v|-w] [-D level] [file]

πŸ’– DESCRIPTION πŸ’–

so here's the tea. bplay takes data from the named sound file β€” or from the standard input if you didn't give it a filename β€” and copies it over to the audio device. it's basically the file-to-speaker pipeline of your dreams. 🌈

and brec is the mirror twin: it copies data from the audio device into the named sound file, or to the standard output if there's no filename. recording era fr fr. πŸŽ™οΈ

now the lore: these programs are meant to be drop-in replacements for the vplay and vrec programs by Michael Beck (beck@informatik.hu-berlin.de). so if you already know those, you already know these. slay. ✨


🌸 OPTIONS 🌸

  • -B buffersize β€” use the audio buffer size you supply instead of the default one. big buffer energy. 🫢
  • -d device β€” use the audio device you supply instead of the default one. pick your fave. πŸŽ€
  • -S β€” the sound file is stereo. two channels, double the vibe.
  • -s speed β€” the speed, in samples per second. ⚑
  • -b bits β€” the number of bits per sample. only 8 and 16 are currently supported, so don't go inventing new bit depths bestie. 😭
  • -t secs β€” how many seconds to play or record. ⏱️
  • -T samples β€” how many samples to play or record. πŸ”’
  • -j secs β€” when playing, how many seconds to skip at the beginning of the input before playing. like skipping the intro, but for your audio data. πŸ™ˆ
  • -J samples β€” when playing, how many samples to skip at the beginning of the input before playing. same skip, sample units. βœ‚οΈ
  • -r β€” when recording, write a raw sound file. rawr. 🦁
  • -v β€” when recording, write a Creative Labs VOC sound file.
  • -w β€” when recording, write a Microsoft Wave sound file. ⚠️ note that the WAVE file format is limited to 4GiB filesize. recording more data is possible, but the length info won't be consistent. so like, it works but it's lying to you a little. πŸ’€
  • -q β€” quiet mode. no messages are displayed. 🀫 not a peep.
  • -D level β€” print debug information to stderr. debug level ranges from 0 to 2, where 0 is no debug information. turn it up when things get mysterious. πŸ”

πŸ“ FILES πŸ“

  • /dev/dsp β€” the audio device. πŸ’œ

πŸ’€ BUGS πŸ’€

okay so we gotta be honest with you, bestie. buckle up.

  • the -t, -T, -j and -J options may do strange things when playing VOC files. yes, strange. no, we can't elaborate. 😭
  • there are limitations on recording VOC format files β€” specifically, VOC files are only recorded in the 1.20 version of the format, which some player programs may choke on. there is also currently a limit of around 16M on the size of a VOC file which will be recorded. this is probably not a problem since, quote, "I don't think anybody really uses VOC files anymore." πŸ’€ periodt, honestly.
  • this program prefers to run setuid root. why? because it wants to use setpriority() to run at the highest possible priority, and it also locks down the buffers it uses to avoid them being swapped out. so that's the reason. main character privileges, literally. πŸ‘‘

🫢 AUTHOR 🫢

David Monro (davidm@amberdata.demon.co.uk or davidm@cs.usyd.edu.au) β€” the icon, the legend, the one who made this. 🌟

also, the option parsing code was originally taken from vplay to maintain compatibility. keeping it consistent, as one does. ✨


and that's the whole page, bestie!! this came from the General Commands Manual, dated 20 September 1999, and honestly it ate. go play some sounds, record some sounds, and remember: big buffer, big heart. πŸ’–πŸŽ€πŸ¦‹πŸŒΈπŸ‘‘

πŸ“¦ where this page comes from