ZZT Ultra

Discuss how totally awesome Bang! is here.

Moderator: Terryn

User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

Update

Post by Appetite4 »

After the successful beta (with sound!) of the HTML 5 version, I decided to focus on a few other areas. One area is the parts where the latest version is rough around the edges, such as the lack of ZIP file access and high score posting anomalies. I think I can create a limited JS handler for DEFLATE processing based on the "pako" library.

I also finally got started on a project I've wanted to do for some time, but delayed because I wasn't 100% sure how well it will work (I still don't). It's called ZZT Sound Plus. You should be able to feed waveform audio into the tool, and it will listen and pick out notes in the form of #PLAY statement strings.

If this seems kind of far-fetched, I agree. It is. But it is possible, because autotune is possible. To build it, I have to dive right into the highest of math to create and isolate peaks in a frequency distribution created from a Fourier transform. I probably lost everybody with that statement, so I'll just say this: it's complicated.
User avatar
Smilymzx
I hope she made lotsa spaghetti!
Posts: 182
Joined: Sat May 20, 2006 2:58 am
Location: LocacoLocacoL :LoL!

Re: ZZT Ultra

Post by Smilymzx »

This sounds like a great idea for ZZT Ultra's programming progression, Can('t) wait to see what's in store in the future!!!

Happy 2018, ZZT forums!!!
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

ZZT Sound Plus starting to work!

Post by Appetite4 »

That extremely far-fetched idea I had, which was the tool ZZT Sound Plus, has started to bear fruit. I just recorded a 2-minute song, fed the waveform audio into the tool, and then copied the note sequence it had spat out back into the Hall of Music.

The results were...like nails on a chalkboard, but you could actually recognize the song. I knew all along I'd need to do several things to clean up the audio output, because the tool, for all its capabilities, is kind of dumb. It doesn't know the song tempo, it doesn't know how to account for percussion, and it takes every frequency cycle it "hears" in the waveform extremely literally, erring on the side of more noise than you'd normally want.

Seriously, folks. This is a game changer. People had told me it's remarkable that I've been able to cover songs entirely by ear (no tabs, no sheet music), but with ZZT Sound Plus, a cover artist won't even need to have that ability!
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

ZZT Sound Plus shenanigans

Post by Appetite4 »

Brief update. The results from the note-capturing tool so far are spotty, allowing you to understand the remnants of the song when played back through the Hall of Music. But there is a ton of noise that interferes with the output.

My goal is to find a way to quiet down, separate, or otherwise mitigate the noise in the Fast Fourier Transform output. Something something energy spectral density something integration something time averaging. That last sentence was completely intelligible, but you probably wouldn't have known, considering how cerebral this challenge is.

Kind of makes you wonder how our own ears do it, right? Work continues...
User avatar
Commodore
fgsdfs
Posts: 2471
Joined: Wed Mar 12, 2003 5:44 pm
Location: :noitacoL
Contact:

Re: ZZT Ultra

Post by Commodore »

I've always wanted a program to hum to and make music. FFTs are serious business, this is above and beyond zzt needs but neat all the same.
*POW* *CLANK* *PING*
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

Window functions

Post by Appetite4 »

I'm trying to pick an ideal window function in ZZT Sound Plus. Vacillating between Hann and Hamming. No matter what the choice, though, artifacts keep popping up in the output.

But the output is sounding a lot better than it did at the start. Also, the problem of mysterious drops of prominent frequencies that had plagued the project from the start are now dealt with.

The tool is now in a good position to conduct note captures from recorded audio...but finding the ideal way to consolidate the notes has been tough. Consolidation is important, or else the whole capture sounds like a zillion 32nd notes played sequentially in a hot arpeggio mess. There are many ways to isolate captures to different voices, and so far none of my algorithms has been perfect.

I'm sorry...am I losing anyone? You can take a full year of calculus and still never hear about FFTs. It's the type of puzzle that drives a man to madness.
User avatar
Smilymzx
I hope she made lotsa spaghetti!
Posts: 182
Joined: Sat May 20, 2006 2:58 am
Location: LocacoLocacoL :LoL!

Re: ZZT Ultra

Post by Smilymzx »

I'm still here, But I am still trying to get my account fixed and serviced on another site (Email needs swapping)... So I'm a little bit busy...
User avatar
Commodore
fgsdfs
Posts: 2471
Joined: Wed Mar 12, 2003 5:44 pm
Location: :noitacoL
Contact:

Re: ZZT Ultra

Post by Commodore »

I don't know how relevant it is to what you're doing but this book seems like an essential for programmers doing FFTs: https://www.jjj.de/fxt/#fxtbook
*POW* *CLANK* *PING*
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

