jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

961 lines
25KB

  1. .TH "JACKD" "1" "!DATE!" "!VERSION!" ""
  2. .SH "NAME"
  3. \fBjackd\fR \- JACK Audio Connection Kit sound server
  4. .SH "SYNOPSIS"
  5. \fBjackd\fR [\fIoptions\fR] \fB\-d\fI backend \fR
  6. [\fIbackend\-parameters\fR]
  7. .br
  8. \fBjackd \-\-help\fR
  9. .SH "DESCRIPTION"
  10. \fBjackd\fR is the JACK audio server daemon that allows JACK client
  11. programs to process and route audio and MIDI data in a synchronous,
  12. sample-accurate and low\-latency manner. Originally written for the
  13. GNU/Linux operating system, it also runs on various Unix platforms,
  14. Mac OS X and MS Windows.
  15. JACK can connect a number of different client applications
  16. to an audio device and also to each other. Most clients are external,
  17. running in their own processes as normal applications. JACK also
  18. supports internal clients, which run within the \fBjackd\fR process
  19. using a loadable "plugin" interface.
  20. JACK differs from other audio servers in being designed from the
  21. ground up for professional audio work. It focuses on two key areas:
  22. synchronous execution of all clients and low latency operation.
  23. The name JACK makes a reference to the classical way of patching audio
  24. connections with physical audio jack cables.
  25. JACK is also a recursive acronym, that is an abbreviation which is part
  26. of itself. \fIJ\fRACK \fIA\fRudio \fIC\fRonnection \fIK\fRit.
  27. For the latest JACK information please consult the web site:
  28. <\fBhttp://www.jackaudio.org/\fR>.
  29. .SH "OPTIONS"
  30. .TP
  31. \fB\-d, \-\-driver \fIbackend\fR [\fIbackend\-parameters\fR ]
  32. .br
  33. Select the audio interface backend. The current list of supported
  34. backends is: \fBalsa\fR, \fBcoreaudio\fR, \fBdummy\fR,
  35. \fBfirewire\fR, \fBoss\fR \fBsun\fR and \fBportaudio\fR. They are
  36. not all available on all platforms. All \fIbackend\-parameters\fR are optional.
  37. .TP
  38. \fB\-h, \-\-help\fR
  39. .br
  40. Print a brief usage message describing the main \fBjackd\fR options.
  41. These do not include \fIbackend\-parameters\fR, which are listed using
  42. the \fB\-\-help\fR option for each specific backend. Examples below
  43. show how to list them.
  44. .TP
  45. \fB\-a, \-\-autoconnect\fR \fImodechar\fR
  46. Select how to handle self connect requests. They can be ignore or fail,
  47. on all port or just external ones. Use the \fB\-\-help\fR option to know
  48. your system specific options. The default is to not restrict self connect
  49. requests.
  50. .TP
  51. \fB\-m, \-\-no\-mlock\fR
  52. Do not attempt to lock memory, even if \fB\-\-realtime\fR.
  53. .TP
  54. \fB\-n, \-\-name\fR \fIserver\-name\fR
  55. Name this \fBjackd\fR instance \fIserver\-name\fR. If unspecified,
  56. this name comes from the \fB$JACK_DEFAULT_SERVER\fR environment
  57. variable.
  58. (default: "default")
  59. .TP
  60. \fB\-p, \-\-port\-max \fI n\fR
  61. Set the maximum number of ports the JACK server can manage.
  62. (default: 256)
  63. .TP
  64. \fB\-\-replace-registry\fR
  65. .br
  66. Remove the shared memory registry used by all JACK server instances
  67. before startup. This should rarely be used, and is intended only
  68. for occasions when the structure of this registry changes in ways
  69. that are incompatible across JACK versions (which is rare).
  70. .TP
  71. \fB\-R, \-\-realtime\fR
  72. .br
  73. Use realtime scheduling. This is needed for reliable low\-latency
  74. performance. On many systems, it requires \fBjackd\fR to run with
  75. special scheduler and memory allocation privileges, which may be
  76. obtained in several ways.
  77. (default: true)
  78. .TP
  79. \fB\-r, \-\-no-realtime\fR
  80. .br
  81. Do not use realtime scheduling.
  82. .TP
  83. \fB\-P, \-\-realtime\-priority \fIint\fR
  84. When running \fB\-\-realtime\fR, set the scheduler priority to
  85. \fIint\fR.
  86. .TP
  87. \fB\-\-silent\fR
  88. Silence any output during operation.
  89. .TP
  90. \fB\-T, \-\-temporary\fR
  91. Exit once all clients have closed their connections.
  92. .TP
  93. \fB\-t, \-\-timeout \fIint\fR
  94. .br
  95. Set client timeout limit in milliseconds.
  96. In realtime mode the client timeout must be smaller than the watchdog timeout (5000 msec).
  97. (default: 500)
  98. .TP
  99. \fB\-Z, \-\-nozombies\fR
  100. .br
  101. Prevent JACK from ever kicking out clients because they were too slow.
  102. This cancels the effect any specified timeout value, but JACK and its clients are
  103. still subject to the supervision of the watchdog thread or its equivalent.
  104. .TP
  105. \fB\-C, \-\-internal-session-file \fIinternal-session-file\fR
  106. .br
  107. Load internal clients and connections from \fIinternal-session-file\fR.
  108. Each line of this configuration file starts with a command.
  109. The following commands are available:
  110. .br
  111. \fBl(oad)\fR \fIclient-name lib-name client-args\fR
  112. .br
  113. With this command an internal JACK client will be instantiated.
  114. \fIclient-name\fR and \fIlib-name\fR cannot contain spaces.
  115. The rest of the line will be interpreted as \fIclient-args\fR and
  116. sent to the client library.
  117. .br
  118. \fBc(on)\fR \fIsource-port destination-port\fR
  119. .br
  120. With this command a source port will be connected to a destination port.
  121. \fIsource-port\fR and \fIdestination-port\fR cannot contain spaces.
  122. .br
  123. Comments are allowed, they start with \fB#\fR.
  124. .br
  125. An example configuration could look like the following:
  126. .br
  127. l inprocess1 inprocess
  128. l amp1 jalv http://lv2plug.in/plugins/eg-amp
  129. .br
  130. c amp:out system:playback_1
  131. .TP
  132. \fB\-u, \-\-unlock\fR
  133. .br
  134. Unlock libraries GTK+, QT, FLTK, Wine.
  135. .TP
  136. \fB\-v, \-\-verbose\fR
  137. Give verbose output.
  138. .TP
  139. \fB\-c, \-\-clocksource\fR (\fI h(pet) \fR | \fI s(ystem) \fR)
  140. Select a specific wall clock (HPET timer, System timer).
  141. .TP
  142. \fB\-V, \-\-version\fR
  143. Print the current JACK version number and exit.
  144. .SS ALSA BACKEND OPTIONS
  145. .TP
  146. \fB\-C, \-\-capture\fR [ \fIname\fR ]
  147. Provide only capture ports, unless combined with \-D or \-P. Optionally set
  148. capture device name.
  149. .TP
  150. \fB\-d, \-\-device \fIname\fR
  151. .br
  152. The ALSA pcm device \fIname\fR to use. If none is specified, JACK will
  153. use "hw:0", the first hardware card defined in \fB/etc/modules.conf\fR.
  154. .TP
  155. \fB\-z, \-\-dither [rectangular,triangular,shaped,none]
  156. Set dithering mode. If \fBnone\fR or unspecified, dithering is off.
  157. Only the first letter of the mode name is required.
  158. .TP
  159. \fB\-D, \-\-duplex\fR
  160. Provide both capture and playback ports. Defaults to on unless only one
  161. of \-P or \-C is specified.
  162. (default: true)
  163. .TP
  164. \fB\-h, \-\-help\fR Print a brief usage message describing only the
  165. \fBalsa\fR backend parameters.
  166. .TP
  167. \fB\-M, \-\-hwmeter\fR
  168. .br
  169. Enable hardware metering for devices that support it. Otherwise, use
  170. software metering.
  171. .TP
  172. \fB\-H, \-\-hwmon\fR
  173. .br
  174. Enable hardware monitoring of capture ports. This is a method for
  175. obtaining "zero latency" monitoring of audio input. It requires
  176. support in hardware and from the underlying ALSA device driver.
  177. When enabled, requests to monitor capture ports will be satisfied by
  178. creating a direct signal path between audio interface input and output
  179. connectors, with no processing by the host computer at all. This
  180. offers the lowest possible latency for the monitored signal.
  181. Presently (March 2003), only the RME Hammerfall series and cards based
  182. on the ICE1712 chipset (M\-Audio Delta series, Terratec, and others)
  183. support \fB\-\-hwmon\fR. In the future, some consumer cards may also
  184. be supported by modifying their mixer settings.
  185. Without \fB\-\-hwmon\fR, port monitoring requires JACK to read audio
  186. into system memory, then copy it back out to the hardware again,
  187. imposing the basic JACK system latency determined by the
  188. \fB\-\-period\fR and \fB\-\-nperiods\fR parameters.
  189. .TP
  190. \fB\-i, \-\-inchannels \fIint\fR
  191. .br
  192. Number of capture channels.
  193. (default: maximum supported by hardware)
  194. .TP
  195. \fB\-I, \-\-input\-latency\fR
  196. Extra input latency (frames).
  197. (default: 0)
  198. .TP
  199. \fB\-n, \-\-nperiods \fIint\fR
  200. .br
  201. Number of periods of playback latency. In seconds, this
  202. corresponds to \fB\-\-nperiods\fR times \fB\-\-period\fR divided by
  203. \fB\-\-rate\fR. The default is 2, the minimum allowed. For most
  204. devices, there is no need for any other value with the
  205. \fB\-\-realtime\fR option. Without realtime privileges or with boards
  206. providing unreliable interrupts (like ymfpci), a larger value may
  207. yield fewer xruns. This can also help if the system is not tuned for
  208. reliable realtime scheduling.
  209. For most ALSA devices, the hardware buffer has exactly
  210. \fB\-\-period\fR times \fB\-\-nperiods\fR frames. Some devices demand
  211. a larger buffer. If so, JACK will use the smallest possible buffer
  212. containing at least \fB\-\-nperiods\fR, but the playback latency does
  213. not increase.
  214. For USB audio devices it is recommended to use \fB\-n 3\fR. Firewire
  215. devices supported by FFADO (formerly FreeBoB) are configured with
  216. \fB\-n 3\fR by default.
  217. .TP
  218. \fB\-o, \-\-outchannels \fIint\fR
  219. .br
  220. Number of playback channels.
  221. (default: maximum supported by hardware)
  222. .TP
  223. \fB\-O, \-\-output\-latency\fR
  224. Extra output latency (frames).
  225. (default: 0)
  226. .TP
  227. \fB\-P, \-\-playback\fR [ \fIname\fR ]
  228. Provide only playback ports, unless combined with \-D or \-C. Optionally set
  229. playback device name.
  230. .TP
  231. \fB\-p, \-\-period \fIint\fR
  232. .br
  233. Number of frames between JACK \fBprocess()\fR calls. This
  234. value must be a power of 2. If you need low
  235. latency, set \fB\-p\fR as low as you can go without seeing xruns. A larger
  236. period size yields higher latency, but makes xruns less likely. The JACK
  237. capture latency in seconds is \fB\-\-period\fR divided by \fB\-\-rate\fR.
  238. (default: 1024)
  239. .TP
  240. \fB\-r, \-\-rate \fIint\fR
  241. Sample rate.
  242. (default: 48000)
  243. .TP
  244. \fB\-S, \-\-shorts
  245. .br
  246. Try to configure card for 16\-bit samples first, only trying 32\-bits if
  247. unsuccessful.
  248. (default: 32\-bit samples)
  249. .TP
  250. \fB\-s, \-\-softmode\fR
  251. .br
  252. Ignore xruns reported by the ALSA driver. This makes JACK less likely
  253. to disconnect unresponsive ports when running without \fB\-\-realtime\fR.
  254. .TP
  255. \fB\-X, \-\-midi \fR[\fIseq\fR|\fIraw\fR]
  256. .br
  257. Which ALSA MIDI system to provide access to. Using \fBraw\fR
  258. will provide a set of JACK MIDI ports that correspond to each raw ALSA
  259. device on the machine. Using \fBseq\fR will provide a set of JACK MIDI
  260. ports that correspond to each ALSA "sequencer" client (which includes
  261. each hardware MIDI port on the machine). \fBraw\fR provides slightly
  262. better performance but does not permit JACK MIDI communication with
  263. software written to use the ALSA "sequencer" API.
  264. .SS COREAUDIO BACKEND PARAMETERS
  265. .TP
  266. \fB\-c, \-\-channels\fR
  267. Maximum number of channels.
  268. (default: 2)
  269. .TP
  270. \fB\-i, \-\-inchannels\fR
  271. Maximum number of input channels.
  272. (default: 2)
  273. .TP
  274. \fB\-o, \-\-outchannels\fR
  275. Maximum number of output channels.
  276. (default: 2)
  277. .TP
  278. \fB\-C, \-\-capture\fR
  279. Whether or not to capture.
  280. (default: true)
  281. .TP
  282. \fB\-P, \-\-playback\fR
  283. Whether or not to playback.
  284. (default: true)
  285. .TP
  286. \fB\-D, \-\-monitor\fR
  287. Provide monitor ports for the output.
  288. (default: false)
  289. .TP
  290. \fB\-D, \-\-duplex\fR
  291. Capture and playback.
  292. (default: true)
  293. .TP
  294. \fB\-r, \-\-rate\fR
  295. Sample rate.
  296. (default: 44100)
  297. .TP
  298. \fB\-p, \-\-period\fR
  299. Frames per period, must be a power of 2.
  300. (default: 128)
  301. .TP
  302. \fB\-d, \-\-device\fR
  303. CoreAudio device name.
  304. (default: none)
  305. .TP
  306. \fB\-I, \-\-input\-latency\fR
  307. Extra input latency (frames).
  308. (default: 0)
  309. .TP
  310. \fB\-O, \-\-output\-latency\fR
  311. Extra output latency (frames).
  312. (default: 0)
  313. .TP
  314. \fB\-l, \-\-list\-devices \fR
  315. Display available CoreAudio devices.
  316. (default: false)
  317. .TP
  318. \fB\-H, \-\-hog \fR
  319. Take exclusive access of the audio device.
  320. (default: false)
  321. .TP
  322. \fB\-L, \-\-async\-latency \fR
  323. Extra output latency in asynchronous mode (percent).
  324. (default: 100)
  325. .TP
  326. \fB\-G, \-\-grain \fR
  327. Computation grain in RT thread (percent).
  328. (default: 100)
  329. .TP
  330. \fB\-s, \-\-clock\-drift \fR
  331. Whether or not to compensate clock drift in dynamically created aggregate device.
  332. (default: false)
  333. .SS DUMMY BACKEND PARAMETERS
  334. .TP
  335. \fB\-C, \-\-capture \fIint\fR
  336. Number of capture ports.
  337. (default: 2)
  338. .TP
  339. \fB\-P, \-\-playback \fIint\fR
  340. Number of playback ports.
  341. (default: 2)
  342. .TP
  343. \fB\-r, \-\-rate \fIint\fR
  344. Sample rate.
  345. (default: 48000)
  346. .TP
  347. \fB\-p, \-\-period \fIint\fR
  348. Number of frames between JACK \fBprocess()\fR calls. This
  349. value must be a power of 2. If you need low
  350. latency, set \fB\-p\fR as low as you can go without seeing xruns. A larger
  351. period size yields higher latency, but makes xruns less likely. The JACK
  352. capture latency in seconds is \fB\-\-period\fR divided by \fB\-\-rate\fR.
  353. (default: 1024)
  354. .TP
  355. \fB\-w, \-\-wait \fIint\fR
  356. Number of usecs to wait between engine processes.
  357. (default: 21333)
  358. .SS NETONE BACKEND PARAMETERS
  359. .TP
  360. \fB\-i, \-\-audio\-ins \fIint\fR
  361. Number of capture channels.
  362. (default: 2)
  363. .TP
  364. \fB\-o, \-\-audio\-outs \fIint\fR
  365. Number of playback channels.
  366. (default: 2)
  367. .TP
  368. \fB\-I, \-\-midi\-ins \fIint\fR
  369. Number of midi capture channels.
  370. (default: 1)
  371. .TP
  372. \fB\-O, \-\-midi\-outs \fIint\fR
  373. Number of midi playback channels.
  374. (default: 1)
  375. .TP
  376. \fB\-r, \-\-rate \fIint\fR
  377. Sample rate.
  378. (default: 48000)
  379. .TP
  380. \fB\-p, \-\-period \fIint\fR
  381. Frames per period.
  382. (default: 1024)
  383. .TP
  384. \fB\-n, \-\-num\-periods \fIint\fR
  385. Network latency setting in no. of periods.
  386. (default: 5)
  387. .TP
  388. \fB\-l, \-\-listen\-port \fIint\fR
  389. The socket port we are listening on for sync packets.
  390. (default: 3000)
  391. .TP
  392. \fB\-f, \-\-factor \fIint\fR
  393. Factor for sample rate reduction.
  394. (default: 1)
  395. .TP
  396. \fB\-u, \-\-upstream\-factor \fIint\fR
  397. Factor for sample rate reduction on the upstream.
  398. (default: 0)
  399. .TP
  400. \fB\-c, \-\-celt \fIint\fR
  401. Sets celt encoding and number of kbits per channel.
  402. (default: 0)
  403. .TP
  404. \fB\-b, \-\-bit\-depth \fIint\fR
  405. Sample bit\-depth (0 for float, 8 for 8bit and 16 for 16bit).
  406. (default: 0)
  407. .TP
  408. \fB\-t, \-\-transport\-sync \fIint\fR
  409. Whether or not to slave the transport to the master transport.
  410. (default: true)
  411. .TP
  412. \fB\-a, \-\-autoconf \fIint\fR
  413. Whether or not to use Autoconfig, or just start.
  414. (default: true)
  415. .TP
  416. \fB\-R, \-\-redundancy \fIint\fR
  417. Send packets N times.
  418. (default: 1)
  419. .TP
  420. \fB\-e, \-\-native\-endian \fIint\fR
  421. Don't convert samples to network byte order.
  422. (default: false)
  423. .TP
  424. \fB\-J, \-\-jitterval \fIint\fR
  425. Attempted jitterbuffer microseconds on master.
  426. (default: 0)
  427. .TP
  428. \fB\-D, \-\-always\-deadline \fIint\fR
  429. Always use deadline.
  430. (default: false)
  431. .SS OSS BACKEND PARAMETERS
  432. .TP
  433. \fB\-r, \-\-rate \fIint\fR
  434. Sample rate.
  435. (default: 48000)
  436. .TP
  437. \fB\-p, \-\-period \fIint\fR
  438. Number of frames between JACK \fBprocess()\fR calls. This
  439. value must be a power of 2. If you need low
  440. latency, set \fB\-p\fR as low as you can go without seeing xruns. A larger
  441. period size yields higher latency, but makes xruns less likely. The JACK
  442. capture latency in seconds is \fB\-\-period\fR divided by \fB\-\-rate\fR.
  443. (default: 1024)
  444. .TP
  445. \fB\-n, \-\-nperiods \fIint\fR
  446. Number of periods in the hardware buffer.
  447. The period size (\fB\-p\fR) times \fB\-\-nperiods\fR times four is
  448. the JACK buffer size in bytes. The JACK output latency in seconds is
  449. \fB\-\-nperiods\fR times \fB\-\-period\fR divided by \fB\-\-rate\fR.
  450. (default: 2)
  451. .TP
  452. \fB\-w, \-\-wordlength \fIint\fR
  453. Sample size in bits.
  454. (default: 16)
  455. .TP
  456. \fB\-i, \-\-inchannels \fIint\fR
  457. Number of capture channels.
  458. (default: 2)
  459. .TP
  460. \fB\-o, \-\-outchannels \fIint\fR
  461. Number of playback channels.
  462. (default: 2)
  463. .TP
  464. \fB\-C, \-\-capture \fIdevice_file\fR
  465. Input device for capture.
  466. (default: /dev/dsp)
  467. .TP
  468. \fB\-P, \-\-playback \fIdevice_file\fR
  469. Output device for playback.
  470. (default: /dev/dsp)
  471. .TP
  472. \fB\-b, \-\-ignorehwbuf \fIboolean\fR
  473. Whether or not to ignore hardware period size.
  474. (default: false)
  475. .TP
  476. \fB\-e, \-\-excl \fIboolean\fR
  477. Request exclusive and direct access to the sound device.
  478. This avoids mixing and automatic audio conversion in the
  479. OSS driver, and the extra latency that comes with that.
  480. (default: false)
  481. .TP
  482. \fB\-I, \-\-input\-latency\fR
  483. Extra input latency (frames).
  484. (default: 0)
  485. .TP
  486. \fB\-O, \-\-output\-latency\fR
  487. Extra output latency (frames).
  488. (default: 0)
  489. .SS SUN BACKEND PARAMETERS
  490. .TP
  491. \fB\-r, \-\-rate \fIint\fR
  492. Sample rate.
  493. (default: 48000)
  494. .TP
  495. \fB\-p, \-\-period \fIint\fR
  496. Number of frames between JACK \fBprocess()\fR calls. This
  497. value must be a power of 2. If you need low
  498. latency, set \fB\-p\fR as low as you can go without seeing xruns. A larger
  499. period size yields higher latency, but makes xruns less likely. The JACK
  500. capture latency in seconds is \fB\-\-period\fR divided by \fB\-\-rate\fR.
  501. (default: 1024)
  502. .TP
  503. \fB\-n, \-\-nperiods \fIint\fR
  504. Number of periods in the hardware buffer.
  505. The period size (\fB\-p\fR) times \fB\-\-nperiods\fR times four
  506. (assuming 2 channels 16-bit samples) is the JACK buffer size in bytes.
  507. The JACK output latency in seconds is \fB\-\-nperiods\fR times
  508. \fB\-\-period\fR divided by \fB\-\-rate\fR.
  509. (default: 2)
  510. .TP
  511. \fB\-w, \-\-wordlength \fIint\fR
  512. Sample size in bits.
  513. (default: 16)
  514. .TP
  515. \fB\-i, \-\-inchannels \fIint\fR
  516. Number of capture channels.
  517. (default: 2)
  518. .TP
  519. \fB\-o, \-\-outchannels \fIint\fR
  520. Number of playback channels.
  521. (default: 2)
  522. .TP
  523. \fB\-C, \-\-capture \fIdevice_file\fR
  524. Input device for capture.
  525. (default: /dev/audio)
  526. .TP
  527. \fB\-P, \-\-playback \fIdevice_file\fR
  528. Output device for playback.
  529. (default: /dev/audio)
  530. .TP
  531. \fB\-b, \-\-ignorehwbuf \fIboolean\fR
  532. Whether or not to ignore hardware period size.
  533. (default: false)
  534. .SS PORTAUDIO BACKEND PARAMETERS
  535. .TP
  536. \fB\-c, \-\-channel\fR
  537. Maximum number of channels.
  538. (default: all available hardware channels)
  539. .TP
  540. \fB\-i, \-\-channelin\fR
  541. Maximum number of input channels.
  542. (default: all available hardware channels)
  543. .TP
  544. \fB\-I, \-\-input\-latency\fR
  545. Extra input latency (frames).
  546. (default: 0)
  547. .TP
  548. \fB\-o, \-\-channelout\fR
  549. Maximum number of output channels.
  550. (default: all available hardware channels)
  551. .TP
  552. \fB\-O, \-\-output\-latency\fR
  553. Extra output latency (frames).
  554. (default: 0)
  555. .TP
  556. \fB\-C, \-\-capture\fR
  557. Whether or not to capture.
  558. (default: true)
  559. .TP
  560. \fB\-P, \-\-playback\fR
  561. Whether or not to playback.
  562. (default: true)
  563. .TP
  564. \fB\-D, \-\-duplex\fR
  565. Capture and playback.
  566. (default: true)
  567. .TP
  568. \fB\-r, \-\-rate\fR
  569. Sample rate.
  570. (default: 48000)
  571. .TP
  572. \fB\-p, \-\-period\fR
  573. Frames per period, must be a power of 2.
  574. (default: 1024)
  575. .TP
  576. \fB\-n, \-\-name\fR
  577. Driver name.
  578. (default: none)
  579. .TP
  580. \fB\-z, \-\-dither\fR
  581. Dithering mode.
  582. (default: none)
  583. .SS FIREWIRE BACKEND PARAMETERS
  584. .TP
  585. \fB\-d, \-\-device \fIname\fR
  586. .br
  587. The Firewire device \fIname\fR to use. If none is specified, JACK will try
  588. to use "hw:0". To get a list of available Firewire devices, see
  589. \fBffado\-test\fR. It's recommended to use the GUID of a Firewire device
  590. to rule out any ambiguities. Once the GUID of the device is known
  591. ("ffado-test ListDevices"), it can be used like
  592. \fB\-dguid:0xff2584e39b078a2e\fR to tell JACK which interface to use.
  593. Sometimes resetting the Firewire bus can help ("ffado-test BusReset") if
  594. there is any problem.
  595. (default: hw:0)
  596. .TP
  597. \fB\-p, \-\-period \fIint\fR
  598. .br
  599. Number of frames between JACK \fBprocess()\fR calls. This
  600. value must be a power of 2. If you need low latency, set \fB\-p\fR as
  601. low as you can go without seeing xruns. A larger period size yields higher
  602. latency, but makes xruns less likely. The JACK capture latency in seconds
  603. is \fB\-\-period\fR divided by \fB\-\-rate\fR.
  604. (default: 1024)
  605. .TP
  606. \fB\-n, \-\-nperiods \fIint\fR
  607. .br
  608. Number of periods of playback latency. Value must be greater or
  609. equal 2. In seconds, this corresponds to \fB\-\-nperiods\fR times \fB\-\-period\fR
  610. divided by \fB\-\-rate\fR.
  611. (default: 3)
  612. .TP
  613. \fB\-r, \-\-rate \fIint\fR
  614. Sample rate.
  615. (default: 48000)
  616. .TP
  617. \fB\-C, \-\-capture\fR [ \fIname\fR ]
  618. Provide only capture ports, unless combined with \-D or \-P. Optionally set
  619. capture device name.
  620. .TP
  621. \fB\-P, \-\-playback\fR [ \fIname\fR ]
  622. Provide only playback ports, unless combined with \-D or \-C. Optionally set
  623. playback device name.
  624. .TP
  625. \fB\-D, \-\-duplex\fR
  626. Provide both capture and playback ports. This option is the default behaviour
  627. and can normally be omitted.
  628. \-D can not be combined with \-P or \-C.
  629. .TP
  630. \fB\-I, \-\-input\-latency\fR
  631. Extra input latency (frames).
  632. (default: 0)
  633. .TP
  634. \fB\-O, \-\-output\-latency\fR
  635. Extra output latency (frames).
  636. (default: 0)
  637. .TP
  638. \fB\-v, \-\-verbose
  639. .br
  640. libffado verbose level.
  641. (default: 3)
  642. .TP
  643. \fB\-X, \-\-snoop\fR
  644. .br
  645. Snoop Firewire traffic.
  646. (default: false)
  647. .TP
  648. \fB\-h, \-\-help\fR Print a brief usage message describing only the
  649. \fBfirewire\fR backend parameters.
  650. .SH "EXAMPLES"
  651. .PP
  652. Print usage message for the parameters specific to each backend.
  653. .IP
  654. \fBjackd \-d alsa \-\-help\fR
  655. .br
  656. \fBjackd \-d coreaudio \-\-help\fR
  657. .br
  658. \fBjackd \-d net \-\-help\fR
  659. .br
  660. \fBjackd \-d dummy \-\-help\fR
  661. .br
  662. \fBjackd \-d firewire \-\-help\fR
  663. .br
  664. \fBjackd \-d oss \-\-help\fR
  665. .br
  666. \fBjackd \-d sun \-\-help\fR
  667. .br
  668. \fBjackd \-d portaudio \-\-help\fR
  669. .PP
  670. Run the JACK daemon with realtime priority using the first ALSA
  671. hardware card defined in \fB/etc/modules.conf\fR.
  672. .IP
  673. \fBjackstart \-\-realtime \-\-driver=alsa\fR
  674. .PP
  675. Run the JACK daemon with low latency giving verbose output, which can
  676. be helpful for trouble\-shooting system latency problems. A
  677. reasonably well\-tuned system with a good sound card and a
  678. low\-latency kernel can handle these values reliably. Some can do
  679. better. If you get xrun messages, try a larger buffer. Tuning a
  680. system for low latency can be challenging. Please consult the JACK FAQ
  681. for more suggestions.
  682. .IP
  683. \fBjackstart \-Rv \-d alsa \-p 128 \-n 2 \-r 44100\fR
  684. .PP
  685. Run \fBjackd\fR with realtime priority using the "sblive" ALSA device
  686. defined in ~/.asoundrc. Apply shaped dithering to playback audio.
  687. .IP
  688. \fBjackd \-R \-d alsa \-d sblive \-\-dither=shaped\fR
  689. .PP
  690. Run \fBjackd\fR with no special privileges using the second ALSA
  691. hardware card defined in \fB/etc/modules.conf\fR. Any xruns reported
  692. by the ALSA backend will be ignored. The larger buffer helps reduce
  693. data loss. Rectangular dithering will be used for playback.
  694. .IP
  695. \fBjackd \-d alsa \-d hw:1 \-p2048 \-n3 \-\-softmode \-zr\fR
  696. .PP
  697. Run \fBjackd\fR in full\-duplex mode using the ALSA hw:0,0 device for
  698. playback and the hw:0,2 device for capture.
  699. .IP
  700. \fBjackd \-d alsa \-P hw:0,0 \-C hw:0,2\fR
  701. .PP
  702. Run \fBjackd\fR in playback\-only mode using the ALSA hw:0,0 device.
  703. .IP
  704. \fBjackd \-d alsa \-P hw:0,0\fR
  705. .SH "ENVIRONMENT"
  706. .br
  707. JACK is evolving a mechanism for automatically starting the server
  708. when needed. Any client started without a running JACK server will
  709. attempt to start one itself using the command line found in the first
  710. line of \fB$HOME/.jackdrc\fR if it exists, or \fB/etc/jackdrc\fR if it
  711. does not. If neither file exists, a built\-in default command will be
  712. used, including the \fB\-T\fR flag, which causes the server to shut
  713. down when all clients have exited.
  714. As a transition, this only happens when \fB$JACK_START_SERVER\fR is
  715. defined in the environment of the calling process. In the future this
  716. will become normal behavior. In either case, defining
  717. \fB$JACK_NO_START_SERVER\fR disables this feature.
  718. To change where JACK looks for the backend drivers, set
  719. \fB$JACK_DRIVER_DIR\fR.
  720. \fB$JACK_DEFAULT_SERVER\fR specifies the default server name. If not
  721. defined, the string "default" is used. If set in their respective
  722. environments, this affects \fBjackd\fR unless its \fB\-\-name\fR
  723. parameter is set, and all JACK clients unless they pass an explicit
  724. name to \fBjack_client_open()\fR.
  725. Defining \fB$JACK_NO_AUDIO_RESERVATION\fR will bypass audio device
  726. reservation via session bus (DBus). This can be useful if JACK
  727. was compiled with DBus support but should run on a headless system.
  728. \fB$JACK_PROMISCUOUS_SERVER\fR enables an alternate way of handling the various
  729. shared resources (Unix sockets, semaphores, ...). In this mode, the generated
  730. names will not contain the user id anymore, and the permissions of those
  731. resources will be relaxed, allowing clients from different users to talk with
  732. the same server. Moreover, on platforms that support it (all POSIX variants),
  733. if set to a valid Unix group name or id, the permissions will be restricted to
  734. that group, so only members of that group will be able to launch clients that
  735. talk to this server. Important note: it must be set with the same value for
  736. both server and clients to work as expected.
  737. .SH "SEE ALSO:"
  738. .PP
  739. <\fBhttp://www.jackaudio.org/\fR>
  740. .br
  741. The official JACK website with news, docs and a list of JACK clients.
  742. .PP
  743. <\fBhttp://www.github.com/jackaudio/\fR>
  744. .br
  745. The official JACK github code repository. Pull requests are welcome.
  746. .PP
  747. <\fBhttp://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org\fR>
  748. .br
  749. The JACK developers' mailing list. Subscribe to take part in
  750. development of JACK or JACK clients. User questions are also welcome,
  751. there is no user-specific mailing list.
  752. .PP
  753. <\fBhttp://www.jackosx.com/\fR>
  754. .br
  755. Tools specific to the Mac OS X version of JACK.
  756. .PP
  757. <\fBhttp://www.alsa\-project.org/\fR>
  758. .br
  759. The Advanced Linux Sound Architecture.
  760. .PP
  761. <\fBhttp://www.ffado.org/\fR>
  762. .br
  763. The Free Firewire Audio Drivers (FFADO) Site.
  764. .PP
  765. <\fBirc.freenode.net#jack\fR>
  766. .br
  767. Join the JACK community with your favourite IRC client.
  768. .SH "BUGS"
  769. Please report bugs as issues to the corresponding repository:
  770. .br
  771. <\fBhttp://www.github.com/jackaudio/\fR>
  772. .SH "AUTHORS"
  773. Architect and original implementer: Paul Davis
  774. .PP
  775. Original design group: Paul Davis, David Olofson, Kai Vehmanen, Benno Sennoner,
  776. Richard Guenther and other members of the Linux Audio Developers group.
  777. .PP
  778. Programming: Paul Davis, Jack O'Quin, Taybin Rutkin, Stéphane Letz, Fernando
  779. Pablo Lopez-Lezcano, Steve Harris, Jeremy Hall, Andy Wingo, Kai
  780. Vehmanen, Melanie Thielker, Jussi Laako, Tilman Linneweh, Johnny
  781. Petrantoni, Torben Hohn.
  782. .PP
  783. Manpage written by Stefan Schwandter, Jack O'Quin, Alexandre Prokoudine and Thomas Brand.
  784. .PP
  785. Create a PDF file from this manpage:
  786. .IP
  787. \fBman -t jackd | ps2pdf - > jackd.pdf\fR