Paraslash network audio streaming tools




para_write - play wav or raw audio


para_write [--help] [--detailed-help] [--version] [--loglevel=<severity>] [--writer=<’name [options]’>] [--channels=<num>] [--sample-rate=<rate>] [--sample-format=<format>]


para_write reads audio data from stdin and starts one supported writer.


Common options
The following options are implemented generically and are available for many of the commands.
, --help

print help and exit


print help, including all details, and exit

-V, --version

print version and exit

-l, --loglevel=<severity>

control amount of logging

values: debug, info, notice, warning, error, crit, emerg

Log only messages with severity greater or equal than the given value. Possible values:

debug: Produces really noisy output. info: Still noisy, but won’t fill up the disk quickly. notice: Indicates normal, but significant event. warning: Unexpected events that can be handled. error: Unhandled error condition. crit: System might be unreliable. emerg: Last message before exit.

Options for para_write
, --writer=<’name [options]’>

select writer to start

May be given multiple times, and the same writer may be specified more than once. If this option is not given, the first supported writer is started. The list of supported writers is shown in the help output.

Options for a particular writer may be specified for each given ’--writer’ option separately. You will have to quote these options like this:

--writer ’oss --device /dev/dsp2’

-c, --channels=<num>

specify number of channels

default: 2

It is only necessary to specify this option for raw audio. If it is not given, the channel count is queried from the parent buffer tree nodes (e.g. the decoder) or the wav header. Only if this query fails, the default value applies.

-s, --sample-rate=<rate>

do not guess the input sample rate

default: 44100

It is only necessary to specify this for raw audio. See the discussion of the --channels option.

-f, --sample-format=<format>

specify sample format

values: S8, U8, S16_LE, S16_BE, U16_LE, U16_BE

It is only necessary to specify this for raw audio. See the discussion of the --channels option.


alsa - native ALSA output plugin
Usage: alsa [--device=<device>] [--buffer-time=<milliseconds>]
, --device=<device>

set PCM device

default: default

Check for the presence of a /proc/asound/ directory to see if ALSA is present in your kernel. The file /proc/asound/devices contains all devices ALSA knows about.

-B, --buffer-time=<milliseconds>

duration of the ALSA buffer

default: 170

This is only a hint as ALSA might pick a slightly different time, depending on the sound hardware. The chosen value is shown in debug output as BUFFER_TIME.

If synchronization between multiple clients is desired, the same buffer time should be configured for all clients.

ao - output plugin for libao
Usage: ao [--driver=<name>] [--ao-option=<key:value>]
, --driver=<name>

select a output driver by name

If this is not given, the driver with the highest priority will be used. The list of available drivers and their priorities is shown in debug mode.

-o, --ao-option=<key:value>

pass a key-value pair to the libao driver

For each time this option is given, the supplied key-value pair is appended to the list of options for the driver. Invalid keys are silently ignored. The list of available keys is shown in debug mode.

oss - output plugin for the Open Sound System
Usage: oss [--device=<path>]
, --device=<path>

set PCM device

default: /dev/dsp

file - output plugin that writes to a local file
Usage: file [--filename=<path>]
, --filename=<path>

specify output file name

Defaults to a random filename in ~/.paraslash.


Written by Andre Noll
Copyright (C) 2019 Andre Noll
License: GNU GPL version 2
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Report bugs to Andre Noll