1PW-CAT(1)                   General Commands Manual                  PW-CAT(1)
2
3
4

NAME

6       pw-cat - Play and record media with PipeWire
7

SYNOPSIS

9       pw-cat [options] [FILE | -]
10       pw-play [options] [FILE | -]
11       pw-record [options] [FILE | -]
12       pw-midiplay [options] [FILE | -]
13       pw-midirecord [options] [FILE | -]
14       pw-dsdplay [options] [FILE | -]
15
16

DESCRIPTION

18       pw-cat  is  a  simple tool for playing back or capturing raw or encoded
19       media files on a PipeWire server. It understands all audio file formats
20       supported by libsndfile for PCM capture and playback.
21
22       It  understands  standard  MIDI  files for playback and recording. This
23       tool will not render MIDI files, it will simply make  the  MIDI  events
24       available to the graph. You need a MIDI renderer such as qsynth, timid‐
25       ity or a hardware MIDI rendered to hear the MIDI.
26
27       DSD playback is supported with the DSF file format. This tool will only
28       work with native DSD capable hardware and will produce an error when no
29       such hardware was found.
30
31       When the FILE is - input and output will be from STDIN and  STDOUT  re‐
32       spectively.
33

OPTIONS

35       -h | --help
36              Show help.
37
38       --version
39              Show version information.
40
41       -v | --verbose
42              Verbose operation.
43
44       -R | --remote=NAME
45              The name the remote instance to connect to. If left unspecified,
46              a connection is made to the default PipeWire instance.
47
48       -p | --playback
49              Playback mode. Read data from the specified file,  and  play  it
50              back.   If  the  tool  is  called  under  the  name  pw-play  or
51              pw-midiplay this is the default.
52
53       -r | --record
54              Recording mode. Capture data and write it to the specified file.
55              If  the tool is called under the name pw-record or pw-midirecord
56              this is the default.
57
58       -m | --midi
59              MIDI mode. FILE is a MIDI file. If the tool is called under  the
60              name  pw-midiplay  or  pw-midirecord  this is the default.  Note
61              that this program will not render the MIDI events  into  audible
62              samples,  it  will  simply provide the MIDI events in the graph.
63              You need a separate MIDI renderer such as qsynth, timidity or  a
64              hardware renderer to hear the MIDI.
65
66       -d | --dsd
67              DSD  mode.  FILE  is a DSF file. If the tool is called under the
68              name pw-dsdplay this is the default.   Note  that  this  program
69              will  not render the DSD audio. You need a DSD capable device to
70              play DSD content or this program will exit with an error.
71
72       --media-type=VALUE
73              Set the media type property  (default  Audio/Midi  depending  on
74              mode).   The media type is used by the session manager to select
75              a suitable target to link to.
76
77       --media-category=VALUE
78              Set the media category property  (default  Playback/Capture  de‐
79              pending on mode).  The media type is used by the session manager
80              to select a suitable target to link to.
81
82       --media-role=VALUE
83              Set the media role property (default Music).  The media type  is
84              used  by the session manager to select a suitable target to link
85              to.
86
87       --target=VALUE
88              Set a node target (default auto). The value can be:
89
90              auto   Automatically select (Default)
91
92              0      Don't try to link this node
93
94              <id>   The object.serial or the node.name of a target node
95
96       --latency=VALUE[units]
97              Set the node latency (default 100ms)
98
99              The latency determines the minimum amount of time it takes for a
100              sample  to travel from application to device (playback) and from
101              device to application (capture).
102
103              The latency determines the size of the buffers that the applica‐
104              tion  will  be able to fill. Lower latency means smaller buffers
105              but higher overhead. Higher latency  means  larger  buffers  and
106              lower overhead.
107
108              Units  can  be  s  for  seconds, ms for milliseconds, us for mi‐
109              croseconds, ns for nanoseconds.  If no units are given, the  la‐
110              tency value is samples with the samplerate of the file.
111
112       -P | --properties=VALUE
113              Set extra stream properties as a JSON object.
114
115       -q | --quality=VALUE
116              Resampler quality. When the samplerate of the source or destina‐
117              tion file does not match the samplerate of the server, the  data
118              will  be resampled. Higher quality uses more CPU. Values between
119              0 and 15 are allowed, the default quality is 4.
120
121       --rate=VALUE
122              The sample rate, default 48000.
123
124       --channels=VALUE
125              The number of channels, default 2.
126
127       --channel-map=VALUE
128              The channelmap. Possible  values  include:  mono,  stereo,  sur‐
129              round-21,  quad,  surround-22,  surround-40,  surround-31,  sur‐
130              round-41, surround-50, surround-51,  surround-51r,  surround-70,
131              surround-71  or a comma separated list of channel names: FL, FR,
132              FC, LFE, SL, SR, FLC, FRC, RC, RL, RR, TC, TFL, TFC,  TFR,  TRL,
133              TRC,  TRR,  RLC, RRC, FLW, FRW, LFE2, FLH, FCH, FRH, TFLC, TFRC,
134              TSL, TSR, LLFR, RLFE, BC, BLC, BRC
135
136       --format=VALUE
137              The sample format to use. One of: u8, s8,  s16  (default),  s24,
138              s32, f32, f64.
139
140       --volume=VALUE
141              The  stream  volume, default 1.000.  Depending on the locale you
142              have configured, "," or "." may be used as a decimal  separator.
143              Check with locale command.
144

AUTHORS

146       The                PipeWire                Developers                <‐
147       https://gitlab.freedesktop.org/pipewire/pipewire/issues>;  PipeWire  is
148       available from https://pipewire.org
149

SEE ALSO

151       PipeWire(1), pw-mon(1),
152
153
154
155
156                                                                     PW-CAT(1)
Impressum