Jack対Pulseaudio – どちらが速いですか?

Jack対Pulseaudio – どちらが速いですか?

JackがPulseより速く、待ち時間が短いという主張をたくさん見ました。どうやってそのようなことが起こりましたか?なぜPulseは自分自身を軽量と呼び、Jackの部下は自分自身を脂肪と呼ぶのですか?誰かがこれら2つのデーモンの内部構造を一般人に説明できますか?

ベストアンサー1

Jackは、あなた(知識豊富なユーザー)に、可能な限り低い値を決定するようにサーバーを構成するように依頼します。処理遅延あなたの機械のため。 (処理待ち時間は、サーバーがクライアントアプリケーションの内外にデータを移動した後に、システム外でオーディオサンプルの次の「チャンク」を送受信するのにかかる時間です。)Jackはこれらのオーディオデータチャンクをタイムリーに転送します。それ以外の場合は失敗し、バッファ不足(時には「損失」とも呼ばれる)が発生します。残留有機汚染物質そしてクリック数)。 Jackが不足している場合は、他の設定でサーバーを再起動するか、クライアントアプリケーションで何かを変更してオーディオの期限を調整できるように、より効率的にする必要があります。サーバー設定はすべてのクライアントに均一に適用されるため、Jackは複数のオーディオアプリケーション間でオーディオをルーティングしてオーディオを取得するのに役立ちます。予測可能結果。 (つまり、さまざまなオーディオコンポーネントに「ジャック」を接続するのと同じです。)

Pulseは、サーバーがシステム外のオーディオの送信/受信期限を守らないために発生するオーディオ損失の数を最小限に抑えるように設計されています。要求が少ないクライアントアプリケーションに対して大きなバッファを選択してこれを実行したいようです。処理遅延、そしてより早い期限で、クライアントアプリケーションのバッファにサンプルを「注入」します。サンプルをあまりに早く注入しようとし、期限を逃してアンダーランが発生した場合、Pulseはクライアントがサーバーにオーディオ更新を送信するのに必要な最小時間を自動的に増やします。 Pulse ドキュメントには明確に記載されています。極端論者低レイテンシ(例:10ミリ秒未満)処理遅延——デザイン目標ではありません。 Linux自体(およびおそらくあなたのハードウェア)がリアルタイムオーディオ予約用に設計されていないことを考えると、私はそれを信じやすいです。

Pulseは、ユーザー設定の面で「軽さ」です。 (パルスが低いと言うこともできます。遅延構成残念ながら、多くのLinuxオーディオアプリケーションはこれを無視します。 ) 基本的な複雑さの観点から、パルスはジャックに比べて「太っている」。

どちらが速いのかについての確実な答えを得るには、ループバックデバイスを購入して測定します。往復遅延自分のシステムで真実を学びましょう。 往復遅延システムがオーディオを処理し、処理されたコンテンツをシステムに再受信するのにかかる時間。 Linuxでこれを行う方法を説明するオンラインチュートリアルがあります。これにより、あなたが本当に欲しいものが何であるかがわかります。認識された遅延- トリガーイベント(ギターの行など)から最初にサウンドを聞く(ギターコードを聞くなど)までの時間です。

最後に、PulseとJackは、ほとんどのGNU / LinuxディストリビューションがALSAの上にあることを覚えておいてください。 JackとPulseについて質問したことがわかります。ただし、ALSAに直接接続できる単一のオーディオアプリケーションを使用している場合、パルスやジャックを追加してもパフォーマンスが低下する可能性はありません。認識された遅延ALSA単独よりも重要です。この意味で、プスとジャックは両方とも「太っている」。

ALSAだけで最も速く、Jackは複数のオーディオアプリケーションを一緒に接続するのに役立ちます.Pulseはおそらく最も単純な非常に短い待ち時間に興味がない場合に使用してください。この用語を使用する文書や議論は無視してください。隠れるどのタイプの遅延が意味されるかについての説明はない。 (残念ながら、Jackの公式文書とPulseに関するLennartのブログ投稿はすべてこのカテゴリに属します。)

ノート:単一のオーディオアプリケーションを使用したいが、不都合なALSAインターフェースと素晴らしいジャックインターフェースを持ついくつかの極端なケースがあるかもしれません。この場合、ジャックを使用すると遅延時間を短縮できます。しかし、アプリケーションについて話すとデザイン済み待ち時間を最小限に抑えるには、このような状況がほとんど発生しないようにしてください。しかし、ループバックデバイスを接続し、私の仮説をテストしてみてください!

おすすめ記事