Expand description
Visualization utilities for bevy_ym2149.
This crate hosts all UI components, helpers, and Bevy systems that render
oscilloscope, spectrum, and song-status information based on the data exposed
by the core audio plugin. Applications should add Ym2149VizPlugin alongside
Ym2149Plugin to enable the widgets and use the builder helpers to spawn
their preferred UI layout.
Structs§
- Channel
Badge - Decorative badge element associated with a channel.
- Channel
Freq Label - Text label displaying the current frequency for a channel.
- Channel
Note Label - Text label displaying the current note for a channel.
- Detailed
Channel Display - Component for the multi-line detailed channel display.
- Loop
Status Label - Text label showing the loop status.
- Oscilloscope
- Root component for the oscilloscope canvas.
- Oscilloscope
Channel - Layer that renders a channel waveform inside the oscilloscope.
- Oscilloscope
Grid Line - Grid line element within the oscilloscope background.
- Oscilloscope
Head - Highlight dot shown at the most recent sample position.
- Oscilloscope
Point - Individual plotted sample node within the oscilloscope.
- Oscilloscope
Uniform - Buffer storing oscilloscope samples ready to upload to GPU uniforms.
- Playback
Status Display - Component for displaying playback status text.
- Register
Waveform State - State for register-based waveform synthesis.
- Song
Info Display - Component for song metadata text.
- Song
Progress Fill - Fill node for the transport progress bar.
- Song
Progress Label - Text label displaying the transport percentage.
- Spectrum
Bar - Single spectrum bar rendered inside the channel ribbon.
- Spectrum
Uniform - Buffer storing spectrum magnitudes ready for GPU uniforms.
- Ym2149
VizPlugin - Plugin that wires the visualization resources and systems into a Bevy app.
Enums§
- Badge
Kind - Variants of channel badge.
Constants§
- OSCILLOSCOPE_
HEIGHT - Vertical size of the oscilloscope canvas in pixels.
- OSCILLOSCOPE_
RESOLUTION - Number of plotted points per channel in the oscilloscope.
Functions§
- add_
full_ stack - Convenience helper: adds core YM2149 audio plugin and the viz plugin.
- create_
channel_ visualization - Create a channel visualization panel with progress bar, note labels, and spectrum bars.
- create_
detailed_ channel_ display - Create a multi-line text display showing detailed channel state (registers, volumes, etc).
- create_
oscilloscope - Create an oscilloscope widget showing real-time waveforms for all three channels.
- create_
song_ info_ display - Create a standalone song info display showing title and artist.
- create_
status_ display - Create a combined status bar with song info on the left and playback status on the right.
- update_
detailed_ channel_ display - Update per-channel note and frequency labels from current PSG state.
- update_
oscilloscope - Update oscilloscope waveform points, heads, spectrum bars, and channel badges.
- update_
song_ info - Update song title and artist text from the current playback.
- update_
song_ progress - Update song progress bar and loop status labels.
- update_
status_ display - Update playback status text (state, frame, volume, buffer fill).