1pw-cat(1) General Commands Manual pw-cat(1)
2
3
4
6 pw-cat - Play and record media with PipeWire
7
9 pw-cat [options] [FILE | -]
10
11 pw-play [options] [FILE | -]
12
13 pw-record [options] [FILE | -]
14
15 pw-midiplay [options] [FILE | -]
16
17 pw-midirecord [options] [FILE | -]
18
19 pw-dsdplay [options] [FILE | -]
20
22 pw-cat is a simple tool for playing back or capturing raw or encoded
23 media files on a PipeWire server. It understands all audio file formats
24 supported by libsndfile for PCM capture and playback. When capturing
25 PCM, the filename extension is used to guess the file format with the
26 WAV file format as the default.
27
28 It understands standard MIDI files for playback and recording. This
29 tool will not render MIDI files, it will simply make the MIDI events
30 available to the graph. You need a MIDI renderer such as qsynth,
31 timidity or a hardware MIDI rendered to hear the MIDI.
32
33 DSD playback is supported with the DSF file format. This tool will only
34 work with native DSD capable hardware and will produce an error when no
35 such hardware was found.
36
37 When the FILE is - input and output will be raw data from STDIN and
38 STDOUT respectively.
39
41 -h | --help
42 Show help.
43
44 --version
45 Show version information.
46
47 -v | --verbose
48 Verbose operation.
49
50 -R | --remote=NAME
51 The name the remote instance to connect to. If left unspecified, a
52 connection is made to the default PipeWire instance.
53
54 -p | --playback
55 Playback mode. Read data from the specified file, and play it back.
56 If the tool is called under the name pw-play or pw-midiplay this is
57 the default.
58
59 -r | --record
60 Recording mode. Capture data and write it to the specified file. If
61 the tool is called under the name pw-record or pw-midirecord this
62 is the default.
63
64 -m | --midi
65 MIDI mode. FILE is a MIDI file. If the tool is called under the
66 name pw-midiplay or pw-midirecord this is the default. Note that
67 this program will not render the MIDI events into audible samples,
68 it will simply provide the MIDI events in the graph. You need a
69 separate MIDI renderer such as qsynth, timidity or a hardware
70 renderer to hear the MIDI.
71
72 -d | --dsd
73 DSD mode. FILE is a DSF file. If the tool is called under the name
74 pw-dsdplay this is the default. Note that this program will not
75 render the DSD audio. You need a DSD capable device to play DSD
76 content or this program will exit with an error.
77
78 --media-type=VALUE
79 Set the media type property (default Audio/Midi depending on mode).
80 The media type is used by the session manager to select a suitable
81 target to link to.
82
83 --media-category=VALUE
84 Set the media category property (default Playback/Capture depending
85 on mode). The media type is used by the session manager to select a
86 suitable target to link to.
87
88 --media-role=VALUE
89 Set the media role property (default Music). The media type is used
90 by the session manager to select a suitable target to link to.
91
92 --target=VALUE
93 Set a node target (default auto). The value can be:
94
95 • auto: Automatically select (Default)
96
97 • 0: Don't try to link this node
98
99 • <id>: The object.serial or the node.name of a target node
100
101 --latency=VALUE[units]
102 Set the node latency (default 100ms)
103
104 The latency determines the minimum amount of time it takes for a
105 sample to travel from application to device (playback) and from
106 device to application (capture).
107
108 The latency determines the size of the buffers that the application
109 will be able to fill. Lower latency means smaller buffers but
110 higher overhead. Higher latency means larger buffers and lower
111 overhead.
112
113 Units can be s for seconds, ms for milliseconds, us for
114 microseconds, ns for nanoseconds. If no units are given, the
115 latency value is samples with the samplerate of the file.
116
117 -P | --properties=VALUE
118 Set extra stream properties as a JSON object.
119
120 -q | --quality=VALUE
121 Resampler quality. When the samplerate of the source or destination
122 file does not match the samplerate of the server, the data will be
123 resampled. Higher quality uses more CPU. Values between 0 and 15
124 are allowed, the default quality is 4.
125
126 --rate=VALUE
127 The sample rate, default 48000.
128
129 --channels=VALUE
130 The number of channels, default 2.
131
132 --channel-map=VALUE
133 The channelmap. Possible values include: mono, stereo, surround-21,
134 quad, surround-22, surround-40, surround-31, surround-41,
135 surround-50, surround-51, surround-51r, surround-70, surround-71 or
136 a comma separated list of channel names: FL, FR, FC, LFE, SL, SR,
137 FLC, FRC, RC, RL, RR, TC, TFL, TFC, TFR, TRL, TRC, TRR, RLC, RRC,
138 FLW, FRW, LFE2, FLH, FCH, FRH, TFLC, TFRC, TSL, TSR, LLFR, RLFE,
139 BC, BLC, BRC
140
141 --format=VALUE
142 The sample format to use. One of: u8, s8, s16 (default), s24, s32,
143 f32, f64.
144
145 --volume=VALUE
146 The stream volume, default 1.000. Depending on the locale you have
147 configured, ',' or '.' may be used as a decimal separator. Check
148 with locale command.
149
151 The PipeWire Developers
152 <https://gitlab.freedesktop.org/pipewire/pipewire/issues>; PipeWire is
153 available from <https://pipewire.org>
154
156 pipewire(1), pw-mon(1),
157
158
159
160
161PipeWire 1.0.0 pw-cat(1)