ZC.JUKEBOX - A full song 1-bit audio player [message #373619] |
Sat, 15 September 2018 22:19 |
|
Originally posted by: frank_o_rama
ZERO CROSSING JUKEBOX is an iTunes rip-off for the Apple II series. Full-length songs are played back using the new NEO.PLAY 1-bit zero-crossing audio playback routine. Building on an audio engine by Peter Ferrie, I added some additional visualization code and full-length audio files. The disk image will work down to an Apple ][+.
All songs were processed from MP3s, exported using Audacity, and packed to 1-bit audio using my previously posted BASIC conversion program. The NEO.PLAY engine runs at 7,186.51 Hz, so samples recorded using the COMPUTE! Magazine engine (7,482.65 Hz) will work, but sound slightly (4%) slow.
Enjoy!
http://frankjames.net/downloads/ZCJukebox_9_15_18.2mg.zip
f
|
|
|
Re: ZC.JUKEBOX - A full song 1-bit audio player [message #373623 is a reply to message #373619] |
Sat, 15 September 2018 23:49 |
|
Originally posted by: frank_o_rama
ESC to exit during playback. Any other key jumps to loading the next chunk of data from disk (fast forward?).
NEO.PLAY sets location $3A0/928 to keypress value if key pressed, or zero on clean exit (done playing all pages).
This will require a CFFA/CFFA3000/MicroDrive, though it would be possible to fit roughly 2 and a half minutes of audio on a 140k floppy.
f
|
|
|
|
|
Re: ZC.JUKEBOX - A full song 1-bit audio player [message #373721 is a reply to message #373701] |
Tue, 18 September 2018 02:42 |
|
Originally posted by: Tom Porter
I've already done the 1bit audio thing... however its great you are able to do entire songs on a floppy though. My idea was to convert songs that has loop type sections, and then 'string' those sections together to simulate longer songs. 1bit is more relegated (better suited) to sound effects, due to ram constraints. I may still do one more 'full' SFX 1bit game in the future though... too many projects, not enough time. *I did attempt to try several 'on system conversion methods, but never gotten any of them to work, so i'm still back in the 1980's on the cassette port, but it works 'Ok!'
|
|
|
Re: ZC.JUKEBOX - A full song 1-bit audio player [message #373792 is a reply to message #373721] |
Thu, 20 September 2018 10:42 |
|
Originally posted by: frank_o_rama
Hey Tom,
I've seen a demo on the Atari 800 which does exactly what you're describing..
One thing you might try is picking audio which has beats per minute that matches the "beat" of the audio player you're using. Since the COMPUTE! player with delay set to 4 (like you're using on "KART") runs at 7,482.65 Hz, that corresponds to either 220 or 110 bpm. That way your beats sync with the playback calls.
1 page of audio = 256 bytes * 8 bits per byte = 2048 samples
7,482.65 Hz / 2048 samples = 3.65 pages per second = 0.273699 seconds per page
60 sec per min / 0.273699 seconds per page = 219.2189 pages per minute / 2 = 109.6094 'double pages' per minute.
You could use Audacity to trim the samples to exactly how long you need them, and string them together into a single file. It can also change the pitch to fit in a certain space if the bpm is different. I can give you better instructions if you want.
One downside of the COMPUTE! player, though, is that it doesn't poll for keypresses (not really a problem if you only play short sample chunks from BASIC).
f
|
|
|
|