2026/2/5更新
本記事は Diretta 公式ヘルプ(Host Setting / Alsa Host)を基準に、既定値を中心に各項目を正確に整理したものです
・syncalsa_setting.inf の意味を整理したい人
・Windows ASIO との違いを把握したい人
空欄では OS が主要 NIC を自動選択し、複数指定も可能
既定値では OS が最適と判断した NIC を自動使用
音質への影響:小
0 は SelfProfile、0 以外は負荷保護が有効になる
既定値では軽い負荷保護が働き安定性を優先
音質への影響:小
Critical(1)は高優先度で実行され、環境により OS に影響する
既定値では Critical のみ有効で軽量かつ優先度高め
音質への影響:中
更新頻度が高いほど負荷が増え、100,000µs は標準値
既定値では 0.1 秒ごとに情報更新する安定動作
音質への影響:小
enable は環境に応じて周期を調整する ALSA Host の標準動作
既定値では周期が自動調整され安定性を優先
音質への影響:中
FlexCycle=enable では「上限」ではなく「基準値」として扱われる
既定値では 100ms を基準に周期が緩やかに変動
音質への影響:中
random モードでのみ使用され、通常動作では不要
既定値では最小周期を設定せず通常動作のみ使用
音質への影響:小
stdout は標準出力と logcatch の両方へログを出力
既定値ではログが標準出力に表示されデバッグ向け
音質への影響:小
periodSizeMin / Max は要求値であり、最終決定は ALSA デバイス側
既定値では広い範囲で互換性と安定性を確保
音質への影響:中
Host 側では主に安定性に関わり、音質への影響は小さい
既定値では 8 段のバッファで安定性を最優先
音質への影響:小
enable は欠損部分を無音で扱い安全に復帰
既定値ではアンダーラン時に無音処理で安全に復帰
音質への影響:小
根本原因はプレーヤー側にあるため補助的な機能
既定値では検出機能を使わず通常動作を維持
音質への影響:小
ThreadMode に OccupiedCPU(16)が含まれる場合のみ有効
既定値では CPU 固定を行わず OS に任せた通常動作
音質への影響:中
0 は Target の標準値を使用し、Host 側では影響が小さい
既定値では追加遅延なしで Target 標準バッファを使用
音質への影響:中
この既定値をスタート地点に、ThreadMode・CycleTime・LatencyBuffer・CPU固定などを調整することで音質を追い込む余地が生まれます
🎧 Diretta(ALSA版)syncalsa_setting.inf ガイド
Linux(ALSA)で Diretta を使用する際、音質や再生の安定性に大きく影響するのが syncalsa_setting.inf の内容です本記事は Diretta 公式ヘルプ(Host Setting / Alsa Host)を基準に、既定値を中心に各項目を正確に整理したものです
この記事の対象
・Linux ホスト(ALSA)で Diretta を使っている人・syncalsa_setting.inf の意味を整理したい人
・Windows ASIO との違いを把握したい人
既定値の全体像
ALSA 版 Diretta の既定値(初期状態)[global]
Interface=
TargetProfileLimitTime=200
ThredMode=1
InfoCycle=100000
FlexCycle=enable
CycleTime=100000
CycleMinTime=
Debug=stdout
periodMax=32
periodMin=8
periodSizeMax=38400
periodSizeMin=960
syncBufferCount=8
alsaUnderrun=enable
unInitMemDet=disable
CpuSend=
CpuOther=
LatencyBuffer=0
以下、公式仕様に基づき、各項目を統一フォーマットで解説します各項目の詳細解説(既定値)
Interface=
Diretta が使用するネットワークインターフェースを指定する項目空欄では OS が主要 NIC を自動選択し、複数指定も可能
既定値では OS が最適と判断した NIC を自動使用
音質への影響:小
TargetProfileLimitTime=200
ターゲット負荷に応じたプロファイル切替の猶予時間を決める項目0 は SelfProfile、0 以外は負荷保護が有効になる
既定値では軽い負荷保護が働き安定性を優先
音質への影響:小
ThredMode=1
Diretta のスレッド優先度や動作方式を決めるビット設定項目Critical(1)は高優先度で実行され、環境により OS に影響する
| 値 | 意味 |
|---|---|
| 1 | Critical(高優先度) |
| 2 | NoShortSleep(短いスリープ禁止) |
| 16 | OccupiedCPU(CPU占有) |
音質への影響:中
InfoCycle=100000
Diretta が送信する情報パケットの更新周期を決める項目更新頻度が高いほど負荷が増え、100,000µs は標準値
既定値では 0.1 秒ごとに情報更新する安定動作
音質への影響:小
FlexCycle=enable
送信周期(CycleTime)の扱い方を選択する動作モード項目enable は環境に応じて周期を調整する ALSA Host の標準動作
| 値 | 意味 |
|---|---|
| disable | 完全固定 |
| enable | 自動調整 |
| random | ランダム化 |
| max | 密度重視 |
| fixAsio | ASIO互換周期 |
音質への影響:中
CycleTime=100000
送信周期の基準となる時間(µs)を指定する項目FlexCycle=enable では「上限」ではなく「基準値」として扱われる
既定値では 100ms を基準に周期が緩やかに変動
音質への影響:中
CycleMinTime=
送信周期の最小値(µs)を指定する項目random モードでのみ使用され、通常動作では不要
既定値では最小周期を設定せず通常動作のみ使用
音質への影響:小
Debug=stdout
デバッグログの出力先を指定する項目stdout は標準出力と logcatch の両方へログを出力
| 値 | 意味 |
|---|---|
| disable | ログなし |
| enable | logcatchへ出力 |
| stdout | 標準出力+logcatch |
音質への影響:小
ALSA バッファ設定
ALSA の period 数と period サイズを制御する項目periodSizeMin / Max は要求値であり、最終決定は ALSA デバイス側
| 項目 | 意味 |
|---|---|
| periodMin | 最小 period 数 |
| periodMax | 最大 period 数 |
| periodSizeMin | 最小 period サイズ |
| periodSizeMax | 最大 period サイズ |
音質への影響:中
syncBufferCount=8
ALSA Bridge とネットワーク送信間の同期バッファ段数を決める項目Host 側では主に安定性に関わり、音質への影響は小さい
既定値では 8 段のバッファで安定性を最優先
音質への影響:小
alsaUnderrun=enable
ALSA バッファ枯渇時の処理方法を指定する項目enable は欠損部分を無音で扱い安全に復帰
| 値 | 意味 |
|---|---|
| enable | 無音で処理し安全に復帰 |
| disable | そのまま再生しノイズの可能性 |
音質への影響:小
unInitMemDet=disable
未初期化メモリによるノイズ発生を検出する補助機能根本原因はプレーヤー側にあるため補助的な機能
| 値 | 意味 |
|---|---|
| enable | 未初期化メモリ検出 |
| disable | 検出機能を使わない |
音質への影響:小
CpuSend= / CpuOther=
Diretta の各スレッドを特定 CPU コアへ割り当てる項目ThreadMode に OccupiedCPU(16)が含まれる場合のみ有効
既定値では CPU 固定を行わず OS に任せた通常動作
音質への影響:中
LatencyBuffer=0
Diretta Target 内部の追加バッファ時間(µs)を指定する項目0 は Target の標準値を使用し、Host 側では影響が小さい
既定値では追加遅延なしで Target 標準バッファを使用
音質への影響:中
まとめ
ALSA版 syncalsa_setting.inf の既定値は「安定性と互換性の基準プロファイル」
- FlexCycle=enable による安定した周期調整
- 情報パケット更新は0.1秒周期
- CPU占有なし(軽量)
- ALSAバッファは広めで破綻しにくい
- LatencyBufferは標準値
- アンダーラン対策は有効
この既定値をスタート地点に、ThreadMode・CycleTime・LatencyBuffer・CPU固定などを調整することで音質を追い込む余地が生まれます
コメント
コメント一覧 (12)
ありがとうございます!
さっそく実践して記事にしてみました
わたしのターゲットPCはOLIOSPECのLIVAミニPCですがオンボードLANで4088の設定は表示されていましたので選択したところ4088になっているようには見受けられます
こんにちは。初めまして、「Hit&Run」と申します。
私もDirettaのファンでして、23年から無料のお試し版で気に入り「USBメモリ起動型Diretta Target」を導入しずっと楽しく聴いております。最近はDDSへの移行でさらに音質が上がってきてうれしく思っています。Windows版はジャンボフレームが扱えるようになり、一気に安定したゆとりのある音に満足しています。その間、貴ブログがおまとめになった記事が大変役に立ちました。大変ありがとうございます。
そして、konalinux8がDirettaに対応したことも貴ブログで知り、先週からインストールし、音出し、調整しております。
音出しまでは順調に進みましたが、現在次のような状況で困っております。
*音が出はじめ10~20秒鳴った後、無音が20秒ほど続き、その後同じことを繰り返します。
Direttaの通信が切断され、再度接続されているように思います。ジャンボフレームが機能していないのではないかと推察しています。
Windows版ではMTUが10000超でも動いていたのですが・・・
ここで困っていますのが、DirettaのDebugのログデータがどこに格納されどのように見れば良いのか分からないことです。
本件についてご教示いただけないでしょうか?よろしくお願いいたします。
(追伸:Direttaを介さない状態でも、Konalinux8はかなり良い音ですね。何種類もある高音質カーネルを切替て楽しんでいます。)
はじめまして
Linuxでのログは見たことが無いので格納場所などはわたしも知りません
Windows PCとKonaLinuxが同時に起動できる環境であれば、WindowsのASIO>CONFIG>dmesgでLINUXがTARGETにアクセスしている様子はリアルタイムで確認ができます
一例ですが、Kona Linuxで再生中の状態をWindow PCから見た内容です
local0 Informational 01/17 16:47:15 Host Debug : fe80::9345:ffbd:68c2:ba42,44080
local0 Notice 01/17 16:47:15 changeFormat norm
local0 Notice 01/17 16:47:15 set PCM 32
local0 Notice 01/17 16:47:15 set CH 2 - 2
local0 Notice 01/17 16:47:15 set HZ 44100
local0 Notice 01/17 16:47:15 set LATENCY 20msec
local0 Notice 01/17 16:47:15 setFormat done 882
local0 Notice 01/17 16:47:15 do start
local0 Notice 01/17 16:47:15 PCM bit shift 16 to 32
local0 Notice 01/17 16:47:15 MS mode start mode3
local0 Notice 01/17 16:47:15 ts connect
local0 Informational 01/17 16:47:15 State Change : Stop
local0 Notice 01/17 16:47:15 Connect
local0 Informational 01/17 16:47:17 State Change : Play
音飛びするときは以下のようなログが頻発します
local0 Notice 01/16 20:43:10 empty sink buffer
local0 Error 01/16 20:43:10 snd_pcm_writei EPIPE recover
わたしの環境では、10秒単位の無音→復帰はなったことがありません
承知しました。konalinuxのログデータはkonacofeeさんに直接聞いてみようと思います。
そして、まいまいさんはLinuxのDebug情報をWindows PCから覗かれているとのこと、最初はえっそんなことができるの?どんな方法だろうかと考えてみました。
まいまいさんのシステム構成は1/11の記事のように、Diretta専用のHUBを設けておられますので、1台のPCが音出しししている時、残り2台からDirettaラインの情報のモニタができるということですね。これで合っているでしょうか?
私はシステム構成を完全スタンドアロンにしています。
2個のNICを持つミニPCを音源として(ほとんどYouTube Music)、そこから直接LanケーブルでTargetにつないでいます。この構成にしてから特性が非常に良くなりました。(まいまいさんの記事のLANポート分離で激変!と同じことですね。)DDS方式に変わる前は、Sync設定が余裕でできていました。
私の場合もDiretta専用のHUBを追加すれば、Linux PCとWindows PC両方が便利に使えますね。
実は、今WindowsのPCも持っています。両方とも音楽専用にしています。
まいまいさんのお話を伺い、今後の選択肢が増えたように思います。ありがとうございました。
WindowsのASIOドライバにはGUIがあるのでラインを見るというよりは、そこからTarget PCの動作状況ログを見ると行ったほうが正しいです。
Linux Alsaから再生指示をだしたときもTargetが処理していますので、そのときのTargetの状況をASIOドライバのGUIから見るといった感じです
これはデバッグログではなくて動作状況のログになります。
デバッグログは、ASIOからだとすぐに見れますが、わたしには意味不明でした
konaさんは開発者だけあり知識が豊富なのでわたしも困ったときには伺っています
お役に立てずですが、お互いにDirettaライフを満喫しましょう
ラインを見るのではなく、ターゲットの状況を見るが正しいですね。
私が期待していますのはWindowsと同じ内容ですので、動作状況ログになります。
デバッグログよりこちらを優先して進めようと思います。
この度はありがとうございました。
最近急にDirettaが動き出した感じですね。これからもまいまいさんの記事を楽しみにしています。引き続きよろしくお願い致します。
ちなみにTARGETのファームは最新にされていますか?
思い出したのですが、途中のファームウェアではLINUXからの再生が安定しない時期がありました
こちらの11月中旬あたりの内容です
https://maimai-audio.blog.jp/archives/39666763.html
はい。現在のVerは3_148_3で最新版だと思います。1/14に変更しました。
今のところ、Windows版のPCとLinux版を入れ替えながら使っていますが、Windows版を使う時は毎回updateを確認しています。調整途上ですがLinux 版を使う事が多くなり、updateに気を付けないといけませんね。そして私もdiretta 専用のhub を入れた方が良いようです。
TargetのVerは6_147_22です。本日現在の最新だと思いす。
私のWindows版は最新の組み合わせで問題なく動作しています。
ジャンボフレームは16128Byteに設定しています。
私は、1パケットで送れる容量が最大になるように狙ってSettingしていますが、ジャンボフレームが上記の場合、10584Byte×1ppcで送れています。
私は、この値が大きくできると音にゆとりを感じて癒されるように思っています。
ちなみにHOST用PCはGMKtec M6Ultra Ryzen5 7640HS
Target用PCはBMAX B4Ultra Intel N150 です。
MPUが新しい世代のチップですとジャンボフレームが大きくなっていると理解しています。両方とも昨年のブラックフライデーに購入したものです。
現在調整中のLinux(Ryzen7 Pro 6850U)は1昨年のブラックフライデーに購入したもので、それはジャンボフレームが9000までしか設定できません。
以上ご参考まで。
おお!いい時期に買いましたね
どちらもわたしのより2,3クラスくらい上で羨ましいですw
わたしはLinuxは4096、TARGETは9000、WINは9000で使ってます
Target用はあまりに古くなり、15年ほど前のi7より性能が2/3だと分かり、N150にすれば1.5倍の性能になると予想しました。
HOST用は1年前より高性能版を狙いました。メモリが値上がりしていましたし、中華製と言えどいつまでも安くないだろうし、ひょっとするともう買えなくなるかも知れないと思って奮発しました。Windwsと言うかMicroSoftも怪しくなってきましたので、Linux化も急がないといけないと思っています。
今夜、改めてWindws版の設定を眺めて見ますと、現在のLinux版の設定はどうも甘すぎるようです。明日見直そうと思っています。