I've written an AI component that identifies spoken languages and I want to put a demo of it on my website. So first I want a form that captures audio from the microphone. That audio will then be fed to the AI component, which will produce its maximum likelihood estimate of the language being spoken, its confidence, and a chart showing how the estimate evolved over the course of the sound clip. The user will then be given a form showing these results and giving them the opportunity to annotate them with such things as what language they were really speaking (I expect a lot of people to put in languages that the system hasn't been trained on just to see what happens) and then save the results to a gallery, from where they can share them.
At the moment, I think I need to create a content type for the upload form, one for the annotation form, and one for the final results.
Thanks for sharing your AddOn. It looks like I might be able to get some useful ideas from looking at the code.