---
name: "na_play"
section: "1"
platform: "linux"
package: "speech-tools"
version: "1:2.5.0-13+b4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/na_play"
---

# na\_play(1)

play waveform files on audio device

## NAME

**na\_record** – play waveform files on audio device

## SYNOPSIS

**na\_play** \[**-h**\] \[**-itype** *type*\] \[**-n** *channels*\] \[**-f** *sample* *rate*\] \[**-ibo** *byteorder*\] \[**-iswap**\] \[**-istype** *type*\] \[**-c** *channel*\] \[**-start** *time*\] \[**-end** *time*\] \[**-from** *sample*\] \[**-to** *sample*\] \[**-p** *protocol*\] \[**-command** *command*\] \[**-basic**\] \[**-quality** *high* \| *low*\] \[**-server** *host*\] \[**-scale** *scale*\] \[**-v**\] \[**-wait**\] *input* *files* *...*

## DESCRIPTION

**na\_play** plays digital audio data to the system's audio input device from the specified file(s).  It supports a variety of file formats and native audio devices.

The following option flags are recognized:

- **-h**

  Prints a short summary of usage to standard output.

- **-itype** *type*

  Input file type.  Usually, the input type can be determined from the file's headers, so this option is not required except for raw (unheadered) data. Supported types are currently: nist, est, esps, snd, riff, aiff, audlab, raw, ascii.

- **-n** *channels*

  Number of channels, in an unheadered input file.  Again, this can usually be determined from the headers.  Default is 1.

- **-f** *sampling* *rate*

  Sampling rate, for an unheadered input file.  Default is 16000.

- **-ibo** *byte* *order*

  Byte order, for an unheadered input file.  Default is system byte order. Recognized values are: MSB, LSB, native, nonnative.

- **-iswap**

  Swap bytes in an unheadered input file.

- **-istype** *type*

  Sample type for an unheadered input file.  Recognized values are: short, mulaw, byte, ascii.

- **-c** *channel*

  Select a single channel (starting at 0) for playback.  This option plays only the specified channel and discards all others.

- **-start** *time*

  Select a subsection of the file, starting at this time (specified in seconds).

- **-end** *time*

  Select a subsection of the file, ending at this time (specified in seconds).

- **-from** *sample*

  Select a subsection of the file, starting at this offset (specified in number of samples).

- **-to** *sample*

  Select a subsection of the file, ending at this offset (specified in number of samples).

- **-p** *protocol*

  Use the specified audio device protocol.  The list of supported types varies between platforms, and can be obtained using the **-h** flag.

- **-command** *command*

  If the "audio\_command" protocol is specified, this argument must be given to select the command used to play the waveform.  A temporary file is created and passed in the environment variable FILE.  The sample rate is passed in the environment varialbe SR.

- **-basic**

  Treat unheadered input files as 8kHz mu-law data (i.e. audio/basic MIME type)

- **-quality** *high* \| *low*

  Select the quality of output. "high" will ensure that proper resampling is used. "low" means to play as fast as possible with a minimum of processor time.

- **-server** *host*

  Specifies the host to play sound on, when using a network-aware audio protocol (such as NAS)

- **-scale** *scale*

  Change the gain (volume) of the signal.  The argument is a number relative to 1.0, which is the default.

- **-v**

  Be verbose (i.e. print file names when playing)

- **-wait**

  Pause for a keystroke between each file.

## ENVIRONMENT

- NA\_PLAY\_PROTOCOL

  Audio protocol to use (as in the **-p** flag)

- NA\_PLAY\_COMMAND

  Command used to play audio when using the audio\_command protocol.

- NA\_PLAY\_HOST

  Host to play audio on when using a network audio protocol.

- NA\_PLAY\_QUALITY

  Playback quality (low or high)

## EXAMPLES

To play the section of foo.wav from 1.5 to 3.2 seconds:

```
$ na_play -start 1.5 -end 3.2 foo.wav
```

To play samples 3600 to 42000 of channel 1 of bar.wav:

```
$ na_play -from 3600 -to 4200 -c 1 foo.wav
```

## BUGS

The usage information isn't entirely correct. The audio\_command protocol generates temporary files insecurely.

## SEE ALSO

[na\_record(1)](/na_record/1.md)
