NASD.CONF(5)

πŸ’– NASD.CONF(5) πŸ’–

okay bestie, so this is the File Formats Manual page for nasd.conf, and honestly? it's giving "quiet config file that secretly runs your whole audio life." let's get into it πŸŽ€


✨ NAME ✨

nasd.conf β€” the configuration file for NAS servers. that's it, that's the whole name, but the way it does so much πŸ’…


🌸 DESCRIPTION 🌸

nasd.conf is a file you use to configure the behaiviour of the NAS server, and ngl it's a lot. it decides:

  • what devices the server will attempt to use
  • the minimum & maximum frequencies used
  • if the device should be used in 8bit or 16bit mode
  • what fragment size and number of fragments should be used (super useful for tuning the server's latency, fr)
  • and if the server should be verbose when starting or output debugging information

not all options are supported for all servers, okay? so you have to check the /etc/nas/nasd.conf.eg file for information on what options are supported for which servers. no cap, go look. πŸ‘€


πŸ¦‹ THE CONFIG FILE SYNTAX πŸ¦‹

There are up to three section in the config file. yes, three, keep up ✨

  • Section one deals with global options, some of which just turn on verbose messages when parsing the config file, and setting debug messages on.
  • The remaining two sections will, if present, adjust various parameters of the input and output devices, for those servers that understand them.

🌈 the global + device options, one by one 🌈

  • verbose β€” Sets a flag telling the server to report what it's trying to do with each setting in the config file. This option is off by default.
  • debug <number> β€” Sets the debug flag, which will provide a trace of the server's activities on stderr. Set <number> to 0 to disable debug messages, 99 for alot of debug messages. This option defaults to 0.
  • ReleaseDevice YES | NO β€” Set to YES or NO. Defines whether the server should release the audio device when finished playing or recording a sound. This option defaults to YES. (voxware, hpux, sun)
  • KeepMixer YES | NO β€” Set to YES or NO. Defines whether the server should keep the mixer open when releasing the audio device. Without an open mixer device the server will always report the default gain and line mode and cannot change them either. This option defaults to YES. (voxware)
  • MixerInit YES | NO β€” Set to YES or NO. Defines whether the server will init the mixer device on startup. Later changes of gain or input mode will change the mixer settings. This option defaults to NO. (voxware)
  • ReInitMixer YES | NO β€” Set to YES or NO. Defines whether the server will re-init the mixer device on every audio device open. The mixer is re-initialized only if it is initialized at startup (see the MixerInit option). This option defaults to NO. (voxware)
  • OutDevType EXT | INT β€” For HPUX servers, define to EXT to use the external output device (headphone/speakers) or INT for the internal output device (internal speaker). Defaults to EXT.
  • outputsection β€” Marks the beginning of the output section, which allows various parameters of the output device to be set up. πŸ’–
  • inputsection β€” Marks the beginning of the input section, which allows various parameters of the input device to be set up. 🎀
  • end β€” Marks the end of the input section or output section. the little "that's all folks" moment πŸŽ€
  • device <devname> β€” Specifies what device is used. An example is device "/dev/dsp". With the voxware server you can use the empty string "" to disable the device.
  • mixer <mixername> β€” Specifies what mixer device is used. An example is mixer "/dev/mixer". If <mixername> is set to the empty string "" no mixer is used in this section.
  • gain <number> β€” Specifies the default volume (0-100). The default is 50.
  • gainscale <number> β€” This factor (expressed as a percentage) is applied to all volume-setting requests. This lets the server transparently limit the actual maximum volume that can be set by clients. The default is 100.
  • maxrate <number> β€” The maximum number of samples per second that we'll drive the card at.
  • minrate <number> β€” The minimum number of samples per second that the card will be driven at.
  • maxfrags <number> β€” The maximum number of of kernel buffers that will be used for the device. the number is dynamically adjusted as the sampling frequency varies.
  • minfrags <number> β€” The minimum number of kernel buffers that will be used.
  • fragsize <number> β€” The size of each buffer β€” note that the size must be a power of 2. don't fight it, just pick a power of 2 🧚
  • wordsize <number> β€” The number of bits per sample. Allowable values are 8 and 16.
  • numchans <number> β€” Used to decide if the card is run in stereo or mono mode. Allowable values are 1 or 2.
  • forcerate no | yes β€” Forces the output rate to the current rate. The default is no.
  • autoOpen no | yes β€” Whether to open the device at init time (if ReleaseDevice = no). The default is yes.
  • readwrite no | yes β€” Whether or not to open the device read-write. The default is no. If set to yes, then the device will be opened read-write. There should be no need to set this to yes, but... πŸ‘€

πŸ‘‘ SEE ALSO πŸ‘‘

nas(1), nasd(1), auinfo(1), auplay(1), auctl(1)

like, go read those too, they're the supporting cast and they ate πŸ’…


πŸ’€ BUGS πŸ’€

Absolutely none.

(iconic. we love a confident config file. no notes. 😭✨)


🫢 AUTHORS 🫢

  • Stephen Hocking (sysseh@devetir.qld.gov.au)
  • Jon Trulson (jon@radscan.com)

bestie reminder: every single option here is case-sensitive-ish and picky, so copy the names exactly, and check /etc/nas/nasd.conf.eg before you assume your server supports a thing. not all servers understand all of these. fr fr. 🌸

and that's the whole page, babe β€” this one came out of the NAS source, page 5 of the manuals, and there's genuinely no date stamped on it so we're just vibing with the version as-is. stay slay, keep your fragment size a power of 2, and go make some noise πŸŽ€πŸ¦‹πŸ’–

πŸ“¦ where this page comes from