From 4fce95c86e12f91e127605d440118e1b6a64208b Mon Sep 17 00:00:00 2001 From: Astatin Date: Thu, 22 May 2025 00:07:30 +0200 Subject: Save wram,vram,io,hram with X button + move big arrays to Heap --- src/desktop/audio.rs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'src/desktop/audio.rs') diff --git a/src/desktop/audio.rs b/src/desktop/audio.rs index 60d32df..c32433b 100644 --- a/src/desktop/audio.rs +++ b/src/desktop/audio.rs @@ -1,7 +1,7 @@ use rodio::{OutputStream, Sink, Source}; -use crate::io::Audio; use crate::audio::SAMPLE_RATE; +use crate::io::Audio; use std::time::Duration; pub struct RodioAudio { @@ -11,7 +11,10 @@ pub struct RodioAudio { struct RodioWave(W); -impl Iterator for RodioWave where ::Item: rodio::Sample { +impl Iterator for RodioWave +where + ::Item: rodio::Sample, +{ type Item = W::Item; fn next(&mut self) -> Option { @@ -19,7 +22,10 @@ impl Iterator for RodioWave where Source for RodioWave where ::Item: rodio::Sample { +impl Source for RodioWave +where + ::Item: rodio::Sample, +{ fn current_frame_len(&self) -> Option { None } @@ -37,15 +43,13 @@ impl Source for RodioWave where } } - impl Audio for RodioAudio { - fn new + Send + 'static>(wave: S) -> Self { + fn new + Send + 'static>(wave: S) -> Self { let (stream, stream_handle) = OutputStream::try_default().unwrap(); let sink = Sink::try_new(&stream_handle).unwrap(); sink.append(RodioWave(wave)); - RodioAudio { _stream: stream, _sink: sink, -- cgit v1.2.3-70-g09d2