Crate ym2149_ym_replayer

Crate ym2149_ym_replayer 

Source
Expand description

YM File Format Parser and Music Replayer

This crate provides YM music file parsing and playback for YM2149 PSG chips. It supports YM2/3/5/6 file formats, tracker modes, and various effects.

§Features

  • YM2/3/5/6 file format parsing with LHA decompression
  • Generic over YM2149 backend (hardware-accurate or experimental)
  • Tracker mode support (YMT1/YMT2)
  • Mad Max digi-drums
  • YM6 effects (SID voice, Sync Buzzer)
  • Optional streaming audio output
  • Optional WAV/MP3 export

§Example

use ym2149_ym_replayer::{load_song, PlaybackController};

let data = std::fs::read("song.ym")?;
let (mut player, summary) = load_song(&data)?;
player.play()?;

let samples = player.generate_samples(44100);

Re-exports§

pub use compression::decompress_if_needed;
pub use loader::load_bytes;
pub use loader::load_file;
pub use parser::EffectCommand;
pub use parser::RawParser;
pub use parser::Ym6EffectDecoder;
pub use parser::Ym6Parser;
pub use parser::YmMetadata;
pub use parser::YmParser;
pub use parser::decode_effects_ym5;
pub use player::CycleCounter;
pub use player::EffectsManager;
pub use player::LoadSummary;
pub use player::PlaybackController;
pub use player::Player;
pub use player::TimingConfig;
pub use player::VblSync;
pub use player::Ym6Info;
pub use player::Ym6Metadata;
pub use player::Ym6Player;
pub use player::YmFileFormat;
pub use player::YmPlayer;
pub use player::YmPlayerGeneric;
pub use player::load_song;
pub use player::load_song_with_rate;

Modules§

compression
Compression support for YM file formats
loader
YM File Loader Domain
parser
File Format Support
player
YM Music Playback Engine Domain

Enums§

PlaybackState
Playback state for chiptune players.
ReplayerError
Error type for YM file replayer operations

Traits§

ChiptunePlayer
Unified player interface for chiptune formats.
PlaybackMetadata
Unified metadata trait for chiptune playback.

Type Aliases§

Result
Result type for replayer operations