Commit Graph

23 Commits

Author SHA1 Message Date
rolandnsharp
cdd3523550 Remove graticule entirely
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 21:16:35 +10:00
rolandnsharp
86a236f77d Remove grid toggle — graticule always on
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 21:14:51 +10:00
rolandnsharp
b29170faf1 Higher resolution demo GIF (1040x780)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:52:03 +10:00
rolandnsharp
185c09776a Update demo GIF with green palette and zoom controls
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:50:37 +10:00
rolandnsharp
93c8be6e48 Beam sweep stops at center where the trace begins
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:47:08 +10:00
rolandnsharp
1c4ef163d7 Increase default gain and time zoom
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:45:23 +10:00
rolandnsharp
5dc759e46a Match CRT effects to phosphor green palette — remove all cyan
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:44:13 +10:00
rolandnsharp
a4f39f8494 Remove freeze functionality
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:25:19 +10:00
rolandnsharp
eca991b685 Remove LIVE/NO SIGNAL label from HUD
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:24:09 +10:00
rolandnsharp
c9a4e6eeae Thinner traces — horizontal-only bloom, no vertical bleed
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:21:09 +10:00
rolandnsharp
9d65aa1f94 Remove C helper, use pure Nim dynlib imports; better defaults
- Replaced avhelper.c with direct {.dynlib.} pragma imports
- Grid off by default
- Higher default gain and time zoom

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:08:12 +10:00
rolandnsharp
2c04d7f034 Remove crosshair-only grid mode, keep grid on/off toggle
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 20:01:22 +10:00
rolandnsharp
1f320b7ff1 Handle terminal resize dynamically
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 19:59:01 +10:00
rolandnsharp
bec41a437e Remove diagnostic files from repo 2026-04-05 19:56:14 +10:00
rolandnsharp
666af905f3 Fix AVPacket struct layout — was missing pts/dts fields
The packet layout is buf(8), pts(8), dts(8), data(8), size(4),
stream_index(4). We had buf, data, size, stream_index — reading
the pts timestamp as the data pointer, so every packet was garbage.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 19:56:02 +10:00
rolandnsharp
9599855766 Clean up stale comments and README
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 19:41:39 +10:00
rolandnsharp
43a7997944 Remove demo signal generator
Audio capture only — shows NO SIGNAL when libav can't connect.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 19:39:44 +10:00
rolandnsharp
fb3a0cb77b Remove ffmpeg subprocess fallback
Only two paths now: libav via dlopen, or demo signal.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 19:36:58 +10:00
rolandnsharp
3fc7ed1c4e Use direct libav bindings via dlopen instead of ffmpeg subprocess
Loads libavformat + libavdevice at runtime — no dev packages, no
subprocess, no pipe buffering. Falls back gracefully to ffmpeg
subprocess then demo mode if .so files aren't present.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 19:33:52 +10:00
rolandnsharp
3c9a9c7c89 Add MIT license 2026-04-05 14:10:18 +10:00
rolandnsharp
94d5b2cf63 Rename crt → osc throughout
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 13:43:15 +10:00
rolandnsharp
7ceac6c91f Add README with demo GIF
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 12:47:30 +10:00
rolandnsharp
448b303eba Terminal oscilloscope with CRT phosphor physics
- CRT boot/shutdown animations (ported from AetherTune)
- Y-T (time-domain) and X-Y (Lissajous) display modes
- Phosphor persistence with bloom and decay
- Half-block rendering for 2x vertical resolution
- Live audio capture via ffmpeg/PulseAudio monitor
- Gain and time/div controls, grid toggle, freeze

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 12:43:48 +10:00