| 原作者 | ポール・デイヴィス、ステファン・レッツ | ||||
|---|---|---|---|---|---|
| 開発者 | ジャックチーム | ||||
| 初回リリース | 2002 | ||||
| 安定版リリース |
| ||||
| リポジトリ | github.com/jackaudio/jack2 | ||||
| 書かれた | C、[1] C++ | ||||
| オペレーティング·システム | BSD、Linux、macOS、Solaris、Windows、iOS | ||||
| タイプ | サウンドサーバー | ||||
| ライセンス | サーバー: GPL-2.0以降 ライブラリ: LGPL-2.1以降[2] | ||||
| Webサイト | ジャックオーディオ | ||||
JACK Audio Connection Kit (またはJACK、再帰的頭字語) は、アプリケーション間のオーディオと MIDI データの両方にリアルタイムで低遅延の接続を提供するための、プロフェッショナルサウンド サーバー APIと一対のデーモン実装です。JACK は、 Paul Davis (この仕事で 2004 年に Open Source Award を受賞)が率いるオープン ソース開発者のコミュニティによって開発され[3]、2002 年の開始以来、Linux 上のプロフェッショナル オーディオ ソフトウェアの重要なインフラストラクチャおよび事実上の標準となっています。サーバーはフリー ソフトウェアで、GPL-2.0 以降でライセンスされていますが、ライブラリはLGPL-2.1 以降でライセンスされています。[2]
実装
JACK APIはコンセンサスによって標準化されており、互換性のある実装が2つ存在します。1つはプレーンCで実装され、しばらくの間メンテナンスモードになっているjack1、もう1つは元々Stéphane Letzが主導したC++での再実装であるjack2(元々はjackdmp)で、マルチプロセッサのスケーラビリティとLinux以外のオペレーティングシステムのサポートを導入しました。[4]
JACK は、ハードウェアバックエンドとしてALSA、PortAudio、CoreAudio、FFADO、OSSで使用できます。さらに、ダミー ドライバー (サウンド出力が不要な場合、たとえばオフライン レンダリングに便利) と Audio-over-UDP ドライバーが存在します。1 つまたは両方の実装は、 Linux、macOS、Solaris、Windows、iOS、FreeBSD、OpenBSD、NetBSDで実行できます。
JACK API は、下位互換性のためにPipeWireによって実装されており、JACK クライアントの完全なドロップイン代替プロバイダーとして、JACK API 呼び出しを同等の PipeWire 呼び出しにマッピングします。[5] ALSA および PulseAudio の代替として使用した場合も、マシンに通常存在するさまざまなサウンド サーバーと API を統合し、さまざまなソフトウェア間の統合を向上させることができます。PipeWire は、JACK と比較して多くの機能を追加し、多くの制限を修正したと主張しています。[6] PipeWire を JACK のデフォルト実装として使用することは、 Fedora 34 以降ではデフォルトです。 [7]
低遅延スケジューリング

十分に低いレイテンシを達成するためのJACKのスケジューリング要件は、Linuxカーネル2.6シリーズのリアルタイム最適化の取り組みの原動力の1つでした。[ 8 ] [ 9 ]初期のレイテンシパフォーマンスは、以前の2.4シリーズと比較して期待外れでした。[10]リアルタイムチューニング作業は、メインラインカーネルの多数のスケジューリング改善と、リリース2.6.24でのより侵入的な最適化のための-rtブランチの作成、および後にCONFIG_PREEMPT_RTパッチの作成に至りました。[11]
JACK をサポートするアプリケーション
参照
- LADSPA & LV2 – プラグイン用 API
- PulseAudio – デスクトップ用サウンドサーバー
- Linux オーディオ ソフトウェアの一覧
- オーディオ用無料ソフトウェアの比較
- ASIOの無料代替品
参考文献
- ^ 「JACK」。分析概要。Ohloh 。2012年1月8日閲覧。
- ^ ab 「JACK Audio Connection Kit - ライセンス」。2021年5月3日時点のオリジナルよりアーカイブ。2021年6月8日閲覧。
- ^ 「Open Source Awards 2004: Paul Davis for JACK」. techrepublic.com.com . 2016年5月24日閲覧。
- ^ 「JACK2 の新機能 - Linux Audio Conference 2009 論文、JACK2 の主要著者 Stephane Letz 著」。linuxaudio.org。2010年2 月 17 日閲覧。[永久リンク切れ ]
- ^ 「JACK - Wiki - PipeWire/pipewire」。GitLab上のPipeWire 。 2021年2月11日閲覧。
- ^ 「FAQ - Wiki - PipeWire/pipewire」。GitLab上のPipeWire 。 2021年2月11日閲覧。
- ^ Larabel , Michael. 「Fedora 34、オーディオのニーズにPipeWireをデフォルトにしようとして承認される」。Phoronix。Phoronix Media 。 2021年2月11日閲覧。
- ^ 「Ingo Molnar による Linux 2.6 カーネル シリーズ向けの自主的プリエンプション パッチの最初の発表、2004 年」。lkml.org。2010年2 月 17 日閲覧。
- ^ 「Ftrace を使用して遅延の原因を特定する、Steven Rostedt による Real-time Workshop 2009 の論文」(PDF) 。2010 年2 月 17 日閲覧。
- ^ 「リアルタイムオーディオ対2.6、Linux Audio Conference 2006論文、Lee Revell著」(PDF) 。 2020年11月10日時点のオリジナル(PDF)からアーカイブ。 2010年2月17日閲覧。
- ^ 「Real-Time Linux Wiki」。Kernel.org (Linux カーネル アーカイブ) 。2010年6 月 8 日閲覧。
外部リンク
- 公式サイト
