w00t! Got WAV output from disk to ASIO! Well it worked on my system anyway. … Get the hot new filez here! (SampleEditor-005-bit.zip)
Notes:
Uses AudioStreamPlayer, WavAudioFormat, AudioFormatReader, FileInputStream, and ASIOAudioIODevice.
Beware it’s hacky–blocks (polls) during playback.
Make sure test.wav is in the same folder.
44.1KHz only.
Todo:
Move polling into a worker thread.
Inherit from Component, implement proper message handler.
Use AudioSubsectionReader to play clips with better control?
man, ya’ll are making learning c++ hella fun… hehe. It crashed on me, but that was resolved by using the full pathname to the test.wav file. Bumped up the Asiodevicename one, and surely it played back on my 2nd asio device too!
I think it throws an assert in a debug build, if you don’t open the file with the full path prepended. In a release build this shouldn’t happen. I think.
:idea: Need some sort of generic tape transport and time/sample counter in a window. [list]
*broadcast predefined transport messages to all who are listening for them (e.g. WavePlay et al).
*short skinny one-line toolbar button, perhaps 2x the H of the title bar
*located in the base section, perhaps floating/dockable for users who insist on clicking instead of using the keyboard.
*small enough that it doesn’t need to be resizeable.
*message handler would support external control of the transport itself, to allow automation.
*Scrub wheel.
*pre/post/loop points
*what else?
[/list]
Mr. SigmaDelta, as the project lead/architect, are you in line with this concept?