@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ks: <https://comcomponent.com/vocab/> .

<https://comcomponent.com/blog/windows-audio-dropouts-low-cpu/#article>
    schema:about <https://comcomponent.com/knowledge/audio-underrun/>, <https://comcomponent.com/knowledge/audio-playback-buffer/> ;
    schema:mentions <https://comcomponent.com/knowledge/audio-buffering-latency/>, <https://comcomponent.com/knowledge/dpc-isr-latency/>, <https://comcomponent.com/knowledge/mmcss/>, <https://comcomponent.com/knowledge/wpr-wpa/> .

<https://comcomponent.com/knowledge/audio-underrun/> a skos:Concept ;
    skos:prefLabel "アンダーラン(underrun)"@ja ;
    skos:definition "音声処理などで締切までにバッファを埋められずデータが尽きる現象で、プチプチやドロップアウトとして聞こえる。"@ja ;
    skos:altLabel "ドロップアウト"@ja .

<https://comcomponent.com/knowledge/audio-playback-buffer/> a skos:Concept ;
    skos:prefLabel "音声再生バッファ"@ja ;
    skos:definition "これから再生する音声データを一時的に保持する領域。使い切る前の補充が必要で、先にためる量と音声の時間的な余裕が関係する。"@ja ;
    skos:altLabel "Audio playback buffer" .

<https://comcomponent.com/knowledge/audio-buffering-latency/> a skos:Concept ;
    skos:prefLabel "音声バッファによる待ち時間"@ja ;
    skos:definition "新しい音が、すでにバッファへ用意された音の後に再生されるまでの待ち時間。バッファが表す音の長さと、アプリや機器を含む総遅延は区別する。"@ja ;
    skos:altLabel "Audio buffering latency" .

<https://comcomponent.com/knowledge/dpc-isr-latency/> a skos:Concept ;
    skos:prefLabel "DPC/ISR遅延"@ja ;
    skos:definition "デバイスドライバーが割り込みを処理するISR・DPCの処理が長引き、通常のスレッドの実行が待たされること。"@ja ;
    ks:verifiedBy <https://comcomponent.com/knowledge/wpr-wpa/> .

<https://comcomponent.com/knowledge/mmcss/> a skos:Concept ;
    skos:prefLabel "MMCSS(Multimedia Class Scheduler Service)"@ja ;
    skos:definition "マルチメディア処理をするスレッドが登録すると、レジストリのタスク定義に沿って優先度を引き上げるWindowsのサービス。"@ja ;
    skos:altLabel "Multimedia Class Scheduler Service" .

<https://comcomponent.com/knowledge/wpr-wpa/> a skos:Concept ;
    skos:prefLabel "WPR/WPA(Windows Performance Recorder/Analyzer)"@ja ;
    skos:definition "ETWを土台にした、ディスクI/O・電源・起動時間などOS全体の詳細分析に強いWindows標準の性能分析ツール群。"@ja ;
    skos:altLabel "Windows Performance Recorder" ;
    skos:altLabel "Windows Performance Analyzer" ;
    skos:altLabel "wpr" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/audio-playback-buffer/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/audio-underrun/> ;
    schema:description "再生前のデータをため、残量がある間に補充することで一時的な供給遅れを吸収できる。継続的な供給不足や機器切断まで解消するものではない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows/win32/coreaudio/exclusive-mode-streams>, <https://learn.microsoft.com/en-us/windows/win32/coreaudio/rendering-a-stream> ;
    ks:verifiedAt "2026-09-11" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/audio-playback-buffer/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/audio-buffering-latency/> ;
    schema:description "同じ条件で先にためる再生データを増やすと、新しく供給した音が先行データの後で待つ時間が増える。確保容量だけでは実際の待ち時間や機器を含む総遅延は決まらない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-hardware/drivers/audio/low-latency-audio>, <https://learn.microsoft.com/en-us/windows/win32/coreaudio/rendering-a-stream> ;
    ks:verifiedAt "2026-09-11" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/dpc-isr-latency/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/audio-underrun/> ;
    schema:description "音声処理に必要な論理CPU上で通常のDPCやISRが長引く・頻発する場合、スレッドの実行と補充が遅れ、残りのデータを使い切ることがある。すべての音切れがDPCやISR起因とは限らない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-hardware/test/wpt/cpu-analysis>, <https://learn.microsoft.com/en-us/windows-hardware/test/assessments/results-for-the-streaming-media-performance-assessment> ;
    ks:verifiedAt "2026-09-11" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/mmcss/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/audio-underrun/> ;
    schema:description "時間制約のある音声スレッドをMMCSSへ登録すると優先的なCPU資源配分を得られ、供給遅れを減らせる場合がある。データ待ちやDPC・ISRを消す保証ではない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows/win32/procthread/multimedia-class-scheduler-service>, <https://learn.microsoft.com/en-us/windows/win32/coreaudio/exclusive-mode-streams> ;
    ks:verifiedAt "2026-09-11" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/dpc-isr-latency/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/wpr-wpa/> ;
    schema:description "必要なイベントをWPRで取得した記録をWPAのDPC/ISRグラフで調べ、音切れの時刻や同じCPUのスレッド実行と照合する。最大値の順位だけで原因を確定しない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-hardware/test/wpt/cpu-analysis>, <https://learn.microsoft.com/en-us/windows-hardware/test/wpt/windows-performance-recorder> ;
    ks:verifiedAt "2026-09-11" ;
    ks:certainty "established" .
