# Graph Report - graphs/audio-driver-spdif  (2026-07-29)

## Corpus Check
- cluster-only mode — file stats not available

## Summary
- 74 nodes · 141 edges · 10 communities (8 shown, 2 thin omitted)
- Extraction: 94% EXTRACTED · 6% INFERRED · 0% AMBIGUOUS · INFERRED: 9 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output

## Community Hubs (Navigation)
- Community 0
- Community 1
- Community 2
- Community 3
- Community 4
- Community 5
- Community 6
- Community 7
- Community 8
- Community 9

## God Nodes (most connected - your core abstractions)
1. `Resampler_table` - 12 edges
2. `do_convert()` - 12 edges
3. `decode_frames()` - 8 edges
4. `VResampler_reset()` - 7 edges
5. `float_32_neon()` - 6 edges
6. `reset_regulation()` - 6 edges
7. `pcm_src_init()` - 6 edges
8. `VResampler_setup_frel()` - 6 edges
9. `Resampler_table_constructor()` - 5 edges
10. `VResampler_clear()` - 5 edges

## Surprising Connections (you probably didn't know these)
- `VResampler_setup_frel()` --calls--> `Resampler_table_create()`  [INFERRED]
  spdif-over-i2s/vresampler.c → spdif-over-i2s/resampler-table.c
- `VResampler_destructor()` --calls--> `Resampler_table_destroy()`  [INFERRED]
  spdif-over-i2s/vresampler.c → spdif-over-i2s/resampler-table.c
- `pcm_src_init()` --calls--> `VResampler_constructor()`  [INFERRED]
  spdif-over-i2s/spdif_over_i2s.c → spdif-over-i2s/vresampler.c
- `pcm_src_init()` --calls--> `VResampler_setup()`  [INFERRED]
  spdif-over-i2s/spdif_over_i2s.c → spdif-over-i2s/vresampler.c
- `set_context_to_44100()` --calls--> `VResampler_reset()`  [INFERRED]
  spdif-over-i2s/spdif_over_i2s.c → spdif-over-i2s/vresampler.c

## Import Cycles
- None detected.

## Communities (10 total, 2 thin omitted)

### Community 0 - "Community 0"
Cohesion: 0.18
Nodes (14): Resampler_table, Resampler_table_constructor(), Resampler_table_create(), _ctab, Resampler_table_destroy(), Resampler_table_destructor(), _fr, _hl (+6 more)

### Community 1 - "Community 1"
Cohesion: 0.33
Nodes (13): VResampler_clear(), VResampler_constructor(), VResampler_destructor(), VResampler_inpdist(), VResampler_inpsize(), VResampler_process(), VResampler_reset(), VResampler_set_phase() (+5 more)

### Community 2 - "Community 2"
Cohesion: 0.25
Nodes (5): decode_synched_frames_6bits_441k(), decode_synched_frames_6bits_48k(), next_bits_should_be_a_sync_441k(), next_bits_should_be_a_sync_48k(), show_bits()

### Community 3 - "Community 3"
Cohesion: 0.29
Nodes (8): do_convert(), move_2ch_in_interleaved_multichannel_array(), pcm_src_convert_s16(), psf_lrint(), src_float_to_int(), src_float_to_int_2ch_in_interleaved_multichannel_array(), src_float_to_int_array(), zeroes_2ch_in_interleaved_multichannel_array()

### Community 4 - "Community 4"
Cohesion: 0.38
Nodes (7): confirm_sync(), decode_frames(), normalize_and_convert_to_float(), reset_regulation(), set_context_to_44100(), set_context_to_48000(), test_sync_pattern()

### Community 5 - "Community 5"
Cohesion: 0.40
Nodes (5): snd_pcm_channel_area_t, snd_pcm_uframes_t, input_frames(), output_frames(), pcm_src_convert()

### Community 6 - "Community 6"
Cohesion: 0.67
Nodes (4): float32x4_t, int32x4_t, clip(), float_32_neon()

### Community 7 - "Community 7"
Cohesion: 0.50
Nodes (4): snd_pcm_rate_info_t, pcm_src_adjust_pitch(), pcm_src_free(), pcm_src_init()

## Knowledge Gaps
- **6 isolated node(s):** `_next`, `_refc`, `_ctab`, `_fr`, `_hl` (+1 more)
  These have ≤1 connection - possible missing edges or undocumented components.
- **2 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.

## Suggested Questions
_Questions this graph is uniquely positioned to answer:_

- **Why does `do_convert()` connect `Community 3` to `Community 1`, `Community 2`, `Community 4`, `Community 5`?**
  _High betweenness centrality (0.083) - this node is a cross-community bridge._
- **Why does `VResampler_setup_frel()` connect `Community 1` to `Community 0`?**
  _High betweenness centrality (0.061) - this node is a cross-community bridge._
- **Are the 3 inferred relationships involving `do_convert()` (e.g. with `VResampler_inpdist()` and `VResampler_process()`) actually correct?**
  _`do_convert()` has 3 INFERRED edges - model-reasoned connections that need verification._
- **Are the 2 inferred relationships involving `VResampler_reset()` (e.g. with `set_context_to_44100()` and `set_context_to_48000()`) actually correct?**
  _`VResampler_reset()` has 2 INFERRED edges - model-reasoned connections that need verification._
- **What connects `_next`, `_refc`, `_ctab` to the rest of the system?**
  _6 weakly-connected nodes found - possible documentation gaps or missing edges._