ZZT Sound Plus exhibition

Post by Appetite4 »

Finally! Here's a video I've made that shows how ZZT Sound Plus works.

https://www.youtube.com/watch?v=ld42KbwDjPY

There will be much more to the interface later. But the proof of concept has been nailed to the wall!
User avatar
Smilymzx
I hope she made lotsa spaghetti!
Posts: 182
Joined: Sat May 20, 2006 2:58 am
Location: LocacoLocacoL :LoL!

Re: ZZT Ultra

Post by Smilymzx »

Shockwave Flash is appearently on the fritz again... Even though HTML5 support is being worked on...

This time, Keystrokes for CTRL/SHIFT/ALT cannot be pressed along with the other (Letter, Numerical, etc.) keys because they create bad/invalid symbols every time...

And yes, I've tried reinstalling ZZT Ultra and Adobe Flash Runtime to get things running with no success...

I am using the latest Firefox browser as well...
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

Long-overdue status update

Post by Appetite4 »

Hmm...I figured the day was going to come where it becomes increasingly harder to require Flash in a browser. You can install it or activate it on any browser you want, but it's no longer as automatic as it used to be. Very much a manual thing, anymore.

I guess this means HTML 5 is more or less the future of this project now. ZZT Sound Plus is still under development, but I really should get off my rear end and release a more official, non-beta version of the HTML 5 build. It still lacks features like ZIP file support, but this was never a mandatory feature, in all honesty.

I should also build an HTML 5 version of the Hall of Music. Thankfully, this isn't going to be hard, now that I know how to program the exact same sound in HTML 5 as in Flash.

About ZZT Sound Plus: this tool is going to be dynamite. Here's an example of an output fragment for the System Shock Cyberspace theme. Figured it was fitting, hacking a song for a game all about a hacker.
Attachments
System Shock Cyberspace Theme
System Shock Cyberspace Theme
zzt_sp_auto_con_result.png (5.87 KiB) Viewed 11441 times
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: ZZT Ultra

Post by Saxxon »

That is *really heckin' cool*.
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

ZZT Sound Plus nearly finished!

Post by Appetite4 »

The ZZT Sound Plus tool is nearing completion. The one challenge I have left is the highly subjective art of figuring out the ideal way to chain together adjacent 8th, 16th, 32nd, and 64th notes in a measure in generated sheet music.

It's become clear that this invention will have implications that go well beyond the scope of anything ZZT-related. Already I'm thinking of creating sheet music songbooks that can't be obtained any other way.

The original motivation, though, still stands. You would be able to create a "ZZT" version of any recorded song on the cheap.

Just a bit longer, folks!
User avatar
Smilymzx
I hope she made lotsa spaghetti!
Posts: 182
Joined: Sat May 20, 2006 2:58 am
Location: LocacoLocacoL :LoL!

Re: ZZT Ultra

Post by Smilymzx »

Sounds like good news indeed, Best of luck to you!
User avatar
Appetite4
Official Clamp School Defender
Posts: 204
Joined: Tue Nov 18, 2014 4:57 am
Contact:

ZZT Sound Plus version 1.0 released!

Post by Appetite4 »

The wait is finally over. Now you can peel back the oppressive .WAV file layer on any song ever recorded, and find out what truly makes it tick!

Check out the update page here:

http://chriskallen.com/zzt/index.html

Download the application directly here:

http://chriskallen.com/zzt/ZZTSoundPlus.zip

You probably want to read the documentation before getting started. Dumping the application on this crowd is tantamount to shoving a fire hose down your throats and expecting you to drink heartily.

Eventually, I'll be posting some more video tutorials on the web for how you can use this tool. I will be honest; I'm not completely sure just how people will use it.

One thing I know for certain: A major storm is almost certainly coming to the Hall of Music. It's absurdly easy to dump a song into #PLAY string format...so I imagine, that's exactly what everyone is going to do. I will need to move this web application off Flash and fully into the HTML 5 realm, and I will also need to rework the storage algorithm so that not every song is stored in a single file.

The reason for all of this? The library is going to grow. Like kudzu. And it won't be limited to whatever cheap covers people create on their own, either. I've been able to create a 15-voice #PLAY string version of The Who's "Won't Get Fooled Again." All nine minutes of it! And it only took seconds to create the auto-consolidated cut. Seconds.

You might have surmised I'm kind of enthusiastic about this release. And this is only version 1.0...
Attachments
ZZT Sound Plus has arrived!
ZZT Sound Plus has arrived!
zzt_sp_auto_con_result.png (5.87 KiB) Viewed 11108 times
Post Reply