pacat(1)
β¨ pacat(1) β¨ β bestie's guide to the PulseAudio play/record girlies π
okay so real talk: this is the manual page for pacat, from the General Commands Manual section of the man pages, and it's lowkey one of the most useful little tools in the whole PulseAudio cinematic universe. sit down, grab a strawberry π, we're doing this.
πΈ NAME πΈ
pacat β play back or record raw or encoded audio streams on a PulseAudio sound server. that's the whole vibe. she plays. she records. she does not gatekeep. π
π¦ SYNOPSIS π¦
paplay [options] [FILE]
parecord [options] [FILE]
pacat [options] [FILE]
parec [options] [FILE]
pamon [options] [FILE]
pacat --help
pacat --version
so basically she answers to five different names β paplay, parecord, pacat, parec, pamon β like a girl with a main account and four alts, and which one you call her by actually changes her whole personality (more on that in a sec π
). plus the classic --help and --version for when you just need to know who she is.
π DESCRIPTION π
pacat is a simple tool for playing back or capturing raw or encoded audio files on a PulseAudio sound server. simple!! she said simple!! and she understands all audio file formats supported by libsndfile, which is genuinely so iconic of her. π
β¨ OPTIONS β¨
every single one, no skips, no cuts, full album. π§
-h|--helpβ show help. bestie needs help sometimes, it's fine, it's giving growth.--versionβ show version information. identity check! who am i? πͺ-r|--recordβ capture audio data and write it to the specified file, or toSTDOUTif none is specified. if the tool is called under the nameparec, this is the default. soparecis literally justpacat --recordwith a name change and a dream. π-p|--playbackβ read audio data from the specified file, orSTDINif none is specified, and play it back. if the tool is called under the namepacat, this is the default. main character behaviour, honestly.-v|--verboseβ enable verbose operation. dumps the current playback time toSTDERRduring playback/capturing. she's narrating her own life. we love a narrator. π£οΈ-s|--server=SERVERβ choose the server to connect to. pick your location, queen.-d|--device=SINKORSOURCEβ specify the symbolic name of the sink/source to play/record this stream on/from. The special names , and can be used to specify the default sink, source and monitor respectively. (yes, the names are literally blank in the original text, bestie β i'm not inventing them, that's just what the page says, and i refuse to make stuff up about your audio. π)--monitor-stream=INDEXβ record from the sink input with index INDEX. eavesdropping but make it legal. π-n|--client-name=NAMEβ specify the client namepaplayshall pass to the server when connecting. name tag! hi my name is β¨--stream-name=NAMEβ specify the stream namepaplayshall pass to the server when creating the stream.--volume=VOLUMEβ specify the initial playback volume to use. choose a value between0(silent) and65536(100% volume). numbers, periodt.--rate=SAMPLERATEβ capture or play back audio with the specified sample rate. defaults to44100Hz.--format=FORMATβ capture or play back audio with the specified sample format. seehttps://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/for supported values. defaults tos16ne.--channels=CHANNELSβ capture or play back audio with the specified number of channels. if more than two channels are used it is recommended to use the--channel-mapoption below. defaults to2.--channel-map=CHANNELMAPβ explicitly choose a channel map when playing back this stream. the argument should be a comma separated list of channel names:front-left,front-right,mono,front-center,rear-left,rear-right,rear-center,lfe,front-left-of-center,front-right-of-center,side-left,side-right,top-center,top-front-center,top-front-left,top-front-right,top-rear-left,top-rear-right,top-rear-center, or any of the 32 auxiliary channel namesaux0toaux31. that's the whole guest list, everyone's invited. π--fix-formatβ if passed, the sample format of the stream is changed to the native format of the sink the stream is connected to. she's adapting. she's flexible. she's that girl.--fix-rateβ if passed, the sampling rate of the stream is changed to the native rate of the sink the stream is connected to.--fix-channelsβ if passed, the number of channels and the channel map of the stream is changed to the native number of channels and the native channel map of the sink the stream is connected to.--no-remixβ never upmix or downmix channels. boundaries!! π§--no-remapβ never remap channels. instead of mapping channels by their name this will match them solely by their index/order. so like, no name recognition, just vibes and position.--latency=BYTESβ explicitly configure the latency, with a time specified in bytes in the selected sample format. if left out the server will pick the latency, usually relatively high for power saving reasons. use either this option or--latency-msec, but not both. pick a lane, bestie.--latency-msec=MSECβ explicitly configure the latency, with a time specified in milliseconds. if left out the server will pick the latency, usually relatively high for power saving reasons. use either this option or--latency, but not both. same rule, different unit.--process-time=BYTESβ explicitly configure the process time, with a time specified in bytes in the selected sample format. if left out the server will pick the process time. use either this option or--process-time-msec, but not both.--process-time-msec=MSECβ explicitly configure the process time, with a time specified in milliseconds. if left out the server will pick the process time. use either this option or--process-time, but not both.--property=PROPERTY=VALUEβ attach a property to the client and stream. may be used multiple times. stack them like friendship bracelets. π«Ά--rawβ play/record raw audio data. this is the default if this program is invoked aspacat,parecorpamon.--file-format[=FFORMAT]β play/record encoded audio data in the file format specified. this is the default if this program is invoked aspaplayandparecord.--list-file-formatsβ list supported file formats. the menu, if you will. π
tiny reminder bestie:--latency/--latency-msecand--process-time/--process-time-msecare either/or situations. do NOT pass both of a pair, the page says so explicitly, and i will not be the one to explain to the server why you did that. π
π LIMITATIONS π
due to a limitation in libsndfile, paplay currently does not always set the correct channel mapping for playback of multichannel (i.e. surround) audio files β even if the channel mapping information is available in the audio file. it's not her fault!! it's libsndfile's fault!! but fr fr, know this going in. π
π AUTHORS π
the PulseAudio Developers <pulseaudio-discuss (at) lists (dot) freedesktop (dot) org>; PulseAudio is available from http://pulseaudio.org/ β give them their flowers, they built all of this. π
π SEE ALSO π
go read those next, bestie, iykyk. π¦
and that's the whole page, no cap, every flag and every warning intact β this one's from the Manuals collection, User section, pacat(1), and if you made it all the way down here then honestly? slay. go play something. π
β¨π
π¦ where this page comes from
- alpine 3.24: pulseaudio-doc 17.0-r7 Β· LGPL-2.1-or-later
- centos-stream 10: pulseaudio-utils 17.0-6.el10 Β· LGPL-2.1-or-later
- debian bookworm: pulseaudio-utils 16.1+dfsg1-2+b1 Β· LGPL-2.1-or-later
- debian trixie: pulseaudio-utils 17.0+dfsg1-2+b1 Β· LGPL-2.1-or-later
- fedora 43: pulseaudio-utils 17.0-7.fc43 Β· LGPL-2.1-or-later
- fedora 43: pulseaudio-utils 17.0-9.fc43 Β· LGPL-2.1-or-later
- fedora 44: pulseaudio-utils 17.0-9.fc44 Β· LGPL-2.1-or-later
- nixos 26.05: pulseaudio 17.0
- nixpkgs unstable: pulseaudio 17.0
- opensuse-leap 16.0: pulseaudio-utils 17.0-160000.2.2 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: pulseaudio-utils 17.0-160000.2.2 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: pulseaudio-utils 17.0-160000.2.2 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: pulseaudio-utils 17.0-160000.2.2 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- ubuntu jammy: pulseaudio-utils 1:15.99.1+dfsg1-1ubuntu1 Β· LGPL-2.1-or-later
- ubuntu jammy: pulseaudio-utils 1:15.99.1+dfsg1-1ubuntu2.2 Β· LGPL-2.1-or-later
- ubuntu noble: pulseaudio-utils 1:16.1+dfsg1-2ubuntu10 Β· LGPL-2.1-or-later
- ubuntu noble: pulseaudio-utils 1:16.1+dfsg1-2ubuntu10.1 Β· LGPL-2.1-or-later
- ubuntu questing: pulseaudio-utils 1:17.0+dfsg1-2ubuntu3
- ubuntu resolute: pulseaudio-utils 1:17.0+dfsg1-2ubuntu4 Β· LGPL-2.1-or-later
- ubuntu stonking: pulseaudio-utils 1:17.0+dfsg1-2ubuntu6 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms