Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Sequencers, Synthesizers, and Software, Oh My! Building Great Music Creation Apps for Windows Store

Download

Right click “Save as…”

Slides (view online)
+ My Schedule- My Schedule

People love expressing themselves by creating music on their mobile devices. This talk will briefly discuss why creative apps are important and how you can build the best music creation apps on Windows. We will show several of the top music creation apps today using new Windows features, how you can use these new features, and what Microsoft is doing in the future to make the experience even better.

For more information, check out these courses on Microsoft Virtual Academy:

Follow the Discussion

  • Awesome cool Session ... Where are the Demos Codes ? :)

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    Thanks!

    Code for MIDI will be up soon. Jason will also post the link for his sample which is already on GitHub.

    The preview MIDI API itself is now live on NuGet. It requires Windows 8.1 Update 1.

    https://www.nuget.org/packages/Microsoft.WindowsPreview.MidiRT/1.0.0

    API Documentation

    http://msdn.microsoft.com/en-us/library/windows/apps/dn643522.aspx

     

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    dup

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    Devices used in this demo:

    • Elektron Analog Four
    • Novation LaunchKeys Mini
    • A couple PCs.

    Pete

  • Great session.  If there were evaluation links somewhere, I would evaluate...

  • Thanks again for everybody that was there in person and for folks watching it online now :). As I mentioned in the talk, my demo code (the Beat Builder) is up on GitHub here: https://github.com/jolson88/BeatBuilder. It's published under the MIT license, so do anything with it that you want. Go nuts :).

  • MattMatt

    Jason, Is the output port device selector supposed to list software devices like MS GW Wave Synth? It does not appear to list them, and I was wondering how I could use a software device for testing purposes.

    Great session by the way, thanks for posting the code.

  • THANK YOU FOR LISTENING!!!

    You guys are now officially back on the path of awesomeness.

  • @Matt: No, the preview API does not list MS GW Wave Synth as an output device.  We'd love to hear feedback if this is something you'd like to see (sounds like you do :)).

  • @KateWerner:I think access to software devices is needed for two reasons:

    1) If you open up the default software devices then devs can market the app to everyone, not just people willing to buy a 200$+ synth device.

    2) The only reason to have this functionality on a tablet is to use it "on the go".  I don't think users should have to carry a synth device around just to tap out a couple of beats while waiting in line or sitting on the bus.  

    Is there a feedback site/forum yet?  I couldn't find one.

     

  • @delinx32: Thanks for the feedback!

    Please use the pro-audio discussion forum on MSDN.

  • re: WinRT MIDI API

    Please make multi-client support a high priority especially if this is going to be the basis of desktop MIDI.  USB-MIDI on the desktop is only useable with custom device drivers in many situations.  Please support multi-client access of class compliant devices.

    http://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/95928afe-25d1-465d-9069-4723a3c0dc8c/usb-class-compliant-midi-drivers-what-does-micorsoft-do?forum=wdk

     

    Edit: Actually, it should be high priority for non-desktop since we are even less likely to get custom drivers on Windows RT for class-compliant usb-midi interfaces/devices.

  • How about RTP-MIDI built-in?

     

  • , ComputerLove wrote

    How about RTP-MIDI built-in?

    ^^^^ Agreed.

     

  • Thank you for the presentation on audio and MIDI apps!

    I would be interested in being able to trigger events in an app from a MIDI foot controller, such as the IK Multimedia iRig BlueBoard, or the Behringer FCB1010.
    Would there be any way to communicate to the BlueBoard or a USB-MIDI adapter (for the FCB1010) without custom drivers?
  • (moved to my original comment)

  • , ComputerLove wrote

    How about RTP-MIDI built-in?

     


    Absolutely... totally agree
    A tablet is fine as a controller but a more powerful PC is always better for the actual sound creation so linking them together wirelessly is the obvious way to do it.

    I'm going to watch the video now, hopefully there's something that least you add virtual MIDI devices in Win8.1 without having to rely on stuff like Midi-Yoke.

  • @KateWerner I would really love to have a software synthesizer :)   ..  would be more happier if it can support sound fonts also

    there is a library called FluidSynth   I can't make it compile for windows store apps :)

    so any replacement would be marvelous for us :)

     

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    Asking for feedback here:

    I'm curious about the requests for built-in software synthesizers/midi synth. Is that something that you expect will really be used? Is it worth focusing time on that vs. other features?

    Just not sure the old general MIDI synth is all that useful these days. At least, I haven't used it for probably a good decade and a half. Just checking to see if that's just me, though.

    Pete

  • Mark SmithMark Smith

    The issue is if anyone makes an app they want to sound like any sort of musical instrument they obviously have to have a way of generating a decent quality output- soundfont or VST in oldspeak.
    These apps will not mainly connect to external midi devices.
    Mark

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    The issue is if anyone makes an app they want to sound like any sort of musical instrument they obviously have to have a way of generating a decent quality output- soundfont or VST in oldspeak.
    These apps will not mainly connect to external midi devices.
    Mark

    The whole second part of the talk is about using WASAPI to create sound. Most app designers have their own sound synthesis.

    Soundfont or similar support is an interesting request. That came up during the session as well. Luckily, even if not built into the core OS, this should be something that would be relatively easy to build up as a sample (or even a reusable package) using Jason's code.

    VSTs and plug-ins in general would be great to have. Lots of security and UI layer things to consider there, though. Are you looking for VSTs specifically, or something similar, or ...?

    Pete

  • Mark SmithMark Smith

    Thanks very much for your reply.
    I am particularly interested in being able to use soundfonts.
    I have used the bass midi library on full windows to facilitate their use. If it were possible for some kind person (unveiled hint) to put together a sample that would be ABSOLUTELY SUPER-DOOPER.
    Thanks
    Mark

  • Hm, I haven't looked into Sound Fonts much, but I think I may need to :). My current pet project at home is to get LibPd working on top of the demo code shown in this talk so then I can use Pure Data patches as a synthesizer solution that doesn't have to be built from scratch.

  • Javier PerezJavier Perez

    Yes! RTP-MIDI built-in support will be awesome to control devices/desktop app with a surface/tablet.

  • Soundfont support would be great - and I think it would be worth supporting the general midi software synth as well, it'd definitely be useful for some situations.

  • Christian GradlChristian Gradl

    LibPD for Windows Phone? would love that, i developed some synths with libpd for ios and Android this framework would be awesome on Windows Phone!!!

  • Christian GradlChristian Gradl

    FYI: i have a simple app in the wp store for sending Midi and OSC Data to your Dj and Music Software: http://freshvanroot.com/metroosc/

    I am also working on a Windows8 version with an interface builder similar to TouchOSC

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    @Christian

    Cool! Would love to see a few apps like that in the Windows Store.

  • LibPD for Windows Phone? would love that, i developed some synths with libpd for ios and Android this framework would be awesome on Windows Phone!!!

     

    Thanks Christian! I'll write up a post when I get it working. My issue right now is that the libPD project isn't compiling on Windows for me to get the library file to use. Some of the included PD source files expect pthread.h which doesn't exist on Windows since it's not POSIX thread compliant. I believe the full-blown Pure Data has a solution for compiling it on Windows that get's around this. So I'm hoping to use that work around to get LibPD compiling on Windows and then will mess around getting it to work on top of WASAPI. 

  • This is HUGE. As a musician, I can't wait until apps start rolling in.

    There needs to be a basic music sequencer, i.e. Cubase or Logic, that works with MIDI USB. I would love to be able to interface my Yamaha MX61 with my Surface 2. That would be huge.

  • Thanks for MIDI! Real showstopper for pro audio until now.

    Previously I tried to make a full duplex store app, struggled for a long time before giving up. The idea was to make for example a guitar "stomp-box" effect app that could effect live audio in real-time. After reading other people's attempts I decided the API's either didn't work or were too buggy to work consistently.

    Would love to have a working sample of low-latency full-duplex WASAPI audio ;) even something real simple like a volume control store-app (no I don't want to make a volume control app, more like a chorus unit etc, but a volume control would be enough to illustrate the concept).
     My current apps use C++ audio-rendering with a C# XAML, or HTML GUI.

  • rebbrebb

    I am also developing musical stuff with Pure Data on iOS platform, and would love to see it on windows phone 8! Hope to see it soon.

  • @Psychlist1972:

    Hey Pete or any other MS person,

    I know this is a Windows Preview API but how long do you think it will be till this becomes an offiical release?

    What you guys have right now is perfect for what I'm doing and I can communicate with Logic and Cubase on my iMac.

    This is awesome. [H]

    Gabe

    Update: Using MIDI with first generation Surface RT to communicate to my iMac.

     

     

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    @gabe

    The current plan is to have this remain as a preview while we get feedback. We may roll some of that feedback into API updates and release them via NuGet, still as preview. The final version of the API will come in the next version of Windows. There are a number of technical reasons why that's the case. For example, the requirement of having to pick an architecture instead of AnyCPU is not something we'd want in the final API, but it's a necessity on Windows 8.1. Another is that we want this to be the API to use going forward, desktop, WinRT, etc., but cannot make it available for desktop in Windows 8.1.

    That said, we want the preview to be as useful and stable as possible.

    So please, use the API, build and list some cool apps, and be sure to put your feedback in the pro audio forums on MSDN.

    http://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/home?forum=windowspro-audiodevelopment

     

  • list some cool apps

    When you say this, this means showcase what your doing but I can't post in the Windows Store just yet. I just wanted to verify.

     

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    The WinRT MIDI API Preview has a go-live license. You can list your apps in the Windows Store when you use this API.

    Pete

  • Pete BrownPsychlist19​72 Pete Brown (I have more than one machine that goes "ping!")

    FYI. The version of FL Studio Groove with MIDI is now in the Windows Store.

    Remember: you must have Windows 8.1 Update 1 to run it. If you run into any issues with MIDI timing, device recognition, or anything else, please let me know directly, rather than rate the app (the MIDI API is preview, recall).

    Huge thanks to Image-Line for getting this app out to the Windows Store!

    http://apps.microsoft.com/windows/en-us/app/fl-studio-groove/45739f6c-beaf-4215-bf87-b64b6f8ad871

  • NoemataNoemata

    RTP-Midi support is essential. Keep in mind that MIDI is not just for musical instruments. Light control systems have leveraged MIDI for some time. There are many examples of alternate uses for MIDI.

    Being able to use a tablet as a control surface is a basic must have that requires both MIDI ant RTP-Midi support.

    There should also be a soft-synth like capability built in with MIDI support. Or better yet, implement a DX7 like synth in hardware and build it into the tablet. Could prove to be an advantage for next generation Surface tablets.

  • petedpeted

    "I'm curious about the requests for built-in software synthesizers/midi synth. Is that something that you expect will really be used?"

    Yes. As others have mentioned, not everyone will actually have a synth to hook to.

    Also, while I realize modern games all do their own audio stuff, IMHO this has as much to do with the lack of a useful, uniform, modern MIDI API as anything else.

    Even with advances in storage size, there are still good reasons to prefer MIDI for playback. Mobile devices, which have sent us back a decade and a half or more in terms of storage size, really scream out for a space-efficient way to represent music for apps. Yes, games (for example) carry along a bunch of PCM or MP3 files for music, sfx, etc. but that's as much out of necessity as anything else.

    Also, it is much more compelling as a developer to consider writing a MIDI-capable app if one knows that it will work on any device, due to the presence of a software GM synth, rather than their market being limited only to people who are hooking their device to an external MIDI device.

    Personally, I'd like to see the return of DirectMusic. It never really got the love from Microsoft that it deserved, and I'd love to see it get a second chance.

    But barring that, please at least give us a good self-contained GM synth story.

  • rebbrebb

    JasonOlson:
    About pthread.h, maybe you already found this?

    "I found that pd for windows supplies it's own pthread library: pthreadVC.lib and dll. And includes pthread.h and sched.h."

    taken from here:
    http://createdigitalnoise.com/discussion/116/libpd-and-windows-dll

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.