PW-CAT(1)

NAME
pw-cat - Play and record media with PipeWire

SYNOPSIS
pw-cat [options] [FILE]
pw-play [options] [FILE]
pw-record [options] [FILE]
pw-midiplay [options] [FILE]
pw-midirecord [options] [FILE]

DESCRIPTION

pw-cat is a simple tool for playing back or capturing raw or encoded media files on a PipeWire server. It understands all audio file formats supported by libsndfile.

OPTIONS

    -h | --help
        Show help.

    --version
        Show version information.

    -v | --verbose
        Verbose operation.

    -R | --remote=NAME
        The name the remote instance to connect to. If left unspecified, a connection is made to the default PipeWire instance.

    -p | --playback
        Playback mode. Read data from the specified file, and play it back. If the tool is called under the name pw-play or pw-midiplay this is the default.

    -r | --record
        Recording mode. Capture data and write it to the specified file. If the tool is called under the name pw-record or pw-midirecord this is the default.

    -m | --midi
        MIDI mode. FILE is a MIDI file. If the tool is called under the name pw-midiplay or pw-midirecord this is the default.

    --media-type=VALUE
        Set the media type property (default Audio/Midi depending on mode). The media type is used by the session manager to select a suitable target to link to.

    --media-category=VALUE
        Set the media category property (default Playback/Capture depending on mode). The media type is used by the session manager to select a suitable target to link to.

    --media-role=VALUE
        Set the media role property (default Music). The media type is used by the session manager to select a suitable target to link to.

    --target=VALUE
        Set a node target (default auto). The value can be:

        auto
            Automatically select (Default)

        0   Don't try to link this node

        <id>
            The id of a target node

    --latency=VALUE[units]
        Set the node latency (default 100ms)

        The latency determines the minimum amount of time it takes for a sample to travel from application to device (playback) and from device to application (capture).

        The latency determines the size of the buffers that the application will be able to fill. Lower latency means smaller buffers but higher overhead. Higher latency means larger buffers and lower overhead.

        Units can be s for seconds, ms for milliseconds, us for microseconds, ns for nanoseconds. If no units are given, the latency value is samples with the samplerate of the file.

    --list-targets
        List the available targets for --target

    -q | --quality=VALUE
        Resampler quality. When the samplerate of the source or destination file does not match the samplerate of the server, the data will be resampled. Higher quality uses more CPU. Values between 0 and 15 are allowed, the default quality is 4.

    --rate=VALUE
        The sample rate, default 48000.

    --channels=VALUE
        The number of channels, default 2.

    --channel-map=VALUE
        The channelmap. Possible values include: mono, stereo, surround-21, quad, surround-22, surround-40, surround-31, surround-41, surround-50, surround-51, surround-51r, surround-70, surround-71 or a comma separated list of channel names: FL, FR, FC, LFE, SL, SR, FLC, FRC, RC, RL, RR, TC, TFL, TFC, TFR, TRL, TRC, TRR, RLC, RRC, FLW, FRW, LFE2, FLH, FCH, FRH, TFLC, TFRC, TSL, TSR, LLFR, RLFE, BC, BLC, BRC

    --format=VALUE
        The sample format to use. One of: s8, s16 (default), s24, s32, f32, f64.

    --volume=VALUE
        The stream volume, default 1.000.

AUTHORS

The PipeWire Developers <https://gitlab.freedesktop.org/pipewire/pipewire/issues>; PipeWire is available from https://pipewire.org

SEE ALSO

PipeWire(1), pw-mon(1),